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

Резултати

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

Търсене: #kverneland

当前筛选 #kverneland清除筛选

Вернемся в начало сентября, где компания Агромаг провела мероприятие, которое стало самым большим по количеству участников! Спасибо всем кто принял участие и надеемся, что следующая презентация будет еще масштабнее! 🌾 Линейка кормоуборочной техники Kverneland обеспечивает эффективность, надежность и экономичность на каждом этапе кормозаготовительного процесса. Наглядно в этом убедились участники семинара «Кормозаготовка 360°: презентация инновационной техники Kverneland», организованного компанией «Агромаг». Смотрите подробности в нашем видео! #kverneland#агромаг#кормозаготовка#сельхозтехника@KvernelandRussia

📌Сегодня #АгроМаг был организован семинар Кормозаготовка 360°: презентация инновационной техники #Kverneland Интересен формат: сначала прошла лекция о новинках техсистем, а затем представление их в полевых условиях! Среди многих с.-х. машин выделю: ⚙️Гибридный трактор Zoomlion DV3354 с гибридной силовой установкой: дизель Yuchai (9,4 л; 335 лс) + 2 эл.мотора и литий-ионный АКБ. ⚙️Пресс-подборщик Kverneland 6716 SC14 Plus с интеллектуальной системой плотности Intelligent Density 3D, позволяющей адаптироваться под тип урожая и условия прессования - на нем установлен рекорд заготовки сенажа – 1587 рулонов за 24 ч непрерывной работы. ⚙️ROC RT 1000 — ленточный валкообразователь нового поколения. Гл. особенность — подбор массы с поля и транспортировка её на центральную ленту (а не протаскивание по земле), что позволяет бережно работать с хрупкими культурами и очень повышает качество валка. ❗️Есть договоренности: #ИИТ будет получать спецприглашения на такого рода презентации для преподавателей и для обучающихся!

Дорогие друзья, приглашаем вас посетить стенд компаний «Агромаг» и «Квернеланд» на международной специализированной выставке сельскохозяйственной техники «АГРОСАЛОН - 2024», которая пройдет в МВЦ «Крокус-Экспо» (Москва, станция метро «Мякинино») с 8 по 11 октября! Будем рады видеть вас в числе наших гостей! #Агромаг#Агросалон2024#Kverneland@KvernelandRussia

Отгрузка плуга Kverneland PN 100-9 Прицепной плуг 9 корпусов имеет: -Гидравлическую систему изменения ширины захвата Variomat -Рессорную защиту от камней Non Stop -Индукционная закалка стали Плуг который прослужит действительно долго и без проблем! #Kverneland@Kverneland_Russia#Агромаг#плуг#почвообработка

Плуги Kverneland, очень востребованы и отлично себя зарекомендовали благодаря своей простой, но в то же время безотказной рессорной защитой, а так же доступными запчастями. Приобретая плуг Kverneland вы надолго закрываете вопрос вспашки! Плуги созданы из самого качественного метала , созданного по собственному рецепту, внутри гибкий, снаружи твердый как алмаз, именно это качество позволяет выдерживать большие нагрузки и наработки! #плуг#kverneland#Агромаг@kvernelandrussia#лучшийплуг

НОВИНКА!!! Экспонат который был нами представлен на Дне Поля 2024. Косилки Kverneland серии 3300 оснащены системой Kverneland Nonstop BreakBack для защиты режущего аппарата💯 При наезде на препятствие в поле режущий аппарат перемещается назад и вверх, а затем возвращается в исходное рабочее положение. Это обеспечивает защиту по всей рабочей ширине вашей косилки🌾 Подробности у наших менеджеров. #Агромаг#Kverneland#кормозаготовка#косилки

Региональный День Поля в очередной раз показывает не поддельный интерес к нашей технике! Проведя аналитику по проведённому мероприятию мы заполняем наш склад самыми ходовыми продуктами! Сегодня на складе Агромаг имеется: - Трактора Zoomlion RN 904 PRO - Трактора Zoomlion RS1304/1604 PRO - Плуг Kverneland 150S 4+1 (5) корпусов - Плуг Kverneland ED 85-6 корпусов - Фронтальные погрузчики к тракторам - Щетка коммунальная задненавесная с системой обеспыливания на гидроприводе - Фронтальная косилка последнего поколения Kverneland 3332FT - Задняя комбинация косилок последнего поколения с транспортерами Kverneland 5387 MT BX Приглашаем в гости на просмотр техники и получения ответов на вопросы. #складАгромаг#ZoomlionRS1304#Kverneland@Zoomlion_AG_Russia

