Почему я люблю языки с сильной системой типов, проверяемой статическим анализом кода — хорошо написанная программа является своей собственной спецификацией и позволяет выражать через язык программирования законы существования предметной области.
Когда-то давно я писал на ActionScript. Там была система типов, но вот десериализация JSON'ов по-умолчанию была в какой-то общий Object, к полям которого нужно было обращаться ["по_строковому_имени"]. В один момент мне потребовалось написать что-то на C#, который я совсем не знал, я стал гуглить, как десериализовать JSON, и с удивлением обнаружил кучу советов заранее объявить класс со всеми нужными полями и десериализовать в него.
"Какой ужас!", — подумал я тогда, — "Это же дико неудобно! А если я не знаю полей JSON? А если их много? Отвратительный язык!"
Теперь то я прекрасно понимаю, что JSON это контракт, и что правильная десериализация только такая и должна быть, и что в хорошем API в одном поле никогда не бывает данных принципиально разных типов, и так далее.
Нет, если вы набиваете вечерами пет-проект или сидите бессонную ночь на хакатоне, нет ничего плохого в том, чтобы взять простой язык с динамическими типами вроде JavaScript или Python, не требующий описывать данные. Но вот в энтерпрайзе, особенно когда над одним проектом работает много людей (а бывает это очень часто) — хорошее использование системы типов убережёт разработчиков от огромного количества ошибок, будет бить их по рукам, когда они пытаются сделать что-то не то, и будет подсказывать, когда они не уверены в чём-то.
С помощью статической типизации можно на уровне кода обозначить правила, по которым ведёт себя предметная область вашей программы в реальном мире. Разработчику не только будет сложно их нарушить, но он ещё и станет узнавать какие-то вещи, которые мог не знать раньше.
Например, если мы делаем медицинскую CRM, и больница заводит новых пациентов только тогда, когда знает их группу крови, мы можем объявить тип "Пациент" (или, если точнее, "Карта пациента") и запретить создавать экземпляры этого типа, не передав в конструктор группу крови (которая, в свою очередь, тоже является типом, вероятнее всего ValueObject'ом). Если новый программист пришёл в проект, он, во-первых, не сможет записать в БД некорректную карту пациента. Понятно, мы не учитываем случаи, когда новый программист переделывает модели предметной области — это будет хорошо видно на кодревью. А, во-вторых, даже если ему никто не сказал, что пациенты должны быть с группой крови, он узнает это из кода. И уже будет понимать, что в тех процессах реальной жизни, которые он описывает кодом, карта пациента создаётся только при наличии группы крови. А, значит, нужно искать какой-то способ сначала эту группу крови получить, и только потом создавать карту. Программирование моделирует реальный процесс.
В настоящей работе даже на языках с типами, конечно, без должного контроля можно написать что угодно. Нужна управленческая воля, компетентность руководства, понимание опасности техдолга, в идеале отдельные должности для архитекторов, опытные лиды и старшие разработчики. Но когда всё это есть, можно отсекать много проблем ещё на старте и проще погружать новичков.
#dev
🆕We just released TokenPocket's New Version on Android! 🔺1.8.7🔺
🔵 Support zksync Era∎ MultiSig Wallet.
🔵 Support device environment safety detection.
🔵 Add password verification for wallet migration.
🔵 Support #Persian(Farsi).
🔵 Optimize users' experience.
👉https://www.tokenpocket.pro/
【Details】https://twitter.com/TokenPocket_TP/status/1706954438705869200
【Powered By】Crypto Box
Подвесной мост в Мешкин-Шахр находится в 85 км к северо-западу от Ардебиля на северо-западе Ирана. Это самый высокий подвесной мост на Ближнем Востоке. Мост имеет 325 м в длину и 2 м в ширину, и 80 м высоту.
#Нозари#Iran#Persian#Иран
Иран - тонкости туризма
Знали ли вы что…
Новая порция интересных фактов об Иране.
📂 На территории Ирана находится соляная пустыня, имеющая площадь более 77 тыс.кв.км. Это одно из последних естественных мест обитания азиатского гепарда.
📂 Несмотря на суровые погодные условия Иран может гордиться очень разнообразным животным миром. В водах Персидского залива обитает более 200 видов рыб, а также многочисленные виды ракообразных. В горах можно встретить медведей. Степные и горные районы населены газелями, антилопами, полосатыми гиенами, шакалами, волками и гепардами.
📂 Россия в 2024 году импортировала из Ирана 20 тысяч тонн рыбы и морепродуктов на сумму $65 млн. Оба показателя на 25% превышают данные за 2023 год (подсчитал аналитический центр Рыбного союза).
📂 В Иране только одна судоходная река - Карун (перс. کارون).
📂 В Иране есть горячие источники. Как на юге страны (трасса Бендер- Аббас - Сирджан в горной долине Гено), так и на севере Ирана. На севере самые известные термальные источники - Сарейн. Они расположены в провинции Ардебиль. В Сарейне находится девять горячих источников. «Гавмешь Голи» - самый горячий из них. Вода в нём достигает 67с. А в терме «Карасу» температура составляет + 41с.
*на фотографии минеральный источник Гено.
#Иран#Нозари#Iran#Persian
Иран — тонкости туризма
Танцующие минареты в Исфахане
Эти минареты являются частью мечети Менар-Джонбан, что в переводе означает «качающиеся минареты». Этот танец архитектурный феномен и является загадкой уже много веков, поскольку минареты качаются от толчка, который на них производят. Толкают один, а качаются оба. Точный механизм, заставляющий минареты раскачиваться, является предметом споров и изучения.
По одной из версий, у кирпичей был особый состав, и они через какое-то время после постройки усыпальницы стали эластичными. По другой - инженеры в целях защиты зданий от землетрясений прокладывали между кирпичами деревянные брусочки, благодаря чему постройка становилась гибкой. Однозначного ответа так и нет.
#Исфахан#Iran#Persian#Нозари
Иран - тонкости туризма
💙ИРАН
В защиту пляжному Ирану надо сказать про больший выбор развлечений, отличного качества и по доступной цене. Аттракционы "парашют ", " таблетка" и "банан", сап, кайтсёрфинг, вейкбординг, гидроциклы и параплан, #дайвинг и батискаф. Прогулки на яхтах и катерах.
А ещё кристально чистые воды и белоснежный, мелкий песок. Вкусная еда 😋, отличный шоппинг и возможность увидеть новую страну.
Добро пожаловать на Киш!
#Киш#Иран#Iran#Persian
Иран — тонкости туризма
📌‼️‼️❗️❗️‼️❗️‼️❗️‼️❗️‼️📌ОБЕЩАННЫЙ ПОСТ С СЮРПРИЗОМ 📦для тех, кто смотрел интервью в предыдущем посте.
Ответьте на следующие вопросы! (ОТКРЫВАЙТЕ ВОПРОСЫ ТОЛЬКО ПОСЛЕ ПРОСМОТРА ИНТЕРВЬЮ)
1) По какому случаю это интервью?
2) Какая песня звучит в начале интервью?
3) Что входит в завтрак Моина?
4) Что он предпочитает и з напитков: чай или кофе?
5) Занимается ли спортом и сколько лет?
6) Любил ли животных?
7) Какой у него любимый цветок?
8) Какой он по счету ребенок в семье?
9) Как называют … по счету ребенка в Иране, и что это означает?
10) Что его радует?
11) Что его огорчает?
12) Сколько у него друзей?
13) Женат он или холост?
14) По какой причине распался его первый брак?
15) Кем бы Моин стал, если б не был певцом?
16) В каком году и куда он уехал из Ирана?
17) В каком возрасте и где состоялось первое выступление Моина?
18) Песню какого певца Моин исполнил впервые?
19) Как назывался первый альбом Моина?
20) Сколько всего альбомов в его дискографии?
21) На каком инструменте играет Моин?
22) Сколько часов в день Моин работает?
23) Собирается ли Моин на пенсию?
24) Волнуется ли он перед концертом?
25) Какой слух о нем больше всего понравился Моину и почему?
26) Почему Моин все время носит солнцезащитные очки?
27) Из какого города Моин родом?
28) Какой был последний вопрос?
ВНИМАНИЕ: а теперь сюрприз😊
🎁Первые 3 человека, поставившие «лайк» под этим и предыдущим постом, написавшие комментарии и ответы на вопросы до 15 часов 17 февраля 2024 получат от меня в подарок 🎁 1) 30 минутную консультацию, 2) еще один подарок (сохраним интригу!🙅🏻♀️), о котором сообщу позже😊
✍️Подписывайтесь на мои каналы
https://t.me/farsi_shirin
https://vk.com/persia.iran
https://dzen.ru/id/farsishirin
https://farsi-shirin.online
🌈 Если данная тема была вам интересна или полезна, пожалуйста, поставьте «лайк», и отметьте это в комментарии, это придает смысл моей работе🙏 Благодарю! #فارسی#farsi_shirin#учимперсидский#интересное#интервью#فارسی#persian
Дорогие подписчики! Сегодня предлагаю вам нетривиальное задание:)
Смотрите и слушайте интервью с Моином💥🎤.
‼️Напишите обязательно, все ли вы поняли, понравилось ли это интервью и почему?☑️
В следующем посте будет задание с сюрпризом😊
✍️Подписывайтесь на мои каналы
https://t.me/farsi_shirin
https://vk.com/persia.iran
https://dzen.ru/id/farsishirin
https://farsi-shirin.online
🌈 Если данная тема была вам интересна или полезна, пожалуйста, поставьте «лайк», и отметьте это в комментарии, это придает смысл моей работе🙏 Благодарю! #فارسی#farsi_shirin#учимперсидский#интересное#интервью#فارسی#persian
☔А почему иранцы так рады дождям?
Река Зайендеруд сильно обмелела. Виной тому капризы природы и люди. Воды реки начали перенаправить в засушливую провинцию Йезд. Йезд, столица одноименной провинции, — это фактически город в пустыне, расположенный в 250 км к востоку от Исфахана. Йезд — это прежде всего месторождения железной руды и производство стали, тяжёлая промышленность, которая требует много воды.
#Иран#Исфахан#Iran#Persian#НозариИран — тонкости туризма
🆕We just released TP Wallet's New Version on iOS! 🔺2.1.5🔺
🔵Market page natively integrates Transit Swap. TransitFinance
🔵 Support WalletConnect V2 on trondao.
🔵 Support Address Book feature.
🔵 Support Reset App.
🔵 Support #BTC transaction acceleration.
🔵 Support #Urdu, #Arabic, and #Persian(Farsi) languages.
👉https://tokenpocket.pro
【Details】https://twitter.com/TokenPocket_TP/status/1712119624001863789
【Powered By】Crypto Box
Елка Хочу рассказать вам про иранский Новый год, который называется Новруз. В этом году Новруз празднуют 21 марта.
Новруз один из самых людимых празников у иранцев. Праздники они отмечают ярко, шумно и большим коливом вкусностей и символов. Расскажу вам о Рамадане, Ялде и Новрузе.
И первым будет Новруз который семимильными шагами приближается. Новруз означает «Новый день». Этот новый день, в который начинается новый год, традиционно точное астрономическое начало весны. Иранцы считают это началом года. Точная секунда называется «Saal Tahvil». Новруз с его «уникальными иранскими особенностями» отмечается более 3000 лет и глубоко укоренен в ритуалах и традициях зороастрийцев (это была религия древней Персии до появления ислама в VII веке). Из всех персидских национальных праздников празднование Нового года является самым важным и самым ярким. Этот праздник воплощает в себе богатство древних обрядов и обычаев. Он символизирует преемственность древней персидской культуры, которая пережила так много невзгод.
Возрождением природы Новруз всегда начинается в первый день весны, отмеченный весенним равноденствием, или Тахвилем. В этот день, который может попадать на 20 -21 марта, солнце пересекает небесный экватор.
Готовиться к Новрузу иранцы начинают задолго до наступления Нового года. Последние дни уходящего года проходят под знаком великой уборки, называемой здесь ханетакани. Причём чистоту и порядок иранцы наводят не только у себя дома: они трудолюбиво чистят и моют улицы, различные уголки города. Накануне наступления последней среды старого года иранцы жгут костры и распевают песни. Повсюду проходят шествия с факелами, которые заканчиваются у реки, где народ начинает праздновать, прыгать через огни костров и купаться.
Традиционный новогодний стол в Иране — «Хафт-Син» — обязательно включает семь блюд, первая буква в названии которых — «Син». Сабзех — чечевичные или пшеничные ростки, как символ возрождения; секке — монеты; сиб — яблоко, символизирующее здоровье и красоту; сир — целебный чеснок; сумах — размолотые ягоды растения сумах, символ рассвета; серкех — уксус, как знак терпения и мудрости. Санджит (маслина) - символ мудрости и призыв к разуму. На столе также непременно присутствуют Коран и множество свечей. Могут быть и другие символ в дополнение к обязательным: зеркала, золотые рыбки, крашенные яйца, живые цветы.
После того, как Новый год наступил, иранцы начинают по традиции ходить в гости друг к другу, к родственникам и друзьям, дарить подарки. Новруз празднуют 13 дней, это официальные выходные дни.
#Новруз#Иран#Iran#Persian#Нозари
Иран — тонкости туризма
❓Часто задаваемые вопросы
Почему стоит купить тур в Иран именно у нас?
✅ У нас индивидуальный подход к каждой группе. И если по каким-то причинам полная группа не собралась, тур состоится. Без ущерба качеству вашего отдыха
✅ Мы делаем индивидуальные туры любой сложности и протяжённости. Под ваши даты и пожелания
✅ В групповых турах никаких подселений без вашего согласия. Вы сами решаете, в каком номере вам жить: одноместное или двухместное размещение. Все отели с удобствами в номере.
✅ Все прямые рейсы из Тегерана в Москву - ночные. Мы размещаем своих туристов в отеле при воздушной гавани. Вы можете отдыхать в номере перед ночным вылетом, а не ожидать вылета на чемоданах в аэропорту.
Туры по программе ВИП дороже. Почему? Чем он отличается?
✅ В программе ВИП повышенный класс микроавтобусов. Для Ирана это большое дело! Иномарки в стране стоят огромные деньги. Раза в три- четыре дороже, чем в России. Соответственно, и аренда такого микрика - дорогое удовольствие. Технически исправный транспорт и свежий, отдохнувший водитель - залог вашей безопасности на дороге. На этом не стоит экономить в любом туре.
✅ Отели в программе ВИП - это отели категории 5🌟. Мы выбираем для вашего размещения самые интересные и комфортные отели на протяжении всего маршрута тура.
✅ В тур ВИП включено посещение высокогорной деревни Абьяне.
✅ В ВИП турах только малые группы 5-7 человек. В таком формате гид видит и слышит каждого участника путешествия. Это совершенно иной формат отдыха. Это практически индивидуальный тур по цене группового.
Кухня Ирана острая?
✅ Иранская кухня пряная, но не острая. Практически все продукты знакомы.
✅ Касательно питания в туре, то тут подход единый: Иран - страна еды и надо попробовать все. Что в групповых турах "Стандарт" что в турах "ВИП" питание двухразовое:
завтрак и обед. С обязательным присутствием блюд национальной кухни.
Быть на связи
✅ Вы всегда на связи. Нашим туристам мы оформляем сим-карты.
Наш сайт
https://profileiranrus.com
#Иран#Нозари#Ирантур#Ирангид#Iran#Persian
Иран — тонкости туризма