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

Търсене: #olympiacos

当前筛选 #olympiacos清除筛选
🏆 Info 288 - DEPORTES

@info288_deportes · Post #35756 · 31.10.2024 г., 22:34

🏀🇪🇺Euroliga Maccabi 79-78 Real Madrid#Euroliga#Maccabi#RealMadrid Un tiro en suspensión de Saben Lee a 0,1 décimas para el final sentenció al Madrid (79-78), que encadenó su sexta derrota seguida fuera de casa entre Liga y Euroliga. Los blancos siguen sin conocer el triunfo a domicilio, donde volvieron a mostrarse vulnerables, desperdiciando la ventaja de 9 puntos con la que llegó al último cuarto (55-64, min 30). https://www.marca.com/baloncesto/euroliga/2024/10/31/maccabi-somete-real-madrid-vuelve-pelele-domicilio.html Olympiacos 95-74 Barcelona#Euroliga#Olympiacos#Barcelona El Barça llegó al Pireo como líder de la Euroliga tras ganar a principios de semana en Estambul ante el Efes, algo que los catalanes no pudieron repetir esta vez ante Olympiacos en el peor partido de la temporada donde sucumbieron ante la presión del Estadio de la Paz y la Amistad. https://www.marca.com/baloncesto/euroliga/2024/10/31/olympiacos-masacra-barca-desastroso.html Otros marcadores Milano 99-90 Virtus Alba 70-86 Anadolu 🏆@Info288_deportes

🏆 Info 288 - DEPORTES

@info288_deportes · Post #35921 · 21.11.2024 г., 22:23

🏀🇪🇺Euroliga Olympiacos 92-69 Baskonia#Euroliga#Olympiacos#Baskonia Nuevo jarro de agua fría para el Baskonia. Los vitorianos llegaban al Pabellón de la Paz y la Amistad con la esperanza de romper la mala racha con la que acudían al enfrentamiento con el Olympiacos. Y es que, tras cosechar cuatro derrotas consecutivas en Euroliga y ocho partidos perdidos en los últimos nueve encuentros, se enfrentaban a un equipo heleno que pese a la baja de Vezenkov, se acabó llevando la victoria en casa por 92-69. https://www.marca.com/baloncesto/euroliga/2024/11/21/olympiacos-destroza-baskonia-incapaz-reaccionar.html Real Madrid 98-84 Alba#Euroliga#RealMadrid#Alba El Real Madrid sacó adelante su partido ante el colista ALBA Berlín con más dificultades de las que indica el marcador final (98-84). De hecho, sufrió lo indecible (26-37, min 14) en la primera parte lastrado por una defensa impresentable (55-55, min 20) que agujereó a su antojo Procida (18). https://www.marca.com/baloncesto/euroliga/2024/11/21/campazzo-rathan-mayes-rescatan-real-madrid-colista.html Otros marcadores Anadolu 84-93 Paris Monaco 103-92 Asvel Estrella Roja 77-89 Partizan Milano 98-86 Maccabi 🏆@Info288_deportes

🏆 Info 288 - DEPORTES

@info288_deportes · Post #35742 · 29.10.2024 г., 22:17

🏀🇪🇺Euroliga Anadolu 88-97 Barcelona#Euroliga#Anadolu#Barcelona El Barça ratificó su condición de líder en el inicio de la segunda doble jornada de la temporada en una complicada visita a Estambul, donde se enfrentó a un Anadolu Efes que no podía contar con su mayor estrella, Shane Larkin, pero que no dio su brazo a torcer en un partido que se acabó llevando el Barça por 88-97. https://www.marca.com/baloncesto/euroliga/2024/10/29/barca-reafirma-lider-efes-exhibicion-metu.html Olympiacos 79-69 Real Madrid#Euroliga#Olympiacos#RealMadrid La mejoría del Real Madrid se vio truncada en El Pireo, donde acabó su racha de cuatro victorias consecutivas. Los blancos se hundieron frente al Olympiacos (79-69) y siguen sin ganar fuera de casa esta temporada: cinco viajes y cinco derrotas. En esta ocasión, tras tener el encuentro bajo control (46-55), cayeron en un pésimo último cuarto en el que tan sólo pudieron anotar 10 puntos y dos canastas en juego. Los 69 son su peor anotación del curso. https://www.marca.com/baloncesto/euroliga/2024/10/29/real-madrid-hunde-pireo-sigue-ganar-fuera-casa.html Baskonia 88-83 Milano#Euroliga#Baskonia#Milano Volver a hacer del Buesa Arena un fortín. Ese era el objetivo de un Baskonia que volvía a su feudo tras caer derrotado el pasado fin de semana ante el Joventut de Badalona. Sin embargo, la cara del equipo de Vitoria en Europa es totalmente diferente a la de la Liga Endesa. https://www.marca.com/baloncesto/euroliga/2024/10/29/increible-forrest-sostiene-baskonia-victoria-milan.html Otros marcadores Alba 83-92 Paris Fenerbahce 84-82 Maccabi Virtus 84-87 Bayern 🏆@Info288_deportes