1. Develop
1.1 Authentication
1.2 Database
| #import <UIKit/UIKit.h> | |
| @interface UIImage (Blur) | |
| - (UIImage *)boxBlur:(CGFloat)blurLevel depth:(NSUInteger)blurDepth; | |
| @end |
| ```swift | |
| import UIKit | |
| /* | |
| Проектируемый класс условно делится на области: | |
| 1. Свойства | |
| 2. Иницализаторы | |
| 3. Методы | |
| Правила для всех областей: |
| import UIKit | |
| import LeadKit | |
| import RxSwift | |
| import RxCocoa | |
| typealias TapTrait = Void | |
| typealias TapRelay = PublishRelay<TapTrait> | |
| typealias TapDriver = Driver<TapTrait> | |
| extension PublishRelay where Element == TapTrait { |
| public typealias Closure<Value, Result> = (Value) -> Result | |
| public typealias ValueClosure<Value> = Closure<Value, Void> | |
| public typealias ResultClosure<Result> = () -> Result | |
| public typealias VoidClosure = ResultClosure<Void> | |
| public typealias ThrowsClosure<Value, Result> = (Value) throws -> Result | |
| public typealias ThrowsValueClosure<Value> = ThrowsClosure<Value, Void> | |
| public typealias ThrowsResultClosure<Result> = () throws -> Result | |
| public typealias ThrowsVoidClosure = ThrowsResultClosure<Void> |
1. Develop
1.1 Authentication
1.2 Database
| //необходимо реализовать функцию позволяющую делать сдвиг массива | |
| //@param swift - любое целочисленное число | |
| //@param arr - любой целочисленный массив | |
| //func arrayShift(_ arr: [Int], swift: Int) -> [Int] | |
| //пример 1 | |
| //arrayShift([1,2,3,4,5], shift: 1) | |
| //result : [5,1,2,3,4] | |
| //пример 2 | |
| //arrayShift([1,2,3,4,5], shift: 2) | |
| //result : [4,5,1,2,3] |