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

Резултати

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

Търсене: #its

当前筛选 #its清除筛选
PT风向旗

@Ptfxq · Post #107 · 06.02.2021 г., 12:22

#iTS 近日,iTS 官方邀请区如井喷一般,四天之内新增十个站点并持续增加中。图为部分官方邀请帖截图。 iTS 在诸多站点开放官方邀请渠道,如 bB / BHD / BTN / BRKS / CG / GGN / HDB / IMT / KG / LzTr / MAM / PTer / PTP / RED / THC / UHD (此名单不全) 并且升级容易,此站为 ratioless 站点,无分享率限制。

Hashtags

❗Объем торгов на ITS в июне составил $11,9 млн Объем торгов акциями и депозитарными расписками на международной торговой площадке ITS по итогам июня составил $11,9 млн. Общее количество сделок с акциями и депозитарными расписками международных компаний составило 2795 сделок. В топ-10 лидеров по объему торгов вошли акции Tesla, Marathon Digital Holdings, AMD, Coinbase Global, Exxon Mobil Corporation, Baidu, Virgin Galactic Holdings, MicroStrategy Incorporated, Li Auto, JD.com. Торги стартовали 7 июня 2023 года и с первого дня инвесторам стали доступны 1570 акций и депозитарных расписок компаний из США, Европы и Азии с первичным листингом на американских биржах NYSE и NASDAQ. #торги #ITS

PT风向旗

@Ptfxq · Post #139 · 28.02.2021 г., 10:36

#iTS 新增 #PTP 官方邀请 Shade 级别以上即可 pm 申请。 PT 风向旗已经发布了一些 iTS 官方邀请区的信息: https://t.me/Ptfxq/107 https://t.me/Ptfxq/111 PTP 已经关闭所有官方邀请渠道半年有余,令人意外的是,重新开放的第一个官方邀请是在 iTS。 值得一提的是,PTP 曾经遍地官窑的时候,都要求账户年龄满一年时间,而 iTS 的 Shade 等级仅需要半年。 截至目前,即使 PTP 的兄弟站 RED 都没有重新开放 PTP 官方邀请。并且按照帖子措辞来看,短期内 iTS 将会是唯一一个拥有 PTP 官方邀请渠道的站点。

Hashtags

PT风向旗

@Ptfxq · Post #243 · 04.09.2021 г., 16:19

#iTS 入驻 #HDC 邀请区。 iTS 作为一个跳板站,其邀请区有着众多联盟站官方邀,也不伐目前全网唯一开放的 PTP 官方邀请。 此外,据说加入 iTS 的压制组 Q0S 以后就可以直接获得 PTP 与 HDB 的入场券。

Hashtags

Social Justice Watch

@social_justice_watch · Post #17089 · 05.09.2022 г., 16:03

i get that people are more comfortable with defined rules and structure but i also think queer people lost when they started resorting to dictionary definitions for what labels mean the queer umbrella is meant to deviate from the norm of rigid boxes and definitions and to decide that lesbian means Only this, bi means Only this, etc, is directly contradicting what queer means. each and every label is going to have a unique meaning to the person using it and that is how it’s supposed to be. if you’re not comfortable with that…sorry? basically if someone tries to tell you you’re using a label wrong: [image description: a set of tumblr tags from @/elinaline, reading: “#there is a way to use a label wrong actually; #its when you force it on someone else”. end image description.] this is the only answer i’ll accept thank u everyone for your participation <3 https://genderkoolaid.tumblr.com/post/689713705918791680

Hashtags

Social Justice Watch

@social_justice_watch · Post #17075 · 05.09.2022 г., 12:49

i get that people are more comfortable with defined rules and structure but i also think queer people lost when they started resorting to dictionary definitions for what labels mean the queer umbrella is meant to deviate from the norm of rigid boxes and definitions and to decide that lesbian means Only this, bi means Only this, etc, is directly contradicting what queer means. each and every label is going to have a unique meaning to the person using it and that is how it’s supposed to be. if you’re not comfortable with that…sorry? basically if someone tries to tell you you’re using a label wrong: [image description: a set of tumblr tags from @/elinaline, reading: “#there is a way to use a label wrong actually; #its when you force it on someone else”. end image description.] this is the only answer i’ll accept thank u everyone for your participation <3 https://genderkoolaid.tumblr.com/post/689713705918791680

Hashtags

PT风向旗

@Ptfxq · Post #196 · 03.05.2021 г., 12:11

#iTS#FSC iTS 最近又新增了 FSC 的官方邀请,但申请方式不太一样。 正常的官方邀请申请流程是你去 PM 官邀发放者来获取邀请。但这次是官窑者觉得你适合进入 FSC 以后 PM 你。 关于 FSC,FSC 有一个巨大无比的论坛且 Tracker 近乎于 Ratioless,想要以不佳的分享率玩死几乎是不可能的事情。 关于资源,FSC 大部分内容都是 0day。

Hashtags