導航:首頁 > 程序命令 > 程序員的經歷和學習

程序員的經歷和學習

發布時間:2022-07-28 19:08:45

程序員成長過程

序員是一種技術工作,在IT的發展中有相當重要的地位,從底層硬體通訊協議的建立, 到數據傳輸層的處理,到操作系統的建設,到資料庫平台的建設,一直到應用層上各種數 據營銷平台的搭建,程序員在裡面都扮演著舉足輕重的角色並為IT事業的發展做出了巨大 的貢獻。

中國有很多精於編碼的人,但是中國軟體行業,尤其是網路應用開發方面誤區很大,很難形成有規模的軟體開發力量和產品能力,不但比美國差距甚遠,和印度相比也是頗有不如。這些問題不是在於中國程序員的智商和工作努力狀況,也不是在於國家和民間對開發的投入程度,而是很大程度上,有一些對技術,對程序開發,對項目設計方面的思想誤區,這些誤區,導致了軟體行業的產品化能力不足,缺乏規模化和大型復用系統研發能力,可以說,改變認識誤區,是解決軟體行業小作坊模式和個體英雄模式所帶來的局限性 的重要工作。

中國有很多小朋友,他們18,9歲或21,2歲,通過自學也寫了不少代碼,他們有的代碼寫的很漂亮,一些技術細節相當出眾,也很有鑽研精神,但是他們被一些錯誤的認識和觀點左右,缺乏對系統,對程序的整體理解能力,這些人,一個網上的朋友說得很好,他們實際 上只是一些Coding fans,壓根沒有資格稱為程序員,但是據我所知,不少小網路公司的 CTO就是這樣的coding fans,拿著嚇人的工資,做著嚇人的項目,項目的結局通常也很嚇 人。

Ⅱ 傳奇程序員的傳奇經歷

