Программирование на языке Swift

Курс сайт события http://levelp.ru/courses/programmirovanie/swift/

Добавить в календарь:
Поделиться:

Swift - это новый язык программирования для разработки iOS и OS X приложений, который сочетает в себе все лучшее от C и Objective-C, но лишен ограничений, накладываемых в угоду совместимости с C. 

В Swift используются паттерны безопасного программирования и добавлены современные функции, превращающие создание приложения в простой, более гибкий и увлекательный процесс. 

Swift создан с чистого листа – это возможность заново представить себе, как разрабатываются приложения.

 

Несколько фактов о языке программирования Swift:

  • Создание Swift держалось в строжайшем секрете с 2010 года

  • Swift вобрал в себя все лучшее от современных языков и разработан с учетом обширного опыта компании Apple

  • Swift не отпугнет и начинающих программистов. Это первый мощный язык программирования, такой же понятный и увлекательный, как скриптовый язык. Он поддерживает так называемые playgrounds, которые позволяют программистам экспериментировать с кодом, видя результат в режиме реального времени без необходимости компилировать и запускать приложение.

  • Swift – это новый фантастический способ создавать приложения для iOS и OS X

 

 

Что говорят о новом языке программирования Swift разработчики:

  • Язык Swift устраняет проблемы, скопившиеся за 20 лет в языке Objective-C. Он призван, в первую очередь, упростить ситуацию тех разработчиков приложений, которым крайне неудобно работать с громоздкими, сложными конструкциями Objective-C.

  • Язык Swift так же откроет новую эру для начинающих разработчиков, которые теперь помимо разработки маленьких игр на JavaScript, так же смогут выбирать и этот язык.

  • Язык являет собой неплохой симбиоз C/C++/Objective C/Java. Swift — чистый и современный. Приятно было услышать, что в нем используется LLVM для компиляции нативного кода плюс все Cocoa API адаптированы;

  • Swift более легкий и удобочитаемый, чем Objective-C;

  • Swift – что-то, что никто не ожидал увидеть на WWDC Keynote. Apple взяла все самое лучшее из всех известных мне языков и воплотила это в Swift.

  • Swift дает большие возможности по упрощению кода. То, что разработчик ранее писал с помощью verbose (слишком многословных) конструкций, сейчас можно заменить несколькими символами. Этот язык создавался в строжайшем секрете с 2010 года. Один из сотрудников Apple в разговоре с Крейгом Федериги сказал, что не ожидал, что от его команды скроют такой продукт. Много разработчиков были растеряны после keynote. Но нам всем нужно идти дальше и учиться :)

 


 

Программа курса:

1. Введение в программирование на языке Swift.

  • Установка и запуск Xcode 6. Знакомство с Playground.

  • Программа "Hello, world!".

  • Встроенные типы данных: целочисленные (знаковые/беззнаковые), вещественные, логический. Литералы встроенных типов.

  • Переменные и константы.

  • Операторы. Приоритет операторов. Операции отношения. Логические операции.

  • Тернарный оператор.

  • Оператор условного перехода.

  • Оператор множественного выбора. Опреаторы break и fallthrough.

  • Циклы с предусловием и постусловием. Цикл со счетчиком.

 

2. Строки. Коллекции. Опциональные переменные.

  • Строки и символы. Строковые литералы.

  • Специальные символы. Юникод.

  • Строка как объект. Инициализация пустой строки.

  • Работа с отдельными символами. Цикл for-in.

  • Операторы для работы со строками. Конкатенация строк.

  • Интерполяция строк. Сравнение строк.

  • Кортежи. Инициализация кортежа.

  • Опциональные переменные.

  • Массивы. Литерал массива. Операторы и функции для работы с массивами.

  • Создание и инициализация массива.

  • Словарь. Литерал словаря. Операторы и функции для работы со словарями.

  • Создание и инициализация словаря.

 

