Developing Secure iOS Apps for Business
With the introduction of the iOS® platform, mobile devices exploded onto the personal computing market, in many cases replacing notebook and desktop computers—not only for personal use, but for business use as well. The iPhone® and iPad® are among the most popular of mobile devices in use today. In this course, you will learn how to develop and publish iOS apps, focusing on developing business apps for iPhones and iPads.
This course is also designed to assist you in preparing for the Master Mobile Application Developer (MMAD) (Exam MAD-111) certification examination. What you learn and practice in this course can be a significant part of your preparation for portions of that certification.
In this course, you will develop, test, and package applications for devices that run the iOS operating system, including iPad and iPhone.
You will:
- Use Xcode to create and run an iOS app.
- Create storyboards to lay out the user interface for an iOS app.
- Write Swift code to enable iOS app user interface elements to interact with users.
- Identify and describe common iOS design patterns and user interface standards.
- Lay out and program apps to provide navigation among multiple views.
- Access data from various locations, including app resources, user preferences, private app storage, and web services.
- Enable an app to present graphics and animation.
- Enable an app to interact well with other apps, the iOS system, and the mobile device it runs on.
- Debug an app, implement runtime error handling, and use iOS cybersecurity features.
- Prepare an app for release, including configuration to support internationalization, and adding graphics to brand the app.
To ensure your success, you should have experience developing applications using an object-oriented programming language such as Java™, C++, and so forth.
For this course, you will need one computer for each student and one for the instructor. Each computer will need the following minimum hardware configurations:
- Intel-based Apple® computer running Mac® OS X version 10.11.3 or later
- 100 GB available hard disk space
- Keyboard and mouse (or other pointing device)
- 1,024 x 768 or higher resolution monitor recommended
- Internet access (contact your local network administrator)
- Projection system to display the instructor's computer screen
The iOS Simulator will be used for development, so real iPhone®and iPad® devices are not necessary to deliver this course. However, if such devices are available, the instructor may find them beneficial to demonstrate how to debug on a real device.
Lesson 1: Programming in
Xcode Using Swift
Topic A: Set Up
and Use the Development Environment
Topic B: Write
and Test Swift Code in a Playground
Topic C: Process
Numbers and Strings
Topic D: Create
Custom Data Types
Topic E: Work
with Optionals
Topic F: Control
the Flow of Execution
Lesson 2: Creating an iOS
App User Interface
Topic A: Begin
an App Project
Topic B: Add
Components to a User Interface Layout
Topic C: Test a
User Interface Layout in Simulator
Lesson 3: Handling User
Interaction in an iOS App
Topic A: Write
Code to Respond to Events
Topic B: Write
Code to Modify Component Properties
Lesson 4: Designing an iOS
App
Topic A: Design
an App to Meet User Expectations
Topic B: Adhere
to Common iOS Design Patterns
Lesson 5: Implementing
Multiple View Navigation
Topic A: Create
an iOS App with Multiple Views
Topic B: Add a
Custom View Controller Class
Lesson 6: Working with
Data
Topic A: Select
an Appropriate Data Storage Approach
Topic B: Load
App Data from Property Lists
Topic C: Access
Web Data and Services
Topic D: Store
and Retrieve Preferences
Lesson 7: Working with
Graphics and Media
Topic A: Load
Graphic Images
Topic B: Draw
Graphics through Code
Topic C: Add
Animation Effects
Lesson 8: Integrating with
the App Ecosystem
Topic A: Manage
App State Changes
Topic B: Use
Capabilities
Lesson 9: Making Code More
Robust and Maintainable
Topic A: Debug
an App in Xcode
Topic B: Write
Code to Handle Runtime Errors
Topic C: Implement
Security and Privacy in iOS Apps
Lesson 10: Finalizing an
App
Topic A: Enable
an App to Support Multiple Languages
Topic B: Prepare
an App for Release
Appendix A: Logical Operations Master Mobile Application Developer (MMAD) Exam MAD-111 Objectives