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

Резултати

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

Търсене: #jio

当前筛选 #jio清除筛选

#人物 other (单个表情包放这) 国王排名 波吉 https://t.me/addstickers/king_ranking 小蓝和他的朋友们 https://t.me/addstickers/WeChat_LittleBlueAndHisFriends https://t.me/addstickers/XiaolanGif watora 和 potofu https://t.me/addstickers/watora_potofu Urara迷路帖 #video https://t.me/addstickers/urara_by_favorite_stickers_bot 加零 https://t.me/addstickers/jia0_hd 樱田诗露 桜田シロ https://t.me/addstickers/Sakurada_Shiro 义眼 丁真 https://t.me/addstickers/TenzingTsondu https://t.me/addstickers/tenzing https://t.me/addstickers/tenzing_plus https://t.me/addstickers/dingzhen_universe_by_luxiaoxun_bot https://t.me/addstickers/tenzing_mega 坤坤 鲲鲲 ikun 小黑子 https://t.me/addstickers/ikunsticker_666_by_luxiaoxun_bot https://t.me/addstickers/ikunsticker2_666_by_luxiaoxun_bot https://t.me/addstickers/wmikun https://t.me/addstickers/ikundongtu 爬 原作:蜜汁工坊 https://t.me/addstickers/GeiWoPa 美食广场里的女高中生在说啥 https://t.me/addstickers/msgcldngzszss 大时代 https://t.me/addstickers/greedtime https://t.me/addstickers/TheGreedOfManVideo#video FX战士久留美 韭留美 https://t.me/addstickers/FXSENSHI 超天酱 主播女孩重度依赖 https://t.me/addstickers/chaotianjiang https://t.me/addstickers/overdose228_by_fStikBot Liyuu https://t.me/addstickers/liyu0109 https://t.me/addstickers/liyu01092 雪糕糕 #jio https://t.me/addstickers/tsubasachyan https://t.me/addstickers/baisixuegaogao FGO https://t.me/addstickers/fgo2chibiii https://t.me/addstickers/fgoservant bilibili B站 22娘 33娘 https://t.me/addstickers/bili2233 崩坏3 https://t.me/addstickers/honkai_sticker https://t.me/addstickers/Teriri_Pack https://t.me/addstickers/Elysia_bh3 Ryukko https://t.me/addstickers/VR_Chat Kero https://t.me/addstickers/Kero_VR noy娘 https://t.me/addstickers/noygirl Lakr233 https://t.me/addstickers/Lakr233_0 软糖酱 https://t.me/addstickers/lxbot https://t.me/addstickers/missedtank helltaker https://t.me/addstickers/heltek666 梦璃 星梦璃月 https://t.me/addstickers/ritsuki 毒霸姬 https://t.me/addstickers/xiaodubaji https://t.me/addstickers/KingsoftKISGirl minahoshi https://t.me/addstickers/XxyujiVsMinahoshiChan 魔法少女小圆 https://t.me/addstickers/Akemi_Homura FX战士久留美 https://t.me/addstickers/FXSENSHI

🦅 [ perspective ix ]

@perspectiveix · Post #1990 · 04.05.2020 г., 17:00

Tech, Media, and Business News Headlines—Day 3 👉#Intel is in talks to acquire #Moovit for ~$1B (link) 👉#Uber to require masks or face coverings for drivers and passengers in certain markets (link) 👉 Security lapse at #India’s #Jio exposed #coronavirus symptom checker results (link) 👉#Amazon, #Flipkart, #Ola and #Uber begin to resume their services in #India (link) 👉#UberEats exits seven markets (link) 👉 The 13-inch #MacBook Pro gets #Apple’s much-improved keyboard (link) 👉 Poynter Institute’s International Fact-Checking Network launches chatbot on #WhatsApp to debunk thousands of #coronavirus-related hoaxes (link) 📰@iXDaily by @PerspectiveIX 💌Weekly Newsletter.

Desi Memes Funny Jokes

@desi_memes_funny_jokes · Post #4983 · 10.07.2024 г., 03:47

Paisa hai to kya kuch nahi ho sakta🤣 #matstudios#sochobolopao#indianmemes#indianfunny#bhagambhag#justinbieber#mukeshambani#bollywoodcomedy#bollywoodedits#bollywoodmemes#ambani#ambaniwedding#jio