Browse Source

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

master
Главред | Glavred 3 years ago
parent
commit
e16a68ee93
3 changed files with 46 additions and 2 deletions
  1. +1
    -0
      0000
  2. +21
    -0
      swiftui.md
  3. +24
    -2
      кратко.md

+ 1
- 0
0000 View File

@@ -2,4 +2,5 @@ BO iOS
0.1.0
https://git.opengamestudio.org/kornerr/BOnPOCbI-OTBETbI-iOS

/swiftui.md
/кратко.md

+ 21
- 0
swiftui.md View File

@@ -0,0 +1,21 @@
# SwiftUI

## Минимум

Для создания своего представления нужно объявить соответствие протокол View,
а в вычисляемом свойстве var body вернуть желаемое представление интерфейса.


## Модификаторы

Протокол View предоставляет набор модификаторов (методов протокола с реализацией
по умолчанию) для настройки вьюх приложения.

Модификаторы работают путём оборачивания экземпляра view, над которым они
вызваны, в другую вьюху с указанными характеристиками. Например, добавление
модификатора opacity(_:) к тексту вернёт новую вьюху с указанной прозрачностью.


## Список

Элементы должны удовлетворять протоколу Identifiable.

+ 24
- 2
кратко.md 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 мы
описываем, что мы хотим сделать, а не как.





Loading…
Cancel
Save