Проверенное имя, знакомая техника: встречаемся на Казань Агро🌾 Техника Kverneland официально представлена на выставке Казань Агро. Приходите на стенд B103, чтобы увидеть пресс-подборщик и разбрасыватель Kverneland вживую, наметить планы на сезон и познакомиться с командой профессионалов. #выставка#КазаньАгро#Kverneland

Подготовка почв продолжается! Сегодня был введен в эксплуатацию плуг Kverneland ED 85-6 (6 корпусов) Надежный навесной оборотный плуг Kverneland ED предназначен для эффективной недорогой вспашки средних и тяжелых почв. Оснащен надежной защитой стоек Kverneland с автоматическим сбросом (рессорная защита, не требует обслуживания). Непревзойденная долговечность. Ручная регулировка ширины захвата корпусов позволяет оптимизировать расход топлива и производительность трактора для достижения наилучшей производительности вспашки. В данном хозяйстве имеется 3 плуга Kverneland. Легкая настройка и качественная вспашка, надежность плуга, больший срок службы рабочих органов (благодаря закалке металла) и доступность запчастей! Именно поэтому наши плуги так востребованы! #Агромаг#плуги#Kverneland#почвообработка

Остается последний день подготовки к выставке. Мы практически готовы встречать и удивлять Вас! На фото наш флагманский экспонат, трактор Zoomlion PL2304 и косилки Kverneland! Но есть и кое что еще! Ждем всех 08.08.25 на нашем стенде Место проведения ЧРПП 2025: https://yandex.ru/navi/?whatshere%5Bzoom%5D=16&whatshere%5Bpoint%5D=30.406261,60.052685&si=wrwuaud3k0bumjxben0hbcnagg #Агромаг#Kverneland#Zoomlion#Выставка#ЧРПП2025

Запустили компактную навесную складную сеялку Kverneland Satio 1060 F Главная особенность модели — использование дозатора ELDOS в сочетании с системами электроники e-bas(базовая) и e-com(Isobus). Это позволяет оператору точно контролировать норму высева и обеспечивать равномерное распределение семян даже при изменении скорости движения. Электроника e-com обеспечивает полный контроль сеялки через ISOBUS-терминал, а не Isobus совместимая электроника e-bas, также как и электроника e-com, выполняет все основные функции. Эти инновации делают Kverneland Satio незаменимым помощником для достижения высоких урожаев Рабочая ширина - 6 метров Транспортная ширина - 3 метра Объём бункера - 1700 литров Гидравлический привод - в базовой комплектации Электроника e-bas - терминал Focus 3 Норма высева - 1-400 кг/га Междурядье - 12,5 см (48 сошников) / 25 см (24 сошника) Диск сошника - 325 мм Давление на сошник - 5-70 кг #Агромаг#сеялка#Kverneland#Satio@Kvernelandrussia

Отгружена навесная складная сеялка Kverneland Satio 1060 F Данная сеялка была представлена на выставке Агросалон 2024 и собрала не поддельный интерес у аграриев. Главная особенность модели — использование дозатора ELDOS в сочетании с системами электроники e-bas(базовая) и e-com(Isobus). Это позволяет оператору точно контролировать норму высева и обеспечивать равномерное распределение семян даже при изменении скорости движения. Электроника e-com обеспечивает полный контроль сеялки через ISOBUS-терминал, а не Isobus совместимая электроника e-bas, также как и электроника e-com, выполняет все основные функции. Эти инновации делают Kverneland Satio незаменимым помощником для достижения высоких урожаев Рабочая ширина - 6 метров Транспортная ширина - 3 метра Объём бункера - 1700 литров Гидравлический привод - в базовой комплектации Электроника e-bas - терминал Focus 3 Норма высева - 1-400 кг/га Междурядье - 12,5 см (48 сошников) / 25 см (24 сошника) Диск сошника - 325 мм Давление на сошник - 5-70 кг #Агромаг#сеялка#Kverneland#Satio@Kvernelandrussia

123•••56
ПредишнаСтр. 1 от 6Следваща