@fosspost · Post #524 · 01.10.2020 г., 11:45
DigitalOcean's Hacktoberfest is Hurting Open Source https://blog.domenic.me/hacktoberfest/ #DigitalOcean@DigitalOcean
Hashtags
TGINSIGHT SIMILAR POSTS
Изходен канал @clockstackwheels · Post #721 · 26.12
Почему я люблю языки с сильной системой типов, проверяемой статическим анализом кода — хорошо написанная программа является своей собственной спецификацией и позволяет выражать через язык программирования законы существования предметной области. Когда-то давно я писал на ActionScript. Там была система типов, но вот десериализация JSON'ов по-умолчанию была в какой-то общий Object, к полям которого нужно было обращаться ["по_строковому_имени"]. В один момент мне потребовалось написать что-то на C#, который я совсем не знал, я стал гуглить, как десериализовать JSON, и с удивлением обнаружил кучу советов заранее объявить класс со всеми нужными полями и десериализовать в него. "Какой ужас!", — подумал я тогда, — "Это же дико неудобно! А если я не знаю полей JSON? А если их много? Отвратительный язык!" Теперь то я прекрасно понимаю, что JSON это контракт, и что правильная десериализация только такая и должна быть, и что в хорошем API в одном поле никогда не бывает данных принципиально разных типов, и так далее. Нет, если вы набиваете вечерами пет-проект или сидите бессонную ночь на хакатоне, нет ничего плохого в том, чтобы взять простой язык с динамическими типами вроде JavaScript или Python, не требующий описывать данные. Но вот в энтерпрайзе, особенно когда над одним проектом работает много людей (а бывает это очень часто) — хорошее использование системы типов убережёт разработчиков от огромного количества ошибок, будет бить их по рукам, когда они пытаются сделать что-то не то, и будет подсказывать, когда они не уверены в чём-то. С помощью статической типизации можно на уровне кода обозначить правила, по которым ведёт себя предметная область вашей программы в реальном мире. Разработчику не только будет сложно их нарушить, но он ещё и станет узнавать какие-то вещи, которые мог не знать раньше. Например, если мы делаем медицинскую CRM, и больница заводит новых пациентов только тогда, когда знает их группу крови, мы можем объявить тип "Пациент" (или, если точнее, "Карта пациента") и запретить создавать экземпляры этого типа, не передав в конструктор группу крови (которая, в свою очередь, тоже является типом, вероятнее всего ValueObject'ом). Если новый программист пришёл в проект, он, во-первых, не сможет записать в БД некорректную карту пациента. Понятно, мы не учитываем случаи, когда новый программист переделывает модели предметной области — это будет хорошо видно на кодревью. А, во-вторых, даже если ему никто не сказал, что пациенты должны быть с группой крови, он узнает это из кода. И уже будет понимать, что в тех процессах реальной жизни, которые он описывает кодом, карта пациента создаётся только при наличии группы крови. А, значит, нужно искать какой-то способ сначала эту группу крови получить, и только потом создавать карту. Программирование моделирует реальный процесс. В настоящей работе даже на языках с типами, конечно, без должного контроля можно написать что угодно. Нужна управленческая воля, компетентность руководства, понимание опасности техдолга, в идеале отдельные должности для архитекторов, опытные лиды и старшие разработчики. Но когда всё это есть, можно отсекать много проблем ещё на старте и проще погружать новичков. #dev
Hashtags
Търсене: #digitalocean
@fosspost · Post #524 · 01.10.2020 г., 11:45
DigitalOcean's Hacktoberfest is Hurting Open Source https://blog.domenic.me/hacktoberfest/ #DigitalOcean@DigitalOcean
Hashtags
@vps_test · Post #73 · 14.05.2023 г., 06:34
DigitalOcean Sydney 悉尼 带宽最小的一个区域,国际互连超级差劲,干啥啥不行,没有任何优势。 #digitalocean#1Gbps#建站
Hashtags
@vps_test · Post #71 · 14.05.2023 г., 06:31
DigitalOcean Toronto 多伦多 下行5Gbps,上行2Gbps,冷门区域,IP质量较好,比较干净 #digitalocean#1Gbps#建站
Hashtags
@vps_test · Post #70 · 14.05.2023 г., 06:31
DigitalOcean Frankfurt 法兰克福 下行15Gbps,上行2Gbps,用的人较少,欧洲用户选他比较多,国际互连比较强 套京德IPLC直接起飞,超级无敌的落地鸡 #digitalocean#1Gbps#建站
Hashtags
@vps_test · Post #69 · 14.05.2023 г., 06:30
DigitalOcean London 伦敦 下行15Gbps,上行2Gbps,是DigitalOcean最热门的区域之一,网络算欧洲顶级 #digitalocean#1Gbps#建站
Hashtags
@vps_test · Post #68 · 14.05.2023 г., 06:29
DigitalOcean Singapore 新加坡 下行1.5Gbps,上行2Gbps,带宽较小 电信/联通拉稀,广移可拉 网络不是很稳定,因为APE海缆脆弱,老波及到 #digitalocean#1Gbps#建站
Hashtags
@vps_test · Post #67 · 14.05.2023 г., 06:27
DigitalOcean Amsterdam 荷兰阿姆斯特丹 上行2Gbps,下行10Gbps,但是CPU较弱,可能是用的人多的原因 #digitalocean#1Gbps#建站
Hashtags
@vps_test · Post #66 · 14.05.2023 г., 06:27
DigitalOcean San Fransisco 硅谷 下行7Gbps 上行2Gbps,对国内网络较好,适合建站 #digitalocean#1Gbps#建站
Hashtags
@vps_test · Post #65 · 14.05.2023 г., 06:26
DigitalOcean New York 5Gbps下行,2Gbps上行 #digitalocean#1Gbps#建站
Hashtags
@TossLabChannel · Post #510 · 10.01.2025 г., 14:33
#DigitalOcean#数字海洋#VPS#白嫖 白嫖Digitalocean数字海洋服务器10台VPS 60天 DigitalOcean 是一家总部位于美国纽约的云计算服务商,成立于2011年,提供高性价比和易用的云服务。通过注册新账户并使用 邀请链接 ,可以获得200美元的免费额度,并使用该额度购买VPS实例等服务,最长可使用60天。 注册条件 • 有效邮箱地址:可使用Google邮箱、QQ邮箱等主流邮箱进行注册。 • 支付方式:需要绑定信用卡或借记卡(部分地区支持支付宝)。 • 邀请链接:使用邀请链接注册可获得200美元免费额度。 • 美国VPN(可选):建议使用美国IP注册,以防止账户因地区限制被封。 注意事项 1. 免费额度 :使用邀请链接注册后,获得200美元免费额度,需在2个月内使用完毕。合理规划资源使用,避免浪费。 2. 绑定支付信息 :绑定支付方式时,会产生1美元的预授权金额,之后会退回,不会影响实际账户资金。 3. 机器实例配额 :每个账户最多可创建10个实例。建议不要一次性启动所有实例,以免触发账户限制。 4. 使用VPN :建议在整个注册和使用过程中保持美国VPN开启,避免因IP地区问题导致账户受限。 5. 避免超额使用 :免费额度有效期为2个月,请根据需求合理分配资源,避免额外费用。 通过合理使用DigitalOcean的免费额度,可以在不花费资金的情况下体验其VPS服务。 📢 群聊: @TossIPhone 🎈 频道: @TossIChannel ❗️ ❗️ ❗️ ❗️ ❗️ ❗️ ❗️ ❗️ 🔘折腾系列频道 - 全面介绍 🔘境外离岸银行教程合集目录 🔘折腾实验室优质Github项目合集
Hashtags
@vps_test · Post #72 · 14.05.2023 г., 06:33
DigitalOcean Bangalore 班加罗尔 最冷门的一个区域,根本没人用,算是我见到过的印度机器中国际互连最强了,到国内三网稳定,延迟大,但是几乎不丢包,优秀的落地,抗DDoS!但是CPU性能特别好,有需要持久计算能力的可以选。 #digitalocean#1Gbps#建站#DDoS防护
Hashtags