Podlodka Podcast

Podlodka #47 – Protocol-Oriented Programming


Listen Later

Выпуск-разоблачение парадигмы protocol-oriented programming. Андрей Мишанин, инженер из Facebook, рассказывает, как Apple популяризовала гораздо более старую концепцию обобщенного программирования под не самым удачным новым именем. Много экскурсов в историю с разбором процедурного и объектно-ориентированного программирования, практических примеров работы с POP, сравнения Swift и C++ и обсуждений полиморфизма. Ну и, конечно, очень глубоко закопали наследование.
Поддержи лучший подкаст про мобильную разработку:
www.patreon.com/podlodka
Также ждем вас, ваши лайки, репосты и комменты в мессенджерах и соцсетях!
Telegram-чат: https://t.me/podlodka
Telegram-канал: https://t.me/podlodkanews
Страница в Facebook: www.facebook.com/podlodkacast/
Twitter-аккаунт: https://twitter.com/PodlodkaPodcast
Содержание:
- 00:00:40 - Знакомство с гостем
- 00:01:47 - Актуальность темы
- 00:03:08 - Процедурное программирование
- 00:07:30 - Объектно-ориентированное программирование
- 00:11:55 - Схожесть функционального и объектно-ориентированного программирования
- 00:14:38 - Полиморфизм
- 00:20:40 - Принцип единственной ответственности
- 00:28:46 - Наследование
- 00:35:50 - Недостатки ООП
- 00:50:00 - Откуда пошел Protocol-Oriented Programming
- 00:57:20 - Swift vs C++
- 01:02:00 - Суть обобщенного программирования
- 01:08:00 - Zero-cost abstraction
- 01:14:02 - Протоколы в Swift
- 01:19:20 - Protocol extensions
- 01:25:25 - Разбираемся с обобщенным программированием
- 01:41:15 - Парсинг JSON
- 02:04:15 - Книги и статьи по теме
- 02:08:50 - Подведение черты
Полезные ссылки:
- Сессия про Protocol-Oriented Programming на WWDC
https://developer.apple.com/videos/play/wwdc2015/408/
- Comparing POP to OOP
https://forums.swift.org/t/comparing-pop-to-oop/1438/12
- swift-users Digest, Vol 3, Issue 15
https://forums.swift.org/t/swift-users-digest-vol-3-issue-15/1442
- Better Code: Runtime Polymorphism
https://www.youtube.com/watch?v=QGcVXgEVMJg
- An Extended Comparative Study of Language Support for Generic Programming
http://www.osl.iu.edu/publications/prints/2005/garcia05:_extended_comparing05.pdf
- Stepanov Interview
http://stlport.org/resources/StepanovUSA.html
- Lazy MapReduce
https://godbolt.org/g/iCRhES
- Sorting Nibbles in Swift
https://airspeedvelocity.net/2015/03/08/sorting-nibbles-in-swift/comment-page-1/
- From Mathematics to Generic Programming
http://www.informit.com/store/from-mathematics-to-generic-programming-9780321942043
- Elements of Programming
https://www.amazon.com/Elements-Programming-Alexander-Stepanov/dp/032163537X
- C++ Templates - The Complete Guide
https://www.amazon.co.uk/Templates-Complete-Guide-David-Vandevoorde/dp/0321714121/ref=sr_1_1?ie=UTF8&qid=1518904677&sr=8-1&keywords=C%2B%2B+Templates+-+The+Complete+Guide
- Advanced Swift
https://www.objc.io/books/advanced-swift/
- Optimizing Collections
https://www.objc.io/books/optimizing-collections/
...more
View all episodesView all episodes
Download on the App Store

Podlodka PodcastBy Егор Толстой, Стас Цыганов, Екатерина Петрова и Евгений Кателла

  • 4.4
  • 4.4
  • 4.4
  • 4.4
  • 4.4

4.4

45 ratings


More shows like Podlodka Podcast

View all
BeardyCast: гаджеты и медиакультура by 🧢 Kepka Production

BeardyCast: гаджеты и медиакультура

122 Listeners

Отвратительные мужики by Disgusting Men

Отвратительные мужики

77 Listeners

Не занесли by Максим Иванов, Павел Пивоваров, Артемий Леонов

Не занесли

57 Listeners

Завтракаст (Zavtracast) by Завтракаст (Zavtracast)

Завтракаст (Zavtracast)

121 Listeners

Что случилось by Медуза / Meduza

Что случилось

361 Listeners

КритМышь by Александр Головин

КритМышь

42 Listeners

kuji podcast by kuji podcast

kuji podcast

131 Listeners

Пробоина by Proboina

Пробоина

1 Listeners

Запуск завтра by libo/libo

Запуск завтра

89 Listeners

Экономика на слух by РЭШ

Экономика на слух

10 Listeners

План Б by Т—Ж

План Б

17 Listeners

Почему мы еще живы by libo/libo

Почему мы еще живы

116 Listeners

Прием by Т—Ж

Прием

6 Listeners

Горящий бензовоз by Вадим Елистратов, Иван Талачев

Горящий бензовоз

31 Listeners

Бреслав и Ложечкин by Александр Ложечкин, Андрей Бреслав

Бреслав и Ложечкин

5 Listeners

На каком основании by libo/libo

На каком основании

21 Listeners