程序員 程序員(英文Programmer)是從事程序開發、維護的專業人員。一般我們將程序員分為程序設計人員和程序編碼員,但兩者的界限並不非常清楚,特別是在中國。
作一個真正合格的程序員,應該具有的素質。
1:團隊精神和協作能力
團隊精神和協作能力是作為一個程序員應具備的最基本的素質。軟體工程已經提了將近三十年了,當今的軟體開發已經不是編程了,而是工程。獨行俠可以寫一些程序也能賺錢發財,但是進入研發團隊,從事商業化和產品化的開發任務,就必須具備這種素質。可以毫不誇張的說這種素質是一個程序員乃至一個團隊的安身立命之本。
2:文檔習慣
文檔是一個軟體系統的生命力。一個公司的產品再好、技術含量再高,如果沒有缺乏文檔,知識就沒有繼承,公司還是一個來料加工的軟體作坊。作為代碼程序員,必須將30%的工作時間寫用於技術文檔。沒有文檔的程序員勢必會被淘汰。
3:規范化的代碼編寫習慣
知名軟體公司的代碼的變數命名、注釋格式,甚至嵌套中行縮進的長度和函數間的空行數字都有明確規定,良好的編寫習慣,不但有助於代碼的移植和糾錯,也有助於不同技術人員之間的協作。 一些所謂的高手甚至叫囂高手寫的代碼一般人看不懂,我只能說他不是一名合格的程序員。
4:需求理解能力
程序員要能正確理解任務單中描述的需求。在這里要明確一點,程序員不僅僅要注意到軟體的功能需求,還應注意軟體的性能需求,要能正確評估自己的模塊對整個項目中的影響及潛在的威脅,如果有著兩到三年項目經驗的熟練程序員對這一點沒有體會的話,只能說明他或許是認真工作過,但是沒有用心工作。
5:模塊化思維能力
作為一個優秀的程序員,他的思想不能在局限當前的工作任務裡面,要想想看自己寫的模塊是否可以脫離當前系統存在,通過簡單的封裝在其他系統中或其他模塊中直接使用。這樣做可以使代碼能重復利用,減少重復的勞動,也能是系統結構越趨合理。模塊化思維能力的提高是一個程序員的技術水平提高的一項重要指標。
6:測試習慣
測試是軟體工程質量保證的重要環節,但是測試不僅僅是測試工程師的工作,而是每個程序員的一種基本職責。程序員要認識測試不僅是正常的程序調試,而要是要進行有目的有針對性的異常調用測試,這一點要結合需求理解能力。
7:學習和總結的能力
程序員是很容易被淘汰的職業,所以要善於學習總結。許多程序員喜歡盲目追求一些編碼的小技巧,這樣的技術人員無論學了多少語言,代碼寫起來多熟練,我們只能說他是一名熟練的代碼民工,他永遠都不會有質的提高。一個善於學習的程序員會經常總結自己的技術水平,對自己的技術層面要有良好的定位,這樣才能有目的地提高自己。這樣才能逐步提高,從程序員升級為軟體設計師、系統分析員。
作為高級程序員,乃至於設計師而言,除了應該具備上述全部素質之外,還需要具備以下素質:
1、 需求分析能力
2、 整體框架能力
3、 流程處理能力
4、 模塊分解能力
5、 整體項目評估能力
6、 團隊組織管理能力
1,激情
我曾經遇到許多「職業程序員」,他們從事IT是因為覺得這是一種職業,他們只在工作時間編程,除非送去培訓否則他們不會學習新東西,這不是好的程序員。我認為一個好的程序員總是對編程充滿激情,而且好的開發者會做一些編程工作即使這沒有報酬。激情是一個優秀程序員的重要指標。
2,自學好學
編程領域始終發展變化著,不出一年有些新技術就變成了老技術,這並不是說好的程序員要對所有新技術跟進,但有些卻對學習任何新技術都沒有興趣。他們通常在學校學習了編程,然後工作後單位安排學什麼就學什麼。如果在招聘中你聽到「讓我培訓一個星期我就會勝任這個工作」那不要僱傭他。實際上,真正優秀的程序員始終談論著你所不知道的新技術,向人們解釋為什麼你必須用這個技術,哪怕沒有聽眾聽得明白,哪怕他自己也不明白。
3,聰明
聰明包括很多因素,情緒和社會交際只是其中之一。好的程序員絕不木訥,他們是最聰明的人,他們中的許多善於交際,健談、興趣廣泛。
4,隱性的經驗
—好的程序員通常有自己的私人的一些研究、愛好、項目,而這些是他們不寫在簡歷上 (通常覺得不值得寫),但表現出來卻可能恰恰是他的潛能、深度和後勁所在。
5,技術多樣性
由於好的程序員喜歡學習和涉獵新技術,所以一般來說超過22歲的都熟知很多新技術,而且對多種技術的長短有 「強烈」的個人意見/見解,喜好嘗試新鮮技術。
6,資格證書
資格證書並不是識別真正程序員的方法,MCSE、SCJP說明不了什麼,它們只是讓別人認識和獲取的,頂多代表這個人在某個技術有一定的知識。
原文作者在文末寫道:以上所說的標准並不是絕對的,因為有些優秀的程序員確實不符合上述,而有些bad程序員卻符合了。但相信這些對大多數真正的程序員都適用。
總結而言,優秀的程序員通常有一下特點:
對技術充滿激情
將編程作為一種愛好
如果你允許會滔滔不絕地跟你談論技術
有過個人的開發經歷(與4意思相同)
堅持認為某種技術最好
如果讓他用他認為不好的技術他會非常別扭
聰明、健談、興趣廣泛
在大學和工作前就開始接觸程序
[編輯本段]考試說明
1、 考試要求:
(1) 熟練掌握基本演算法和數據結構,用C語言編製程序;
(2) 掌握數據結構、程序變速器和操作系統的基礎知識;
(3) 了解軟體工程、資料庫、多媒體和網路的基礎知識;
(4) 掌握數制、機內代碼及其算術運算和邏輯運算的基礎知識;
(5) 了解計算機的體系結構和主要部件的基礎知識。
2、 通過本級水平考試的合格人員能按照軟體設計說明書編製程序,具有相當於助理工程師
的實際工作能力和業務水平。
3、 本級水平考試范圍包括兩個模塊:模塊1——程序編制能力(考試時間為150分鍾);模
塊2——基礎知識(程序員級)考試時間為120分鍾)。題型為:單項選擇題十多項選擇題。
[編輯本段]考試范圍
模塊1:程序編制能力
1.1按照軟體設計說明書,能熟練使用下列程序語言編製程序
1.1.1C(美國標准)
1.2理解給定程序的功能,能發現程序中的錯誤並加以糾正
1.3具有良好的程序編制風格
1.4基本演算法
1.4.1查找、更新、排序、合並及字元處理
1.4.2迭代、插值、數值積分、矩陣計算、議程求解和搜索求解
1.5程序編制方法
1.5.1分支、循環、子程序(過程和函數)、遞歸
1.5.2輸入輸出和文件的處理
模塊2:基礎知識(程序員級)
2.1軟體基礎知識
2.1.1數據結構基礎
數組、記錄、列表(list)、隊列、棧(stack)、堆(heap)、樹和二叉樹的定義、存儲和操作
2.1.2程序語言基礎知識
·匯編、編譯、解釋系統的基礎知識
·程序語言的數據類型
·程序語言的控制結構
2.1.3操作系統基礎知識
·操作系統的類型和功能
·操作系統的層次結構和進程概念
·作業、處理機、存儲、文件和設備等管理的基礎知識
2.1.4軟體工程基礎知識
·軟體生命周期各階段的任務
·結構化分析和設計方法
·面向對象基本概念
·軟體開發工具與環境基礎知識
2.1.5資料庫基礎知識
·資料庫模型
·資料庫系統的結構
·SQL的使用初步
·常用資料庫管理系統的知識
2.1.6多媒體基礎知識
·多媒體基本概念
·常用圖象文件
·簡單圖形(線段和圓)的計算機圖示
2.2硬體基礎知識
2.2.1數制及其轉換
·二進制、十進制和十六進制等常用數制及其相互轉換
2.2.2機內代碼
·原碼、補碼、反碼、移碼
·定點數與浮點數的機內表示
·ASCII碼及漢字編碼等常用的編碼
·奇偶校驗碼、海明碼、循環冗餘碼(CRC)等常用校驗方法
2.2.3算術運算和邏輯運算
·計算機中的二進制數運算方法
·邏輯代數的基本運算和邏輯表達式的化簡
2.2.4計算機的體系結構和主要部件
·中央處理器CPU、存儲器和輸入/輸出設備
·匯流排結構、指令流和數據流
2.2.5指令系統
·常用的定址方式
·指令的格式、分類及功能
·指令的執行過程
2.3網路基礎知識
2.3.1網路的功能、分類與組成
2.3.2網路協議與標准
2.3.3網路結構與通信
2.3.4網路的安全性
2.3.5Client-Server結構
2.3.6Internet和Intranet初步

