Q.什么是軟件開發(fā)流程?
1.通過一系列步驟保證軟件的順利完成
2.軟件產(chǎn)品在生命期內(nèi)的管理方法學(xué)
軟件開發(fā)流程的本質(zhì)
1.開發(fā)流程與具體技術(shù)無關(guān)
2.開發(fā)流程是開發(fā)團(tuán)隊(duì)必須遵守的規(guī)則
常見的開發(fā)流程--即興、瀑布、增量、螺旋、敏捷等
A.即興模型
1.與最終用戶交流后立即開始進(jìn)行開發(fā)
2.沒有需求分析和需求發(fā)掘的過程
3.沒有整體設(shè)計(jì)以及規(guī)劃的過程
4.沒有相關(guān)軟件文檔,維護(hù)性差
B.瀑布模型
1.通過自上而下的步驟進(jìn)行軟件開發(fā)
2.每個(gè)開發(fā)步驟都是不可逆的
C.增量模型
1.將系統(tǒng)能分解為互不重疊的子功能
2.每次全力實(shí)現(xiàn)一個(gè)子功能
3.子功能全部完成后系統(tǒng)開發(fā)結(jié)束
D.螺旋模型
1.采用一種迭代的方法進(jìn)行系統(tǒng)開發(fā)
2.軟件項(xiàng)目分解成多個(gè)不同的版本完成
3.每個(gè)版本的開發(fā)過程都需要用戶參與
4.根據(jù)前一個(gè)版本的反饋計(jì)劃下一個(gè)版本
E.敏捷模型
1.一切從簡(jiǎn)
2.擁抱變化
3.高效工作
4.持續(xù)開發(fā)
創(chuàng)新互聯(lián)建站是專業(yè)的察哈爾右翼中旗網(wǎng)站建設(shè)公司,察哈爾右翼中旗接單;提供網(wǎng)站制作、做網(wǎng)站,網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行察哈爾右翼中旗網(wǎng)站開發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!
A.Qt的IO操作的處理方式
1.Qt通過統(tǒng)一的接口簡(jiǎn)化了文件與外部設(shè)備的操作方式
2.Qt中的文件被看作一種特殊的外部設(shè)備
3.Qt中的文件按操作與外部設(shè)備的操作相同
B.IO操作中的關(guān)鍵函數(shù)接口
1.打開設(shè)備:bool open
2.讀取數(shù)據(jù):QByteArray read
3.寫入數(shù)據(jù):qint64 write
4.關(guān)閉設(shè)備:void close
IO操作的本質(zhì):連續(xù)存儲(chǔ)空間的數(shù)據(jù)讀寫
C.Qt中IO設(shè)備的類型
1.順序存取設(shè)備--只是從頭開始順序的讀寫數(shù)據(jù),不能指定數(shù)據(jù)的讀寫位置
2.隨機(jī)存取設(shè)備--可以定位到任意的位置進(jìn)行數(shù)據(jù)的讀寫
Qt中IO設(shè)備的繼承層次圖
QFile是Qt中用于文件操作的類
QFile對(duì)象對(duì)應(yīng)到計(jì)算機(jī)上的一個(gè)文件
QFileInfo類用于讀取文件屬性信息
D.Qt中提供了臨時(shí)文件操作類QTemporaryFile
1.安全地創(chuàng)建一個(gè)全局唯一的臨時(shí)文件
2.當(dāng)對(duì)象銷毀時(shí)對(duì)應(yīng)的臨時(shí)文件將被刪除
3.臨時(shí)文件的打開方式為QIODevice::ReadWrite
4.臨時(shí)文件常用于大數(shù)據(jù)傳遞或者進(jìn)程間通信的場(chǎng)合
代碼示例
#include
#include
#include
#include
#include
#include
void write(QString f)
{
QFile file(f);
if( file.open(QIODevice::WriteOnly | QIODevice::Text) )
{
file.write("mylove\n");
file.write("dangdangxiaohai\n");
file.close();
}
}
void read(QString f)
{
QFile file(f);
if( file.open(QIODevice::ReadOnly | QIODevice::Text) )
{
QByteArray ba = file.readLine();
QString s(ba);
qDebug() << s;
file.close();
}
}
void info(QString f)
{
QFile file(f);
QFileInfo info(file);
qDebug() << info.exists();
qDebug() << info.isFile();
qDebug() << info.isReadable();
qDebug() << info.isWritable();
qDebug() << info.created();
qDebug() << info.lastRead();
qDebug() << info.lastModified();
qDebug() << info.path();
qDebug() << info.fileName();
qDebug() << info.suffix();
qDebug() << info.size();
}
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
write("C:/Users/59673/Desktop/test.txt");
read("C:/Users/59673/Desktop/test.txt");
info("C:/Users/59673/Desktop/test.txt");
return a.exec();
}
生成的結(jié)果圖