Swift и разработка на IOS/WatchOS / Дневник самоучки
Предисловие
В общем спустя 8 лет профессиональной Frontend-разработки интерес развития во всем этом обилии костылей и библиотек стал угасать в геометрической прогрессии. Раньше я читал много книг ,проходил курсы ,обучался даже тогда ,когда казалось бы ,навыков хватало для работы. Но тем не менее ,меня это интересовало не столько из-за денег ,сколько из-за интереса и желания стать лучше в этой области ,возможно для признания со стороны.
Но в последнее время мне все меньше хочется инвестировать свое время в прокачку навыков фронтендера. Фронтенд с каждым годом становится все сложнее ,хотя казалось бы ,все должно было быть иначе. Те вещи ,которые мы строим с привлечением тонны разнородных библиотек должны были давно быть доступны в API браузера. Взять тот же React или Angular - это же по своей сути костыли для веб-разработки. И появление веб-компонетов особо ситуации не изменило. Мы попрежнему используем Svelte или Lit для удобной декларативности. Нам попрежнему нужны сторонние тулзы для работы с роутингом ,хранилищами и тд.
Я уже молчу ,что помимо самого фронтенда теперь нужно и в бекенд уметь и в инфраструктуру и куда-нибудь еще.
В общем ,как будто бы дальше мне уже не хочется в этом развиваться. Прикладываемые усилия попросту не окупаются или не успевают окупаться. Карьерный рост меня тоже перестал мотивировать. Ибо дошел до потолка ,где несоразмерными усилиями получается нарастить считанные проценты к зп. Да как будто бы инфляция даже выше.
Я хочу попробовать немного (или много) сместить вектор своего развития в сторону работы на себя самого и переключиться на другой стек технологий.
Сейчас работа будет просто моим основным стабильным доходом ,но я не буду вкладывать в развитие столько сил ,планов и тд ,сколько вкладывал раньше.
Если не Frontend ,то что?
Я подумал ,что мобильная разработка - это то самое место ,где можно попробовать заработать самому. Сейчас есть много гибридных технологий ,которые позволяют писать приложения средствами js и его фреймворков - ReactNative / NativeScript / Cordova / Capacitor / и может быть что-то там еще. Есть еще Flutter ,который ,я кстати в свое время попробовал ,но мне он не особо зашел.
В общем здесь мне будет не сложно влиться ,тк в целом я могу разрабатывать мобилки с текущими навыками ,учитывая еще и то ,что около 5 лет я разрабатывал мобилки на Cordova + немного Flutter.
Но мне хочется уйти от этих костылей и начать разрабатывать на нейтив языке для платформы. И выбор пал на Swift. Мне хочется делать мобилки под IOS. Мне в целом очень нравится продукция Apple и их системы. Да и аудитория с айфонами куда более платежеспособна с точки зрения монетизации своих приложений.
Что дальше?
Данную цель я планирую вести как дневник ,просто периодически делясь чем-то новым ,что узнал для себя. Возможно я буду часто сравнивать язык и подходы к разработке с миром js и frontend-разработки.
Я буду плавно и не спеша изучать разработку на Swift под IOS ,и скорее всего снова окунусь в специфику разработки гибридных приложений ,чтобы мочь уже сделать что-то осязаемое ,скрещивая 2 технологии ,и ,в последствии ,мигрируя полностью на нейтив.
Цель вообще этого всего - попробовать новый язык и инструменты ,а также попробовать делать ios-приложения ,на которых можно что-то заработать.
Идеальный вариант - если чистый доход с разработанных мной приложений догонит текущий доход с работы. Тогда можно было бы уволиться и заняться этим уже серьезно ,работая исключительно на себя.
-
Книга: Swift? Не вопрос
Книга для самого первого быстрого погружения ,чтобы составить представление о том ,как устроен язык и фреймворк SwiftUI.
Читаю быстро ,особо не погружаюсь в детали.
-
Swift. Самое полное руководство по разработке в примерах от сообщества Stack Overflow
-
Начало работы с языком Swift
-
Переменные и свойства
-
Числа
-
Строки и символы
-
Логические значения
-
Массивы
-
Кортежи
-
Перечисления
-
Структуры
-
Множества
-
Словари
-
Оператор switch
-
Опционалы
-
Условные выражения
-
Обработка ошибок
-
Циклы
-
Протоколы
-
Функции
-
Расширения
-
Классы
-
Приведение типов
-
Обобщенные типы
-
OptionSet
-
Чтение и запись JSON
-
Расширенные операторы
-
Swizzling методов
-
Рефлексия
-
Управление доступом
-
Замыкания
-
Инициализаторы
-
Связанные объекты
-
Параллелизм
-
Начало работы с протокольно-ориентированным программированием
-
Функциональное программирование в Swift
-
Функции как объекты первого класса в Swift
-
Замыкания
-
Оператор defer
-
Стилевые соглашения
-
NSRegularExpression в Swift
-
Библиотека RxSwift
-
Swift Package Manager
-
Работа с C и Objective-C
-
Разметка документации
-
Typealias (Псевдоним типа)
-
Внедрение зависимостей
-
Кеширование на дисковом пространстве
-
Алгоритмы в Swift
-
Расширенные функции
-
Обработчик завершения (Completion Handler)
-
Swift HTTP-сервер от Kitura
-
Генерация UIImage из инициалов строки
-
Пораждающие шаблоны проектирования
-
Структурные шаблоны проектирования
-
Небезопасные указатели на буфферы
-
Криптографическое хеширование
-
Шифрование по стандарту AES
-
Формирование ключа с использованием стандарта PBKDF2
-
Логирование в Swift
-
Управление памятью
-
Производительность
-
-
Swift Documentation / Language Guide
-
The Basics
-
Basic Operators
-
Strings and Characters
-
Collection Types
-
Control Flow
-
Functions
-
Closures
-
Enumerations
-
Structures and Classes
-
Properties
-
Methods
-
Subscripts
-
Inheritance
-
Initialization
-
Deinitialization
-
Optional Chaining
-
Error handling
-
Concurrency
-
Macros
-
Type Casting
-
Nested Types
-
Extentions
-
Protocols
-
Generics
-
Opaque and Boxed Protocol Types
-
Automatic Reference Counting
-
Memory Safety
-
Access Control
-
Advanced Operators
-
-
SwiftUI Standford
-
Getting started with SwiftUI
-
Learning more about SwiftUI
-
MVVM and the Swift type system
-
Memorize Swift Logic
-
Properties Layout @ViewBuilder
-
Protocols Shapes
-
ViewModifier Animation
-
Animation Demonstration
-
EmojiArt Drag and Drop Multithreading
-
Multithreading Demo Gestures
-
- 187
- 14 November 2025, 13:59
Don't miss new posts!
Subscribe for the Goal and follow through to its completion