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

Търсене: #chaliapine

当前筛选 #chaliapine清除筛选
PiaNinoNotovna

@ninonotovna · Post #18 · 24.03.2025 г., 15:27

#Tbilisi #Georgia #Chaliapine ВЫ НАМ НЕ ПОДХОДИТЕ! Ох, как часто приходилось слышать эти слова! Искала я в очередной раз работу, приехав из Франции после защиты там моей докторской диссертации в Университете Paris8. (На консерваторскую зарплату было не выжить). Выкладывала на всеобщее обозрение свои многочисленные, включая зарубежные, дипломы, резюме на четырёх языках с орденами/медалями… ⁃ Вы нам не подходите, говорила мне в очередном заведении гордая выпускница тьмутараканского Музыкального училища. ⁃ Почему? ⁃ У Вас опыта нет, отвечала она. Но впервые я услышала эту фразу на виниловой пластинке с Марией Мироновой и Александром Менакером - это родители Андрея Миронова, если кто не знает. А Мария Миронова была потрясающей харàктерной актрисой. Там была реприза: она изображала то ли артистку, то ли буфетчицу, отчаянно и нахраписто пытающуюся устроится на работу. ⁃ Вы нам не подходите! - орал Менакер. ⁃ А я Вам расскажу… Горький и Шаляпин держали экзамен на место хористов в Казани. Горького приняли… а Шаляпина - нет!!! Недалеко от меня в Тбилиси, в бывшем Немецком районе под названием «Люксембург», а в советское время - район улицы Плеханова (ныне проспект Агмашенебели, в честь грузинского Царя Давида Строителя), есть сад. Там в 1892 году голодный и юный Шаляпин пел для фланирующей мимо публики. Антреприза с которой он попал в Грузию распалась. Жена Директора сбежала то ли с баритоном, то ли с тенором. Он остался не у дел и пытался заработать на пропитание. Вокруг запахи еды… А он.. В общем, спел он, и тут некий господин (или госпожа, источники разнятся), обратил на него внимание. - Надо бы Вам учиться… 17 мая 1915 года Дирекция Тифлисского Музыкального училища пригласила на экзамен приехавшего с концертами в это время в Грузию Шаляпина. На ужине после экзамена Федор Иванович держал речь, которую завершил словами: ⁃ Я родился два раза.Я родился для жизни в Казани, а для музыки - в Тифлисе. А теперь фрагмент из моей французской статьи «Chaliapine en Georgie» («Шаляпин в Грузии»), опубликованной на французском языке в журнале Университета Сорбоннa «La Revue Russe» (№52, 2024): «Именно в этом Училище, ставшем позднее, уже в момент обретения Грузией независимости в 1917 году Консерваторией, и преподавал тогда бывший солист Большого Императорского театра Дмитрий Усатов - единственный педагог, у которого в 1892-1993 годах учился оперному вокалу Фёдор Шаляпин. Ко времени приезда Шаляпина Тифлис был чрезвычайно развитым в культурном отношении городом с театрами, музеями, учебными заведениями и широким слоем интернациональной интеллигенции и крупных меценатов. В этом городе на протяжении многих веков взаимодействовало множество культур и языков. По меткому замечанию его жителей, часто только во время проводов на кладбище становилось ясно, к какой конфессии или народу принадлежал тот или иной его житель. В этом городе с одинаковой силой любили и понимали классическую итальянскую и французскую оперу, русский городской романс и водевиль, творчество грузинских, армянских и азербайджанский народных певцов-ашугов. Грузия 19го начала 20 века это не только Родина грузинских поэтов-романтиков Важа Пшавела, Илии Чавчавадзе и Галактиона Табидзе, но и армянского народного поэта Саят Нова и русского поэта-авангардиста Владимира Маяковского. Сформировавшиеся в грузинской столице культурный «бульон» и традиционная для Грузии толерантность как нельзя лучше способствовал поддержке юных талантов самого разного национального и социального происхождения. Хорошим тоном в обществе считалась большая материальная поддержка культуры и искусства». Как раз один из тифлисских меценатов и основателей Отделения Русского Музыкального общества в Тифлисе Константин Алиханов и платил Шаляпину стипендию, которая позволила ему учиться у Усатова и не думать о работе в сомнительных антрепризах. В Тифлисе Шаляпин нашел Учителя, Мецената, познал первый успех, первый раз влюбился и расстался, пытался покончить с собой, начал карьеру в Оперном театре, отсюда уехал в Москву, приезжал много раз… Он любил этот город.