Architecture Is Code: следующая парадигма ЯП

  • Зал : 313. Управление и архитектура
  • Категории : Разработка
  • Секции: Архитектура

Описание:

1. В классической системной инженерии чрезвычайно мощным инструментом является иерархическое разбиение системы по отношению "часть-целое". Для материальных систем такое деление "естественно" за счет 3D-природы материала.

2. В программных системах нет такого "естественного" деления и в результате мы теряем мощнейшее средство организации мышления и управления сложностью.

3. Современные ООЯП по историческим причинам загоняют нас в программную "флатландию", не давая выразительных средств для качественного структурирования программных систем.

4. Заметный всем глубокий "разрыв" между разработчиками и архитекторами обусловлен не только разными целями и задачами, но и разницей в мышлении, вызванной ограничениями ЯП. Архитекторы должны переучиваться думать, чтобы выбраться из "флатландии".

5. Все прежние меры, призванные преодолеть этот разрыв (тесты архитектуры, архитектура/диаграмма "как код", etc) не решают глубинную причину и поэтому паллиативны

6. Нужны широкие, масштабные, разнообразные эксперименты и исследования следующей парадигмы в ЯП, которая бы устраняла этот недостаток и добавляла бы в ЯП надежные средства иерархической функциональной декомпозиции. Тогда многие важные архитектурные решения будут воплощены в исполняемом коде (не в диаграммах-как-код и не в "тестах архитектуры" которые легко игнорировать).

Покажу пример такого эксперимента в виде DSL на Rust.

О спикере

Более 20 лет тружусь в разработке ПО, на разных ролях от разработчика до архитектора. Также много замечательного смежного опыта - консалтинг, аудиты, тренинги для архитекторов. На конференциях выступаю нечасто, но все же опыт есть уже приличный (https://bespalchuk.ru/presentations/). Последнее место работы - Solution Architect в EPAM. Области интересов сегодня - новые ЯП и устранение разрыва с архитектурой, AI на службе архитектора.

Похожие доклады