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

Резултати

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

Търсене: #freemasonry

当前筛选 #freemasonry清除筛选

Some news sources say that the price of internet has increased in some Muslim countries. Social networks and individual media have become an important tool to deal with the #Zionists. Because the state media is under the control of the #Jews. Official and government news agencies publish selected news in favor of the Zionists. But social networks publish real news. Individual media are putting pressure on Israel. They have increased the price of the Internet to reduce the activity of individual media. Every word and picture published against the Zionists will hit the body of #Illuminati and #Freemasonry like a bullet. https://t.me/YediotNewsChat

Абакуа — карибские «масоны» Кубы. Пожалуй, самым необычным явлением, которое подарила нам Куба, является инициатическое братство Абакуа, которое также называют афро-кубинским масонским орденом Карибали по месту происхождения. Абакуа или Карибали берет свое начало в Западной Африке, в тайном обществе Экпо (Экбе, Экбо пишут везде по разному), где поклонялись духу Экпе. Это общество было одним из многих подобных сообществ Африки. И, пожалуй, наименее кровожадным, имело уровни посвящения, большой интерес к обмену опытом с другими народами и торговле, отчего стало быстро смешиваться с масонством еще на африканском континенте. Также на эту традицию оказали влияние общества леопардов и крокодилов, о чем мы можем поговорить отдельно, как и о многочисленных кровавых африканских и карибских тайных обществах, среди которых особо выделяются женские. Если это интересно, напишите в комментариях. Несмотря на то, что Абакуа являются отдельным орденом и никоим образом не связаны с европейским масонством, по мере развития и роста этой традиции на Кубе многие абакуа стали масонами, как и члены иных афро-кубинских религиозных традиций, таких как вуду. Произошла взаимная интеграция: символов, практик, философии. Посвятительные братства Абакуа первоначально были распространены среди чернокожих рабов, которых завозили на Кубу плантаторы. Братство служило, как инструмент для развития торговли между своими членами, налаживания связей и сыграло свою роль в борьбе за освобождение Кубы от Испании. Масоны Кубы очень сочувственно относились к рабам и вовлекли движение Абакуа в борьбу с испанцами на ранних этапах становления республиканского движения, тесно переплетенного с масонством. Многие масонские лидеры освобождали своих рабов, занимались среди них просветительской и социальной работой. В обрядах и пантеоне Абакуа присутствует странная смесь из католицизма, масонства и различных африканских традиций, известных как Экпе, Нгбе и Угбе. Леопард, наравне с Исусом и крестами, является символом духовной власти в общине. Обряд инициации повторяет масонскую, естественно, с африканским и католическим колоритом. Посвященный объявляется Hombre, что по-русски будет звучать, как "настоящий мужик". Hombre — это тот, кто воплощает в себе достоинство человека, доброго труженика, верного брата, весельчака и борца с несправедливостью, соблюдающего моральный кодекс, установленный предками, основателями Абакуа. Членов общины, называют также Ньяниго. Они должны быть хорошими отцами, хорошими сыновьями, братьями и друзьями. Несмотря на то, что Абакуа не входит официально в регулярное масонство и не признано большинством европейских масонов, на Кубе члены Абакуа срослись с масонством и являются своего рода афро-кубинскими ложами, а нынешний Великий Мастер Великой Ложи Кубы, работающей по ДПШУ, является также видным членом Абакуа. На фото: костюмы жрецов Абакуа из кубинского национального музея, алтарь в храме Абакуа и рисунок церемонии посвящения. #абакуа#abakua#freemasonry#кубинскоемасонство#карибскоемасонство#афрокарибы