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

Резултати

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

Търсене: #saarc

当前筛选 #saarc清除筛选
Russian Mission to ASEAN

@aseanrussia · Post #1653 · 30.05.2025 г., 06:47

🎙 Foreign Minister Sergey Lavrov’s remarks at the meeting with delegation of the Permanent Committee of the International Conference of Asian Political Parties (Perm, May 29, 2025) 💬 Sergey Lavrov: Dear colleagues, dear friends, This is the year when the International Conference of Asian Political Parties commemorates its 25th anniversary. And because of their reputation and their authority, they are a platform for exchanging views and experience in the context of party-to-party cooperation. Cooperation at this level is one of our priorities. It's a very useful addition to the so-called classical diplomacy and that contributes a lot to promoting mutual trust, mutual understanding between peoples. The creation of the conference is a signal, a very clear signal to the entire world. And very timely response to reconsider the place of the Asian countries in international and global developments. We assess very positively the increase of the political work of your conference. And we see with pleasure the sustainable process of expanding your influence in the continental architecture, in the architecture of regional organizations, some of which are experiencing erosion of their influence, if not degradation, since they abandoned practically all of the key principles of the UN Charter. I have in mind such organizations on our Eurasian continent as the European Union, which became more Euro-Atlantic than Eurasian following NATO. <...> In the last 10-15 years, all these principles including equal and indivisible security, including the statement that no one, be it the country or organization, should prepare to dominate in Europe, all this was abandoned, violated. 🌐 We need Eurasia of course. And by the way, Eurasia is the biggest, the richest continent. The continent which, unlike Africa and Latin America, is home of several world civilizations with thousands and thousands of years of history. <...> #Eurasia is the only continent which doesn't have any universal continental structure, like African Union in Africa, like CELAC in Latin America. We have quite a lot, many integrational movements, organizations which address security issues, like Shanghai Cooperation Organization, #ASEAN, Collective Security Treaty Organization (#CSTO), Commonwealth of Independent States (#CIS) and the Gulf Cooperation Council (#GCC), the South Asian Association for Regional Cooperation (#SAARC) and there is no umbrella. We are very much in favor of promoting party-to-party dialogue. Our ruling party, United Russia, in cooperation with other parliamentary parties and their fractions is promoting very actively this kind of cooperation. And I will highlight the initiative of United Russia of last year, when they convened a meeting of various parties to consider methods of fighting the new forms of colonialism and neo-colonialism. <...> A movement created on the basis of the conference, which is called "Freedom of Nations". ☝️ The inadmissibility of neo-colonial forms of exploitation is one of the agenda items of the Group of Friends of the UN Charter. Last year, we initiated, through this group, the resolution of the UN Committee on Decolonization. The draft resolution supported by this committee was accepted by the UN General Assembly. <..> A clear majority supported it. The idea is to announce the 14th of December, the day of the adoption of The Declaration on the Granting of Independence to Colonial Countries and Peoples of 1960, as a date of fighting the new forms of neo-colonialism. Сolonial exploitation was very blunt. Slaves, you know, digging the resources and leaving the countries in very poor condition. If you take the economic system in the world, countries, especially in Africa, mostly produce, they provide natural resources to the western countries We would like to promote the movement to resolve this injustice. Without fighting any country, we never want to isolate any country from cooperation, but cooperation must be based on equal footing, just principles. 🤝 We express our readiness to cooperate with your conference.

🎙 Foreign Minister Sergey Lavrov’s remarks at the meeting with delegation of the Permanent Committee of the International Conference of Asian Political Parties (Perm, May 29, 2025) 💬 Sergey Lavrov: Dear colleagues, dear friends, This is the year when the International Conference of Asian Political Parties commemorates its 25th anniversary. And because of their reputation and their authority, they are a platform for exchanging views and experience in the context of party-to-party cooperation. Cooperation at this level is one of our priorities. It's a very useful addition to the so-called classical diplomacy and that contributes a lot to promoting mutual trust, mutual understanding between peoples. The creation of the conference is a signal, a very clear signal to the entire world. And very timely response to reconsider the place of the Asian countries in international and global developments. We assess very positively the increase of the political work of your conference. And we see with pleasure the sustainable process of expanding your influence in the continental architecture, in the architecture of regional organizations, some of which are experiencing erosion of their influence, if not degradation, since they abandoned practically all of the key principles of the UN Charter. I have in mind such organizations on our Eurasian continent as the European Union, which became more Euro-Atlantic than Eurasian following NATO. <...> In the last 10-15 years, all these principles including equal and indivisible security, including the statement that no one, be it the country or organization, should prepare to dominate in Europe, all this was abandoned, violated. 🌐 We need Eurasia of course. And by the way, Eurasia is the biggest, the richest continent. The continent which, unlike Africa and Latin America, is home of several world civilizations with thousands and thousands of years of history. <...> #Eurasia is the only continent which doesn't have any universal continental structure, like African Union in Africa, like CELAC in Latin America. We have quite a lot, many integrational movements, organizations which address security issues, like Shanghai Cooperation Organization, #ASEAN, Collective Security Treaty Organization (#CSTO), Commonwealth of Independent States (#CIS) and the Gulf Cooperation Council (#GCC), the South Asian Association for Regional Cooperation (#SAARC) and there is no umbrella. We are very much in favor of promoting party-to-party dialogue. Our ruling party, United Russia, in cooperation with other parliamentary parties and their fractions is promoting very actively this kind of cooperation. And I will highlight the initiative of United Russia of last year, when they convened a meeting of various parties to consider methods of fighting the new forms of colonialism and neo-colonialism. <...> A movement created on the basis of the conference, which is called "Freedom of Nations". ☝️ The inadmissibility of neo-colonial forms of exploitation is one of the agenda items of the Group of Friends of the UN Charter. Last year, we initiated, through this group, the resolution of the UN Committee on Decolonization. The draft resolution supported by this committee was accepted by the UN General Assembly. <..> A clear majority supported it. The idea is to announce the 14th of December, the day of the adoption of The Declaration on the Granting of Independence to Colonial Countries and Peoples of 1960, as a date of fighting the new forms of neo-colonialism. Сolonial exploitation was very blunt. Slaves, you know, digging the resources and leaving the countries in very poor condition. If you take the economic system in the world, countries, especially in Africa, mostly produce, they provide natural resources to the western countries We would like to promote the movement to resolve this injustice. Without fighting any country, we never want to isolate any country from cooperation, but cooperation must be based on equal footing, just principles. 🤝 We express our readiness to cooperate with your conference.