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

Резултати

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

Търсене: #icebreakerfrominside

当前筛选 #icebreakerfrominside清除筛选

⚛️Ресей - әлемдегі атомдық мұзжарғыш флоты бар жалғыз ел.«Росатом» мемлекеттік корпорациясы 2018 жылдан бастап Солтүстік теңіз жолының (СТЖ) инфрақұрылымдық операторы функцияларына ие және СТЖ-да кеме қатынасын ұйымдастыруға, инфрақұрылымдық объектілер салуға, навигациялық-гидрографиялық қамтамасыз етуге және ауыр арктикалық жағдайларда теңізде жүзу қауіпсіздігі жүйесіне жауап береді. Бүгінгі таңда Ресейдің атом мұзжарғыш флотының құрамына сегіз кеме кіреді. 🚢Оның ішінде жеті атом мұзжарғышы және ядролық энергетикалық қондырғысы бар бірегей көлік кемесі – «Севморпут» контейнер тасығыш кемесі бар. Біздің жаңа #icebreakerfrominside айдарымызда біз сізді ең жаңа 22220 мұзжарғыштарымен таныстырамыз. Бүгінгі таңда мұндай үш атом кемесі бар – «Арктика», «Сібір» және «Орал». 22220 жобасының тағы үш мұзжарғышы жасалу кезеңінде тұр. 🧊 2024 жылдың қаңтарында осы сериядағы «Ленинград» деп аталатын тағы бір әмбебап атомдық мұзжарғыш салынды.

⚛️Россия ― единственная страна в мире, обладающая атомным ледокольным флотом. Госкорпорация «Росатом» с 2018 года наделена функциями инфраструктурного оператора Северного морского пути (СМП) и отвечает за организацию судоходства на СМП, строительство инфраструктурных объектов, навигационно-гидрографическое обеспечение и систему безопасности мореплавания в тяжелых арктических условиях. На сегодняшний день в состав атомного ледокольного флота России входит восемь судов. Из них семь атомных ледоколов и одно уникальное транспортное судно с ядерной энергетической установкой – контейнеровоз «Севморпуть». 🧊В нашей новой рубрике #icebreakerfrominside мы познакомим вас с новейшими ледоколами 22220. На сегодняшний день таких атомоходов три – «Арктика», «Сибирь» и «Урал». Еще три ледокола проекта 22220 находятся на этапе строительства. 🚢В январе 2024 года состоялась закладка еще одного универсального атомного ледокола этой серии под названием «Ленинград».

#icebreakerfrominsideМашинное отделение и гребные электродвигатели ⭐️ Машинное отделение – это «сердце» 💗энергообеспечения ледокола. В этом помещении находятся два турбогенератора мощностью 36 МВт каждый и обслуживающие их системы. Турбогенераторы получают произведенный пар от ядерного реактора и за счет главного генератора вырабатывают электричество, которое подается на три главных электродвигателя. Электродвигатели, в свою очередь, приводят в движение три линии вала, которые передают вращение на гребные винты, расположенные в кормовой части судна. В качестве движителя на ледоколах проекта 22220 используются три винта фиксированного шага со съемными лопастями. Диаметр гребных четырехлопастных винтов – 6200 мм. Гребной винт работает в особо тяжелых условиях и практически недоступен для повседневного осмотра, поэтому его изготавливают из стали повышенного качества, предусматривая упрочнение его поверхности и защиту от коррозии. #icebreakerfrominside#Rosatom

