本書是為配合“C語言程序設計”課程的學習而編寫的,其內容緊扣C程序設計的教學內容與教學進度。本書針對C語言的學習過程,采用了由淺入深、由易到難逐漸展開的方式組織內容:首先根據上機實驗的要求與特點,緊扣教學內容,分章節編排了12次相應的上機實驗;其次針對學生在學習C語言中對編程習題不易掌握的問題,在給出相應參考解答的同時提出了針對性的思考題;最后結合一些應用題目的拓展訓練,讓學生進一步深刻地理解和掌握程序設計的思想和方法。 本書所安排的實驗都有具體實驗目的與實驗內容,并且根據學生每次上機操作的時間要求(一般為兩學時)精心選排了各次的實驗任務。其基本目標是使學生進一步理解所學的內容;提高學生用C語言設計、編寫程序的能力;使學生充分體會C程序設計由問題提出到算法選定、程序編制再到上機實驗的編輯→編譯→連接→運行的全過程。本書的范圍與難易程度是以C語言的教學大綱及計算機水平考試(初級程序員級)和計算機等級考試(接近二級)的要求為參考標準編排的。本書可作為高等學校非計算機專業學生學習“計算機程序設計方法”或計算機專業學生掌握“計算機程序設計基礎”的學習參考書與實驗指導書。本書的內容包括三個部分,第一部分包括對實驗的基本要求和在Turbo C全屏幕編輯環境下、Windows平臺VC視窗環境下的C程序上機操作基本方法;第二部分包括根據各知識點所編寫的實驗及相應習題的參考解答、思考題及拓展訓練;第三部分給出了覆蓋本書大部分知識點的綜合練習題及參考答案。參加本書編寫的有楊凱、張繼生、張續亮、王瑞、劉尚懿、孟丹,在編寫的過程中,張繼生老師為本書的編寫做了大量的工作,在此表示感謝!最后還要感謝為本書付出心血的編輯、審稿人員等各位朋友!需要說明的是,本書給出的程序并非是唯一正確的解答,對于同一題目可以編出多種程序,我們給出的只是其中的一種,甚至不一定是最好的,本書只是提供一個參考答案,主要以引導、啟發讀者為目的。書中的所有程序都是在Visual C++ 6.0環境下調試通過的。 由于編者水平有限,難免存在疏漏與不足之處,懇請各位專家以及廣大讀者批評指正。編者2015年12月
more >
如何進行系統的架構設計?
一個軟件項目在需求確定后,就可以開始系統的架構設計了。架構設計不同于編寫代碼,需要遵循嚴格的語法和編程規范。它沒有規范可遵循,存在即合理,適合系統開發和運行的架構就是最合理的系統架構。
系統的架構設計是在業務需求已經清晰的前提下進行的,假定在系統需求分析階段已經確定了系統的功能和業務范圍,也明確了系統運營需求。在上述需求還沒有確定的情況下,不適宜開展系統的架構設計,需要回到需求分析階段完善上述需求后再開展系統的架構設計。
系統架構就是一些模型圖,模型圖是人們用來理解系統和溝通的工具。這些模型圖需要提供給系統相關干系人來理解系統,系統相關干系人有項目經理、產品經理、開發人員、系統運營維護人員、客戶、項目投資人等。這些干系人有不同的知識背景,對同一架構模型圖也會有不同的認知和理解:如果把開發架構模型圖給產品經理或客戶看,他們定然看不懂也不能理解;同樣的道理,如果只把邏輯架構圖給開發人員看,就不能正確地指導開發人員構建開發環境。
因此架構設計師在進行系統架構設計時,需要從系統的不同維度進行設計,以滿足系統相關干系人理解系統架構的需求。架構設計模型主要有邏輯架構、開發架構、數據架構、物理架構和運行架構五種模型圖。一般來說需要設計的系統架構模型有邏輯架構、開發架構和物理架構三種架構模型圖。數據架構模型一般放在數據庫中進行設計,運行架構和物理架構基本相近,只是在物理架構中加了數據的流向,因此一些系統設計使用物理架構代替了運行架構。
設計邏輯架構模型
邏輯架構模型主要是確定系統的功能范圍和系統劃分。在設計邏輯架構模型時,可以抓住兩個關鍵點:一個關鍵點是對系統進行邏輯劃分,將一個大系統劃分為多個子系統;另外一個關鍵點是明確各子系統之間的協作和調用關系。
繪制邏輯架構的模型圖有系統流程圖和系統結構圖:系統流程圖描述了系統各子系統、相關文件和數據之間的關系,記錄了整個系統的體系結構;系統結構圖也稱為層次圖,它以層次方式描述了系統從頂層到最底層的功能分解。
下圖分別是人脈系統的系統流程圖和系統結構圖。
圖 1 人脈系統流程圖
圖 2 人脈系統結構圖
上面的人脈系統流程圖和人脈系統結構圖就是依據人脈系統需求規格說明書給出的功能和業務范圍繪制的。
設計開發架構模型
開發架構模型圖是給開發人員看的,開發架構模型指導開發人員如何來架構系統的開發環境。開發環境包括系統開發框架的選型、開發工具和編程語言、模塊劃分等內容。下圖是人脈系統開發架構模型圖。
圖 3 人脈系統開發架構模型圖
開發架構模型圖給出了技術體系是B/S結構,開發框架選擇SSM,開發語言是JavaEE。系統采用三層結構,分別是表示層、WEB應用層和數據層。表現層是JSP頁面,在瀏覽器中運行,表現層是MVC的View。WEB應用層的控制層是MVC的,業務邏輯層是MVC的Service,實體層是MVC的POJO。數據層由MyBaits數據庫開發框架組成。(Plain Java Object實際就是普通 )
設計物理架構模型
物理架構模型是給系統部署人員和運營維護人員看的,主要給出系統的部署環境模型,包括網絡環境、硬件環境和軟件環境。下圖是系統部署網絡環境模型圖。
圖 4 系統部署網絡環境模型圖
從上面網絡環境模型圖中可以看出,系統部署只需要一臺主機,要求支持HTTP協議和遠程桌面協議。系統可以考慮部署到阿里云或騰訊云。
系統的架構設計主要涉及到三種模型圖,分別是邏輯架構模型、開發架構模型和物理架構模型。邏輯架構模型一般采用系統流程圖和系統結構圖建模;開發架構模型沒有標準的模型圖,可以使用PPT或Visio繪圖工具進行繪制;物理架構模型主要是由網路環境、硬件和軟件環境組成。