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

Резултати

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

Търсене: #robertspano

当前筛选 #robertspano清除筛选
🎼 CLÁSICA AL ATARDECER 🎻

@ClasicaAlAtardecer · Post #6039 · 01.02.2023 г., 19:03

#Sinfonía1#Nielsen#RobertSpano Título:Sinfonía Nº 1 en sol menor Op.7 Autor:Carl Nielsen Movimientos: 🎵I. Allegro orgoglioso 🎵 II. Andante 🎵 III. Allegro comodo, 🎵 IV. Allegro con fuoco Interpretación: Sinfónica de Galicia Director: Robert Spano Fuente:🎼 @ClasicaAlAtardecer

🎼 CLÁSICA AL ATARDECER 🎻

@ClasicaAlAtardecer · Post #6038 · 01.02.2023 г., 19:03

​​#Sinfonía1#Nielsen#RobertSpano SINFONÍA Nº 1 EN SOL MENOR OP.7 La “Sinfonía Nº 1 en sol menor” Op.7 fue empezada en Berlín en 1890 y terminada en 1892 por Carl Nielsen. Como es natural la dedicó a su esposa Anne Marie que había seguido su génesis. Se estrenó en 1894 en Copenhague con la Orquesta Real dirigida por Johan Svendsen, con el compositor en su sitio entre los segundos violines. Tuvo que levantarse al final de la interpretación para agradecer los generosos aplausos que le tributó el público. La sinfonía tiene cuatro movimientos, indicados como sigue: 🎵 I. Allegro orgoglioso 🎵 II. Andante 🎵 III. Allegro comodo, 🎵 IV. Allegro con fuoco El primer movimiento allegro orgoglioso, inaugura los calificativos que más adelante atribuirá a sus movimientos. Desde el primer motivo nos encontramos con un aire nuevo. Aunque es una obra tonal siguiendo la tradición germánica, con una armonía post-romántica, nos revela su personal idiosincrasia, su nuevo modo de ver las cosas. Su tratamiento especial de la tonalidad se intuye, lo que más tarde le llevará a la tonalidad progresiva. El primer tema es atrevido y con variantes cromáticas. En parte está influenciado por el conocimiento de la música folclórica danesa. La flauta y el oboe proporcionan el material para el segundo tema, una melodía expresiva instrumentada solo para viento. La exposición se repite para dar más fuerza expresiva. Sigue el desarrollo que lleva al clímax del movimiento. Configurado de modo clásico, termina con la reexposición y una coda basada en el tema inicial. El segundo movimiento, andante, es de carácter pastoral, con una serena melodía que aumenta en intensidad en la parte central del movimiento, para luego volver a la serenidad de su principio. Una página con un fuerte acento lírico nórdico. El tercer movimiento, allegro comodo, corresponde al scherzo de la obra. Dos temas forman la primera parte. Un tema sinuoso y otro más tierno. El trío está confiado al metal en forma de coral. Luego vuelve a repetirse el scherzo, pero el coral interpretado por el metal retorna antes de terminar el movimiento. Termina con un allegro con fuoco de ímpetu irresistible. Con una estructura similar al primer movimiento en forma sonata, fácil de seguir, dos temas se contraponen, el primero caballeresco y un segundo con un cierto sabor oriental. La exposición se repite y el desarrollo central empieza con suavidad para llegar al clímax del movimiento. Luego retorna al material del principio en la recapitulación y acaba de modo triunfal. En 1893 nace su hija Anne Marie que se convertiría en una importante pintora. Su hijo pequeño, Hans Børge nace en 1895. Nielsen vivía unos años felices y esto lo expresó en su cantata “Hymnus Amoris” Op.12, escrita entre 1896 y 1897, dedicada a su esposa. En esta época empezó su primera ópera “Saul og David” FS 25, terminada en 1901 y estrenada en 1902. @ClasicaAlAtardecer