Изменения от Главреда ГитЖС | Changes of GitJS Glavred

This commit is contained in:
Главред | Glavred
2021-02-28 19:07:39 +03:00
parent 98ed8e311c
commit e16a68ee93
3 changed files with 50 additions and 6 deletions

1
0000
View File

@@ -2,4 +2,5 @@ BO iOS
0.1.0
https://git.opengamestudio.org/kornerr/BOnPOCbI-OTBETbI-iOS
/swiftui.md
/кратко.md

21
swiftui.md Normal file
View File

@@ -0,0 +1,21 @@
# SwiftUI
## Минимум
Для создания своего представления нужно объявить соответствие протокол View,
а в вычисляемом свойстве var body вернуть желаемое представление интерфейса.
## Модификаторы
Протокол View предоставляет набор модификаторов (методов протокола с реализацией
по умолчанию) для настройки вьюх приложения.
Модификаторы работают путём оборачивания экземпляра view, над которым они
вызваны, в другую вьюху с указанными характеристиками. Например, добавление
модификатора opacity(_:) к тексту вернёт новую вьюху с указанной прозрачностью.
## Список
Элементы должны удовлетворять протоколу Identifiable.

View File

@@ -43,6 +43,8 @@
часто появляющихся задач.
Существуют основные, структурные, поведенческие и пораждающие шаблоны.
Самые часто используемые в iOS: MVC, Singleton, Delegate, Observer.
## Шаблон одиночки (Singleton)
@@ -80,7 +82,6 @@
* Если счётчик 0, то объект удаляется ARC'ом.
* Слабая ссылка никак не влияет на счётчик, поэтому она никак не "удерживает" объект от удаления, на который ссылается.
* Чаще всего используется для делегатов.
* Ссылки на optional всегда слабые.
## Что такое ARC?
@@ -201,11 +202,32 @@ Ref type, capture variables
Покрывать тестами в первую очередь нужно ключевую возможность,
предоставляемую приложением, например, заказ такси в приложении заказа такси.
Методологии?
Методологии:
* TDD
* BDD
* Fakes: часто включают в себя stubs, mocks. а воообще сами по себе просто пустышки без наполнения
* Stubs: пустышки с наполнением, чтобы лишь провести тесты
* Mocks: пустышки с наполнением и внутренними счётчиками, по которым можно проверить клиента
## RunLoop
https://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/Multithreading/RunLoopManagement/RunLoopManagement.html#//apple_ref/doc/uid/10000057i-CH16
Это цикл обработки событий, используемый для планирования работы и координирования
принятия входящих событий. Целью RunLoop является поддержание потоков в работе,
когда есть работа, либо укладывание потоков спать, если работы нет.
У каждого потока есть ассоциированный с ним RunLoop.
## Functional reactive programming
Декларативная парадигма программирования, объединяющая в себе функциональное
программирование и реактивную (асинхронный потоки) парадигму. В FRP мы
описываем, что мы хотим сделать, а не как.