一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

什么是程序員思維

工程師人生 ? 來源:工程師吳畏 ? 2019-06-03 16:18 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

看到這個(gè)題目,我想起了很多很多。..。..。..。.

首先,我說明我為什么要寫這篇文章了。

一個(gè)原因是逸惋惜崢嶸歲月歲月稠,當(dāng)初讀大學(xué)的時(shí)候,學(xué)習(xí)計(jì)算機(jī)技術(shù)的課程,我過多的走向了兩種極端的狀況。一種情況,我愿意把他歸結(jié)于本末倒置,例如我學(xué)習(xí)《C++面向?qū)ο蟪绦蛟O(shè)計(jì)》的時(shí)候,更多的是研究C++的語(yǔ)法,卻忽略了面向?qū)ο蟮乃枷?,到頭來,C++語(yǔ)法學(xué)會(huì)了,但是最重要的面向?qū)ο髤s沒有理解,也不知道他能夠真正的做些什么。另一個(gè)情況,我把它理解為目標(biāo)很宏大,理解很困難,例如,我學(xué)習(xí)軟件過程的時(shí)候,開始,課程上就劈頭蓋腦的來一堆概念,然而,很難理解,最后也失去了學(xué)習(xí)該 課程的興趣,后來,隨著自己閱歷增長(zhǎng),經(jīng)驗(yàn)的增加, 發(fā)現(xiàn)這些知識(shí)是非常重要的,只是但是由于知識(shí)的限制,沒有融會(huì)貫通罷了。

另外一個(gè)原因,我們和他人討論寫的代碼時(shí)候,總是會(huì)從某某的口中聽到,你這源代碼寫的——耦合性太大了,可是,這總是一種不歡而散爭(zhēng)論,你憑什么我的耦合性太大,是啊,憑什么說我的耦合性,更多是種感覺,到底怎么樣才能判斷高內(nèi)聚低耦合,怎么樣寫出來高內(nèi)聚低耦合代碼了。

還有一 個(gè)原因。和上面的原因有點(diǎn)類似,在編程中接觸到的很多同事。或者同樣是編程的人。我發(fā)現(xiàn)他們的能力參差不齊。但是,你會(huì)有這樣的感受,有些人寫了兩三年的代碼會(huì)比一個(gè)寫十幾年代碼,更加的簡(jiǎn)潔,更加的優(yōu)雅。

總結(jié)一下上面的原因就是,在我們的編程實(shí)踐中,我們需要找到一種思維框架來幫助我們?cè)O(shè)計(jì)和解釋我們的程序。這個(gè)東西就是要討論的程序員思維。

我們下面篇幅就解決這三個(gè)問題。

程序員思維是什么?

程序員思維從哪里來?

程序員思維到哪里去?

好吧,這是三個(gè)終極的問題。沒有標(biāo)準(zhǔn)答案,也沒有什么不標(biāo)準(zhǔn)的答案。我只是試圖給出自己的一個(gè)思考的總結(jié)。

再解釋程序員思維是什么問題這個(gè)問題是什么時(shí)候,我們先用類比法看一下什么是程序員思維。

類比法,是個(gè)好方法啊,就像字典中的同義詞解析一樣。我們就類比生活中的一些例子罷了,來解釋什么是程序員思維。有些人,說編程就像解題,一個(gè)題干出出來了,我們需要利用所掌握的知識(shí),一步步,井井有條的解決出來。而編程了,則是根據(jù)客戶的一個(gè)需求,利用自己技能把其變成計(jì)算機(jī)軟件,來幫助解決現(xiàn)實(shí)生活中的問題。有些人,說編程就像操作機(jī)器,你像一個(gè)司機(jī),你操作方向盤讓車向左走,他不會(huì)向右左。我們編程也是同樣的道理,你輸入一條加法指令,計(jì)算機(jī)也不會(huì)幫你做減法。有些人,說編程就像作家,作家,是將冰冷冷文字賦予了生命,來賣錢。程序員,是將毫無生氣的一些指令,變成那好玩游戲,哪方便的app。這些,都是很形象的類比。我們這里套用馬克思*韋伯在《新教理論與資本主義》中首次提出了一個(gè)概念能夠很好的解釋上面列舉的事情的共性——工具理性。所謂“工具理性”,就是通過實(shí)踐的途徑確認(rèn)工具(手段)的有用性,從而追求事物的最大功效,為人的某種功利的實(shí)現(xiàn)服務(wù)。工具理性是通過精確計(jì)算功利的方法最有效達(dá)至目的的理性,是一種以工具崇拜和技術(shù)主義為生存目標(biāo)的價(jià)值觀,所以“工具理性”又叫“功效理性”或者說“效率理性”的定義??梢詫⒊绦騿T思維,定義為是在理性思維的框架下,利用相應(yīng)工具,來解決相應(yīng)實(shí)際的問題。

