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

Резултати

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

Търсене: #p

当前筛选 #p清除筛选

#P.M.逻辑训练 这本《P.M.逻辑训练》杂志提供了丰富多样的逻辑谜题,助您提升思维能力。 * 杂志包含数独、填字等多种经典题型,挑战您的逻辑推理。 * 内容涵盖数字、文字、图案等多种元素,激发您的创造力。 * 谜题难度各异,适合不同水平的读者,让您在解谜中锻炼大脑。 * 杂志还提供详细解答,助您理解解题思路,提高解题技巧。 * 适合喜欢逻辑推理和挑战的读者,帮助您在娱乐中提升思维能力。

Hashtags

Макс КомикадZе

@maxkomikadze · Post #7116 · 25.10.2025 г., 09:21

Дамы и господа! Я прошу Вас уделить 1 минуту и оставить голос в петиции 👉https://vk.com/petition#p=86419 По личной просьбе семьи пропавшего бойца, которые уже не первый месяц пытаются хоть что-то добиться. Я оставила свой голос, ибо тоже столкнулась с тем, что в/ч игнорирует запросы. Благодарю заранее каждого, кто не остался равнодушен.

Hashtags

Genshin Null

@GenshinNull · Post #5576 · 03.11.2023 г., 02:13

(1/2/3/4/5) @GenshinNull#p 4.2 任务剧情部分出场角色信息 丝柯克(Skirk) - 日文 CV: 能登麻美子 - 猜测为成女模型[1][2] - 身上有鱼一样的鳍 - 在 4.2 版本任务剧情中登场 - 视频片段来自版本 PV 魔女会·代号 N 「尼可」 (Nicole) - 全名: Nicole Reeyn (ニコ・リヤン) - 日文 CV: 丰口惠美 - 在 4.2 版本任务剧情中仅以声音形式出现

Hashtags

Genshin Null

@GenshinNull · Post #5119 · 14.06.2023 г., 19:09

(1/2) @GenshinNull#P 来自枫丹的异色瞳少年角色 这是非常早期的设计, 很可能发生变化. 图二在色彩饱和度上与实际配色有一定差别.

Hashtags

Genshin Null

@GenshinNull · Post #4903 · 28.03.2023 г., 07:59

(1/2) @GenshinNull#P 关于新稻妻角色外观 1. 右侧马尾垂至肩部(不是短发); 2. 发色接近黑色巧克力的颜色, 不是紫色; 3. 配色: 红色, 橙色, 黑色, 棕色和黄色.

Hashtags

Genshin Null

@GenshinNull · Post #4873 · 14.03.2023 г., 12:38

(1/2/3/4) @GenshinNull#P 我们会在 3.8 版本或之后(枫丹版本前)看到法尔伽(Varka)大团长, 枫丹发布后我们会更加了解他. 法尔伽看起来并不像个老爷爷, 很年轻, 没有胡子.

Hashtags

Genshin Null

@GenshinNull · Post #4660 · 05.02.2023 г., 13:31

(1/2/3) @GenshinNull#P 白术(Baizhu)与卡维(Kaveh)相关 白术 - 是辅助/副C - 元素战技可长按 - 元素战技能生成护盾 - 将某种属性转换为精通 - 元素战技与蛇有关 - (很可能改变)具有某种协同攻击 - 没有治疗能力 卡维 - 使用一个盒子进行普通攻击 - 元素爆发从盒子中召唤领域

Hashtags

Genshin Null

@GenshinNull · Post #4463 · 13.01.2023 г., 14:54

(1/2) @GenshinNull#P [存疑] 迪希雅技能天赋 迪希雅(Dehya)是输出型角色; 元素战技(E)能在后台对敌人造成火元素附着, 伤害基于攻击力; 元素爆发(Q)改变攻击模组(transfiguration/変身), 但与魈, 赛诺, 雷电将军都不同, 伤害基于攻击力; 固有天赋基于百分比生命值提高元素战技(E)和元素爆发(Q)对应比例的伤害.

Hashtags

吃瓜群众🍉

@VBHGYTI11 · Post #4323 · 12.12.2024 г., 17:30

美国联邦调查局(FBI)悬赏捉拿四川省成都市的无声信息技术公司的员工关天峰。 联邦调查局亦强调,據信关天峰目前居住在中國四川省,或访问过泰国曼谷并与之有关。 请各位扩散此资讯。如果你知道他在哪里,可以通过Signal或Telegram线上联络联邦调查局印第安納波利斯分局,或者在 :tips.fbi.gov 提交相关讯息(请用英文)。 印第安納波利斯分局的联络资讯: 电话:+1 317 792 1100 Signal::signal.me#p+13177921100 (免费) Telegram::+13177921100 (免费) 千万美元大奖等着你来拿!

Hashtags

123•••56
ПредишнаСтр. 1 от 6Следваща