成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何正確學習C++應用程序

開發 后端
許多編程人員學習C++應用程序總結經驗為,有的覺得C++語言是一門獨立的語言,并不是在C語言的基礎上,可以直接學習C++不必先從C下手。

C++應用程序應當以更理性的態度來看待自己的工作,C++社群的規模、強悍和創造力,仍然是很多其它新興語言社群難以相比的,好了下文就給大家進行詳細說明,希望大家能夠喜歡。

考慮到這一點,在開源領域中兩兄弟的這種差距就令人感到非常震驚。如果說在2000年以前,由于C++在工業界的統治地位,這種差距對C++的影響還不大的話,今天,C++在開源領域里薄弱的基礎就非常要命了。

現在在開發者社群中,“C語言萬壽無疆,C++無壽無疆”的說法得到不少人的支持,其根本原因之一就在于C++在開源運動中的地位遠遜于C。究其原因,歸根到底是因為編寫高質量。

可復用而又拳拳服膺的C++程序庫實在是一件太困難的事情。一方面,大量的C++應用程序質量不佳,而且經常以一種粗暴的方式要求使用者改變自己程序的風格,另一方面,一旦有人完成了一個可用的C++項目或者程序庫。

他必須具有極其彪悍的意志才能夠咬著牙把這樣的項目奉獻給開源社群——不僅因為失去了可能的金錢上的回報,更因為可能要面對著暴風雨般的批評和鄙視。總之,諸多的原因使得開源文化未能在C++中深深扎根。然而,畢竟C++是一種稱霸一時的語言,C++社群的規模、強悍和創造力,仍然是很多其它新興語言社群難以相比的。

特別是在標準C++制定之后,C++編程風格有了明確的指導思路,開源項目也就大大繁榮起來。雖然時間還不長,但是已經有一些令人欣慰的成果。這些成果也就構成了寫作本文的基本動機和素材。就重要性而言,開源程序庫和工具集對于C++甚至比對C還要重要得多。因為實踐證明,沒有良好的基礎設施支持,C++開發成功的可能性異乎尋常的低。

其根本原因是,用C++寫優秀的程序庫非常非常難,而一旦有了這樣的程序庫,在其基礎上寫應用程序就相當容易了。同時,C++的特點又要求基礎設施的源代碼必須開放,因此,C++程序庫對于開發者來說意義非常重大。

我們可以更進一步探究開源C++程序庫對于C++應用程序的重要意義。用C++編寫可復用程序庫時所需要的思想方法和技術風格,與用C++編寫應用程序時所需要的思想方法和技術風格之間存在相當大的差異和差距。前者所需要的高超技術、豐富經驗和良好的權衡能力,是很少有人能具備的。在所有程序設計語言中,你恐怕找不出第二種語言像C++那樣。

對于程序庫作者的要求如此之高,以至于遠遠超過了一般“熟練”C++開發者的平均水平。在Lisp中,語言、庫和程序根本就是一回事,每一個程序員寫的代碼都可以看成是語言本身的擴充。

在Java、C、Perl、Python、Ruby中,一個優秀的應用程序開發者在積累一定經驗之后,不難寫出高質量的可復用代碼。而在C++中,這種事情是非常罕見的,即使是天資卓越、經驗豐富的大師級人物,也需要花費多年的打磨,歷經幾次反復,才能夠最終推出受到一致認可的可復用程序庫。

此道之難,難于上青天,以至于Andrei Alexandrescu感嘆道,十幾歲的少年天才滿目皆是,滿鬢斑白的優秀程序庫設計者鳳毛麟角。而在另一個地方,一本C++可復用技術圖書的作者總結道,所謂可復用的C++程序庫,不可能是設計出來的,只可能是復用出來的。

然而,一旦這樣的程序庫構造出來并且為人們熟悉,那么就會大大地簡化應用程序的開發。這也就是為什么在2000年后,Bjarne Stroustrup無數次地呼吁社群專注程序庫的開發。他很清楚,只有程序庫能夠救C++,只有程序庫能夠發展C++

