Learn Swift
This list contains several content links to learn to develop using SWIFT language. Due to scarcity of Portuguese content, we include English content on the list. The contents totally PT-BR are highlighted with a tag [??] .
If you are interested in contributing, feel free to make a fork and submit a PR. The more content the better?
How to contribute?
Want to know how to contribute to this project? Check our File Contribut.MD
Summary
- Learn Swift
- Summary
- Content
- Tutorials
- Language
- Architectures
- Project standards
- Interface
- General
- Swiftui
- Storyboard
- Viewcode
- Uikit
- Animations
- Networking
- Dependency Management
- Persistence
- Reactivity
- Security
- Accessibility
- Testing
- Backend
- Tools and Resources
- Utilities
- Deploy and CI/CD
- Blogs and Platforms
- Books
- Youtube channels
- Playlists on youtube
- Podcasts
- Playgrounds
- Free courses
- PAID COURSES
- Roadmaps
- Communities
- Channels on Telegram
- Instagram
- Twitter
Content
This section contains links on specific content related to SWIFT language and Apple development ecosystem.
Tutorials
- How to develop your own password generator in iOS - Victor Catão [??]
- iOS App Dev Tutorials - Apple
- Swifui Tutorial - Apple
- ? Xcode: How to create an iOS app from zero (for beginners) - Tiago Aguiar [??]
- ? How to create an iOS app on Xcode without Storyboard - Devpoli [??]
- Creation of iOS apps with Swift 2023 - Bruno Santos [??]
Language
- Variables and constant in SWIFT - Reisdev [??]
- What are classes and struct, the differences and when to use - Giovanna Moeller [??]
- Use of Struct and Class in Swift - Amanda Paiva [??]
- Swift protocols: a didactic approach - Caio Santos [??]
- Properties in Swift - Pedro Menezes [??]
- Optional Swift: How to use? - Giovanna Moeller [??]
- Optional in Swift - Reisdev [??]
- Understanding the use of generics: Why and how to use it? - Giovanna Moeller [??]
- Understanding [Weak Self] on Swift - Jonatan Medina [??]
- How do access modifiers work? - Giovanna Moeller [??]
- How to decode JSON in SWIFT - Reisdev [??]
- Codable Data Conversion (Encodable and Decodable) - Giovanna Moeller [??]
- Decoding JSON with Swift 4 - Mateus Silva [??]
- Decoding JSON WITH SWIFT 4 (PART 2) - MATEUS SILVA [??]
- IOS Memory Management - Weak, Strong and Unowned - Décio Montanhani [??]
- Demystifying the Protocol -oriented programming - Marcos Lacerda [??]
- Do you know what Property Wrappers are? Part 1 - Marcos Lacerda [??]
- Do you know what Property Wrappers are? Part 2 - Marcos Lacerda [??]
- Timer - Manipulating time using the timer (iOS) - Vinicius Mangueira [??]
- Competition in iOS: The theory behind the Grand Central Dispatch - Laura Pinheiro [??]
- Race Condition and Data Race: Creating Threadsafe classes in Swift - Laura Pinheiro [??]
- ? Automatizing Memory Leakage Detection - Commenting [??]
- ? Swift in practice: use of protocols (part 1) - Como [??]
- ? Swift in practice: use of protocols (part 2) - Como [??]
- ? How to Work with Closures - Devpoli [??]
- ? Unraveling the Swift ARC - Devpoli [??]
- ? Struct or class, what is it for? - Devpoli [??]
- ? LAZY VAR AND COMPUTED PROPERTIES - What is the difference? - Devpoli [??]
Architectures
- The 5 most used iOS architectures - ZUP [??]
- Main architectures for iOS applications - Objective [??]
- Understanding MVC, MVP and MVVM - ENG [??]
- What is the best architecture for iOS applications? MVC? - Geraldo Bastos [??]
- What is the best architecture for iOS applications? MVVM? - Geraldo Bastos [??]
- MVVM Architecture - Pomo Docs [??]
- Clean Architecture (clean) - Rayana Prata [??]
- Most common benefits among iOS architectures - Yasmin Benatti [??]
- A comparative study between architectural patterns for application development for the iOS - Icaro Lima platform [??]
- Implementing MVP Architecture - Commenting [??]
- IOS Architecture: MVVM-C
- ? (Re) Starting with Swiftui + MVVM - Cicero Camargo Codemus [??]
- ? Applying the MVC design standard in iOS applications - Developer Academy PUC -Rio [??]
- ? Approaching Business Architectures - Bruno Ramos [??]
- ? How to assemble MVVM in SWIFT - Devpoli [??]
- ? Migrating MVC Screen to VIP - Commenting [??]
- ? Applying MVVM - Pedro Lobosta [??]
Project standards
- Delegate Protocol in Swift - Cassia Barbosa [??]
- SWIFT Project Standards - Refactoring.Guru [??]
- Dependency Injection - Raúl Ferrer [??]
- A little about iOS dependence injection - Victor Brito [??]
- ? Applying Delegate Pattern - Pedro Lobosta [??]
- ? Creating Coordinator - Pedro Lobosta [??]
- ? Using Pop, Dependency Injection and Factory - Pedro Lagost [??]
- Patterns Design in Swift
- iOS good practices
Interface
General
- Differences in the construction of layout with Storyboard, XIB and View Code - Alura [??]
- ? Knowing Uiview and Constraints in iOS - Devpoli [??]
- IOS of the Principle with Swift: Basic Auto Layout - Bart Jacobs [??]
Swiftui
- Will Swiftui replace Swift? - Cassiane de Freitas [??]
- Swiftui: Tips for those who want to start developing - Arthur Givir [??]
- Layouts with Swiftui - Alura [??]
- Swiftui Notes
- ? Introduction to Swiftui - Building iOS applications - Giovanna Moeller [??]
- ? Introduction to Swiftui - How to Create the First [Ponta -A -Ponta] - Swift Brotherhood [??]
- ? Swiftui: How to start from zero in modern iOS development - Tiago Aguiar [??]
- ? Learn how to create native iPhone apps on Xcode - Full Guide: Swiftui - Swift Brotherhood [??]
- ? Swiftui for developers Uikit - Hugo Silva [??]
- ? Swiftui: IOS Animations - Tiago Aguiar [??]
- ? How to create an iOS app (super simple!) - Swiftui Tutorial - Tiago Aguiar [??]
- Hacking with iOS: Swiftui Edition
Storyboard
- Demystifying Storyboards - Equinecios [??]
- Uikkit, Storyboard and Delegate Standard - Ândriu Felipe [??]
- Storyboard - Kodeco
- ? How to create an iOS app using storyboard - developer academy puc -rio [??]
Viewcode
- View Code in Swift - Cassia Barbosa [??]
- Implementing iOS interfaces in View code - Ioasys -Voice [??]
- IOS Course: Module on View Code - Thiago Lioy [??]
- How many views are an app? - Echinocios [??]
- How to start with viewcode at iOS - João Alexandre [??]
- How to create an iOS app in ViewCode - Reisdev [??]
- ViewCode + AutoLayout - Kodeco
- ViewCode + Snapkit - Kodeco
- ? How to use ViewCode without Storyboard - Backfront Academy [??]
- ? How does UistaCackView - Devpoli [??] work
- ? How to create a screen using ViewCode - Swift for everyone [??]
- ? How to create Swift components using ViewCode - Swift for all [??]
Uikit
- First Steps with Uikit - Tuts+ [??]
- Uikit: rendering components in Swiftui - Ioasys -Voice [??]
Animations
- Improving the experience of your app with animations - iOS - Leonardo Santos [??]
- ? Swiftui: IOS Animations - How to Start - Tiago Aguiar [??]
Networking
- Async/Await: Generic Network layer with Swift 5.5 - Victor Catão [??]
- Using Swift 5 codables to consume a movie API - Lucas Fernandez [??]
- How to get a get on Swift 4.2 - Gois [??]
- I consuming API with Swiftui - Tamara Erlij [??]
- ? Seeking API data simply - devpoli [??]
- ? Consuming data from an API in Swift - Pedro Cacique [??]
- ? Creating Service Layer - Pedro Lobosta [??]
Dependency Management
- Installation and Use of Cocoapods Dependencies Manager - Giovanna Moeller [??]
- IOS Dependency Manager - TokenLab [??]
- Carthage: a project manager for Xcode projects - Infoq [??]
Persistence
- Learning Coredata with Swiftui - Academy IFCE + Alley Pereira [??]
- COREDATA - An introduction to persistence in iOS - Guilherme Paciulli [??]
- Data Persistence Using Coredata - Equinecios [??]
- ? How to use Userdefaults - Swift for all [??]
Reactivity
- RXSWIFT BASIC SUMMARY - HOFF SILVA [??]
- Swift Combine - Vinicius Mangueira [??]
- Comparing RXSWIFT and Combine - Anthony Gianeli [??]
- How to insert RXSWIFT + Functional Programming in your project that is 90% completed - Bruno Bilerscky [??]
- The Ultimate Combine Framework Tutorial in Swift
Security
- Security on iOS devices - Daiane Santos [??]
- Encryption for iOS devices - Vinicius Mangueira [??]
- Anti-Reversion Defenses for iOS
- SSL Pinning - Flawless App Stories
Accessibility
- Making your app accessible by everyone in iOS - Gustavo Severo [??]
- Voice Over - IOS Accessibility - Renan Germano [??]
- Creating an affordable solution for the One Time Code - André Salla [??]
- Have you ever wondered if your app is accessible? - Imasters [??]
- ? How to focus on the element with accessibility - Backfront Academy [??]
Testing
- IOS Unit Test and UI Test - Hoff Silva [??]
- Writing unit tests in chaotic scenarios: a practical approach - Renato Felício [??]
- Writing unit tests for a ViewController with TableView - Leonardo Cunha [??]
- Swift Unit Tests with MVVM - SoftDesign [??]
- Automated tests with Xctest Framework for iOS App Test - Amanda Lacerda [??]
- Test Doubles in Swift (or unit test isolation) - Vasconcelos Matheus [??]
- iOS tests 101 - Yasmin Benatti [??]
- ? Native test automation for iOS with XCUITESTE - Qazando [??]
- ? Dealing with fillemanager in unit tests - Como [??]
- ? Writing UI tests - Como [??]
- ? Creating Unit Tests - Pedro Lobosta [??]
- ? Creating Unit Tests in Practice - Pedro Lobosta [??]
- ? [Devpass Talks] Dominating Unit Tests on IOS (Leonardo Santos) [??]
Backend
- Steam - The New Type of Web Framework
- ? Build a Restapi In Swift Using the Vapor Framework
- ? Getting Started with Vapor
- ? Getting Started with Vapor | Server Side Swift
- ? Server Side Swift Using Vapor Part 1 - Getting Started
- ? Vapor new: урок 1 - введение, созание проекта, модель проуукта, миграция. Backend на Swift | серistry
Tools and Resources
Utilities
- Swift Lint - Vinicius Mangueira [??]
- Date Formatting - NSDATEFRACK
- Linting - Swiftlint
Deploy and CI/CD
- Generating artifacts .ipa with Github Actions - Michel Lutz [??]
- Bititis
- Jenkins
- Fastlane
- JUDO - UI server oriented
Blogs and Platforms
- Primitive School - Beta
- Recreate
- Appcoda
- Hacking with swift
- Kodeco (former Raywenderlich)
- Learnappmaking
- Daily Dose of Swift
- iOS Dev Weekly
- Create with Swift
- Awesome iOS
- The Swift Dev
- Holy Swift
- Swift with Majid
- Swift Senpai
- Serialcoder.dev
- Swift by Sundell
- WWDC NOTES
- Swiftlee
- Yet Another Swift Blog
Books
- Developing for iPhone and iPad - Ricardo R. Lecheta
- Swift in Depth - Tjeerd In 'T Veen
- Mastering Swift 5 - Jon Hoffman
- Kodeco books, various levels and topics
- Swift Book in Portuguese
- Learn Swift - Aidan Finn
Youtube channels
- Attekita Dev [??]
- Back Front Academy [??]
- Cicero Camargo Codemus [??]
- COCOAHEADSBR [??]
- Coding with Moa [??]
- Commenting [??]
- Developer Academy Puc-Rio [??]
- Michel Lopes [??]
- Pedro Lobosta [??]
- Reisdev [??]
- Raphael Oliveira [??]
- Tiago Aguiar [??]
- Thais Sadami [??]
- Swift to everyone [??]
- CREDO ACADEMY
- Essential Developer
- iOS Academy
- Paul Hudson
- Rebeloper
- Sean Allen
- Vincent Pradilles
- Kavsoft
- Stewart lynch
- Karin Prater
Playlists on youtube
- Swift Course - Hugo Vasconcelos [??]
- Swift classes - Bruno Scheltzke [??]
- IOS Development - Disagreeing Knowledge / Renato Matos [??]
- IOS Development - Tiago Aguiar [??]
- Swift Course - Programming - Tiago Aguiar [??]
- iOS Development with swift tutorials
- Swift and Swiftui Free Course (Stanford 2020)
- Apple Swift Programming Language Tutorial Series
- IOS Course Lectures Spring 2021 - Cornell Appdev
- IOS Tutorials (Legacy)
Podcasts
- Build Failed Podcast ??
- Swift by Sundell
- Swift unwrapped
- Compile Swift
- Counter -ness. The swift podcast
- Gigahertz podcasts
Playgrounds
- Swift online playground
- Apple Swift Playgrounds
Free courses
- Swift4noobs [??]
- Learning Swift from the beginner to striker - Udemy [??]
- iOS 13 & swift 5 - recreating the Tinder 2020 [??]
- Programming Teaching - Apple
- CS193P - Developing Applications for iOS Using Swiftui - Stanford
- 100 Days of Swift
- 100 Days of Swiftui
PAID COURSES
- Career IOS Course - Commenting [??]
- Layouts with Swiftui - Alura [??]
- Full Course Development iOS 11 Swift 4 - Eric Brito [??]
- IOS12 application development in Swift4 - Rodrigo Guimarães [??]
- Swift - TDD, Clean Architecture, Design Patterns, Solid, MVP - Rodrigo Manguinho [??]
- Development iOS 12 - Learn how to create 18 apps - Jamilton Damasceno [??]
- IOS Developer: Prepare for the job market - Wellignton Bezerra [??]
- The Complete iOS Development Bootcamp - Udemy
- From the beginner to the striker in unit tests in iOS
Roadmaps
- The IOS Programmer's Journey - Backfront Academy [??]
- IOS Development Study Plan - Zup Innovation [??]
- iOS Roadmap - climbing with swift [??]
- Swift Developer Roadmap - Ronan Rodrigo Nunes
- Mobile Developer Roadmap - Jung Kim
- iOS developer skills matrix - bohdan orlov
- iOS Roadmap to Professional Developer
Communities
- NSFlow - Telegram
- DevddDROPS IOS - Telegram
- iOS dev br - slack
- IOS Brazil - Discord
Channels on Telegram
Instagram
- COCOAHEADS BRAZIL
- Daily Dose of Swift
- Duness
- LELÊ DEVELOPER
- Luiz Mello
- Mafê
- Raphael Oliveira
- Reisdev
- Rychillie
- THAIS SADAMI
Twitter
- Enid
- Swift Language
- Kavsoft
- Aviel
- Paul Hudson
- Xcode releases
- Thomas Ricouard
- Donny Wals