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

Резултати

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

Търсене: #isif

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

@vpsxb1 · Post #6985 · 07.11.2025 г., 12:21

#ISIF🌟 JP.TYO-Cs.1C0G-CM 1 vCPU (EPYC) · 512MB RAM · 20GB SSD 📶 300Mbps · 流量 1000GB(大陆优化) 🌐 IPv4 ×1(大陆优化) 🌐 IPv6 /56(国际) 💰 双十一特惠:年付 €48.00 🎁 🌟 JP.TYO-Cs.1C1G-CM 1 vCPU (EPYC) · 1GB RAM · 40GB SSD 📶 1000Mbps · 流量 2000GB(大陆优化) 🌐 IPv4 ×1(大陆优化) 🌐 IPv6 /56(国际) 💰 双十一特惠:年付 €84.00 🎁 🌟 HK.HKG-Cs.1C0G-CM 1 vCPU (EPYC) · 512MB RAM · 20GB SSD 📶 300Mbps · 流量 1000GB(大陆优化) 🌐 IPv4 ×1(大陆优化) 🌐 IPv6 /56(国际) 💰 双十一特惠:年付 €48.00 🎁 🌟 HK.HKG-Cs.1C1G-CM 1 vCPU (EPYC) · 1GB RAM · 40GB SSD 📶 1000Mbps · 流量 2000GB(大陆优化) 🌐 IPv4 ×1(大陆优化) 🌐 IPv6 /56(国际) 💰 双十一特惠:年付 €84.00 🎁 Test IP: 日本 46.3.43.1 香港 46.3.39.1 🔗 立即订购 👉https://cloud.isif.net/login?affiliation_code=vpsxb - Special Products 也有常规月付款可供选购

Hashtags

Host Testing and evaluation

@HostEvaluate · Post #909 · 29.01.2026 г., 15:14

#ISIF#KR#ICN Host Provider: ISIF Cloud (KR.GMP-B.2C4G-COM) Location: Seoul, South Korea Specification: 2vCore(EPYC 7B13) | 4GB RAM | 40GB Disk | 1T @ 200Mbps | $19.2 / Mo 感谢商家提供的测试机,这台是中国大陆优化 MAX 的。机器开通后默认安装的是 alpine,记得重装一下。我连上去没仔细看,输入命令提示 bash not found 给我看懵了。CPU 性能还可以,用的不是老咕噜棒子 U。磁盘的随机读写水平能对齐 SATA SSD,顺序读写的 IO 略高于 SSD。后者应该是有缓存。用来跑计算延迟不敏感的的业务也还可以。商家有提供 DNS 解锁(NF, DAZN, Disney+, Prime, TVB.. 等等常用的都有),报告里面是机器 IP 的结果,其实迪士尼、NF、Prime 也都能看。回程路由,电信走 CN2,联通移动走 CMIN2。商家提供了 /56 的 IPv6 地址,好评。但是三网回程 HE,我们都在用力的绕美。IPv4 国际路由主要靠 gsl,IPv6 能走到一点 ctcsci 的 retn。商家称后续有增加更多上游链路的意向。联通晚上十一点能跑到 150Mbps。 https://hosteval.mntpaji.com/2026/01/29/Blog/isif-kr-bgpb/

Hashtags