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

Резултати

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

Търсене: #gadaa

当前筛选 #gadaa清除筛选
Addis Standard

@addisstandardeng · Post #21347 · 09.02.2026 г., 10:47

#Tribute: Professor Asmarom Legesse: Pioneer Scholar Who Illuminated the #Gadaa System to the World Professor Asmarom Legesse, the Eritrean-born anthropologist who redefined African democratic discourse, passed away on January 31, 2026, aged 94. In this tribute, Teferi Tafa notes the Harvard-trained scholar "spent over half a century documenting the #Oromo Gadaa system, dismantling colonial myths that dismissed indigenous #African governance as primitive." The author explains that Asmarom’s works revealed "a sophisticated constitutional order" featuring rotational leadership and term limits. He proved that Gadaa was "a highly developed system of checks and balances... that had governed Oromo society for centuries." Tafa emphasizes that Asmarom’s legacy of "intellectual decolonization" establishes him as a hero to the Oromo and a titan of global anthropology. https://addisstandard.com/?p=55081

Addis Standard

@addisstandardeng · Post #21319 · 05.02.2026 г., 12:15

#In_Memoriam: A Tribute to Professor Asmarom Legesse Asmerom Legesse (PhD), a pioneering scholar of the #Oromo Gadaa system, passed away at the age of 94. Born on 5 February 1931 in #Eritrea, he was widely respected for his rigorous and sustained studies of Oromo governance, now foundational to #African indigenous political thought. In this tribute, Ezekiel Gebissa writes that “for the Oromo people… death is not an ending but a passage from the world of binary reality to the realm of singularity.” Over nearly six decades, Asmerom reshaped African political studies by showing that #Gadaa is “not a relic of the past but a sophisticated, stable, and coherent democratic system.” Asmerom’s legacy remains the cornerstone of Oromo studies and global indigenous governance. https://addisstandard.com/?p=55020

Addis Standard

@addisstandardeng · Post #21309 · 04.02.2026 г., 14:38

News: Prominent #Oromo Gadaa scholar Asmerom Legesse passes away at 94 Asmerom Legesse (PhD), a distinguished scholar renowned for his pioneering research on the Oromo #Gadaa system, has passed away at the age of 94. Born on 5 February, 1931, in #Eritrea, Asmerom was widely recognized for his in-depth studies of Oromo traditions and governance, which have become foundational references for scholars of #African indigenous systems. In a statement, the Oromo Studies Association (#OSA) confirmed his death, expressing deep sorrow over the loss of a researcher described as a “kinsman of the Oromo people.” The association noted that Asmerom’s work on Oromo customs, history, and culture significantly advanced understanding of political and social systems across Africa. The Oromia Culture and Tourism Bureau expressed deep condolences, emphasizing that his life’s work preserved the Oromo Gadaa system and documented its practices for future generations, serving as.... Read more: https://addisstandard.com/?p=54991