掃描二維碼關注

首頁 APP開(kāi)發小(xiǎo)程序開(kāi)發 微信公衆号 網站建設 營銷推廣 經典案列 産品服務 關于我們

“學習(xí)不僅是掌握知識”

向書(shū)本學習(xí),還要向實踐學習(xí)、向生活學習(xí)。消化已有(yǒu)知識,
而且要力求有(yǒu)所發現、有(yǒu)所發明(míng)、有(yǒu)所創造

基于範型的(de)多語言編程

2019/4/7 11:21:33

基于範型的(de)多語言編程

你(nǐ)在同一個(gè)項目中會(huì)用(yòng)到(dào)多少(shǎo)種語言?如(rú)果算一算的(de)話(huà),會(huì)發現數量真的(de)不少(shǎo)。我指的(de)是XML、Java、XSLT、HTML和(hé)CSS等等。但(dàn)是,你(nǐ)爲什(shén)麽會(huì)用(yòng)到(dào)它們,原因無非在于它們就是主流,更何況,它們可(kě)能(néng)是某個(gè)必需框架下的(de)唯一可(kě)選的(de)語言。實際上(shàng),你(nǐ)幾乎是被迫使用(yòng)這些語言的(de)。所有(yǒu)選擇都(dōu)已經替你(nǐ)完成了。樣式?CSS。配置?通常是XML。Web界面描述?Html。然而,如(rú)果你(nǐ)想真正采用(yòng)多語言編程,就不可(kě)避免地(dì)要從衆多語言中做出選擇。

  我想如(rú)果一個(gè)人(rén)想要做出正确的(de)選擇,就必須時刻牢記,采用(yòng)多語言編程的(de)主要目的(de)在于能(néng)夠選擇正确的(de)語言解決手頭的(de)業(yè)務問題。于是,現在的(de)問題就在于如(rú)何爲給定的(de)領域及子領域選擇正确的(de)語言?

  首先,理(lǐ)解現有(yǒu)語言的(de)特性是至關重要的(de)(包括與生産環境相(xiàng)關的(de)因素以及在企業(yè)級項目中各種限制(zhì)語言選擇的(de)因素)。理(lǐ)解語言的(de)特性并不僅僅意味著(zhe)理(lǐ)解它的(de)優點和(hé)缺點,更重要的(de)是,要理(lǐ)解語言是如(rú)何對世界進行(xíng)描述(建模)的(de)。

  理(lǐ)解現有(yǒu)的(de)程序設計(jì)語言

  我們可(kě)以這樣看待程序設計(jì)語言,它是一個(gè)有(yǒu)限的(de)詞彙與規則的(de)集合,那些詞彙與規則可(kě)以組合起來描述一個(gè)特定的(de)問題。語言提供的(de)結構和(hé)概念,在很大(dà)程度上(shàng)決定了我們描述特定領域問題的(de)能(néng)力。這意味說,程序設計(jì)語言中非常重要的(de)兩個(gè)方面包括:1)現有(yǒu)的(de)詞語和(hé)規則集合,2)已存在的(de)組合規則。

  編程語言的(de)範型

  一個(gè)連貫完整的(de)詞彙集以及組合規則,可(kě)以産生一種範型,從而定義出很大(dà)一部分(fēn)的(de)語言特質(或者是在某種多範型程序設計(jì)語言中的(de)一個(gè)子集語言的(de)特質)。

  在思考現有(yǒu)的(de)語言時,範型是最重要的(de)特性。真正關鍵的(de)是使用(yòng)恰當的(de)範型生成簡潔的(de)、可(kě)讀(dú)性強的(de)代碼。使用(yòng)正确的(de)範型,有(yǒu)助于保持問題域和(hé)軟件(jiàn)模型之間的(de)一緻性,由此能(néng)夠創建出更清晰的(de)模型,産生更高(gāo)的(de)可(kě)讀(dú)性。使用(yòng)了錯誤的(de)範型則恰恰相(xiàng)反,它通常不可(kě)避免地(dì)會(huì)産生大(dà)量的(de)ad-hoc代碼,代碼數量會(huì)爆炸式地(dì)增長(大(dà)量代碼完成一個(gè)相(xiàng)對直接的(de)任務),并出現hack行(xíng)爲。

 


深圳市南山區南山街(jiē)道南海(hǎi)大(dà)道西(xī)桂廟路(lù)北陽光(guāng)華藝大(dà)廈1棟4F、4G-04

咨詢電話(huà):136 8237 6272
大(dà)客戶咨詢:139 0290 5075
業(yè)務QQ:195006118
技術(shù)QQ:179981967

更多可(kě)以了解的(de)信息

客戶案列
新聞資訊
資質榮譽
團隊風采
項目進度查詢

售前QQ咨詢
QQ溝通 項目QQ溝通

精銳軟件(jiàn)

Copyright© 2018-2023 深圳市無窮大軟件技術有限公司 All Rights Reserved. 京ICP證000000号 公安備案号:粵公網安備44030502009460号