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

In this course you will learn how to build AR apps with Xcode and look at the different ways to integrate web content into your iOS apps.

Two deals to help you save

We found two deals and offers that may be relevant to this course.
Save money when you learn. All coupon codes, vouchers, and discounts are applied automatically unless otherwise noted.

What's inside

Learning objectives

  • Use arkit to create augmented reality scenes and objects for your apps
  • Test and debug your ar app
  • Connect to web services to fetch or send info to and from your app
  • After completing this course, you will be able to:

Syllabus

Lesson 1:User interaction andhow to save data
Write and access files within Apps;
Serialise a data model for saving and loading data from and into Apps;
Read more
Customise tables for adding, deleting andcustomising actions;
Create custom row actions.
Lesson 2: User input and system controls in Apps
Displaying alerts, sharing content and sending messages from within Apps;
Access to the camera and photo library on the device;
Build custom forms for creating new object models;
Get complex user input through forms, data collection and dynamic table views.
Lesson 3: Construct an AR App
Learn how to use the AR app template;
Investigate AR components and compare their differences with existing components;
Build AR scenes in 3D space using objects;
Determine planes and how objects interact with them.
Lesson 4: Interact with an AR App
Add physics to an AR scene;
Translation of user input within the scene;
Introduction to AR Image Recognition.
Lesson 5: Closures and Animation
Define and use closures;
Use defined functions: sort, filter, reduce and map;
Utilise animation for a greater user experience;
Use UIKit to create animations.
Lesson 6: Communicate with the Web
Describe requests and responses, and discover how are they built, used and analysed;
Communicate with API's for existing data sources;
Use URL components to dynamically query an API endpoint.
Lesson 7: An Introduction to JSON
What is JavaScript Object Notation (JSON) and how is it useful?
Decode JSON and convert into Swift types;
Integrate with requests and responses from API's.
Lesson 8: Concurrency
Why do we care about concurrency?
Issues with multi-threading and the UI;
How to complete tasks asynchronously.

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Focuses on connecting to web services, which is standard practice in industry and essential for web-first apps
Develops skills in Xcode, ARKit, and web services, which are highly relevant to iOS development
Taught by David A. McMeekin and Tristan W. Reed, who are recognized for their work in AR and related fields
Beginners can build a strong foundation in AR app development
Includes interactive materials like labs, which is highly beneficial for learners of iOS AR development
Builds on concepts and knowledge, so learners need to have some background knowledge

Save this course

Save Work with augmented reality (AR) and the web 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 Work with augmented reality (AR) and the web with these activities:
Connect with experienced AR developers for guidance and support
Connecting with mentors can provide you with valuable insights, advice, and support throughout your AR development journey.
Show steps
  • Attend industry events or meetups to network with AR professionals
  • Reach out to AR developers on LinkedIn or other social media platforms
Review Swift basics
Prepare for this course by reviewing the basics of the Swift programming language.
Browse courses on Swift Programming
Show steps
  • Find a Swift tutorial or online course
  • Review the basics of Swift syntax
  • Practice writing simple Swift programs
Review basic programming concepts before diving into ARKit
Brushing up on programming fundamentals will provide a solid foundation for understanding ARKit's concepts and syntax.
Browse courses on Programming Fundamentals
Show steps
  • Go through online tutorials or documentation on basic programming concepts
  • Practice writing simple programs in a language of your choice
Ten other activities
Expand to see all activities and additional details
Show all 13 activities
Organize your course notes
Keep your course materials organized.
Show steps
  • Review your notes from each class
  • Create a system for organizing your notes
  • Store your notes in a central location
Write basic app menu functions
Reinforce your understanding of menus in SwiftUI by writing a few mock-up functions for mobile apps.
Browse courses on App Development
Show steps
  • Start by creating a new Swift project in Xcode
  • Create a new SwiftUI View file
  • Add a NavigationView to your SwiftUI view
  • Add a Button to your SwiftUI view
  • In the Button's action closure, create a Menu object