再回答程序員思維從哪里來,這個(gè)問題時(shí)候,我們回顧了計(jì)算機(jī)語(yǔ)言歷史:

1940之前

第一個(gè)編程語(yǔ)言比現(xiàn)代的計(jì)算機(jī)還早誕生。首先,這種語(yǔ)言是種編碼(en:code)。 于1801年發(fā)明的提花織布機(jī)(或稱甲卡提花織布機(jī),英文:en:Jacquard loom),運(yùn)用打孔卡上的坑洞來代表縫紉織布機(jī)的手臂動(dòng)作,以便自動(dòng)化產(chǎn)生裝飾的圖案。 Ada Lovelace在1842年至1843年間花費(fèi)了九個(gè)月,將意大利數(shù)學(xué)家Luigi Menabrea關(guān)于查爾斯·巴貝奇新發(fā)表機(jī)器分析機(jī)的回憶錄翻譯完成。她于那篇文章后面附加了一個(gè)用分析機(jī)計(jì)算伯努利數(shù)方法的細(xì)節(jié),被部分歷史學(xué)家認(rèn)為是世界上第一個(gè)電腦程序。這個(gè)故事我們上面也說過。 Herman Hollerith在觀察列車長(zhǎng)對(duì)乘客票根在特定位置打洞的方式后,意識(shí)到他可以把資訊編碼記載到打孔卡上,隨后根據(jù)這項(xiàng)發(fā)現(xiàn)使用打孔卡來編碼并紀(jì)錄1890年的人口統(tǒng)計(jì)資料。 第一個(gè)嚴(yán)格意義上的計(jì)算機(jī)程式碼是針對(duì)他們的應(yīng)用面設(shè)計(jì)的。在20世紀(jì)的前十年主要是用十進(jìn)制來算數(shù),后來人們發(fā)現(xiàn)不只是用文字,也可以用數(shù)字來表現(xiàn)邏輯。舉例來說,阿隆佐·邱奇曾以公式化(formulaic)的方式表達(dá)λ演算。圖靈機(jī)是一種紙帶標(biāo)記(tape-marking)機(jī)器(就像電話公司用的那種)操作方法抽象化后的集合。圖靈機(jī)這種透過有限數(shù)字(finite number)呈現(xiàn)機(jī)器的方式,奠定了程式如同馮·諾伊曼結(jié)構(gòu)計(jì)算機(jī)中的資料一樣地儲(chǔ)存的基礎(chǔ)。但不同于λ演算,圖靈機(jī)的程式碼并沒有辦法成為高階編程語(yǔ)言的基石,這是是因?yàn)樗饕挠猛臼欠治?a href="http://www.www27dydycom.cn/v/tag/2562/" target="_blank">算法的復(fù)雜度。 就像許多歷史上的”第一次”一樣,第一個(gè)現(xiàn)代編程語(yǔ)言也很難界定。最一開始是因?yàn)橛布拗贫薅苏Z(yǔ)言,打孔卡允許80行(column)的長(zhǎng)度,但某幾行必須用來記錄卡片的順序。FORTRAN則納入了一些與英文字詞相同的關(guān)鍵字,像是”IF”、”GOTO”(原字詞為go to),以及”CONTINUE”。之后采用磁鼓(magnetic drum)作為內(nèi)存使用,也代表計(jì)算機(jī)程式也必須插入(interleave)到磁鼓的轉(zhuǎn)動(dòng)(rotation)中。和現(xiàn)今比較起來,這也讓編程語(yǔ)言必須更加依賴硬件(hardware-dependent)。 對(duì)部分的人認(rèn)為必須在”編程語(yǔ)言”的狀態(tài)確立之前,根據(jù)能力(power)以及可讀性(human-readability)的程度來決定歷史上第一個(gè)編程語(yǔ)言是什么語(yǔ)言。提花織布機(jī)和查爾斯·巴貝奇所制作的差分機(jī)(en:Difference Engine)都具備在大量限制下,簡(jiǎn)單描述機(jī)器應(yīng)執(zhí)行行為的語(yǔ)言。也有種并非設(shè)計(jì)給人類運(yùn)用的受限特定領(lǐng)域語(yǔ)言(en:domain-specific language),是將打孔卡運(yùn)用到自動(dòng)演奏鋼琴(en:player piano)上。

