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

正文內(nèi)容

[軟件工程]ch06-編碼(編輯修改稿)

2025-02-07 18:10 本頁面
 

【文章內(nèi)容簡介】 rl強(qiáng)大的 文字處理功能 的編程語言 ? Ruby 語言通常非常直觀, 按照編程人認(rèn)為它應(yīng)該的方式運(yùn)行,而不是一味從機(jī)器的角度設(shè)想 。 ? 特點 :任何東西都是對象,包括其他語言中的基本數(shù)據(jù)類型,比如整數(shù) ? 不管是數(shù)學(xué)或者邏輯表達(dá)式還是一個語句,都有值 ? Ruby是動態(tài)語言,已經(jīng)定義的類可以在運(yùn)行時修改 ? 變量無需聲明,變量沒有數(shù)據(jù)類型 2023/2/8 48 2023/2/8 49 ( 11) JavaScript ? JSP與 Microsoft的 ASP技術(shù)非常相似。兩者都提供在 HTML代碼中混合某種程序代碼 、由語言引擎解釋執(zhí)行程序代碼的能力。 ASP的編程語言是VBScript之類的腳本語言, JSP使用的是 Java,這是兩者最明顯的區(qū)別 ? 此外, ASP與 JSP還有一個更為本質(zhì)的區(qū)別:兩種語言引擎用完全不同的方式處理頁面中嵌入的程序代碼。在 ASP下, VBScript代碼被 ASP引擎解釋執(zhí)行;在 JSP下,代碼被編譯成 Servlet并由 Java虛擬機(jī)執(zhí)行,這種編譯操作僅在對 JSP頁面的第一次請求時發(fā)生 ? 程序代碼的執(zhí)行結(jié)果被重新嵌入到 HTML代碼中 ,然后一起發(fā)送給瀏覽器。 ASP和 JSP都是面向 Web服務(wù)器的技術(shù),客戶端瀏覽器不需要任何附加的軟件支持 ( 12) Delphi / Object Pascal ( 16) Pascal Pascal ? 由瑞士 Niklaus Wirth教授于六十年代末設(shè)計并創(chuàng)立 ? Pascal語言語法嚴(yán)謹(jǐn),層次分明,程序易寫,具有很強(qiáng)的可讀性, 是第一個結(jié)構(gòu)化的編程語言 Delphi / Object Pascal ? Delphi是面向?qū)ο蟮腜ascal 語言的集成開發(fā)環(huán)境 ? Delphi和 C++Builder是基于不同語言但 完全相同的兩種開發(fā)環(huán)境 2023/2/8 50 ( 13) Lisp:表處理語言 ( 29) Scheme ( 32) Prolog ? LISt Processing,即表處理,這種編程語言用來處理由括號(即“ (”和“ )”)構(gòu)成的列表 ? Lisp 語言最早是在 20 世紀(jì) 50 年代末由麻省理工學(xué)院( MIT)研究 人工智能 針對圖靈機(jī)程序難以讀懂而開發(fā)的 ? LISP語言的主要現(xiàn)代版本包括 Common Lisp和( 29) Scheme ? ( 32) Prolog( Programming in Logic)是一種邏輯編程語言,建立在邏輯學(xué)的理論基礎(chǔ)之上, 最初被運(yùn)用于自然語言等研究領(lǐng)域,現(xiàn)在已廣泛的應(yīng)用在人工智能的研究中,可以用來建造專家系統(tǒng)、自然語言理解、智能知識庫等。 2023/2/8 51 ( 15) TransactSQL ( 19) PL/SQL TransactSQL ? TSQL是 Microsoft在SQL Server中的 SQL3標(biāo)準(zhǔn)的實現(xiàn) ,是對 SQL的擴(kuò)展 ? 具有 SQL的主要特點 ,同時增加了變量 ,運(yùn)算符 ,函數(shù) ,流程控制和注釋等語言元素 ? SQL Server中使用圖形界面能夠完成的所有功能 ,都可以利用 TSQL來實現(xiàn) PL/SQL ? Procedural Language/SQL ? PL/SQL是 Oracle數(shù)據(jù)庫對 SQL語句的擴(kuò)展 ? 是把數(shù)據(jù)操作和查詢語句組織在 PL/SQL代碼的過程性單元中,通過邏輯判斷、循環(huán)等操作實現(xiàn)復(fù)雜的功能或者計算的程序語言 2023/2/8 52 ( 17) Lua ? Lua 是一個小巧的腳本語言,作者是巴西人,該語言的設(shè)計目的是為了 嵌入應(yīng)用程序 中,從而為應(yīng)用程序提供靈活的擴(kuò)展和定制功能 ? Lua由標(biāo)準(zhǔn) C編寫而成 ,腳本可以很容易的被C/C++代碼調(diào)用,也可以反過來調(diào)用 C/C++的函數(shù) ? 一個完整的 Lua解釋器不過 200k,在目前所有腳本引擎中, Lua的速度是最快的 ? 這一切都決定了 Lua是作為嵌入式腳本的最佳選擇 2023/2/8 53 ( 18) Ada ? Ada語言的重要特征: 模塊化設(shè)計,編譯檢查,平行處理,異常處理及泛型編程 。 Ada在 95年加入了對面向?qū)ο笤O(shè)計的支持,包括動態(tài)內(nèi)存分配與管理 ? Ada語言不僅體現(xiàn)了許多現(xiàn)代軟件的開發(fā)原理,而且將這些原理付諸實現(xiàn)。因此, Ada語言的使用可大大改善軟件系統(tǒng)的 清晰性、可靠性、有效性、可維護(hù)性 。 ? Ada的出現(xiàn),標(biāo)志著 軟件工程成功地進(jìn)入了國家和國際的規(guī)模 ,它被譽(yù)為第四代計算機(jī)語言的成功代表 2023/2/8 54 ( 18) Ada ? 奧古斯特 艾達(dá) 洛夫萊斯伯爵夫人( Augusta Ada Lovlace, 18151852)曾對現(xiàn)代計算機(jī)技術(shù)之父查爾斯 巴貝奇( Charles Babage, 17911871)的筆記、手稿進(jìn)行了整理和修正,從某種意義上說,她是 世界上第一位計算機(jī)程序員 2023/2/8 55 ( 20) MatLab ? MATLAB是美國 MathWorks公司出品的商業(yè)數(shù)學(xué)軟件 ? 用于 算法開發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析以及數(shù)值計算 的高級技術(shù)計算語言和交互式環(huán)境 ? 主要包括 MATLAB和 Simulink兩大部分 2023/2/8 56 2023/2/8 57 ( 31): Scratch ? 這是 MIT媒體實驗室開發(fā)的一種面向孩子的語言和編程環(huán)境,圖形化、個性化和社區(qū)化是它的主要特點 Scratch語言程序示例,乒乓游戲 2023/2/8 58 編碼風(fēng)格 ? 良好的編碼風(fēng)格能在一定程度上彌補(bǔ)語言存在的缺點,反之,如果不注意風(fēng)格,即使使用了高級語言也很難寫出高質(zhì)量的程序。 ? 【 主要內(nèi)容 】 ? 程序文檔化 ? 數(shù)據(jù)說明 ? 語句結(jié)構(gòu) ? 輸入 /輸出 ? 效率 2023/2/8 59 程序文檔化 ? 【 標(biāo)識符的命名 】 ? 【 安排注釋 】 ? 【 程序的視覺組織 】 ? 【 自文檔化 】 2023/2/8 60 程序文檔化 ? 【 標(biāo)識符的命名 】 匈牙利命名法 ? chName ? ptrLink ? TmpPath。 ? 匈牙利人 Charles Simonyi首先提出 ? 微軟等大公司普遍認(rèn)可 2023/2/8 61 匈牙利命名法 ? 匈牙利命名法是一種編程時的命名規(guī)范?;驹瓌t是: 變量名=屬性類型+對象描述 ? 其中每一對象的名稱都要求有明確含義,可以取對象名字全稱或名字的一部分。命名要基于容易記憶容易理解的原則。在一個項目和模塊中保證名字的連貫性。 ? 舉例來說,表單的名稱為 form,那么在匈牙利命名法中可以簡寫為 frm,則當(dāng)表單變量名稱為Switchboard時,變量全稱應(yīng)該為 frmSwitchboard。 2023/2/8 62 程序文檔化 ? 【 標(biāo)識符的命名 】 ? 標(biāo)識符 即 符號名 ,包括 模塊名 、 變量名 、 常量名 、標(biāo)號名 、 子程序名 、 數(shù)據(jù)區(qū)名 以及 緩沖區(qū)名 等。 ? 名字 應(yīng)有一定實際意義 ,應(yīng)能反映它所代表的實際事物。 ?Times——次數(shù)的量; Total——總量; ?Average——平均值; Sum——和。 ? 選擇精煉的、意義明確的名字 ,必要時可使用縮寫名字。 ?注意縮寫規(guī)則要一致,并且要給每一個名字加注釋 。 ? 在一個程序中, 一個標(biāo)識符只應(yīng)用于一種用途 。 2023/2/8 63 程序文檔化 ? 【 安排注釋 】 ? 注釋是程序員與程序讀者之間通信的重要手段。 ? 注釋決不是可有可無的 。 ? 一些正規(guī)的程序文本中,注釋行的數(shù)量占到整個源程序的 1/ 3到 1/ 2,甚至更多。 ? 分類: ? ⑴序言性注釋 ? ⑵功能性注釋 2023/2/8 64 程序文檔化 ? 【 安排注釋 】 ——⑴ 序言性注釋 ? 置于每個程序模塊的開頭部分,給出程序的整體說明,對于理解程序本身具有引導(dǎo)作用。 ? 有些軟件開發(fā)部門對序言性注釋做了明確而嚴(yán)格的規(guī)定,要求程序編制者逐項列出。 2023/2/8 65 程序文檔化 ? 【 安排注釋 】 ——⑴ 序言性注釋 ? ⑴ 程序標(biāo)題: 有關(guān)本模塊功能和目的的說明。 ? ⑵ 主要算法 ? ⑶ 接口說明: 調(diào)用形式,參數(shù)描述, ? ⑷ 有關(guān)數(shù)據(jù)描述: ?重要的變量及其用途,約束或限制條件 ? ⑸ 模塊位置: ?在哪一個源文件中,或隸屬于哪一個軟件包 ? ⑹ 開發(fā)簡歷: ?模塊設(shè)計者,復(fù)審者,復(fù)審日期,修改日期等 2023/2/8 66 程序文檔化 ? 【 安排注釋 】 ——⑵ 功能性注釋 ? 嵌在源程序中,用以 描述其后的語句或程序段是在做什么工作 ? 好 ——對設(shè)計思想的精確表述和清晰展現(xiàn),能揭示代碼背后隱藏的重要信息 ? 差 ——解釋下面怎么做 ? 如: ? i = i + 1。 //i加 1 ? return 1。 //返回 1 ? free(p)。 //釋放 p所指的內(nèi)存 ? fclose(fin)。 //關(guān)閉文件 差:在解釋怎么做 2023/2/8 67 程序文檔化 ? 【 安排注釋 】 ——⑵ 功能性注釋 ? 嵌在源程序中 ? 好 ——對設(shè)計思想的精確表述和清晰展現(xiàn),能揭示代碼背后隱藏的重要信息 ? 差 ——解釋下面怎么做 ? 如: ? /*打開輸入文件后判斷文件長度是否符合格式要求 */ ? if ((fin = fopen(,rb) == NULL) ? { ? puts(打開文件 )。 ? return 1。 ? } 好:描述其后的程序段在做什么工作 2023/2/8 68 注釋規(guī)范 /*下面是圖像轉(zhuǎn)換的算法實現(xiàn)。彩色圖像到灰度圖像的轉(zhuǎn)換主要利用 RGB顏色空間到 YUV顏色空間的變換公式來取得灰度值, 公式為 Y = *R+*G+*B */ for (i=0。 i400。 i++) for (j=0。 j400。 j++) { y = (299 * r + 587 * g + 114 * b) / 1000。 } fclose(fin)。 2023/2/8 69 注釋規(guī)范 ? 函數(shù)的注釋風(fēng)格 ? /**********************************************/ /*功能描述: 本函數(shù)用于實現(xiàn) xxx功能,目的是: */ /*入口參數(shù): 參數(shù) xx,表示 */ /*出口參數(shù): 參數(shù) xx,表示 */ /*返回值: 返回 xx值,當(dāng)返回 xx值時,表示 */ /**********************************************/ ? /* 功能描述: 本函數(shù)用于實現(xiàn) xxx功能,目的是: 入口參數(shù): 參數(shù) xx,表示 出口參數(shù): 參數(shù) xx,表示 返回值: 返回 xx值,當(dāng)返回 xx值時,表示 */ ? ////////////////////////////////////////// //功能描述: 本函數(shù)用于實現(xiàn) xxx功能,目的是: //入口參數(shù): 參數(shù) xx,表示 //出口參數(shù): 參數(shù) xx,表示 //返回值: 返回 xx值,當(dāng)返回 xx值時,表示 ///////////////////////////
點擊復(fù)制文檔內(nèi)容
范文總結(jié)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1