TGTGInsightтелеграм анализLIVE / telegram public index
← Такты, стеки, два колеса

TGINSIGHT SIMILAR POSTS

Намери подобно съдържание

Изходен канал @clockstackwheels · Post #721 · 26.12

Почему я люблю языки с сильной системой типов, проверяемой статическим анализом кода — хорошо написанная программа является своей собственной спецификацией и позволяет выражать через язык программирования законы существования предметной области. Когда-то давно я писал на ActionScript. Там была система типов, но вот десериализация JSON'ов по-умолчанию была в какой-то общий Object, к полям которого нужно было обращаться ["по_строковому_имени"]. В один момент мне потребовалось написать что-то на C#, который я совсем не знал, я стал гуглить, как десериализовать JSON, и с удивлением обнаружил кучу советов заранее объявить класс со всеми нужными полями и десериализовать в него. "Какой ужас!", — подумал я тогда, — "Это же дико неудобно! А если я не знаю полей JSON? А если их много? Отвратительный язык!" Теперь то я прекрасно понимаю, что JSON это контракт, и что правильная десериализация только такая и должна быть, и что в хорошем API в одном поле никогда не бывает данных принципиально разных типов, и так далее. Нет, если вы набиваете вечерами пет-проект или сидите бессонную ночь на хакатоне, нет ничего плохого в том, чтобы взять простой язык с динамическими типами вроде JavaScript или Python, не требующий описывать данные. Но вот в энтерпрайзе, особенно когда над одним проектом работает много людей (а бывает это очень часто) — хорошее использование системы типов убережёт разработчиков от огромного количества ошибок, будет бить их по рукам, когда они пытаются сделать что-то не то, и будет подсказывать, когда они не уверены в чём-то. С помощью статической типизации можно на уровне кода обозначить правила, по которым ведёт себя предметная область вашей программы в реальном мире. Разработчику не только будет сложно их нарушить, но он ещё и станет узнавать какие-то вещи, которые мог не знать раньше. Например, если мы делаем медицинскую CRM, и больница заводит новых пациентов только тогда, когда знает их группу крови, мы можем объявить тип "Пациент" (или, если точнее, "Карта пациента") и запретить создавать экземпляры этого типа, не передав в конструктор группу крови (которая, в свою очередь, тоже является типом, вероятнее всего ValueObject'ом). Если новый программист пришёл в проект, он, во-первых, не сможет записать в БД некорректную карту пациента. Понятно, мы не учитываем случаи, когда новый программист переделывает модели предметной области — это будет хорошо видно на кодревью. А, во-вторых, даже если ему никто не сказал, что пациенты должны быть с группой крови, он узнает это из кода. И уже будет понимать, что в тех процессах реальной жизни, которые он описывает кодом, карта пациента создаётся только при наличии группы крови. А, значит, нужно искать какой-то способ сначала эту группу крови получить, и только потом создавать карту. Программирование моделирует реальный процесс. В настоящей работе даже на языках с типами, конечно, без должного контроля можно написать что угодно. Нужна управленческая воля, компетентность руководства, понимание опасности техдолга, в идеале отдельные должности для архитекторов, опытные лиды и старшие разработчики. Но когда всё это есть, можно отсекать много проблем ещё на старте и проще погружать новичков. #dev

Hashtags

Резултати

Намерени 34 подобни публикации

Търсене: #ud

当前筛选 #ud清除筛选
Земля

@podzemlya · Post #1104 · 27.02.2024 г., 21:11

Вчера вечером собрал небольшое видео, которое давно хотел сделать. #ud

Hashtags

Земля

@podzemlya · Post #1094 · 10.01.2024 г., 20:21

Зимний Ижевск 2015 года. Очередные январские праздники, после поселка приехал в город повидать друзей. В начале года Ижевск сонный, прохожих по вечерам почти не видно. Фонари будто освещают кучи снега, аккуратно завалившего город; там, где света не хватает, все растворяется в воздушной белой мгле. Вроде и холодно, а не мерзнешь. Гуляешь по знакомому городу и, только зайдя к друзьям, чувствуешь, как на самом деле тепло в гостях. #ud

Hashtags

Земля

@podzemlya · Post #1092 · 09.01.2024 г., 22:48

Поселок Кез, Удмуртия, 7 января 2015 года. Световые столбы - это красивое природное явления которое чаще всего возникает зимой из-за сочетания влажного воздуха и морозной погоды. Повезло увидеть это, выйдя во двор своего дома после бани. #ud

Hashtags

Земля

@podzemlya · Post #1087 · 31.12.2023 г., 13:55