1940年代

最早被確認(rèn)的現(xiàn)代化、電力啟動(dòng)(electrically powered)的計(jì)算機(jī)約在1940年代被創(chuàng)造出來。程式設(shè)計(jì)師在有限的速度及內(nèi)存容量限制之下,撰寫人工調(diào)整(hand tuned)過的組合語(yǔ)言程式。而且很快就發(fā)現(xiàn)到使用組合語(yǔ)言的這種撰寫方式需要花費(fèi)大量的腦力(intellectual effort)而且很容易出錯(cuò)(error-prone)。 Konrad Zuse于1948年發(fā)表了他所設(shè)計(jì)的Plankalkül編程語(yǔ)言的論文[1]。但是在他有生之年卻未能將該語(yǔ)言實(shí)作,而他原本的貢獻(xiàn)也被其他的發(fā)展所孤立。 在這段期間被開發(fā)出來的重要語(yǔ)言包括有:

1943 – Plankalkül (Konrad Zuse)

1943 – ENIAC coding system

1949 – C-10

1950與1960年代

有三個(gè)現(xiàn)代編程語(yǔ)言于1950年代被設(shè)計(jì)出來,這三者所衍生的語(yǔ)言直到今日仍舊廣泛地被采用:

Fortran (1955),名稱取自”FORmula TRANslator”(公式翻譯器),由約翰·巴科斯等人所發(fā)明;

LISP,名稱取自”LISt Processor”(列舉處理器),由約翰·麥卡錫等人所發(fā)明;

COBOL,名稱取自”COmmon Business Oriented Language”(通用商業(yè)導(dǎo)向語(yǔ)言),由被葛麗絲·霍普深刻影響的Short Range Committee所發(fā)明。

另一個(gè)1950年代晚期的里程碑是由美國(guó)與歐洲計(jì)算機(jī)學(xué)者針對(duì)”算法的新語(yǔ)言”所組成的委員會(huì)出版的ALGOL 60報(bào)告(名稱取自”ALGOrithmic Language”(算法語(yǔ)言))。這份報(bào)告強(qiáng)化了當(dāng)時(shí)許多關(guān)于計(jì)算的想法,并提出了兩個(gè)語(yǔ)言上的創(chuàng)新功能:

巢狀區(qū)塊結(jié)構(gòu):可以將有意義的程式碼片段群組成一個(gè)區(qū)塊(block),而非轉(zhuǎn)成分散且特定命名的程序。也就是我們所熟悉的模塊化設(shè)計(jì)。

詞匯范圍(lexical scoping):區(qū)塊可以有區(qū)塊外部無法透過名稱存取,屬于區(qū)塊本身的變量、程序以及函式。就是我們所熟悉的作用域。

另一個(gè)創(chuàng)新則是關(guān)于語(yǔ)言的描述方式:一種名為巴科斯-諾爾范式 (BNF)的數(shù)學(xué)化精確符號(hào)被用于描述語(yǔ)言的語(yǔ)法。之后的編程語(yǔ)言幾乎全部都采用類似BNF的方式來描述程式語(yǔ)法中上下文無關(guān)的部份。BNF主要使用在了Algol 60的設(shè)計(jì)上面。而Algol 60對(duì)之后語(yǔ)言的設(shè)計(jì)上帶來了特殊的影響,在其他部分的語(yǔ)言設(shè)計(jì)中這種設(shè)計(jì)思想很快的就被廣泛采用。并且后續(xù)為了開發(fā)Algol的擴(kuò)充子集合,設(shè)計(jì)了一個(gè)名為Burroughs(en:Burroughs large systems)的大型系統(tǒng)。而延續(xù)Algol的關(guān)鍵構(gòu)想所產(chǎn)生的成果就是ALGOL 68:

語(yǔ)法跟語(yǔ)意變的更加正交(orthogonal)

采用匿名的歷程(routines)

采用高階(higher-order)功能的遞回式輸入(typing)系統(tǒng)等等。

整個(gè)語(yǔ)言及語(yǔ)意的部分都透過為了描述語(yǔ)言而特別設(shè)計(jì)的Van Wijngaarden grammar來進(jìn)行正式的定義,而不僅止于上下文無關(guān)的部份。Algol 68一些較少被使用到的語(yǔ)言功能(如同步與并列區(qū)塊)、語(yǔ)法捷徑的復(fù)雜系統(tǒng),以及型態(tài)自動(dòng)強(qiáng)制轉(zhuǎn)換(coercions),使得實(shí)作者興趣缺缺,也讓Algol 68獲得了很難用(diffcult)的名聲。尼克勞斯·維爾特就干脆離開該設(shè)計(jì)委員會(huì),另外在開發(fā)出更簡(jiǎn)單的Pascal語(yǔ)言。 在這段期間被開發(fā)出來的重要語(yǔ)言包括有:

1951 – Regional Assembly Language

1952 – Autocode

1954 – FORTRAN

1954 – IPL (LISP的先驅(qū))

1955 – FLOW-MATIC (COBOL的先驅(qū))

1957 – COMTRAN (COBOL的先驅(qū))

1958 – LISP

1958 – ALGOL 58

1959 – FACT (COBOL的先驅(qū))

1959 – COBOL

1962 – APL

1962 – Simula

1962 – SNOBOL

1963 – CPL (C的先驅(qū))

1964 – BASIC

1964 – PL/I

1967 – BCPL (C的先驅(qū))

1967-1978:確立了基礎(chǔ)范式

1960年代晚期至1970年代晚期的期間中,編程語(yǔ)言的發(fā)展也有了重大的成果。大多數(shù)現(xiàn)在所使用的主要語(yǔ)言范式都是在這段期間中發(fā)明的:

Simula,于1960年代晚期由奈加特與Dahl以Algol 60超集合的方式發(fā)展,同時(shí)也是第一個(gè)設(shè)計(jì)支援面向?qū)ο筮M(jìn)行開發(fā)的編程語(yǔ)言。

C,于1969至1973年間由貝爾實(shí)驗(yàn)室的研究人員丹尼斯·里奇與肯·湯普遜所開發(fā),是一種早期的系統(tǒng)程式設(shè)計(jì)(en:system programming)語(yǔ)言。

Smalltalk,于1970年代中期所開發(fā),是一個(gè)完全從零開始(ground-up)設(shè)計(jì)的面向?qū)ο缶幊陶Z(yǔ)言。

Prolog,于1972年由Colmerauer、Roussel,以及Kowalski所設(shè)計(jì),是第一個(gè)邏輯程式語(yǔ)言。

ML,于1973年由羅賓·米爾納所發(fā)明,是一個(gè)基于Lisp所建構(gòu)的多型(polymorphic)型態(tài)系統(tǒng),同時(shí)也是靜態(tài)型別函數(shù)編程語(yǔ)言的先驅(qū)。

