『壹』 如果,我想當一名程序員,如何從零開始
1、 程序員意味著要編程序。(如果你僅僅想得到一份高薪水的工作,喝喝咖啡就等老闆發薪水,我奉勸你還是另找一份更合適的工作,譬如練攤,真的,兄弟,這份工作不適合你)
2、你是學文的還是學理的,編程序也許需要浪漫,但更需要邏輯和嚴謹。(說坦白點就是,在你沒有找到樂趣以前,它很枯燥)
3、你有對新技術追求的熱情嗎?你有刨根問底的探索精神嗎?(熱情絕對是最重要的!你仔細思考一下自己的性格適合當程序員嗎?)
4、當程序員決不是什麼好差事,時刻需要學習,需要思考。(直到你成為那個可以引導別人去學習和思考的人,你才可以偷偷的嘿嘿笑,又一群傻蛋)
5、程序員的未來很迷茫。(但我認為關鍵看你自己!我希望你是一個有追求的人,不僅僅是混碗飯吃。因為真正的樂趣在於創造;如果你能改變軟體業的歷史,那才是英雄;不想成為Bill Gates,不想成為Dennis Ritchie和 Bjarne Stroustrup,我會說你沒有追求。有個關於程序員未來的笑話,也許你還沒聽過,你該聽一聽,摘抄如下:
一個程序員對自己的未來很迷茫,於是去問上帝。
「萬能的上帝呀,請你告訴我,我的未來會怎樣?」
上帝說「我的孩子,你去問Lippman,他現在領導的程序員的隊伍可能是地球上最大的」
於是他去問Lippman。
Lippman說「程序員的未來就是駕馭程序員」
這個程序員對這個未來不滿意,於是他又去問上帝。
「萬能的上帝呀,請你告訴我,我的未來會怎樣?」
上帝說「我的孩子,你去問Gates,他現在所擁有的財產可能是地球上最多的」
於是他去問Gates。
Gates說「程序員的未來就是榨取程序員」
這個程序員對這個未來不滿意,於是他又去問上帝。
「萬能的上帝呀,請你告訴我,我的未來會怎樣?」
上帝說「我的孩子,你去問侯捷,他寫的計算機書的讀者可能是地球上最多的」
於是他去問侯捷。
侯捷說「程序員的未來就是誘惑程序員」
這個程序員對這個未來不滿意,於是他又去問上帝。
「萬能的上帝呀,請你告訴我,我的未來會怎樣?」
上帝搖搖頭「唉,我的孩子,你還是別當程序員了」)
6、當程序員還是很有樂趣的。(當你學到新知識時,當你有新的思想見解時,當你有新的產品問世時,和知己探討你的成果時…我問你,覺得這些是樂趣嗎?)
7、當程序員不易也不難。(世間事有難易乎?為之…;不為…。你有決心和信心嗎?)
8、你真的要當程序員?是你自己的想法?
9、你捨得花錢買書嗎?(讀好書絕對是學習編程的最佳捷徑。你一定會說,現在電腦書籍真他XX的貴,沒法子,誰讓知識和技術在人家的腦袋,在人家的書里呢;等你寫書時可以把價格定低一點,記著還有好多沒錢但想買書的兄弟很困難呀。要捨得買書,買好書,不好的的書不如不讀,其害大於其益,關於買什麼書,你可以問高手或看候捷的書評;准備一個小本子記錄你想買的書的名字,逛書店時看看,如果好就買下,記住要讀,別光買不看。) 10、我告訴你,程序就是:任何有目的的、預想好的動作序列,它是一種軟體。
11、編程序就是編寫程序。
12、你想好了嗎?(如果你想好了還是決定要當程序員,可以繼續往下讀;否則,你可以繼續尋找別的出路了。)
(三) 一個程序員應該具備的基礎知識和概念
1、計算機是有什麼組成的,CPU是什麼東西,其工作原理是什麼。(對於這些以及下面將要提到的概念我不會告訴你什麼答案,你可以看相應的教材,關於教材我會在下一部分詳述,記住理解最重要!)
2、機器語言和微指令集的概念。
3、程序的概念。
4、匯編語言是低級語言但不是機器語言。
5、高級語言主要有那些?(C,C++,Basic,Pascal,Fortran,C#,java等等;如果你是中國軟體業的英雄,你也寫一門語言,最好不用英語) 6、編譯程序和解釋程序的概念和其原理。(編譯器是高手和專家編寫的)
7、HTML、XML等是標識性語言。
8、Prolog是人工智慧語言。
9、操作系統OS的概念和原理。(Windows98,Windows2000,Windows NT,UNIX,linux,等等都是OS,還有一些實時OS,嵌入OS,編這些的絕對是高手)
10、Windows編程說白了就是Windows API的調用。(中國的程序員很多隻是會編windows程序,用的是VB,我的建議是這些程序員頂多隻是低級編碼員,我稱其是coder)
11、VC++、VB、BC、BCB、Delphi、VF等都只是編程的工具和環境,不是編程語言。
12、面向結構的設計概念。
13、面向對象的概念。(好好理解,兄弟,這個東西還是很重要的)
14、軟體工程的概念和原理。(如果你想當老總就需要好好研究了,系統分析員比編碼員要高一個等級,薪水也高喲)
15、資料庫的概念。(要熟悉一些著名的資料庫系統和語言的名字,如Orcle,SQL,DB2,DyBase等)
16、了解網路概念。
17、了解多媒體概念。
18、熟悉和掌握數據結構和基本演算法。
19、是不是要求太高了,別著急慢慢來,進步在不知不覺之中。(一旦開始學習,一個月以後你就會有一個基本的概念;兩個月以後你就會感覺自己有了全面的基礎知識;當你知道編程序是怎麼回事時,說明你已經入門了。也有很多人編了很多年程序還沒有入門呢,你不會希望自己步其後塵吧。要有信心和耐心。沉不住氣怎麼能成大事?!)
(四) 教材推薦
――-推薦的教材主要還是針對概念來的,最好選用名校的教學用書。
1、《計算機組成原理》(熟悉)
2、《數據結構》(掌握)
3、《操作系統》(了解->熟悉)
4、《The C language》(掌握)
5、《編譯原理》(了解原理)
6、《匯編語言》(了解)
7、《計算機網路》(了解)
8、《軟體工程》(了解)
9、《關系資料庫》(熟悉)
10、《The C++Languege 》(掌握)
11、《面向對象設計》(掌握;結合C++學習)
(五)一些經驗和體會
1、真正的程序員用C++;(一位專家說的)
2、動手去編程序;
3、動腦去思考;
4、要有良好的編程風格;
5、讀書,讀好書,盡量讀原版書!(我反復強調這一點,讀書要有選擇,堅持讀好書,名家出的經典書,不要浪費實踐在一些粗製濫造的書上面;堅持博覽群書)
6、有自己的學習計劃;
7、總結自己的經驗教訓;(准備一個筆記本,記錄錯誤和心得)
8、不要怕學新東西;
9、要有軟體工程的思想;
10、善於發現問題,然後去尋找答案;
11、向高手請教;(要虛心直到你成為高手)
12、和同行交流;(不善於交流肯定不行)
13、懂得軟體的實質,不要被千變萬化的表象所迷惑;
14、真正要學慣用的是編程語言和方法,不是什麼庫,什麼類,什麼工具;(學用那些什麼庫都比較簡單,但光會這些庫,我覺得還遠遠不夠)
15、學習wiodows編程主要是學習windows OS和win32 API;
16、有空了解一下嵌入式開發;
17、有空了解一下PDA軟體開發;
18、了解一下.NET框架和C#語言,也許它是你新的衣食父母;
19、要有耐心,不要作浮躁的人; 20、對程序加註釋,並保留你的老程序;
21、學到的東西越多,了解的越多,你就越接近專家;
22、有空去逛逛CSDN,那裡有你很多知己;
23、要有信心成為一個優秀的程序;
(六)一些好書的推薦
1、《The C Programming language》 (Keinighan & Dennis Ritchie 1988)
2、《The C++ Programming Languague》(Bjarne Stroustrup 1997)
3、《Inside The C++ Object Model》 (lippmans)
4、《Effective C++》 (同上)
5、《More Effective C++》 (同上)
6、《Exceptional c++》
7、《C++面向對象高效編程》
8、《設計模式》
9、《Thinking In C++》
10、《The Standard C++ Bible》(一般推薦)
11、《The Art of Computer Programming 》
12、《Programming Windows》 (Charles Petzold)
13、《VC++5.0技術內幕》
14、《MFC 深入淺出》
15、《軟體需求》
16、《Advanced Windows》
17、《C++ primer》
18、《win32程序員參考手冊》
19、《用TCP/IP進行網際互連》
20、《COM 本質論》
(七)學習計劃
――-這個學習計劃是我個人定的,也共享給大家參考一下,共同進步吧。 1、《計算機組成原理》
2、《操作系統》
3、《數據結構》
4、《匯編語言》
5、《 C 》
6、《 C++ 》
7、《VC 技術內幕》
8、《Programming Windows》
9、《深入淺出MFC》
10、《Advanced Windows》
11、《Inside The C++ Object Model》
12、《Thinking in C++》
13、《Effective C++》
14、資料庫
15、網路
16、嵌入式OS和編程
17、硬體單片機
18、.NET和C#
19、軟體工程
20、UNIX和Linux
『貳』 假如沒有程序員,這個世界會是什麼樣子
醫院看病會很難,沒有了程序員醫院沒有實現信息化,患者掛號,繳費還是要排隊,醫生開處方還是需要手寫,護士服務病人還是看紙質材料,醫院效率會很慢,患者看病會很不方便,各種醫保報銷會非常麻煩,醫院服務滿意度很低,醫患關系會尖銳。
『叄』 程序員的未來
天有日則明 人有志則立。
你有一生的志向嗎?你有一生的抱負嗎?
你最大的興趣是什麼?
你現在做程序員快樂嗎 ?
如果有志向做技術就看看9個程序員級別 做技術要有時間的積累。
說點題外的,你是為了什麼做程序員,現在你好象不是陶醉於做程序員 如果是陶醉 你就不會問這個問題了
如果你做技術就找一個你能夠陶醉的
如果不是的話 可能人生有的累了 會想著放假和發獎金之類的東西
也可以先做下銷售 看看人生的很多精彩的地方
做什麼 只要專心都可以出成績
你現在想看清楚方向 就是你還不是陶醉
記住 :如果做技術不陶醉便不容易有大發展
『肆』 程序員的出路在哪裡
【原創】下面四千字的東西,打了三個小時,又花了兩小時修改,體會來自於自己的經歷。既為樓主也為自己,也希望能給他人帶來一點幫助,因為自己也曾苦於出路這個問題許久,徘徊於技術與銷售之間。其實,最重要的是,想清楚自己要的到底是什麼,而實現的方法有很多,選擇其中的一個,然後耐心去做,注意做的過程中,要多方面發展。不斷提高自己的綜合能力才是硬道理——這才是出路之所在!!!。
【出路】
在職業選擇上,很多人都會問一個問題,這個職業有什麼出路?想得到正確的回答,必須先搞清楚,自己究竟想得到什麼東西。對於程序員這個職業,如果你要的是錢,很多的錢,程序員沒有出路;程序員工作繁忙,有時不規律,連續著加班很有可能,如果你要的是休閑的生活,程序員沒有出路;程序員都是與電腦打交道,工作就是坐著,如果你要的是跟人廣泛的交流,而且坐不住,程序員沒有出路;寫程序都是很邏輯的東西,如果你不喜歡這種解題式的思考方式,頂不住整天思考所帶來的疲憊,程序員沒有出路。
程序員跟民工的區別就是,高強度的腦力勞動者和體力勞動者。雖然程序員的待遇看起來還不錯,想想其實不是,假如八點半上班,加班到十點,沒加班費,平均下來,一個人相當於幹了將近一份半的工作,除下來收入付出比就少了半截,收入多是因為付出的勞動多。這是開始做程序員時常有的事。
假如純往技術上走,干幾年熟手了,情況會好,但是,當你對比起幹了幾年銷售的朋友時,你會發現,你的勞動力太廉價了。一個小公司的銷售,普普通通干三年後,一年拿十萬塊的提成是很有可能的,而一個程序員,普普通通干三年,能拿月薪一萬的不多。還有人家銷售有許多的報銷,你有么?如果有天賦而且努力地干,銷售,大學畢業三年買車買房的多的是,當然不是說噬老族那些;程序員呢?有多少能!也許研究生,而且讀的好的那款還比較可能,但此時那些本科或者大專,甚至中專就出來跑銷售的,已經工作好幾年了,說不定此時正在三亞曬太陽呢!
你說銷售的應酬多,呵呵,喝酒;要去拍人馬屁,去求人什麼的!ok,這就是銷售,你敢保證當你看到他們的收入時,還有看到他們拿著公司的錢,請客戶去各種高檔的地方消費時,甚至說句不好聽的,花公司的錢請客戶到處吃喝嫖賭時——客戶也是人,許多客戶就這些個的愛好,所以要滿足他,他才買你的帳,很正常——嚴格意義上講,這樣的工作比坐在電腦前埋頭苦幹來的輕松多了,其實是一種享受,看到這些,你敢保證你一點都不眼紅?呵呵,如果不眼紅,那就專心干程序員吧!
或者說,你對這種「一點科技含量都沒有的工作」——在你眼中,高iq的人才是牛b的人,那就安下心來干程序員吧。但我想說,在這個社會上,賺錢最多最快的,最舒服的,永遠是銷售。當然,干技術乾的好的,最終都是比較受人尊重的——專家,當然是五十年如一日投身於技術那種人才能成為專家。如果你能刻苦地干程序員,想成為架構師、系統分析員,成為軟體專家,那就專心干程序員吧!
或者說,你實在干不來與人交際,還要挖空心思去維護各種人際關系的工作是,那就安心下來干你的程序員工作吧,就像民工一樣,有誰樂意去干民工,但是沒辦法,能力所限,只能幹民工了。但我想說,能力都是學來的,給民工們上大學,他們畢業後一樣會有很多牛人。有人說:「哪有那麼好的條件給他們上大學啊!」。條件很多時候要自己去創造啊!難道每個成功的人都有一個高人,手把手地拉扯著他,給他良好的成長環境和資源嗎?沒有什麼東西學不來,只是學得快和慢的問題,要真正去學學看才知道,而不是停留在大腦中。如果你學編程學得很快,而且學得很開心,即使學的過程很累,那就專心干程序員吧!
接下來,告訴你一個好消息,史玉柱出身技術、馬化騰出身技術、唐駿出身技術、比爾蓋茨出身技術、傑克•韋爾奇出身技術,等等,他們都成功了!假如這是你想像中的出路的話。我不是說要達到他們那種水平,而是走技術路線,來獲得事業有成,獲得成功。寫過程序的人都知道,想實現某個功能,有很多種實現方法。獲得成功也是一樣,有很多的路可走。這就是我為什麼拿銷售來做比較,每種職業都能到達成功的彼岸,不管是做技術、行政、財務、銷售,等等。
出路是什麼?不就是人生價值的實現,有的人要的是成就感,有的人要的是幸福,有的人要的是健康,有的人要的是金錢,有的人要的是地位名氣,有的人要的是貢獻全人類,有的人要的是玩樂、享受,其實這些都是不同人的人生價值。而實現自己人生價值的方法實在太多了,不管從事什麼職業,不管是java程序員,c++、c#,都能成功的,最最重要的是想清楚你想得到什麼,接下來就是做具體的計劃,然後實現計劃。實現的過程不能拘泥於技術,應該多方面發展,不斷提高自己的綜合能力!想做項目經理、做cto,或者用自己的技術去創業,都必須發展自己的綜合能力。
回到剛才,馬化騰、比爾蓋茨、唐駿等等這些技術員為什麼能成功?技術過關是基礎,甚至技術過硬,唐駿日本、美國留學,比爾蓋茨哈佛。接著,最重要的是:超前的眼光。qq其實不是什麼很難的技術,比什麼量子物理簡單多了,而且icq還是以色列人開發的,馬化騰就照著開發了qq,當時在中國就是超前的東西;比爾蓋茨的windows,讓三歲小孩也能使用電腦,而不用記一大堆的dos命令,這就是超前;唐駿發明了卡拉OK評分器、大頭貼,你自己可以想像一下大頭貼有多少的技術含量,然而它帶來的經濟效益是多少!所以說,想法太重要了,好的技術不是它有多高深,而是它能給人的生活帶來多少的便利,而往往第一個想到的人能獲得巨大的回報。第三,人際關系,別老以為做了技術就能以高姿態出現,有人很鄙視銷售,認為沒技術含量、俗;銷售還很鄙視技術呢,窮、死板。其實,沒人能靠自己一個人贏得一切,技術要靠銷售來賣自己的產品,銷售要靠技術生產產品,誰都離不開誰,這其中還有一連串的其他人呢,財務、行政、前台mm、老闆等等。現在越來越提倡團隊合作,跟隊友、跟上級、跟客戶之間的溝通是必修課,溝通不好必然配合不好,你的才能永遠無法施展,何來的出路。
第四,求人,其實求人是人際關系中的一個,為什麼單獨在這里講,因為他太重要了。機會很多時候是靠求人得來的,例如唐駿,他去日本留學的機會就是求了一大堆人得來的,他當時考研究生,在北京郵電分數最高,但因為大學沒得過一次「三好生」,北郵沒給他出國名額。他給各個大學的研究生處打了三天電話,問還有沒有留學名額,得到的大多都是這樣的回答:「我們自己的學生都不夠呢,哪裡輪得到你?」,如果臉皮薄,沒耐心,早就放棄了,後來他找到了北京廣播學院(現在的中國傳媒大學,就是陳魯豫讀的那個學校,據說當時很水。。。),吳懷仙老師,當時他們的對話是這樣的:
「看你的成績很好,你們北郵應該取你呀!」
「北郵當然取我。但是,我從小愛看電視愛聽廣播,未來中國的廣播電視事業一定會有很大的發展,為了這項事業,我願意放棄北郵,來到北廣。」
「照你現在的說法,你不是為廣播事業而來嗎?怎麼又跟出國有關?」
「中國的廣播事業很落後,需要去國外學習一些先進的理念、先進的技術回來呀!」
「老實說你來有風險,如果教育部不批的話,你不能出國,就必須留在廣播學院讀書。可是北廣沒有碩士學位的授予權,你只能取得研究生學歷,得不到學位。」
「我來的目的很明確!為了中國的廣播事業,有沒有學位沒那麼重要。」
你知道當時的實際情況是怎樣的嗎,北郵根本就沒有給唐駿名額,唐駿根本就是說了一個無傷大雅的謊言,所以,你看看、你看看,善於變通對於一個人的成功是多麼的重要,唐駿他們都不是一味地干技術就能成功的,很多時候必須好好包裝自己、銷售自己的。在這里我不是在說要去騙取利益,而是說,在遇到困難的時候能改變思路,轉個彎繞過路障!!求人很重要,有個強硬的後台幫忙,少奮斗十年!後來唐駿又去教育部門口站了幾天崗,等人、求人,呵呵,其實只是問了幾聲好,這是後話。
第五,超越物理層。凡是要獲得大的成功,賺大錢,或者說更容易地賺錢的,都不能拘泥於物理層。只有大老闆能給你建個實驗室,讓你搞深層次的技術;而只有你的實驗室能不斷做出可以賣錢的產品時,你的實驗室才不至於被關閉。走入公司的決策層,你才能決定該往那走,什麼技術該大力發展、什麼技術該好好改造、什麼技術該放棄。這個道理相信不用講你也明白,那麼,如何進入決策層,靠高素質、靠綜合能力。學習能力、溝通能力、領導能力、管理能力、玩的能力(品酒、打扮、奢侈品、打高爾夫等等),一大堆的能力呢!沒有一所學校、一個組織能教授全部,這些都要靠自己去學、去領悟,前提是,你要有去學、去領悟的想法。
說實在的,世界是很復雜的東西,要的是你去適應它,它不會來適應你。唐駿說:「性格能改變嗎?很多人說不能。可是我認為,本性是不能改變的,但性格是一定能改變的」。傑克•韋爾奇,通用電氣前ceo,打小有自卑心理,到了成年還略帶口吃。他母親激勵他,這算不了什麼缺陷,只有面對現實,堅持與別人溝通,讓別人了解你,才能主宰自己的命運,別人才會跟你做朋友,這是這個偉大而平凡的母親給予傑克的最大財富。事實上,如果你自己不在意,那麼那個缺陷也就不太重要了。略帶口吃的毛病並沒有阻礙傑克的發展,實際上在後來,注意到這個弱點的人大都對傑克很敬佩,因為他竟能克服這個障礙,在商界出類拔萃。趕緊改變,讓自己更好地適應這個復雜多變的世界。
想清楚自己要的是什麼,做一個兩年計劃,因為超過兩年變數就太大了,然後制定實現的步驟,也就是一個個短期計劃,從第一步開始實現。這些計劃應該是具體、可行而且能在預定時間內完成的,最後靜下心來,耐心實現自己的每個計劃!!不要老是問人,我這樣做對嗎,我該怎麼做。哈佛退學就一定是錯的?北大賣豬肉就一定不好?外企就一定是好歸宿?你該做的就是,想清楚自己想要什麼,金錢、美女、名利、地位、權勢,還是過平凡的日子,做善事做好人,都沒問題,只要真的是你想要的就好,然後考慮怎麼去實現它。其實實現的方法有很多,選擇其中的一個,然後耐心去做,注意做的過程中,要多方面發展。不斷提高自己的綜合能力才是硬道理——這才是出路之所在!!!
『伍』 程序員的世界是什麼樣子
你的關注就是對我們最大的肯定。每天一篇原創文章,將華銳視點十年創業中關於運營、程序技術方面的感悟、走過的各種坑,分享給你。希望能幫助更多創業者快速成長,繞過一些坑。
程序員在其他人眼裡應該是一群神秘的存在,他們深居簡出,衣衫襤褸,神色落寞,有錢但是低調,壓力大卻看不見宣洩。
程序員標配一般如下:
夏天使用公司年會或者技術活動配發的T恤,有技術LOGO更佳。要不可以裝備格子襯衫,鬆鬆垮垮的最好。有利血液循環。別輕信偶像劇里的行頭,緊身牛仔褲衛衣啥的,弄上泡麵湯你會心疼的。
冬天就是裡面隨便穿,外面羽絨服。羽絨服就要實用款。長點最好,款式的話...肥大點包的嚴實就行。
穿鞋的話根據情況而定,拖鞋是放飛思維的一對風帆。如果實在無法如此放鬆的話,翻毛大頭鞋也很體驗粗狂自然性能方面的考量,旅遊鞋太沒個性!
眼鏡要選古典版的,能豐富內涵,體(yan)現(gai)深(dai)邃()的目光。最時尚的搭配就是白框黑腿,黑框白腿。非黑即白,陰陽平衡,也能體現到二進制的理念。
隨身的包是職業的象徵,斜跨的款式略顯浮誇,都是初入本行毛頭小子的扮相。你要是專業的一定要注意,雙肩包才最適合!,雙肩包才最適合!,雙肩包才最適合!工學設計,外出時也可以緩解駝背的症狀,解放雙手的設計是最符合效率和科學的!
抽煙也是品味的象徵。為了體現到代碼設計師那獨到的視角,一定要從其他維度看待和選擇。首先煙霧要大,味道要刺激,否則難以在另一個境界審視自己的內心。其次價格要便宜,我等並非凡夫俗子,談錢太俗氣,金錢使人庸俗。
喝水的道具要簡單實用,多年不刷的不銹鋼保溫杯更能體現到您的不凡氣質。配合茶漬與咖啡的痕跡就更佳具有神韻。這些特徵一般是具有大神潛質的人士標配。
手機的選擇一般要低調,除非開發需要,否則盡可能化為小米。不是我們買不起,只是夠用就好。過多的資源浪費與碳排放會加重這個本已痛苦不堪的地球環境。
發型一般要選擇後現代野獸派重金屬朋克風格的設計,有條件的話配合稍微狂野些的不規則胡茬,即為上佳設計。行走時根據空氣動力學產生的結果十分動態,看你一眼就會知道演算法無常,學識深奧!
工作餐要符合葷素搭配營養齊全的特徵,另外要方便部署,實現方便。方便麵,煎餅果子等平凡的食品其實都具有如此高尚的內涵。因此我們才經常選擇它們。記住,我們並不是隨心而為的,反而是精心設計的。
筆記本電腦對於我們是主要輸出裝備,本著軍事裝備選擇原則,一定要選有重量感的,黑色耐臟的,厚實的,工作中的隨手一堆都能感受到自己創造的重量。另外在壓泡麵時絕對令你意想不到。
程序員的女朋友應該是什麼樣子呢,首先你得先有個女朋友.......這個編不下去了啊,我出去哭會,大家繼續啊。
『陸』 想做程序員,要些什麼條件
程序員是一種技術工作,在IT的發展中有相當重要的地位,從底層硬體通訊協議的建立, 到數據傳輸層的處理,到操作系統的建設,到資料庫平台的建設,一直到應用層上各種數 據營銷平台的搭建,程序員在裡面都扮演著舉足輕重的角色並為IT事業的發展做出了巨大 的貢獻。
中國有很多精於編碼的人,但是中國軟體行業,尤其是網路應用開發方面誤區很大,很難 形成有規模的軟體開發力量和產品能力,不但比美國差距甚遠,和印度相比也是頗有不 如。這些問題不是在於中國程序員的智商和工作努力狀況,也不是在於國家和民間對開發
的投入程度,而是很大程度上,有一些對技術,對程序開發,對項目設計方面的思想誤 區,這些誤區,導致了軟體行業的產品化能力不足,缺乏規模化和大型復用系統研發能 力,可以說,改變認識誤區,是解決軟體行業小作坊模式和個體英雄模式所帶來的局限性 的重要工作。
中國有很多小朋友,他們18,9歲或21,2歲,通過自學也寫了不少代碼,他們有的代碼寫的 很漂亮,一些技術細節相當出眾,也很有鑽研精神,但是他們被一些錯誤的認識和觀點左 右,缺乏對系統,對程序的整體理解能力,這些人,一個網上的朋友說得很好,他們實際
上只是一些Coding fans,壓根沒有資格稱為程序員,但是據我所知,不少小網路公司的 CTO就是這樣的coding fans,拿著嚇人的工資,做著嚇人的項目,項目的結局通常也很嚇 人。
程序員基本素質:
作一個真正合格的程序員,或者說就是可以真正合格完成一些代碼工作的程序員,應該具 有的素質。
1:團隊精神和協作能力
把它作為基本素質,並不是不重要,恰恰相反,這是程序員應該具備的最基本的,也是最 重要的安身立命之本。把高水平程序員說成獨行俠的都是在囈語,任何個人的力量都是有 限的,即便如linus這樣的天才,也需要通過組成強大的團隊來創造奇跡,那些遍布全球
的為linux寫核心的高手們,沒有協作精神是不可想像的。獨行俠可以作一些賺錢的小軟 件發點小財,但是一旦進入一些大系統的研發團隊,進入商業化和產品化的開發任務,缺 乏這種素質的人就完全不合格了。
2:文檔習慣
說高水平程序員從來不寫文檔的肯定是乳臭未乾的毛孩子,良好的文檔是正規研發流程中 非常重要的環節,作為代碼程序員,30%的工作時間寫技術文檔是很正常的,而作為高級 程序員和系統分析員,這個比例還要高很多。
缺乏文檔,一個軟體系統就缺乏生命力,在未來的查錯,升級以及模塊的復用時就都會遇 到極大的麻煩。
3:規范化,標准化的代碼編寫習慣
作為一些外國知名軟體公司的規矩,代碼的變數命名,代碼內注釋格式,甚至嵌套中行縮 進的長度和函數間的空行數字都有明確規定,良好的編寫習慣,不但有助於代碼的移植和 糾錯,也有助於不同技術人員之間的協作。
有些coding fans叫囂高水平程序員寫的代碼旁人從來看不懂,這種叫囂只能證明他們自 己壓根不配自稱程序員。代碼具有良好的可讀性,是程序員基本的素質需求。
再看看整個linux的搭建,沒有規范化和標准化的代碼習慣,全球的研發協作是絕對不可 想像的。
4:需求理解能力
程序員需要理解一個模塊的需求,很多小朋友寫程序往往只關注一個功能需求,他們把性 能指標全部歸結到硬體,操作系統和開發環境上,而忽視了本身代碼的性能考慮,有人曾 經放言說寫一個廣告交換程序很簡單,這種人從來不知道在百萬甚至千萬數量級的訪問情
況下的性能指標是如何實現的,對於這樣的程序員,你給他深藍那套系統,他也做不出太 極鏈的並訪能力。性能需求指標中,穩定性,並訪支撐能力以及安全性都很重要,作為程 序員需要評估該模塊在系統運營中所處的環境,將要受到的負荷壓力以及各種潛在的危險
和惡意攻擊的可能性。就這一點,一個成熟的程序員至少需要2到3年的項目研發和跟蹤經 驗才有可能有心得。
5:復用性,模塊化思維能力
經常可以聽到一些程序員有這樣的抱怨,寫了幾年程序,變成了熟練工,每天都是重復寫 一些沒有任何新意的代碼,這其實是中國軟體人才最大浪費的地方,一些重復性工作變成 了熟練程序員的主要工作,而這些,其實是完全可以避免的。
復用性設計,模塊化思維就是要程序員在完成任何一個功能模塊或函數的時候,要多想一 些,不要局限在完成當前任務的簡單思路上,想想看該模塊是否可以脫離這個系統存在, 是否可以通過簡單的修改參數的方式在其他系統和應用環境下直接引用,這樣就能極大避
免重復性的開發工作,如果一個軟體研發單位和工作組能夠在每一次研發過程中都考慮到 這些問題,那麼程序員就不會在重復性的工作中耽誤太多時間,就會有更多時間和精力投 入到創新的代碼工作中去。
一些好的程序模塊代碼,即便是70年代寫成的,拿到現在放到一些系統裡面作為功能模塊 都能適合的很好,而現在我看到的是,很多小公司軟體一升級或改進就動輒全部代碼重 寫,大部分重復性工作無謂的浪費了時間和精力。
程序員應具備的素質中
6:測試習慣
作為一些商業化正規化的開發而言,專職的測試工程師是不可少的,但是並不是說有了專 職的測試工程師程序員就可以不進行自測;軟體研發作為一項工程而言,一個很重要的特 點就是問題發現的越早,解決的代價就越低,程序員在每段代碼,每個子模塊完成後進行
認真的測試,就可以盡量將一些潛在的問題最早的發現和解決,這樣對整體系統建設的效 率和可靠性就有了最大的保證。
測試工作實際上需要考慮兩方面,一方面是正常調用的測試,也就是看程序是否能在正常 調用下完成基本功能,這是最基本的測試職責,可惜在很多公司這成了唯一的測試任務, 實際上還差的遠那;第二方面就是異常調用的測試,比如高壓力負荷下的穩定性測試,用
戶潛在的異常輸入情況下的測試,整體系統局部故障情況下該模塊受影響狀況的測試,頻 發的異常請求阻塞資源時的模塊穩定測試等等。當然並不是程序員要對自己的每段代碼都 需要進行這種完整測試,但是程序員必須清醒認識自己的代碼任務在整體項目中的地位和
各種性能需求,有針對性的進行相關測試並盡早發現和解決問題,當然這需要上面提到的 需求理解能力。
7:學習和總結的能力
程序員是人才很容易被淘汰,很容易落伍的職業,因為一種技術可能僅僅在三兩年內具有 領先性,程序員如果想安身立命,就必須不斷跟進新的技術,學習新的技能。
善於學習,對於任何職業而言,都是前進所必需的動力,對於程序員,這種要求就更加高 了。
但是學習也要找對目標,一些小coding fans們,他們也津津樂道於他們的學習能力,一 會學會了asp,一會兒學會了php,一會兒學會了jsp,他們把這個作為炫耀的資本,盲目 的追逐一些膚淺的,表面的東西和名詞,做網路程序不懂通訊傳輸協議,做應用程序不懂
中斷向量處理,這樣的技術人員,不管掌握了多少所謂的新語言,永遠不會有質的提 高。
善於總結,也是學習能力的一種體現,每次完成一個研發任務,完成一段代碼,都應當有 目的的跟蹤該程序的應用狀況和用戶反饋,隨時總結,找到自己的不足,這樣逐步提高, 一個程序員才可能成長起來。
『柒』 有哪些適合放在程序員辦公桌上的高規格物件
1、牛斗熊;辦公桌前的吉祥物、商戰場上的招財寶!華爾街牛熊斗!
2、唐三彩:貼花點彩雙龍咬瓶是許寶峰大師的作品,整個瓶子採用的是明清的古典風格,具有鎮宅、招財的作用。
3、裝飾器皿景泰藍花瓶;銅龍鳳瓶掐絲琺琅龍鳳對尊,象證吉祥如意,生意一帆風順。
4、中式南海觀音佛像;作品為參照海天佛國普陀山南海觀音聖像原樣縮小虔造。金色的觀世音菩薩,法相庄嚴,由國內一流的佛像雕刻師塑模雕刻,慈目低垂,面容圓滿,庄嚴肅穆。
5、影青陶瓷海水紋佛手擺件;影青瓷,也叫青白瓷,是宋代景德鎮窯工們在五代青瓷、白瓷的基礎上燒制而成的一種特色瓷器,因其釉色介於青瓷和白瓷之間,白中泛青、青中泛白而得名。
辦公桌擺件擺放風水介紹
根據五行相生相剋,需要使用木製的辦公桌才能給運勢帶來相生,切忌不能使用金屬或者鋼制辦公桌,因水克火,故將在運勢上有時財之險。
辦公桌擺放風水中切忌不能讓辦公桌後方空門。何謂空門呢,即後方有門或者窗,在風水學上來講為「失財失利」之位。可用窗簾來化解之。
老闆辦公桌,老闆為「一家之主」故其運勢也將決定著公司的興旺與否。老闆辦公室中辦公桌大小需要與整體的房間相協調,風水學上講究「適合而安,不適為亂」,辦公桌過大,顯得房間很小,則會使得老闆無力協調公司發展。員工辦公桌切忌不能大於老闆使用的辦公桌,否則有反客為主之運勢。
『捌』 成為程序員(或碼農)有哪些方面的要求
1、 程序員意味著要編程序。(如果你僅僅想得到一份高薪水的工作,喝喝咖啡就等老闆發薪水,我奉勸你還是另找一份更合適的工作,譬如練攤,真的,兄弟,這份工作不適合你)
2、你是學文的還是學理的,編程序也許需要浪漫,但更需要邏輯和嚴謹。(說坦白點就是,在你沒有找到樂趣以前,它很枯燥)
3、你有對新技術追求的熱情嗎?你有刨根問底的探索精神嗎?(熱情絕對是最重要的!你仔細思考一下自己的性格適合當程序員嗎?)
4、當程序員決不是什麼好差事,時刻需要學習,需要思考。(直到你成為那個可以引導別人去學習和思考的人,你才可以偷偷的嘿嘿笑,又一群傻蛋)
5、程序員的未來很迷茫。(但我認為關鍵看你自己!我希望你是一個有追求的人,不僅僅是混碗飯吃。因為真正的樂趣在於創造;如果你能改變軟體業的歷史,那才是英雄;不想成為Bill Gates,不想成為Dennis Ritchie和 Bjarne Stroustrup,我會說你沒有追求。有個關於程序員未來的笑話,也許你還沒聽過,你該聽一聽,摘抄如下:
一個程序員對自己的未來很迷茫,於是去問上帝。
「萬能的上帝呀,請你告訴我,我的未來會怎樣?」
上帝說「我的孩子,你去問Lippman,他現在領導的程序員的隊伍可能是地球上最大的」
於是他去問Lippman。
Lippman說「程序員的未來就是駕馭程序員」
這個程序員對這個未來不滿意,於是他又去問上帝。
「萬能的上帝呀,請你告訴我,我的未來會怎樣?」
上帝說「我的孩子,你去問Gates,他現在所擁有的財產可能是地球上最多的」
於是他去問Gates。
Gates說「程序員的未來就是榨取程序員」
這個程序員對這個未來不滿意,於是他又去問上帝。
「萬能的上帝呀,請你告訴我,我的未來會怎樣?」
上帝說「我的孩子,你去問侯捷,他寫的計算機書的讀者可能是地球上最多的」
於是他去問侯捷。
侯捷說「程序員的未來就是誘惑程序員」
這個程序員對這個未來不滿意,於是他又去問上帝。
「萬能的上帝呀,請你告訴我,我的未來會怎樣?」
上帝搖搖頭「唉,我的孩子,你還是別當程序員了」)
6、當程序員還是很有樂趣的。(當你學到新知識時,當你有新的思想見解時,當你有新的產品問世時,和知己探討你的成果時…我問你,覺得這些是樂趣嗎?)
7、當程序員不易也不難。(世間事有難易乎?為之…;不為…。你有決心和信心嗎?)
8、你真的要當程序員?是你自己的想法?
9、你捨得花錢買書嗎?(讀好書絕對是學習編程的最佳捷徑。你一定會說,現在電腦書籍真他XX的貴,沒法子,誰讓知識和技術在人家的腦袋,在人家的書里呢;等你寫書時可以把價格定低一點,記著還有好多沒錢但想買書的兄弟很困難呀。要捨得買書,買好書,不好的的書不如不讀,其害大於其益,關於買什麼書,你可以問高手或看候捷的書評;准備一個小本子記錄你想買的書的名字,逛書店時看看,如果好就買下,記住要讀,別光買不看。) 10、我告訴你,程序就是:任何有目的的、預想好的動作序列,它是一種軟體。
11、編程序就是編寫程序。
12、你想好了嗎?(如果你想好了還是決定要當程序員,可以繼續往下讀;否則,你可以繼續尋找別的出路了。)
(三) 一個程序員應該具備的基礎知識和概念
1、計算機是有什麼組成的,CPU是什麼東西,其工作原理是什麼。(對於這些以及下面將要提到的概念我不會告訴你什麼答案,你可以看相應的教材,關於教材我會在下一部分詳述,記住理解最重要!)
2、機器語言和微指令集的概念。
3、程序的概念。
4、匯編語言是低級語言但不是機器語言。
5、高級語言主要有那些?(C,C++,Basic,Pascal,Fortran,C#,Java等等;如果你是中國軟體業的英雄,你也寫一門語言,最好不用英語) 6、編譯程序和解釋程序的概念和其原理。(編譯器是高手和專家編寫的)
7、HTML、XML等是標識性語言。
8、Prolog是人工智慧語言。
9、操作系統OS的概念和原理。(Windows98,Windows2000,Windows NT,UNIX,Linux,等等都是OS,還有一些實時OS,嵌入OS,編這些的絕對是高手)
10、Windows編程說白了就是Windows API的調用。(中國的程序員很多隻是會編windows程序,用的是VB,我的建議是這些程序員頂多隻是低級編碼員,我稱其是coder)
11、VC++、VB、BC、BCB、Delphi、VF等都只是編程的工具和環境,不是編程語言。
12、面向結構的設計概念。
13、面向對象的概念。(好好理解,兄弟,這個東西還是很重要的)
14、軟體工程的概念和原理。(如果你想當老總就需要好好研究了,系統分析員比編碼員要高一個等級,薪水也高喲)
15、資料庫的概念。(要熟悉一些著名的資料庫系統和語言的名字,如Orcle,SQL,DB2,DyBase等)
16、了解網路概念。
17、了解多媒體概念。
18、熟悉和掌握數據結構和基本演算法。
19、是不是要求太高了,別著急慢慢來,進步在不知不覺之中。(一旦開始學習,一個月以後你就會有一個基本的概念;兩個月以後你就會感覺自己有了全面的基礎知識;當你知道編程序是怎麼回事時,說明你已經入門了。也有很多人編了很多年程序還沒有入門呢,你不會希望自己步其後塵吧。要有信心和耐心。沉不住氣怎麼能成大事?!)
(四) 教材推薦
――-推薦的教材主要還是針對概念來的,最好選用名校的教學用書。
1、《計算機組成原理》(熟悉)
2、《數據結構》(掌握)
3、《操作系統》(了解->熟悉)
4、《The C language》(掌握)
5、《編譯原理》(了解原理)
6、《匯編語言》(了解)
7、《計算機網路》(了解)
8、《軟體工程》(了解)
9、《關系資料庫》(熟悉)
10、《The C++Languege 》(掌握)
11、《面向對象設計》(掌握;結合C++學習)
(五)一些經驗和體會
1、真正的程序員用C++;(一位專家說的)
2、動手去編程序;
3、動腦去思考;
4、要有良好的編程風格;
5、讀書,讀好書,盡量讀原版書!(我反復強調這一點,讀書要有選擇,堅持讀好書,名家出的經典書,不要浪費實踐在一些粗製濫造的書上面;堅持博覽群書)
6、有自己的學習計劃;
7、總結自己的經驗教訓;(准備一個筆記本,記錄錯誤和心得)
8、不要怕學新東西;
9、要有軟體工程的思想;
10、善於發現問題,然後去尋找答案;
11、向高手請教;(要虛心直到你成為高手)
12、和同行交流;(不善於交流肯定不行)
13、懂得軟體的實質,不要被千變萬化的表象所迷惑;
14、真正要學慣用的是編程語言和方法,不是什麼庫,什麼類,什麼工具;(學用那些什麼庫都比較簡單,但光會這些庫,我覺得還遠遠不夠)
15、學習wiodows編程主要是學習windows OS和win32 API;
16、有空了解一下嵌入式開發;
17、有空了解一下PDA軟體開發;
18、了解一下.NET框架和C#語言,也許它是你新的衣食父母;
19、要有耐心,不要作浮躁的人;
20、對程序加註釋,並保留你的老程序;
21、學到的東西越多,了解的越多,你就越接近專家;
22、有空去逛逛CSDN,那裡有你很多知己;
23、要有信心成為一個優秀的程序;
(六)一些好書的推薦
1、《The C Programming language》 (Keinighan & Dennis Ritchie 1988)
2、《The C++ Programming Languague》(Bjarne Stroustrup 1997)
3、《Inside The C++ Object Model》 (lippmans)
4、《Effective C++》 (同上)
5、《More Effective C++》 (同上)
6、《Exceptional c++》
7、《C++面向對象高效編程》
8、《設計模式》
9、《Thinking In C++》
10、《The Standard C++ Bible》(一般推薦)
11、《The Art of Computer Programming 》
12、《Programming Windows》 (Charles Petzold)
13、《VC++5.0技術內幕》
14、《MFC 深入淺出》
15、《軟體需求》
16、《Advanced Windows》
17、《C++ primer》
18、《win32程序員參考手冊》
19、《用TCP/IP進行網際互連》
20、《COM 本質論》
(七)學習計劃
――-這個學習計劃是我個人定的,也共享給大家參考一下,共同進步吧。 1、《計算機組成原理》
2、《操作系統》
3、《數據結構》
4、《匯編語言》
5、《 C 》
6、《 C++ 》
7、《VC 技術內幕》
8、《Programming Windows》
9、《深入淺出MFC》
10、《Advanced Windows》
11、《Inside The C++ Object Model》
12、《Thinking in C++》
13、《Effective C++》
14、資料庫
15、網路
16、嵌入式OS和編程
17、硬體單片機
18、.NET和C#
19、軟體工程
20、UNIX和Linux
『玖』 程序員說地球年齡47年是什麼梗
夢見烏龜爬進家門,預示者做夢人會有一筆財富收入。
旅遊者夢見烏龜,會在離家遠的城市居留一段時間。
夢見用石頭打烏龜,危險會來自仇人。
商人夢見烏龜,出國做生意,能發大財。
女子夢見烏龜,表明做夢人日後的地位會尊貴,事業上也能很有發展。
夢見龜把頭縮進甲里,象徵著做夢人或周圍的某個人為了防禦侵犯而自我薄¥。
男子夢見烏龜,能交好運,說明做夢人的事業穩步向前發展,而且能夠諸事如意。
夢見烏龜游泳,一切災難都會過去。
夢見龜向水裡爬,暗示著做夢人將有一個新的工作崗位或環境。