學什麼能成為程序員?

General 更新 2024-11-27

當程序員是什麼專業?

計算機科學與技術或軟件工程, 不喜歡硬件選軟件工程。

想要做一個程序員需要學習哪些知識? 100分

PHP 程序員就是用PHP做為開發語言的程序員。但是往往一個程序員不是僅僅侷限某一種開發語言,或用某一種開發語言來劃分的。為了提高開發效率,現在的科技企分工越來越明確,很少出現一個程序員同時用多種語言開發的情況。

PHP程序員的

市場需求

1、網店系統 shopex,ecshop 等知名免費獨立網店系統均為PHP語言開發。PHP+MYSQL也因為“開源、速度”等關鍵字稱為網上購物系統的首選。目前國內最大的網店提供商shopex正在迅速擴張,需求大量的PHP程序員。   2、開源論壇 因為PHP的開源產生了很多的開源的系統。曾經風靡一時的Discuz!論壇系統就是很好的證明。相比較網店系統,做論壇類開發的PHP程序員需求不是很多。   3、二次開發 基本都是基於shopex,echshop,Discuz!等做開源系統的二次開發。這樣的公司大多是中小型公司。對程序員的要求除了PHP也會要求程序員懂一些CSS的技術。以便最大化的節約成本。

技能要求

作為一名合格的PHPer 首先就是對PHP的熱愛,俗話說:“要做好一件事,要先去理解他,然後愛他。”PHP是一種很美妙的開發語言,你不需要再為定義一個變量的類型而猶豫不定,PHP會自動判斷;你不需要在得到一個表單數據而聲明N多的函數,一切都交給PHP吧!   1、MYSQL   是的,只有一門好的開發語言而不懂得數據庫,我們依然是寸步難行的!還好,我們有一樣開源、小巧的MYSQL!你知道的對於一個web開發人員來說,我們不能僅僅懂得(填/刪/改/查-insert/delete/update/select),為了讓我們的網站跑的更快、更順暢我們還要懂得mysql的優化。沒錯!這個時候,視圖、索引會幫你完成你想要的結果。   2、Apache   沒有Apache我們的程序怎麼能跑的起來呢!至少你要懂得一些Apache的基本配置信息吧!   3、Javascript   “後端語言群雄逐鹿,前端語言唯我獨尊!”沒錯,這就是Javascript在前端語言地位的真實寫照!你的網站想擁有絢麗的視覺效果,你離不開 Javascript;你的網站想擁有良好的客戶體驗,你離不開Ajax!縱然有時候,YUI,JQuery等就Javascript框架會幫助我們提高效率,但是,別忘了,他們的基礎是Javascript!   4、算法、數據結構   其實,按照常理來說,算法是程序員的“靈魂”。一名合格的程序員,他第一要求的往往是過硬的算法基礎。但是,web開發顛覆了這種傳統。 因為PHP主要用於web開發,也就不太需要這種技能。 所以,很多時候,人們都在討論是不是web開發人員不能算作真正的程序員呢!?

如果想成為一個程序員應該學習什麼知識

程序員需要學習程序的邏輯,其次是需要學習編程的語言,這才是最根本的,有了語言才能和計算機“溝通”

如果做一個專業的程序員:

1.基礎語言知識 :從底層的ASM 到結構化的C,到面向對象的C++ JAVA,如果不能都精通,但是要了解,至少要精通一門

2.基礎數學知識: 高等數學(數學分析) 線性代數 離散數學,概率.數理統計等等

3.基礎計算機原理:操作系統原理,微機原理,編譯原理 數據庫原來等等

如何自學成為初級程序員

[經驗之談]30歲,我的程序,我的夢!

程序人生 : 30歲,我的程序員夢想

作 者: redbridge (雪燃)

30歲,開始實現我的程序員夢,從一個編程愛好者,從一個業餘的程序員,一個水平不高的程序員,一個半道出家的程序員......

我的經歷到這裡就告一段落了,五年裡跳了五次槽,不知道和大家比算不算多J,沒有什麼太多起伏,但我想很多朋友可能會和我有類似的經歷,不知道能不能引起你們的共鳴。我想對我上面所說的話給一個總結:

1. 如果你覺得自己應該追求什麼,不管遇到什麼困難千萬不要放棄,一定要堅持下去。

2. 不要因為自己年輕就找理由揮霍時間,少玩一點SC、CS、魔獸3、傳奇、魔力或者…….,多看點書,多練練題。

3. 如果你還是在校的學生,英語很差,專業課也很差。沒關係,想怎麼學計算機就怎麼學計算機吧。其它地只要能混到畢業證就行了。除非你對自己的未來沒有信心。(當然,如果你的理想不僅僅是要做一個程序員,那你別丟掉英語。)

