We may earn an affiliate commission when you visit our partners.
Course image
Dr. David A. McMeekin and Tristan W. Reed

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.

What's inside

Learning objectives

  • 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.
  • After completing this course, you will be able to:

Syllabus

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
Read more
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.

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Develops problem-solving skills in programming using the Swift language
Teaches mobile app development in the context of one of the world's leading platforms
Provides opportunities to build a foundation in iOS development
Explores industry-standard tools such as Xcode and Interface Builder
Introduces basic programming concepts to beginners

Save this course

Save Build your very first iOS app to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Build your very first iOS app with these activities:
Review iOS Programming Basics
Solidify your understanding of the core concepts and tools used in iOS development before starting the course.
Show steps
  • Review the Swift programming language syntax and semantics.
  • Familiarize yourself with the Xcode IDE and Interface Builder.
  • Understand the concepts of variables, data types, and control flow.
Create a Swift Resource Compilation
Organize and review your course materials, including notes, assignments, and resources, to have a comprehensive collection for future reference and knowledge retention.
Browse courses on Knowledge Organization
Show steps
  • Gather all of your notes, assignments, and resources from the course.
  • Organize them into logical categories or folders.
  • Review your materials regularly to reinforce your understanding.
Review Object-Oriented Programming Concepts
OOP concepts are crucial for iOS development. Review these concepts before starting the course to ensure a strong foundation and better comprehension of Swift's object-oriented features.
Show steps
  • Go through your notes or study materials from previous OOP courses.
  • Complete practice exercises or quizzes on OOP concepts.
  • Read articles or tutorials on OOP principles.
Ten other activities
Expand to see all activities and additional details
Show all 13 activities
Review Swift Programming Language Concepts
Review the fundamentals of Swift, including data types, variables, and control flow, to strengthen your understanding before starting the course.
Browse courses on Swift Programming
Show steps
  • Go through your notes or study materials from previous programming courses.
  • Complete practice exercises or quizzes on Swift basics.
  • Read articles or tutorials on Swift's syntax and features.
Join a Study Group
Collaborate with other learners to discuss course materials, explore concepts, and provide mutual support.
Show steps
  • Find or create a study group with fellow students.
  • Meet regularly to review lecture notes, work on assignments, and ask questions.
  • Engage in discussions and share ideas to deepen your understanding.
Build a Simple Calculator App
Apply your knowledge by following a guided tutorial to build a functional iOS app.
Show steps
  • Follow a step-by-step tutorial to create a user interface.
  • Implement basic arithmetic operations using Swift code.
  • Test and debug your app to ensure it functions correctly.
Follow Apple's Swift Tutorial Series
Supplement your course learning by following Apple's official Swift tutorial series, which provides hands-on guidance and examples of Swift programming in practice.
Browse courses on iOS Development
Show steps
  • Visit Apple's developer website and locate the Swift tutorial series.
  • Start from the beginning and work through each tutorial.
  • Complete the exercises and challenges provided in the tutorials.
  • Refer to the tutorials for additional support and clarification when needed.
Code Challenges on Swift Playground
Engage in coding exercises using Swift Playground to apply your knowledge and improve your problem-solving skills in the Swift programming language.
Browse courses on Swift Programming
Show steps
  • Open Swift Playground on your device.
  • Select a coding challenge that aligns with the course concepts.
  • Attempt to solve the challenge using Swift syntax.
  • Review the provided solution and compare your approach.
Solve Coding Challenges
Strengthen your programming skills by solving coding challenges specific to iOS development.
Show steps
  • Practice solving coding challenges on platforms like LeetCode or HackerRank.
  • Focus on challenges related to iOS development concepts.
  • Review your solutions and identify areas for improvement.
Join an Online Swift Study Group
Engage with fellow students or Swift enthusiasts in an online study group to discuss concepts, share knowledge, and work on projects together, enhancing your understanding and problem-solving abilities.
Show steps
  • Search for Swift study groups on platforms like Meetup or Discord.
  • Join a group that aligns with your learning goals.
  • Attend regular meetings and participate in discussions.
  • Share your progress and seek feedback from others.
Build a Simple iOS Calculator App
Apply your understanding of Swift and iOS development by creating a simple calculator app, allowing you to practice user interface design, event handling, and basic calculations.
Browse courses on iOS App Development
Show steps
  • Create a new Xcode project and select the iOS App template.
  • Design the user interface for the calculator using Interface Builder.
  • Implement the logic for performing basic arithmetic operations using Swift.
  • Connect the user interface elements to the Swift code.
  • Test and refine your app using the iOS Simulator.
Write a Blog Post on Swift Best Practices
Solidify your understanding of Swift by writing a blog post about best practices, sharing your insights, and reflecting on your learning, which can also benefit others in the community.
Browse courses on Technical Writing
Show steps
  • Choose a specific topic related to Swift best practices.
  • Research and gather information from reliable sources.
  • Write a well-structured blog post outlining the best practices.
  • Include examples and code snippets to illustrate your points.
  • Publish your blog post online and share it with others.