Ⅲ 學習編程的經歷感覺好嗎

本人是一名計算機系的學生,,自認為自己的編程能力應該是不錯的。我跟你一樣也是從小就喜歡電腦,想著長大當一名電腦大神,於是初中畢業就買了一大堆21天學通c語言,黑客速成寶典等書開始自學,高二的時候參加了信息奧賽竟賽,通過了初賽,復賽本來有兩場,後來一場由於在網吧包夜打游戲結果睡過頭了沒參加,至今悔恨,,結果只得了一個省二等獎。之後就是一心一意迎戰高考,停止了對編程的學習。

Ⅳ 一個程序員所要經歷的步驟

程序員應具備的12種能力
畢業四年來,感覺自己也是從一名不合格的程序員一步步走過來的。回頭反思一下,合格的程序員有很多標准和要求,下面是我總結的一個合格程序員應該具備的12種能力。中國軟體行業的崛起,靠的是合格的程序員。任何華麗的管理制度都不能保證軟體項目的成功交付,合格的程序員就是有力的保證,是項目成功的基礎。寫下這些,是為了給剛剛進入程序員這個職業的新同學們一點參考。我一直以為,當程序員是很辛苦的,如果不是真正的喜歡,很難堅持下去。如果真的不喜歡這個職業,也該尊重這個職業,尊重自己,趕緊改行。

1. 編程語言能力

不用多說,作為合格的程序員,精通一門語言是必須的。這種精通,不是說看了一本《24小時精通XXX》,抄了幾個程序就能說精通的,要靠長時間的積累和浸淫。

2.編碼能力

