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 подобни публикации

Търсене: #tselemti

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

@addisstandardeng · Post #21101 · 17.01.2026 г., 05:33

#Ethiopia: #Tigray Interim Administration rejects Tselemti return model, reaffirms commitment to IDPs and territorial claims President of the Tigray Interim Administration, Lt. Gen. Tadesse Werede, has rejected the approach used to facilitate the return of internally displaced persons (#IDPs) to #Tselemti, describing it as counterproductive and warning that it should not be replicated elsewhere. Speaking in Shire Endaselasie during celebrations marking the Feast of the Trinity, Lt. Gen. Tadesse said the experience in Tselemti had become “a conspiracy that is causing Tigray to lose,” according to local media reports. He stressed that, even in the name of peace, the administration would not abandon efforts to ensure the return of displaced persons or relinquish what it considers Tigray’s territorial claims. In December 2025, Addis Standard reported that IDPs returning to the war-affected districts of Tselemti, Laelay Tselemti, and Mai Tsebri in .... Read more: https://addisstandard.com/?p=54613

Addis Standard

@addisstandardeng · Post #21322 · 05.02.2026 г., 14:40

News: “#Ethiopia inches ever closer to war” – The Economist Ethiopia is edging closer to another devastating conflict as renewed tensions in the #Tigray region raise fears of a wider regional conflagration, The Economist magazine reported in its this week edition. A TPLF official cited by the magazine said the Ethiopian National Defense Force was “mobilising in full force,” warning that another war could be catastrophic if political restraint fails. Tensions spiked again when TPLF-linked forces crossed the #Tekeze River into #Tselemti last week. While officials said the move was intended to protest the treatment of returning civilians, some analysts cited by The Economist believe it may also have been aimed at testing federal defenses... The African Union publicly offered to mediate on 30 January, but Ethiopia privately rejected the proposal, telling the #AU to refrain from intervening in its internal affairs, according to sources cited by The Economist. Read more: https://addisstandard.com/?p=55035

Addis Standard

@addisstandardeng · Post #21270 · 01.02.2026 г., 15:14

#Ethiopia: Interim President says dialogue under #Pretoria Agreement remains possible as #Tigray forces withdraw from Tselemti Tigray advanced forces have withdrawn from #Tselemti in what the Tigray Interim Administration described as a confidence-building measure aimed at demonstrating readiness for dialogue and a peaceful resolution to the current tensions, Interim President Lt. General #Tadesse said. “Our withdrawal shows clearly that we have no desire to return to war,” General Tadesse said, adding that “there is no question that can be answered by war, but by peace and negotiation.” Speaking on Saturday to Tigrai Television, he stressed that the situation does not have to escalate into full-scale conflict, emphasizing that dialogue remains both possible and preferable. The Interim President said Tigray’s core demands remain unchanged, centering on the return of internally displaced persons (#IDPs) and the restoration ..... Read more: https://addisstandard.com/?p=54888