Protocol Witnesses - Brandon Williams - App Builders 2019
Protocol-oriented programming is strongly recommended in the Swift community, and Apple has given a lot of guidance on how to use it in your everyday code. However, there has not been a lot of attention on when it is not appropriate, and what to do in that case. We will explore this idea, and show that there is a completely straightforward and mechanical way to translate any protocol into a concrete datatype. Once you do this you can still write your code much like you would with protocols, but all of the complexity inherit in protocols go away. Even more amazing, a new type of composition appears that is difficult to see when dealing with only protocols. We will also demo a real life, open source library that was originally written in the protocol-oriented way, but after running into many problems with the protocols, it was rewritten entirely in this witness-oriented way. The outcome was really surprising, and really powerful.
https://twitter.com/mbrandonw
https://appbuilders.ch
Видео Protocol Witnesses - Brandon Williams - App Builders 2019 канала Swiss Mobile Developers Association
https://twitter.com/mbrandonw
https://appbuilders.ch
Видео Protocol Witnesses - Brandon Williams - App Builders 2019 канала Swiss Mobile Developers Association
Показать
Комментарии отсутствуют
Информация о видео
3 мая 2019 г. 22:16:33
00:41:43
Другие видео канала
![Object-Oriented Programming is Embarrassing: 4 Short Examples](https://i.ytimg.com/vi/IRTfhkiAqPw/default.jpg)
![Swift & Fika 2018 – Paul Hudson: How Not to Write Swift](https://i.ytimg.com/vi/x5Q6InjzoBk/default.jpg)
![I'm Chris Smalling and I'm Phil Jones. Name a more iconic duo. We'll wait](https://i.ytimg.com/vi/AnvHx4GWyvY/default.jpg)
![Top 3 Programming Languages to Learn in 2019](https://i.ytimg.com/vi/Pb3AAfz5Yjg/default.jpg)
![Swift: Actors Introduction (2022, Xcode 13) - iOS](https://i.ytimg.com/vi/5LKbL-I-CYY/default.jpg)
![From Problem to Solution - Soroush Khanlou - App Builders 2019](https://i.ytimg.com/vi/N90_q8Uzc4A/default.jpg)
![Grouping network calls like a boss - DispatchGroup](https://i.ytimg.com/vi/Juadc1NVLsg/default.jpg)
![Scrum vs Kanban - What's the Difference? + FREE CHEAT SHEET](https://i.ytimg.com/vi/rIaz-l1Kf8w/default.jpg)
![5 must have skills to become a programmer (that you didn't know)](https://i.ytimg.com/vi/3MtrUf81k6c/default.jpg)
![Top 4 Dying Programming Languages of 2019 | by Clever Programmer](https://i.ytimg.com/vi/H9Ht27r7ROk/default.jpg)
![Global Actors in Swift (2022) – iOS](https://i.ytimg.com/vi/CU_FfeTuQXs/default.jpg)
![10 Things Elegant Ladies NEVER Wear!](https://i.ytimg.com/vi/-TF0mxGZHKM/default.jpg)
![Static Property and Functions in Swift 5 (Xcode 12, 2020, iOS Development) - Swift 5 for Beginners](https://i.ytimg.com/vi/dNS9vMa1Ggc/default.jpg)
![Brandon Williams - The Boy With Same Tenacity & Assets As Gary Neville - Manchester United 2019/2020](https://i.ytimg.com/vi/IoATp43602Q/default.jpg)
![Getting Started with Swift Concurrency (Free Swift Concurrency Course)](https://i.ytimg.com/vi/U6lQustiTGE/default.jpg)
![Retroactive Modeling - Advanced Swift - Protocol Oriented Programming](https://i.ytimg.com/vi/2CMsgER7WG4/default.jpg)
![Brandon Williams - Seemingly Impossible Swift Programs](https://i.ytimg.com/vi/PXI53f2CnVw/default.jpg)
![Swift Result Builders deep dive for Swift 5.3 - Following Swift Evolution 5.3](https://i.ytimg.com/vi/LKFVcc_uC60/default.jpg)
![Ship it Safe - Guilherme Rambo - App Builders 2019](https://i.ytimg.com/vi/MIX0MReEb_M/default.jpg)
![Understanding Actors in Swift](https://i.ytimg.com/vi/I8y1fg1P-nI/default.jpg)