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

Резултати

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

Търсене: #deepwater

当前筛选 #deepwater清除筛选

🚢Astro Offshore входит в сегмент ультра-глубоководных работ с судном "Astro Atlas". Дубайская Astro Offshore (входит в группу Adani Group) расширила флот, приобретя судно типа MPSV "Energy Savannah" (2021 г. постройки), которое будет переименовано в "Astro Atlas". "Astro Atlas" - стало крупнейшим во флоте компании и открывает доступ к сегменту ультра-глубоководных операций. Судно длиной 97 метров оснащено системой DP2, краном AHC грузоподъемностью 150 тонн, moonpool и рассчитано на размещение до 100 человек. Судно будет работать по чартеру с Oceaneering International, выполняя задачи в области подводных работ — от строительства и монтажа до обслуживания подводной инфраструктуры. С технической точки зрения "Astro Atlas" способно работать на глубинах свыше 3000*** метров, что значительно расширяет операционные возможности компании и позволяет участвовать в более сложных и капиталоемких проектах. С отраслевой точки зрения сделка отражает растущий спрос на высокотехнологичный офшорный флот в сегменте глубоководных работ. Выход **Astro Offshore в этот рынок подчеркивает тренд на расширение географии операций и усиление конкуренции за проекты с высокой добавленной стоимостью. Дополнительно партнерство с Oceaneering демонстрирует важность кооперации между владельцами флота и технологическими подрядчиками для эффективной реализации сложных офшорных проектов. 📌Astro Offshore LLC — основана в 2019 году, частная офшорная компания, входит в индийский конгломерат Adani Group, принадлежащий семье Адани. #offshore#subsea#shipping#deepwater#energy

🚢SLB получила контракты на глубоководное бурение в Индонезии. Международная сервисная компания SLB (бывшая Schlumberger) заключила несколько контрактов с Mubadala Energy на оказание буровых и скважинных услуг в рамках проекта Tangkuloв Андаманском море (Индонезия). Соглашение охватывает полный цикл интегрированных услуг: направленное бурение, буровые растворы, цементирование, каротаж и испытания скважин. Проект предполагает использование технологий SLB для глубоководных операций, включая системы мониторинга в реальном времени, направленные на снижение операционных рисков и оптимизацию размещения скважин. Первый газ на месторождении планируется до конца 2028 года. Для Mubadala Energy - проект Tangkulo является ключевым активом в портфеле Юго-Восточной Азии и стратегическим элементом расширения газового бизнеса. 📌SLB (Schlumberger) основана в 1926 году и является одной из крупнейших в мире нефтесервисных компаний. Компания публичная (NYSE); капитал распределён между институциональными и частными инвесторами. #offshore#deepwater#Indonesia#oilfieldservices#SLB

🚢Shell запускает буровую программу в Египте с судном "Stena IceMax". Британский энергетический гигант Shell начал много-скважинную буровую кампанию в Средиземном море у побережья Египта с использованием судна "Stena IceMax", принадлежащего шотландской компании Stena Drilling. Шестое поколение буровых судов для ультра-глубоководного бурения (2012 г. постройки) способно работать на глубинах до 10 000 футов. Первым этапом станут разработочные скважины Mina West, затем – разведочные проекты Sirius и Velox. Проект Mina West расположен в концессии Northeast El Amriya. Shell владеет 60% и выступает оператором, партнёром является Kuwait Foreign Petroleum Exploration Company (40%). Работы ведутся в координации с Egyptian Natural Gas Holding Company. ✔️ Египет усиливает геологоразведку: до 2030 года планируется бурение 586 нефтегазовых скважин. ✔️ Возврат Shell к активной оффшорной разведке подтверждает стратегическую роль Восточного Средиземноморья. ✔️ Использование современного бурового судна повышает операционную гибкость и снижает риски при глубоководном бурении. Проект отражает тренд на усиление инвестиций в разведку в условиях стабилизации цен и растущего спроса на региональный газ. 📌Shell ведёт историю с 1907 года (слияние Royal Dutch Petroleum и Shell Transport & Trading). Сегодня это одна из крупнейших мировых энергетических компаний, акции котируются в Лондоне и Амстердаме. Структура владения — публичная, крупнейшие акционеры — международные институциональные фонды. #OffshoreDrilling#MediterraneanEnergy#Deepwater#Shell#OilAndGas