這些語(yǔ)言都各自演展出自己的家族分支,現(xiàn)今多數(shù)現(xiàn)代編程語(yǔ)言的祖先都可以追朔他們其中至少一個(gè)以上。 在1960年代以及1970年代中結(jié)構(gòu)化程式設(shè)計(jì)的優(yōu)點(diǎn)也帶來許多的爭(zhēng)議,特別是在程式開發(fā)的過程中完全不使用GOTO。這項(xiàng)爭(zhēng)議跟語(yǔ)言本身的設(shè)計(jì)非常有關(guān)系:某些語(yǔ)言并沒有包含GOTO,這也強(qiáng)迫程式設(shè)計(jì)師必須結(jié)構(gòu)化地編寫程式。盡管這個(gè)爭(zhēng)議在當(dāng)時(shí)吵翻了天,但幾乎所有的程式設(shè)計(jì)師都同意就算語(yǔ)言本身有提供GOTO的功能,在除了少數(shù)罕見的情況下去使用GOTO是種不良的程序風(fēng)格。結(jié)果是之后世代的編程語(yǔ)言設(shè)計(jì)者發(fā)覺到結(jié)構(gòu)化編程語(yǔ)言的爭(zhēng)議實(shí)在既乏味又令人眼花撩亂。 在這段期間被開發(fā)出來的重要語(yǔ)言包括有:

1968 – Logo

1970 – Pascal

1970 – Forth

1972 – C語(yǔ)言

1972 – Smalltalk

1972 – Prolog

1973 – ML

1975 – Scheme

1978 – SQL (起先只是一種查詢語(yǔ)言,擴(kuò)充之后也具備了程式結(jié)構(gòu))

1980年代:增強(qiáng)、模組、效能

1980年代的編程語(yǔ)言與之前相較顯得更為強(qiáng)大。C++合并了面向?qū)ο笠约跋到y(tǒng)程式設(shè)計(jì)。美國(guó)政府標(biāo)準(zhǔn)化一種名為Ada的系統(tǒng)編程語(yǔ)言并提供給國(guó)防承包商使用。日本以及其他地方運(yùn)用了大量的資金對(duì)采用邏輯編程語(yǔ)言結(jié)構(gòu)的第五代語(yǔ)言進(jìn)行研究。函數(shù)編程語(yǔ)言社群則把焦點(diǎn)轉(zhuǎn)移到標(biāo)準(zhǔn)化ML及Lisp身上。這些活動(dòng)都不是在開發(fā)新的范式,而是在將上個(gè)世代發(fā)明的構(gòu)想進(jìn)一步發(fā)揚(yáng)光大。 然而,在語(yǔ)言設(shè)計(jì)上有個(gè)重大的新趨勢(shì),就是研究運(yùn)用模組或大型組織化的程式單元來進(jìn)行大型系統(tǒng)的開發(fā)。Modula、Ada,以及ML都在1980年代發(fā)展出值得注意的模組化系統(tǒng)。模組化系統(tǒng)常拘泥于采用泛型程式設(shè)計(jì)結(jié)構(gòu):

泛型存在(generics being)

本質(zhì)(essence)

參數(shù)化模組(parameterized modules)

盡管沒有出現(xiàn)新的主要編程語(yǔ)言范式,許多研究人員仍就擴(kuò)充之前語(yǔ)言的構(gòu)想并將它們運(yùn)用到新的內(nèi)容上。舉例來說,Argus以及Emerald系統(tǒng)的語(yǔ)言配合面向?qū)ο笳Z(yǔ)言運(yùn)用到分散式系統(tǒng)上。 1980年代的編程語(yǔ)言實(shí)際情況也有所進(jìn)展。計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)中RISC假定硬件應(yīng)當(dāng)為編譯器設(shè)計(jì),而并非為人類設(shè)計(jì)。借由中央處理器速度增快的幫助,編譯技術(shù)也越來越進(jìn)展神速,RISC的進(jìn)展對(duì)高階語(yǔ)言編譯技術(shù)發(fā)展來不小的貢獻(xiàn)。 在這段期間被開發(fā)出來的重要語(yǔ)言包括有:

1980 – Ada

1983 – C++ (就像有類別的C)

1984 – Common Lisp

1985 – Eiffel

1986 – Erlang

1987 – Perl

1988 – Tcl

1989 – FL (Backus)

1990年代:互聯(lián)網(wǎng)時(shí)代

1990年代未見到有什么重大的創(chuàng)新,大多都是以前構(gòu)想的重組或變化。這段期間主要在推動(dòng)的哲學(xué)思想是提升程式設(shè)計(jì)師的生產(chǎn)力。許多”快速應(yīng)用程式開發(fā)” (RAD) 語(yǔ)言也應(yīng)運(yùn)而生,這些語(yǔ)言大多都有相應(yīng)的集成開發(fā)環(huán)境、垃圾回收等機(jī)制,且大多是先前語(yǔ)言的衍生語(yǔ)言。這類型的語(yǔ)言也大多是面向?qū)ο蟮木幊陶Z(yǔ)言,包含有Object Pascal、Visual Basic,以及C#。Java則是更加保守的語(yǔ)言,也具備垃圾回收機(jī)制。與其他類似語(yǔ)言相比,也受到更多的觀注。新的腳本語(yǔ)言則比RAD語(yǔ)言更新更好。這種語(yǔ)言并非直接從其他語(yǔ)言衍生,而且新的語(yǔ)法更加開放地(liberal)與功能契合。雖然腳本語(yǔ)言比RAD語(yǔ)言來的更有生產(chǎn)力,但大多會(huì)有因?yàn)樾〕淌捷^為簡(jiǎn)單,但是大型程式則難以使用腳本語(yǔ)言撰寫并維護(hù)的顧慮[來源請(qǐng)求]。盡管如此,腳本語(yǔ)言還是網(wǎng)絡(luò)層面的應(yīng)用上大放異彩。 在這段期間被開發(fā)出來的重要語(yǔ)言包括有:

1990 – Haskell

1991 – Python

1991 – Visual Basic

1993 – Ruby

1993 – Lua

1994 – CLOS (part of ANSI Common Lisp)

1995 – Java

1995 – Delphi (Object Pascal)

1995 – JavaScript

1995 – PHP

1997 – REBOL

1999 – D

現(xiàn)今的趨勢(shì)

編程語(yǔ)言持續(xù)在學(xué)術(shù)及企業(yè)兩個(gè)層面中發(fā)展進(jìn)化,目前的一些趨勢(shì)包含有:

在語(yǔ)言中增加安全性與可靠性驗(yàn)證機(jī)制:額外的堆棧檢查、資訊流(information flow)控制,以及靜態(tài)執(zhí)行緒安全。提供模組化的替代機(jī)制:混入(en:mixin)、委派(en:delegates),以及觀點(diǎn)導(dǎo)向。元件導(dǎo)向(component-oriented)軟件開發(fā)元編程、反射或是存取抽象語(yǔ)法樹(en:Abstract syntax tree)更重視分散式及移動(dòng)式的應(yīng)用。

與數(shù)據(jù)庫(kù)的整合,包含XML及關(guān)聯(lián)式數(shù)據(jù)庫(kù)。支援使用Unicode編寫程式,所以源代碼不會(huì)受到ASCII字符集的限制,而可以使用像是非拉丁語(yǔ)系的腳本或延伸標(biāo)點(diǎn)符號(hào)。

圖形化使用者接口所使用的XML(XUL、XAML)。在這段期間被開發(fā)出來的重要語(yǔ)言包括有:

2001 – C#

2001 – Visual Basic .NET

2002 – F#

2003 – Scala

2003 – Factor

2006 – Windows PowerShell

2007 – Clojure

2009 – Go

從這些編程語(yǔ)言簡(jiǎn)史和人們?nèi)粘P枨螅覀兛梢曰卮疬@個(gè)問題了。所有的程序員思維都是來自于需求兩個(gè)字。隨著對(duì)現(xiàn)實(shí)信息管理的壓力太大的,我們慢慢才有計(jì)算機(jī)發(fā)明。為了,更好的管理計(jì)算機(jī),于是便有了編程語(yǔ)言,起初的語(yǔ)言,是面向機(jī)器的了,后來隨著世人更加理解的角度,就進(jìn)一步面向過程,為了使人更加理解世界萬物,就有了面向?qū)ο蟮恼Z(yǔ)言,綜上所述,程序員的思維,從何而來,從世間萬物的需求而來,從更好的解決問題的需求而來。

有了程序員的思維從何而來的這一個(gè)冒解決了,我們就能夠很快的回答,程序員思維你要到哪里去了?

一切程序員思維的宗旨就是,為了更好的解決問題,更好解決需求,于是在這一光輝思想的引導(dǎo)下了,我們就發(fā)明各種各樣設(shè)計(jì)模式,為了使其代碼高內(nèi)聚低耦合,這些都是使其我們程序員花這小的代價(jià)來滿足最大需求。