我曾經看多很多程序員寫的代碼,在同一個jsp或者java源文件里,出現了三種以上的對方法的命名方式,有下劃線間隔的,有全大寫的,有拼音首字母的。就像一個菜市場,雜亂無比,估計10天後,他自己都無法看的懂。遵守編碼規范,是一個程序員最基本的要求,可悲的是,很多程序員根本沒有意識到這個問題的嚴重性。隨意堆砌網上搜來的代碼,根本不管可讀性和可維護性,只要能實現功能就行了,心想做完這個項目,就拍拍屁股走人了,缺少最基本的職責素養。我經常把代碼必須成程序員的孩子,你就是是孩子他爹,孩子他媽,是有感情的。對你自己的孩子,你能不仔細呵護嗎?你是稱職的父母嗎?這是我編寫的一個Java編碼規范,供大家參考,這里可以下載http://gurudk.javaeye.com/blog/111734

另外一個就是注釋,要注意不是為了注釋而注釋。對類,以說明職責為主;對方法,以說明意圖為主;對方法體,以說明實現思路為主。對於大段大段的代碼,要分段,使用空行隔開,並使用行內注釋進行說明。

思維的條理性,寫代碼之前,先簡單計劃一下,用自然語言把流程寫下來,用於整理實現思路。不要看了需求或設計之後,馬上就敲代碼了,敲完代碼馬上就debug。花點時間思考,敲代碼只是最後一個很簡單的工作,不要把自己變成一個代碼打字員,編寫邊想,寫了刪,刪了寫。安安靜靜把實現過程想清楚,在腦子里先實現一遍。再去敲代碼,水到渠成。

3.面向對象思維能力

如今,多數編程語言都是面向對象的編程語言。而這些面向對象的編程語言的共同的精髓就是面向對象的思想。掌握這些比面向對象語言本身更重要,比如對繼承,多態,重載的理解。對面向對象基本原則的理解,比如開閉原則,介面隔離原則,單一職責原則等。在此基礎上,應該掌握常用的設計模式,比如工廠模式,策略模式,觀察者模式,模板方法模式,命令模式等等。我面試過很多程序員,沒有一個能說得上幾句的。

4.利用工具能力

工欲善其事,必先利其器。有了趁手的傢伙,工作效率可以提升數倍。你編程序,有沒有選擇一個很好的IDE,以前聽說編程高手都用記事本寫程序,我覺得那是一種自虐。就像以前看到的一篇文章,說一幫戶外旅行愛好者,出去旅遊,背了重重的旅行包,裡面裝著什麼壓縮餅乾等快速食品。他們寧可就著礦泉水啃壓縮餅干,也不肯去1里路都不到的快餐店,農家菜館吃飯。工具是為目的服務的,好用,提高效率就行,形式無所謂。

另外一個常用的工具就是日記本,好聽點可以稱為知識管理工具,我用的是myBase,感覺非常好用,在之前,我的所有的片段內容都是記錄的單獨的文本文件里的,非常不好找,管理也很混亂。

經常上互聯網,看到好多好的資料想保存下來,作為日後查看之用.一開始,我用的是firefox自帶的書簽,但是自己分類太累,多了之後不便於查找,很麻煩。後來用了得樂書簽(del.icio.us)的firefox插件,非常方便,現在成為了我必備的一個工具。

還有一個最重要的工具就是搜索引擎了,我裝了google forfirefox插件,感覺不錯,還有英文翻譯功能。按照我同事的說法,內事用,外事用google。很多技術資料都是英文的,用google搜索效率高一些。搜索引擎用好了,就等於打開了一扇通向知識寶庫的門,使用搜索引擎,關鍵字選擇很重要。

經常去瀏覽大牛的blog,逐個網站訪問很麻煩,去看了又可能沒有更新,可以藉助於RSS訂閱工具,我是用iGoogle桌面工具,每天早上花半個小時掃一下,大牛的最新文章盡收眼底了。

5. 英語能力

新的技術資料都是英文的,英語國家的IT技術走在我們前面至少10年(這是我自己估計的數字,可能正在縮小)。就連印度,一個連基礎設施建設都不太完善的國家,因為其英語基礎較好,其在軟體外包領域的發展也非常迅猛,遠遠超過了我們。學英語,首先是有信心,其次就是花時間。多閱讀英文資料,使用金山詞霸,google的firefox插件等工具配合,貴在堅持。

6.學習能力

在IT也混飯吃不容易,整個環境進化的太快,你不學習,就等於落後了。學習要有針對性,別今天學ruby,明天學python,後天php的。首先要認清自己的目標,自己短期目標是什麼,1年後,3年後,5年後的目標是什麼。結合這些目標,確定自己的學習計劃,人的精力畢竟是有限的。當然,多掌握幾門編程語言也是好的,可以擴充自己的知識面,重要的是為自己的目標服務。

