azhbakov / sql-inspector

0 stars 0 forks source link

No-factory branch merge #3

Open azhbakov opened 7 years ago

azhbakov commented 7 years ago

Я сделал ветку no-factory, убрал оттуда фабрики и статические методы, т.к. Тимуру они не понравились, да и нам они не нужны.

Реализацию интерфейсов я заменил на наследование (Checker и Inspector теперь классы, а не интерфейсы). Это потребовалось, чтобы была возможность добавлять инспекторы в CodeAnalyzer извне. При этом они передаются неинициализированными, в них нет Parser и ParseTree, т.к. Parser и ParseTree создаются внутри CodeAnalyzer, и теперь инициализация происходит внутри CodeAnalyzer. Parser и ParseTree - необходимая часть любого инспектора, поэтому я вынес это в базовый класс Inspector, от которого наследуются все инспекторы.

Теперь все, что нужно, чтобы добавить инспектор в анализатор - добавить этот инспектор в массив в Main и передать массив в конструктор CodeAnalyzer.

Я предлагаю внести эти изменения в основную ветвь, жду ваших комментариев.

UPDATE

Сделал мердж, надо проверить все ли работает, были конфликты при слиянии.

MarkGuryanov commented 7 years ago

Да, я за то, чтобы слить