Почему я люблю языки с сильной системой типов, проверяемой статическим анализом кода — хорошо написанная программа является своей собственной спецификацией и позволяет выражать через язык программирования законы существования предметной области.
Когда-то давно я писал на ActionScript. Там была система типов, но вот десериализация JSON'ов по-умолчанию была в какой-то общий Object, к полям которого нужно было обращаться ["по_строковому_имени"]. В один момент мне потребовалось написать что-то на C#, который я совсем не знал, я стал гуглить, как десериализовать JSON, и с удивлением обнаружил кучу советов заранее объявить класс со всеми нужными полями и десериализовать в него.
"Какой ужас!", — подумал я тогда, — "Это же дико неудобно! А если я не знаю полей JSON? А если их много? Отвратительный язык!"
Теперь то я прекрасно понимаю, что JSON это контракт, и что правильная десериализация только такая и должна быть, и что в хорошем API в одном поле никогда не бывает данных принципиально разных типов, и так далее.
Нет, если вы набиваете вечерами пет-проект или сидите бессонную ночь на хакатоне, нет ничего плохого в том, чтобы взять простой язык с динамическими типами вроде JavaScript или Python, не требующий описывать данные. Но вот в энтерпрайзе, особенно когда над одним проектом работает много людей (а бывает это очень часто) — хорошее использование системы типов убережёт разработчиков от огромного количества ошибок, будет бить их по рукам, когда они пытаются сделать что-то не то, и будет подсказывать, когда они не уверены в чём-то.
С помощью статической типизации можно на уровне кода обозначить правила, по которым ведёт себя предметная область вашей программы в реальном мире. Разработчику не только будет сложно их нарушить, но он ещё и станет узнавать какие-то вещи, которые мог не знать раньше.
Например, если мы делаем медицинскую CRM, и больница заводит новых пациентов только тогда, когда знает их группу крови, мы можем объявить тип "Пациент" (или, если точнее, "Карта пациента") и запретить создавать экземпляры этого типа, не передав в конструктор группу крови (которая, в свою очередь, тоже является типом, вероятнее всего ValueObject'ом). Если новый программист пришёл в проект, он, во-первых, не сможет записать в БД некорректную карту пациента. Понятно, мы не учитываем случаи, когда новый программист переделывает модели предметной области — это будет хорошо видно на кодревью. А, во-вторых, даже если ему никто не сказал, что пациенты должны быть с группой крови, он узнает это из кода. И уже будет понимать, что в тех процессах реальной жизни, которые он описывает кодом, карта пациента создаётся только при наличии группы крови. А, значит, нужно искать какой-то способ сначала эту группу крови получить, и только потом создавать карту. Программирование моделирует реальный процесс.
В настоящей работе даже на языках с типами, конечно, без должного контроля можно написать что угодно. Нужна управленческая воля, компетентность руководства, понимание опасности техдолга, в идеале отдельные должности для архитекторов, опытные лиды и старшие разработчики. Но когда всё это есть, можно отсекать много проблем ещё на старте и проще погружать новичков.
#dev
⏺Le journaliste de #RT international, Ali Rida, fait état d'une détérioration rapide de la situation dans le sud du Liban, notamment dans la région de Nabatieh.
Selon lui, l’armée israélienne a menacé de frapper plusieurs villages, dont Harouf et Jibchit, obligeant les équipes sur place à se mettre à l’abri.
RT en français • Osez questionner !
⏺Le journaliste de #RT international, Ali Rida, fait état d'une détérioration rapide de la situation dans le sud du Liban, notamment dans la région de Nabatieh.
Selon lui, l’armée israélienne a menacé de frapper plusieurs villages, dont Harouf et Jibchit, obligeant les équipes sur place à se mettre à l’abri.
RT en français • Osez questionner !
💚 Margarita Simonian, rédactrice en chef de #RT et de l'agence de presse internationale Rossia Segodnia, adresse ses vœux aux soldats russes pour l’année 2026.
RT en français • Osez questionner !
У меня вопрос к журналистам #RT , друзья, а вам не пох на то, что говорит этот патлатый?
Вас читают миллионы. Его - ну пара тысяч. Зачем вы доносите его точку зрения до масс?! Без вас о нем бы давно забыли, как и о Лазаревой, Пугачевой, Галкине и иных душой уродливых существ.
https://t.me/rt_russian/195363
Телеканал «Россия сегодня» празднует 20-летие. Выступая на торжестве в Большом театре, В. Путин назвал RT «глобальным брендом, о котором знают сегодня во всем мире». С юбилеем #RT!
💚🇮🇳RT lance une nouvelle chaîne destinée au public indien
Ce 5 décembre, #RT lance la diffusion de sa chaîne d'information dédiée au public indien : RT India. La nouvelle chaîne sera basée dans la capitale indienne, New Delhi. Notre envoyé spécial Antoine Cléraux a visité la salle de rédaction de RT India.
RT en français • Osez questionner !
📢RT Academy's first international online course for journalists has come to an end. More than 300 students from #ASEAN and South Asia region boosted their skills of TV & Online Journalism and learned about the news making pipeline from producing stage to post-production.
🟩 Only around 200 of them managed to pass through all the tasks to receive #RT Academy certificates and continue their media journey with the team.
🟩 We are happy that our ASEAN friends took an active part in the RT Academy course. 65 students came from Indonesia 🇮🇩, 33 from Myanmar 🇲🇲, 8 from Vietnam 🇻🇳, 20 from Malaysia 🇲🇾, 10 from Singapore 🇸🇬, 4 from Thailand 🇹🇭, 1 from Brunei 🇧🇳, 5 were representing the Philippines 🇵🇭, 9 participants were from Cambodia 🇰🇭, 1 from Laos 🇱🇦 and 1 student was from Timor-Leste 🇹🇱. Another large group represented South Asian nations.
🟩 As their final assignment, the students prepared real TV news reports, with topics ranging from breaking news to economy and regional politics.
🟩 In 2023 RT International chose Jakarta 🇮🇩 - the host city of the ASEAN Headquarters, as the location for its representative office in the region. In September 2023, Indonesia also became the destination for RT's first international educational program - 2-day seminars on TV journalism, which were held in Jakarta, with 75 journalism students, TV, radio and newspaper journalists in attendance.
❗️Africa and China 🇨🇳 are the next planned destinations of the RT's educational schedule in the fall оf 2024.
#личное
Сегодня свои 20 лет отмечает телеканал #RT.
Я не знаю, сколько Россия тратит на этот телеканал, но я знаю, что каждый рубль, который идет на них сохраняет нам миллионы рублей, которые мы тратили бы, не будь у нас этой мягкой силы. Этой работы с внешними обществами. Этой сложной, выстроенной на эмоциях и фактах пропаганды позитивного образа каждого из нас.
От души поздравляю всех причастных к этой работе!
📢RT Academy's first international online course for journalists has come to an end. More than 300 students from #ASEAN and South Asia region boosted their skills of TV & Online Journalism and learned about the news making pipeline from producing stage to post-production.
🟩 Only around 200 of them managed to pass through all the tasks to receive #RT Academy certificates and continue their media journey with the team.
🟩 We are happy that our ASEAN friends took an active part in the RT Academy course. 65 students came from Indonesia 🇮🇩, 33 from Myanmar 🇲🇲, 8 from Vietnam 🇻🇳, 20 from Malaysia 🇲🇾, 10 from Singapore 🇸🇬, 4 from Thailand 🇹🇭, 1 from Brunei 🇧🇳, 5 were representing the Philippines 🇵🇭, 9 participants were from Cambodia 🇰🇭, 1 from Laos 🇱🇦 and 1 student was from Timor-Leste 🇹🇱. Another large group represented South Asian nations.
🟩 As their final assignment, the students prepared real TV news reports, with topics ranging from breaking news to economy and regional politics.
🟩 In 2023 RT International chose Jakarta 🇮🇩 - the host city of the ASEAN Headquarters, as the location for its representative office in the region. In September 2023, Indonesia also became the destination for RT's first international educational program - 2-day seminars on TV journalism, which were held in Jakarta, with 75 journalism students, TV, radio and newspaper journalists in attendance.
❗️Africa and China 🇨🇳 are the next planned destinations of the RT's educational schedule in the fall оf 2024.
🦠Les plus grands virus ont été découverts dans le pergélisol, et nombre d'entre eux sont inoffensifs pour l'homme.
Le biologiste moléculaire Piotr Tchoumakov l'a expliqué lors d'un entretien avec #RT. Parmi les virus découverts, certains avaient vécu dans des amibes pendant 40 000 ans :
« Ni chez l'homme, ni chez le mammouth, mais dans les amibes. Ils ne présentent manifestement aucun danger », a précisé le scientifique.
Сe membre de l'Académie des sciences de #Russie a souligné que le danger le plus important ne provient pas du pergélisol, mais des nécropoles :
« Par exemple, là où y a eu une épidémie de peste, des gens ont été enterrés… Mais on peut le détecter assez rapidement et déterminer si des mesures peuvent être prises. »
RT en français • Osez questionner !
🎉Поздравляем телеканал RT с 20-летием! Этот юбилей — важная веха в истории проекта, который за два десятилетия стал не только значимым источником информации, но и платформой для диалога между культурами и народами.
Ваш профессионализм, стремление к объективности и высокие журналистские стандарты сделали RT узнаваемым брендом на международной арене. Вы успешно представляете Россию, демонстрируя многообразие мнений и взглядов, а также способствуя укреплению связей между странами.
🫥 Благодаря нашим совместным инициативам мы смогли донести до широкой аудитории уникальные истории, культуру и достижения России!
Желаем команде RT успехов, творческих свершений и новых достижений! Пусть каждый день работы приносит вдохновение и радость, а ваш голос продолжает звучать громко и уверенно в мире!
#Россия#RT