要想系統的學習一門技術或工具,看書是最好的方法。看完後,然後上網找相關資料,進行深入學習。學習要抓緊一切可以利用的時間,比如電腦啟動要花1分多鍾,旁邊放一本書,可以看上幾頁了。公交車上,地鐵上也可以看。

當然,不能只學習技術,要經常聯系自己的軟技能,比如溝通能力,表達能力。你可以把自己學到的東西,解釋給自己的同事聽,既加深了理解,又增進了同事之間的交流。學習的最高境界就是你能夠把學到的東西解釋給別人聽,這才說明你理解了。在學習心理學上,稱之為構成主義。

我學一樣東西,總是先上網了解有沒有相關書籍,如果想學,就買一本或者去圖書館找相關的書來讀。我買的書,家裡快放不下了(到目前位置,我買了1萬多塊的書)。我多半是把目錄看完,了解這本書講解的主要內容,然後需要的時候,我就可以立即補充它進入到我的知識結構。每個人可能都有自己的學習方法,意識到學習的重要,並能夠根據需要補充自己的知識,這種能力更重要。

7.創造能力

普遍認為,東方人模仿能力很強,但創造能力差。我見過很多這樣的程序員,經常說,「這個只能這么解決了,我想不出有什麼別的方法。」可能他根本都沒想過別的方法,或者懶得去想。對任何一個問題,找出兩種以上的解決辦法都是非常容易的,簡單的google一下,可能就是數十種。悲哀的是,有些程序員經常止步於自己構建的狹小領地之內。對待客戶也是這種態度,不是積極的幫助客戶解決問題,而是推脫這只是唯一解決方案。

打破這一思維定勢的首先的一個辦法就是在面臨一個問題時,首先想到的是「沒有不可能」,或是「一切皆有可能」,前面那個是阿迪的廣告語,後面是李寧的。只有這樣去想,才能尋找解決問題的別的出路,即使最後我們試了很多種辦法,還是只有著一種解決方案,但我們在這種尋找解決方案的過程中,常常會產生很多好的想法,這樣才會使我們真正深刻思考一個問題。建議大家看一看《水平思考》這本書,他提供了一些進行創造性思考的方法和工具。

但我認為,堅持認為存在另一種解決方案的信念是第一位的,方法和工具都是其次。

8.文檔能力

也許有人會質疑,程序員跟寫文檔有什麼關系。大家開源軟體也用過不少,看看Spring,hibernate,Struts等最流行的開源軟體的文檔就知道,他么的tutorial,他們的getstarted,他們的reference文檔寫的多麼的易懂。其實寫代碼也相當於寫文檔,只不過用的是編程語言。同樣,寫文檔,用自然語言,也相當於寫程序,簡單明了,清晰易懂,這樣的「程序」誰看誰舒服。同樣,對於想進階到設計師或者需求分析員角色的程序員,文檔能力更是非常重要。

word是一個最實用的工具,很多程序員,多級編號都不會用,索引目錄也不知道如何生成,更別靈活應用樣式了。很多排版都是所謂的dirty work。垃圾樣式一大堆。其實,靜下心來,稍微學習一下,就能寫出一篇格式漂亮的文檔。

9.抽象能力

抽象能力是認識事物從現象到本質的能力。如果你只是停留在「見山是山,見水是水」的層次,客戶說什麼,你就做什麼,設計怎麼做,你就怎麼實現,從來不過問為什麼,也不去想他是滿足了用戶哪些方面的需求呢。這樣可能只解決了表面的問題,可能會引起返工。認識到本質,才能讓你的程序具備更大的靈活性和可擴展性。在做企業應用軟體開發中,抽象能力體現為對問題域的理解能力,對領域模型的抽象。合理的抽象也是代碼重構的前提,每一次重構,都是向更好的抽象邁進了一步。

10.代碼評審能力

代碼評審和單元測試是保證代碼質量的兩種常用手段之一。代碼評審能力,說明了你的審美標准,知道什麼是好的,什麼是不好的,什麼是優雅的代碼,什麼是糟糕的代碼,你才能讓自己做的更好。

11.單元測試能力

