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

Резултати

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

Търсене: #evergreen

当前筛选 #evergreen清除筛选
福利彩金

@ob599ob · Post #840 · 28.06.2023 г., 08:15

【五大内核浏览器】🌐 🔺 谷歌 :https://www.google.com/intl/zh-CN/chrome/ (👉🏻 点击即复制👉🏻https://www.google.com/intl/zh-CN/chrome/) 🔘 火狐:https://www.firefox.com.cn/ (👉🏻 手机版点击即复制👉🏻https://www.firefox.com.cn/) 💯 safari: https://www.apple.com.cn/safari/ (👉🏻 点击即复制👉🏻https://www.apple.com.cn/safari/) 🟰 Opera: https://www.opera.com/zh-cn/browsers (👉🏻 点击即复制👉🏻https://www.opera.com/zh-cn/browsers) 🔜 Edge:https://www.microsoft.com/zh-cn/edge?form=MA13FJ#evergreen (👉🏻 点击即复制👉🏻https://www.microsoft.com/zh-cn/edge?form=MA13FJ#evergreen)

Hashtags

赌王之王

@PG115 · Post #558 · 15.05.2025 г., 08:31

给予很多用户用苹果自带浏览器无法访问可下载以下【五大硬核浏览器】🌐 ⚡️谷歌 :https://www.google.com/intl/zh-CN/chrome/ (👉🏻 点击即复制👉🏻https://www.google.com/intl/zh-CN/chrome/) ⚡️火狐:https://www.firefox.com.cn/ (👉🏻 手机版点击即复制👉🏻https://www.firefox.com.cn/) ⚡️safari: https://www.apple.com.cn/safari/ (👉🏻 点击即复制👉🏻https://www.apple.com.cn/safari/) ⚡️ Opera: https://www.opera.com/zh-cn/browsers (👉🏻 点击即复制👉🏻https://www.opera.com/zh-cn/browsers) ⚡️Edge:https://www.microsoft.com/zh-cn/edge?form=MA13FJ#evergreen (👉🏻 点击即复制👉🏻https://www.microsoft.com/zh-cn/edge?form=MA13FJ#evergreen) 用完了还不行 换手机

Hashtags

🈯️【五大硬核浏览器】🌐 🔺 谷歌 :https://www.google.com/intl/zh-CN/chrome/ (👉🏻 点击即复制👉🏻https://www.google.com/intl/zh-CN/chrome/) 🔘 火狐:https://www.firefox.com.cn/ (👉🏻 手机版点击即复制👉🏻https://www.firefox.com.cn/) 💯 safari: https://www.apple.com.cn/safari/ (👉🏻 点击即复制👉🏻https://www.apple.com.cn/safari/) 🟰 Opera: https://www.opera.com/zh-cn/browsers (👉🏻 点击即复制👉🏻https://www.opera.com/zh-cn/browsers) 🔜 Edge:https://www.microsoft.com/zh-cn/edge?form=MA13FJ#evergreen (👉🏻 点击即复制👉🏻https://www.microsoft.com/zh-cn/edge?form=MA13FJ#evergreen) 😱用完了还不行 换手机

Hashtags

Мариам Мерабова

@MerabovaMariam · Post #1779 · 04.12.2024 г., 15:19

Друзья, жду вас 8 декабря в 20:00 на Главной сцене Клуба Алексея Козлова! 💫 Моя программа «Evergreen» — это вечер джазовой магии, где прозвучат «вечнозелёные» композиции и авторские песни, которые мы с Арменом Мерабовым создали с душой. Вас ждут музыка, тепло и искренние эмоции. Билеты ищите на сайте Клуба, и до встречи! 🎶❤️ https://kozlovclub.ru/event/mariam-merabova-9 #МариамМерабова#Evergreen

Tomoko RD

@tomoko_channel · Post #1070 · 23.04.2025 г., 04:33

🔖 听着就很不正经呢~~ 根据电价、太阳能冗余量、供暖需求作为条件,决定是否启用比特币矿机用于取暖。 #pinboard#iot#evergreen 该帖子讨论了如何将比特币矿机(如 Antminer S19)与 Home Assistant 集成,以根据电价、太阳能发电和供暖需求自动调整矿机的运行状态,从而实现家庭供暖和能源优化。 主要内容包括: - 自动化控制:用户利用 Home Assistant 的 hass-miner 集成,通过自动化规则根据电价和太阳能发电情况控制矿机的开关和功率设置。例如,当电价高时关闭矿机,当电价低或有多余太阳能时提高功率运行。 - 功率调节:矿机的功率设置在 1800W 到 3000W 之间,低功率模式用于提高效率,高功率模式用于消耗多余的太阳能或在电价低时运行。 - 集成 Braiins OS:通过安装 Braiins OS,用户可以更精细地控制矿机的功率限制,并通过 Home Assistant 实现自动化调节。 - 热管理与采矿收益:用户还集成了 Nicehash,以监控矿机的收益,并将其与电力消耗进行比较,从而评估系统的经济性。 - 社区经验分享:其他用户也分享了他们的设置经验,例如使用“versatile thermostat”集成,根据室内温度自动调整矿机功率,以维持恒定的室温。 总的来说,该帖子展示了如何将比特币矿机与智能家居系统结合,实现家庭供暖、能源优化和加密货币挖矿的多重目标。 https://community.home-assistant.io/t/controlling-bitcoin-antminer-for-house-heating/753510

ТИС ЛОДЖИСТИК

@tislogistic · Post #4773 · 09.08.2025 г., 01:02

🚢 Еще одно судно компании Evergreen столкнулось с инцидентом у берегов Перу, потеряв около 50 контейнеров. 1 августа судно Ever Lunar вместимостью 8500 TEU потеряло контейнеры, стоя на якоре у Каллао, что временно приостановило морские операции в порту. ⚓ В результате инцидента DP World и APM Terminals приостановили свою деятельность. Власти уверяют, что потерянный груз не представлял угрозы для окружающей среды, и порт вновь открылся в середине дня. 🌊 Сообщается, что Ever Lunar находился у причала в ожидании загрузки, когда ему приказали покинуть гавань из-за предупреждения о цунами. Не все контейнеры были закреплены должным образом, что и привело к потере. ___ #ТИСЛОДЖИСТИК🦏 #Evergreen #Контейнеры #МорскиеПеревозки

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