Январь 2020 года. деревня Дырпа, Кезский район, Удмуртия. В январском райцентре Кез может быть зимняя серость. По дороге на север пейзаж может удивительно поменяться. Все вокруг покрывается пушистым слоем снега, градиент от серого устремляется к бесконечному белому. Можно делать повороты, за которыми на просторных холмах живут разные деревни. Дома стоят посреди белоснежной пустоты, под снегом лежат непонятные конструкции, о функции которых можно только догадываться. Хороший план на новогодние каникулы. #ud

Hashtags

Земля

@podzemlya · Post #938 · 13.07.2023 г., 09:23

Летний пост про путешествие по дороге Кез — Кузьма. Расстояние около 27 км, путь занимает около получаса. Разве можно назвать это путешествием? Конечно. Пейзажи умиротворенного солнечного Предуралья, редкие машины, ощущение, что во всем мире остался ты один, лишь далекое эхо проходящих поездов где-то за лесами. Деревянные автобусные остановки, в которых тесно даже двум ожидающим; не знаю, есть ли хоть какое-то транспортное сообщение по этой дороге, но приклеенная к деревянной конструкции реклама скупки рогов лося говорит о том, что люди тут иногда появляются. Фотографии августа 2017 года. #ud

Hashtags

Земля

@podzemlya · Post #917 · 07.05.2023 г., 16:56

Село Дебесы. В детстве часто бывал здесь, потом регулярно проезжал мимо по дороге в Ижевск. Железная дорога Дебесы обошла стороной, но задолго до ее появления здесь смыкались два пути в Сибирь из Москвы и Петербурга. Называлась эта дорога Сибирский тракт, сейчас на месте встречи двух дорог находится обычный перекресток. По двум его сторонам стоят два деревянных старых здания. Грубые бревна аккуратно спрятаны и обшиты досками, углы обрамлены узорами, про наличники даже сказать нечего. Возможно эти дома не застали на себе взгляды людей, идущих или конвоируемых на восток, но их присутствие делает дух историй осязаемым. Сегодня, 7 мая, одно из зданий было уничтожено. В свой последний приезд к родителям мы побывали в Дебесах, и я сфотографировал это здание во время зимнего заката. (Второе вроде бы тоже снесут) Буднично уничтожаются крупицы историй, которые сохранились в краях, откуда я родом. В села приходят гробы погибших на войне. #ud

Hashtags

Земля

@podzemlya · Post #905 · 17.04.2023 г., 17:09

Два года назад я впервые приехал домой после долгого перерыва: с начала пандемии коронавируса не мог попасть в Россию больше полутора лет. Родной поселок Кез всегда встречает меня интересными природными явлениями, сильнейшие грозы с почти упавшими на землю облаками, непроглядные туманы, трескучие морозы, но в этот раз произошло совсем неожиданное. 17 апреля 2021 года я увидел прямо из окна своей бывшей комнаты северное сияние. Ирония заключается в том, что до этого я летал в Норвегию и побывал за полярным кругом, чтобы поймать это свечение в небе, целое путешествие через всю страну на север, но об этом возможно расскажу потом. А тут я просто вышел в свой огород, поставил камеру на забор и сделал кадр. Никуда не надо спешить и ехать, огни Авроры сами пришли прямо ко мне домой. #ud

Hashtags

Земля

@podzemlya · Post #884 · 06.04.2023 г., 19:52

Вчера разговаривал по телефону со своим папой. Он шел с работы по деревне Кузьма. В конце нашего разговора я попросил его сфотографировать деревню для меня. Он скинул мне фотографии, и случайно оказалось, что в этот момент он проходил мимо одного из самых красивых домов Кезского района, впервые я увидел и сфотографировал его в 2017 году. К сожалению, спустя 6 лет изменения оказались удручающими. #ud

Hashtags

Земля

@podzemlya · Post #471 · 20.01.2022 г., 15:16

Зимняя ночь в деревне Чепца. Кезский район, Удмуртия. Январь 2022 год #ud

Hashtags

Земля

@podzemlya · Post #455 · 10.12.2021 г., 16:23

Жители Ижевска дурачатся около колонки. Перекрёсток ул.Пастухова и ул.Революционной. Год неизвестен. #ud

Hashtags

Земля

@podzemlya · Post #454 · 07.12.2021 г., 10:00

Стихийная стена памяти Майкла Джексона в Ижевске, появилась практически сразу после его смерти в 2009 году. Просуществовала она достаточно долго, в данный момент снесена. Находилась эта скорбная стена в переулке между улицами Максима Горького и Карла Маркса, сейчас это улица Игоря Стыценко. Фотография 2012 года. #ud

Hashtags

ПредишнаСтр. 1 от 3Следваща