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

Търсене: #grains

当前筛选 #grains清除筛选

🚢Ставки на зерновые перевозки из Чёрного моря продолжают рост. Фрахтовые ставки на перевозку зерна из Чёрного моря демонстрируют устойчивый рост по всем сегментам. Для малого тоннажа (коустеров) - ставки достигают $30–32/т в Мармаре и до $55–57/т в Испании, тогда как крупнотоннажные балкеры типоразмера Panamax на маршруте в Южный Китай фиксируются на уровне $49–51/т. В сегменте балкеров типоразмера Handysize - ставки на перевозку в Восточное Средиземноморье находятся в диапазоне $26–28/т, а для подтипа Small Handysize: $28–30/т, что отражает общий рост затрат. С операционной точки зрения, ключевым драйвером остаётся рост цен на бункер на фоне конфликта на Ближнем Востоке, что увеличивает себестоимость рейсов и усложняет согласование сделок между судовладельцами и фрахтователями. Для рынка это означает усиление волатильности и расширение спредов между ожиданиями сторон, при сохранении восходящего тренда ставок. 📌Источник: рынок/брокерская оценка (Black Sea grain market) — данные основаны на оценках участников рынка и фрахтовых брокеров, формирующих фрахтовые ориентиры в регионе. #DryBulk#Grains#BlackSea#Freight#Shipping

🚢Рекорд морской торговли зерном в 2025 году усиливает фрахт в 2026-м. По данным Ursa Shipbrokers, объём морских перевозок сельхозгрузов в 2025 году достиг 716,5 млн тонн (+1% г/г), установив новый исторический максимум. Рост во втором полугодии (+7% г/г) компенсировал слабое начало года и поддержал ставки, особенно в сегментах Supramax и Panamax. Импульс сохраняется в 2026 году: январские отгрузки составили 57,1 млн тонн (+8% г/г), а в первые шесть недель года: +15% г/г (оценка BIMCO). Ключевые драйверы — рекордные урожаи в Южном полушарии и рост экспорта сои (+30%) и пшеницы (+17%). Производство сои в Бразилии прогнозируется на уровне 180 млн тонн (42% мирового объёма). Удлинение плеча перевозок из Южной Америки увеличило тонно-мили на 17% г/г, что особенно поддержало типоразмер Panamax. Индекс Baltic Exchange балкеров типоразмера Panamax вырос в среднем на 69% г/г в начале года; зерновые формируют около трети спроса сегмента в тонно-милях. Типоразмер Supramax - также прибавил по объёмам (+20% г/г). Прогноз BIMCO на 2026 год — рост мировых поставок зерна на 5–6%, при условии благоприятных урожаев в Северном полушарии. 📌Ursa Shipbrokers — частная британская брокерская компания, основана в 2010 году, специализируется на аналитике и S&P dry bulk. Контролируется партнёрами-основателями. #drybulk#grains#Panamax#freightrates#shippingmarket

В прошлый четверг, 25 июня Международный совет по зерну (МСЗ) опубликовал очередной ежемесячный обзор рынка зерновых. Согласно документу, несмотря на негативное влияние пандемии COVID-19, производство зерновых по итогам 2019/2020 сельскохозяйственного года покажет отличные результаты: прогнозируется рост в 2% по сравнению с прошлым годом. В результате его совокупный объем достигнет 2 175 млн т (против 2 137 млн т в 2018/2019 с.-х. г.) преимущественно за счет роста производства пшеницы (до 762 млн т по сравнению с 732 млн т в 2018/2019 с.-х г.) на фоне падения производства кукурузы до 1 117 млн т в 2019/2020 с.-х. г. (-12 млн т по сравнению с 2018/2019 с.-х. г.). При этом рост производства сопровождается ростом глобального потребления, которое по итогам настоящего с.-х. г. должно составить 2181 млн т (2166 млн т. в прошлом с.-х.г.), что приведет к продолжению двухлетнего тренда сокращения запасов. Интересно, что эксперты Совета демонстрируют уверенность в том, что 2020/2021 с.-х. г. станет лучшим с точки зрения производства зерновых за всю историю наблюдений, достигнув 2237 млн т, благодаря рекордным урожаям пшеницы и кукурузы. С учетом того, что предполагаемый рост потребления будет менее значительным (до 2218 млн т), запасы зерновых впервые за три года вырастут. Производство соевых бобов и риса по итогам 2020/2021 с.-х. г. также должны продемонстрировать рост (на фоне определенного снижения производства в этом с.-х.г. по сравнению с 2018/2019 с.-х. г.). Приведенные данные позволяют говорить о том, что пандемия COVID-19 практически не должна сказаться на физических объемах производства важнейших продуктов питания. Вместе с тем падение падение доходов многих развивающихся стран и стран в особой ситуации (наименее развитые, не имеющие выхода к морю и малые островные государства) может даже на фоне роста производства и ожидаемого снижения цен привести к нехватке продовольствия и кризисным явлениям. Дополнительную "негативную" лепту могут внести разрывы в цепочках поставок в случае возможного ухудшения эпидемиологической ситуации и мер по ограничению транспортного сообщения. #internationalgrainscouncil#grains#wheat#commodities#internationalfoodsecurity#зерно#международныйсоветпозерну#международнаяпродовольственнаябезопасность#сырьевыетовары#международнаяторговля Подробнее о докладе на странице Центра многостороннего сотрудничества и евразийской интеграции РСПП: http://рспп.рф/events/news/msz-proizvodstvo-zernovykh-v-2020-2021-s-kh-g-pobet-vse-rekordy-5ef71bf511056/