TGTGInsightтелеграм анализLIVE / telegram public index
← Такты, стеки, два колеса

TGINSIGHT SIMILAR POSTS

Намери подобно съдържание

Изходен канал @clockstackwheels · Post #247 · 11.03

Попробовали на работе предметно-ориентированное проектирование (Domain Driven Design). Это такой способ построения архитектуры, когда ты (чаще всего с помощью системы типов и ООП) описываешь физическую суть вещей, которые представлены в твоей программе. Например, если в программе есть объект "Книга", то её нужно снабдить свойствами, которые бывают у книг в реальности: число страниц, автор, язык, тип обложки и т.д. При этом данные свойства должны быть такими, чтобы присвоить им нереалистичные значения было нельзя. Допустим, число страниц не может быть отрицательным (и скорее всего в реальном мире не может быть нулём). При попытке установить отрицательное число страниц программа должна выбросить исключение. А совсем в идеальном случае -- не дать этого сделать программисту на уровне статического анализа кода. Описав все свойства книги, вы снабжаете её операциями, которые над ней можно сделать. Например, из книги можно вырвать страницу, и при этом число страниц уменьшается. Нет такого случая, когда можно вырвать страницу без изменения числа страниц. Вы строго программируете эту зависимость, делаете у книги метод "Вырвать страницу", а он уже уменьшает число. Кстати, свойство "Число страниц" при этом нельзя переназначить в уже созданной книге. Можно только создать книгу, передав в её конструктор (так называется в программировании функция создания объектов) заданное число страниц. Но поменять число страниц можно только специальными методами "Вырвать страницу" и "Вклеить страницу". С помощью этого подхода вы гарантируете, что ваши объекты всегда находятся в валидном состоянии -- то есть таком, которое возможно в реальной жизни с объектом, представленным программой. Плюсы подхода очевидны: меньше число ошибок. Код описывает сам себя, и программист, если не лезет внутрь объекта "Книга", вообще не сможет сделать с книгой ничего недопустимого. Минусы, думаю, тоже понятны: изначально проектировать сложнее, нужно учесть много нюансов, писать тесты. Время разработки изрядно растёт. Изменение требований даётся дороже: например, если каким-то образом в ваш книжный магазин поступят книги со страницами из кевлара, которые невозможно вырвать :) Но первый проект с этим подходом мы сдали хорошо, без багов. Лучше, чем многие предыдущие. #dev

Hashtags

Резултати

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

Търсене: #bach

当前筛选 #bach清除筛选
Classical Music

@exploreclassical · Post #529 · 07.11.2024 г., 18:34

跳进 Passacaglia 的兔子洞(4)—— 管风琴 BWV 582 虽然BWV 582的不同版本都是挺好听的,但是一旦听了管风琴版就“曾经沧海难为水“了🤣不愧是“乐器之王”的魅力!听了好几首管风琴版,发现是不同的版本管风琴的音色选择居然可以完全不一样。个人对管风琴几乎没有任何了解,不过可能是巴赫当年没有写出来每一个地方需要什么音色,于是管风琴家就可以根据自己的理解以及使用的管风琴进行设置,这个工作叫做 organ registration,私以为一定程度上和orchestration有些类似(?我不懂哈只是瞎说 今天分享两个版本,一个是 Karl Richter 的版本,另一个是 Marie-Claire Alain的版本(见评论),大家可以比较比较他们的不同~ https://www.youtube.com/watch?v=_W4PJUOeVYw #bach

Hashtags

Classical Music

@exploreclassical · Post #528 · 05.11.2024 г., 19:06

跳进 Passacaglia 的兔子洞(3)—— BWV 582 的 transcriptions 大约是这首曲子太受人喜爱了,BWV 582有非常非常非常多的 transcription~这个小系列第一条里的 Leopold Stokowski 的交响乐版就是其中一个,除此之外还有 Ottorino Respighi,Eugene Ormandy等人的交响乐版。钢琴版比较有名的有 Eugen d’Albert 的版本和 Max Reger 改编的双钢琴版,Krystian Zimerman 也自己改编过一个版本。其他版本还有弦乐四重奏,铜管五重奏等等版本。 这里分享一张专辑,含有五个不同的 transcrpition~ https://youtube.com/playlist?list=OLAK5uy_k9gWmBhrs26FA9AbiTT1bLq97jkiv9Cwo&si=8bJpmgja-Snqlz30 #bach

Hashtags

Classical Music

@exploreclassical · Post #524 · 02.11.2024 г., 17:55

跳进Passacaglia的兔子洞(1)——什么是 Passacaglia? 前些天在广播里听到了交响乐版的 Bach 的Passacaglia and Fugue in C minor,于是略微跳进了兔子洞🤣了解了一下Passacaglia这个形制,Bach的这一首Passacaglia以及管风琴的一些知识~ 先是了解了一下 Passacaglia 这个形制。Passacaglia 是17世纪在西班牙起源的,这个词本身的意思大约就是 cross(passa) caglia(street)。最大的特点是有一个bass-ostinato,然后在这个基础上写很多旋律variation。一般 Passacaglia 都是三拍子的,而且有一种比较严肃的感觉。这个形制和 Chaconne 非常类似,后面也会被音乐家混合使用。 除了巴赫的这首著名的 Passacaglia and Fugue in C minor 之外,其他比较有名的 Passacaglia 还有 Handel 的 Harpsichord Suite No. VII in G minor (HWV 432)最后一个乐章, Purcell 的歌剧Dido and Aeneas 中的 Dido’s Lament,Mendelssohn 也写过一首管风琴的 Passacaglia in C minor (不愧是巴赫复兴鼻祖?😂),还有肖斯塔科维奇的 Lady Macbeth of Mtsensk Act 2 的 interlude (也有一个管风琴版本)。 扯了这么多,还是先分享一下拉我进兔子洞的罪魁祸首吧,由Leopold Stokowski改编的交响乐版 Bach: Passacaglia And Fugue In C Minor, BWV 582~ https://www.youtube.com/watch?v=naBh9Vhc6ZI #bach

Hashtags

Classical Music

@exploreclassical · Post #252 · 04.04.2021 г., 15:39

今天是中国传统节日清明节。早上分享的《忆故人》觉得很应合清明节“路上行人欲断魂“的气氛。 今天也是基督教的复活节,来听一首Bach的Easter Oratorio的选段~它的初次演出是1725年复活节(四月一日) #bach https://www.youtube.com/watch?v=EgQz899oW_8 ref:https://en.wikipedia.org/wiki/Easter_Oratorio

Hashtags

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