沒有單元測試的代碼,只能說是半成品。因為沒有什麼能證明你的代碼是可以運行的。測試驅動開發是一個非常好的敏捷過程的最佳實踐。單元測試還可以作為回歸測試,在修改代碼時,起到警戒線標志的作用。是否具有單元測試的意識是區分程序員是否合格的重要標准。寫不寫單元測試是區分平庸程序員和優秀程序員的重要標桿。

12.DRY
DRY是一種原則,就是Don't RepeatYourself.出自《程序員修煉之道-從小工到專家》。這條原則可以用到很多地方,比如你經常要編譯,打包,部署應用程序,供集成測試用。每次你都在重復你自己,寫一個自動化腳本(比如用ant,批處理命令)來將這些工作自動化,以提高效率。

還有一個就是我們經常在不同的地方切換IP,如果每次手工做,也非常浪費時間,寫一個bat命令可以解決,找一個小工具也可以解決。

編碼時,對代碼的復用也是在重復你自己,雖然拷貝過程很爽,但是維護一致性就要付出巨大的工作量,特別是將來維護的人不是你的時候,使用代碼生成工具可以解決這個問題。類似的例子太多了,如果你發現你經常做一些重復的工作,就要警惕了,是否違背了這個原則,想一些辦法將他們自動化。

Ⅳ 程序員如何學習

沒有捷徑,只有靠多寫代碼
但是要寫有用的代碼,不能老是寫一樣的,所以重構項目是一種很提升水平的經歷,每隔一兩年最好能參與一次這種優化代碼的機會。
還有就是多讀書,經典代碼讀物比如《代碼大全》,這本書適合5年以內程序員看

Ⅵ 程序員是學習什麼的

01
首先,編程所需的基礎也就是語言,選擇一種自己感興趣或者擅長的語言,這里給大家羅列一個語言的分類:
Python——一個非常適合初學者的語言 ,而且當你掌握它的時候它會變得更加強大。被用來開發了許多Web應用、甚至一些游戲。
Java——被無數個項目所使用,從游戲到Web應用再到ATM軟體。
HTML——對於任何Web開發者必不可少的起航點。在從事其他一系列Web開發之前掌握好HTML非常重要。
C——最古老的語言之一,它已經是非常強大的工具,也是一些更現代的語言的祖先,比如C++,C#和Objective-C。

02
學習語言的過程中還要有機會進行檢驗,不能只編寫代碼,還要檢驗代碼的結果運行是否正確,也就是某些可以運行結果的軟體我們要有,不過許多的編程語言都要求有被程序員設計來講代碼轉換成機器能理解的語言的編譯器。其他一些語言,比如Python,使用可以立即轉換成程序而不需要編譯。
一些語言有自己的往往包含著代碼編輯器、調試器和/或者翻譯以及調試的IDEs(集成開發環境)。這些程序員在同一個地方去執行任何必要的功能。IDEs可能還包含著包含對象層次結構和目錄的可視化界面。

03
要學會習慣編程序的過程中不斷修復錯誤和漏洞,當你在編程時,你總會碰到bug。它們存在程序中,並且可能隨時隨地的出現在程序中的任何一個地方。漏洞可能會破壞程序,或者只是讓程序不能編譯/運行。捕捉和修復這些錯誤在軟體開發周期中這是一個主要的過程,要早早地習慣於這么做。

Ⅶ 90後二流大學程序員自述:從「菜鳥」到「辣雞」,我到底經歷了什麼

程序員高手和菜鳥,不僅僅是技術上的差距,還體現在習慣、經驗、看問題的角度等各個方面。

1.代碼規范:代碼寫得不好,其實一眼就能看出來;比如代碼裡面的各種命名(包、類、方法、變數等等)。在最初寫程序的時候,很多人都會起沒有含義的變數命名,比如 String str;其實我們完全可以把變數名稱起成帶業務含義的,比如在運用中慢慢發現用String username我們會越來越熟練,寫的也越來越好。

Ⅷ 零基礎小白如何成為程序員需要學習哪些內容

自學編程沒那麼難。只要是理工科學生,邏輯思維好的朋友,都可以開始編程。這里有六種方法可以和你的朋友分享自學編程。這些方法足以幫助您入門和進階:0.書籍+視頻可能是學習編程最好的方式,對於初學者來說,可以通過視頻+書籍來學習。這兩種方式形成互補關系。編程教學視頻可以幫助你快速掌握編程,但通常比較生動,簡單,不系統。書是系統的,透徹的,枯燥的,所以最好的方法就是把書和視頻結合起來。


