⑴ 為什麼感覺自己編程那麼難 知乎
編程難不難?那可不是鬧著玩的。不從事這一行的永遠不知道這行的艱辛,還咋巴著小眼睛問編程好不好學?
不知道LZ看沒看過聖鬥士星矢這部動漫,如果你想踏入編程殿堂,就要先想想那個被無數小孩子嘲笑的實力很菜又只會死纏濫打經常被虐得體無完膚的主角星矢,嘲笑歸嘲笑,但是你遇到的問題跟星矢差不多。許許多多難以解決的問題,像一座座大山一樣壓迫著你,而且你找不到人問,無從下手。但是你比星矢好點,星矢戰勝不了敵人生命就會終結,你解決不了問題可能永遠的就半途而廢於編程無緣了。所以學編程前,首先你得問問自己,想學編程,你有沒有像星矢一樣持之以恆百折不撓一步一個腳印忍受常人無法想像的困難和痛苦的品質,沒有?你說我開玩笑逗你,那好,下面的不用看了,應該你確實不適合學。
如果你只想著掙大錢,勸你別碰這行,一句話,別來找虐。為什麼?你看到的手機APP,各種應用,要想開發出來,不知道需要多少種技術。拿最常見的網站開發,需要後台資料庫mysql,數據格式json,xml,各種網路協議,還有網站開發語言PHP, JSP,ASP.NET,等等不下十幾種技術。而每一種技術都是一本厚厚的五六百頁的書,需要最少一年多時間掌握一門技術。最要命的,每種技術互不交叉還跨度很大,每種技術都有自己的設計理念和很多很多「天坑」在等著你攻克,你問問你自己,你有這個恆心和意志力天天捧著本大部頭的書天天看,天天上機操作學嗎?你說有,那好,你看電視上那些富二代天天瀟灑地到處遊玩泡妞基本於你無緣了,因為你根本就沒時間,談個戀愛都困難,還想打網遊玩王者?那算了,你還是別碰這行了,別耽誤你玩游戲享受生活了。
程序員加班很恐怖,工作制通常是996,即早9晚9周六還要上班,晚9下班還是早的,一般到晚上十點。你想那時夜深人靜了人家都休息抱著老婆睡覺了,你還在工作中,是不是很崩潰?
第2,程序員耗腦太嚴重。工作中需要十幾個小時大腦不停地運轉。需要設計演算法,不斷地把代碼改來改去來適應客戶一天幾變的需求。很多功能沒有現成的解決方案,還經常遇到一些天書一樣的疑難問題,bug,實際工作中突發狀況千奇百怪,你可能見都沒見過的bug,崩潰,需要一點一點查幾萬行的log日誌。而且也需要網路,google,英文論壇尋求幫助,理解錯誤信息是什麼意思。所以英文不好的沒耐心的還是算了吧,不適合這行。
第3. 程序開發首先是非常難學的,任何一門編程語言都有自己獨到的思想,概念設計,很多情況下一門語言與另一門語言沒有多大關系,知識經驗無法串用。當然好多大牛說什麼編程思想是互通的掌握核心演算法思想就行了但是我編程開發這么多年實在看不出有多少互通,學好一門能一通百通?騙騙小孩子還差不多。一門語言與另一門差太遠了好不?工作中你用到這些技術你還不得不去學。而且程序技術日新月異,新類庫新SDK每天都會推出,你需要日復一日不斷地學習新技術。如最新視頻解碼技術,游戲引擎等等,而這些新技術可是國內沒有書和任何資料的,需要你到英文官方網站去找實例看文檔去學,更要命的,新的技術和老的還沒太大關聯,你得重頭去學。而且老闆急趕項目不會給你什麼時間,一般三天就是極限了,你需要這么短的時間快速掌握一項新技術...
綜上,你明白程序員為什麼總要加班了吧,也知道這行不是人乾的吧。為什麼說程序員干到三十干不動。很簡單,以這種消磨人生所有時間狀態,你生命中只有加班加班工作工作學習學習,你將不能顧家不能跟朋友聚會不能再有自己一點點休閑時間,更別說談女朋友戀愛了,以這種狀態你能堅持到三十歲?我想那簡直是個奇跡了
⑵ 學習編程先學什麼編程語言入門知乎
1. 語言只是工具,假以時日,你都會熟練掌握一門/多門語言。
2. 編程語言用以表達你對計算機的理解,表達你的想法,所以解決問題的思路及方法更為重要。
3. 進入計算機的大門,你會發現天地很廣。現在多多了解,拓展視野,也很重要。
4. 推薦使用Linux,可以從Ubuntu開始。一定要熬過一開始的痛苦時期。
5. 千里之行,始於足下。1w小時定律等。
@Joker Qyou的答案很受推薦,但我覺得不大適合初學者,那張圖片的"根"是:What programming language should I learn (next)?我覺得它更適合 "next"。
如果讓我重來,我會選擇C和(或者)python。
Python語法和庫更豐富,上手更容易,使用更方便。
C簡單直接,學習成本不高,貼近底層,能幫助了解底層細節.
學習語言是簡單的,語言是工具,使用好工具是一方面,其他各種領域知識也是很重要的另一些方面。高中畢業後沒事刷OJ應該是蠻適合的吧,正好把演算法和編程語言練好。到了大學後,如果是我重來,我會:
1. 不放過學校的基礎課程。
2. 做ACM演算法題,混各種OJ。
3. 使用Linux。
4. 參加各種編程方面的活動。
⑶ 新手想學編程,看到知乎上很多人說 Mac 很棒,准備入手一台,哪一款...
如果你真的是為了學編程,請用好你手上的工具,直到有一天它不能滿足你需求了再考慮換。當你還沒有挖掘出你現有工具的全部實力時,以工具不夠好為名義掩蓋自己的不勤奮是愚蠢的。
還有,你如果真的覺得知乎上很多人說Mac很棒的話,那隻能說你的信息至少滯後了兩年,或許在2013年的時候知乎上還覺得 Mac 不錯,現在大家可不這么認為。
在2015年,
知乎新聖器可是:Surface Pro 3 和以 XPS 13(2015) 以及 ThinkPad X1 Carbon為代表的優秀Windows 超極本。
如果你真的在做影音後期的話,你應該認識到Windows 移動工作站更適合你的需求。
(我就看著13寸MacBook Pro with Retina那個顯卡不說話,再說一遍,哪怕是頂配的RMBP 15也就是GT750M,上一代的中端游戲卡,本應該定位移動工作站的一點專業精神都沒有)
⑷ 自學編程怎麼創業知乎
作為獨立開發者需要有承擔資本風險的能力和資本家才華
才華 = 教育 + 經驗 + 人際關系 + 天賦和靈感 + 資本運作
⑸ 知乎 怎麼學編程
你問的是怎麼學編程還是怎麼編知乎,不太明白你的意思,姑且按照你問的怎麼學編程回答吧
答:編程其實不難學,需要一定的邏輯性還有對編程語音語法的了解,一般入門都學c這是最適合入門的語音,c涉及到硬體底層,也可與上層使用的語音打交道,學好c在學其他語音也容易,各種語言的語法也有一定的相似性,這個比較好學,學其他語言時候注意語言的作用,即語言產生的時代背景和其應用范圍,這樣能更好的學習。
大概先說這些,不明白繼續問
⑹ 自學編程需要多久知乎
自學的話,要看自己的學習進度,學習效率,幾個月的也有,1年多的也有,因人而異;如果是參加培訓的話,一般是4、5個月;不過即使學習後參加工作了,依然需要學習提升自己。
⑺ 學習編程從哪個語言開始開始知乎
不要有這樣的想法,建議想著把一種語言堅持學下去,學精通,而不是各種語言都會一點,後者沒什麼前景,也不會有什麼前景。
如果把編程語言當成工作,就選一個行情好和自己喜歡的,考慮一下。如果當成一種深度提升,建議學C語言,這個是很多語言的底層實現,而且會涉及到很多思想。
⑻ 如何學習java網路編程 知乎
建議報一個培訓班,都是零基礎入學的,這是網路編程的全部課程,要是感興趣的話可以了解一下:
第一階段
1、計算機操作基礎
2、Office辦公自動化
3、計算機組裝與維護
4、C語言
第二階段
1、SQL Server2005資料庫設計
2、和高級查詢
3、數據結構
4、C#面向對象程序設計
5、HTML5與CSS3開發
6、JavaScript
7、jQuery高級編程
8、PHP開發
第三階段
APP Development
1、JavaScript特效製作
2、jQuery應用開發
3、HTML5與CSS3開發
4、Java面向對象程序設計
第四階段
JAVAWEB Development
1、產品流程應用
2、移動平台界面設計
3、Oracle資料庫開發
4、JavaWeb應用開發
Mobile APP Development
1、實訓一:WEB前端設計與開發
2、實訓二:J2EE項目開發
⑼ 編程課哪家好知乎
.首先,給你的學習編程一個重要的意義
做任何事情前,你都要首先明白為什麼要做?這個理由不是學校開了某個編程課,你為了應付考試。或者看到其他人都在學,你沒事干,也學下吧。這都是盲目的表現,就好比你追一個女孩,不是因為她家有錢,最重要你追她的原因是:你真的喜歡上了她。
所以從一開始,就給自己的學習定一個大的意義,這會讓你不會中途放棄。而且能帶給你前行的動力。
我當年學習編程,是因為覺得未來很多互聯網的行業都於編程有關,意識到這是個基本技能,而且技能在手,不會哪天餓死街頭。同時,編程的世界很純粹,不像其他行業需要很多關系去維護,要想網上爬,的整日琢磨如何混好。但是,在編程的世界裡,全靠技術說話:你行就行,不行就不行。
而且現在是人工智慧時代,編程已經變成了像excel那樣每個人都需要掌握的技能,你覺得學校編程意義大不大?更重要的是,學會編程你的收入概率會比其他人高。
2.如何選擇你人生的第一個編程語言
很多人一開始是對編程有興趣的,但是之前很多大學一上來就教C,C++。裡面復雜的內容,也讓很多人從入門到放棄。到最後連興趣都沒有了。沒有興趣是最可怕的敵人。
如果你是剛開始學編程,選一個比較人性化的編程語言,我建議從python開始。它足夠簡單,而且容易上手。而且現在連小學生都開始學python了。
我們再看看各大兵器排行榜上的python排名,它已經是人工智慧的第一編程語言。相信它的火熱程度還會持續升溫。
3.選擇一本經典的書進行系統學習
很多人一開始為了追求快速,會選擇一些比如xx天學會Python,xx天學會機器學習的書。這些書看上去高大上,其實是在誤導你。世界上哪有xx天就能學會的,記住一條原則:越是有價值的知識,越難學,不然很多人都能學會了。
一般來說,一本書要比公眾號的文章系統性強,一本某個領域的經典教材要比很多快銷書系統性強。一個系列課程要比一次1小時的分享系統性強。所以從一開始就擺正心態,不要急於速成,有時候慢就是快。有了這個心態,就老老實實選一本這個行業經典的書,最好是國外的書。
既然在這個領域你是新手,就不要指望自己能把散落的信息整合成系統了,那是高手要做的事情。要想系統地學習,那就踏踏實實地拿出幾個月的時間來,看幾本這個領域的經典書,選一門系統課,或者跟著一個系統學習過的老師把這個領域的骨架摸清楚。
你又不比別人聰明幾倍,卻想用幾分之一的時間,就掌握人家花了好長時間下了硬功夫,系統掌握的知識,怎麼可能呢? 先接受一個已經存在的系統,再在上面修修改改,對於新手是最適合的方案。
⑽ 自學編程從哪學起知乎
有一定計算機基礎的話,隨便一本編程書就可以。比如java之類。然後進階還需要學習數據結構,其實不學數據結構單純當普通的編程員也沒問題。因為只要會一門語言,就可以編出軟體。主要是看哪種更流行。c語言比較復雜。java簡單好學一些。