Алексей: Мнение мое, чисто субъективное. Пока проект не очень большой Angular вполне юзабелен, но как только проект разрастается, контролировать его становиться не возможно. В dojo же есть строгий набор правил, есть понятие виджета, есть жизненный цикл виджета. Вот из-за этой строгости, мне, как человеку работающему над проектами в "кровавом ынтерпрайзе", dojo и нравится.
GlaIZier: не боитесь что Ваш файл раздуется до не приличных размеров? :-) По-моему, лучше использовать package подход для хранения бинов. В конфиге указывать package-ы для сканирования Spring-ом. Т.е. принять такое соглашение, что в com.example.dao лежат DAO объекты (бины помеченные аннотацией @Repository), в com.example.controller лежат контроллеры (бины помеченные аннотацией @Controller), в com.example.service лежат сервисы (бины помеченные аннотацией @Service). Да и конфиги я бы на Вашем месте разнес по разным файлам, отдельно DataSourceConfig, отдельно MvcConfig, отдельно SecurityConfig. Поверьте, так проще.
Roman Hinex: Видимо в конторах, где есть посиделки на кухне и халфа после работы, столько не зарабатывают, чтобы Вам столько платить :) Тут пахать надо, Вы поймите.
Дмитрий Логвиненко: Как правильно заметили, джуниор самостоятельно должен решать задачи. Естественно в первые два-три месяца это трудновыполнимо (но выполнимо). Обычно на джуниоров к нам попадают вчерашние студенты, либо студенты последнего курса. У некоторых есть представление о разработки, у большинства его нет. Но мы не обламываемся и учим, потому что практически все сениоры и выше "выросли" в нашей же компании (и я в их числе). Есть и мальчики, и девочки в соотношении 50/50. Джунам платим от запросов джуна, кто-то готов и за 5 тыр. работать, но обычно это от 20 тыр. Как скоро Вам повысят ЗП зависит только от Вас. Как покажете себя. Но еще раз повторюсь, в среднем, "выхлоп" появляется через полгода +- месяц. Я сам начинал с 22 тыр. Имел, как и Вы, только опыт эникейства и верхушки знаний в программировании. Как и у Вас у меня на руках была семья (Жена, 2 пацана 3 и 10 лет, и морская свинка). Лет мне было 27 тогда. Ключевым стало именно желание быть разработчиком.
boand: Думаю да, т.к. выбор строится, по-моему, на таких умозаключениях: "Я знаю и умею достаточно для уровня junior-а в обоих направлениях, что бы мне выбрать?"
Дмитрий: А что Вы хотите получить от структуры проекта? Просто исходя из вопроса, я понял, что Вы хотите организовать как-то маршрутизациию. Тогда не понятно как это связанно со структурой проекта.
Тарасов Константин:
Ну при реализации компоновщика обычно из чего исходят. Есть какой-то интерфейс, который задает базовые методы, такие как add, get, remove. Оперирует интерфейс с такими же экземплярами самого себя. Делаются наследники, типа LeafNode, CompositeNode. В них те самые базовые методы реализуются. Т.е. компоновщик позволяет Вам только построить что-то из кусочков. А вот что Вы с этими кусочками будете делать потом, это уже не его[компоновщика] дело :). Т.е. Ваш парсер, на основе входных данных может построить одну такую RootNode из конкретных реализации, а потом Вы делаете что хотите с этим, например, через посетителей. Т.е. грубо говоря интерфейсу Node про логику вообще знать не обязательно, он[интерфейс] должен предоставить только базовые методы для композиции.
Тарасов Константин:
Парсер это, по-моему, ярчайший пример паттерна Compositor. Попробуйте его все-таки. Нужно понять, что есть часть целого. Если это Node, то наверное как минимум она должна возвращать значение, которое в том числе так же может быть типа Node. Т.е. как минимум в интерфейсе Node может быть метод evaluate(). Имея единый интерфейс Вы сможете с легкостью добавлять новые элементы в Ваш парсер. Если поведение нод очень разное, то можно воспользоваться паттерном Visitor (Посетитель). Он немного избыточен но все-же для каждого типа Node можно сделать таких посетителей.
Сейчас примерно такую же задачу решаем просто (парсер и интерпретатор формул), и остановились именно на этих двух паттернах. Пока что они закрывают все потребности.
Тарасов Константин: Тоесть Вы не можете выделить общие правила для нод? Тогда какой смысл в классе Node? Может тогда использовать просто Object в списке нод?
Спасибо. Понаблюдаю. Редко использую более одного подключения. Удачи Вам в поисках!