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

Резултати

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

Търсене: #inventions

当前筛选 #inventions清除筛选
Interesting Planet 🌍

@interesting_planet_facts · Post #1181 · 01.01.2026 г., 12:11

🌎 The invention of the safety elevator by Elisha Otis in 1852 made skyscrapers possible. His design featured a locking mechanism that stopped the elevator if the hoisting cable snapped. Otis demonstrated this life-saving device at the 1854 World’s Fair in New York, boosting public trust in elevators. ✨ #inventions⚡#history⚡#engineering 👉subscribe Interesting Planet 👉more Channels ​

Interesting Planet 🌍

@interesting_planet_facts · Post #1150 · 21.12.2025 г., 18:11

🌎 X-rays were discovered accidentally in 1895 by German physicist Wilhelm Röntgen. While experimenting with cathode rays, he noticed an unknown radiation that could pass through solids and reveal images of bones. Today, X-rays are a key tool in medicine and industry worldwide. ✨ #inventions⚡#history⚡#physics 👉subscribe Interesting Planet 👉more Channels ​

Interesting Planet 🌍

@interesting_planet_facts · Post #1214 · 11.01.2026 г., 22:11

🌎 The invention of the modern stethoscope in 1816 by French physician René Laennec transformed medical diagnosis. By rolling paper into a tube, Laennec could hear internal chest sounds clearly, improving detection of lung and heart conditions. The first stethoscopes were made of wood and about 25 centimeters long. ✨ #history⚡#medicine⚡#inventions 👉subscribe Interesting Planet 👉more Channels ​

Interesting Planet 🌍

@interesting_planet_facts · Post #1313 · 24.02.2026 г., 12:11

🌎 In 1867, Swedish chemist Alfred Nobel invented dynamite by stabilizing volatile nitroglycerin with an absorbent clay called kieselguhr. This made blasting much safer for construction and mining. Nobel later used his dynamite fortune to establish the Nobel Prizes in 1895. ✨ #inventions⚡#chemistry⚡#history 👉subscribe Interesting Planet 👉more Channels ​

Interesting Planet 🌍

@interesting_planet_facts · Post #1025 · 12.11.2025 г., 12:11

🌎 In 1903, the Wright brothers achieved the first powered, controlled, and sustained flight of an airplane at Kitty Hawk, North Carolina. Their aircraft, the Wright Flyer, flew for 12 seconds and covered 36 meters. ✨ #inventions⚡#aviation⚡#history 👉subscribe Interesting Planet 👉more Channels ​

Interesting Planet 🌍

@interesting_planet_facts · Post #848 · 02.10.2025 г., 18:11

🌎 The accidental invention of safety glass happened in 1903, when French chemist Édouard Bénédictus dropped a glass flask coated with plastic cellulose nitrate. Rather than shattering, the glass cracked but held together, inspiring shatter-resistant windshields. By 1927, safety glass became standard in automobile manufacturing. ✨ #inventions⚡#chemistry⚡#history 👉subscribe Interesting Planet 👉more Channels ​

The first vending machine was invented in the 1st century AD by Greek engineer Heron of Alexandria. It dispensed holy water when a coin was inserted—the weight tilted a lever, opening a valve to release water before the coin dropped. 💧⚖️ [Learn more] @googlefactss #History#Inventions#Engineering#AncientGreece

Professor Muhammed Uvaze ixtirolari Buyuk Britaniyada patentlashtirilgani haqida Hudud informatsion dasturida lavha tayyorlandi. #hudud#patent#inventions ⬇️Biz ijtimoiy tarmoqlarda: Veb-sayt | Telegram | Instagram | Facebook

Interesting Planet 🌍

@interesting_planet_facts · Post #784 · 20.09.2025 г., 00:22

🌎 The discovery of radioactivity in 1896 by Henri Becquerel revealed that uranium salts emit invisible energy. This led to the identification of new elements like polonium and radium by Marie and Pierre Curie. Their work contributed to the development of X-ray machines and atomic science. The Curies isolated just 1 gram of radium from 8 tons of ore. ✨ #radioactivity⚡#discovery⚡#inventions 👉subscribe Interesting Planet ​

🌀💦 South African Invention That Changed Pool Life Did you know the automatic pool cleaner was invented in 🇿🇦 South Africa? 👨‍🔧 In 1974, hydraulics engineer Ferdinand Chauvier (pictured), who had moved from the Belgian Congo to South Africa, came up with a way to take the hassle out of pool cleaning. The result? The legendary Kreepy Krauly — one of the very first automatic pool cleaners, designed and built in Springs, South Africa. 🌍✨ His invention made pools around the world easier to maintain — and became a proudly South African contribution to everyday comfort. 🏊‍♂️ From Johannesburg to Los Angeles, millions of pools have been cleaned thanks to Chauvier’s idea. #Inventions#SouthAfrica#Innovation#KreepyKrauly#History#MadeInSA