#icebreakerfrominsideМашина бөлімшесі және еспелі электр қозғалтқыштары ⭐️ Машина бөлмесі мұзжарғышты энергиямен қамтамасыз етудің «жүрегі» болып табылады. Бұл бөлмеде әрқайсысының қуаты 36 МВт болатын екі турбогенератор және оларға қызмет көрсететін жүйелер бар. Турбогенераторлар өндірілген буды ядролық реактордан алады және негізгі генератор арқылы үш негізгі электр қозғалтқышына жеткізілетін электр энергиясын өндіреді. Электр қозғалтқыштары, өз кезегінде, айналымды кеменің артқы бөлігінде орналасқан ескіш бұрамаларға беретін біліктің үш желісін қозғалысқа келтіреді. 22220 жобалы мұзжарғыштар қозғалғыш ретінде алынбалы қалақтары бар үш тұрақты бұранданы пайдаланады. Төрт қалақшалы ескіш бұрамалардың диаметрі - 6200 мм. Ескіш бұранда ерекше ауыр жағдайларда жұмыс істейді және күнделікті қарау үшін іс жүзінде қол жетімсіз, сондықтан оны жоғары сапалы болаттан дайындайды, оның бетін нығайтуды және коррозиядан қорғауды көздейді.. #icebreakerfrominside#Rosatom

#icebreakerfrominside Атомный реактор😍 При строительстве универсальных атомных ледоколов проекта 22220 использовались инновационные решения, которые до этого не применялись на судах с ядерной энергетической установкой. Атомные ледоколы этой серии оснащены двумя энергетическими установками нового поколения РИТМ-200, не имеющими аналогов. Именно они делают ледоколы этой серии самыми мощными в мире на сегодняшний день. Основа энергетической установки РИТМ-200 — два парогенерирующих блока тепловой мощностью 175 МВт каждый. Отличительной особенностью реактора РИТМ-200 являются четыре парогенератора, интегрированные в корпус активной зоны. ⚙️Такая интегральная компоновка уменьшает материалоёмкость, габариты установки и повышает ее безопасность. #Rosatom#атомныеледоколы

🚢👌#icebreakerfrominside Корпус 22220 жобасының ядролық мұзжарғыштары қос, берік корпусқа ие, ол екі бөліктен тұрады - ішкі және сыртқы. Корпустың ішінде құрғақ бөліктер - цистерналар бар, олар тартылуды өзгертуге және теңіздерде де, таяз су аймақтарындағы сағаларда да жұмыс істеу үшін мүмкіндік береді. Қатаң жұмыс жағдайларына байланысты корпус пен қондырманың өзі үшін суыққа төзімді арнайы болат таңдалады. Үйкелісті азайту үшін корпус арнайы бояу қабатымен қапталған және пневматикалық жуу қолданылады. 22220 жобадағы мұзжарғыштың су тасымалы 33 540 тоннаны құрайды. 🔄🔄🔄 🚢👌#icebreakerfrominside Корпус Атомные ледоколы проекта 22220 имеют двойной, прочный корпус, он состоит из двух частей – внутренней и внешней. Внутри корпуса есть сухие отсеки - цистерны, которые позволяют менять осадку и работать как в морях, так и в устьях рек на мелководных участках. Исходя из суровых условий эксплуатации, для самого корпуса и надстройки выбирается особая холодустойчивая сталь. Для уменьшения трения корпус покрыт слоем специальной краски и используется пневмообмыв. Водоизмещение ледокола проекта 22220 составляет 33 540 тонн. #Rosatom#icebreaker

#icebreakerfrominside Атом реакторы😍 22220 жобасының әмбебап ядролық мұзжарғыштарын құру кезінде атом электр станциясы бар кемелерде бұрын қолданылмаған инновациялық шешімдер қолданылды. Бұл сериядағы атомдық мұзжарғыштар баламасы жоқ РИТМ-200 жаңа буынының екі энергетикалық қондырғысымен жабдықталған. Осы сериядағы мұзжарғыштары бүгінгі күні әлемдегі ең қуатты етеді. РИТМ-200 электрлық құастырушысы негізін әрқайсысының жылу қуаты 175 МВт болатын екі бу өндіретін қондырғыдан құрайды. РИТМ-200 реакторының айрықша ерекшелігі ядро корпусына біріктірілген төрт бу генераторы болып табылады. Бұл интегралды құрылым материалды тұтынуды, қондырғының өлшемдерін азайтады және оның қауіпсіздігін арттырады. #Rosatom#ядролықмұзжарғыштар#технологиялар