當前位置:首頁 » 編程軟體 » 十年編程無師自通

十年編程無師自通

發布時間: 2022-09-03 08:25:39

編程專業都有什麼門檻

首先如果你之前想入門編程的話,可以考慮Python,這個還是比較好學的,基本沒有門檻,上手容易,一兩本Python的教材就可以學到一點。如果是想深入的話,那麼應該有較高的邏輯思維能力,有一定的英語和高等數學基礎,同時還應該有一定的編程基礎、計算機的基礎知識等才能深入地學習編程。同時沒有系統的學習,沒有人指導,靠無師自通的話深入編程還是非常難的。

❷ 自學編程十年,依然沒有編寫出過什麼有用的東西

理論和實踐區別很大的。如果想進步 最好的辦法就是進公司,跟著做幾個項目。要不就是網上搜一些項目,自己試著去做一做。這些就跟在學校里邊學到的東西,等進到了社會,還要實際碰到了才能真正明白是一個道理。

❸ c++學到什麼程度才能成為程序員

用十年學習編程 為什麼每個人都急不可耐?
2005-07-23 09:18作者:出處:Csdn.net責任編輯:賈佳
走進任何一家書店,你會看見《Teach Yourself java in 7 Days》(7天Java無師自通)的旁邊是一長排看不到盡頭的類似書籍,它們要教會你Visual Basic、Windows、Internet等等,而只需要幾天甚至幾小時。我在Amazon.com上進行了如下搜索:
pubdate: after 1992 and title: days and (title: learn or title: teach yourself)
(出版日期:1992年後 and 書名:天 and (書名:學會 or 書名:無師自通))
我一共得到了248個搜索結果。前面的78個是計算機書籍(第79個是《Learn Bengali in 30 days》,30天學會孟加拉語)。我把關鍵詞「days」換成「hours」,得到了非常相似的結果:這次有253本書,頭77本是計算機書籍,第78本是《Teach Yourself Grammar and Style in 24 Hours》(24小時學會文法和文體)。頭200本書中,有96%是計算機書籍。
結論是,要麼是人們非常急於學會計算機,要麼就是不知道為什麼計算機驚人地簡單,比任何東西都容易學會。沒有一本書是要在幾天里教會人們欣賞貝多芬或者量子物理學,甚至怎樣給狗打扮。
讓我們來分析一下像《Learn Pascal in Three Days》(3天學會Pascal)這樣的題目到底是什麼意思:
學會:在3天時間里,你不夠時間寫一些有意義的程序,並從它們的失敗與成功中學習。你不夠時間跟一些有經驗的程序員一起工作,你不會知道在那樣的環境中是什麼滋味。簡而言之,沒有足夠的時間讓你學到很多東西。所以這些書談論的只是表面上的精通,而非深入的理解。如Alexander Pope(英國詩人、作家,1688-1744)所言,一知半解是危險的(a little learning is a dangerous thing)
Pascal:在3天時間里你可以學會Pascal的語法(如果你已經會一門類似的語言),但你無法學到多少如何運用這些語法。簡而言之,如果你是,比如說一個Basic程序員,你可以學會用Pascal語法寫出Basic風格的程序,但你學不到Pascal真正的優點(和缺點)。那關鍵在哪裡?Alan Perlis(ACM第一任主席,圖靈獎得主,1922-1990)曾經說過:「如果一門語言不能影響你對編程的想法,那它就不值得去學」。另一種觀點是,有時候你不得不學一點Pascal(更可能是Visual Basic和javascript之類)的皮毛,因為你需要接觸現有的工具,用來完成特定的任務。但此時你不是在學習如何編程,你是在學習如何完成任務。
3天:不幸的是,這是不夠的,正如下一節所言。
10年編程無師自通
一些研究者(Hayes、Bloom)的研究表明,在許多領域,都需要大約10 年時間才能培養出專業技能,包括國際象棋、作曲、繪畫、鋼琴、游泳、網球,以及神經心理學和拓撲學的研究。似乎並不存在真正的捷徑:即使是莫扎特,他4 歲就顯露出音樂天才,在他寫出世界級的音樂之前仍然用了超過13年時間。再看另一種音樂類型的披頭士,他們似乎是在1964年的Ed Sullivan節目中突然冒頭的。但其實他們從1957年就開始表演了,即使他們很早就顯示出了巨大的吸引力,他們第一次真正的成功——Sgt. Peppers——也要到1967年才發行。Samuel Johnson(英國詩人)認為10 年還是不夠的:「任何領域的卓越成就都只能通過一生的努力來獲得;稍低一點的代價也換不來。」(Excellence in any department can be attained only by the labor of a lifetime; it is not to be purchased at a lesser price.) 喬叟(Chaucer,英國詩人,1340-1400)也抱怨說:「生命如此短暫,掌握技藝卻要如此長久。」(the lyf so short, the craft so long to lerne.)
下面是我在編程這個行當里獲得成功的處方:
對編程感興趣,因為樂趣而去編程。確定始終都能保持足夠的樂趣,以致你能夠將10年時間投入其中。
跟其他程序員交談;閱讀其他程序。這比任何書籍或訓練課程都更重要。
編程最好的學習是從實踐中學習。用更加技術性的語言來講,「個體在特定領域最高水平的表現不是作為長期的經驗的結果而自動獲得的,但即使是非常富有經驗的個體也可以通過刻意的努力而提高其表現水平。」(p. 366),而且「最有效的學習要求為特定個體制定適當難度的任務,有意義的反饋,以及重復及改正錯誤的機會。」(p. 20-21)《Cognition in Practice: Mind, Mathematics, and Culture in Everyday Life》(在實踐中認知:心智、數學和日常生活的文化)是關於這個觀點的一本有趣的參考書。
如果你願意,在大學里花上4年時間(或者再花幾年讀研究生)。這能讓你獲得一些工作的入門資格,還能讓你對此領域有更深入的理解,但如果你不喜歡進學校,(作出一點犧牲)你在工作中也同樣能獲得類似的經驗。在任何情況下,單從書本上學習都是不夠的。「計算機科學的教育不會讓任何人成為內行的程序員,正如研究畫筆和顏料不會讓任何人成為內行的畫家」, Eric Raymond,《The New Hacker's Dictionary》(新黑客字典)的作者如是說。我曾經僱用過的最優秀的程序員之一僅有高中學歷;但他創造出了許多偉大的軟體,甚至有討論他本人的新聞組,而且股票期權讓他達到我無法企及的富有程度(譯注:指Jamie Zawinski,Xemacs和Netscape的作者)。
跟別的程序員一起完成項目。在一些項目中成為最好的程序員;在其他一些項目中當最差的一個。當你是最好的程序員時,你要測試自己領導項目的能力,並通過你的洞見鼓舞其他人。當你是最差的時候,你學習高手們在做些什麼,以及他們不喜歡做什麼(因為他們讓你幫他們做那些事)。
接手別的程序員完成項目。用心理解別人編寫的程序。看看在沒有最初的程序員在場的時候理解和修改程序需要些什麼。想一想怎樣設計你的程序才能讓別人接手維護你的程序時更容易一些。
學會至少半打編程語言。包括一門支持類抽象(class abstraction)的語言(如Java或C++),一門支持函數抽象(functional abstraction)的語言(如Lisp或ML),一門支持句法抽象(syntactic abstraction)的語言(如Lisp),一門支持說明性規約(declarative specification)的語言(如Prolog或C++模版),一門支持協程(coroutine)的語言(如Icon或Scheme),以及一門支持並行處理(parallelism)的語言(如Sisal)。
記住在「計算機科學」這個片語里包含「計算機」這個詞。了解你的計算機執行一條指令要多長時間,從內存中取一個word要多長時間(包括緩存命中和未命中的情況),從磁碟上讀取連續的數據要多長時間,定位到磁碟上的新位置又要多長時間。(答案在這里。)
嘗試參與到一項語言標准化工作中。可以是ANSI C++委員會,也可以是決定自己團隊的編碼風格到底採用2個空格的縮進還是4個。不論是哪一種,你都可以學到在這門語言中到底人們喜歡些什麼,他們有多喜歡,甚至有可能稍微了解為什麼他們會有這樣的感覺。
擁有盡快從語言標准化工作中抽身的良好判斷力。
抱著這些想法,我很懷疑從書上到底能學到多少東西。在我第一個孩子出生前,我讀完了所有「怎樣……」的書,卻仍然感到自己是個茫無頭緒的新手。30個月後,我第二個孩子出生的時候,我重新拿起那些書來復習了嗎?不。相反,我依靠我自己的經驗,結果比專家寫的幾千頁東西更有用更靠得住。
Fred Brooks在他的短文《No Silver Bullets》(沒有銀彈)中確立了如何發現傑出的軟體設計者的三步規劃:
盡早系統地識別出最好的設計者群體。
指派一個事業上的導師負責有潛質的對象的發展,小心地幫他保持職業生涯的履歷。
讓成長中的設計師們有機會互相影響,互相激勵。
這實際上是假定了有些人本身就具有成為傑出設計師的必要潛質;要做的只是引導他們前進。Alan Perlis說得更簡潔:「每個人都可以被教授如何雕塑;而對米開朗基羅來說,能教給他的倒是怎樣能夠不去雕塑。傑出的程序員也一樣」。
所以盡管去買那些Java書;你很可能會從中找到些用處。但你的生活,或者你作為程序員的真正的專業技術,並不會因此在24小時、24天甚至24個月內發生真正的變化。