Follow a tutorial on building a simple API client
Practice working with APIs by following a step-by-step tutorial on building a simple client.
Browse courses on API Development
Show steps
  • Find a tutorial on building a simple API client in Swift
  • Follow the tutorial step-by-step
  • Test your API client by making a few requests
Follow a tutorial series to build a basic AR scene
Completing a guided tutorial will provide hands-on experience and help you understand the practical aspects of AR development.
Browse courses on ARKit
Show steps
  • Find a tutorial series that covers the basics of ARKit
  • Follow the steps in the tutorial to create a simple AR scene
  • Experiment with the code and try to understand the concepts behind it
Practice networking with URLComponents
To prepare for working with APIs in this course, let's practice building URLComponents.
Show steps
  • Start by creating a new Swift project in Xcode
  • Create a new Swift file
  • Import the Foundation framework
  • Create a new URLComponents object
  • Set the scheme, host, and path of the URLComponents object
Answer questions on a course forum
Engage with your classmates and solidify your understanding of concepts by answering questions.
Show steps
  • Find a course forum or online discussion group
  • Read through the questions and answers
  • Identify questions that you can answer
  • Post thoughtful and helpful answers
Practice placing and manipulating virtual objects in AR scenes
Practicing with virtual objects will help you develop spatial reasoning skills and improve your understanding of ARKit's capabilities.
Browse courses on AR Development
Show steps
  • Create a new AR project and import a virtual object model
  • Experiment with placing and manipulating the object in the scene
  • Try adding physics to the object and observe its behavior
Contribute to open-source AR projects to gain practical experience
Contributing to open-source projects will expose you to real-world AR codebases and best practices.
Browse courses on AR Development
Show steps
  • Find open-source AR projects on platforms like GitHub
  • Review the codebase and identify areas where you can contribute
  • Submit a pull request with your changes
Build an AR app with a custom object
Develop your AR skills by creating an AR app that includes a custom 3D object.
Browse courses on Augmented Reality
Show steps
  • Start by creating a new ARKit project in Xcode
  • Add a 3D object to your AR scene
  • Create a physics body for your 3D object
  • Add gestures to interact with your 3D object
  • Test your AR app on a device
Build a simple AR app to showcase your understanding
Creating a real-world AR app will test your knowledge of the course concepts and help you consolidate your understanding.
Browse courses on AR Development
Show steps
  • Design the concept and user flow of your AR app
  • Implement the app using ARKit and Swift or Objective-C
  • Test and debug your app thoroughly

Career center