5.反復練習。編程是一門手藝,需要反復練習。沒有書和視頻能獨立實現嗎?學習的最終狀態無非就是:我沒有他,但是我的手很熟悉。近年來,IT行業變化很快。我們可以大致感受到我們使用的手機和互聯網產品的變化。我們從原來的非智能手機遷移到iPhone和安卓手機。我們從去網吧買電腦變成了6G內存2GHz的智能手機(已經超過了2010年的電腦配置)。

我們從大型PC游戲轉到了手機游戲。我們的每部手機都有將近100個應用。我們用過很多微信官方賬號,微店,mini 程序和mini游戲。我們從5元3000萬變成了隨時隨地刷小視頻,直播。我們很少用現金,因為我們不得不拿錢包取錢,有時我們想拿出10元錢,但我們真的沒有……豐富的互聯網產品(應用程序、H5、小程序、游戲等)背後。),IT其實是由日新月異的IT技術支撐的。

所以作為程序,你必須不斷學習,學習公司需要的任何技術。工作幾年,堅持學習也不算太累。畢竟經歷了幾年,很多東西都很熟悉。零基礎如何自學編程?成為/kloc-0成員需要具備哪些技能?這些年來,我開發了各種東西,做了各種編程工作。伺服器後端程序已經開發出來,需要幾種編程語言:JAVA、PHP、Node.js、Python、SQL等。已經開發了PC網頁和H5,需要Javascript,CSS3,HTML5等。開發了一個App,你需要用JAVA,SQL,HTML5。

我們開發了微信small 程序,需要CSS,Javascript,HTML等等。開發過計算機軟體,需要用到C#、Javascript、C++等。為什麼要學那麼多技術?因為不同的編程語言有不同的長處。比如玩游戲,Unity很成熟很快,很多知名游戲都是用它開發的,所以開發游戲的時候幾乎很多公司都在用它,程序會員一定要學。移動APP的開發主要使用JAVA、Swift、OC等編程語言,開發App必須學習這些編程語言。零基礎如何自學編程?成為/kloc-0成員需要具備哪些技能?

沒有接觸過技術開發的人還是不知道為什麼需要這么多編程語言。這么說吧:翻譯跟英國人說話要說英語,跟西班牙人說話要說西班牙語,跟我們說話要說中文。IT技術的編程語言和我們說的語言類似,不同的領域需要不同的語言。說了這么多,大家都知道程序員工在工作中需要的技能,以及會發展什麼。

我再簡單總結一下::程序工作人員必須掌握自己崗位的編程語言。比如做安卓APP,一定要掌握JAVA。一般掌握編程語言是不夠的。為了提高開發速度,還必須了解各種框架和庫。程序員工將發展什麼?會開發APP,網站,電腦軟體,微信程序等等。不過應該說,行業是有特長的,並不是所有的程序工作人員都能開發應用、網站、小程序…有些人只能懂一門技術,但可以是專家,比如資料庫專家。而且這些年我也只是個打雜的,但是各種發展都會...更多的雜工,僅此而已。

Ⅸ 做一名JAVA程序員要經歷一種怎樣的過程

第一階段:三年
我認為三年對於程序員來說是第一個門檻,這個階段將會淘汰掉一批不適合寫代碼的人。這一階段,我們走出校園,邁入社會,成為一名程序員,正式從書本 上的內容邁向真正的企業級開發。我們知道如何團隊協作、如何使用項目管理工具、項目版本如何控制、我們寫的代碼如何測試如何在線上運行等等,積累了一定的開發經驗,也對代碼有了一定深入的認識,是一個比較純粹的Coder的階段。
第二階段:五年
五年又是區分程序員的第二個門檻。有些人在三年裡,除了完成工作,在空餘時間基本不會研究別的東西,這些人永遠就是個Coder,年紀大一些勢必被更年輕的人給頂替;有些人在三年裡,除了寫代碼之外,還熱衷於研究各種技術實現細節、看了N多好書、寫一些博客、在Github上分享技術,這些人在五年 後必然具備在技術上獨當一面的能力並且清楚自己未來的發展方向,從一個Coder逐步走向系統分析師或是架構師,成為項目組中不可或缺的人物。
第三階段:十年
十年又是另一個門檻了,轉行或是繼續做一名程序員就在這個節點上。如果在前幾年就抱定不轉行的思路並且為之努力的話,那麼在十年的這個節點上,有些人必然成長為一名對行業有著深入認識、對技術有著深入認識、能從零開始對一個產品進行分析的程序員,這樣的人在公司基本擔任的都是CTO、技術專家、首席 架構師等關鍵的職位,這對於自己絕對是一件榮耀的事,當然老闆在經濟上也絕不會虧待你。

