# Swift Guide Мой собственный учебник по основам Swift > *Note:* Чтобы оформление Playground-файла было как на изображении ниже (если вдруг оно отключено), вам необходимо его включить в меню: **Editor -> Show Rendered Markup**  # HowTo * Для начала вам необходимо обзавестись **CocoaPods**. [Инструкция](https://guides.cocoapods.org/using/getting-started). * В терминале введите команду `pod update` и дождитесь окончания установки необходимых библиотек. * Запустите проект - `Game.xcworkspace` Или же просто запустите файл - `Game.xcodeproj` # Roadmap * [x] [Hot keys](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/HotKeys.xcplaygroundpage/Contents.swift) * [x] Вступление * [x] Горячие клавиши * [x] [Object Info](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/ObjectInfo.xcplaygroundpage/Contents.swift) * [x] [Переменные и константы](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/Variables.xcplaygroundpage/Contents.swift) * [x] Переменная * [x] Константа * [x] [Integers](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/Integers.xcplaygroundpage/Contents.swift) * [x] [String](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/String.xcplaygroundpage/Contents.swift) * [x] [Float и Double](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/FloatAndDouble.xcplaygroundpage/Contents.swift) * [x] [Boolean](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/Boolean.xcplaygroundpage/Contents.swift) * [x] [Array](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/Array.xcplaygroundpage/Contents.swift) * [x] [Dictionary](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/Dictionary.xcplaygroundpage/Contents.swift) * [x] [Set](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/Set.xcplaygroundpage/Contents.swift) * [x] [Tuple](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/Tuple.xcplaygroundpage/Contents.swift) * [ ] [Optional](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/Optional%20(in%20progress).xcplaygroundpage/Contents.swift) * [x] [If Else](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/IfElse.xcplaygroundpage/Contents.swift) * [ ] Switch * [x] [For](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/For.xcplaygroundpage/Contents.swift) * [x] Stride * [x] Where * [x] [While](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/While.xcplaygroundpage/Contents.swift) * [x] Repeat while * [x] Continue * [x] Break * [x] [Function](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/Function.xcplaygroundpage/Contents.swift) * [x] Необязательные параметры * [x] Стандартное значение параметра * [x] Inout * [x] [Enum](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/Enum.xcplaygroundpage/Contents.swift) * [x] Перечисления со значениями * [x] Связанные значения * [ ] [Structure](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/Structure%20(in%20progress).xcplaygroundpage/Contents.swift) * [ ] Вычисляемые свойства * [x] Наблюдатели свойств * [x] Методы * [x] Конструкторы * [x] Опциональный конструктор * [x] [Class](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/Class.xcplaygroundpage/Contents.swift) * [ ] ARC * [x] [Protocol](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/Protocol.xcplaygroundpage/Contents.swift) * [x] [Extension](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/Extension.xcplaygroundpage/Contents.swift) * [x] [Generic](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/Generic.xcplaygroundpage/Contents.swift) * [x] [Closure](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/Closure.xcplaygroundpage/Contents.swift) * [x] [Guard](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/Guard.xcplaygroundpage/Contents.swift) * [x] [Error](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/Error.xcplaygroundpage/Contents.swift) * [x] [Try / Catch](https://github.com/riley-usagi/swift_guide/blob/master/swift_guide.playground/Pages/TryCatch.xcplaygroundpage/Contents.swift) * [ ] Codable, Encodable, Decodable