MENU

Fun & Interesting

Как писать библиотеки | Проектирование API, обратная совместимость | Podlodka Podcast #395

Podlodka 6,519 4 months ago
Video Not Working? Fix It Now

Понятный и удобный API – залог успеха хорошей библиотеки. Но, чтобы его спроектировать, нужно решить огромное количество проблем, связанных с выбором правильного уровня абстракции, историческим наследием, необходимостью поддерживать обратную совместимость, неоднозначностью естественного языка и, самое главное, человеческой природой. Сева Толстопятов, главный за core-библиотеки Kotlin, рассказал нам о том, как принимать решения в дизайне API, учитывая все возможные их последствия. Партнер эпизода — экосистема Контур. Это сервисы для бизнеса, на которых работает каждая третья компания России. 2000+ разработчиков развивают продукты и инфраструктурные решения на C# под .NET, Python, Java, Go. В разных проектах всегда находятся вызовы, поэтому сотрудники могут строить свой карьерный трек и перемещаться между командами, чтобы наращивать опыт и контекст. Узнать больше о технологиях в Контуре: https://t.me/+nzvP4Hx0WUIwNWQy Реклама. АО «ПФ «СКБ Контур», ИНН 6663003127, erid: 2SDnjbru3wH ❓ Хочешь обсудить выпуск или задать вопрос эксперту? Вступай в наш Telegram-чат: https://t.me/podlodka 📰 Не любишь чаты, но хочешь оставаться в курсе дел и прокачивать свой IT кругозор? Подписывайся на наш Telegram-канал: там публикуются анонсы новых выпусков, а в комментах идут ценные и горячие обсуждения! 5 тысяч опытных IT-специалистов уже с нами: https://t.me/podlodkanews Тайм-коды: 00:00 О чем выпуск 06:04 История появления и развития библиотек 13:55 Как обратная совместимость все портит 26:12 Почему дизайн API – это сложно 30:05 Проблемы с semantic versioning 33:05 Hyram's Law 42:03 Что такое – хороший API 46:16 Как все-таки сделать нормальный API 01:05:10 Как выбирать названия для сущностей 01:08:12 Принятие решений по дизайну библиотек в Kotlin 01:13:14 Выпуск бета-версий 01:15:45 Миграция на новые версии 01:18:18 Советы для разработчиков библиотек 01:23:47 Как быть с уязвимостями 01:30:47 Заключение

Comment