HackingWithSwift100Days

This is repository for swift language study during 100 days.

Days 1 - 12: Introduction to Swift

  • Day 1 : Variables, simple data types and string interpolation
  • Day 2 : arrays, dictionaries, sets, and enums
  • Day 3 : Operators and Conditions
  • Day 4 : Loops - For in, While, repeat loops...
  • Day 5 : Functions, parameters, and errors
  • Day 6 : Closures, part one
  • Day 7 : Closures, part two
  • Day 8 : Structs, part one - properties and methods
  • Day 9 : Structs, part two - access control, static properties, and laziness
  • Day 10 : Class and Inheritance
  • Day 11 : protocols, extensions, and protocol extensions
  • Day 12 : Optional

Days 13-15: Consolidation I

  • Day 13 : Variables and constants, Types of Data, Operators, String interpolation, Arrays, Dictionaries, Conditional statements, Loops, Switch case
  • Day 14 : Functions, Optionals, Opetional Chaining, Enumerations, Structs and Classes
  • Day 15 : Properties, access control, polymorphism and typecasting, closures

Days 16-22: Starting iOS

  • Day 16 : Project 1, part one - setting up, Listing images with FileManger, Desiging our interface
  • Day 17 : PROJECT 1, PART two - Building a detail screen, Loading images with UIImage, Final tweaks: hidesBarsOnTap, safe area margins
  • Day 18 : PROJECT 1, PART three - Wrap up, Review for Project 1: Storm Viewer
  • Day 19 : PROJECT 2, PART one - Setting up, Designing your layout, Making the basic game work: UIButton and CALayer
  • Day 20 : PROJECT 2, PART two - random numbers, IBAction
  • Day 21 : PROJECT 2, PART three - Wrap up, Review for Project 2: Guess the Flag
  • Day 22 : PROJECT 3, About technique projects, UIActivityViewController explained, Wrap up, Review for Project 3: Social media

Day 23: Consolidation II

  • Day 23 : Milestone: Project 1-3

Days 24-31: Web views, user input, and Auto Layout

  • Day 24 : Project 4, part one - Setting up, Creating a simple browser with WKWepView, Choosing a website: UIAlertController action sheets
  • Day 25 : Project 4, part two - Monitoring page loads: UIToolbar and UIProgressView, Refactoring for the winn
  • Day 26 : Project 4, part three - Wrap up, Review for Project 4: Easy Browser
  • Day 27 : Project 5, part one - Capture lists in Swift: what's the difference between weak, strong, and unowned references?, Setting up, reading disk: contentsOfFile, Pick a word, any word: UIAlertController