Skip to content

Instantly share code, notes, and snippets.

View gist:d85aed5ff2fb9ee540bff694337df9f0
func lengthEncoding(str: String){
let chrArr = Array(str)
var count = 0
var previous : Character = chrArr[0]
var finalString = ""
for (_, item) in chrArr.enumerated() {
if previous == item{
count += 1
View gist:892e50674bbac6c513161b3f0b3f529e
To Do:
// TODO: 5.5 a.terekhov Сократить
// swiftlint:disable file_length
InvestmoneyboxSettingsPresenter
// TODO: 5.6 a.terekhov объединить код загрузки аккаунта и активации опции в сервис с кодом из InvestmoneyboxApplicationCoordinator
InvestmoneyboxRoundingFlowCoordinator
// TODO: 5.6 a.terekhov сделать без .xib
View gist:9fdf959aeb61a43fcd149b7f57e417f8
http://chris.eidhof.nl/post/references/
https://medium.com/@sergeysmagleev/how-to-implement-your-own-optional-chaining-in-swift-6cf32e902c3c
https://medium.com/@vhart/protocols-generics-and-existential-containers-wait-what-e2e698262ab1
https://medium.com/@vhart/self-sizing-tableview-cells-a165086d8631
https://medium.com/@dogwith1eye/exploring-existential-types-with-swift-c86142d7bd1c
https://dl.acm.org/doi/pdf/10.1145/3360590
https://medium.com/@keonyonglee/personal-notes-from-introduction-to-linear-algebra-by-gilbert-strang-chapter-1-6ac46456c8d6
http://bytepace.com/blog/pop2
View gist:6c0da7b5bd54761e4d0f7ca788ab4009
https://tommaso.pavese.me/2016/06/05/a-rack-application-from-scratch-part-1-introducting-rack/
http://howivim.com/2016/gabriel-berke-williams/
https://blog.appsignal.com/2017/01/24/ruby-magic-building-a-ruby-http-server-part-2-running-a-rails-app.html
https://gabebw.com/blog/2015/10/24/how-to-learn-a-new-programming-language
https://gabebw.com/blog/2015/08/10/advanced-rack
https://medium.com/from-the-scratch/http-server-what-do-you-need-to-know-to-build-a-simple-http-server-from-scratch-d1ef8945e4fa
https://getgood.at/in-a-day/crystal
https://getgood.at/build-your-own/sinatra
https://ruslanspivak.com/lsbaws-part1/
https://ruslanspivak.com
View cool links
View View
import PhoneNumberKit
import Resources
import SkyFloatingLabelTextField
import TKFoundation
import UIComponents
public final class GetMoneyView: UIView, HUDView {
private struct Appereance: Grid {
let textFieldHeight = 54
let buttonHeight = 50
View Grid
import UIKit
/// Протокол определяющий сетку по которой верстаются визуальный компоненты
/// Опередление кастомных размеров в Appearance допускается только в исключительных случаях
///
/// Пример:
/// extension MyModuleView {
/// struct Appearance: Grid { }
/// }
///
View prospal
import UIKit
import PlaygroundSupport
let view = UIView(frame: CGRect(x: 0, y: 0, width: 500, height: 500))
view.backgroundColor = #colorLiteral(red: 0.909803926944733, green: 0.47843137383461, blue: 0.643137276172638, alpha: 1.0)
PlaygroundPage.current.liveView = view
public class DecoratedButton: UIButton {
View gist:633154f1133e4f09c480e317560a6264
import UIKit
import PlaygroundSupport
public class DecoratedButton: UIButton {
var radius: CGFloat = 50 {
didSet {
self.setupDecoratedLayers()
}
}