Build a Personal Portfolio App
Showcase your iOS development skills by building a portfolio app that demonstrates your abilities.
Show steps
  • Design and develop a user interface that effectively showcases your work.
  • Create custom widgets and components to enhance the app's functionality.
  • Implement features that highlight your proficiency in networking, data persistence, and user interaction.

Career center

Learners who complete Build your very first iOS app will develop knowledge and skills that may be useful to these careers:
iOS Engineer
iOS Engineers design, develop and maintain applications for the iOS operating system. In this course, you will learn everything you need to know to become an iOS Engineer, including how to use the Swift programming language, Xcode, Interface Builder, and other essential tools.
Mobile Developer
Mobile Developers design, develop, and maintain applications for mobile devices. This course will provide you with the skills and knowledge necessary to become a Mobile Developer, including how to use the Swift programming language, Xcode, Interface Builder, and other essential tools.
Software Engineer
Software Engineers design, build, maintain, test and troubleshoot software for a wide variety of applications. The course will provide you with the foundation necessary to become a Software Engineer. In this course, you will learn how to code, design and develop applications using Xcode, Interface Builder, and the Swift programming language.
Application Developer
Application Developers design, develop, and maintain software applications for a variety of purposes. This course can help you develop the skills needed to become an Application Developer, including experience with the Swift programming language, Xcode, Interface Builder, and other essential tools.
Game Developer
Game Developers design, develop, and maintain video games. While this course focuses on the creation of iOS applications, the skills you will learn, including experience with the Swift programming language, Xcode, and Interface Builder, may be applied to Game Development.
Web Developer
Web Developers design, develop, and maintain websites and other web-based applications. While this course focuses on the creation of iOS applications, the skills you will learn, including experience with the Swift programming language, Xcode, and Interface Builder, may be applied to Web Development.
Software Tester
Software Testers ensure that software applications are free of errors and meet the needs of users. While this course focuses on the development of iOS applications, the skills you will learn, including experience with the Swift programming language, Xcode, and Interface Builder, may be applied to Software Testing.
Technical Writer
Technical Writers create documentation for software products and applications. This course may help you develop the skills needed to become a Technical Writer, including experience with the Swift programming language, Xcode, and Interface Builder.
Product Manager
Product Managers oversee the development and launch of new products. While this course focuses on the development of iOS applications, the skills you will learn, including experience with the Swift programming language, Xcode, and Interface Builder, may provide some insights into the development process.
Project Manager
Project Managers oversee the completion of projects. This course may help you develop some of the skills needed to become a Project Manager, including experience with Xcode and Interface Builder.
Business Analyst
Business Analysts help businesses understand their needs and develop solutions to meet those needs. This course may help you develop some of the skills needed to become a Business Analyst, including experience with Xcode and Interface Builder.
Sales Engineer
Sales Engineers help businesses sell products and services. While this course focuses on the development of iOS applications, the skills you will learn, including experience with the Swift programming language, Xcode, and Interface Builder, may provide some insights into the product development process.
Data Analyst
Data Analysts collect, analyze, and interpret data to help businesses make decisions. While this course focuses on the development of iOS applications, the skills you will learn, including experience with Xcode and Interface Builder, may provide some insights into the data analysis process.
Cybersecurity Analyst
Cybersecurity Analysts protect computer systems and networks from attacks. While this course focuses on the development of iOS applications, the skills you will learn, including experience with the Swift programming language, Xcode, and Interface Builder, may provide some insights into the cybersecurity field.
Database Administrator
Database Administrators manage and maintain databases. While this course focuses on the development of iOS applications, the skills you will learn, including experience with Xcode and Interface Builder, may provide some insights into the database management process.

Reading list

We've selected eight books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Build your very first iOS app.
Introduces the principles and practices of test-driven development (TDD). TDD software development approach that involves writing tests before writing code, which can help improve the quality and reliability of the code.
Covers advanced concepts and techniques in Swift programming, such as generics, protocols, and concurrency. It valuable resource for experienced Swift developers who want to deepen their understanding of the language.
Emphasizes the importance of writing clean and maintainable code. It provides a set of principles and practices that can help developers produce high-quality code.
Provides a comprehensive overview of SwiftUI, Apple's declarative UI framework for iOS development. It covers the basics of SwiftUI, as well as advanced topics such as animations, gestures, and data binding.
Provides a comprehensive overview of Xcode, the official development environment for iOS apps. It covers Xcode's features, tools, and workflows, making it a useful reference for both beginners and experienced developers.
Focuses on Interface Builder, the tool used to design and build user interfaces for iOS apps. It provides a thorough understanding of Interface Builder's capabilities and best practices.
Provides practical tips and techniques for writing effective Objective-C code. While Objective-C is no longer the primary language for iOS development, understanding Objective-C can be beneficial for developers who want to work with legacy code or gain a deeper understanding of iOS development history.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Build your very first iOS app.
iOS 11 Fundamentals
Implementing In-app Purchases on iOS
Building a Real World iOS Application with Swift
Building Cross Platform Native Mobile Applications with...
Learn Programming for App Development on the Apple Watch
iOS 17: The Big Picture
Intermediate iOS - Complex and Advanced iPhone Apps
Flutter & Dart: Complete App Development Course [NEW 2024]
Tables, Data & Networking in iOS
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser