什么是編程求冷?談一下我淺薄的認(rèn)識(shí)

什么是編程瘤运?百度百科的解釋是:

編程是編寫(xiě)程序的中文簡(jiǎn)稱,就是讓計(jì)算機(jī)為解決某個(gè)問(wèn)題而使用某種程序設(shè)計(jì)語(yǔ)言編寫(xiě)程序代碼匠题,并最終得到相應(yīng)結(jié)果的過(guò)程拯坟。

這樣的解釋是非常合理的:其中的關(guān)鍵詞是計(jì)算機(jī)、程序語(yǔ)言韭山、結(jié)果郁季。我也從這3個(gè)方向說(shuō)說(shuō)自己的一些看法!由于自己認(rèn)識(shí)的局限難免出現(xiàn)錯(cuò)誤钱磅,希望大家指正梦裂。

一:認(rèn)識(shí)計(jì)算機(jī)

計(jì)算機(jī)的發(fā)展大家也有所了解,在這里就不多費(fèi)口舌盖淡。我們現(xiàn)在用的計(jì)算機(jī)CPU只能認(rèn)識(shí)0和1年柠,這是目前的現(xiàn)狀(如果你能發(fā)明另一種機(jī)器,能夠識(shí)別更多的符號(hào)褪迟,那么我支持你冗恨,并由衷的希望你能有所成就)。計(jì)算機(jī)由哪些部分組成味赃,各有什么作用掀抹,少一個(gè)組成部件會(huì)有什么后果?這些問(wèn)題是非常深刻的心俗,我們不一定要對(duì)他們了如指掌(不是不重要)傲武,但最起碼要有一些基本的認(rèn)識(shí)。電腦只要有個(gè)CPU城榛,主板揪利,內(nèi)存就可以點(diǎn)亮。加個(gè)軟驅(qū)吠谢,就可以運(yùn)行DOS操作系統(tǒng)土童。再加個(gè)硬盤(pán),就可以把WINDOWS系統(tǒng)放到硬盤(pán)上運(yùn)行起來(lái)工坊。對(duì)CPU是如何工作献汗,CPU做了哪些事情,CPU為什么只能認(rèn)識(shí)0和1王污,CPU的尋址方式罢吃?對(duì)CPU我了解得不深,不敢隨意賣(mài)弄昭齐。但有一個(gè)還是是需要知道一下的尿招,CPU基礎(chǔ)計(jì)算只有3個(gè):與,或,非就谜。這3個(gè)邏輯門(mén)實(shí)現(xiàn)了我們現(xiàn)在所有的計(jì)算機(jī)程序計(jì)算怪蔑。

二、程序語(yǔ)言

TIOBE 2016年12月編程語(yǔ)言排行榜

據(jù)不完全統(tǒng)計(jì)丧荐,全世界的編程語(yǔ)言就多達(dá)1000多種缆瓣,我們學(xué)完也幾乎不可能,也沒(méi)有那個(gè)必要虹统。有人說(shuō)一個(gè)優(yōu)秀的程序員至少要掌握6門(mén)以上的編程語(yǔ)言弓坞,其實(shí)想想還是有一定道理。雖然一個(gè)人編程能力的體現(xiàn)并不是你會(huì)多少語(yǔ)言车荔,而是你能寫(xiě)出多少精妙的程序渡冻。要想寫(xiě)出精妙的程序,編程思想是必不可少的忧便。沒(méi)學(xué)過(guò)面向過(guò)程的語(yǔ)言如:c族吻,你說(shuō)你想通了面向過(guò)程,這得打個(gè)問(wèn)號(hào)茬腿。沒(méi)學(xué)過(guò)面向?qū)ο蟮恼Z(yǔ)言呼奢,你說(shuō)想通了面向?qū)ο螅@還得打個(gè)問(wèn)號(hào)切平。當(dāng)然那種大神除外哈!

拋開(kāi)編程思想說(shuō)編程語(yǔ)言就是耍流氓辐董,語(yǔ)言本身就是思想的體現(xiàn)悴品。那我們就說(shuō)說(shuō)編程思想吧!

1简烘、過(guò)程性的編程思想

計(jì)算機(jī)只認(rèn)識(shí)0和1 苔严,但是人們用0和1寫(xiě)程序是非常困難的。為了方便就出現(xiàn)了0孤澎,1的第一層抽象標(biāo)記:匯編語(yǔ)言届氢。目前的CPU只能執(zhí)行過(guò)程性的程序,任何高級(jí)語(yǔ)言都必須轉(zhuǎn)換成過(guò)程性的編程語(yǔ)言后再交給CPU執(zhí)行覆旭。在匯編里主要有三個(gè)操作:比較退子,跳轉(zhuǎn)(goto),過(guò)程調(diào)用(call)。為什么說(shuō)它是過(guò)程性的編程思想型将,值得你去好好的體會(huì)一下寂祥。不妨寫(xiě)幾個(gè)算法的程序(在程序里面用到比較,跳轉(zhuǎn)七兜,過(guò)程調(diào)用)丸凭,再來(lái)看看匯編程序的特點(diǎn),相信你會(huì)有所感悟。

2惜犀、結(jié)構(gòu)性的編程思想

隨著人們解決的問(wèn)題越來(lái)越復(fù)雜铛碑,匯編程序當(dāng)然束縛了計(jì)算機(jī)軟件的發(fā)展。因此編程思想發(fā)生了一場(chǎng)革命性的變化虽界,結(jié)構(gòu)性的編程方法出現(xiàn)了亚茬。在結(jié)構(gòu)性編程思想的編程語(yǔ)言里面,C語(yǔ)言首當(dāng)其沖浓恳。

C語(yǔ)言里面有幾個(gè)能表現(xiàn)出結(jié)構(gòu)化思想的地方:分支(if), 循環(huán)(while刹缝,for),結(jié)構(gòu)體(struct). 只要你會(huì)用這三個(gè),那么你就可以寫(xiě)出結(jié)構(gòu)化的程序颈将,但不一定你就了解什么是結(jié)構(gòu)化的編程方法梢夯。

什么叫做結(jié)構(gòu)化?為什么說(shuō)goto會(huì)破壞程序的結(jié)構(gòu)化晴圾?結(jié)構(gòu)體有什么作用颂砸,你能說(shuō)出結(jié)構(gòu)體的哪些好處? 這些都是值得認(rèn)真體會(huì)的地方死姚。別人給的定義不見(jiàn)得都全面人乓。還是自己理解比較靠得住。

結(jié)構(gòu)化編程里面最具代表性的書(shū)籍就要屬"數(shù)據(jù)結(jié)構(gòu)"都毒,具體哪本書(shū)比較好就不知道了色罚,好像都差不多,只要是用C寫(xiě)的就行账劲。C語(yǔ)言的"數(shù)據(jù)結(jié)構(gòu)"里面就是專門(mén)來(lái)講怎么用結(jié)構(gòu)性的編程思想來(lái)解決實(shí)際中的算法問(wèn)題戳护。看完某些章節(jié)瀑焦,然后自己找個(gè)問(wèn)題腌且,再用程序去實(shí)現(xiàn)它。多寫(xiě)一些程序榛瓮,會(huì)很有幫助铺董。還有需要說(shuō)明一下,并不是所有的時(shí)候結(jié)構(gòu)化的編程一就定好禀晓。

3精续、面向?qū)ο蟮木幊趟枷?/b>

現(xiàn)在該說(shuō)說(shuō)面向?qū)ο缶幊塘恕_@個(gè)也是現(xiàn)在用得最多的編程思想匆绣。什么是面向?qū)ο笞び遥徒Y(jié)構(gòu)性的思想有什么不同?從程序語(yǔ)法上看崎淳,面向?qū)ο蟊冉Y(jié)構(gòu)性的程序多了兩個(gè)特性:

(1)堪夭、 結(jié)構(gòu)體成員的私有化。結(jié)構(gòu)化程序里面,結(jié)構(gòu)體的成員都是公有的森爽。然而在面向?qū)ο罄锩婧藁恚Y(jié)構(gòu)體改稱為類,并且成員分為公有和私有兩個(gè)部分爬迟。就因?yàn)檫@一點(diǎn)的不同橘蜜,就產(chǎn)生了接口的概念。接口不就是類成員的公有部分么付呕?

(2)计福, 類的繼承。因?yàn)槌霈F(xiàn)了繼承徽职,才出現(xiàn)了多態(tài)象颖。然而就是因?yàn)槎鄳B(tài),才出現(xiàn)諸如:隱藏啊姆钉,虛函數(shù)…等等這些概念说订。多態(tài)的出現(xiàn),能夠讓同一組數(shù)據(jù)潮瓶,在不同的階段陶冷,用同一種表達(dá)方式,執(zhí)行不同的操作毯辅。如果把這個(gè)東西領(lǐng)悟到了埂伦,那么你會(huì)感嘆一句"原來(lái)程序是可以這么寫(xiě)的".。

因?yàn)橐陨蟽牲c(diǎn)的變化悉罕,編程思想也隨之發(fā)生了巨大轉(zhuǎn)變赤屋。它可以讓程序更適合人的思維方法來(lái)編寫(xiě)。面向?qū)ο蟮木幊陶Z(yǔ)言就很多了,可謂五花八門(mén) :C++ 壁袄、 JAVA 、C#等媚媒。這三種語(yǔ)言我都用過(guò)嗜逻,下面說(shuō)一下我用的感覺(jué)吧!他們的語(yǔ)法都出自于C語(yǔ)言缭召,這對(duì)我們從C語(yǔ)言入手學(xué)習(xí)編程的很親切栈顷。

都說(shuō)C++和JAVA有很大的不同,而JAVA和C#卻非常相似嵌巷,你知道為什么嗎萄凤?

最根本區(qū)別就在于垃圾收集器。就是因?yàn)镴AVA里面有垃圾自動(dòng)收集功能搪哪,所以JAVA不能和C兼容靡努,而且也不能使用指針。

在C++中的值類型和引用類型是可以自己定義的。如果對(duì)象被定義為值類型惑朦,那么當(dāng)編輯器自動(dòng)把對(duì)象收集走之后兽泄,有時(shí)自己會(huì)一無(wú)所知。如果對(duì)象被定義為引用類型漾月,那么又要必須記得把它釋放掉病梢,不然又會(huì)引起什么內(nèi)存泄漏的問(wèn)題。在JAVA和C#里面就不一樣梁肿,在這兩種語(yǔ)言里面蜓陌,自定義的類,初始得到的對(duì)象只能是引用類型吩蔑。并且有垃圾收集器幫你回收垃圾對(duì)象钮热。所以就不會(huì)出現(xiàn)內(nèi)存泄漏的問(wèn)題。

因?yàn)镃#比JAVA后出來(lái)吧哥纫,JAVA所具有的特性霉旗,C#基本上都有。并且還具有一些JAVA所不具有的特性蛀骇。當(dāng)然在這里不是說(shuō)哪個(gè)語(yǔ)言好厌秒,哪個(gè)語(yǔ)言壞。其實(shí)他們都是來(lái)實(shí)現(xiàn)面向?qū)ο缶幊痰墓ぞ摺?/p>

在面向?qū)ο蟮木幊汤锩嫔勉荆硇詴?shū)籍就要屬"《設(shè)計(jì)模式》"了鸵闪。不過(guò)設(shè)計(jì)模式這個(gè)東西,不是你看書(shū)就能看懂的暑诸。并且你硬套那些模式蚌讼,不一定對(duì)你有多大的好處。這個(gè)東西个榕,只有設(shè)計(jì)做多了篡石,才能有所領(lǐng)悟,自己得到總結(jié)西采』巳總結(jié)多了,就會(huì)發(fā)現(xiàn)和書(shū)上的那些東西不謀而合械馆,或許可能比書(shū)上總結(jié)得更好 胖眷。

好了,目前編程思想的發(fā)展就到這一步了霹崎。將來(lái)的編程思想的會(huì)是一個(gè)什么樣子珊搀,我也不得而知。希望有志之士能夠發(fā)明一種編程的思想出來(lái)尾菇,推動(dòng)軟件業(yè)的發(fā)展境析,讓中國(guó)也來(lái)引領(lǐng)一下世界軟件的發(fā)展潮流囚枪。

大家走進(jìn)程序界的初衷是什么呢,這個(gè)我也不敢胡亂猜測(cè)簿晓。但是有一點(diǎn)還是要的眶拉,那就是錢(qián)。畢竟我們都是要生活的憔儿。

而往往能夠快速用來(lái)賺錢(qián)的都是一種應(yīng)用技術(shù)像windows編程忆植,linux編程,WEB開(kāi)發(fā)等等谒臼。你掌握了其中的一門(mén)技能朝刊,就可以謀得一個(gè)職位,可能還可以拿到一個(gè)不錯(cuò)的薪水蜈缤。然而如果你掌握了編程思想拾氓,那么那些應(yīng)用技術(shù)將一通百通(因?yàn)閼?yīng)用技術(shù)往往都是對(duì)特定的一些函數(shù)的調(diào)用,通俗一點(diǎn)就是調(diào)用API)底哥。 掌握了編程思想你將不在局限于某個(gè)特定的編程技術(shù)咙鞍,而是對(duì)整個(gè)軟件系統(tǒng)有了全局的把握,研究的不再是編程技術(shù)趾徽,而是協(xié)議和規(guī)范续滋。

就現(xiàn)在的發(fā)展看來(lái),技術(shù)的迭代周期超乎想象的短孵奶。深入了解程序思想還是很有必要的疲酌。我們程序猿需要一顆不老的心。

三了袁、結(jié)果

這個(gè)結(jié)果才是我們想要的朗恳。到達(dá)這個(gè)結(jié)果的路很多,怎么走才最快最好最方便载绿,一直是我們探索的粥诫。在探索過(guò)程中才出現(xiàn)了計(jì)算機(jī)、才出現(xiàn)了程序崭庸。這條路會(huì)越走越寬臀脏、越走越遠(yuǎn)我們深信。

看完上面的文字冀自。你對(duì)“什么是編程?是不是有了屬于自己的答案秒啦?

首發(fā)于知乎專欄:《微信小程序之家》地址:https://zhuanlan.zhihu.com/p/25262957?refer=weixinapphome

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末熬粗,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子余境,更是在濱河造成了極大的恐慌驻呐,老刑警劉巖灌诅,帶你破解...
    沈念sama閱讀 216,324評(píng)論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異含末,居然都是意外死亡猜拾,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,356評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén)佣盒,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)挎袜,“玉大人,你說(shuō)我怎么就攤上這事肥惭《⒁牵” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,328評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵蜜葱,是天一觀的道長(zhǎng)全景。 經(jīng)常有香客問(wèn)我,道長(zhǎng)牵囤,這世上最難降的妖魔是什么爸黄? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,147評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮揭鳞,結(jié)果婚禮上炕贵,老公的妹妹穿的比我還像新娘。我一直安慰自己汹桦,他們只是感情好鲁驶,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,160評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著舞骆,像睡著了一般钥弯。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上督禽,一...
    開(kāi)封第一講書(shū)人閱讀 51,115評(píng)論 1 296
  • 那天脆霎,我揣著相機(jī)與錄音,去河邊找鬼狈惫。 笑死睛蛛,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的胧谈。 我是一名探鬼主播忆肾,決...
    沈念sama閱讀 40,025評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼菱肖!你這毒婦竟也來(lái)了客冈?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 38,867評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤稳强,失蹤者是張志新(化名)和其女友劉穎场仲,沒(méi)想到半個(gè)月后和悦,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,307評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡渠缕,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,528評(píng)論 2 332
  • 正文 我和宋清朗相戀三年鸽素,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片亦鳞。...
    茶點(diǎn)故事閱讀 39,688評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡馍忽,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出蚜迅,到底是詐尸還是另有隱情舵匾,我是刑警寧澤,帶...
    沈念sama閱讀 35,409評(píng)論 5 343
  • 正文 年R本政府宣布谁不,位于F島的核電站坐梯,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏刹帕。R本人自食惡果不足惜吵血,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,001評(píng)論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望偷溺。 院中可真熱鬧蹋辅,春花似錦、人聲如沸挫掏。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,657評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)尉共。三九已至褒傅,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間袄友,已是汗流浹背殿托。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,811評(píng)論 1 268
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留剧蚣,地道東北人支竹。 一個(gè)月前我還...
    沈念sama閱讀 47,685評(píng)論 2 368
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像鸠按,于是被迫代替她去往敵國(guó)和親礼搁。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,573評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容

  • TITLE: 編程語(yǔ)言亂燉 碼農(nóng)最大的煩惱——編程語(yǔ)言太多目尖。不是我不學(xué)習(xí)叹坦,這世界變化快! 有時(shí)候還是蠻懷念十幾卑雁、二...
    碼園老農(nóng)閱讀 5,318評(píng)論 2 35
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語(yǔ)法募书,類相關(guān)的語(yǔ)法,內(nèi)部類的語(yǔ)法测蹲,繼承相關(guān)的語(yǔ)法莹捡,異常的語(yǔ)法,線程的語(yǔ)...
    子非魚(yú)_t_閱讀 31,622評(píng)論 18 399
  • 今天早上還沒(méi)出門(mén)扣甲,文婷小姐妹就在微信里拉住我要和我禱告篮赢,說(shuō)她父母家庭大戰(zhàn)。她心情不好琉挖,需要禱告得力量启泣。我用溫和的話...
    撒拉JC閱讀 140評(píng)論 0 0
  • “ 幾乎不會(huì)主動(dòng)聯(lián)系任何人,哪怕心里再想示辈,也絕對(duì)不會(huì)主動(dòng)去聯(lián)系寥茫,這是高傲么?不矾麻,這是自卑纱耻,因?yàn)榕赂吖懒俗约涸趧e人心...
    大青姑娘閱讀 586評(píng)論 0 0