|
@@ -15,7 +15,14 @@ |
|
|
|
|
|
|
|
|
## Методологии разработки |
|
|
## Методологии разработки |
|
|
|
|
|
|
|
|
* Водопад / Waterfall |
|
|
|
|
|
|
|
|
* Водопад / Waterfall состоит из следующих шагов: |
|
|
|
|
|
* осуществимость / feasibility |
|
|
|
|
|
* планирование / planning |
|
|
|
|
|
* проектирование / design |
|
|
|
|
|
* создание / build |
|
|
|
|
|
* проверка / test |
|
|
|
|
|
* выпуск / production |
|
|
|
|
|
* поддержка / support |
|
|
* SCRUM |
|
|
* SCRUM |
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -81,6 +88,7 @@ |
|
|
* Automatic reference counting, автоматический подсчёт ссылок. |
|
|
* Automatic reference counting, автоматический подсчёт ссылок. |
|
|
* Расставляет в коде увеличение/уменьшение счётчика для переменных за программиста. |
|
|
* Расставляет в коде увеличение/уменьшение счётчика для переменных за программиста. |
|
|
* Не является Garbage Collector. |
|
|
* Не является Garbage Collector. |
|
|
|
|
|
* ARC не обрабатывает случаи retain cycle автоматически, как это делают GC. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Что такое optional? |
|
|
## Что такое optional? |
|
@@ -95,6 +103,24 @@ |
|
|
* Из-за этого ни один из объектов не будет освобождён первым, поэтому получаем циклическую зависимость. |
|
|
* Из-за этого ни один из объектов не будет освобождён первым, поэтому получаем циклическую зависимость. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Контроль доступа |
|
|
|
|
|
|
|
|
|
|
|
* open |
|
|
|
|
|
* открытые классы могут наследоваться и в опредляющем их модуле, и вовне |
|
|
|
|
|
* открытые члены класса можно переопределить и в определюящем их модуле, и вовне |
|
|
|
|
|
* использовать можно где угодно |
|
|
|
|
|
* public |
|
|
|
|
|
* публичные классы могут наследоваться лишь в определяющем их модуле |
|
|
|
|
|
* публичные члены класса можно переопределить лишь в определяющеим их модуле |
|
|
|
|
|
* использовать можно где угодно |
|
|
|
|
|
* internal |
|
|
|
|
|
* использовать можно лишь внутри определяющего модуля |
|
|
|
|
|
* fileprivate |
|
|
|
|
|
* использовать можно лишь внутри этого файла |
|
|
|
|
|
* private |
|
|
|
|
|
* использовать можно лишь в пределах области реализации |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Чем различаются struct и class? |
|
|
## Чем различаются struct и class? |
|
|
|
|
|
|
|
|
* struct - value type, при передаче происходит копия всей структуры |
|
|
* struct - value type, при передаче происходит копия всей структуры |
|
@@ -159,7 +185,7 @@ Ref type, capture variables |
|
|
* not running |
|
|
* not running |
|
|
* приложение не запущено |
|
|
* приложение не запущено |
|
|
* inactive |
|
|
* inactive |
|
|
* приложение выполняется на переднем плане, но не принимает ввод от пользователя |
|
|
|
|
|
|
|
|
* приложение выполняется на переднем плане, но не принимает события и ввод от пользователя |
|
|
* active |
|
|
* active |
|
|
* приложение выполняется на переднем плане и принимает ввод от пользователя |
|
|
* приложение выполняется на переднем плане и принимает ввод от пользователя |
|
|
* background |
|
|
* background |
|
|