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

Резултати

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

Търсене: #madera

当前筛选 #madera清除筛选

💥Jardín Zen de Madera Atmosphera Encuentra paz y armonía en tu hogar ✅OFERTA: 16.99€ ❌ Antes: 21.99€ 💰Ahorras un 23%🔥 Crea un espacio de relajación y equilibrio en tu vida diaria 👉 Transforma tu ambiente ahora #jardinzen#decoracionhogar#ofertas#descuentos#madera#negro#navidad 🛰️Oferta publicada en Hogar

🔥OFERTA DE FIN DE AÑO🔥 🎁Gaveteros de madera 4 gavetas🎁 💸 Excelente precio 💸 💵 16 000 Por cantidad 💵 18 000 Por unidad ✨ Pero lo mejor.... lo mejor es la calidad ¡No dejes pasar esta oportunidad!✨ 🚛 Contamos con servicios de mensajería desde 2000 cup ..... Dime donde vives y sabrás tu presupuesto exacto 👌🏻 🥇Mantén todo organizado, todo bajo control.💪🏻 📞 Llama ahora al 55510048 o 58865062 para reservar tu gavetero. https://wa.me/qr/7WMXRSXRBGUMM1 #Madera #Gaveteros #CómodasdeMadera#GaveterosdeMadera ••••••••••••• 🔺 ••••••••••••• Promocionado por Anuncios-cu.com ••••••••••••••••••••••••••••••••

Bricolaje y ferretería

@bricolaje_ferreteria · Post #80 · 27.11.2023 г., 17:46

La carcoma, el peor enemigo de la madera: qué es, cómo tratarla y formas de prevenirla Descubre qué es realmente la carcoma y cuál es su mayor peligro. Aprende a identificarla antes de que sea demasiado tarde y cómo saber si está activa. Evita el principal factor que atrae esta plaga, deshazte de ella y, sobre todo, previene futuros ataques a tus muebles y piezas de madera. Leer más#carcoma#madera#tratamiento#carpinteria ➡️Xylazel anticarcoma de 5 l.#publi

Muebles del Hogar

@MueblesDelHogar · Post #135 · 12.04.2021 г., 14:37

¡Mira estas ideas con madera para el hogar! 😍 Hoy te compartimos #ideas geniales que puedes realizar tu mismo en casa, solo necesitas un poco de madera y creatividad.👨‍🔧 #mueblesinteligentes#melamina#muebles#madera#carpinteria#aprendamosjuntos#hazlotumismo#aprende

Ideas para casa #home

@ideascasa · Post #13732 · 17.11.2021 г., 00:29

Índice categorías Por ambiente: - #Baños#baños - #sala - #comedor - #habitacion - #habitacionmatrimonial - #hall - #patio#jardin - #cocina #pared#sala#salon Por colores : #calido#colores #turquesa#rosa#gris#azul#crema#pasteles #oro #amarillo #verde #gamadecolores #cemento Decoración partes : #camas#cabeceros #puerta#albercas#piscinas#paredes#libros#estanterias #mueble#muebles#literas#industrial#cuchetas #divisor de ambiente #escritorio#interiores #nevera#heladera #patio#jardin usando #repisas Otras : #iluminación#flores #piedra #ladrillo #modernas #rustico #navidad#reutilizacion#restauracion #cortinas #organizar #organizadores #contenedores #paredes#maceteros#madera #impresion3D#concreto#a#cemento #bohemio#minimalista #varias#homeoffice #pequeño #microondas #cuadros #vintage #abstracto #paisajismo #oculto #escondite #lugarsecreto #latinas #organizadores #zapatos #mujer #albercas #bicicletas

Ideas para casa #home

@ideascasa · Post #12582 · 20.06.2021 г., 00:34

Índice categorías Por ambiente: #Baños#baños #sala #comedor #habitacion#habitacionmatrimonial #hall #patio #jardin #cocina #camas #pared #sala #salon Por colores : #calido #colores #turquesa #rosa #gris #azul #crema #pasteles #oro #amarillo #verde #gamadecolores #cemento Decoración partes : #camas #cabeceros #puerta #albercas #piscinas #paredes #libros #estanterias #mueble #muebles #literas #industrial #cuchetas #divisor de ambiente #escritorio #interiores #nevera #heladera #patio #jardin #repisas Otras : #camas #cabecera #cojines #iluminación #flores #piedra #ladrillo #modernas #rustico #navidad #reutilizacion #restauracion #cortinas #organizar #organizadores #contenedores #paredes#maceteros#madera #impresion3D #concreto #cemento #bohemio #minimalista #varias #homeoffice #pequeño #microondas #cuadros #vintage #abstracto #paisajismo #oculto #escondite #lugarsecreto #latinas #organizadores #zapatos #mujer #albercas #bicicletas