About the content
In this course you will learn the tools, techniques and concepts needed to build a basic iOS app, from scratch. You will be introduced to the Swift programming language and learn how to utilise the Apple developer tools to build an app.
After completing this course, you will be able to:
- Understand and use the Swift programming language;
- Use and explain the Apple developer tools: including Xcode, Interface Builder, Documentation Browser;
- Confidently converse with iOS developers, understanding the basics of coding and App development;
- Design, develop and build your own simple iOS Apps.
To successfully complete this course you will need access to an Apple Mac computer or laptop capable of running macOS10.14 and Xcode 10.
Lesson 1: Starting App Development
- Explain where programming is used and especially where Swift is used;
- Explain the terminal, playgrounds;
- Use Xcode to build an App for iOS; and
- Use and explain variables and data types.
Lesson 2: Control Flow and Advanced Variables and Data Types
- Make decisions within your programs using if-then-else statements;
- Use the different logical operators NOT, AND and OR to verify the truth of something;
- Use the switch statement to control what is executed next; and
- Use arrays and dictionaries to store data.
Lesson 3: Xcode and Interface Builder
- Navigate through Xcode projects;
- Use the following areas of Xcode: project navigator, the debug area, the assistant and version editors; and
- Use interface builder to build interfaces and be able to preview interfaces outside of a running App.
Lesson 4: Functions, Classes and Structures
- Understand the benefits of abstraction when writing code;
- Create functions, classes and structures to improve program quality;
- Use classes and structures to create custom datatypes;
- Understand relationships and inheritance between classes.
Lesson 5: Introduction to User Interface Development
- Build Apps using common user interface views and controls;
- Use Interface Builder to configure common user interface views and controls;
- Connect Swift code to common user interface controls;
- Use AutoLayout to ensure Apps adapt to different devices.
Lesson 6: View Controllers and Navigation
- Develop Apps with multiple scenes;
- Use tab bar controllers to move between scenes within Apps;
- Create and utilise event handlers on view controllers;
- Design an appropriate navigation hierarchy for your app.
Lesson 7: Introduction to TableViews
- Use the Model View Controller design pattern for App development;
- Use a ScrollView to control content display;
- Use tables to display data within your App;
- Respond to user input within a table.
Dr David A. McMeekin
Senior Academic – Computer and Spatial Sciences
Tristan W. Reed
Harvard University, the Massachusetts Institute of Technology, and the University of California, Berkeley, are just some of the schools that you have at your fingertips with EdX. Through massive open online courses (MOOCs) from the world's best universities, you can develop your knowledge in literature, math, history, food and nutrition, and more. These online classes are taught by highly-regarded experts in the field. If you take a class on computer science through Harvard, you may be taught by David J. Malan, a senior lecturer on computer science at Harvard University for the School of Engineering and Applied Sciences. But there's not just one professor - you have access to the entire teaching staff, allowing you to receive feedback on assignments straight from the experts. Pursue a Verified Certificate to document your achievements and use your coursework for job and school applications, promotions, and more. EdX also works with top universities to conduct research, allowing them to learn more about learning. Using their findings, edX is able to provide students with the best and most effective courses, constantly enhancing the student experience.