以上所述,便是我對(duì)程序員思維的理解,懇請(qǐng)大家斧正。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 程序員
    +關(guān)注

    關(guān)注

    4

    文章

    954

    瀏覽量

    30402
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    程序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)

    的地址)出發(fā),采用推導(dǎo)的方式,深入淺出的分析了廣大C程序員學(xué)習(xí)和開發(fā)中遇到的難點(diǎn)。 2. 從方法論的高度對(duì)C語(yǔ)言在數(shù)據(jù)結(jié)構(gòu)和算法方面的應(yīng)用進(jìn)行了深入講解和闡述。 3. 講解了絕大多數(shù)C程序員開發(fā)
    發(fā)表于 05-13 16:45

    計(jì)算機(jī)網(wǎng)絡(luò)排錯(cuò)思路總結(jié)

    明人不說暗話,這篇文章我們來聊一個(gè)非常有用,同時(shí)也是程序員必備的技能,那就是網(wǎng)絡(luò)排錯(cuò)思路大總結(jié)。
    的頭像 發(fā)表于 04-01 17:32 ?369次閱讀
    計(jì)算機(jī)網(wǎng)絡(luò)排錯(cuò)思路總結(jié)

    如何在 樹莓派 上編寫和運(yùn)行 C 語(yǔ)言程序

    ,一本很好的書是BrianKernighan和DennisRitchie所著的《TheCProgrammingLanguage》。這本書對(duì)經(jīng)驗(yàn)豐富的程序員和想學(xué)習(xí)C語(yǔ)
    的頭像 發(fā)表于 03-25 09:28 ?554次閱讀
    如何在 樹莓派 上編寫和運(yùn)行 C 語(yǔ)言<b class='flag-5'>程序</b>?

    零基礎(chǔ)入門:如何在樹莓派上編寫和運(yùn)行Python程序?

    是一種非常有用的編程語(yǔ)言,其語(yǔ)法易于閱讀,允許程序員使用比匯編、C或Java等語(yǔ)言更少的代碼行。Python編程語(yǔ)言最初實(shí)際上是作為L(zhǎng)inux的腳本語(yǔ)言而開發(fā)的。Py
    的頭像 發(fā)表于 03-25 09:27 ?723次閱讀
    零基礎(chǔ)入門:如何在樹莓派上編寫和運(yùn)行Python<b class='flag-5'>程序</b>?

    Gemini Vision + Raspberry Pi 化身“數(shù)字導(dǎo)盲犬”?

    本文討論了一位程序員利用樹莓派、攝像頭、Gemini和Python構(gòu)建PeregrineEye設(shè)備,使其成為“數(shù)字導(dǎo)盲犬”為視障者服務(wù)的項(xiàng)目經(jīng)歷,包括項(xiàng)目靈感、功能、構(gòu)建過程、遇到的挑戰(zhàn)及未來計(jì)劃等
    的頭像 發(fā)表于 03-25 09:20 ?1312次閱讀
    Gemini Vision + Raspberry Pi 化身“數(shù)字導(dǎo)盲犬”?

    阿里云升級(jí)通義靈碼AI程序員,全面上線

    近日,阿里云宣布其備受矚目的通義靈碼AI程序員已正式全面上線,為開發(fā)者帶來更為強(qiáng)大和便捷的編程輔助工具。 此次上線的通義靈碼AI程序員,在功能上實(shí)現(xiàn)了全面升級(jí)?,F(xiàn)在,它支持VS Code
    的頭像 發(fā)表于 01-09 11:16 ?710次閱讀

    TMS320C6000程序員指南

    電子發(fā)燒友網(wǎng)站提供《TMS320C6000程序員指南.pdf》資料免費(fèi)下載
    發(fā)表于 12-24 17:19 ?0次下載
    TMS320C6000<b class='flag-5'>程序員</b>指南

    TMS320C55x DSP CPU程序員參考補(bǔ)充

    電子發(fā)燒友網(wǎng)站提供《TMS320C55x DSP CPU程序員參考補(bǔ)充.pdf》資料免費(fèi)下載
    發(fā)表于 12-21 11:36 ?3次下載
    TMS320C55x DSP CPU<b class='flag-5'>程序員</b>參考補(bǔ)充

    UCD3138A64/UCD3138128程序員手冊(cè)

    電子發(fā)燒友網(wǎng)站提供《UCD3138A64/UCD3138128程序員手冊(cè).pdf》資料免費(fèi)下載
    發(fā)表于 12-09 14:42 ?0次下載
    UCD3138A64/UCD3138128<b class='flag-5'>程序員</b>手冊(cè)

    機(jī)械革命發(fā)布CODE AI程序員

    近日,英特爾新質(zhì)生產(chǎn)力技術(shù)生態(tài)大會(huì)在成都舉行,機(jī)械革命作為重要參展商帶來了多款明星產(chǎn)品引爆全場(chǎng)!其中更是在AI PC軟件生態(tài)產(chǎn)品發(fā)布分論壇上,Intel、智譜、機(jī)械革命三方聯(lián)合發(fā)布了專為程序員設(shè)計(jì)的CODE AI程序員本,成為本次大會(huì)的一大亮點(diǎn)。
    的頭像 發(fā)表于 11-30 10:34 ?1101次閱讀

    Linux驅(qū)動(dòng)程序程序員指南

    電子發(fā)燒友網(wǎng)站提供《Linux驅(qū)動(dòng)程序程序員指南.pdf》資料免費(fèi)下載
    發(fā)表于 11-22 15:53 ?0次下載
    Linux驅(qū)動(dòng)<b class='flag-5'>程序</b><b class='flag-5'>程序員</b>指南

    AI編程工具會(huì)不會(huì)搶程序員飯碗

    AI編程工具可輔助編程,減少手動(dòng)編碼,提升效率,對(duì)程序員有積極影響也有挑戰(zhàn)。程序員需深化技能、拓寬知識(shí)應(yīng)對(duì)。長(zhǎng)遠(yuǎn)看,AI與人類程序員將共生共榮。
    的頭像 發(fā)表于 11-08 10:17 ?527次閱讀

    軟通動(dòng)力子公司鴻湖萬聯(lián)助陣?guó)櫭?024程序員節(jié)成功舉辦

    10月24日,在武漢、成都、深圳等地政府指導(dǎo)下,鴻蒙生態(tài)服務(wù)公司舉辦了一場(chǎng)面向廣大開發(fā)者的盛會(huì)——鴻蒙1024程序員節(jié)暨鴻蒙原生應(yīng)用交流會(huì)。軟通動(dòng)力子公司鴻湖萬聯(lián)作為開源鴻蒙生態(tài)的重要參與者和貢獻(xiàn)者
    的頭像 發(fā)表于 10-29 15:49 ?749次閱讀
    軟通動(dòng)力子公司鴻湖萬聯(lián)助陣?guó)櫭?024<b class='flag-5'>程序員</b>節(jié)成功舉辦

    第五屆長(zhǎng)沙·中國(guó)1024程序員節(jié)開幕

    據(jù)官方媒體報(bào)道,10月24日;? 第五屆長(zhǎng)沙·中國(guó)1024程序員節(jié)在湖南湘江新區(qū)開幕;本次中國(guó)1024程序員節(jié)以“智能應(yīng)用新生態(tài)”為主題。設(shè)置有岳麓對(duì)話、技術(shù)英雄會(huì)、主題峰會(huì)及賽事、展覽等活動(dòng),一場(chǎng)
    的頭像 發(fā)表于 10-25 15:42 ?492次閱讀

    京東上萬程序員都AI用它!

    對(duì)大模型生成代碼進(jìn)行智能修復(fù),為程序員開啟代碼漏洞修復(fù)的“自動(dòng)駕駛”模式,不但減少人工接入、提高工作效率,更為企業(yè)抵御內(nèi)外部各種攻擊構(gòu)建起一道堅(jiān)固的安全屏障,確保業(yè)務(wù)的連續(xù)性和穩(wěn)定性。 JoyCoder是京東云自主研發(fā)的一款輔助開發(fā)人員
    的頭像 發(fā)表于 07-17 16:29 ?490次閱讀
    京東上萬<b class='flag-5'>程序員</b>都AI用它!