3. Элементы функционального программирования. Функции и замыкания. Параметры функций.

  • Определение и вызов функций. Параметры функций и возвращаемые значения.

  • Именование аргументов функции. Внешние имена аргументов функции.

  • Значения аргументов по умолчанию.

  • Функции с переменным числом аргументов.

  • Констнтные и переменные аргументы функции. In-Out параметры.

  • Функция как тип. Функции в качестве аргумента функции. Функция в качестве возвращаемого значения.

  • Вложенные функции.

  • Замыкания. Синтаксис создания замыкания. Автоматический вывод типов. Краткая запись лямбда-функции.

 

4. Объектно ориентированное программирование. Перечисления. Классы и структуры. Value Types и Reference Types.

  • Перечисления. Объявление перечисления. Использование перечислений в операторе множественного выбора.

  • Связные значения. Исходные значения перечисления.

  • Классы и структуры. Сходства и различия.

  • Объявления классов и структур. Создание объектов. Автоматические конструкторы.

  • Доступ к элементам структуры.

  • Различия Value Types и Reference Types. Классы как Reference Types. Структуры как Value Types.

  • Особенности типов Array и Dictionary.

 

5. Свойства и методы. Индексы.

  • Виды свойств. Хранимые и вычисляемые свойства классов.

  • Аксессоры и мутаторы для свойства классов. Наблюдатели.

  • Глобальные и локальные переменные. Свойства типов.

  • Методы. Локальные и внешние имена параметров метода. Модифицирующие методы.

  • Индексы. Параметры индекса.

 

6. Наследование. Перегрузка методов. Конструкторы и деструкторы. Процесс инициализация объекта.

  • Базовые классы и наследование.

  • Перегрузка методов, свойств и индексов.

  • Конструкторы и инициализаторы. Значения свойств по умолчанию.

  • Делегирование инициализации.

  • Номинальные и дополнительные инициализаторы.

  • Процесс инициализации объекта. Две фазы инициализации.

  • Перегрузка инциализаторов.

  • Деструкторы и деинициализаторы.

 

7. Работа с ARC. Приведение типов.

  • Что такое ARC и как оно работает.

  • Типы ссылок: strong, weak.

  • Strong Reference Cycles. Ленивая инициализация.

  • Работа с памятью в замыканиях.

  • Приведение типов. Проверка типов.

  • Специальные типы Any и AnyObject.

  • Вложенные типы.

 

8. Расширения. Протоколы. Обобщенные классы.

  • Расширения. Инициализаторы, методы и индексы в расширениях.

  • Протокол. Декларация методов.

  • Протоколы в качестве типов.

  • Паттерн Делегат.

  • Наследование протоколов. Композиция.

  • Опциональные методы протокола.

  • Обобщенные классы. Обощенные функции.

 

9. Структура проекта на Swift. Совместное использование Swift и Objective-C.

  • Структура простого проекта на Swift в Xcode.

  • Модули и импорт.

  • Переход от Objective-C к Swift. Общие типы. Селекторы.

  • Наследование от Objective-C класса.

  • Работа с Outlets и Actions.

  • Работа с библиотекой Cocoa. NSNumber, NSArray, NSDictionary.

  • Паттерны проектирования Cocoa: Delegate, Target-Action, Key-Value Observing.

  • Совместное использование Swift и C. Работа с указателями.

 

10. Экзамен.

 

и многое другое!

Алексей Ушаков

Алексей Ушаков

Опытный разработчик мобильных приложений под iOS. 

 
В начале карьеры занимался коммерческой разработкой приложений для ОС Windows и Mac OS X, затем увлекся разработкой приложений для мобильных устройств. 
 
Участвовал в проектах различного масштаба и сложности, разработке игр под iOS и Android, приложений для рынков США, Европы и России.
 
В данный момент является одним из ведущих разработчиков компании Quantron Systems.
 
"Самое важное в разработке - это понять, как соединить теорию и практику. Основной целью курса является освоение участниками практических знаний и навыков, которые позволят каждому самостоятельно развиваться в разработке приложений в дальнейшем" - говорит Алексей.

Комментарии (0):

Оставлять комментарии могут только зарегистрированные пользователи

Для получения embed кода необходимо кликнуть правой
кнопкой мыши на видео и выбрать пункт меню
'Сгенерировать HTML код'

Очно  - 17 990 рублей

Онлайн - 12 990 рублей

Забыли пароль? Регистрация