We may earn an affiliate commission when you visit our partners.
Owen LaRosa, Kate Rotondo, Gabrielle Miller-Messner, and Jarrod Parkes
Develop an app with UIKit, Apple’s front-end framework for developing fast and powerful web interfaces.

What's inside

Syllabus

Connect outlets and actions using only code and graphically using storyboard. Use the following UIKit classes: UIButton, UILabel, UISwitch.
Learn how to present views modally using the following UIKit classes: UIImagePickerController, UIAlertController, UIActivityViewController.
Read more
Most common UIKit components make use of the delegate pattern. Learn how delegates make important connections between the model, view, and controller.
Create a first version of the MemeMe app that enables a user to take a picture, add text, and share the created meme on Facebook, Twitter, SMS, or email.
You'll create a first version of the MemeMe app that enables a user to take a picture, and add text at the top and bottom to form a meme.
Table views are one of the most commonly used views in iOS apps. Learn how to implement tables in your own apps.
Learn how iOS uses navigation stacks to manage multiple views in an app.
Memes will appear in a tab view with two tabs: a table view and a collection view.
You'll create a final version of the MemeMe App. Memes will appear in a tab view with two tabs: a table view and a collection view.

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Teaches Apple's UIKit framework, which enables creating fast and engaging app experiences
Suitable for learners wanting to develop mobile applications for iOS devices
Provides hands-on experience in building key components of a mobile app, including image selection, text input, and social sharing
Covers table views and navigation stacks, essential elements for organizing and presenting data in mobile apps
Emphasizes real-world application by incorporating a final project where learners create a functional meme generator
Requires learners to have a basic understanding of programming concepts and iOS app development

Save this course

Save UIKit Fundamentals 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 UIKit Fundamentals with these activities:
Review Objective-C
Review Objective-C to refresh your knowledge and strengthen your foundation before starting this course.
Show steps
  • Review the syntax and structure of Objective-C.
  • Practice writing basic Objective-C programs.
  • Complete a small Objective-C project.
Gather course materials
Ensure you have the resources you need to succeed by gathering your physical or digital course materials.
Show steps
  • Review the course syllabus to identify required materials
  • Acquire textbooks and other required readings
  • Obtain necessary software and applications
  • Set up a dedicated study space with all materials within reach
Familiarize yourself with UIKit concepts
Lay a strong foundation by exploring tutorials on UIKit, the framework used to build iOS user interfaces.
Browse courses on UIKit
Show steps
  • Search for UIKit tutorials on platforms such as YouTube, Udemy, or Coursera
  • Follow along with the tutorials to understand basic UIKit concepts
  • Experiment with the code snippets provided in the tutorials
12 other activities
Expand to see all activities and additional details
Show all 15 activities
Review UIKit and Core Data
Brush up on the basics ofUIKit and Core Data to strengthen your foundation for this course.
Browse courses on UIKit
Show steps
  • Review Apple's documentation on UIKit.
  • Review Apple's documentation on Core Data.
Follow iOS tutorials on raywenderlich.com
Supplement your learning with practical tutorials from raywenderlich.com.
Browse courses on iOS Development
Show steps
  • Explore the Swift and iOS tutorials section on raywenderlich.com.
  • Choose a tutorial relevant to this course and follow it step-by-step.
UIKit Tutorials
Enhance your understanding of UIKit by following tutorials and building practice apps.
Show steps
  • Find tutorials on Apple's developer website or other online resources.
  • Follow the tutorials to create simple UIKit apps.
  • Experiment with different UIKit components and techniques.
Complete coding challenges on LeetCode
Sharpen your coding skills and problem-solving abilities by practicing coding challenges.
Browse courses on Coding
Show steps
  • Sign up for a LeetCode account.
  • Select coding challenges related to iOS development.
