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

Резултати

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

Търсене: #alexpretti

当前筛选 #alexpretti清除筛选
Papa & Vaticano - News

@papaevaticanonews · Post #9141 · 26.01.2026 г., 10:08

“Il mio cuore si spezza per la famiglia e gli amici che piangono la perdita di Alex e che senza dubbio sperimenteranno un dolore acuto a causa della sua morte”. Lo scrive padre Daniel Griffith, parroco e rettore della Basilica di Saint Mary a #Minneapolis sulla morte di #AlexPretti, infermiere di 37 anni ucciso sabato scorso da agenti della Border Patrol durante le proteste contro le operazioni dell’#Ice. È la terza sparatoria da parte di agenti federali in tre settimane nella città del #Minnesota, dopo l’uccisione di Renee Good il 7 gennaio. “La comunità delle Twin Cities sta vivendo un dolore e un trauma indescrivibili in questi giorni – scrive p. Griffith –. Questo continua ad essere un tempo di paura e angoscia, anche per i nostri fratelli e sorelle immigrati, molti dei quali restano a casa, comprensibilmente assenti dal lavoro, dalla scuola e dalla chiesa”. Ma, aggiunge il sacerdote, “nel mezzo della sofferenza e dello sgomento, i cittadini del Minnesota si stanno anche riunendo per parlare, per piangere e per pregare. La luce brilla nelle tenebre”. La messa di ieri sera alla Basilica è stata offerta per Alex Pretti, la sua famiglia e l’intera comunità.​​​​​​​​​​​​​​​​ Sulla vicenda è intervenuto anche mons. Paul S. Coakley, arcivescovo di Oklahoma City e presidente della Conferenza Episcopale Statunitense (Usccb), che in una nota diffusa in queste ore afferma: "Chiedo con insistenza, nella preghiera, calma, moderazione e rispetto per la vita umana a Minneapolis e in tutti quei luoghi dove la pace è minacciata”. “Leone XIV ci ricorda che ‘il Vangelo va annunciato e vissuto in ogni circostanza e in ogni ambiente, perché sia lievito di fraternità e di pace tra le persone, tra le culture, le religioni e i popoli'”, scrive il presule, sottolineando che “le autorità pubbliche hanno una responsabilità particolare nel salvaguardare il benessere delle persone al servizio del bene comune”. L’Arcivescovo esorta la nazione a “ritrovarsi nel dialogo, allontanandosi dalla retorica disumanizzante e dagli atti che minacciano la vita umana. In questo spirito, in unione con Papa Leone, è importante proclamare: ‘La pace si costruisce sul rispetto delle persone!'”.