1. 程式人生 > >我的編程經歷

我的編程經歷

unp 問題 算法導論 一朵 學院 nosql 多線程 多進程 等等

本文寫作的動機是為了與喜歡編程的朋友分享個人的一點點經驗,能力有限,不足之處,見諒,望指教。

我從大一開始接觸c語言,在此之前對編程一無所知。老師講的我大部分在考試後還給老師了,課程對我的意義僅僅是告訴我有編程這麽回事。

後邊寫過一段時間的單片機程序,沒有誰來告訴我這是咋回事,全憑搜,看教程。51單片機玩得差不多的時候,發現沒什麽要做的了。

這段時間陸續了解的CS是怎麽回事,開始了漫長的基礎學習,書看了一大堆。也知道了編程挺賺錢,下了決心搞這個。一位軟件學院的學長給我推薦了Java後臺開發和安卓開發,我選了後臺,因為他是搞這個的,有問題了可以找他聊聊。

最開始看了馬士兵的基礎教程,後邊一出溜的教程也都看過一些,大概對後臺有個感性的認識了。寫Java給我帶來了比C好得多的體驗,相比較而言,簡單很。這段時間看了很多Java相關的書,很多。到現在為止,我遇到的做Java開發的人裏,很多人在工作後看的書,我那時已經看過了。

這樣一晃到了大三下學期,快要找工作了,我沒有拿得出手的項目,整天搜可以寫哪些程序,湊合搞了幾個,就去找工作了。效果並不好。腦子一熱,簽了南方一個活了好久的老公司。

後邊實在閑著無聊,到一家公司實習了4個月。在那個小城裏,工資還行,工作強度也不大,但學到了版本管理,Linux一大堆必備命令,NoSQL的使用,shell,awk,python,等等吧。

實習結束後我著手看apue,因為大寶正好有一本,她說這書是神書。畢業3個月後,我還沒有完全看完,收獲已經遠超預期了,現在再寫Java,帶有深深的鄙視之情。這段時間也看了一點c++,發現這貨實在是編程語言裏的一朵奇葩啊,沒有做不了的事,只有不知道的事。

從我這一點點的經歷來看,搞編程,我說的是一門心思想好好搞編程,學Linux,c,c++其實是一條捷徑,在這個環境裏認真搞一個支持配置多線程,多進程,多路復用的web服務器,已經走上開發的正軌了(對了,服務器開發推unp和遊雙的那本書,後者可以稍微快一點看,前者慢慢嚼)。在Java裏new了那麽多的Thread,對它也是雲裏霧裏,而寫c,跟著task_struct這個結構走下去就基本知道了你啥啥是線程,啥啥是進程,內核怎麽來進行任務切換,等等。

我相信很多開發者都對算法心存敬畏並以會徒手寫出紅黑樹為傲。我也曾如此。當年我刷了leetcode,看了算法導論,算法,數據結構與算法分析-c語言實現,還有一本俄國人寫的書,名字已經忘了,然而在這之後的很長時間裏我都沒怎麽用到過。我覺得開發者要對與算法要擺正態度,它重要,但和碼農關系不大,有使用算法的意識,遇到問題有個大概的思路即可,萬萬不可像我一樣在這個東東上花掉太多時間,有時間陪陪妹子不好嗎?

補充一點,Linux要比我門想象的友好的多,用慣了要比win好用,甚至對於我來說,13款mac pro和我的13款老聯想換,我都會說No。那些糾結於開發買啥啥電腦的人可以歇歇了,有那個時間陪陪妹子不好嗎???

這是我的第一篇博客,正經發的。感謝用c把我教哭的llc教授,帶我入Java坑的學長czq,把我掛了的面試官wn,給了我實習機會的RMQ核心貢獻者lzh,前任超好老大holly。

最後蟹蟹大寶!!!!!!

我的編程經歷