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

Резултати

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

Търсене: #maxmudova

当前筛选 #maxmudova清除筛选
DiplomatKa

@Diplomatika · Post #106 · 06.11.2020 г., 08:25

#FERUZA#MAXMUDOVA🇺🇿 ISROIL PREZIDENTIGA ISHONCH YORLIQLARINI TOPSHIRDI🇮🇱. 5-noyabr O'zbekiston Respublikasining Favqulodda va muxtor elchisi Feruza Maxmudova Isroil Davlati Prezidenti Reuven Rivlinga ishonch yorliqlarini topshirdi. Uchrashuvda Isroil rahbari O'zbekiston bilan do'stona aloqalar muhimligini ta'kidladi. 👆Feruza Yo'ldoshevna Maxmudova - bu O'zbekistonda hozirgi paytda yagona elchi ayol! 🔅Elchi sifatida uning asosiy vazifalaridan biri bu ikki mamlakat o'rtasida turizmni rivojlantirishdir. Bizga obuna bo'ling 👉@Diplomatika

DiplomatKa

@Diplomatika · Post #296 · 19.04.2021 г., 15:27

🥳Tug'ilgan kuningiz bilan, hurmatli #Feruza#Yo'ldoshevna #Maxmudova, O'zbekistonning Isroildagi elchisi! Xizmatingizda davomiy muvaffaqiyatlar tilaymiz! Feruza Yo'ldoshevna - O'zbekistondagi ayollar diplomatiyasining yuzidir! Bugungi kunda u tarix yaratmoqda va gender stereotiplarini o'zgartirmoqda. Feruza Yo'ldoshevna JIDU bitiruvchisi, shuningdek Germaniyaning Tyubin Universitetining gumanitar fanlar magistridir. U o'z karyerasini O'zbekiston Tashqi ishlar vazirligining markaziy apparatida boshladi, u yerda o'zining strategik qobiliyatini, rahbar va mohir diplomatning eng yaxshi fazilatlarini yorqin namoyon etdi. 💙 Feruza Yuldashevna - minglab o'zbek ayollari uchun ilhom manbai va tenglik davri timsolidir! Bizga obuna bo'ling 👉@Diplomatika __________ 🥳 С днём рождения, уважаемая #Феруза#Юлдашевна#Махмудова, посол Узбекистана в Израиле! Желаем Вам дальнейших успехов на поприще служения! Феруза Юлдашевна - является лицом женской дипломатии Узбекистана! Сегодня, она творит историю и меняет гендерные стереотипы. Феруза Юлдашевна выпускница УМЭД и также мастер гуманитарных наук Тюбинского университета, Германия. Свою карьеру начала в центральном аппарате МИДа Узбекистана, где блестяще продемонстрировала талант стратега, лучшие качества лидера и искусного дипломата. 💙 Феруза Юлдашевна вдохновение для тысячи узбекистанок и олицетворение эпохи равенства! Подписывайтесь на нас 👉@Diplomatika

Libertà è ragione

@libertaeragione · Post #3878 · 10.07.2023 г., 17:21

#Elezioni#Uzbekistan#Presidenziali Risultati definitivi: Affluenza: 79,8% Shavkat #Mirziyoyev (supp. #OʻzLiDeP-#OʻzMTDP)|Centro radicale autoritario|Destra: 87,05% Robaxon #Maxmudova (#ASDP|Centro-sinistra): 4,43% Ulugbek #Inoyatov (#XDP|Centro-sinistra): 4,02% Abdushukur #Xamzayev (#O'zEP|Sinistra verde libertaria): 3,74% Voti nulli: 0,76% Shavkat #Mirziyoyev rieletto Presidente dell'Uzbekistan per la terza volta consecutiva. @OsservatorioEsteri