Ⅹ 怎麼成為一名程序員,要從哪裡開始學起,先學什麼在學什麼

答:

首先你要清楚程序員也分很多種,從語言分,有C,C++,C#,JAVA,Delphi等等,你要考慮好弄自己向哪部分發展。

  1. 一般如果沒什麼理解可以從C語言學起,因為C語言比較貼切於機器語言,大學裡面一般也都是先學C的,學好了C語言,可以觸類旁通,更容易學其他的語言。

2.Java據說是現在最熱門的(所有程序員都覺得自己用的那個語言最牛逼),IOS或者android學了可以做手機軟體哦,Delphi和C#是用控制項拖出自己想要的結果,然後在後台寫代碼的,不過有人說Delphi相對落伍了,但好些大公司還是在用Delphi來搭框架的。

3.選定好語言後,如果覺得自己理解能力動手能力超強的話,自己買本入門的書,或者網上看些教學視頻,邊看邊實踐。不過這個對於初學者來說真的挺難的,因為第一次的話,可能連環境都搭不好,用來編程的軟體對初學者來說還是蠻麻煩的一種軟體,不是這個不行,就是那個設置錯了,或者連一些基礎的窗口啊工程啊項目啊的概念都沒有,網路起來又要答案一個一個看,浪費時間。而且還要自己搭資料庫啊什麼的,真的很難。有老師教的時候,還能掛科一大片的。不過入門了,之後就簡單了,自己隨便找本書,學學代碼用法啊,照著打就可以了。

拓展資料:

程序員(英文Programmer)是從事程序開發、程序維護的專業人員。一般將程序員分為程序設計人員和程序編碼人員,但兩者的界限並不非常清楚,特別是在中國。軟體從業人員分為初級程序員、中級程序員、高級程序員(現為軟體設計師)、系統分析員,系統架構師,測試工程師六大類。

崗位職責:

1、對項目經理負責,負責軟體項目的詳細設計、編碼和內部測試的組織實施,對小型軟體項目兼任系統分析工作,完成分配項目的實施和技術支持工作。

2、協助項目經理和相關人員同客戶進行溝通,保持良好的客戶關系。

3、參與需求調研、項目可行性分析、技術可行性分析和需求分析。

4、熟悉並熟練掌握交付軟體部開發的軟體項目的相關軟體技術。

5、負責向項目經理及時反饋軟體開發中的情況,並根據實際情況提出改進建議。

6、參與軟體開發和維護過程中重大技術問題的解決,參與軟體首次安裝調試、數據割接、用戶培訓和項目推廣。

7、負責相關技術文檔的擬訂。

8、負責對業務領域內的技術發展動態進行分析研究。

網路詞條 程序員

閱讀全文

與程序員的經歷和學習相關的資料

熱點內容
單片機如何使用proteus 瀏覽:987
java常用的伺服器 瀏覽:277
集結APP在哪裡下載 瀏覽:800
歐洲cf玩什麼伺服器 瀏覽:527
如何連接另一台電腦上的共享文件夾 瀏覽:679
如何讓桌面文件夾搬家到e盤 瀏覽:71
java自動格式化 瀏覽:617
ipad怎麼查看文件夾大小 瀏覽:581
手工粘土解壓球 瀏覽:550
在線視頻教育源碼 瀏覽:41
快四十學什麼編程 瀏覽:754
gnumakelinux 瀏覽:537
視易峰雲伺服器怎麼改系統 瀏覽:535
javamap取值 瀏覽:768
mac和win磁碟加密軟體 瀏覽:474
蘋果為什麼會連接不到伺服器 瀏覽:726
pdf格式文件如何保存 瀏覽:303
小霸王伺服器tx什麼意思 瀏覽:75
解釋dns命令 瀏覽:584
dmx512怎麼編程 瀏覽:744