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

Резултати

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

Търсене: #chip

当前筛选 #chip清除筛选
【AFF】发布/使用

@affman668 · Post #321 · 05.06.2025 г., 05:15

#chip#aff Chip(https://www.getchip.uk)是一家英国金融科技公司,由英国金融行为监管局FCA监管,有FSCS保护,提供高息储蓄账户和投资账户(投资账户需NIN,可购买股票)。 注意事项:开户需要英国信用,手机号,拉取到信用后即可秒过,存款需要验证英国银行账户,只能从链接的银行账户转入。邀请码可以开户通过后再输入。 邀请码: CHIP-ZVA419 奖励: 1. 通过我的邀请码开户,开通Instant Access Savings Accounts存入500磅30天即可得£30。 2. 通过我的邀请码开户并成功获得奖励,我再额外返你£10现金 有任何开户或使用相关问题欢迎私聊! 联系:@littlerothschild UID: 526966341

Hashtags

【AFF】发布/使用

@affman668 · Post #339 · 01.07.2025 г., 07:39

#Chip#羊毛 🇬🇧Chip新用户福利上线!只需存入£1,就能轻松领取 £20 奖励!💸 使用我的邀请码可以获得额外💷£10 奖励,总共 £30 到手。 Chip是受 FSCS保障的存款平台,几分钟就能完成开户和奖励申请。 💡操作流程: 1.注册账号后,进入【Portfolio】页面 → 点击 "Promos & Referrals" → "Enter promo code"输入邀请码: CHIP-KKQ947 或者点击 邀请链接 进行注册。 2.在Savings中点击 "Chip Instant Access" 根据提示链接银行账户/银行卡 存入 £1 或 £1 以上,并保留30天 (请注意:只有存入该账户才能获得官方奖励) 🚨开户条件: UK IP,电话号,英国地址,英国本地银行账户(wise/ifast不行) 入金须通过英国本地银行账户/借记卡,提现只能到绑定的银行账户 填完个人资料,有信用记录的情况下不用kyc. 联系:@wingsuss UID:6001111275

Hashtags

【AFF】发布/使用

@affman668 · Post #336 · 27.06.2025 г., 03:57

#Chip#羊毛 🇬🇧Chip新用户福利上线!只需存入£1,就能轻松领取£20奖励!💸 Chip是受 FSCS保障的存款平台,几分钟就能完成开户和奖励申请。 App下载: 📱https://apps.apple.com/app/id1141297472 📱https://play.google.com/store/apps/details?id=to.chip.app&pcampaignid=web_share 💡操作流程: 1.注册账号后,进入【Portfolio】页面 → 点击 "Promos & Referrals" → "Enter promo code"输入邀请码: CHIP-JRR468 或者点击 邀请链接 进行注册。 2.返回 "Promos & Referrals" 界面可以看到已添加的邀请码,点开可以看到图中的界面,根据提示操作,关联银行账户/银行卡存入£1,并保留30天(注意:只有指定该账户才有奖励) 🚨开户条件: UK IP,电话号,英国地址,英国本地银行账户(wise/ifast不行) 入金须通过英国本地银行账户/借记卡,提现只能到绑定的银行账户 填完个人资料,有信用记录的情况下不用kyc 联系:@wxmsl UID:5574594508

Hashtags

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