一、学习的知识点
一)1 单例模式
#ifndef SIGNALDATABASE_H
#define SIGNALDATABASE_H
#include <iostream>
#include <QString>
#include <QDebug>
#include "sqlite3.h"
#include <QObject>
#include <QString>
#include "sqlite3.h"
class signalDatabase
{
//静态成员需要在源程序的外部初始化,不能在函数内部初始化。
signalDatabase *signalDatabase::mydatabase = NULL;
public:
//成员函数,返回类对象指针;
//只有指针为NULL时,才会被new,否则返回原有指针;
//保证一个类只有一个实例
static signalDatabase *getInstance(const char *dbpath);
{
if(signalDatabase::mydatabase == NULL)
signalDatabase::mydatabase = new signalDatabase(dbpath);
return signalDatabase::mydatabase;
}
void openDatabase(const char *dbPath);
void closeDatabase();
void createtable();
int getData(char *sql,char **&result,int &row,int &col);
private:
//私有的构造函数
signalDatabase(const char *dbpath);
{
this->sqldb = NULL;
this->openDatabase(dbpath);
this->createtable();
}
static signalDatabase *mydatabase;
char *errmsg;
sqlite3 *sqldb;
};
#endif // SIGNALDATABASE_H
//使用
signalDatabase *sqlitedata = signalDatabase::getInstance("userdata.db");
一)2 MVC设计模式
MVC设计模式是把一个系统按照模型(Model)、视图(View)、控制器(Controller)的方式进行分离,这样一个应用就被分成三层:模型层、视图层和控制层。
一)2.1优点
- 耦合性低,允许更改视图层而不需要修改模型层和控制层
- 重用性高,多个不同样式的视图可以共享一个模型
- 部署快,生命周期成本低
- 可维护性高
一)2.1缺点
- 完全理解MVC比较复杂。
- 调试困难
- 不适合小型,中等规模的应用程序
- 增加系统结构和实现的复杂
二、上课没有听懂或者没有理解的地方
无
三、当天学习的收获
学习到了一种设计模式