КулЛиб электронная библиотека
Всего книг - 613970 томов
Объем библиотеки - 949 Гб.
Всего авторов - 242610
Пользователей - 112700

Впечатления

Дед Марго про Распопов: Время собирать камни (СИ) (Альтернативная история)

Все чудесятее и чудесятее. Чем дальше, тем поселягинестее - примитивнее и завлекательнее

Рейтинг: 0 ( 0 за, 0 против).
DXBCKT про Тумановский: Прививка от жадности (Альтернативная история)

Неплохой рассказ (прослушанный мной в формате аудио) стоит слушать, только из-за одной фразы «...ради глупых суеверий, такими артефактими не расбрасываются»)) Между тем главный герой «походу пьесы», только и делает — что прицельно швыряется (наглухо забитыми) контейнерами для артефактов в кровососа))

Начало рассказа (мне) сразу напомнило ситуацию «с Филином и бронезавром», в начале «Самшитового города» (Зайцева). С одной стороны —

подробнее ...

Рейтинг: +1 ( 1 за, 0 против).
DXBCKT про Савелов: Шанс (Альтернативная история)

Начало части четвертой очень напомнило книгу О.Здрава (Мыслина) «Колхоз дело добровольное». На этот раз — нашему герою престоит пройти очень «трудный квест», в новой «локации» именуемой «колхоз унд картошка»)) Несмотря на мою кажущуюся иронию — данный этап никак нельзя назвать легким, ибо (это как раз) один из тех моментов «где все познается в сравнении».

В общем — наш ГГ (практически в условиях «Дикого поля»), проходит очередную

подробнее ...

Рейтинг: +1 ( 1 за, 0 против).
Владимир Магедов про Живой: Коловрат: Знамение. Вторжение. Судьба (Альтернативная история)

Могу рассказать то, что легко развеет Ваше удивление. Мне 84 года и я интересуюсь историей своего семейства. В архиве МГА (у метро Калужская) я отыскал личное дело студента Тимирязевки, который является моим родным дедом и учился там с середины Первой Мировой войны. В начале папки с делом имеется два документа, дающие ответ на Ваше удивление.
В Аттестате об образовании сказано «дан сей сыну урядника ...... православного вероисповедования,

подробнее ...

Рейтинг: 0 ( 1 за, 1 против).
mmishk про Зигмунд: Пиромант звучит гордо. Том 1 и Том 2 (СИ) (Фэнтези: прочее)

ЕГЭшники отакуют!!!

Рейтинг: 0 ( 1 за, 1 против).
чтун про Ракитянский: Кровавый след. Зарождение и становление украинского национализма (Публицистика)

Один... Ну, хоть бы один европоориентированный толерантно настроенный человек сказал: несчастные русские! Вас гнобят изнутри и снаружи - дай бог нам всем сил пережить это время. Но нет! Ты - не ты если не метнёшь в русскую сторону фекальку! Это же в тренде! Это будет не цивилизованно просто поморщиться на очередную кучку: нужно взять её в руки и метнуть в ту сторону, откуда она, по убеждению взявшего в руки кучку, появилась. А то, что она

подробнее ...

Рейтинг: 0 ( 1 за, 1 против).
desertrat про Живой: Коловрат: Знамение. Вторжение. Судьба (Альтернативная история)

Всегда удивляло откуда на седьмом десятке лет советской власти у авторов берутся потомственные казаки, если их всех или растреляли красные в 20-х или выморили голодом в 30-х или убили в рядах вермахта в 40-х? Приказом по гарнизону назначали или партия призывала комсомольцев в потомственные казаки?

Рейтинг: -1 ( 1 за, 2 против).

Типизированный Python для профессиональной разработки [Алексей Голобурдин] (pdf) читать постранично

Книга в формате pdf! Изображения и текст могут не отображаться!


Настройки текста:




RESCUER