Practice connecting outlets and actions
Reinforce your understanding by practicing how to connect outlets to actions in UIKit.
Browse courses on Actions
Show steps
  • Create a new Xcode project
  • Add UI elements to your storyboard
  • Connect the UI elements to outlets in your code
  • Implement actions for the UI elements
  • Test your app to ensure the outlets and actions are working correctly
Attend iOS Developer Meetups
Network with other iOS developers, learn about industry trends, and exchange knowledge.
Show steps
  • Find iOS developer meetups in your area.
  • Attend meetups regularly.
  • Meet other developers and discuss iOS development.
Build a simple iOS app with UIKit
Showcase your understanding by creating a functional iOS app using UIKit.
Browse courses on iOS Development
Show steps
  • Design the UI and functionality of your app.
  • Implement the app's features using UIKit.
Coding Challenges
Challenge yourself with coding exercises to improve your understanding and solidify your grasp of UIKit concepts.
Show steps
  • Solve coding challenges related to UIKit.
  • Participate in online coding competitions or challenges.
  • Use problem-solving techniques to tackle complex UIKit issues.
Build a simple UIKit app
Apply your skills by creating a basic UIKit app, allowing you to practice and deepen your understanding.
Browse courses on UIKit
Show steps
  • Plan the functionality of your app
  • Design the user interface in a storyboard
  • Implement the app's functionality in code
  • Test and debug your app
  • Publish your app on the App Store (optional)
Advanced UIKit Workshop
Enhance your UIKit skills and gain insights from experts by attending an advanced UIKit workshop.
Show steps
  • Research and find advanced UIKit workshops.
  • Attend a workshop that aligns with your learning objectives.
  • Engage with the workshop instructors and fellow participants.
Meme Generator App
Create a practical application of your UIKit skills by building a fully functional meme generator app.
Show steps
  • Design the user interface for the app.
  • Implement the functionality to generate memes using UIKit.
  • Test and refine the app's features and performance.
Contribute to Open Source UIKit Projects
Gain practical experience and contribute to the iOS development community by volunteering for open source projects related to UIKit.
Show steps
  • Find open source UIKit projects on GitHub or other platforms.
  • Contribute to projects by fixing bugs, adding features, or improving documentation.
  • Interact with other contributors and learn from their experiences.

Career center

