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

Резултати

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

Търсене: #ojoaldato

当前筛选 #ojoaldato清除筛选
Misterchip

@Misterchip2010 · Post #38247 · 20.05.2023 г., 18:08

#OJOALDATO - Lázaro Vinícius ha logrado el SEGUNDO hat-trick para un club de la ciudad de Almería en TODA la historia de La Liga. El primero lo hizo Antonio Guzmán Núñez para la Agrupación Deportiva Almería contra el Salamanca, el 21 de diciembre de 1980. 0 hat-tricks en la… https://t.co/EJvIkWgRz9

Hashtags

Misterchip

@Misterchip2010 · Post #38164 · 16.05.2023 г., 22:08

#OJOALDATO - El Inter ha llegado a la final de la Copa de Europa manteniendo su portería a cero en 5 de los 6 partidos de eliminación directa (sólo concedió algún gol en el encuentro de vuelta de 1/4 contra el Benfica), algo que no lograba ningún equipo desde 2016 (Real Madrid).

Hashtags

Misterchip

@Misterchip2010 · Post #38152 · 14.05.2023 г., 22:10

#OJOALDATO - Al Barcelona le ha tocado celebrar La Liga fuera de casa en 10 de sus últimos 12 alirones: Mendizorroza (1999) Ciutat de Valencia (2005) Balaidos (2006) Son Moix (2009) Camp Nou (2010) Ciutat de Valencia (2011) Vicente Calderón (2013) Vicente Calderón (2015) Nuevo… https://t.co/Borf98ueLR

Hashtags

Misterchip

@Misterchip2010 · Post #38147 · 14.05.2023 г., 22:10

#OJOALDATO - @JoseluMato9 es el primer jugador en la historia del Espanyol que le marca al Real Madrid y al Barcelona en casa y fuera en una misma edición de La Liga. En los últimos 70 años sólo lo habían logrado 5 jugadores (de cualquier equipo): Enrique Morán con el Betis en… https://t.co/XvcMENjOdHhttps://t.co/AxAc4WJrgK

Hashtags

Misterchip

@Misterchip2010 · Post #38144 · 14.05.2023 г., 21:08

#OJOALDATO - Lewandowski es el QUINTO jugador en la historia del Barça que marca 30+ goles (en todas las competiciones oficiales, nacionales e internacionales) en su PRIMERA temporada en el club. Krankl 1978-79 Quini 1980-81 Romário 1993-94 Ronaldo 1996-97 LEWANDOWSKI 2022-23 https://t.co/Jswwa2ICpx

Hashtags

Misterchip

@Misterchip2010 · Post #38094 · 10.05.2023 г., 20:08

#OJOALDATO - Dzeko (37 años y 54 días) es el SEGUNDO jugador más veterano que marca en una semifinal/final de la UEFA Champions League, sólo por detrás de Ryan Giggs (que le marcó al Schalke en 2011 con 37 años y 148 días). https://t.co/Erh6zLwKRX

Hashtags

Misterchip

@Misterchip2010 · Post #38049 · 07.05.2023 г., 22:08

#OJOALDATO - Fernando Alonso es el NOVENO piloto con 4 (o más) podios después de haber cumplido los 41 años en TODA la historia de la Fórmula 1. Sólo hay DOS precedentes en los últimos 60 años (Jacques Laffite y Jack Brabham). Más podios en Fórmula 1 después de cumplir los 41… https://t.co/ocr98oaTShhttps://t.co/paGCEFKISX

Hashtags

Misterchip

@Misterchip2010 · Post #38048 · 07.05.2023 г., 20:08

#OJOALDATO - @carlosalcaraz es el TERCER hombre que GANA sus CUATRO primeras finales de Masters 1.000 (Miami 2022, Madrid 2022, Indian Wells 2023 y Madrid 2023), tras Michael Chang y Jim Courier. Carlos Alcaraz (2022-2023) es el SEGUNDO hombre que defiende con éxito el título en… https://t.co/pUnSILiAt7https://t.co/eYB5ltVuvu

Hashtags

Misterchip

@Misterchip2010 · Post #38032 · 06.05.2023 г., 22:08

#OJOALDATO - Lucas Torró (Cocentaina, Alicante) es el TERCER jugador nacido en la provincia de Alicante que marca en una final de la Copa del Rey, tras Juan Manuel Asensi (con el Barcelona en 1978) y Guillermo Amor (con el Barcelona, en 1990).

Hashtags

Misterchip

@Misterchip2010 · Post #38025 · 06.05.2023 г., 20:08

#OJOALDATO - David Alaba es el PRIMER jugador austriaco que disputa una final del Campeonato de España. Ni el mítico Hansi Krankl tuvo la ocasión de jugar un partido como este. https://t.co/g5w22c9xlN

Hashtags

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