TGViewer
Записки системного архитектора Записки системного архитектора @sysarchthoughts · 269 subscribers
Post #127 342
В частности, я считаю уверен, что на начальной стадии развития продукта нужно делать не все, что теоретически может понадобиться в дальнейшем, а только то, чем прямо сейчас, в обозримом будущем кто-то будет пользоваться, поскольку неиспользуемый код пользы не приносит, а вред от него есть - его надо поддерживать и сопровождать. Так мы сильно экономим в части объема работы СЕЙЧАС, но важно при этом не заблокировать себе возможности развития и масштабирования ПОТОМ, когда выяснится, какое именно направление роста является перспективным, а функционал - востребованным. Такой подход сильно противоречит часто принятому среди программистов подходу "давайте сразу делать нормально, чтобы потом не переделывать". Я не верю, что возможно заранее угадать, как будет правильно, все равно придется переделывать, и чем меньше кода будет написано - тем меньше придется переделывать. Но не путайте с подходом "делать по-быстрому по текущим задачам, а там посмотрим", который вообще не предусматривает мыслей о будущем :). Напротив, я говорю о том, что мы не знаем, что в итоге "вырастет", поэтому не строим заранее заборы, но закладываем множество "ростков" на будущее, те, которые будут востребованы - прорастут, тогда и заборчики расставим в правильных местах. Одновременно с этим мы понимаем, что какие-то части (мы пока не знаем какие) точно окажутся лишними, их придется вырезать. И потому программа сразу строится модульной/послойной, на каждом уровне разбитой на части-кирпичики, которые можно относительно независимо растить, подрезать, удалять, как ростки в саду, не затрагивая соседние грядки. Структура связей и декомпозиция модулей не статична, она развивается эволюционно, но она всегда есть, соответствует нашему текущему представлению о том, каким должен быть продукт. Архитектура продукта, соответственно, определяет не только его текущее состояние "в статике" но также принципы и возможности модификации и развития продукта в будущем. Да, в моменте мы можем иметь дело с примитивным монолитом, но в его "ДНК" уже могут быть заложены гены гигантской распределенной системы. А могут быть и не заложены. Все, опять же, зависит от контекста :)

Короче говоря, принцип-то в основе лежит простой, но его практические применения в каждом отдельном взятом случае могут сильно отличаться. Но это уже другая история.

все еще #знакомство

продолжение следует? 😉
  • 👍 6
  • 🔥 3
  • 💯 1
More from @sysarchthoughts
  1. Aug 4, 2026Мне жена как-то сказала, что только в зрелом возрасте осознала трагедию сказки о рыбаке и…
  2. Jul 2, 2026Я не давлю. Я пытаюсь опереться.
  3. Apr 2, 2026Пригласили меня тут в жюри школьного проектного конкурса, и вот что хочу сказать: мало кто…
  4. Mar 22, 2026Как технические границы делают все бизнес-критичным? Ключевой вопрос, которому посвящена э…
  5. Mar 22, 2026Неуловимо напоминает "основной закон органической химии". Если смешать бочку мёда и бочку…
  6. Mar 10, 2026(продолжение рассуждений про больницу) Что мне тут понравилось, что беру на заметку. 1. Че…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →