給剛入門學習python的建議

Python是最容易入門的編程語言瓢对,沒有之一寿酌。如果初學者接觸的第一門語言是C或者C++,對他們來說最難的不是語法硕蛹,而是容易出現(xiàn)內(nèi)存泄漏醇疼、指針等問題。有時候排查這些問題對初學者的打擊很大法焰,尤其是沒掌握排查BUG技巧時秧荆。

如果初學者接觸的第一門語言是Python,學習曲線則會平滑得多埃仪,掌握一些基本語法和Python內(nèi)置的數(shù)據(jù)結構乙濒,已經(jīng)可以上手寫一些小工具或者小型應用。這對初學者來說卵蛉,非常重要颁股。因為學習的過程是一個突破舒適區(qū)的過程么库,會面臨很多痛苦,如果學習過程得不到激勵甘有,很容易半途而廢廊散,類似我們開玩笑說的「從入門到放棄」。Python還有很多優(yōu)點:上手快梧疲,第三方庫豐富允睹,資料豐富,很容易做出“可見可得”的應用幌氮。比如你要拿C或者C++做web服務缭受,這上手門檻就有點高了。所以很多工科學生该互,甚至是科班學生會問學了C/C++到底有什么用米者,因為想上手做一些“可見可得”的應用太難。Python就大不同宇智,你想搞Web開發(fā)蔓搞?上來一個Flask框架立馬就擼。想搞點數(shù)據(jù)分析随橘?上來一個Panda+數(shù)據(jù)可視化喂分,擼起來輕松愉快甚有快感。想抓取什么數(shù)據(jù)机蔗?你自己基于request擼一個小爬蟲采集點網(wǎng)站信息蒲祈,app信息都不是什么難事。

也是因為這樣萝嘁,學習Python的過程幾乎接近“無痛”梆掸,有很好的學習正反饋過程,學一點知識就能做一點小東西牙言,能看得到自己成長和進步酸钦。安利了這么多好處,來看看學Python分幾個階段吧咱枉。

1.基礎知識

Python最基本的語言特性和語法:

變量

數(shù)據(jù)類型與數(shù)據(jù)結構

輸入和輸出

運算符卑硫、表達式、語句

控制流(順序控制庞钢,選擇控制和循環(huán)控制)

面向過程編程

面向對象編程

異常處理

組織代碼

標準庫拔恰、第三方庫

針對面向對象這一塊需要重點的講一下,為什么會有面向對象基括?以及我們?nèi)绾卧O計面向對象系統(tǒng)颜懊?這個思考的過程有助于你理解面向對象編程思想。

可以說「一切皆對象」這句話普適性是很強的,大家都在玩的王者農(nóng)藥河爹,里面每一個對戰(zhàn)英雄匠璧,每一個野怪,每一張地圖都是通過面向對象的思想構建起來的咸这。如果一開始你覺得太復雜夷恍,大可把用「分而治之」的思想把復雜的對象break down,分解成多個簡單合理的對象媳维。任何復雜的系統(tǒng)都可以由若干個簡單可靠的系統(tǒng)組成酿雪,多個簡單可靠的系統(tǒng)有序地組織起來是可以實現(xiàn)強大功能的。舉個例子侄刽,還拿農(nóng)藥來說指黎,”英雄“是可以作為一個基類的對吧,每個英雄都有血條州丹,移動速度醋安,AD,AP墓毒,物防吓揪,法扛等等。李白平A后裔一下所计,這是對象之間的通信(或者說交互)柠辞。后裔放大打中李白,李白眩暈醉箕,這一系列的觸發(fā)過程都可以通過面向對象來建模钾腺。

在掌握了語法特點,掌握了面向對象的思想之后讥裤,我們應該能夠在控制臺(windows或者mac的命令行)里邊實現(xiàn)一個有意思的程序。這個程序應該解決現(xiàn)實生活中的一個實際問題姻报。比如出現(xiàn)一個職位的發(fā)布和管理系統(tǒng)己英。有以下功能。我們可以錄入職位信息吴旋。保存到文件上损肛。我們還可以加載職位信息。按多種條件去查詢荣瑟,比如按關鍵字按城市治拿。按薪資范圍。按商圈工作年限等等笆焰。

在做這個的過程中劫谅,自己需要設計一個很好的面向對象系統(tǒng)。也把Python里常用的語言基本特性都用到了。達到這個階段算是勉強及格了吧捏检,不過僅僅是在語言掌握層面荞驴。如果想當一個合格的研發(fā)工程師,還需要掌握很多其他技能贯城。

2. 進階的階段

現(xiàn)在的開發(fā)大部分是基于web的熊楼,比如app要調(diào)web接口,pc端肯定也要調(diào)web接口能犯,所以我們不能光在控制臺里面玩鲫骗。這個時候需要了解,http協(xié)議和Python web開發(fā)踩晶。我們可以重做前面提到的求職發(fā)布系統(tǒng)挎峦,學習基于Python web如何實現(xiàn)。這個時候你需要實現(xiàn)若干個接口:

用戶端:

用戶注冊

用戶登錄

請求首頁刷出默認的職位列表

篩選職位列表

根據(jù)城市

根據(jù)關鍵字

根據(jù)薪酬

根據(jù)工作商圈

管理后臺:

登錄

發(fā)布職位

更新職位

刪除職位

為了實現(xiàn)以上接口合瓢,你需要弄清楚什么是GET坦胶,什么是POST請求,什么場景下用GET晴楔,什么場景用POST顿苇。你還需要明白一個Python web開發(fā)框架,要明白一個http請求到了web框架之后税弃,框架做了什么事情纪岁,如何在里面實現(xiàn)業(yè)務邏輯。哪些數(shù)據(jù)是服務共享的则果,哪些數(shù)據(jù)是用戶/請求獨享的幔翰。

此外,應該學會Python如何操作數(shù)據(jù)庫實現(xiàn)增刪改查西壮,大部分的任務都離不開增刪改查遗增。比如我提到的發(fā)布職位就是create的過程,更新就是update款青,還有刪除是delete做修,讀是read。江湖有一個戲稱CRUD boy抡草。

如果能順利度過進階階段饰及,你應該能舉一反三實現(xiàn)其他類似系統(tǒng)了。比如現(xiàn)在很火的分銷康震,拼團燎含,還有新聞Feeds等等。

好像我沒怎么提數(shù)據(jù)結構和算法腿短,這個要看個人追求屏箍。如果你要在最短時間內(nèi)學會Python開發(fā)绘梦,恐怕是沒時間學好數(shù)據(jù)結構和算法了,能掌握自帶的數(shù)據(jù)結構用法就行铣除。如果你的學習時間充足谚咬,我的建議是一定要學數(shù)據(jù)結構和算法。為了以后長期的發(fā)展尚粘,為了人民幣择卦,一定要學好數(shù)據(jù)結構和算法,我簡直苦口婆心地勸啊郎嫁。

3. 工業(yè)界經(jīng)驗

最后一個階段是實際的工業(yè)經(jīng)驗秉继。這個階段,你應該對公司用的基礎架構泽铛,如RPC尚辑,數(shù)據(jù)庫緩存消息系統(tǒng)中間件,爛熟于心盔腔。同時應該掌握最基本的系統(tǒng)設計的技巧杠茬。知道如何根據(jù)一個實際需求,設計一個高可用弛随,高性能高擴展性的系統(tǒng)瓢喉。

實際上我覺得第一個階段是最容易的,第二個階段會碰到一些坑舀透,有時候不好解決栓票。在第二個階段,你可能需要比較好的自學能力愕够,或者有一個好的學長導師走贪。第三個階段需要比較體系化的訓練和思考。

如果說你的系統(tǒng)設計能力ok惑芭,甚至經(jīng)驗豐富坠狡,再加上你不錯的算法,你肯定有一份好工作强衡,薪資可能說多了顯浮夸擦秽,但優(yōu)秀的應屆生很多人超過30w,甚至50w已經(jīng)是常態(tài)了漩勤。工作3-5年的過百萬的也大有人在。

這個時代缩搅,程序員雖然辛苦了一點越败,但無疑碰上最好的時代了。

PS:辛苦是因為知識更新很快硼瓣,行業(yè)發(fā)展也很快究飞,逼著程序員也要往前走置谦。保持學習才是從業(yè)者的基本素養(yǎng),而不是掌握某門語言某門技術亿傅。

私|信作者初學者媒峡,即可獲得各類入門書籍以及資料

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市葵擎,隨后出現(xiàn)的幾起案子谅阿,更是在濱河造成了極大的恐慌,老刑警劉巖酬滤,帶你破解...
    沈念sama閱讀 218,036評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件签餐,死亡現(xiàn)場離奇詭異,居然都是意外死亡盯串,警方通過查閱死者的電腦和手機氯檐,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,046評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來体捏,“玉大人冠摄,你說我怎么就攤上這事〖哥裕” “怎么了河泳?”我有些...
    開封第一講書人閱讀 164,411評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長奏司。 經(jīng)常有香客問我乔询,道長,這世上最難降的妖魔是什么韵洋? 我笑而不...
    開封第一講書人閱讀 58,622評論 1 293
  • 正文 為了忘掉前任竿刁,我火速辦了婚禮,結果婚禮上搪缨,老公的妹妹穿的比我還像新娘食拜。我一直安慰自己,他們只是感情好副编,可當我...
    茶點故事閱讀 67,661評論 6 392
  • 文/花漫 我一把揭開白布负甸。 她就那樣靜靜地躺著,像睡著了一般痹届。 火紅的嫁衣襯著肌膚如雪呻待。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,521評論 1 304
  • 那天队腐,我揣著相機與錄音蚕捉,去河邊找鬼。 笑死柴淘,一個胖子當著我的面吹牛迫淹,可吹牛的內(nèi)容都是我干的秘通。 我是一名探鬼主播,決...
    沈念sama閱讀 40,288評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼敛熬,長吁一口氣:“原來是場噩夢啊……” “哼肺稀!你這毒婦竟也來了?” 一聲冷哼從身側響起应民,我...
    開封第一講書人閱讀 39,200評論 0 276
  • 序言:老撾萬榮一對情侶失蹤话原,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后瑞妇,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體稿静,經(jīng)...
    沈念sama閱讀 45,644評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,837評論 3 336
  • 正文 我和宋清朗相戀三年辕狰,在試婚紗的時候發(fā)現(xiàn)自己被綠了改备。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,953評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡蔓倍,死狀恐怖悬钳,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情偶翅,我是刑警寧澤默勾,帶...
    沈念sama閱讀 35,673評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站聚谁,受9級特大地震影響母剥,放射性物質發(fā)生泄漏。R本人自食惡果不足惜形导,卻給世界環(huán)境...
    茶點故事閱讀 41,281評論 3 329
  • 文/蒙蒙 一环疼、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧朵耕,春花似錦炫隶、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,889評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至处嫌,卻和暖如春栅贴,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背熏迹。 一陣腳步聲響...
    開封第一講書人閱讀 33,011評論 1 269
  • 我被黑心中介騙來泰國打工筹误, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人癣缅。 一個月前我還...
    沈念sama閱讀 48,119評論 3 370
  • 正文 我出身青樓厨剪,卻偏偏與公主長得像,于是被迫代替她去往敵國和親友存。 傳聞我的和親對象是個殘疾皇子祷膳,可洞房花燭夜當晚...
    茶點故事閱讀 44,901評論 2 355