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

Търсене: #elbrus

当前筛选 #elbrus清除筛选
Beyond Moscow

@beyondmoscow · Post #2096 · 11.12.2025 г., 10:15

The ski season at #Elbrus has opened in spectacular fashion. Let’s recall that this is the highest-altitude ski resort in Russia, featuring the highest cable car in the country — Mir–Gara-Bashi, which lifts visitors up to 3,847 m. Climbers accustomed to reaching such heights on foot will appreciate it — though they will still choose to go on foot 🙌🏻 Elbrus offers a magnificent opportunity to ski non-stop from the top station at 3,847 m all the way to the foot of the mountain. Two ski areas are already open: 1. Krugozor–Mir — 3,000–3,500 m 2. Mir–Gara-Bashi — 3,500–3,847 m —> The Azau–Krugozor section (2,350–3,000 m) is being prepared for opening. A new ski zone has been launched near the Terskol Peak Observatory — Bashtala–Chiran, at an altitude of 3,300–3,560 m. It includes 5 km of black and red runs, as well as two lifts: a chairlift and a gondola. 📍 Map of slopes and lifts Additionally, Elbrus now has illuminated slopes, making evening skiing available. But the news that excited me most: this summer, at an altitude of 3,900 m, a mountaineering village with 15 residential modules will open. Time to head to Elbrus! 🏙️Beyond Moscow🏔️

Hashtags

📰АЛАНЫ ВО ВСЁМ МИРЕ. НАМ ПОРА ОБЪЕДИНИТЬ УСИЛИЯ И ПОДГОТОВИТЬ ОСНОВУ ДЛЯ ВОССТАНОВЛЕНИЯ СВОЕЙ СТРАНЫ. Аланский Народ разбросан сегодня по всему миру. В ЕС, США, Канаде, Австралии, Южной Америке живут наши соплеменники. Я считаю что нам самое время заняться формированием своего собственного правительства в изгнании, тем самым взяв ответственность за свою судьбу в свои руки. #Аланла#Alanla#Karachay#Malkar#Elbrus 🔗Читать полностью 📋 Источник: Taulan Salpagarov

СКИТУР КЭМП в Приэльбрусье! Даты с 6-12 апреля⚡️Осталось: 5 мест! #snowboarding#freeride#elbrus#caucasus#скитур#сноубординг#фрирайдсгидами#эльбрус#чегет#приэльбрусье#кавказ