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

Резултати

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

Търсене: #hdchina

当前筛选 #hdchina清除筛选
PT资讯频道

@PrivateTrackerNews · Post #536 · 27.05.2019 г., 16:06

#HDChina 瓷器 强大的机器人 @hdchina_group_bot 现在允许解除网站用户绑定了,具体请使用/help查看命令详情。 HDChinaGroupManager 命令列表: /enableme - 授予已验证用户发言权限 /help - 显示帮助信息 /letmelogin - 获取登录链接 /release - 解除用户绑定 /showmystats - 显示账户数据 /verify - 验证账户 /whoami - 显示你的个人信息 如果你想换个TG号绑定,可以解除旧号再绑新号;或者不想待在TG群里,解除绑定后会被机器人自动踢出TG群 Powerful robot @hdchina_group_bot Now you are allowed to unbind the site users. Please use /help to view the command details. HDChinaGroupManager Command list: /enableme - grant authenticated user speaking permission /help - display help information /letmelogin - Get the login link /release - unbind user /showmystats - display account data /verify - verify account /whoami - show your personal information If you want to change the TG number binding, you can release the old number and then tie the new number; or you don't want to stay in the TG group. After unbinding, the robot will automatically kick out the TG group.

Hashtags

PT风向旗

@Ptfxq · Post #593 · 26.02.2024 г., 15:53

#HDChina#HDC HDC 是中国境内创立最早、用户规模最大、资源数最多的 PT 站之一,从 2008 年创立至今,期间虽被当局关注过,但均在数据毫无损失的情况下重开了。 在 2023 年 11 月 28 日,HDC 毫无征兆的宕机了,网站和 tracker 均无法访问,Telegram 群组 Bot 也无响应,至今已持续接近 4 个月时间。期间,有群友发现 HDC 群组的多个管理员的 Telegram 账号状态均显示为“last seen a long time ago”,仍在线的管理员一直告诉大家耐心等待,然而并未传递任何具体的消息,人心惶惶。 期间甚至有谣言传出:HDC的站长沉迷原神,关站了。 2024 年 2 月 9 日,HDC 的群组管理员发送了一张截图,均为 tar.gz 文件,不难推测此为服务器的备份文件,振奋人心,站点数据还在。但很快又有 PTer 发现了 HDC 的域名于 2024 年 2 月 26 日过期。 然而,小编发现原本应该在今天(2024.02.26)到期的 HDC 域名被续费了,或许我们很快就能够与 HDC 再次见面。 期待官方的进一步消息并祝好。

Hashtags

PT风向旗

@Ptfxq · Post #318 · 23.08.2022 г., 08:35

#拆门汇总#汇总 由于众所周知的原因,部分内站开始拆门了。本消息作为一个汇总,记录关门的内站,请各位备份自己的cookies,以防失联。 如果失联,可以查看 https://t.me/Ptfxq/32 寻找对应站点的登录方法。 #HDChina #SSD #Ultrahd #Piggo #白兔 #OB #Azusa #烧包#ptsbao #Pterclub #Audiences #HDSky