@Dailyrss · Post #13184 · 30.11.2025 г., 00:45
Wikipedia每日一图(#November 30, 2025)https://ift.tt/WxVhM4m Vineyard worker at Guadalupe Valley, Baja California, Mexico, where 95% of Mexican wines are produced.. 了解更多 . #Wikipedia每日一图
Hashtags
TGINSIGHT SIMILAR POSTS
Изходен канал @clockstackwheels · Post #721 · 26.12
Почему я люблю языки с сильной системой типов, проверяемой статическим анализом кода — хорошо написанная программа является своей собственной спецификацией и позволяет выражать через язык программирования законы существования предметной области. Когда-то давно я писал на ActionScript. Там была система типов, но вот десериализация JSON'ов по-умолчанию была в какой-то общий Object, к полям которого нужно было обращаться ["по_строковому_имени"]. В один момент мне потребовалось написать что-то на C#, который я совсем не знал, я стал гуглить, как десериализовать JSON, и с удивлением обнаружил кучу советов заранее объявить класс со всеми нужными полями и десериализовать в него. "Какой ужас!", — подумал я тогда, — "Это же дико неудобно! А если я не знаю полей JSON? А если их много? Отвратительный язык!" Теперь то я прекрасно понимаю, что JSON это контракт, и что правильная десериализация только такая и должна быть, и что в хорошем API в одном поле никогда не бывает данных принципиально разных типов, и так далее. Нет, если вы набиваете вечерами пет-проект или сидите бессонную ночь на хакатоне, нет ничего плохого в том, чтобы взять простой язык с динамическими типами вроде JavaScript или Python, не требующий описывать данные. Но вот в энтерпрайзе, особенно когда над одним проектом работает много людей (а бывает это очень часто) — хорошее использование системы типов убережёт разработчиков от огромного количества ошибок, будет бить их по рукам, когда они пытаются сделать что-то не то, и будет подсказывать, когда они не уверены в чём-то. С помощью статической типизации можно на уровне кода обозначить правила, по которым ведёт себя предметная область вашей программы в реальном мире. Разработчику не только будет сложно их нарушить, но он ещё и станет узнавать какие-то вещи, которые мог не знать раньше. Например, если мы делаем медицинскую CRM, и больница заводит новых пациентов только тогда, когда знает их группу крови, мы можем объявить тип "Пациент" (или, если точнее, "Карта пациента") и запретить создавать экземпляры этого типа, не передав в конструктор группу крови (которая, в свою очередь, тоже является типом, вероятнее всего ValueObject'ом). Если новый программист пришёл в проект, он, во-первых, не сможет записать в БД некорректную карту пациента. Понятно, мы не учитываем случаи, когда новый программист переделывает модели предметной области — это будет хорошо видно на кодревью. А, во-вторых, даже если ему никто не сказал, что пациенты должны быть с группой крови, он узнает это из кода. И уже будет понимать, что в тех процессах реальной жизни, которые он описывает кодом, карта пациента создаётся только при наличии группы крови. А, значит, нужно искать какой-то способ сначала эту группу крови получить, и только потом создавать карту. Программирование моделирует реальный процесс. В настоящей работе даже на языках с типами, конечно, без должного контроля можно написать что угодно. Нужна управленческая воля, компетентность руководства, понимание опасности техдолга, в идеале отдельные должности для архитекторов, опытные лиды и старшие разработчики. Но когда всё это есть, можно отсекать много проблем ещё на старте и проще погружать новичков. #dev
Hashtags
Търсене: #november
@Dailyrss · Post #13184 · 30.11.2025 г., 00:45
Wikipedia每日一图(#November 30, 2025)https://ift.tt/WxVhM4m Vineyard worker at Guadalupe Valley, Baja California, Mexico, where 95% of Mexican wines are produced.. 了解更多 . #Wikipedia每日一图
Hashtags
@Dailyrss · Post #13183 · 29.11.2025 г., 00:45
Wikipedia每日一图(#November 29, 2025)https://ift.tt/t6pLEjM The Sabha Mandap of the Sun Temple, Modhera, India.. 了解更多 . #Wikipedia每日一图
Hashtags
@Dailyrss · Post #13182 · 28.11.2025 г., 00:45
Wikipedia每日一图(#November 28, 2025)https://ift.tt/fvoiXJ0 Port and lighthouse overnight storm with lightning in Port-la-Nouvelle in the Aude department in southern France.. 了解更多 . #Wikipedia每日一图
Hashtags
@Dailyrss · Post #13181 · 27.11.2025 г., 00:45
Wikipedia每日一图(#November 27, 2025)https://ift.tt/Wg6MXxG A shattered ceiling light fixture on a bamboo floor mat. The lamp was a semi flush mounted light fixture with a shallow glass dome of clear glass coated with white glass on the inside. In the fixture are LED light bulbs with E27 Edison screw. The hook in the ceiling suddenly came lose one day and the lamp crashed to the floor in an apartment in Brastad, Lysekil Municipality, Sweden. Photographed in natural light from the window. Focus stacked from 10 photos.. 了解更多 . #Wikipedia每日一图
Hashtags
@Dailyrss · Post #13180 · 26.11.2025 г., 00:45
Wikipedia每日一图(#November 26, 2025)https://ift.tt/bPYOzSQ Two wood knots which resemble two eyes, a simple example of pareidolia. Detail of a wooden fence in Beilstein, Germany.. 了解更多 . #Wikipedia每日一图
Hashtags
@Dailyrss · Post #13179 · 25.11.2025 г., 00:45
Wikipedia每日一图(#November 25, 2025)https://ift.tt/ix76pId "Plate Dance" (Tari Piring) performance from Sumatra (Indonesia) that may include dancing on broken plates and 'face washing' with plate shards.. 了解更多 . #Wikipedia每日一图
Hashtags
@Dailyrss · Post #13178 · 24.11.2025 г., 00:45
Wikipedia每日一图(#November 24, 2025)https://ift.tt/MOdV2wL View of the frozen Knollenteich in Hof (Saale), Bavaria, Germany. The cube-shaped concrete water drainage system is completely surrounded by the frozen pond.. 了解更多 . #Wikipedia每日一图
Hashtags
@Dailyrss · Post #13177 · 23.11.2025 г., 00:45
Wikipedia每日一图(#November 23, 2025)https://ift.tt/9zNt12M A full-size test article of the SpaceX Crew Dragon named DragonFly fires its eight SuperDraco engines in a development test of its ability to land with the accuracy of a helicopter using only the thrusters. The company conducted two tethered tests vehicle attached to a crane so engineers could refine the landing software and systems on the spacecraft. SpaceX envisions returning people to Earth from space on the power of thrust instead of beneath parachutes. SpaceX, in partnership with NASA’s Commercial Crew Program, is developing the Crew Dragon and Falcon 9 integrated system to take astronauts to launch astronauts to the International Space Station from the United States.. 了解更多 . #Wikipedia每日一图
Hashtags
@Dailyrss · Post #13176 · 22.11.2025 г., 00:45
Wikipedia每日一图(#November 22, 2025)https://ift.tt/o9xbWOA Geoffroy's tamarin (Saguinus geoffroyi) Gatun Lake, Panama. 了解更多 . #Wikipedia每日一图
Hashtags
@Dailyrss · Post #13175 · 21.11.2025 г., 00:45
Wikipedia每日一图(#November 21, 2025)https://ift.tt/aSuYGZi Small grove of trees at sunset in late autumn (Massenbach, Schwaigern, Germany).. 了解更多 . #Wikipedia每日一图
Hashtags
@Dailyrss · Post #13174 · 20.11.2025 г., 00:45
Wikipedia每日一图(#November 20, 2025)https://ift.tt/FVxz1SY Geological fieldworks, underground in the Estonian oil shale mine to study the variable mineralogical and chemical composition and microstructure in the different layers of the oil shale profile. 了解更多 . #Wikipedia每日一图
Hashtags
@Dailyrss · Post #13173 · 19.11.2025 г., 00:45
Wikipedia每日一图(#November 19, 2025)https://ift.tt/MmF9c1k Le concert champêtre (English: Woodland Music-makers), a 1857 oil-on-canvas by the French painter Jean-Baptiste-Camille Corot. 了解更多 . #Wikipedia每日一图
Hashtags