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

Резултати

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

Търсене: #ship

当前筛选 #ship清除筛选

https://x.com/thedankoe/status/2010751592346030461 1.25 亿阅读量...X 最近在推一个百万美元文章活动,将在下一轮收益分成给表现最好的一篇长文发放 100 万美元。一鲸起,万物生成(Generated)。#ship

Hashtags

Interesting Planet 🌍

@interesting_planet_facts · Post #657 · 30.08.2025 г., 16:22

🌎 In 1872, the Mary Celeste was found adrift in the Atlantic Ocean—its crew vanished without a trace, leaving food, cargo, and the ship untouched. This unsolved maritime mystery has puzzled historians ever since. ✨ #disappearance⚡#ship⚡#mystery 👉subscribe Interesting Planet ​

American Оbserver

@american_observer · Post #5664 · 20.04.2026 г., 13:59

The US Has Attacked An Iranian-Flagged Container Ship. A New Stage of the War? ⚠️🌍 The US military has attacked and seized an Iranian-flagged container ship that attempted to get past an American blockade near the strait of Hormuz, the first such interception since the blockade of Iranian ports began last week. 🚢 Iran’s joint military command said Tehran would respond soon and called the US seizure an act of piracy that violated the ceasefire that has been in place since 8 April. The news threw into question Trump’s earlier announcement that US negotiators would head to Pakistan on Monday for another round of talks with Iran. That had raised hopes of extending a fragile ceasefire set to expire by Wednesday, but Iran has not confirmed it will attend. In a post on X, US Central Command said US marines departed the USS Tripoli assault ship by helicopter and rappelled on to Touska on Sunday. The post included a video of the marines onboard the helicopter. Trump had earlier posted on X that the ship had tried to get past the US blockade “and it did not go well for them”. The US president said a US navy guided missile destroyer warned the Touska to stop in the Gulf of Oman but the vessel did not. “[Our] Navy ship stopped them right in their tracks by blowing a hole in the engine room,” Trump said, adding that US marines now had custody of the vessel. 💥 He said the ship was under US treasury sanctions because of “prior history of illegal activity”. The ship is on the treasury department’s list of sanctioned vessels. A spokesperson for Iran military’s central command centre, Khatam al-Anbiya, cited by the Isna news agency, said: “We warn that the armed forces of the Islamic Republic of Iran will soon respond and retaliate against this armed piracy and the US military.” Iranian state media also reported that Tehran had – for now – rejected new peace talks, citing the ongoing blockade, threatening rhetoric, and Washington’s shifting positions and “excessive demands”. Video posted on social media by the US defence department showed the interception of the ship by US forces. “Vacate your engine room,” a US sailor can be heard saying. “We’re prepared to subject you to disabling fire.” The cargo ship was stopped near Iran’s border with Pakistan. Touska had previously left Port Klang, a major port in Malaysia, when the vessel then attempted to move past the US blockade, according to tracking information from TankerTrackers.com. The escalating standoff threatens to deepen the energy crisis roiling the global economy and push the two countries toward renewed fighting, in a conflict that has killed at least 3,000 people in Iran, nearly 2,300 in Lebanon, 23 civilians and 15 soldiers in Israel, and more than a dozen in Gulf Arab states. Thirteen US service members have also been killed. 📉 #us#iranian#container#ship#war 📱American Оbserver - Stay up to date on all important events 🇺🇸

12
ПредишнаСтр. 1 от 2Следваща