4. 如果你不是科班出身,想要轉行而不知該怎麼開始的話,建議你先看兩類書:(1)計算機原理;(2)數據結構和算法。(看數據結構之前先看C語言)。

5. 什麼時候努力都不晚,關鍵是你明白要努力了,大器晚成總比一事無成要好的多。

6. Java、.net、C++、PB、VB、Delphi、彙編到底應該學哪個?我的經驗,哪個最簡單就先學哪個、公司用哪個你就學哪個、哪個和你有緣(比如剛好你認識一個願意幫助你的Delphi高手)你就學哪個,如果你都學,或者三天兩頭的換,我可以告訴你結果肯定是什麼都不會,不要心浮氣燥,他們都只是工具,學精一門其它的就相通了,重要的是掌握編程的思想。如果你問我面向對象(好像現在已經是面向需求了)、UML、WebLogic、WebService、軟件工程、XML…….應該怎麼學呀,對不起,這些我也確實不是都會,但請相信,你先實實在在的寫上十萬行以上的代碼以後,那些東西你自然就慢慢會了。

7. 不要以為程序員的工資都很高,程序員之間的水平差異也大。公司衡量一個人的待遇標準是他能給公司帶來多大的效益。如果你體現了自己的價值,公司會主動給你加薪的,當然你也可以自己主動提,但一定要在你表現出了自己的價值之後。

8. 輕易不要跳槽,如果非要跳,也要保持工作經驗上的延續,而不是從新開始,不然就會象我一樣走很多彎路。

9. 如果你以為程序員都是熬夜熬出來的,那麼你錯了,因為它的代價就是縮短你的青春!大家不要象我一樣,真的,熬夜一點也不好!記住老毛的話:如有恆,何須三更起,半夜眠;最怕莫,三天打魚兩天晒網,竹籃打水一場空!

10. 這一點是我覺得最精華的一點:“君子性非異也,善假於物也。”這句話的本意是一個水平很高的人本身並不一定很高明,關鍵是他善於利用別人的高明!我在這裡做個借鑑,就是要充分利用自己身邊的資源,不放過任何一個可以提高自己的機會。大家不要誤會,這裡的假於物可不是指抄襲別人的源代碼,而是指通過學習別人的源代碼把他的思想擴展到自己的思想裡去。

注:上面的十大“精華”純屬我個人的“謬論”,您自己看著消化,有用的收下,沒用的請拖入“回收站”。如果你覺得這些總結不過是一些浮華之詞,那請你先問問自己:“是不是在行動上都真正做到了。”

這就是我,一個不算優秀,不算勤奮;玩能玩通宵,學也學能學通宵;對夢想的追求很執著;到了30才開始真正寫程序;一個很平凡但又不甘於平凡的人……我的經歷相信很多朋友都有過的,我現在也不能算是一個成功人士,但我相信我的經歷卻是值得大家借鑑的,因為我終究代表了一類人......

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

我覺得你應該先學習C語言,C是所有其他高級語言的基礎,你學會了C(不必學的太深,瞭解一些簡單的算法和思想就可以) 你再學起其他編程語言就會很容易上手的。還有數據結構,雖然這是一門枯燥的學科,但它對與編程的思想拓展有很大幫助。

推薦:譚浩強的c語音程序設計 自己多動手練習

一個什麼都不懂的新手要當程序員該先學什麼

有很多人都喜歡問這個問題,那麼我就再你解答一次。

程序員不是想當就能當,程序員必須要有敏捷的思維能力、堅持不懈的毅力,程序員可以理解為文理科的結合(如果你不是學彙編或者C++的話),你還得要有強大的記憶力(一個程序員不只掌握一門編程語言)。

如果你想學編程,我建議你把基礎學好(包括初中英語和大學以下的所有數學)。算法是程序的靈魂,只有學好數學,培養邏輯思維,才能寫出優質的代碼。

以下為我推薦的語言,從高到低,推薦等級依次降低:

1、python 現在這門語言的影響力越來越廣,並且他簡單易學

2、Ruby 我知道當我打出這個詞的時候會有很多人罵我,但是請理性,作為一鍾編程語言,我確信他能呆在這個位置

3、PHP 他號稱自己是最簡單的語言(JavaScript也這麼說過)

4、C/C++ 是的,這個霸主理應享受這樣的地位

5、JAVA 你也許回問我為什麼把JAVA放在C後面,但我告訴你,C/C++的優良性確實比JAVA好,也許你會覺得C繁瑣,但他很高效

6、JavaScript 這門語言是門對新手非常友好的語言,你可以隨便下載一個編輯器就可以寫,無需編譯,放到瀏覽器內就可以運行

7、HTML5 原諒我把這門最簡單的語言放在最後,說他簡單是因為他只需要記憶。

好了,最後一點,語言無優越。每種語言都有它的好處,但也有他的壞處,最常見的程序就是混合式開發。希望你能抉擇好。

