learning-bootcamps / iOS-Development-Bootcamp-July-2023

1 stars 6 forks source link

Table of Content

Introduction

Welcome to the iOS App Development Bootcamp! In this course, we will guide you through the exciting journey of building iOS applications. We understand that many of you are non-native English speakers, so we'll use simple language to ensure everyone can follow along easily.

Purpose

The purpose of this bootcamp is to equip you with the essential skills and knowledge to develop iOS apps confidently. By the end of the program, you'll be proficient in Swift, SwiftUI, UIKit, Firebase integration, OpenSource APIs, and version control using Git and Github.

Expectations

Code of Conduct

Journey

Throughout the bootcamp, you'll embark on a hands-on journey, creating various iOS projects, from simple to complex. Each project will build upon your skills, leading to a final customized iOS app that incorporates all the techniques and services you've learned.

Overview

Goals

By the end of this bootcamp, learners will achieve the following goals:

Outcomes

By the end of the bootcamp, learners will have completed the following four projects:

  1. Project 1: Simple Task Manager (Week 2) - Create a basic task manager app using SwiftUI. Users can add, edit, and delete tasks, and the app should maintain a persistent data store.
  2. Project 2: Weather App (Week 4) - Develop a weather app that fetches data from a public API and displays weather conditions for a given location. Users can view current weather and a 5-day forecast, and the app should use a OpenWeatherAPI
  3. Project 3: Social Media Feed (Week 6) - Build a social media feed app that fetches and displays posts from various users. Users can like, comment, and share posts, and the app should have a seamless user experience, and the app should use Firestore.
  4. Project 4: Custom iOS App (Week 8) - Learners will conceptualize and build a unique iOS app of their choice. They will have the creative freedom to demonstrate their skills and showcase their ability to develop a complete app from scratch.

Agenda

Week 1: Introduction to iOS Development and Swift Programming Language

Day 1: Getting Started

Day 2: Swift Basics

Swift Basics

Day 3: Swift Functions

Day 4: Swift Advanced Concepts

Day 5: Project 1 - Overview

Week 2: SwiftUI Framework

Day 1: Introduction to SwiftUI

Day 2: SwiftUI Views and Modifiers

Day 3: SwiftUI Navigation and Data Flow

Day 4: SwiftUI Lists and Forms

Day 5: Project 1 - Simple Task Manager (Contd.)

Week 3: UIKit Framework

Day 1: UIKit Fundamentals

Day 2: AutoLayout and Constraints

Day 3: UITableView and UICollectionView

Day 4: Handling User Input

Day 5: Project 2 - Weather App

Week 4: iOS Frameworks and Libraries and Git

Day 1: Introduction to Git

Day 2: Networking and APIs

Day 3: Handling Device Features

Day 4: Project 2 - Weather App (Contd.)

Day 5: Project 2 - Weather App (Contd.)

Week 5: SwiftUI along with UIKit

Day 1: AVFoundation

Day 2: Media Library

Day 3: MapKit

Day 4: Contacts

Day 5: Project 3 - Social Media App

Week 6: Databases & Firebase

Day 1: Introduction to Databases and Firebase

Day 2: Firebase Authentication

Day 3: Firebase Cloud Firestore

Day 4: Firebase Storage

Day 5: Project 3 - Social Media App (Contd.)

Week 7: Advanced Topics

Day 1: Core Data and Data Persistence

Day 2: Generics & Protocols

Day 3: Protocol Oriented Programming

Day 4: User Input Validation

Day 5: Final Project - Overview

Week 8: More Advanced Topics

Day 1: Reactive Programming with Combine

Day 2: Animation with Lottie

Day 3: Multi-threading with Dispatch

Day 4: Final Project - Masterpiece App

Day 5: Final Project - Masterpiece App

Conclusion

By the end of this bootcamp, learners will be well-versed in Swift, SwiftUI, and UIKit, and they will have completed four impressive projects demonstrating their skills and capabilities as iOS developers. We look forward to seeing our bootcamp graduates contribute to the world of iOS app development with their creativity and expertise. Let's get started on this exciting journey!

References