Intro to Programming and App Design and Development Series
Covers Android / Java and iOS / Swift
Partly Based on an Upper-division Undergraduate Course at UCLA
13-Week Course (60 Lectures)
16+ Hours of Video Instruction
400+ Pages of Lectures Slides, Notes, Source Code
4 Additional Weeks of Student Project: Online Q/A Support during “Build Your Own App” Project
Get Started Making Your Own Apps for Fun, as a Freelancer, or to Become a Professional Software Developer
No Prior Knowledge or Experience Necessary
This is an introduction to programming and app development class series, partly based on an upper-division undergraduate introductory programming languages course from the Computer Science department at UCLA.
Whether you’re interested to learn making apps for fun, would like to start app development as a side-job, or even want to pick up software development as a career, this course will give you the background and practice you need to get started and take off on your own.
This is a 17-week course. We will spend 8 weeks on principles of computer programming. Next we’ll learn things specific to designing and developing mobile apps, for both iOS and Android, and we’ll finish the course by developing a sample app together in both these platforms. After the completion of the course, I’ll ask you to design and develop an app of your own choice. We’ll make this course interactive. For 17 weeks since the start of your course, I’ll be available online to answer your questions and provide you feedback, especially during the time you will be making your own app (last 4 weeks).
The course covers concepts from Functional languages, Imperative languages, and Object-Oriented languages, in the context of the following languages: Java for Android, Swift for iOS.
No prior knowledge or experience in programming is necessary and all ages are welcome
To be able to learn and practice programming languages concepts, you only need a computer with internet connection
To be able to practice making apps on your own, you will need a computer with Xcode (for iOS) or Android Studio (for Android) installed
Intro: Introduction to this series
Week 1: Orientation, Swift Primer, Functional Languages, Functions, Types, Type Inference, Type Checkers
Week 2: Control, Imperative Languages
Week 3: Recursion, Data Structures
Week 4: Data Structures, Optional Types
Week 5: Scoping, Closures, Interpreted and Compiled Languages, Static and Dynamic Typing