问题更多是做问题的最佳方式而不是真正的问题。
我有一个必须访问数据库的应用程序。因此,我每次需要访问数据库时都会调用一个类DatabaseManager
,例如:{/ p>
DatabaseManager *db = new DatabaseManager;
std::vector<Element> elementVector = db->getAElementsById(id);
对于所有插入,更新或删除请求,您都一样。
...是我的文件已经有1200行,并且每个新功能都在增长。
那么漂亮的人怎么办?
我还阅读了其他帖子,但没有找到问谷歌或回答我问题的人的好问题。
答案 0 :(得分:1)
我将数据库模块拆分为多个文件。例如,一个文件处理插入,另一个文件处理提取,第三个处理搜索。
我的实际上更复杂,但实践应该是将代码分成单独的主题文件,最好不超过300 LOC(代码行)。
答案 1 :(得分:0)
我现在选择的解决方案如下(因为我懒得重建新类等等):我在几个cpp文件中拆分了类
// DatabaseManager.h
class DatabaseManager
{
//// Getters - in DatabaseManager_getters.cpp
public:
// Movies
Movie getOneMovieById(const int id);
QList<Movie> getAllMovies(const QString fieldOrder = "title");
....
private:
// Other functions for getters
Movie hydrateMovie(QSqlQuery &query);
//// Inserts - in DatabaseManager_insert.cpp
public:
bool insertNewMovie(Movie &movie);
....
private:
bool insertNewTag(Tag &tag);
....
//// Updates - in DatabaseManager_update.cpp
public:
bool updateMovie(Movie &movie);
....
//// Delete - in DatabaseManager_delete.cpp
public:
bool deleteMovie(Movie &movie);
private:
bool deletePeople(const People &people);
};
显然.cpp文件遵循宣布的内容。我更容易找到函数的位置并维护代码。
另一次,如果跟你提出的建议不相关,我会三思而后行。
再来一次!