想當一名程序員那在大學時候究竟應該學習什麼?

最終我決定把想到的東西寫下來,希望能對在校的人有點幫助。首先我們得知道這問題的答案是個變量,他依賴於你的目標和天資能力,絕不唯一。當然大學的課程設置往往是唯一的,所以會有點矛盾。這裡最關鍵的東西是目標,大學學習只是達成最終目標高度的一個環節,他應該為最終目標服務。當然大學生很難清楚的知道自己的目標究竟在那裡,但要總歸要大致知道自己的方向。這個之所以關鍵是因為,這直接決定你應不應該學習某個東西。我是在做了很多年軟件後,才發現軟件和軟件的差別其實比馬和牛的差別還要大。用流行的分類方法比如:前端開發、後端開發、.net開發,Java開發等會讓人迷失焦點,所以我一直覺得Barry W Boehm在《軟件成本估算:COCOMOII模型方法》裡的分類方法對學習更有幫助。在這個分類方法裡軟件被分了三層:最底層是基礎結構型(平臺)軟件的開發;中間層次是開發工具、系統集成、中間件;最上層是終端用戶編程,也可以理解為一般應用的開發。同時作者還補充了份數據說:在2005年95%的美國程序員是在做終端用戶編程。這似乎把話題扯開了,但其實不是,關鍵要大致定位下自己的方向。因為對於目標是基礎結構的程序員和目標是一般應用的程序員,他們要學習的東西差別很大。Donald Knuth的《計算機程序設計藝術》不是沒用,但如果你花了2年把他啃了一遍回頭專門做應用開發,那它真的用處不大。至少和一個精通具體語言、框架、設計模式、面向對象、UML的人比只是鑽研了《計算機程序設計藝術》的人反倒是在劣勢,雖然可能後者更花時間。反過來講則是在算法密集型的工作裡,那優劣情形就會掉過來。無疑的什麼都精通最好,但人的時間是有限的,而軟件相關的知識是無限的,所以把學習聚焦在自己的目標上非常關鍵。而目標是什麼則要根據自己的實際情形來定。假設說你真的感覺自己的能力挺好,就想做基礎結構型的東西,去做MapReduce,去做操作系統等等,那首先要認識到的是幹這個的人很少,競爭很激烈。如果說在2005年美國只有5%的程序員是幹這個的,那我估計今天在中國也頂多是這麼個比例。個人感覺,大學的計算機課程還真都是往這個方向培養人的,一旦真的走這個方向,那麼大學的計算機課程還真用的上。需要好好學習,天天向上。當然只上課也不行,把課上學的東西實踐起來也很關鍵(比如開源項目)。這裡麻煩的事情是,幹這個的可能只有5%,很多人即使很努力也不一定擠的上去。那麼假設說一個人很現實,說:國內排名靠前的幾所學校湊湊也就5%了,競爭太激烈,我不選這個目標方向,我還是95%裡做做吧,那這個時候我應該學什麼?我個人認為主要要學好一些比較硬的,需要大塊時間學習的東西,而不要在花裡胡哨的東西上多費時間。硬的東西是指:數據結構和基本算法。不管是不是做基礎結構性軟件,基本的數據結構和算法知識還是要有的。很可能不太會有自己從頭寫數據結構和算法的機會,但如果複雜度不知道怎麼算,鏈表、紅黑樹、哈希表的差別都不知道,那就怎麼都玄。精通一門編程語言具體是那個可以根據實際情形來選。但這裡強調的是語言,不是IDE和框架。可以通俗理解為每個關鍵字背後的含義要整清楚。這裡的陷阱是學一堆語言,但那個都不精。精讀一個有點規模的開源項目(至少要超過2萬行)要找那種規模不太大,又比較有名的項目,一定要精讀,爭取每行都懂。累積一定的代碼量不算IDE幫助生成的,爭取也在2萬行之上。面向對象和設計模式這點最好配合著下一點一起做。從頭考察一下某個框架考察某個框架的內存機制、線程機制等。整個學習過程中最常見的陷阱是學會操作一堆IDE和框架的使用,但實際上這事兒價值不大......

當java程序員應該學什麼,並且學的順序是什麼

ja範a有三個方向:1 桌面應用程序開發 不過個人認為這個很少

2 j2me也就是手機裡一些小程序的開發

3 j2ee 企業級開發 也是最有前途的

下面是本人j2ee學習的路徑 是當時老師跟我講的

第一步:入門 隨便找一本簡單的詳細的書看完

第二部:看thinking in Java這本書講解深入 有難度 看完的話受益匪淺 如果 覺得thinking in java 太難的話 就看java核心技術 簡單一些 一共兩卷 買盜版的吧 很便宜 哈哈

下面就是另外的一層境界了

第三步:html css javascript 這些不是java的內容 但一定要了解