❹ android編程自學難嗎

對android編程的理解:
1.上層(java層)
1)Android應用入門易,深入難,主要是用java來做,還有部分通過JNI,NDK調用C/C++的函數
2)framework比起app有些深度了。
2. 中下層(C/C++, linux)
1)Library, Android Runtime, HAL,對有的人來說,還是陌生的,但有C/C++基礎,理解起來可能還相對容易些
2)Linux Kernel,底層驅動,需要linux知識,硬體知識,編寫硬體驅動,入門和深入都難
另外,目前個人情況,只了解上層application,比較大的項目只做過一個音樂播放器的,其他的都是小練習。
面試評價,屬於android初學者,但有5年多工作經驗,待遇還算不錯,比起做了五年的對日外包的面試待遇要高些。

❺ 十年前的編程語言還有哪些仍然在用

十年、甚至二十年前出現,現在仍然使用的編程語言太多了!主要的有:
1)C/C++(至少有30年歷史)
2)JAVA(起碼20年歷史)
3)其他語言,還有人用98年出現的VB6.0、Delph.....

❻ 32歲了,想自學編程還來得及嗎

來得及的,好多人都是跳槽或者轉行,自學編程語言一定的英語基礎和理解能力,因為編程語言表達的是邏輯思維,不像其他行業。編程還考驗一個人的耐心,因為程序編碼過程中,有一個符號不對執行也會報錯。如果你下定決心學編程,你要先選好方向,比如,大數據,Java開發工程師,前端開發工程師。等等,如果你選好了方向,那麼就可以向著這個方向進軍了。祝你好運。