Learners who complete Work with augmented reality (AR) and the web will develop knowledge and skills that may be useful to these careers:
AR/VR Developer
AR/VR Developers design, develop, and maintain augmented and virtual reality applications. This course may be useful for those seeking this role because it provides a hands-on approach to building AR apps. This course's focus on AR app creation and web integration can help AR/VR Developers build more immersive and engaging AR experiences. Additionally the course's emphasis on testing and debugging can help AR/VR Developers ensure the quality of their code.
UI/UX Designer
UI/UX Designers research, design, and test the user interfaces of websites and applications. This course may be helpful for those seeking this role because it provides a hands-on approach to building AR apps. This course's focus on AR app creation and web integration can help UI/UX Designers build more immersive and engaging user interfaces. It is recommended to take this course if you are interested in creating AR experiences that are both visually appealing and user-friendly.
Mobile Developer
Mobile Developers design, develop, and maintain mobile applications. This course may be helpful for those seeking this role because it provides a hands-on approach to building AR apps for iOS devices. This course's focus on AR app creation and web integration can help Mobile Developers build more immersive and engaging mobile apps.
Full-Stack Developer
Full-Stack Developers design and develop both the front-end and back-end of websites and applications. This course may be helpful for those seeking this role because it provides a hands-on approach to building AR apps and connecting to web services. This course's focus on AR app creation and web integration can help Full-Stack Developers build more immersive and engaging web applications.
Game Developer
Game Developers design, develop, and maintain video games. This course may be useful for those seeking this role because it provides a hands-on approach to building AR apps. This course's focus on AR app creation and web integration can help Game Developers build more immersive and engaging games.
Front-End Developer
Front-End Developers design and develop the user interfaces of websites and applications. This course may be helpful for those seeking this role because it provides a hands-on approach to building AR apps. This course's focus on AR app creation and web integration can help Front-End Developers build more immersive and engaging user interfaces.
Web Developer
Web Developers create and maintain websites and applications. This course may be useful for those seeking this role because it provides a hands-on approach to building AR web apps. This course's focus on AR app creation and web integration can help Web Developers build more immersive and engaging online experiences.
Data Scientist
Data Scientists collect, analyze, and interpret data to extract insights and make predictions. This course may be helpful for those seeking this role because it provides a hands-on approach to fetching and sending data to and from web services. This course's focus on connecting to web services can help Data Scientists build more efficient and effective data pipelines.
Software Engineer
Software Engineers design, develop, test, and maintain software systems. This course may be helpful for those seeking this role because it provides a hands-on approach to building AR apps. This course's focus on AR app creation and web integration can help Software Engineers build more immersive and engaging software applications. Additionally, the course's emphasis on testing and debugging can help Software Engineers ensure the quality of their code.
Interaction Designer
Interaction Designers design and evaluate the interactions between users and products. This course may be helpful for those seeking this role because it provides a hands-on approach to building AR apps. This course's focus on AR app creation and web integration can help Interaction Designers build more immersive and engaging user interactions.
Information Architect
Information Architects design and organize websites and applications to make them easy to find and use. This course may be helpful for those seeking this role because it provides a hands-on approach to building AR apps. This course's focus on AR app creation and web integration can help Information Architects build more immersive and engaging information architectures.
Back-End Developer
Back-End Developers design and develop the server-side logic of websites and applications. This course may be helpful for those seeking this role because it provides a hands-on approach to connecting to web services. This course's focus on connecting to web services can help Back-End Developers build more efficient and effective web applications.
UI Designer
UI Designers create the visual interfaces of websites and applications. This course may be helpful for those seeking this role because it provides a hands-on approach to building AR apps. This course's focus on AR app creation and web integration can help UI Designers build more immersive and engaging user interfaces.
UX Designer
UX Designers research, design, and evaluate user interfaces. This course may be helpful for those seeking this role because it provides a hands-on approach to building AR apps. This course's focus on AR app creation and web integration can help UX Designers build more immersive and engaging user experiences.
Product Manager
Product Managers oversee the development and launch of products. This course may be helpful for those seeking this role because it helps build a foundation in AR app development and web integration. This course's focus on building AR apps can help Product Managers understand the potential of AR technology and how it can be used to create innovative products.

Reading list

We've selected six 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 Work with augmented reality (AR) and the web.
Is the official guide to the Swift programming language, written by its lead developer. It's a valuable reference for understanding the language's design and features.
Provides a comprehensive introduction to the field of augmented and virtual reality. It covers the underlying principles, technologies, and applications of AR/VR, offering a solid foundation for the course.
Provides guidance on designing user interfaces, which is important for creating engaging AR experiences. It's helpful for understanding design principles and best practices.
Explores the latest trends and practices in AR, VR, and MR. It's valuable for staying up-to-date with the rapidly evolving field of immersive technologies.
Covers the field of human-computer interaction (HCI), which is relevant for understanding how users interact with technology. It's valuable as a background resource for designing user-centric AR apps.
This comprehensive book dives deep into the principles and practices of concurrency in Java. It provides insights into thread synchronization, memory models, and other advanced topics, which can be valuable for students who want to understand the complexities of concurrent programming in AR applications.

Share

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

Similar courses

Here are nine courses similar to Work with augmented reality (AR) and the web.
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