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 подобни публикации

Търсене: #watermark

当前筛选 #watermark清除筛选
BotsGram®

@botsgram_cu · Post #4996 · 05.05.2024 г., 03:17

¿Qué puede hacer este bot? @screenshotit_bot Éste es un robot generador de capturas de pantalla. Puede proporcionar capturas de pantalla o clips de muestra de sus archivos de video. Idioma: Inglés #videos#edicion#capturas#watermark (Visto en @BotsGram_Cu)

AppPie

@AppPie · Post #2423 · 26.05.2025 г., 04:03

#Apps Hidden Word: 基于Unicode的文本数字水印工具 🔗GitHub Hidden Word 是一个基于 Unicode 的文本数字水印工具,用于在文本内容中嵌入版权标记和元数据。 特点 - 版权保护:在文章中嵌入不可见水印,有效保护原创内容 - 元数据嵌入:在文本中安全地嵌入结构化信息,用于内容验证 - 来源追踪:通过嵌入的水印信息,可以验证内容的原始来源 - 跨平台支持:可在任何支持 Unicode 的平台上使用 - 网站集成:提供标准化的嵌入方案,可自动为网站内容添加水印 使用场景 - 内容创作者:为原创内容添加数字水印,保护知识产权 - 版权管理:为数字内容添加不可见的版权标识 - 内容验证:在公开文本中嵌入验证信息,确保内容完整性 - 信息溯源:识别和追踪数字内容的传播路径 快速开始 参考项目 README 开始使用。 许可证 MIT license。 #GitHub#OpenSource#Watermark#JavaScript 📮 频道 @AppPie

GitHub Trends

@githubtrending · Post #15241 · 22.10.2025 г., 12:00

#python#blind_watermark#image_processing#watermark#watermark_image You can add invisible watermarks to images using a Python tool based on DWT-DCT-SVD techniques, which hides your watermark securely without changing the image's appearance. This watermark can be embedded and later extracted even if the image is rotated, cropped, resized, or altered by noise or brightness changes. You can use it easily via command line or Python code, protecting your images from unauthorized use while keeping them visually unchanged. This helps prove ownership and maintain image authenticity without affecting quality or usability. The tool supports embedding text, images, or bit arrays as watermarks and works on Windows, Linux, and macOS. https://github.com/guofei9987/blind_watermark