freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

代碼管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)(完整版)

2025-05-20 13:52上一頁面

下一頁面
  

【正文】   大家都知道,地球上任何人都有自己獨(dú)一無二的指紋,這常常成為公安機(jī)關(guān)鑒別罪犯身份最值得信賴的方法;與之類似,MD5 就可以為任何文件(不管其大小、格式、數(shù)量)產(chǎn)生一個(gè)同樣獨(dú)一無二的“數(shù)字指紋” ,如果任何人對(duì)文件做了任何改動(dòng),其 MD5 值也就是對(duì)應(yīng)的“數(shù)字指紋” 都會(huì)發(fā)生變化。(3)點(diǎn)擊確認(rèn)以后,系統(tǒng)執(zhí)行 SQL 查詢語句,把指定的歷史版本中的所有文件拷貝到用戶指定的路徑中。用戶可以從差異信息列表中查看到變更信息,從工程信息中看到備注信息。 工程設(shè)置功能詳細(xì)設(shè)計(jì)工程設(shè)置是代碼管理系統(tǒng)的主要功能。當(dāng)更新成功后,工程路徑下被刪除的文件又回來了。該功能實(shí)現(xiàn)的具體步驟:(1)鼠標(biāo)點(diǎn)擊測試版本,如果右邊信息列表中文件有改動(dòng),則可以進(jìn)行提交操作,否則不能提交。用戶只能對(duì)歷史版本進(jìn)行檢出,不能對(duì)當(dāng)成的測試版本進(jìn)行檢出。MD5 技術(shù)已經(jīng)在第三章詳細(xì)介紹過,這里再做簡單的說明。當(dāng)用戶鼠標(biāo)點(diǎn)擊其他的版本時(shí),系統(tǒng)自動(dòng)打開數(shù)據(jù)庫連接,并執(zhí)行查詢 SQL 語句,將結(jié)果顯示在信息列表和差異信息列表中。 該文件是確定 程序與數(shù)據(jù)源的連接。由此,可得知不能對(duì)現(xiàn)在的測試版本進(jìn)行提交操作。這里存儲(chǔ)的是當(dāng)前正在編寫的程序文件,即有待改進(jìn)的文件。杭州電子科技大學(xué)信息工程學(xué)院本科畢業(yè)設(shè)計(jì)22圖 53 提交出錯(cuò)提示(4)CMiniSvnView 類是住界面中右邊的信息列表的主題類。}(3) CMainFrame 類是本程序的主要載體類,其他的模塊都要在這里使用或者是要借用 CMainFrame 類來實(shí)現(xiàn)具體可視化的操作。杭州電子科技大學(xué)信息工程學(xué)院本科畢業(yè)設(shè)計(jì)21if (i){getDBVersion(0,0)。if ((4)==版本){index= atoi((() 4).GetBuffer(0))。//()。tvSecond)。i()。= (0)。=TVIF_TEXT|TVIF_IMAGE|TVIF_SELECTEDIMAGE。()。ImgTree,TVSIL_NORMAL)。 (AfxGetApp()LoadIcon (IDI_LIB_PRJ))。(i,4,strInfo[1])。杭州電子科技大學(xué)信息工程學(xué)院本科畢業(yè)設(shè)計(jì)18for (int i=0。 (amp。 (3,主版本號(hào),LVCFMT_LEFT,80)。listCtrl=(CListCtrlamp。下面對(duì)這些類的設(shè)計(jì)進(jìn)行詳細(xì)的說明。變更列表里顯示的是當(dāng)前測試版本對(duì)文件進(jìn)行的改變。(1) 菜單欄里設(shè)有主要功能操作按鍵:檢出、提交、更新、工程設(shè)置、刷新和刪除。一個(gè)客戶提出請(qǐng)求后,服務(wù)進(jìn)程被“喚醒 ”并且為客戶提供服務(wù),對(duì)客戶的請(qǐng)求做出所需要的應(yīng)答。 杭州電子科技大學(xué)信息工程學(xué)院本科畢業(yè)設(shè)計(jì)134 總體設(shè)計(jì) 體系結(jié)構(gòu)設(shè)計(jì)通常的代碼版本控制軟件,都采用客戶機(jī)/服務(wù)器(C/S)體系結(jié)構(gòu),C/S 結(jié)構(gòu)是這樣的一種結(jié)構(gòu):它包括一個(gè)客戶機(jī)(或前端),一個(gè)服務(wù)器(或稱后端),客戶機(jī)的作用是訪問和處理遠(yuǎn)程服務(wù)器上的數(shù)據(jù),服務(wù)器的作用是接收和處理客戶機(jī)的數(shù)據(jù)請(qǐng)求。   當(dāng)設(shè)置好這四個(gè)鏈接變量后,就開始進(jìn)入算法的四輪循環(huán)運(yùn)算。 算法描述對(duì) MD5 算法簡要的敘述可以為:MD5 以 512 位分組來處理輸入的信息,且每一分組又被劃分為 16 個(gè) 32 位子分組,經(jīng)過了一系列的處理后,算法的輸出由四個(gè) 32 位分組組成,將這四個(gè) 32 位分組級(jí)聯(lián)后將生成一個(gè) 128 位散列值?! ×钍澜珥敿饷艽a學(xué)家想象不到的是,破解 MD5 之后,2022 年 2 月,王小云教授又破解了另一國際密碼 SHA-1。Den boer 和 Bosselaers 曾發(fā)現(xiàn) MD5 算法中的假?zèng)_突(pseudocollisions),但除此之外就沒有其他被發(fā)現(xiàn)的加密后結(jié)果了。毫無疑問,MD4 就此被淘汰掉了。后來,Rogier 和 Chauvaud發(fā)現(xiàn)如果忽略了檢驗(yàn)和將產(chǎn)生 MD2 沖突。它的作用是讓大容量信息在用數(shù)字簽名軟件簽署私人密鑰前被壓縮 成一種保密的格式(就是把一個(gè)任意長度的字節(jié)串變換成一定長的大整數(shù))。SQL Server 2022 是 Microsoft 公 司 推 出 的 SQL Server 數(shù) 據(jù) 庫 管 理 系 統(tǒng) ,該 版 本 繼 承 了 SQL Server 版 本 的 優(yōu) 點(diǎn) , 同 時(shí) 又 比 它 增 加 了 許 多 更 先 進(jìn) 的功 能 。使用其向?qū)б约翱丶幊?,使得不論是界面編寫,還是程序內(nèi)核設(shè)計(jì),都更加的簡單。這圖就抽象為 CDC。 (2)CDocument 文檔,負(fù)責(zé)內(nèi)存數(shù)據(jù)與磁盤的交互。 MFC 框架MFC 是 微 軟 封 裝 了 的 API。 (2) 軟件環(huán)境 選擇好的操作系統(tǒng)和好的編程語言是系統(tǒng)優(yōu)劣的關(guān)鍵,我們要求系統(tǒng)在盡可能多的環(huán)境下運(yùn)行,故選擇 Windows XP 平臺(tái),對(duì)于一些無法在 98 中運(yùn)行的API 函數(shù),一律不采用,并采取優(yōu)化的算法編寫程序。所以應(yīng)該采用模塊化開發(fā),各個(gè)模塊之間不要有太多的聯(lián)系,以免維護(hù)困難。(3) 當(dāng)點(diǎn)擊“更新”按鈕時(shí),恢復(fù)工程路徑下的文件:如果工程路徑下的文件被刪除,則可以恢復(fù);骨骼工程路徑下的文件被修改,則無法恢復(fù)到前一版本的文件。* 優(yōu) 化 過 的 數(shù) 據(jù) 庫 訪 問 , 使 得 一 些 操 作 不 必 訪 問 數(shù) 據(jù) 庫 就 可 以 做 到 。* 原 子 提 交 。許 多 開 發(fā) 團(tuán) 隊(duì) 換 用 Subversion 是 因 為 Trac、 SourceFe、 CollabNet、 CodeBeamer 等 專 案 協(xié) 同 作 業(yè) 軟 件 以 及Eclipse、 NetBeans 等 IDE 提 供 Subversion 的 支 援 整 合 。Clearcase 是Rational 公司的產(chǎn)品,也是目前使用較多的代碼版本管理工具。 課題現(xiàn)狀本課題目的是設(shè)計(jì)一個(gè)代碼管理系統(tǒng),是代碼版本管理軟件的小規(guī)模版本,實(shí)現(xiàn)個(gè)人軟件代碼的管理。在軟件開發(fā)的過程中,除了需要調(diào)用現(xiàn)成的代碼外,還需要記錄下軟件開發(fā)的過程,以便日后出錯(cuò)時(shí)查找原因。Update。所以本課題提出了一個(gè)適應(yīng)于個(gè)人的代碼管理系統(tǒng)軟件的設(shè)計(jì),實(shí)現(xiàn)基本功能,并進(jìn)行了人性化的界面設(shè)計(jì)。這種代碼版本管理軟件業(yè)越來越受大眾歡迎。 適用于進(jìn)行個(gè)人軟件開發(fā)的人士。同時(shí)為了避免在軟件開發(fā)過程中出現(xiàn)嚴(yán)重錯(cuò)誤,一種幫助他們管理代碼的軟件,即代碼版本管理系統(tǒng)軟件誕生了。我們都難免如此。VSS 的安裝和配置非常簡單,對(duì)于該產(chǎn)品,不需要外部的培訓(xùn)。Clearcase 功能強(qiáng)大,安全性高,但不易于使用。 而 Subversion 下 , 任 何 一 次 提 交 都 會(huì) 對(duì) 所 有 文 件 增加 到 同 一 個(gè) 新 版 本 號(hào) , 即 使 是 提 交 并 不 涉 及 的 文 件 。 ( 簡 單 的 理 解 , 就 是只 保 存 和 上 一 版 本 不 同 之 處 )* 目 錄 也 有 版 本 歷 史 。在本論文中將闡述本系統(tǒng)的功能、特點(diǎn)及使用方法,且詳細(xì)闡述開發(fā)本軟件所用的相關(guān)技術(shù),具體分析本系統(tǒng)的各個(gè)模塊的功能及實(shí)現(xiàn)方法,說明本系統(tǒng)的設(shè)計(jì)思想及方法。比如,在使用了某個(gè)功能按鍵之后,程序要在 1 至 2秒內(nèi)做出響應(yīng)。因此,在應(yīng)用時(shí)應(yīng)采用更好的配置。MFC 是 Win API 與 C++的結(jié)合,API,即微軟提供的 WindowS 下應(yīng)用程序的杭州電子科技大學(xué)信息工程學(xué)院本科畢業(yè)設(shè)計(jì)7編程語言接口,是一種軟件編程的規(guī)范,但不是一種程序開發(fā)語言本身,可以允許用戶使用各種各樣的第三方的編程語言來進(jìn)行對(duì) WindowS 下應(yīng)用程序的開發(fā),使這些被開發(fā)出來的應(yīng)用程序能在 WindowS 下運(yùn)行,比如 VB,VC++,Java,Dehpi編程語言函數(shù)本質(zhì)上全部源于 API,因此用它們開發(fā)出來的應(yīng)用程序都能工作在WindowS 的消息機(jī)制和繪圖里,遵守 WindowS 作為一個(gè)操作系統(tǒng)的內(nèi)部實(shí)現(xiàn),這其實(shí)也是一種必要,微軟如果不提供 API,這個(gè)世上對(duì) Win 編程的工作就不會(huì)存在,微軟的產(chǎn)品就會(huì)迅速從時(shí)尚變成垃圾,上面說到 MFC 是微軟對(duì) API 函數(shù)的專用C++封裝,這種結(jié)合一方面讓用戶使用微軟的專業(yè) C++ SDK 來進(jìn)行 WindowS 下應(yīng)用程序的開發(fā)變得容易,因?yàn)?MFC 是對(duì) API 的封裝 ,微軟做了大量的工作,隱藏了好多程序。 (1)CWnd:窗口,它是大多數(shù)“可見窗體” 的父類(Windows 里幾乎所有看得見的東西都是一個(gè)窗口,大窗口里有許多小窗口) ,比如視圖 CView、框架窗口 CFrameWnd、工具條 CToolBar、對(duì)話框 CDialog、按鈕 CButton,etc。你自己的許多功能都要加在里面,你打交道最多的就杭州電子科技大學(xué)信息工程學(xué)院本科畢業(yè)設(shè)計(jì)8是它。似于 C 中的 main 函數(shù),是程序執(zhí)行的入口和管理者,負(fù)責(zé)程序建立、消滅,主窗口和文檔模板的建立。 它 最 初 是 由 Microsoft Sybase 和 AshtonTate 三 家 公 司 共 同 開 發(fā) 的 , 于 1988 年 推 出 了 第 一 個(gè) OS/2 版 本 。VC++應(yīng)用程序的開發(fā)主要有兩種模式,一種是 WIN API 方式,另一種則是MFC 方式,傳統(tǒng)的 WIN API 開發(fā)方式比較繁瑣,而 MFC 則是對(duì) WIN API 再次封裝,所以 MFC 相對(duì)于 WIN API 開發(fā)更具備效率優(yōu)勢,所以使用 MFC 方式開發(fā)應(yīng)用程序較容易。在這個(gè)算法中,首先對(duì)信息進(jìn)行數(shù)據(jù)補(bǔ)位,使信息的字節(jié)長度是 16 的倍數(shù)。信息被處理成 512 位 damg?rd/merkle 迭代結(jié)構(gòu)的區(qū)塊,而且每個(gè)區(qū)塊要通過三個(gè)不同步驟的處理。雖然 MD5 比 MD4稍微慢一些,但卻更為安全。但即便是應(yīng)用在絕密領(lǐng)域內(nèi),MD5 也不失為一種非常優(yōu)秀的中間技術(shù)),MD5 怎么都應(yīng)該算得上是非常安全的了。使用他們的技術(shù),在數(shù)個(gè)小時(shí)內(nèi)就可以找到 MD5 碰撞。經(jīng)過這兩步的處理,現(xiàn)在的信息字節(jié)長度=N*512+448+64=(N+1)*512,即長度恰好是 512 的整數(shù)倍。每次操作對(duì) a、b、 c 和 d 中的其中三個(gè)作一次非線性函數(shù)運(yùn)算,然后將所得結(jié)果加上第四個(gè)變量,文本的一個(gè)子分組和一個(gè)常數(shù)。Client/Server 模型最終可歸結(jié)為一種“請(qǐng)求 /應(yīng)答” 關(guān)系。杭州電子科技大學(xué)信息工程學(xué)院本科畢業(yè)設(shè)計(jì)14主程序模塊連接數(shù)據(jù)庫模塊 主功能模塊檢出 更新 提交 查看數(shù)據(jù)庫讀取數(shù)據(jù)庫存儲(chǔ)圖 42 功能模塊劃分示圖我覺得這樣的模塊劃分設(shè)計(jì)符合強(qiáng)內(nèi)聚,弱耦合的原則,并且易于實(shí)現(xiàn)。具體如下圖 44 所示。工程設(shè)置可以設(shè)置工程名、設(shè)置工程路徑和清空工程。其核心代碼為:void CBKView::OnInitialUpdate() {g_pView[2] = this。 (0,文件名稱,LVCFMT_LEFT,60)。 (AfxGetApp()LoadIcon (IDI_FILE_ADD))。)GetListCtrl()。(i,1,g_chgVec[i].sContents)。CTreeView::OnInitialUpdate()。)GetTreeCtrl ()。}void CLTree::UpdateView(){CTreeCtrlamp。//樹葉HTREEITEM item_root。CString str。tvSecond)。=2。//=80。 HTREEITEM select_item= ()。((CBKView *)(g_pView[2]))UpdateView()。}i=1。如圖 52 所示。圖 54 CMiniSvnView 類與 CBKView 類顯示內(nèi)容差異(二)主界面圖標(biāo)詳細(xì)設(shè)計(jì)主界面是由 4 個(gè)模塊組成的:菜單欄、左樹列表、右信息列表和底部差異信息列表。(4)紅色圓圈圖標(biāo),表示該文件在該版本中被修改過,詳細(xì)的修改信息可以通過子版本號(hào)查看在第幾版本中進(jìn)行修改。存儲(chǔ)過程選項(xiàng)也有 5 個(gè),分別是up_CheckOut、up_ClrPrj、up_GetCurV 、up_GetInfo 和 up_VChg。杭州電子科技大學(xué)信息工程學(xué)院本科畢業(yè)設(shè)計(jì)24圖 55 配置錯(cuò)誤有了配置文件 ,程序才能正常運(yùn)行。通過判定文件的差異,文件狀態(tài)隨之改變;通過判定文件的差異,文件圖標(biāo)也會(huì)改變;通過判定文件差異,系統(tǒng)可以判斷是否可以進(jìn)行提交操作。我們常常在某些軟件下載站點(diǎn)的某軟件信息中看到其 MD5 值,它的作用就在于我們可以在下載該軟件后,對(duì)下載回來的文件用專門的軟件(如Windows MD5 Check 等)做一次 MD5 校驗(yàn),以確保我們獲得的文件與該站點(diǎn)提供的文件為同一文件。(4)檢出成功,執(zhí)行完畢。(3)版本提交成功,執(zhí)行完畢。用戶點(diǎn)擊工程設(shè)置按鍵,彈出工程信息界面,如下圖。在用戶不小心刪除了工程路徑中測試版本中的文件時(shí),用戶可以使用更新功能對(duì)被刪除的文件進(jìn)行恢復(fù)。與檢出功能不同,提交功能只能對(duì)當(dāng)前的測試版本進(jìn)行操作,否則操作無效,并且系統(tǒng)會(huì)彈出提示的警告。 檢出功能模塊詳細(xì)設(shè)計(jì)杭州電子科技大學(xué)信息工程學(xué)院本科畢業(yè)設(shè)計(jì)25檢出功能是代碼管理系統(tǒng)主功能之一,其作用是把歷史版本庫中的文件調(diào)用,復(fù)制并粘貼到用戶指定的目錄中。本人做的代碼管理系統(tǒng)軟件,用的是 MD5 哈希值判定文件差異。進(jìn)入主界面后,系統(tǒng)默認(rèn)指向測試版本,所以右邊信息列表顯示的是測試版本中的內(nèi)容信息。要想正常運(yùn)行 文件,另外必須有一個(gè)數(shù)據(jù)庫配置文件。(6)綠色鉤圖標(biāo),表示測試版本與上一次生成的版本沒有差異,即未做任何修改。
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1