А как сейчас с работой?
Сделано похоже не очень хорошо. Хотя там же должны быть интерфейсы к запросам.
Не так немного. Интерфейсами там всё вокруг обделано - провайдеры, менеджеры, коннекторы, фабрики. Они вокруг этих запросов танцуют. Типа возвращает не тип таблицы, а провайдер таблицы. Ну и на провайдер конечно интерфейс. Поэтому, чтобы получить что-то из таблицы, я сначала получаю провайдер в виде интерфейсного типа, у него запрашиваю что-то из таблицы, мне возвращают ещё один интерфейс.
Ну и конечно на большинство этих интерфейсов по одной реализации. А нахрена тогда городить интерфейсы? Зато кода в 2 раза больше - проект с чисто интерфейсами и проект с чисто реализациями. Похоже, делали в той эпохе, когда все эти паттерны ради паттернов самую лютую популярность набирали. А то - вдруг нам в будущем, лет через 15, придёт в голову вторую реализацию интерфейса придумать? А оказалось, что через 15 лет это оно переписывать задолбаешься даже с одной реализацией. Выкинуть нафиг все интерфейсы - солюшен на штук 4-5 проектов похудеет.
Сделано похоже не очень хорошо. Хотя там же должны быть интерфейсы к запросам. Сколько таблиц в базе?
Да я уже там потихоньку разбираюсь. Начальники заказчика говорят, что там чуть ли не половину проекта будут выкидывать - всё это понаписанное нафиг не нужно. Мне сказали, чтобы я максимально простую новую реализацию GUI сделал, по возможности обернув старую логику. А получается, похоже, что придётся и логику переписать на значительно более простую - чтобы сразу через ORM к БД стучаться, а не через сервис в отдельном процессе, интероперабилити и создание и использование типов удалённо в других процессах.
Блин, там даже веб-морда сделана в лучших традициях старого шаманизма - куски интерфейса на HTML-фреймах. Боковое меню - фрейм. Подвал и заголовок - фреймы. Ну и центральный блок с данными - фрейм. Веб-контролы с данными (типа списков и таблиц) выполняют у себя всякие фильтрации на языке HQL.
Сколько таблиц в базе?
Под сотню. Плюс ещё несколько десятков какого-то мусора с названиями от "Test1" до нечитаемого набора букв и цифр. БД вроде MS SQL Server, но это тестовая вроде. К проекту ещё и оракловские либы зачем-то подключены.