Udacity has a huge selection of courses on many subjects in computer science. Each course consists of several lessons, each with a series of videos, quizzes and problems to work through. Many of these courses are free, but there are paid courses for even greater depth of material. Courses tend to be project-based, so by the end you will have completed a step-by-step process for creating a product, such as a weather app. This makes it a great place to learn for those who prefer practical applications for practicing their skills.
Where to start…
You can view the Udacity course catalog here. It is searchable using a variety of filters. Create an account here and get started!
iOS Courses…
Intro to iOS App Development with Swift – This course will launch you into app creation for iOS, but may require some previous experience with computer programming.
How To Make an iOS App – Once you have some experience making iOS apps with Swift, this course will show you how to really start from scratch to make exactly the app you’re imagining.