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

Резултати

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

Търсене: #artistic

当前筛选 #artistic清除筛选
Bera Bee Catcher Announcement

@berabeecatcher_ann · Post #157 · 07.08.2024 г., 03:55

🖼 Bear-tastic Sticker Contest 🎨 Get creative with our bear's expressions & actions! Sweet & fun themes are encouraged 🥳 🗓️ From now until Sunday, August 18, 2024, 23:59 UTC. 🏆 Prizes: 🥇1st: 100 USDT, 1000 BEE, 20 CANDY 🥈2nd: 60 USDT, 750 BEE, 15 CANDY 🥉3rd: 40 USDT, 500 BEE, 10 CANDY 🎁 Every qualified entry: 50 BEE, 5 CANDY 🎪How to Participate: 1. Create more than 3 unique stickers of our bear. 2. Ensure your stickers are original and not copied from elsewhere. 3. Submit your stickers to the designated contest channel on Discord or Telegram. 🕺 Discord: https://discord.gg/berasighub -> go to #artistic-beras channel 🪩Telegram: @BeraBeeCatcher -> Contest Channel

Hashtags

ART IN SPORT

@BarykinaLiubov · Post #1715 · 04.04.2025 г., 09:27

Master Class In BERLIN 05.04.25 Международный проект «Искусство в спорте» Любови Барыкиной В Берлине Германия 💜 #LiubovBarykina #ArtInSport #InternationalProject #Dancing #Education #Artistic #Emotions

ART IN SPORT

@BarykinaLiubov · Post #1712 · 25.03.2025 г., 20:14

#MeisterKlasse Des Internationalen Projektes “Kunst im Sport” In Neulussheim Deutschland 30.03.2025 #Germany #ArtInSport #LiubovBarykina #EmanuelaBatke #RhythmicGymnastics #Dance #Artistic #Education 🤝💃🏽🔥

ART IN SPORT

@BarykinaLiubov · Post #2017 · 10.08.2025 г., 21:01

Master Class in Koblenz, Germany 🇩🇪 2025 @rsg.koblenz Мастер-класс международного Проекта „Art in Sport” В Кобленце, Германия #Dancing#Expression #Artistic#Emotionality #LiubovBarykina#Choreographer #PersonalCoach#ArtlnSport For individual training sessions And master classes, please Contact us via private message 👍👍👍🌼🌼🌼💃🏽💃🏽💃🏽 По проведению Мастер-классов, Постановок и Индивидуальных занятий Свяжитесь со мной В личном сообщении 👍

Home decor

@dzdigital3 · Post #19407 · 02.02.2026 г., 23:15

Wait for the end result! 😱 Stunning Resin Art Transformation #ResinArt#HomeDecor#InteriorDesign#WallClock#EpoxyResin#LuxuryLiving#DecorInspiration#FluidArt#DIYIdeas#Artistic#StatementPiece#WallArt