C ++ One Header Multiple Sources

У меня большой класс Foo 1 :

class Foo {
public:
    void apples1();
    void apples2();
    void apples3();

    void oranges1();
    void oranges2();
    void oranges3();
}

Разделение класса - это не вариант 2 , а Файл] foo.cpp стал довольно большим. Есть ли какие-либо серьезные недостатки в дизайне для сохранения определения класса в foo.h и разделения реализации функций на foo_apples.cpp и foo_oranges.cpp .

Целью здесь является простая удобочитаемость и организация для меня и других разработчиков, работающих над системой, которая включает этот класс.


1 «Большой» означает около 4000 строк, не генерируемых машиной.
2 Почему? Ну, яблоки и апельсины на самом деле представляют собой категории алгоритмов, которые работают с графами, но довольно широко используют друг друга. Их можно разделить, но из-за исследовательского характера работы я постоянно меняю схему работы каждого алгоритма, которая, как я обнаружил, не соответствует (на ранней стадии) классическим принципам ООП.

10
задан Mogsdad 2 September 2015 в 18:49
поделиться