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

Резултати

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

Търсене: #akilecloud

当前筛选 #akilecloud清除筛选
VPSXB.NET

@vpsxb1 · Post #7429 · 19.04.2026 г., 18:03

#akilecloud JPIIJ-One CPU 1核 | 内存 512 M 硬盘 5 GB | 带宽 5000M 299G/月 | 超出限速共享10Mbps 重置流量 ¥7.00 IPv4 1个 | IPv6 0个 ¥10.00/月 下单链接:https://akile.ai/shop/server?type=traffic&areaId=5&nodeId=9&planId=825&aff_code=ec987c11-0d1a-4a07-81f2-12ebb10a5d09

Hashtags

VPSXB.NET

@vpsxb1 · Post #7415 · 16.04.2026 г., 16:41

#akilecloud LAXPremium-Mini 补货 CPU 1核 | 内存 1024 M 硬盘 20 GB | 带宽 200M 500G/月 | 超出限速共享10Mbps 重置流量 ¥70.00 IPv4 1个 | IPv6 0个 ¥79.99/月 美国原生地址 三网双向优化 联通9929 移动CMIN2 电信CN2GIA 下单链接:https://akile.ai/shop/server?type=traffic&areaId=2&nodeId=32&planId=984&aff_code=ec987c11-0d1a-4a07-81f2-12ebb10a5d09

Hashtags

VPSXB.NET

@vpsxb1 · Post #7360 · 05.03.2026 г., 12:10

#akilecloud HKLite-高级竞技A CPU 1核 | 内存 1024 M 硬盘 20 GB | 带宽 10000M 无限制 重置流量 ¥99999.99 IPv4 1个 | IPv6 0个 ¥50.00/月 下单链接:https://akilecloud.com/shop/server?type=traffic&areaId=3&nodeId=1&planId=995&aff_code=ec987c11-0d1a-4a07-81f2-12ebb10a5d09 MOLite-高级竞技A CPU 1核 | 内存 1024 M 硬盘 10 GB | 带宽 10000M 无限制 重置流量 ¥99999.99 IPv4 1个 | IPv6 1个 ¥50.00/月 下单链接:https://akilecloud.com/shop/server?type=traffic&areaId=14&nodeId=38&planId=1017&aff_code=ec987c11-0d1a-4a07-81f2-12ebb10a5d09

Hashtags

VPSXB.NET

@vpsxb1 · Post #7358 · 01.03.2026 г., 13:41

#akilecloud MOLite-高级竞技A CPU 1核 | 内存 1024 M 硬盘 10 GB | 带宽 10000M 无限制 重置流量 ¥99999.99 IPv4 1个 | IPv6 1个 ¥50.00/月 下单链接:https://akilecloud.com/shop/server?type=traffic&areaId=14&nodeId=38&planId=1017&aff_code=ec987c11-0d1a-4a07-81f2-12ebb10a5d09

Hashtags

VPSXB.NET

@vpsxb1 · Post #7356 · 01.03.2026 г., 09:14

#akilecloud JPPro-Light 三网优化 CPU 1核 | 内存 1024 M 硬盘 10 GB | 带宽 300M 700G/月 | 超出限速共享10Mbps 重置流量 ¥22.00 IPv4 1个 | IPv6 1个 ¥24.99/月 下单链接:https://akilecloud.com/shop/server?type=traffic&areaId=5&nodeId=10&planId=840&aff_code=ec987c11-0d1a-4a07-81f2-12ebb10a5d09

Hashtags

VPSXB.NET

@vpsxb1 · Post #7345 · 15.02.2026 г., 01:36

#akilecloud 香港VPS,澳门广播IP,解锁澳门流媒体 MOLite-One(番茄清仓) CPU 1核 | 内存 1024 M 硬盘 5 GB | 带宽 5000M 1000G/月 | 超出限速共享10Mbps 重置流量 ¥7.00 IPv4 1个 | IPv6 1个 ¥69.99/年 下单链接:https://akilecloud.com/shop/server?type=traffic&areaId=14&nodeId=38&planId=1020&aff_code=ec987c11-0d1a-4a07-81f2-12ebb10a5d09&shop_code=番茄清仓 HKLite-One(番茄清仓) CPU 1核 | 内存 1024 M 硬盘 5 GB | 带宽 5000M 1000G/月 | 超出限速共享10Mbps 重置流量 ¥7.00 IPv4 1个 | IPv6 1个 ¥69.99/年 下单链接:https://akilecloud.com/shop/server?type=traffic&areaId=3&nodeId=1&planId=1019&aff_code=ec987c11-0d1a-4a07-81f2-12ebb10a5d09&shop_code=番茄清仓