Learners who complete UIKit Fundamentals will develop knowledge and skills that may be useful to these careers:
iOS Developer
An iOS Developer is responsible for the conceptualization and creation of mobile applications for Apple's iOS. With this UIKit Fundamentals course, you'll gain the skills required to create compelling iOS apps, which can provide you with an edge in this competitive job market. You'll learn about the UIKit framework, the standard user interface framework for iOS apps, and create apps with native iOS components like buttons, labels, and switches.
Mobile Application Developer
Mobile Application Developers create, design, and develop mobile applications for various platforms. Through the UIKit Fundamentals course, you'll learn the core concepts and tools for developing iOS apps using UIKit, which can equip you with the necessary skills for this in-demand role. The course covers essential components like buttons, labels, and switches, providing a solid foundation for building interactive and user-friendly mobile apps.
Software Engineer
Software Engineers design, develop, and maintain software across a variety of industries. The UIKit Fundamentals course provides a foundation for creating mobile applications with Apple's iOS, a valuable skill for aspiring Software Engineers who wish to specialize in mobile app development. Gaining proficiency in UIKit can enhance your competitiveness in the software engineering job market.
Front-End Developer
Front-End Developers are responsible for the design and implementation of the user interface of websites and web applications. The UIKit Fundamentals course provides a solid foundation in user interface design and development principles using Apple's UIKit framework. By understanding the concepts and techniques covered in the course, you can enhance your skills in creating visually appealing and interactive front-end experiences.
Web Developer
Web Developers design, create, and maintain websites and web applications. While the UIKit Fundamentals course primarily focuses on iOS app development, it can still provide valuable insights into user interface design principles and the software development process. These concepts can be transferable to web development, making the course a useful addition to a Web Developer's skill set.
UI/UX Designer
UI/UX Designers focus on designing and improving the user experience of digital products, including websites, apps, and software. The UIKit Fundamentals course can provide valuable insights into the principles of user interface design and development, enabling UI/UX Designers to create more effective and user-centric designs. Learning about UIKit components and their functionality can inform their design decisions and enhance their collaboration with developers.
Product Manager
Product Managers oversee the development and execution of product strategies. While the UIKit Fundamentals course is focused on technical aspects of iOS app development, it can provide Product Managers with a better understanding of the technical capabilities and limitations of mobile platforms. This knowledge can help them make informed decisions, prioritize features, and collaborate effectively with development teams.
Technical Writer
Technical Writers create and maintain technical documentation, such as user manuals, white papers, and knowledge base articles. The UIKit Fundamentals course can provide Technical Writers with a deep understanding of the technical concepts and terminology related to iOS app development. This knowledge can enhance their ability to accurately and effectively communicate technical information to various audiences.
Business Analyst
Business Analysts bridge the gap between business and technology, gathering and analyzing requirements to define and improve business processes. The UIKit Fundamentals course can provide Business Analysts with an understanding of the technical aspects of iOS app development, enabling them to effectively communicate with development teams and translate business requirements into technical specifications.
Quality Assurance Analyst
Quality Assurance Analysts test and evaluate software products to ensure they meet quality standards. The UIKit Fundamentals course can equip Quality Assurance Analysts with a foundational understanding of iOS app development and the UIKit framework. This knowledge enables them to assess the functionality, performance, and usability of iOS apps more effectively, contributing to the delivery of high-quality software products.
Project Manager
Project Managers plan, execute, and deliver projects within defined constraints. The UIKit Fundamentals course can provide Project Managers with an understanding of the technical aspects of iOS app development, enabling them to effectively manage development teams, track progress, and ensure project success.
Cybersecurity Analyst
Cybersecurity Analysts protect computer systems and networks from unauthorized access, use, disclosure, disruption, modification, or destruction. While the UIKit Fundamentals course is not directly related to cybersecurity, it can provide a foundation in programming and software development, which can be valuable for Cybersecurity Analysts who wish to specialize in mobile security or application security.
Data Analyst
Data Analysts gather, analyze, and interpret data to extract meaningful insights. While the UIKit Fundamentals course is focused on iOS app development, it can provide Data Analysts with a foundation in programming and data analysis, which can be valuable in their field. Learning about data structures and algorithms can enhance their ability to process and analyze data more efficiently.
Network Administrator
Network Administrators maintain and troubleshoot computer networks. While the UIKit Fundamentals course focuses on iOS app development, it can provide Network Administrators with a foundational understanding of networking concepts and technologies. This knowledge can be beneficial for managing and troubleshooting networks that support mobile devices and applications.
Database Administrator
Database Administrators manage and maintain databases. While the UIKit Fundamentals course is not directly related to database administration, it can provide a foundation in programming and data structures, which can be valuable for Database Administrators who wish to specialize in mobile database management or data analytics.

Reading list

We've selected 11 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 UIKit Fundamentals.
Another classic in software development, this book provides practical advice on writing clean, maintainable, and readable code that is essential for any professional developer.
A classic in software design, this book provides a comprehensive overview of design patterns, which are reusable solutions to common software design problems.
Guide to writing effective Objective-C code. It covers topics such as memory management, threading, and debugging.
Guide to iOS programming with Swift. It covers the basics of iOS development, such as creating user interfaces, working with data, and networking.
While not specifically about software development, this book provides valuable insights into the process of building and launching successful products, which can be applied to any industry.
A classic in business strategy, this book provides insights into how established companies can successfully navigate disruptive technologies.
Another book that is not specifically about software development, but provides valuable insights into the process of starting and building a successful company.
Guide to design patterns, which are reusable solutions to common programming problems. It valuable resource for any programmer, regardless of their experience level.

Share

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

Similar courses

Similar courses are unavailable at this time. Please try again later.
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