❼ 學習程序設計

呵呵,15歲有這種想法確實不錯的,但是對於要怎樣學習程序涉及其實最重要的還是看你感興趣的方向,因為各種程序應用的主體方向都不同,但是基礎你是必須打好的。其實我個人的看法,C語言不一定要學會,如果你夠恆心和毅力你可以直接學JAVA,沒有任何基礎都沒問題的,其過程可能會比學過C的人漫長一點,但是其效果絕對不會比學過C的人差,或許很多人還能更好的掌握,因為存在一種思路的問題,JAVA是面向對象的編程,很多人都覺得C的思路轉換為JAVA比較困難,所以存在一個瓶頸。如果對JAVA沒有興趣,那麼你可以學C#,你可以學ASP.NET,當然基礎的東西還是要強調,畢竟沒有基礎看這些高級語言是很辛苦的。所以看你個人所好。但是有一點,千萬不要一開始就看C++,這個是可以肯定對你沒有任何好處的,從很多角度上說C++的編程比JAVA比C#都要難。有這么一句話:寫C++的人看寫JAVA的人,就猶如老子看兒子。
但是介於樓主的年齡,我認為還是先加強點基礎,因為我不知道你的相關知道到哪裡去了,有很多東西你沒接觸過你可能根本不了解,所以,還是了解好比如VB,C的基礎好,不需要掌握,你只需要了解最基本的語句結構和編程模式就行了,但是不要被C的編程思維所局限,那樣對你日後學JAVA,C#沒有任何好處。