第四步:jsp、servlet JavaBean這個沒什麼可說的 張孝祥的書不錯 很全面 這時可以做個小網站什麼的 用mvc設計模式 也就是JSP 負責顯示界面 相當於MVC中的 V

Servlet 負責歷程控制 相當於MVC中的 C

JavaBean 負責功能 相當於MVC中的 M

第五步:學習struts spring hibernate框架 這時也可以做一些小項目了 實踐一 下 當然你會發現實際練習中會有很多問題出現 這是提搞的好機會

第六部:ejb 這是一個重量級的東西 慢慢學吧

程序員能自學嗎?

首要之首:不要急於選擇一種語言  新手們有一個常見的錯誤就是猶豫於判斷哪種編程語言是做好的、最該先學的。 我們有很多的選擇,但你不能說那種語言“最好”。 我們應該理解:說到底,什麼語言並不重要。 重要的是理解數據結構、控制邏輯和設計模式。 任何一種語言—甚至一種簡單的腳本語言—都會具有所有編程語言都共有的各種特徵,也就是說各種語言是貫通的。 我正在攻讀我的計算機學學位,我編程使用Pascal,彙編,和C語言,事實上我從來沒有把它當成職業以求獲得回報。 我一直在自學編程,工作上用不到它,我使用現有的知識,參考各種文檔和書本,學習它們的用法。 因此,不要急於選擇何種編程語言。 找出你想要開發的東西,使用一種能夠完成這項任務的語言,這就可以了。  根據各種開發平臺的不同,有很多不同的軟件開發形式可供你選擇:從網站應用到桌面軟件到智能手機軟件到命令行腳本工具。 這篇文章裡,我將重點介紹一些很受歡迎的入門教程和資源,它們能幫助你學會如何在各種主流的平臺上編程開發。 我先假設你是一個悟性很強的讀者,但對於新手,當我談論程序代碼時還是要按照入門級的水平。 因為即使是你自己看一篇編程入門手冊,如果發現都能理解時,心情自然會很高興,這樣利於你進一步學習。  桌面腳本  想要動手在Windows裡或蘋果系統裡編程,最簡單的方法是從一種腳本語言或宏語言開始,例如AutoHotkey(Windows) 或Automator(蘋果系統)。 如今一些硬件程序員衝著他們的屏幕大喊大叫,說AHK和AppleScript並不是“真正”的編程語言。 也許他們說的是對的—技術上,這些種類的語言只能做一些上層的編程。 但是對於那些只是想來脫盲、想在他們的電腦裡實現一些能自動運行的程序的新手來說,這些語言會是一個絕妙的入門入口—而且你會吃驚於它們豐富的功能。  例如,大家都喜愛的Texter就是Adam使用AutoHotkey開發的能獨立運行的Windows應用程序,所以說這種腳本語言遠不是隻能開發小規模腳本軟件。 如果你想從AutoHotkey入手,可以參考Adam的指導:how to turn any action into a keyboard shortcut using AutoHotkey(然後,你可以下載Texter源代碼看看這個功能齊全的使用AHK開發的Windows應用程序的內部結構)。  Web開發  HTML 和 CSS:開發網站,你第一件要知道的事情就是HTML(網頁就是由它組成的)和CSS(一種讓外觀更好看的樣式標記)。 HTML 和 CSS 並不是編程語言—它們只是頁面的結構和樣式信息。 然而,在開始開發web應用程序之前你必須要學會如何手工的編寫簡單的HTML和CSS,web頁面是任何webapp的前端顯示部分。 這個HTML 指導是你入手的好地方。  JavaScript:當你可以通過HTML和CSS構建一個靜態頁面後,事情就開始變得有趣了—因為到了該學JavaScript的時候了。 JavaScript是一種web瀏覽器上的編程語言,它的魔力就是能在頁面裡製造一些動態效果。 JavaScript可以做bookmarklets,Greasemonkey腳本, 和Ajax, 所以它是web上各種好東西的關於因素。學習JavaScript從這裡開。  服務器端腳本:一旦你學會了網頁裡的知識,你就要開始對它添加一些動態服務器操作—為了實現這些,你需要把目光轉移到服務器端腳本語言,例如PHP, Python, Perl, ......

c語言學到什麼程度才能成為程序員??

c語言....那只是基礎,不過是十分重要的基礎。

先看一本簡單的c語言書吧,先入門,推薦譚浩強c

相關問題答案
學什麼能成為程序員?
奧巴馬為什麼能成為美國總統? ?
史玉柱為什麼能成功?
扎克伯格為什麼能成功?
劉強東為什麼能成功?
改革開放為什麼能成功?
華為手機為什麼能成功?
商鞅變法為什麼能成功?
諸葛亮的空城計為什麼能成功 ?
怎麼能成為天貓會員?