# Swift Learning Roadmap [Türkçe](README.tr.md) · [Contributing / Katkı](CONTRIBUTING.md) · [Good first issues](https://github.com/asimcanyagiz/Swift-Roadmap/labels/good%20first%20issue) A free, open-source learning path for Swift and iOS development, with **23 topic pages collecting primarily Turkish-language learning resources**. This English index helps readers navigate the material; the linked topic pages are in Turkish. The roadmap covers language fundamentals, collections, protocols, memory management, concurrency, SwiftUI, package management, and testing. It is a reading guide, with no package or app to install. ## How to use this roadmap 1. Start with values, operators, and control flow. 2. Continue with functions, collections, enums, structs, and classes. 3. Explore protocols, error handling, generics, closures, and memory management. 4. Move on to concurrency, SwiftUI, dependencies, and tests. For each topic, choose a linked resource and try a small example yourself. Some linked courses describe older tools or APIs: check the current [Swift documentation](https://www.swift.org/documentation/) and [Apple documentation](https://developer.apple.com/documentation/) when behavior differs. Individual resources may require an account or offer paid content. ## Language fundamentals - [Data types](VeriTipleri/veri-tipleri.md) - [Operators](Operatörler/operatorler.md) - [If and else](If-Else/if-else.md) - [Switch](Switch-Case/switch-case.md) - [For loops](For-Donguleri/for-donguleri.md) - [While loops](While-Donguleri/while-donguleri.md) - [Functions](Fonksiyonlar/fonksiyonlar.md) - [Arrays](Diziler/diziler.md) - [Dictionaries](Sozlukler/sozlukler.md) - [Enumerations](Enumeration-Turleri/enumeration-turleri.md) - [Structures](Yapilar-Struct/yapilar-struct.md) - [Classes](Siniflar-Class/siniflar-class.md) ## Further topics - [Protocols and delegation](protokoller-delegasyon.md) - [Object-oriented programming](Nesne-Yonelimli-Programlama/nesne-yonelimli-programlama.md) - [Error handling](Hata-Yonetimi/hata-yonetimi.md) - [Extensions](Extensionlar/extensionlar.md) - [Generics and associated types](Generics-AssociatedTypes/generics-associatedTypes.md) - [Closures and higher-order functions](Closures/closures.md) - [Memory management: ARC, strong, weak, and unowned references](Memory-Management/memory-management.md) - [Concurrency and multithreading: GCD and OperationQueue](Concurrency-Multithreading/concurrency-multithreading.md) - [SwiftUI and Combine](SwiftUI/swiftUI.md) - [Swift Package Manager and CocoaPods](SPM-Cocoapods/spm-cocoapods.md) - [Unit testing and UI testing](Unit-UI-Test/unit-ui-test.md) ## More learning resources ### Official documentation - [The Swift Programming Language](https://docs.swift.org/swift-book/documentation/the-swift-programming-language/) - [Swift.org documentation](https://www.swift.org/documentation/) - [Apple Swift resources](https://developer.apple.com/swift/resources/) ### Turkish resources - [Hacking with Swift in Turkish](https://www.hackingwithswift.com/read/tr) - [BTK Akademi: Swift ile iOS Programlama](https://www.btkakademi.gov.tr/portal/course/swift-ile-ios-programlama-12273) - [Patika: Swift ile iOS Programlama](https://academy.patika.dev/paths/swift-ile-ios-programlama-patikasi) ### English resources - [Hacking with Swift](https://www.hackingwithswift.com/) - [Kodeco](https://www.kodeco.com/ios) - [Swift by Sundell](https://www.swiftbysundell.com/) - [Stanford CS193p](https://cs193p.sites.stanford.edu/) ## Contribute or share feedback First-time contributors are welcome. Start with a [good first issue](https://github.com/asimcanyagiz/Swift-Roadmap/labels/good%20first%20issue), or report an outdated link or unclear topic through the [issue forms](https://github.com/asimcanyagiz/Swift-Roadmap/issues/new/choose). Each starter issue describes a small change, its target file, and how to check it. Read the [contribution guide](CONTRIBUTING.md) for the editing and pull request workflow. Issues and pull requests can be written in English or Turkish; additions to existing topic pages should be in Turkish. If you use the roadmap for self-study or teaching, feedback about what helped and what is missing is welcome through the issue forms. A public link is optional. ## License [MIT](LICENSE). Linked third-party resources retain their own licenses and terms.