❽ 學習計算機編程

想學深
大學計算機系的數學嘿嘿
比如離散數學!$#^$%*^^(
英語沒關系
自己摸索摸索就懂了
不行就去買本計算機的英語字典查查

❾ 請問5年或十年以後CNC編程(數控編程)會發展成什麼樣的

5年以後CNC編程(數控編程)可能會發展成為主流.
十年以後CNC編程(數控編程)會漸漸的被其他高能技術所代替,也就是說有可能淘汰!

❿ 編程能自學嗎

編程當然可以自學。自學編程大約需要兩三個月,每天抽出兩三個星期把基礎全部學習一遍,其他都是建立在基礎之上的東西,學起來就會很快。

以下是關於零基礎學習編程的建議:

1.准備一個相對好的運行速度快的電腦,然後安裝一個操作系統(建議Windows操作系統)。不要讓一台速度緩慢的電腦浪費你的時間。

2.選擇一個正確的打字指法。此外,還要熟悉一些Windows快捷鍵和文本編輯器。

3.學習計算機科學,第一步就是學習一門編程語言。下面就是這種語言的利弊:

a.C語言

【優點】:你可以學習到許多底層的知識,給你夯實基礎。

【缺點】:C語言不支持面向對象編程,你很難使用它直接找到一份工作

b.C++

【優點】:很多用法和C一樣,但是卻支持面向對象編程

【缺點】:有太多的知識點要學習,相對比較復雜的語言,有多個版本要選擇

c.Java/C#/Python/JavaScript

【優點】:簡單的語法,隱藏了低層次的知識點,可讀性強,學好它容易找工作

【缺點】:你將丟失很多底層的知識點

推薦自學編程的教科書:

《C程序設計語言第二版·新版》

(10)十年編程無師自通擴展閱讀:

編程是編寫程序的中文簡稱,就是讓計算機代為解決某個問題,對某個計算體系規定一定的運算方式,使計算體系按照該計算方式運行,並最終得到相應結果的過程。

為了使計算機能夠理解人的意圖,人類就必須將需解決的問題的思路、方法和手段通過計算機能夠理解的形式告訴計算機,使得計算機能夠根據人的指令一步一步去工作,完成某種特定的任務。

這種人和計算體系之間交流的過程就是編程。

編程:設計具備邏輯流動作用的一種「可控體系」【註:編程不一定是針對計算機程序而言的,針對具備邏輯計算力的體系,都可以算編程。】

參考鏈接:編程_網路

熱點內容
android訪問網路許可權 發布:2025-02-12 14:55:20 瀏覽:88
原神文件夾 發布:2025-02-12 14:50:15 瀏覽:800
c語言數字翻譯 發布:2025-02-12 14:45:54 瀏覽:497
暗區突圍為什麼顯示伺服器維修 發布:2025-02-12 14:45:53 瀏覽:247
翻譯分為匯編和編譯 發布:2025-02-12 14:29:12 瀏覽:233
什麼是新聞編譯 發布:2025-02-12 14:23:12 瀏覽:853
如何查看手機存儲 發布:2025-02-12 14:21:15 瀏覽:50
cacti自定義腳本 發布:2025-02-12 14:21:13 瀏覽:313
編譯安卓步驟 發布:2025-02-12 14:19:39 瀏覽:222
php把數組分組 發布:2025-02-12 14:19:37 瀏覽:280