Типизированный Python для
профессиональной разработки
Алексей Голобурдин,
команда Диджитализируй!
обложка — Васильев Никита, nikita.vasiliev@math.msu.ru
Цель этой книги — помочь тебе научиться писать более красивые, надёжные и легко
сопровождаемые программы на Python. То, о чём мы здесь будем говорить, это не
начальный уровень владения языком, предполагается, что ты уже минимально
умеешь программировать, но хочешь научиться делать это лучше.
И это — отличная цель, к которой мы вместе будем двигаться на протяжении
ближайших часов!
Этот материал есть также в видео формате на моём YouTube — «Диджитализируй!».
Также обращаю внимание, что на момент написания этих строк готовится
перезапуск моего авторского курса «Основы компьютерных и веб-технологий на
Python» course01.to.digital, запуск планируется в июне 2022, если ты читаешь этот
материал позже, то вполне вероятно, что на курс уже снова можно записаться.
Итак!
Часто в учебниках и курсах по Python не уделяют должного внимания типизации и
некоторым структурам, в то время как они очень важны и могут значительно, просто
драматически улучшить твой код.
В ревью кода начинающих разработчиков часто видны результаты того, что в
учебных материалах не уделяется отдельное внимание вопросам типизации. В коде
не используются подсказки типов, используются неправильно, не лучшим образом
выбираются типы для разных данных в приложении и так далее. Качество
программы и её надёжность страдают — а это гораздо более важные параметры,
чем многие поначалу думают. Поначалу кажется, что я написал программу, она в
моих идеальных условиях работает и этого достаточно. Но нет, этого недостаточно.
Наличие функциональности это одно, а надёжность этой функциональности и
качество реализации этой функциональности это совсем другое. Наличие
функциональности это когда вы видите обувь и думаете — о, отлично, можно её

надеть и пойти в ней куда-то. А надёжность и качество реализации этой
функциональности это про то, что у вас не треснет подошва где-то на улице, в обувь
не будет попадать вода, обувь не будет натирать вам ноги, она не потеряет быстро
приличный вид, а также это про то, что обувь легка в эксплуатации, её можно легко
протереть, её можно ремонтировать и многое другое.
То, что мы написали программу и она имеет функциональность — это вовсе не
означает, что программа действительно хороша. В этой небольшой книге мы
поговорим о том, как разрабатывать, думая не только о функциональности, но и о
качестве и надёжности её реализации.
Мы поговорим о типизации в Python, поговорим о нескольких структурах и
встроенных типах:
NamedTuple,
dataclass,
TypedDict,
Enum,
Literal,
Union, Optional,
Iterable, Sequence,
Callable,
TypeVar и др.

Напишем приложение погоды, используя эти типы и поясняя по ходу некоторые
архитектурные моменты выбора того или иного подхода. Смотри видео версию этой
книги на YouTube и читай обязательно до конца.
Обещаю, что после проработки этого материала твой код больше никогда не будет
прежним. Буквально — драматическое улучшение кода гарантировано. Как пишут в
англоязычных книжках, dramatic improvement!
Поднимаемые вопросы актуальны, кстати, не только для Python, говорить мы будем
о нём, но аналогичные подходы применимы и к PHP, TypeScript и тд. Подходы к
написанию качественного ПО схожи для разных языков программирования,
выступающих просто инструментом реализации задумок автора кода.
Говорить мы здесь будем о версии Python 3.10. В предыдущих версиях Python
некоторые аспекты работают чуть иначе (нужно импортировать некоторые типы из
typing, например), но это не столь критично.

Опчки! Время подписаться!
YouTube / Telegram / VK

Начать нужно с разговора о самой типизации и о том, почему этому нужно уделять
тщательное внимание. Итак, подсказки типов Python или, что то же самое, type
hinting.

Type hinting
Что делает любая программа? Оперирует данными, то есть какие-то данные
принимает на вход, какие-то данные отдаёт на выход, а внутри данные как-то
трансформирует, обрабатывает и передаёт в разные функции, классы, модули и так
далее. И весь вопрос в том, в каком виде и формате программа внутри себя эти
данные передаёт! То есть — какие типы данных для этого используются. Часто одни
и те же данные можно передавать внутри приложения строкой, списком, кортежем,
словарём и массой других способов.
Как все мы знаем, Python это язык с динамической типизацией. Что означает
динамическая типизация? Что тип переменной определяется не в момент создания
переменной, а в момент присваивания значения этой переменной. Мы можем
сохранить в переменную строку, потом число, потом список, и это будет работать.
Фактически интерпретатор Python сам выводит типы данных и мы их нигде их не
указываем, вообще не думаем об этом — просто используем то, что нам нужно в
текущий момент.

user = "Пётр"
user