Hashtags

VPSXB.NET

@vpsxb1 · Post #7342 · 13.02.2026 г., 17:05

#akilecloud 补货 LAXLite-One(番茄特供) CPU 1核 | 内存 1024 M 硬盘 5 GB | 带宽 5000M 1688G/月 | 超出限速共享10Mbps 重置流量 ¥5.00 IPv4 1个 | IPv6 1个 ¥68.99/年 下单链接:https://akilecloud.com/shop/server?type=traffic&areaId=2&nodeId=37&planId=1021&aff_code=ec987c11-0d1a-4a07-81f2-12ebb10a5d09

Hashtags

VPSXB.NET

@vpsxb1 · Post #7328 · 05.02.2026 г., 01:41

#AkileCloud 澳门广播IP 机器位置在HK MOLite-高级竞技A CPU 1核 | 内存 1024 M 硬盘 20 GB | 带宽 10000M 无限制 重置流量 ¥99999.99 IPv4 1个 | IPv6 1个 ¥50.00/月 下单链接:https://akilecloud.com/shop/server?type=traffic&areaId=14&nodeId=38&planId=1017&aff_code=ec987c11-0d1a-4a07-81f2-12ebb10a5d09

Hashtags

VPSXB.NET

@vpsxb1 · Post #7318 · 04.02.2026 г., 07:54

#akilecloud 澳门广播IP 机器位置在HK MOLite-One CPU 1核 | 内存 1024 M 硬盘 5 GB | 带宽 1000M 1000G/月 | 超出限速共享10Mbps 重置流量 ¥7.00 IPv4 1个 | IPv6 1个 ¥9.99/月 下单链接:https://akilecloud.com/shop/server?type=traffic&areaId=14&nodeId=38&planId=1016&aff_code=ec987c11-0d1a-4a07-81f2-12ebb10a5d09

Hashtags

AKILE NOTICE

@akile_notice · Post #1349 · 17.03.2026 г., 13:50

#akilecloud 番茄特价活动 LAX 68.99/年 下单链接:https://akilecloud.com/shop/server?type=traffic&areaId=2&nodeId=37&planId=1021 HK(定位在澳门)/HKLite 69.99/年 https://akilecloud.com/shop/server?&shop_code=番茄清仓

Hashtags

AKILE NOTICE

@akile_notice · Post #717 · 02.05.2024 г., 06:06

#AkileCloud AMD 7900X/DDR5/Nvme SSD 英国原生IP,DNS解锁Netflix,Disney,Chatgpt等 八五折:AkileCloud/UKLITE/GO UKLite-Starter CPU 1核 | 内存 1024 M 硬盘 10 GB | 带宽 500M 1024G/月 | 超出后限速10Mbps 重置流量 ¥14.00 IPv4 1个 | IPv6 0个 ¥15.99/月 下单链接:https://akile.io/shop/server?type=traffic&areaId=11&nodeId=92&planId=561

Hashtags

AKILE NOTICE

@akile_notice · Post #575 · 15.12.2023 г., 13:46

#AkileCloud DNS解锁美国流媒体 AMD 5900X/DDR4/Nvme SSD LAXBase-One CPU 1核 | 内存 1024 M 硬盘 20 GB | 带宽 500M 流量 6000G/月 | 超出后限速10Mbps 重置流量 ¥9.99 IPv4 1个 | IPv6 1个 99.99CNY/Year 支持 支付宝/转数快/VISA/MASTERCARD/USDT付款 购买链接:https://akile.io/shop/server?type=traffic&areaId=2&nodeId=77&planId=415

Hashtags

123•••78
ПредишнаСтр. 1 от 8Следваща