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

Търсене: #zilart

当前筛选 #zilart清除筛选
TASTE OF AFRICA🌞

@taste_of_africa · Post #327 · 20.04.2026 г., 09:11

TASTE OF AFRICA | Выставка в ЗИЛАРТ - «Предки, боги, жизнь»: читаем африканское искусство 🌍✨ Всем ценителям африканской культуры рекомендуем это погружение. Для каждого оно будет своим. https://zilartmuseum.ru/exhibitions/afrikanskoe-iskusstvo-predki-bogi-zhizn/ Небольшой обзор для вашего внимание: Африканская маска или скульптура в традиционных культурах, инструмент связи с миром предков, язык власти, памяти и знания. В выставке «Африканское искусство: предки, боги, жизнь» эта логика раскрывается как большой круг человеческого пути, от рождения до поминовения, и в этом есть особая красота и гармония. Вот 11 тем, через которые можно погрузиться в африканское искусство и увидеть, как оно работает 👇 Рождение / Предки 👣 «Рождение ребёнка, это возвращение предка». Поэтому образы материнства, куклы-обереги и фигурки близнецов предвещает продолжение рода и жизненную силу. Красота здесь сакральна: предков изображают в расцвете сил. Инициация / Посвящение 🔥 Посвящение во взрослость как символическая смерть и новое рождение. Маски «забирают и пожирают» подростков метафорически, оставляя на теле знаки и шрамы как память о переходе в новый статус. Семья / Брак 💍 Брак, союз общин, а ребёнка «растит вся деревня». В искусстве это видно в парных фигурах прародителей и в иерархии «отцов и детей» среди масок. Тайные общества 🔒 Маски принадлежат обществам, которые хранят знания, управляют обрядами, судят, воспитывают, сопровождают похороны. «Тайна» как закрытый язык и магические процедуры. Правитель / Власть 👑 Вождь и царь, политическая фигура, священный гарант благополучия. Отсюда парадные образы, регалии и «династические галереи» в бронзе и дереве. Война / Охота 🏹 Воин и охотник как идеал мужества. Но охота часто понимается как знание и философия леса. Фетиши-«охотники» и воинские маски, сила защиты и наказания. Звери / Люди 🐆 Животные в мифах, посредники между мирами. Тут маски могут собирать черты разных существ в одном «хтоническом» образе: задача - явить сверхъестественное. Престиж / Статус 💎 Искусство показывает «личность» через статус. Материалы тоже говорят: бронза, латунь, слоновая кость как знаки власти, вечности и права на память. Земля / Плодородие 🌾 Плодородие земли и продолжение рода есть единая система. Маски приходят на поля, благословляют посев и урожай, запускают круговорот жизни. Магия / Знание 🧿 Магия как практическое знание: лечение, предсказание, влияние на события. «Намоленные» предметы меняются внешне, патина и жертвенные следы фиксируют их ритуальную биографию. 11 Смерть / Память ⚱️ Похороны, переход и граница между мирами. Маски помогают душе не сбиться с пути к предкам и защищают живых. Тут «статуи тоже умирают»: предметы выводят из обряда, снимают патину, извлекают амулеты, а «силу» могут «пересадить» в новую вещь. Лучше один раз увидеть… 🗿Ритмическое путешествие продолжается - «Предки, боги, жизнь»🗿 #TasteOfAfrica#Африка#AfricanArt#АфриканскоеИскусство#Маски#Скульптура#Традиции#Культура#Наследие#Предки#Ритуалы#Инициация#ТайныеОбщества#Власть#Плодородие#Магия#Память#Выставка#Москва#ZILART#МузеиМосквы#АртГид#КудаПойти#Искусство