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

Резултати

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

Търсене: #zhejiang

当前筛选 #zhejiang清除筛选
Partido Comunista de Cuba

@PartidoComunistadeCuba · Post #10231 · 09.05.2025 г., 14:31

Roberto Morales Ojeda en Facebook Sostuve esta tarde, un fraternal encuentro con Liu Jie, vicesecretario del Comité Provincial del Partido Comunista de #China y gobernador de #Zhejiang. Ratifiqué la voluntad de continuar fortaleciendo los excelentes vínculos interpartidistas. https://www.facebook.com/share/p/195yVe7e8D/

🎺星空瞭望

@panguliaowang · Post #18248 · 18.05.2020 г., 22:25

#疫情通报#浙江#Zhejiang 【关于钱塘新区1例外地既往新冠肺炎确诊病例有关情况的说明】 5月17日,钱塘新区通报了1例外地既往新冠肺炎确诊病例核酸检测阳性的情况,引起社会广泛关注。现就此例外地既往确诊病例相关情况作如下说明: 居民陈某某,钱塘新区某公司员工(从事财务工作),现居住在白杨街道世茂峻景湾小区。今年2月12日在温州确诊为新冠肺炎,3月1日治愈出院,随后,3月16日、4月21日,两次核酸检测均为阴性。 5月2日,陈某某从温州自驾回杭,来杭后在家休养。5月12日复工前核酸检测,发现可疑阳性,即送定点医院隔离。5月14日,杭州市疾控中心对原标本复检仍呈阳性。入院后,5月14日、16日连续2次采样检测新冠病毒核酸又转为阴性。截止目前该人员无发热、咳嗽等临床症状,肺部影像学无异常,已回到集中隔离点落实隔离观察。在杭接触者均已追踪到位,核酸检测均为阴性。 这是一例疑似复阳病例,目前没有证据表明具有传染性。区教育卫健局再次提醒,广大居民仍要做好个人防护。 钱塘新区教育与卫生健康局 2020年5月18日 (浙江之声 @ 微博)

Addis Standard

@addisstandardeng · Post #21246 · 30.01.2026 г., 07:58

#China executes 11 gang members who lured #Kenyans to #Myanmar scam compounds China has executed 11 members of a criminal gang convicted of luring foreigners—including Kenyans—into scam compounds in Myanmar, where they ran a billion-dollar online fraud and illegal gambling network. The criminal syndicate was convicted of running a vast online fraud and illegal gambling operation that generated more than $14 billion, according to state media and court records. The executions approved by China's Supreme Peoples Court and carried out in eastern #Zhejiang province underscore Beijing' intensifying crackdown on transnational crime networks operating across Southeast Asia, These networks have increasingly affected victims and financial systems far beyond the region including in Africa. Chinese authorities said the defendants were key figures in the so-called Ming family criminal group ..... https://web.facebook.com/AddisstandardEng/posts/pfbid0Txiw6s8otRMFRWz7hk7ioaecYZkBNx1cMqVXPy67uL3pPMJaJZA2fGQyqs8aymkSl

Patrick 舆情发布

@life_xiangpeng · Post #3923 · 01.01.2022 г., 01:36

#疫情通报#浙江#Zhejiang 【关于 #宁波 市 #北仑 区1例新冠核酸检测阳性结果的通报】 2022年1月1日0时30分左右,接宁波海尔施医学检验所报告,北仑区中医院送检的一份拟住院患者1:1核酸检测结果异常。经市、区两级疾控中心复核,检测结果为阳性。 目前,该阳性感染者已送定点医院隔离治疗。市委、市政府第一时间启动应急响应,组织开展流调溯源、隔离管控、核酸检测等工作,并对其活动场所进行环境采样检测及消杀,对相应区域已实行管控措施。后续情况将及时向社会公布。 宁波市新型冠状病毒感染的肺炎疫情防控工作领导小组办公室 2022年1月1日(宁波发布 @ 微信公众平台)

🎺星空瞭望

@panguliaowang · Post #17163 · 23.03.2020 г., 02:20

#疫情通报#China#中共国 【#全国 新增确诊 103 例,累计确诊 81601 例,新增出院 459 例,累计出院 72841 例,新增病亡 9 例,累计病亡 3276 例,现存确诊 5484 例,现存重症 1749 例,新增疑似 47 例,现存疑似 136 例,现存医观 10701 例】(中国的数据含港澳台) #湖北#Hubei 新增病亡 9 例(武汉 9 例),新增出院 447 例,现存确诊 4768 例,现存重症 1714 例 #上海#Shanghai 新增境外输入确诊 10 例 #北京#Beijing 新增境外输入确诊 10 例 #广东#Guangdong 新增境外输入确诊 6 例 #福建#Fujian 新增境外输入确诊 4 例 #山东#Shandong 新增境外输入确诊 2 例 #甘肃#Gansu 新增境外输入确诊 2 例 #河南#Hebei 新增境外输入确诊 1 例 #浙江#Zhejiang 新增境外输入确诊 1 例 #重庆#Chongqing 新增境外输入确诊 1 例 #台湾#Taiwan 新增确诊 16 例 #香港#Hongkong 新增确诊 44 例 #澳门#Macao 新增确诊 3 例 (国家卫健委)(湖北卫健委)(北京卫健委)(上海卫健委)(广东卫健委)(福建卫健委)(甘肃卫健委)(山东卫健委)(河南卫健委)(浙江卫健委)(重庆卫健委)(台湾 CDC)(香港政府新闻网)(澳门政府网)