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

Резултати

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

Търсене: #cceis

当前筛选 #cceis清除筛选

1 июля 2021 г. в онлайн-формате прошел ситуационный анализ «Устойчивое развитие Арктической зоны Российской Федерации (АЗ РФ): международное сотрудничество и национальные задачи». Его организаторами выступили Российский союз промышленников и предпринимателей (РСПП) и Центр комплексных европейских и международных исследований Национального исследовательского университета «Высшая школа экономики» (ЦКЕМИ НИУ ВШЭ). Устойчивое и динамичное развитие Арктической зоны Российской Федерации является одним из ключевых национальных приоритетов России, тесно связанным с выстраиванием эффективного и конструктивного сотрудничества с международными партнерами на двусторонней и многосторонней основе, в таких институтах как Арктический и Арктический экономический советы. В этой связи очень важным является участие интересов делового сообщества как в разработке ключевых целей арктического сотрудничества, так и их претворении в жизнь. Решение данной задачи оказалось в фокусе участников ситуационного анализа. В мероприятии приняли участие представители российских компаний, научно-экспертного сообщества, федеральных органов исполнительной власти, рабочих органов и региональных отделений РСПП. Модератором мероприятия выступила Анастасия Лихачева, директор ЦКЕМИ НИУ ВШЭ. В рамках мероприятия состоялось две сессии. Первая сессия была посвящена оценке рисков и возможностей для российского бизнеса, деловому измерению международного сотрудничества в Арктике, в частности российскому председательству в АС и АЭС. В рамках второй сессии участники обсудили постановку конкретных задач и рекомендаций по использованию возможностей и снижению рисков для обеспечения устойчивого и динамичного развития АЗ РФ. Участники дискуссии представили ряд предложений по повышению эффективности сотрудничества в таких секторах как АПК, добывающая и обрабатывающая промышленность, транспорт, энергетика и цифровизация. Было отмечено, что положительный опыт и проекты российского бизнеса в области устойчивого развития в регионе нередко неизвестны зарубежным и отечественным партнерам, несмотря на серьезный потенциал для тиражирования лучших практик и укрепления экономического измерения «мягкой силы». Кроме того, развитию региона и наращиванию участия в нем делового сообщества будет способствовать расширение механизмов финансовой и нефинансовой поддержки. При этом обеспечение устойчивого характера развития должно осуществляться не только посредством внедрения наиболее современных передовых технологий, замещающих традиционные, но и путем повышения эффективности и модернизации использования последних. Также участниками ситуационного анализа была представлена идея подготовки Синей книги устойчивого развития в Арктике, посвященной вкладу российского бизнеса и содержащей информацию о лучших практиках и подходах к устойчивому развитию региона. По итогам ситуационного анализа на основе его результатов будет подготовлен доклад с предложениями по содержательному наполнению повестки дня российского председательства в АЭС в 2021-2023 г. Источник на странице Управления международного многостороннего сотрудничества и интеграции Российского союза промышленников и предпринимателей (РСПП): http://рспп.рф/events/news/predlozheniya-rossiyskogo-biznesa-po-razvitiyu-sotrudnichestva-v-arktike-obsudili-na-situatsionnom-a-60e3077896e07/ #РСПП#АЭС#ВШЭ#ЦКЕМИ#Арктика#RSPP#AEC#HSE#CCEIS