iOS Development in Swift
by Plymouth University
This course material is only available in the iTunes U app on iPhone or iPad.
Most developers want to teach themselves, but there are hurdles, jargon and new concepts that can stand in the way. Navigating through all the information can seem overwhelming.
- It should be fun from the start - we get straight into building an app in XCode.
- Swift language features will be introduced on demand / in context as opportunity arises.
- It's not just about Swift and iOS - computer science concepts matter too. Apple sometimes do things differently to others. Students appreciate new and often better ways of thinking.
- There is a focus on jargon - Jargon is often the clue / gateway to learning new and often unfamiliar concepts. It's also vital to use the documentation
- Minimise the API taught to a core set - teaching hours and hours of API can overload new learners. Teaching too much API can also lead to repetition. By the end of this course, you should be able to pick and learn those parts of the API you need for your app.
- Learning should be an active process - learners are required to write code and solve incrementally challenging problems - solutions are always provided of course
- Sample codes / solutions are kept simple and focused - although it's very temping to write beautiful and elegant examples, so cognitive overload is all too easy to achieve as well! Samples will be simple and focused on the point (but still look rather nice).
- Learners are increasingly directed to navigating the excellent Apple documentation / sample code / books + WWDC Videos and other iTunesU courses.
|1||Swift Playgrounds||Swift Playgrounds is a revolutionary app that makes it fun to learn and experiment with code. You solve interactive puzzles in the guided “Learn to Code” lessons to master the basics of coding, or experiment with a wide range of challenges that let you explore many unique coding experiences. Swift Playgrounds requires no coding knowledge, so it’s perfect for students just starting out, from twelve to one-hundred-and-twelve. The whole time you are learning Swift, a powerful programming language created by Apple and used by professionals to build many of today’s most popular apps. And because it’s built to take full advantage of iPad and the real iPadOS SDK, Swift Playgrounds is a first-of-its-kind learning experience. Lessons built-in • Apple-created lessons guide you through the core concepts of programming by using code to solve puzzles • See your code run in a beautiful, interactive 3D world that you can rotate with a finger and pinch to zoom • Animations introduce each new coding concept at a high level before you dive into the puzzles • Choose from three animated characters to carry out the steps of your code • Glossary and built-in help pages give detailed information about available commands and frameworks Explore and create • Challenges offer many new opportunities for creativity by playing with game logic, music, sensors, and more • Interactive coding shows the results of your code instantly, either beside the text or acted out in the live view • Step through your code to highlight each line as it is run • Use your own photos and images within a playground to make it uniquely yours • Starting points are a head start to create your own playgrounds that use graphs, graphics, touch, or chat with the computer • Create your own playgrounds from scratch to take your coding skills to entirely new places • Reset any page to start over, or duplicate and rename any document to give a family member their own copy Built for touch • QuickType suggestions let you add multiple lines of code in just a few taps, no keyboard required • Tap and hold to grab any command and move it around to change the order of your code • Drag a brace with your finger to wrap a block of code inside a loop or conditional statement • Drag and drop snippets of commonly-used code directly into your playground • Tap a color box in your code to display a pop-up color picker • Coding keyboard has all the common Swift characters, just swipe to pick the alternate symbol on any key Real Swift and iOS code • Learn the same powerful Swift programming language used by the pros to create thousands of apps in the App Store • Access iPadOS frameworks such as SpriteKit for 2D games, SceneKit for 3D graphics, UIKit, and more • Your code has direct control of iPad hardware such as the gyroscope, accelerometer, camera, and touch events • Use Bluetooth APIs to write playgrounds that control robots and other real-world devices with your iPad • Concepts and skills you learn directly apply when writing real apps Share • Send your creations to friends and family using Messages, Mail, AirDrop, or other Share Sheet extensions • Record a video of yourself coding or running your creation, complete with your own voice narration • Broadcast a coding session live to the world using any streaming service app that supports ReplayKit||--||Free||View in iTunes|
|2||Keynote||Keynote is the most powerful presentation app ever designed for a mobile device. Built from the ground up for iPad, iPhone, and iPod touch, it makes creating a world-class presentation — complete with animated charts and cinematic transitions — as simple as touching and tapping. Start with an Apple-designed theme and add text, images, charts, tables, and shapes with just a few taps. Highlight your data with stunning interactive charts. Draw and write with Apple Pencil on supported devices, or use your finger. Present right from your iPad, iPhone, or iPod touch. Or use Keynote Live to present a slideshow that viewers can follow from their Mac, iPad, iPhone, iPod touch, and from iCloud.com. Preview your slides and notes on your device using the Presenter Display. With iCloud built in, your presentations are kept up to date across all your devices. And with real-time collaboration, your team will be able to work together at the same time on a Mac, iPad, iPhone, or iPod touch — even on a PC using iWork for iCloud. Collaborate with others at the same time • Your whole team can work together on a presentation at the same time using real-time collaboration • Collaboration is built right in to Keynote on the Mac, iPad, iPhone and iPod touch • PC users can collaborate too, using Keynote for iCloud • Share your document publicly or with specific people • Easily see who’s currently in the presentation with you • View other people’s cursors to follow their edits • Available on presentations stored in iCloud or in Box Get started quickly • Choose from 30 Apple-designed themes to give your presentations a beautiful start • Use the slide navigator to quickly skim through your presentation, add new slides, and reorder slides • Design your presentation using your choice of slide layouts, animations, fonts, and style options • Import and edit Microsoft PowerPoint files using Mail, a WebDAV service, or iTunes File Sharing • Quickly open password-protected presentations using Touch ID or Face ID on supported devices Create stunning presentations • Add emphasis to presentations with action build effects, including move, rotate, and scale animations. • Use predefined text styles or choose text options to personalize your slides • Easily change slide masters and backgrounds • Use donut charts to visualize data in an engaging new way • Add an interactive image gallery to view a collection of photos • Enhance your presentations with a library of over 700 editable shapes • Quickly add your photos and videos from the Photos app using the Media Browser • Edit down to the pixel with rulers and alignment guides • Use Instant Alpha to easily remove image backgrounds Cinema-quality animations • Beautiful cinematic slide transitions for easily creating stunning presentations • Magic Move effect to effortlessly animate and morph graphics • Gorgeous slide transitions including Clothesline, Object Cube, Object Flip, and Object Pop • Impressive text and object animations including Vanish, Crumble, and Fade and Scale Present to your audience • Rehearse a presentation with current slide, presenter notes, and timer all in one view • Keynote Live lets you present a slideshow that viewers can follow from their Mac, iPad, iPhone, iPod touch, and from iCloud.com • Present on an external display or projector; navigate slides, view presenter notes; stream wirelessly using AirPlay and Apple TV • Highlight with Apple Pencil while presenting on iPad Pro iCloud • Turn on iCloud to access and edit your presentations from your Mac, iPad, iPhone, iPod touch, and iCloud.com • Use Keynote for iCloud to access and edit your presentations from a Mac or PC browser • Keynote automatically saves your presentations as you make changes Share your work • Export your presentation to Microsoft PowerPoint or PDF format • Export your presentation as a movie, animated GIF, or images Some features may require Internet access; additional fees and terms may apply.||--||Free||View in iTunes|
|3||Apple Books||Apple Books lets you lose yourself in the best books and audiobooks right on your iPhone, iPad, iPod touch, or Apple Watch. You’ll find bestsellers, classics, up-and-coming authors, and more — all ready to instantly download and enjoy. Features • Selection: Explore millions of books and audiobooks from every category including fiction, nonfiction, mysteries, thrillers, romance, kids’ books, comics, and more. • Book Store: Check out Top Charts, and find new releases, limited-time offers, and recommendations for you, updated every week. • Audiobooks: Discover great audiobooks read by actors, authors, and other memorable voices. • Free samples: Preview books and audiobooks while you browse, and download free samples — sometimes before they’re available anywhere else. • Want to Read: Keep track of books and audiobooks you’d like to read next by adding them to your Want to Read collection. • Audiobooks app for Apple Watch: Listen to your favorite audiobooks on your next hike, run, or exercise session, right from your wrist. • Customize your reading experience: Choose between a selection of fonts and easy-to-read page colors. Use Auto-Night Theme and adjust your screen brightness to make reading more comfortable on your eyes. Enabling Scrolling View to move continuously through books instead of flipping pages. iCloud Features • Access any of the books you purchase from Apple Books on all of your devices. • Family Sharing makes it easy for you and up to five family members to share your books and audiobooks purchases. • Organize your books and PDFs into personal collections that will appear on all of your devices. • Access bookmarks, highlights, notes, and your current page on all of your devices. Requirements & Store Availability • The Book Store is available in many countries. The selection of available books varies by country. • Downloading content from Books or iCloud requires an Apple ID and Internet access. • Adding books and PDFs from outside the Book Store to the Books app requires they be DRM-free. Some PDF documents may not be compatible with Books.||--||Free||View in iTunes|
|4||Apple Developer||Welcome to Apple Developer, your source for developer stories, news, and educational information — and the best place to experience WWDC. • Stay up to date on the latest technical and community information. • Browse news, developer stories, and informative videos. • Watch videos from current and past events and download them to watch offline. • Enroll in the Apple Developer Program in supported locales.||--||Free||View in iTunes|
|5||Updating Your Swift Projects||--||3:52||Free||View in iTunes|
|6||Playground Demo||--||0:59||Free||View in iTunes|
|7||Video on using the iPad to view content on iTunes U||--||20:31||Free||View in iTunes|
|8||Installing free apps from Apple + others||--||6:51||Free||View in iTunes|
|9||Using a Mac for the first time - Introduction||--||0:15||Free||View in iTunes|
|10||Tip 1 - Opening, maximising, minimising and hiding applications||--||3:25||Free||View in iTunes|
|11||Tip 2 - Launching Applications||--||4:00||Free||View in iTunes|
|12||Tip 3 - Installing Xcode||--||0:54||Free||View in iTunes|
|13||Tip 4 - Keyboard Shortcuts||--||1:58||Free||View in iTunes|
|14||Configuring function keys for debugging||--||3:00||Free||View in iTunes|
|15||Xcode preferences||--||0:52||Free||View in iTunes|
|16||Using the simulator||--||3:15||Free||View in iTunes|
|17||Multiple desktops||--||5:21||Free||View in iTunes|
|18||Video - Obtaining the sample code and solutions||--||6:19||Free||View in iTunes|
|19||Using github to post questions and report bugs||--||2:23||Free||View in iTunes|
|20||Your First App||--||--||Free||View in iTunes|
|21||Autolayout from Xcode 7 to 8||--||39:29||Free||View in iTunes|
|22||Section 2 - Step 1 (Swift 2)||--||16:56||Free||View in iTunes|
|23||Section 2 - Step 2 Actions (Swift 2)||--||7:11||Free||View in iTunes|
|24||Section 2 - Step 3 Outlets (Swift 2)||--||4:04||Free||View in iTunes|
|25||Section 2 - Step 4 Model Data (Swift 2)||--||10:51||Free||View in iTunes|
|26||Section 2 - Step 5 Tidy Up (Swift 2)||--||7:20||Free||View in iTunes|
|27||Model View Controller Video Lecture||--||14:21||Free||View in iTunes|
|28||Model View Controller Lecture - Keynote Slides||--||--||Free||View in iTunes|
|29||Converting to Swift 2 (Demo)||--||13:46||Free||View in iTunes|
|30||Single View Application||--||--||Free||View in iTunes|
|31||Section 3 - Lecture - Swift variables and constants - Swift 2||--||52:00||Free||View in iTunes|
|32||Section 3 - Introduction - Swift 2||--||3:47||Free||View in iTunes|
|33||Section 3 - Step 1- Setup - Swift 2||--||5:02||Free||View in iTunes|
|34||Section 3 - Step 2 - Common Layout - Swift 2||--||10:50||Free||View in iTunes|
|35||Section 3 - Step 3 - Common Constraints - Swift 2||--||5:33||Free||View in iTunes|
|36||Section 3 - Challenge for Section 3p1||--||0:21||Free||View in iTunes|
|37||Section 3 - Step 4 - Laying out iPhone - Swift 2||--||8:38||Free||View in iTunes|
|38||Section 3 - Step 5 - Dismissing the Keyboard - Swift 2||--||12:41||Free||View in iTunes|
|39||Section 3 - Lecture - Classes properties and initializers - Swift 2||--||15:19||Free||View in iTunes|
|40||Section 3 - Step 6 - Adding the Model and Function - Swift 2||--||25:59||Free||View in iTunes|
|41||Section 3 - Step 7 - iPhone Landscape - Swift 2||--||3:07||Free||View in iTunes|
|42||Section 3 - Step 8 - Laying out iPad - Swift 2||--||10:11||Free||View in iTunes|
|43||Section 3 - Step 9 - Using a common label - Swift 2||--||6:06||Free||View in iTunes|
|44||Section 3 - Lecture - UIPickerView - Swift 2||--||13:58||Free||View in iTunes|
|45||Section 3 - Navigating the documentation||--||8:20||Free||View in iTunes|
|46||Section 3 - Step 10 - The UIPicker - Swift 2||--||27:16||Free||View in iTunes|
|47||Section 3 - Step 11 - Tidy - Swift 2||--||12:02||Free||View in iTunes|
|48||Section 3 - Table Challenge Briefing and Hints||--||4:41||Free||View in iTunes|
|49||Section 3 - Table Challenge Solution||--||7:38||Free||View in iTunes|
|50||Application Architecture - DRAFT 0.12||--||--||Free||View in iTunes|
|51||Section 4-2 - First look at navigation through an app||--||4:57||Free||View in iTunes|
|52||Section 4-2-1 DEMO - Navigation with StoryBoard||--||11:23||Free||View in iTunes|
|53||Section 4-2-2 DEMO - Modal Presentation and Stack Views||--||24:04||Free||View in iTunes|
|54||Section 4-3-1 - Lecture on Functions - Part 1||--||45:02||Free||View in iTunes|
|55||4-3 Function Playground Guide||--||2:25||Free||View in iTunes|
|56||Section 4-3-2 - Lecture on Functions - Part 2||--||1:19:09||Free||View in iTunes|
|57||Playgrounds in Xcode 7||--||3:39||Free||View in iTunes|
|58||04-03-03 - Lecture On Closures 109-02-2016||--||36:05||Free||View in iTunes|
|59||04-03-04 - Computer architecture and run loops||--||17:15||Free||View in iTunes|
|60||04-03-05 - IdleMode Demo (no closed captions yet)||--||4:30||Free||View in iTunes|
|61||04-03-06 - Call-backs||--||14:49||Free||View in iTunes|
|62||04-03-07 - Memory Management and Retain Cycles||--||20:28||Free||View in iTunes|
|63||4-3-8 Spotting Leaks With Xcode 8||--||10:50||Free||View in iTunes|
|64||04-04-01 Walkthrough of an iOS Project and App Bundle||--||19:32||Free||View in iTunes|
|65||4-4 Lecture on UIViewController-1||--||6:33||Free||View in iTunes|
|66||4-4 Lecture on UIViewController-2||--||4:10||Free||View in iTunes|
|67||04-04-02 Lecture on UIViewController - Showing the Picker||--||0:25||Free||View in iTunes|
|68||4-4 Lecture on UIViewController-3||--||6:47||Free||View in iTunes|
|69||04-04-03 Lecture on UIViewController Demo 1- Root View Controller||--||6:59||Free||View in iTunes|
|70||4-4 Lecture on UIViewController-4||--||8:31||Free||View in iTunes|
|71||04-04-04 Lecture on UIViewController Demo 2 - Container and Content View Controllers||--||16:03||Free||View in iTunes|
|72||4-4 Lecture on UIViewController-5||--||3:38||Free||View in iTunes|
|73||04-04-05 Presenting Demo 1||--||14:17||Free||View in iTunes|
|74||04-04-05 Presenting Demo 2||--||5:37||Free||View in iTunes|
|75||04-04-05 Presenting Demo 3||--||7:19||Free||View in iTunes|
|76||04-04-05 Presenting Demo 4||--||4:46||Free||View in iTunes|
|77||04-04-05 Presenting Demo 5||--||6:00||Free||View in iTunes|
|78||4-4 Lecture on UIViewController-6||--||22:38||Free||View in iTunes|
|79||04-04-06 ResponderChain Demo||--||17:02||Free||View in iTunes|
|80||04-04-06 Rotation Demos||--||8:38||Free||View in iTunes|
|81||Lecture on UIViewController||--||--||Free||View in iTunes|
|82||4-4 Lecture on UIViewController-7||--||10:01||Free||View in iTunes|
|83||Lecture On Enumerated Types||--||1:09:34||Free||View in iTunes|
|84||Enumerated Types||--||--||Free||View in iTunes|
|85||Breadcrumbs-1-UI||--||5:21||Free||View in iTunes|
|86||Breadcrumbs-2-TrackingLocation||--||15:51||Free||View in iTunes|
|87||Breadcrumbs-3 - Button State||--||41:04||Free||View in iTunes|
|88||Breadcrumbs-4-Options Table||--||14:12||Free||View in iTunes|
|89||Breadcrumbs-5-Outlets And Actions||--||7:11||Free||View in iTunes|
|90||Breadcrumbs-6-Dismissing With Delegation||--||14:42||Free||View in iTunes|
|91||Breadcrumbs-7 - User Defaults||--||23:29||Free||View in iTunes|
|92||Breadcrumbs-8-Passing The Result Back Using Value Semantics||--||21:01||Free||View in iTunes|
|93||Breadcrumbs-9-Reflecting The Options In The Map and Location Manager||--||8:13||Free||View in iTunes|
|94||Breadcrumbs-10 Asynchronous API||--||26:30||Free||View in iTunes|
|95||Breadcrumbs-11-Invoking The Asynchronous API||--||10:11||Free||View in iTunes|
|96||Breadcrumbs-12-Adding The Map Overlay||--||9:50||Free||View in iTunes|
|97||Breadcrumbs-13-Tidy Up||--||7:08||Free||View in iTunes|
|98||Intro to App Development with Swift||This course is designed to help you build a solid foundation in programming fundamentals using Swift as the language. You’ll get practical experience with the tools, techniques, and concepts needed to build a basic iOS app from scratch. You’ll also learn user interface design principles, which are fundamental to programming and making great apps. Prior programming experience is not required for this course. If you have programming experience, you can move through the early lessons quickly as you continue to learn about software development tools, concepts, and best practices that go beyond programming fundamentals.||--||Free||View in iTunes|
|99||Your First App||This is not an stand-alone book, but part of a series of electronic books for the iTunes U course “iOS Development in Swift”.  It covers the basic step to create a single view application.  This book also contains embedded streamed videos to aid learning. The stand-alone videos are also available from the iTunes U course.||--||Free||View in iTunes|
|100||Single View Application||This is not a stand alone book, but section 3 of the iTunes U course “iOS Development in Swift”.   The content addresses the building of a single view application. This application is “Universal”, meaning that it works for different types of device. The user interface is also adaptive, meaning that the layout and controls are chosen to best fit the screen real-estate. This book contained embedded video that is streamed, thus the download size is kept to a minimum.||--||Free||View in iTunes|
|101||The Swift Programming Language (Swift 5.3)||Swift is a programming language for creating iOS, macOS, watchOS, and tvOS apps. Swift builds on the best of C and Objective-C, without the constraints of C compatibility. Swift adopts safe programming patterns and adds modern features to make programming easier, more flexible, and more fun. Swift’s clean slate, backed by the mature and much-loved Cocoa and Cocoa Touch frameworks, is an opportunity to reimagine how software development works. This book provides: - A tour of the language. - A detailed guide delving into each language feature. - A formal reference for the language.||--||Free||View in iTunes|
Pretty Good Stuff
I am only about half way through the course and it is solid, but I wanted to point out two things.
1. The speaker tends to fade back and forth between talking to someone with no coding experience and someone with tons of coding experience. If you don’t have any experience with objective c, c++, or java, some of the lectures will be difficult to process.
2. FOR THE LOVE OF GOD, PUT YOUR NOTIFICATIONS ON SILENT AND YOUR PHONE ON DO NOT DISTURB.
Thanks for this wonderful course. Recommend this to any body who is new to programming.
Please update it with new contents… Waiting...
Well Done Course….
Good balance of both Intro to Swift AND development within Xcode - where as some courses are primarily fixed on Swift alone and leave navigation and implementation within Xcode as secondary, if not external (Mainly with Playgrounds which is OK too, but I prefer this approach myself). Well paced with additional topics introduced nicely within the overall course content. I also like the electronic book format that accompanies this course on the iPad (not sure on the Mac). I’m also taking the Stanford Swift iOS Course, but would suggest this course first. Highly recommend to all and looking forward to additional content on Swift/Xcode development from this instructor.