Выберите лучшую системную архитектуру для ваших возможностей, набора функций приложения и доступных ресурсов.
Если вы новичок в этом вопросе, почему бы не выбрать приложение FOSS, которое вам нравится, и взглянуть «под капот», чтобы понять, как выглядит наилучшая практика.
Как правило, собирать техническую корзину «потому что они крутые» - это довольно плохая идея, и она может отойти от программирования на всю жизнь.