現在我們知道,用來寫C++程序庫所需要的技術,與用來寫C++應用程序所需要的技術存在很大的差別。這已經比較糟糕了。更糟糕的是,一般的C++開發者根本分不清這中間的差別,他們在開發中往往既不是一個稱職的程序庫開發者,也不是一個單純的應用開發者。

他們一邊想著完成手頭的工作,一邊琢磨如何能夠寫出高質量的基礎庫和框架,為萬世開太平。如果說C語言是一把輕快的小匕首,遇誰都是進身猛刺,血濺一尺,那么這種C++的使用方式無異于左手打鐵鑄兵,右手揮劍刺秦,這種精神分裂的狀態直接將很多項目變成了既超期超支又質量低劣的垃圾。

認識到這樣的事實之后,C++應用程序應當以更理性的態度來看待自己的工作。大部分情況下,你所需要做的是尋找一些可以互相合作的、穩定可靠的開源程序庫,然后在其基礎之上,面向目標。

使用盡可能簡樸的技術,專心專意地進行應用開發。把那些復雜精妙的語言技巧和“可復用”之類的想法扔到Java國去。唯其如此,你才可能更高效地開發出好的應用軟件,而且會逐漸積累和重構出真正可復用的軟件。

【編輯推薦】

  1. C與C++中標準輸入實現方式上的一點區別
  2. C++編譯器如何對Const常量進行分配存儲空間
  3. C++類庫設計的基本構思與方法
  4. 玩轉C++語言的幾種方法
  5. 如何更好的進行C++代碼編制
責任編輯:chenqingxiang 來源: 電子工業出版社
相關推薦

2010-01-14 11:14:47

C++應用程序

2010-01-25 16:41:08

C++應用程序

2010-01-26 17:16:33

C++應用程序

2021-09-26 08:30:31

Python應用程序代碼

2010-01-22 13:59:34

Visual C++應

2010-01-28 17:14:38

Visual C++應

2009-08-24 16:02:10

C# Windows應

2010-08-10 15:26:38

Flex應用程序

2010-03-01 10:30:29

Python應用程序

2009-04-12 09:25:12

Symbian諾基亞移動OS

2011-07-20 17:23:29

C++持久對象

2010-01-13 10:45:44

Visual C++

2010-01-13 13:36:54

C++應用程序

2011-06-21 10:28:17

Qt Visual C++

2010-12-30 16:22:28

Visual C++用戶訪問協議

2010-02-05 14:12:46

C++聲明放置

2010-02-05 17:49:24

C++常量引用

2010-02-01 10:54:37

C++框架

2010-01-18 17:07:52

C++類

2009-08-24 14:19:27

C# Windows應
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 免费国产一区 | 黄色一级大片在线免费看产 | 日韩视频在线一区 | 欧美成人精品一区二区男人看 | 成人久久18免费网站麻豆 | 91tv在线观看 | 91精品久久久久久久 | 中文字幕成人 | 免费观看一级毛片 | 欧美一级黄色片免费观看 | 国产1区2区3区 | 一级片成人 | 天天干天天操天天爽 | 欧美日韩国产一区二区三区 | 在线视频国产一区 | 亚洲综合五月天婷婷 | 国产成人免费视频网站视频社区 | 男女免费网站 | 亚洲三区视频 | 99re在线视频免费观看 | 在线超碰| 中文字幕免费视频 | 国产精品精品视频 | 美女黄18岁以下禁止观看 | 日本不卡一区二区三区在线观看 | wwwxxx国产 | 亚洲啪啪一区 | 久久综合亚洲 | 亚洲美女网站 | 日本免费一区二区三区四区 | 亚洲高清一区二区三区 | 欧美日本一区二区 | 精品成人在线视频 | 精品少妇一区二区三区在线播放 | 福利视频一二区 | 中文字幕在线观看一区 | 欧美极品视频在线观看 | 超碰在线观看97 | 欧州一区二区三区 | 黄色网址大全在线观看 | 欧美成年视频 |