① 避免迷茫跳槽,程序員有哪些發展路徑
程序員一般的發展方向主要包括:技術專家,架構師,技術管理,管理,產品。接下來通過例子和大家分享以下四種不同的發展路徑及適合走這四類路徑的人群的三個關鍵詞
我之前的一位候選人Z先生,他12年從湖北工業大學畢業,而後去了搜狗擔任工程師,做了兩年後,跳到了另一家公司叫小麥公社,是當時一家風頭正勁的創業公司,擔任B端高級開發,後來去到了因果樹擔任B端的技術資深開發,在今年2月份入職了杭州阿里巴巴,同樣是負責B端商家後台部門,擔任技術專家,他職業規劃最大的亮點是找到自己想要專注的領域並且一直堅持至今。
也是之前100offer的一個用戶,H先生,他11年北航畢業,而後選擇創業做SAAS平台當時擔任前端負責人,兩年後選擇加入搜狗成為一名高級前端工程師,後來去到了音悅台擔任架構師,目前在一家創業公司擔任前端架構師,他職業規劃的最大亮點是在前端領域各個方向都深入見解,而後負責多條產品線的架構設計。
那以上兩種技術路線有什麼不同呢,應該如何選擇呢?
技術專家,是偏理論研究的,對某個或某些相關的專業領域深入了解,能直接或通過提供思路間接解決這些領域的各種問題;架構師,是偏工程實踐的,與技術專家的區別在於它需要一專多能,提供方案解決問題已經不是它最重要的價值,它的價值體現在選擇性價比最高的方案。
說我們100offer的一位用戶Q先生吧,他在30歲就成為了某知名共享單車公司的CTO,說一下他的職業規劃,09年首都經理貿易大學畢業加入一家創業公司擔任開發移動端工程師,兩年後加入360擔任資深研發工程師,而後加入新浪微博擔任移動端部門的技術負責人,而後加入了宜信擔任技術總監,在去年7月加入共享單車公司擔任CTO。他職業規劃的最大亮點是一直在核心業務上往技術管理進階,最終成為一名優秀的管理者。
談到這類管理路徑,必須要說明下技術管理和管理的區別,技術管理是事情為中心,管理是以人為中心,技術管理主要工作是保證事情能按時按質完成,管理需要考慮團隊的士氣和穩定性、階梯性。
X先生是100offer的一位深度用戶,也帶來一個海龜碼農成功轉行產品經理的故事,09年畢業於美國工程類名校普渡大學,而後回國在一家外企擔任開發工程師,一做就是5年,14年一個幸運的機會加入了騰訊,當時騰訊面試了7輪,拿到了T1-2,月薪1W2的工程師offer,基本是剛畢業一年左右應屆生的水平。在騰訊主要做手機QQ紅點系統,做了兩年,他從未抱怨。他也給我們展示了所謂"紅點",其實就是手機QQ上不同介面旁的紅點引流。手機QQ流量日活上億,但是會點擊那些游戲、商城、音樂等介面的用戶大概只有1%,紅點主要就是吸引那些有強迫症的用戶點進去引流。從最開始的紅點數量的改進,到後面根據不同屬性用戶設置不同紅點,再到後來和其他產品合作比如京東商場,搞紅點的競價排名...就這么一個小功能騰訊專門養了一個團隊去做,對於BAT這種大公司來說,一個小的模塊和功能的改進能帶來很大的利潤,很多人常年都在做很小一個模塊的重復工作,很難獨立完整去做項目,裡面閑人很多。
所以工作兩年後,許寧也想做點商業化的東西了,給部門老大反饋了想法沒得到支持,在內部其他部門也爭取了問了一圈沒能成功轉崗,於是就想出來,不想繼續在騰訊裡面慢慢熬晉升了,從騰訊出來是那年是2016年3月,T2-3。而後在100offer上入職了一家投資公司,以產品經理的身份加入,兩年過去了,目前已經成為了一名高級產品經理。他職業規劃的最大亮點是深思熟慮後立刻決定和行動,沒有猶豫,而機會往往更容易留給有準備和有勇氣的人。
(資料來源:100offer網)
② Java的職業發展是怎麼樣的
1、軟體設計師
其實很多程序員走到這個階段已經在做軟體設計師工作了,這是絕大多數程序員發展的必經之路。
程序員在編程序的時候,一方面會實現設計的功能,另一方面也在對設計有一個理解、認識、熟知的過程,進而慢慢地從學習別人設計,轉向到自己參與或獨立設計。
如果這個程序員真的非常非常喜歡程序員這個職業,則可以轉向軟體設計師。這個轉變很大程度是程序員意識的轉變,就是說要把編程的時間,逐步分攤到軟體設計上,要把重點從編程實現轉變到項目的功能設計上。
我這里強調的是「逐步」的一個過程,程序員要逐步減少編程的時間,增加設計的時間,要克服編程的強大吸引力,要主動地攀上設計這個台階。很難有一個設計師是完全不編程的,而且我認為,會編程的設計師才是真正的設計師,一般這種轉變需要花上一到兩年時間。
2、 項目經理
也有一些程序員工作機遇比較好,不但負責了項目的設計工作,而且負責了項目管理工作,對項目經理這個工作有了一定的嘗試。因此,這類程序員可以審視一下自己,是否合適這項工作,如果自己對這種工作比較滿意,而且具備項目經理的要求,則可以向項目經理這個方向發展。
項目經理承擔著項目管理的職責,對項目負主要責任。它和程序員的作用也不相同,項目經理的重點已經從編程轉移到對人、對技術、對進度、對項目的管理。由於軟體的項目經理與軟體項目的相關性太大,因此,他必須要了解軟體開發的各個環節、了解開發的各種技術和運用、了解開發隊伍人員的水平和特點,所以他依舊和程序員脫不了干係。
從程序員到項目經理可以使得項目經理更好地理解程序員在項目中的地位和作用,了解軟體開發的各種規律性的東西,從而保證項目的正常完成。
而且,項目經理的收入在公司中的地位也是比較高的。因此,我認為走向項目經理是程序員的另一個發展空間。
我想提醒一下,程序員在擔任項目經理之前最好要把軟體設計工作做好,這樣在做項目經理的時候,就會有很好的基礎。
3、 管理者
很多程序員希望自己能成為公司中的主管、經理、老總、老闆,這樣無論是收入和在公司的地位都相對比較高一些。另外,一方面程序員可能厭倦了年復一年的編程工作,對工作產生了抵觸情緒,希望能擺脫這種步步緊逼的工作狀態。
走向管理者其實要求程序員要比一般人做更多的准備,要做更多的轉型工作,並不是想當管理者 就能成為管理者的。但是,如果程序員有這個志向和愛好,有積累了這方面的工作經驗,自己也感覺在這個方面能夠發展,更重要的是有這樣的機會,走向管理者也 是可能的。
由於軟體公司的管理者畢竟不同於一般公司的管理者,專業能力越強,管理起來就越得心應手的,沒有專業能力的管理,遇到的問題很多,也很難解決。
因此,我的建議程序員最好要把編程、項目設計、項目管理等基礎打打好,這樣轉型到管理者成功率就會高一些。
4、 軟體營銷
我一直說,程序員最大的缺點之一,就是眼光只盯在技術上,在入門階段和成長階段,這種情況還是屬於正常的。但是,到了成熟階段這種缺點將會嚴重影響程序員的發展。
程序員在工作中不免會接觸到用戶,不免會了解到用戶的需求。從而了解到軟體實際發揮的作用,進而了解了自身的工作價值所在。有的程序員則固步自封,不願意和外界打交道,從內心裡堅守技術底線。而有的程序員則喜歡和外人交流,喜歡把自己的軟體推薦給用戶,而且用戶也樂意接受這種專業的介紹,用戶的接受是程序員價值的直接實現,程序員因此獲得了工作成就感。
這類的程序員可以將自己的專業知識和產品營銷結合在一起,推動軟體的銷售和服務,轉向軟體營銷職業。這個職業將是一個比程序員更有發展的職業,它可以直接反應程序員的工作能力和工作成果,程序員的收入和銷售會直接掛鉤。
因此,可以讓有銷售才華的程序員獲得更高的收入,接觸到更大的軟體市場,看到更廣的個人發展空間。
5、 原地發展
當然也有一些程序員惰性比較大,滿足於現狀,享受著眼前的勝利果實,這也無可非議。對待這些程序員,我們不要強求他們改變自己的想法,我建議是原地發展,把本職工作做得更好,把自己的技術水平往上再提高一步。
在這個過程中他們的能力和自信心都會得到提高,他們的想法不會一直一成不變的。磨刀不誤砍柴功,刀快了自然會去砍柴的。
不管做哪一行,都該盡早做好職業規劃,人都是需要有一個目標去激勵自己,Java程序員更是如此。朝著一個目標逐步提升自身實力總會比原地打轉好,相信聰明的你該知道怎麼做。
③ 程序員轉行有哪些方向
考慮學個網管,起薪低點,不用編程
④ 學生從初級進階為高級程序員需要經歷什麼
程序員從初級到高級要經歷什麼
01 初級程序員
初級程序員一般是剛剛入行不久,工作經驗只有一年及以下的同學,對干技能要求,需要他們:
1.可以完成簡單模塊和項目的開發工作
2.熟悉HTML、JS、CSS等基礎知識
3.能夠使用一門MVVM框架進行簡單的業務開發
02 中級程序員
中級程序員要擁有3年及以上的工作經驗,具有能夠獨立負責一個子模塊的能力,以及能夠負責一個項目的具體任務。
具體的技能要求有:
1.熟練掌握工作中使用的術棧開發業務。
2.了解一個需求從開發到上線的整個生命周期,並對各個環節負責。
3.具備基本的邏輯分析、問題分解、歸納總結等能力。
4.了解基本的數據結構和演算法,寫代碼較熟練。
03 高級程序員
行業不缺程序員,但缺少能夠同時兼具資深經驗和技能優秀的高級程序員,高級程序員不但具有豐富的項目經驗,且技能扎實,並能夠持續保持新知識新技術的輸入,才能被稱之高級程序員。
技能要求:
1.具備獨當一面的能力,能夠帶領團隊展開工作。
2.針對一個需求能夠從開發到上線的整個生命周期中找到痛點與漏洞,並能運用技術的手段解決。
3.能對問題和需求做出分析和拆解,做出改進、實現方案。
4.有優秀的技術選型能力。
5.熟練掌握各種技術體系。
初級,高級如何實現升階?
第一,練習代碼,學習模仿。
俗話說熟能生巧,寫代碼也是一樣。如果本職工作的強度不算大,建議可以私下接一些小項目練手,多嘗試不同的業務。寫代碼可以參考大佬的編碼風格,學習對方的思路。如果公司有代碼規范,跟隨著公司的代碼規范走,如果沒有,參考業界規范。
第二,熟悉工作流程
也不要光埋頭寫代碼,學著多參與進項目,去熟悉一個需求提出-開發-聯調-測試一上線的整個工作環節,理解開發邏輯嘗試想像自己有一個項目,該如何開展工作。第三,基礎知識不能落下
知識就像棉被,需要時不時拿出來翻新、加固。基礎類:JS、CSS、HTML反復學習
了解一些廣度知識:HTTP、正則表達式、Web安全、性能優化、設計模式,數據結構和演算法
02 中級一高級
第一,業務全局思考能力成為高級程序員,就需要具有項目全局思考能力。首先,要明白業務和公司的目標,參與到需求的早期階段中;而後要多思考,是否可以通過技術手段提升業務價值。
第二,學習優化工作流程初級程序要要熟悉從需求-開發-聯調-測試-上線的每個工作環節,高級程序員則要多思考每個環節有沒有可以優化提升的地方,比如上線過程能否自動化、能否小流量上線等。
⑤ php程序員前途發展方向
PHP程序員前途發展方向
首先你要明白,PHP程序員前途有兩條進階路線。一條是技術路線,由程序員,經系統分析師、系統設計師直到架構設計師為歸宿。而另一條php程序員發展方向是領導路線,由程序員,經開發小組負責人、工程負責人,奮斗到項目經理。
如果你還不是一名程序員,你是否在為是否從事程序員工作而掙扎呢?
如果你已經是一名程序員,你是否在為程序員的前途而感到迷茫呢?
如果是,我可以告訴你,做程序員是有前途的!
從程序員的角度,可以發現更好的方向,IT(IT教育 IT培訓 )業不斷有新東西出現。用J系列語言比用C系列語言更時尚,用面向對象(或構件)的方法比面向過程的方法更先進,還有Delphi、.NET(.NET培訓 )、eLearning等開發工具,更有ERP(企業資源計劃(ERP)培訓 )(企業資源計劃)、CRM(客戶關系管理)、SCM(供應鏈管理)、CPC(協同產品商務)、BIS(商業智能系統)、EAI(企業應用集成)、EIP(企業信息門戶)等層出不窮的新概念。如果你能不斷與時俱進,追著新東西走,可以極大的'鍛煉你的學習能力,分析問題的能力和解決問題的能力。
從社會的角度來講,社會對程序員的定位是滿足技術需求,程序員自身所受的教育和積累的經驗也使自主前程意識局限於技術路線。實際上,我們所看到的在技術方面有建樹的前輩多是綜合型的人才,單純局限於技術思維的多有行為局限,也難看出自身的幸福感。其實,人有多方面的屬性,除非你是極少數的天才,在某一方面特別突出(相應地在其它方面就很脆弱),大多數人是多種屬性綜合發展,而且各屬性間相互促進。所以,在考慮程序員的前程時,有必要分析程序員的主要屬性及其可能產生的影響。
當你把程序當作異物看待時,編程是一種負擔,是勞累的事兒,是極其厭惡的事。如果能把編程當成一種興趣,一種愛好。這樣你就會不斷努力,不斷學習新知識,把程序作為人生奮進的載體,創造性地使用程序,並且能影響到其它領域。
php程序員前途很大,做程序員最需要的就是熬得住找准php程序員發展方向,有時候你努力了很長一段時間可能一點好的結果都沒有這是很正常的。所以就看你的耐心怎麼樣。如果你僅僅是有激情,想進入這個行業嘗試,那做為前輩來說我還是奉勸你打消這個念頭,到IT裡面做程序設計是很辛苦的,很多時候你腦子里想的只有代碼,其他的都不記得了。生活不規律,睡眠不足這些都是家常便飯。所以,如果你想進來,那請你做好充分的思想准備,很多隻有激情的年輕人,最後都是以放棄告終的,千萬要想好,半途而廢只會浪費光陰。最後,做程序員是有前途的,這個前途不是停止在程序員上,而是不斷的往上走,比如成為工程師、架構師、分析師等,這些才是更高的你需要去奮斗的目標,千萬不要只做底層的程序員,不然就停止進步了。
;
⑥ 程序員工作到底能幹多久程序員的前途如何
千千萬萬的程序員們一直困惑程序員的前途如何、程序員工作到底能幹多久的問題。目前比較普遍的認識,程序員的職業通道有兩條進階路線。一條 是技術路線,即由程序員、高級程序員、系統分析師,到架構設計師。在這條路線上,立足於從業務模型到計算機軟體模型的轉換,成為高端的軟體技術工作者。另 一條是管理路線,即由程序員,經開發小組負責人、項目經理,再到企業中高層管理者。程序員加強自己管理意識的培養,多站在組織的角度來分析問題和解決問 題,成為優秀的管理者,甚至職業經理人。 近年來,產品管理成為企業多產品經營形勢下一個越來越受重視的管理課題。特別是知識經濟環境下,諸如互聯網與軟體、創意、傳媒等現代新型產業鏈中, 其幾乎可以忽略不計的復製成本,有競爭力的產品與優秀的產品管理成為了制勝的關鍵。基於產品的商業化運營,在越來越具聚合效應的網路時代,扁平經營、草根 聚合、精準營銷、直通車服務等全新的經營環境常常造就了贏者通吃的局面,以產品為中心的企業管理逐漸形成獨立的產品管理體系,被眾多企業所關注和採用。 在軟體企業中,隨著產品管理的興起,可以說,走向產品,是程序員在技術與管理之外的第三條職業通道。越來越多的程序員開始轉型做產品工作,特別是對 那些具有創業意識的程序員而言,走向產品是一條必經之路。騰訊的馬化騰和360的周鴻禕,他們都是由程序員做起,然後開創自已的產品和事業。 產品管理的興起,產生了以產品經理為中心的產品工作職業方向。產品職業方向可以從產品系列的職務與崗位兩個維度來觀察。職務上,有首席產品官 (CPO)、產品總監、產品經理、產品專員、產品助理,其中尤以產品經理一職最為中心;崗位上,有產品競爭分析與用戶需求管理、產品創意與策劃、產品原型 設計、產品運營規劃、產品實現過程跟蹤、產品商品化實施、產品運營、產品經營成果分析與跟蹤、產品升級維護管理、產品管理體系與制度建設、產品人員技能培 養等。這些基於產品而設計的崗位以有效滿足用戶需求為中心,它不同於其它以專業技術和職能效率為中心的因職能分工而產生的崗位。 產品管理是近些年隨著IT和互聯網的快速興起而被各企業所重視,而現在的各大院校並沒有產品管理相關的專業,各類培訓機構也少有類似培訓課程,從事 產品工作的人員大多是從不同專業、不同崗位轉型過來的。相比較而言,程序員有著營銷、測試、客服等崗位走向產品的人員所難以比擬的優勢。有些公司甚至做出 了規定,欲從事產品工作,必須要有多年的軟體開發經驗。程序員轉型從事產品工作所具有的獨特優勢主要包括以下幾點: 第一,程序員能夠更好地理解產品的實現方案,所策劃的產品更具可行性。做產品策劃工作,也許缺的不是點子或創意,而是有效可行的方案。多年的程序員 工作經驗,對軟體技術和軟體實現方案的判斷,可以規避那些天馬行空的產品想法,工作更有成效。比如在整理用戶需求時,程序員的前期有效判斷和可行性辨別, 會大大提高產品的策劃質量與速度。程序員出身的產品人員可以和研發人員進行無隙的溝通,用更便於研發人員理解的語言和思路來進行產品方案的解讀和跟進。 第二,程序員的軟體開發工作,與其說是代碼的編寫,不如說是邏輯語句的組織。程序員一般都具備嚴密的邏輯思維能力,這是進行紛繁而雜亂的需求分析和 產品概念設計必備的優勢,更有利於從中分門別類理清脈絡關系,轉換為產品功能規劃,把產品做成精品。例如需要往U盤寫文件,產品人員可能只想到正常的操作 邏輯,但程序員可能會想到更多異常情況,如:U盤損壞、傳輸過程中拔出、斷電、傳輸的文件損壞、U盤防寫、重復文件、焦點位置、空間不足等等。再有,好 的用戶體驗的產品,在本質上,就是產品功能的邏輯展示,或者說用戶操作的邏輯引導。 第三,程序員往系統分析的技術方向發展,從本質上來說,同往產品策劃方向發展是相通的,都需要對真實世界本質關系有著充分的理解與把握。能夠走向系 統分析員的優秀程序員,完全有可能成為一個優秀的產品策劃人員。差別在於系統分析員的工作成果是面向程序員、面向計算機,而產品策劃是面向用戶、面向市 場。每一名程序員也必定是某個軟體產品開發工具的使用者,有深厚的軟體產品使用體驗,具有從用戶出發來表述問題的基礎。 第四,程序員一般都具有快速學習能力,保持對計算機相關行業動態和技術革新的觀察與思考,這在一定程度上會培養對行業與技術的洞察力。產品策劃和設 計工作,最後能否獲得市場的成功,考驗的正是這種洞察力。因為產品工作是時時圍繞解決的是什麼人的什麼問題來開展,也就是始終圍繞做正確的事。只 有對行業與技術有洞察力的人,才能夠站在用戶需求的角度來理解與體驗,激發創意,做出好產品來。 當然,程序員雖具備上述獨特優勢,並不等於程序員轉做產品工作,就一定能夠成功。要策劃出好的產品,要成為一名優秀的產品經理,他們也面臨著各種挑戰: 第一,創新和結構化思維的沖突。 結構化思維可以說是程序員的典型標志,這種思維模式對於把一件事情做好是很重要的,但它往往也會是創新思維的天敵。創新卻是產品工作的靈魂,程序員需要不斷打破常規激發靈感才能做好產品工作,就必須克服已經形成的思維定勢。 第二,團隊協作與英雄主義的矛盾。 程序員往往習慣於單打獨斗的工作方式,崇尚技術牛人,缺少團隊協作意識和與人溝通的技能。產品工作則需要大量的溝通協調,甚至組織領導工作,強調的是團隊作戰。在合作精神方面,想要轉向產品工作的程序員的確亟待加強。 第三,商業意識和市場運營知識匱乏。 特別是在全面產品管理思想下,產品人員需要有很強的市場營銷方面的知識和商業化運作的策劃與分析能力,僅僅把產 品做出來是不夠的,賣得掉才是硬道理。產品策劃的環節,面臨著營銷模式、目標用戶、渠道選擇、競爭策略等的選擇與設計,這也是擺在技術出身的程序員面前的 重要課程。 每個企業,都會根據自身所在行業特點和本企業的資源優勢,來部署不同形式的產品管理機制。程序員針對自己的性格特點和能力特徵,抓住產品管理這一方興未艾的職業機遇,走向產品,以優秀產品經理的能力模型培養來規劃學習道路與職業生涯,是值得重視的一個職業方向。 ------------------------------------------------------------------------------ 安徽高新專修學院
⑦ 菜鳥程序員如何快速進階成為編程老司機
要從菜鳥程序員成長為編程老司機,關鍵在於不斷學習和實踐。積極利用谷歌等搜索引擎,有效組織關鍵詞進行問題解決。擁抱變化,持續學習新技能,即使遇到困難也不氣餒。重視細節,無論是變數命名還是工具選擇,都影響項目成功。
學會快速刪除冗餘代碼,拒絕浪費時間在不必要的問題上。面對錯誤,要深入分析其背後的意義,將其作為指引解決方案的線索。理解代碼優化的時機,知道何時需要使用高效但可能更復雜的代碼。
熟練使用Vim或其他高效編輯器,進行代碼編輯。自己接私活,提升項目管理和時間評估能力。學會接受批評,並理性應對代碼反饋。結對編程能迅速提高技能,自己做代碼審查,培養專業眼光。
不要過分糾結於工作時間,而是專注於深度工作。發現並解決更廣泛的問題,深入了解大型開源項目,為自己的項目尋找更高效的方法。編寫「爛代碼」時,要學會靈活運用技巧,知道何時走捷徑,何時深入細節。多實踐,將最佳實踐融入日常,持續提升編程水平。
⑧ 瀛︾敓蹇呯湅紼嬪簭鍛樺垎姘村箔楂樹竴綰у埆涓嶅悓浜虹敓
紼嬪簭鍛樺叓涓孌典綅絳夌駭浣犵殑絳夌駭?
1銆佽彍楦
榪堣繘榪欏眰妤肩殑闂ㄦ涙槸寰堜綆鐨勩傚熀鏈涓婃噦璁$畻鏈虹殑鍩烘湰鎿嶄綔錛屼簡瑙h$畻鏈轟笓涓氱殑涓浜涘熀紜鐭ヨ瘑錛屾帉鎻′竴闂ㄥ熀鏈鐨勭紪紼嬭璦濡侰/C++錛屾垨鑰匤ava錛屾垨鑰匤avaScript錛...錛屽潎鍙鍏ラ棬榪堣繘榪欏眰銆傚傝$畻鏈轟笓涓氭瘯涓氱敓錛屽ぇ閲忕殑閫氫俊銆佽嚜鍔ㄥ寲銆佹暟瀛︾瓑鐩稿叧涓撲笟鐨勮漿琛屼漢澹銆
榪欑被浜哄憳涓嶇℃槸涓嶆槸璁$畻鏈虹戠彮鍑鴻韓錛屽熀紜濡備綍錛屼粬浠瀵圭紪紼嬫湁鐫鐗規畩鐨勭埍濂斤紝浠栦滑鍙鑳戒細鏄涓浜涘緢鏈夊墠閫旂殑瀛︾敓鎴栧疄涔犵敓
浠栦滑瀹屽叏鏄闈犵儹鎯呭拰鎵胯烘潵緙栫▼銆傚叴瓚f案榪滄槸鏈濂界殑鑰佸笀錛屼篃鏄鏈濂界殑涓浠朵簨錛屽洜涓哄叴瓚h屽紩鍙戠殑鐑鎯呴氬父浼氳╄繖浜涚▼搴忓憳鎴愪負鈥滈ㄥ共紼嬪簭鍛樷
2銆佸ぇ鉶
浠庣1灞傜埇鍒扮2灞傜浉瀵瑰規槗涓浜涳紝浠C/C++紼嬪簭鍛樹負渚嬶紝鍙瑕佺啛緇冩帉鎻C/C++緙栫▼璇璦錛屾帉鎻C鏍囧噯搴撳拰甯哥敤鐨勫悇縐嶆暟鎹緇撴瀯綆楁硶錛屾帉鎻STL鐨勫熀鏈瀹炵幇鍜屼嬌鐢ㄦ柟娉曪紝鎺屾彙澶氱嚎紼嬬紪紼嬪熀紜鐭ヨ瘑錛屾帉鎻′竴縐嶅紑鍙戠幆澧冿紝鍐嶅瑰悇縐嶆搷浣滅郴緇熺殑API閮藉幓浣跨敤涓涓嬶紝鎼炵綉緇滅紪紼嬬殑褰撶劧瀵箂ocket緙栫▼瑕佸ソ濂芥帉鎻′竴涓嬶紝鐒跺悗鍐嶅︿範涓浜涢潰鍚戝硅薄鐨勮捐$煡璇嗗拰璁捐℃ā寮忕瓑錛屽︿範涓浜涙祴璇曘佽蔣浠跺伐紼嬪拰璐ㄩ噺鎺у埗鐨勫熀鏈鐭ヨ瘑錛屽ぇ閮ㄥ垎浜虹粡榪2~3騫寸殑鍔鍔涳紝閮藉彲浠ョ埇鍒扮2灞傦紝鏅嬪崌涓"澶ц櫨鈥
3銆佺墰浜
鐢卞共"澶ц櫨"浠緇忓父琚涓浜涚枒闅鵑棶棰樼粰鍗′綇錛屼粬浠鍙濂界戶緇瀛︿範錛屽皢鍘熸潵鎵瀛︾殑鐭ヨ瘑榪涗竴姝ョ啛緇冩帉鎻°備互杞浠惰捐℃潵璇達紝鍏夋噦緇撴瀯鍖栬捐°侀潰鍚戝硅薄璁捐″拰涓浜涜捐℃ā寮忔槸涓嶅熺殑錛岃繕瑕佷簡瑙h蔣浠舵灦鏋勮捐°佷氦浜掕捐°侀潰鍚戞柟闈㈢殑璁捐°侀潰鍚戜嬌鐢ㄧ殑璁捐°侀潰鍚戞暟鎹緇撴瀯綆楁硶鐨勮捐°佹儏鎰熷寲璁捐$瓑錛屽惁鍒欐槸寰堥毦榪涘埌榪欎釜妤煎眰鐨勩傚綋鐒墮櫎浜嗕笂闈㈣寸殑鐭ヨ瘑澶栵紝澶ц櫨浠榪橀渶瑕佸幓瀛︿範鍚勭嶇粡楠屽拰鎶宸с
4銆佸ぇ鐗
浠庣墰浜鴻繘闃舵垚涓哄ぇ鐗涘苟涓嶅規槗錛屽氨鍍忔槸鐧懼垎鍒訛紝鍒板強鏍肩嚎姣旇緝杞繪澗錛屼絾鏄60鍒嗗埌80鍒嗗氨浼氭洿闅句簡銆傝佹垚涓哄ぇ鐗涚殑璇濓紝浣犲繀欏昏佽兘鍋氱墰浜轟滑鍋氫笉浜嗙殑浜嬫儏錛岃В鍐崇墰浜轟滑瑙e喅涓嶄簡闂棰樸傛瘮濡傜墰浜轟滑閫氬父閮戒笉鎳傚啓鎿嶄綔緋葷粺錛屼笉浼氬啓緙栬瘧鍣錛屼笉鎳傚緱TCP/IP鍗忚鐨勫簳灞傚疄鐜幫紝濡傛灉浣犳湁鑳藉姏灝嗗叾涓鐨勪換浣曚竴涓瀹炵幇寰楄薄妯¤薄鏍風殑璇濓紝閭d箞浣犲氨浠庣墰浜哄崌綰т負"澶х墰"浜嗐傝佹垚涓"澶х墰"騫朵笉鏄涓浠剁畝鍗曠殑浜嬫儏錛岄渶瑕佷粯鍑烘瘮鐗涗漢浠澶氬緱澶氱殑鍔鍔涳紝涓鑸鏉ヨ達紝鑷沖皯瑕佺湅榪200~400鏈宸﹀彸鐨勪笓涓氫功綾嶅苟濂藉ソ鎺屾彙瀹冿紝闄ゆや箣澶栵紝榪樺緱緇忓父鍏蟲敞緗戠粶鍜屾湡鍒婃潅蹇椾笂鐨勫悇縐嶆渶鏂頒俊鎮銆
5銆佷笓瀹
褰撳ぇ鐗涗滑鐪熸e姩鎵嬪仛涓涓鎿嶄綔緋葷粺鎴栬呯被浼肩殑鍏朵粬杞浠舵椂錛屼粬浠灝變細鍙戠幇鑷宸辯殑鍩烘湰鍔熶粛鐒舵湁寰堝氱殑涓嶈凍銆傝繖涓鏃跺欏氨瑕佹眰浠栦滑浼氳繘琛屽熀紜鐮旂┒錛屼富瑕佺殑鍐呭瑰氨鏄鐮旂┒闈炴暟鍊"璁$畻"銆
闈炴暟鍊艱$畻鍙鏄涓涓闈炲父搴炲ぇ鐨勯嗗煙錛屼笉浠呮椂涓嬬儹闂ㄧ殑"澶氭牳璁$畻"涓"浜戣$畻"灞炰簬闈炴暟鍊艱$畻鑼冪暣錛屽氨鏄杞浠墮渶奼傘佽捐°佹祴璇曘佽皟璇曘佽瘎浼般佽川閲忔帶鍒躲佽蔣浠跺伐紼嬬瓑鏈璐ㄤ笂涔熷睘騫查潪鏁板艱$畻鐨勮寖鐣達紝鐢氳嚦鑺鐗囩‖浠惰捐′篃鍚屾牱鐗墊秹鍒伴潪鏁板艱$畻銆傚傛灉浣犺繕娌℃湁鐪熸i嗘偀"璁$畻"浜屽瓧鐨勫惈涔夛紝閭d箞浣犲氨娌℃湁鏈轟細榪涘埌榪欏眰妤兼潵銆
6銆佸﹁
褰"涓撳"浠鎯崇戶緇寰涓婁竴灞傛ゼ鐖鏃訛紝浠栦滑浼氬彂鐜頒笓涓氭х殑瀛︿範瀵逛簬浠栦滑鏉ヨ存槸寰堢畝鍗曠殑錛屾嫤璺鉶庢槸鈥滃壋鏂扳濄傚儚涓婇潰鎻愬埌鐨勶紝鎯寵佸湪涓撳剁殑鍩虹涓婃洿榪-姝ワ紝灝遍渶瑕佷駭鐢熻嚜宸辯殑鐭ヨ瘑鍜屾濇兂銆
浣嗗︿範鐨勯兘鏄涓鏍風殑涓滆タ錛屾庝箞鍘誨壋鏂板憿?鍙や漢鏈変竴鍙ヨ瘽鈥滄俯鏁呰岀煡鏂扳濓紝涔熷氨鏄宸ヤ綔褰撲腑璇村埌鐨勨滃嶈厫浠ユ煡鎵句負渚嬶紝騫朵笉鏄鍘誨ぉ澶╃洴鐫閭d簺澶嶆潅鐨勬煡鎵劇粨鏋勫拰綆楁硶榪涜岀爺絀訛紝浣犻渶瑕佸仛鐨勬槸灝嗕簩鍒嗘煡鎵俱佸搱甯屾煡鎵俱佹櫘閫氫簩鍙夋爲鏌ユ壘絳夊熀紜鎬х殑鐭ヨ瘑濂藉ソ鍦板嶄範鍑犻亶銆
7銆佸ぇ甯
鎴愪負澶у笀蹇呴』瑕佹湁杈冨ぇ鐨勮礎鐚銆傞栧厛瑙e喅闂棰樺繀欏繪槸姣旇緝閲嶈佺殑錛屽叾嬈′綘瑕佹瘮鍓嶈緢浠鍦ㄦ煇鏂歸潰鏈変竴涓杈冨ぇ鐨勬彁楂橈紝鎴栬呬綘瑙e喅鐨勬槸涓涓鍏ㄦ柊鐨勪互鍓嶆病鏈夎В鍐寵繃鐨勯棶棰:鏈閲嶈佺殑鏄錛屼富瑕佺殑鎬濊礬鍜屾柟娉曞繀欏繪槸浣犺嚜宸辨彁渚涚殑錛屼笉鍐嶆槸鍦ㄥ埆浜虹殑鎬濊礬鍩虹涓婅繘琛岀殑浼樺寲鍜屾敼榪涖
濡傦紝鍍廐oare涓鏍瘋捐″嚭涓涓蹇閫熸帓搴忕殑綆楁硶;鎴栬呭儚Eugene W.Myers涓鏍瘋捐″嚭浜嗕竴涓鐢ㄧ紪杈戝浘鐨勬渶鐭璺寰勬ā鍨嬫潵瑙e喅diff闂棰樼殑綆楁硶:鎴栬呭儚MJ.DPowell涓鏍鋒彁鍑轟簡涓涓鑳藉熷勭悊闈炵嚎鎬ц勫垝闂棰樼殑SQP鏂規硶:鐢氳嚦璁捐″嚭涓涓鍍廋++鎴朖ava涓鏍風殑璇璦......
8銆佺戝﹀
縐戝﹀跺悜鏉ラ兘鏄涓涓紲炲湥鐨勭О鍙鳳紝瑕佹垚涓虹戝﹀訛紝浣犵殑璐$尞蹇呴』瓚呰秺澶у笀錛屼笉濡ㄤ婦涓浜涗緥瀛愩傚侱iikstra璁捐′簡ALGOL璇璦錛屾彁鍑轟簡紼嬪簭璁捐$殑涓夌嶅熀鏈緇撴瀯:欏哄簭銆侀夋嫨銆佸驚鐜錛屼粬鏄鍙浠ヨ縐頒負縐戝﹀剁殑銆傜被浼肩殑榪樻湁:
Don Knuth錛屽犲畾鏁版嵁緇撴瀯涓庣畻娉曡繖闂ㄥ︾戠殑鍩虹:宸寸戞柉錛屽彂鏄嶧ortran璇璦錛屾彁鍑轟簡宸寸戞柉鑼冨紡錛屽歸珮綰х▼搴忚璦鐨勫彂灞曡搗浜嗛噸瑕佷綔鐢;