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

Резултати

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

Търсене: #trevel

当前筛选 #trevel清除筛选

Бутик -отель "Дом Манучехри" – не просто отель, а шедевр архитектуры и культуры, предлагающий гостям уникальную атмосферу востока. Отель Манучехри – идеальное место для любителей искусства. На втором этаже находится художественная галерея, цель которой – продемонстрировать творчество молодых художников, вносящих в свой вклад в культуру Ирана. Гостеприимный и профессиональный персонал гостиницы сделает ваше пребывание в отеле максимально комфортным. Добро пожаловать в Кашан 😁 #Кашан#Iran#Persian#trevel https://t.me/likeinIran2

🔒400 летняя мастерская Чалештерская замочная мастерская — это ручное ремесло из провинции Чахармахал и Бахтиари с историей более 400 лет. Мастерская открылась ещё в эпоху Сефевидов. В этой мастерской передают искусство изготовления замков из 17 деталей. Самый маленький замок изготовлен в этой мастерской, весит менее двух граммов и хранится в музее Имама Резы, а самый большой замок весом в 600 кг. установлен на въезде в город Чалештер. Изготовление чалештерских замков занимает от 2 до 4 дней. #Нозари#Ирангид#Иран#Iran#trevel#ИрантурИран - тонкости туризма

🚗Чуток тегеранского трафика вам в ленту #Нозари#Иран#Тегеран#Tehran#iran#trevel#Ирангид Иран - тонкости туризма

🦢Русские лебеди в Иране С территории России птицы массово мигрируют на юг, чтобы провести там зиму. Птицы начинают покидать родные места в конце сентября, а остальные продолжат подтягиваться ещё примерно на протяжении месяца. В конце сентябре начнут улетать по большей части водоплавающие - утки и гуси. Помимо гусей, лебедей и уток, российские регионы на зиму покидают и многие другие виды птиц, их несколько сотен. Это жаворонки, белые аисты, дрозды, ласточки и прочие. Причем география их путешествий на период холодов весьма обширна: среди распространенных мест зимовки страны Африки, Иран, Индия. Например, главные места зимовки серых журавлей из Западной Сибири находятся в Иране. В Иране есть остров Ашураде (Ашур-Ада), это единственный остров Ирана в Каспийском море. Остров Ашураде рай для любителей понаблюдать за птицами. Крошечный остров и окружающие его водно - болотные угодья обеспечивают богатую экологическую гавань для многочисленных перелетных птиц. По оценкам специалистов, в середине зимы численность птиц на острове превышает миллион. География перелетов сибирских птиц широка. Нам остается только позавидовать 😉 #Иранотдых#Иран#Нозари#Иранприрода#Iran#trevel фото источник Иран— тонкости туризма

Рынок - душа города И снова в кадре город Решт. Иранцы его называют Рашт, через А. Население города немногим более 620 000 жителей. Расположен город на равнине к югу от Каспийского моря. Решт называют «городом дождей» из-за частых и обильных осадков, хотя они, как правило, легкие и тёплые. А ещё в городе большой рынок. На рынке можно почувствовать «душу города», я сейчас серьёзно именно душу. Поскольку это место, где переплетаются культура, история и повседневная жизнь людей, а также это центр местной торговли и кулинарных особенностей. Атмосфера рынка позволяет почувствовать ритм города, почувствовать его энергетически. #Нозари#Иран#Iran#trevel#Rasht#رشت‎ Иран - тонкости туризма

Один из ярких примеров «второй жизни» после реставрации демонстрирует бутик - отель Дом Манучехри в городе Кашан. Отель Манучехри – идеальное место для любителей искусства. На втором этаже находится художественная галерея, цель которой – продемонстрировать творчество молодых художников, вносящих в свой вклад в культуру Ирана. Ещё в отеле для постояльцев есть кинотеатр. Уютные и интересные общественные пространства. Милые сады и аутентичные витражи пропускающие лучи солнца в ваш номер. А гостеприимный и профессиональный персонал гостиницы сделает ваше пребывание в отеле максимально комфортным. Отель популярный, как говорят нынче инстаграмный, и это делает его не дешёвым. Но оно того стоит. #Нозари#Кашан#Iran#Persian#trevel#کاشان‎ Иран - тонкости туризма