一个c++程序员的学习历程自述
? ??我是2011的畢業生,工作已經有一年半了,今天看了一篇博客,主要是講博主自己以前在大學打游戲,從大二開始醒悟,學java,然后準備逆襲,我看了些評論,發現博主還是對自己的未來迷茫的很,想想自己以前何嘗不是這樣呢?對未來的走向彷徨而期待,很想干大事業,但又怕走錯路。我想每個大學生都希望有經驗的人給他們分享一些他們的經歷,不管是成功的還是失敗的,我想終究對其有用,于是就有了寫這篇博客的沖動。
? ? 在大學里面我主要學了c,c++,javase,學的都不是很犀利,但終究還是對語言有一定的掌握,進了公司后,公司主要是用vc6.0,說是用c++,其實主要東西還是用的c,所以這一年半主要還是從事windows sdk相關的工作,由于公司是監控方面的工作,所以也熟悉一些視頻顯示方面的活,開始進去時候,看到客戶端代碼那么多,覺得寫這個軟件的人應該還是很牛的,但隨著自己對于相關業務流程的理解,我發現其實這個客戶端寫的很爛,雖然還是比較穩定的,但從軟件質量方面的角度來說,看到這份代碼我就想把它給廢了重寫,我們的主管也有相同的想法,也是在去年上半年就開始組織我們重寫,但這個事并不是老板認可的事情,再加上我覺得他在組織過程中出現了一些失誤,導致這個項目盡力了大半年我們的努力后,還是被老板叫停,他也就走人了。細細想來,其實如果他如果專業點(并不是說他的編程能力很差),這個項目應該是不會失敗的,因為我們對業務非常熟悉了,不存在什么需求分析了,他根本就不注重軟件質量的審核,他其實還是想走一下軟件工程方面的流程,但可惜很業余,導致我們在前期根本就沒有干什么事情,后面時間又緊迫的很,由于有幾個人還是才招來的,寫的東西簡直就是垃圾,但他看了他們的代碼竟然沒有說什么,因為時間太緊了,就湊合著用吧,結果導致寫出的版本各種bug,公司老板看了后直接叫停,其實歸根到底他對c++不熟,也沒有看過一些大師的書,倒是對linux編程還行,用結構型的思想去編寫一個大型客戶端,想成功真的很難,加上他對于代碼質量沒有要求,bug叢生也是情理之中的事,但是他的領導能力還是可以的,我們還是真心把他當領導看!我相信如果是由我來協調的話這個項目還是沒問題的,關鍵是我沒有話語權,而且組員也不可能聽我的,我也沒有那個領導能力。但這也是個不錯的經驗啊,因為在這次過程中,我總是想如果我是他我會怎么做,這次項目失敗的問題在哪,以后如果我成主管了我會怎么規避,我相信以后我會有這個機會的。在此期間我還從事了android手機監控客戶端的開發,還是由我和另外一個同事合作完成的,當時我還算是他的徒弟吧(雖然我壓根沒把他當老師),他用ndk寫底層協議,我寫界面部分,最后他跳槽了,這個工作就交由我一個人完成,由于我要去不斷滿足客戶的要求,所以我也必須看他寫的底層協議,我看了以后,當時就驚呆了,我覺得他寫的東西只能說基本完成了相關功能,從穩定,健壯,代碼質量,還不談效率方面,簡直就是rubbish,請允許我這么罵(我不爽他很久了,正好在這里泄憤一下,但我確實說的很客觀),我看了這份代碼以后,我就不想碰它,沒辦法,我就直接自己重寫,可能大家覺得你太自傲了把,總是覺得自己牛b?但我沒必要裝b,因為我寫這篇博客的初衷不需要我裝b,我也不想重寫,而且還浪費時間,但沒辦法,因為客戶的需要是不斷提高的,他寫的代碼根本就沒有一點擴展能力,而且有些邏輯也不是很正確,結果后面一段經歷驗證了我的想法,有一個客戶需要我們寫個手機sdk,由于我在重寫開始就非常注意代碼的擴展能力,迅速就寫出來了,因為我的代碼本身就是sdk,雖然我只是自己用,但我在寫的過程中,總是把自己當做一個客戶,想著以后會有什么,可能會有什么需求。另外在寫這份代碼我并不是只是把它當做工作,我總是把我新學的東西想法設法的去用,所以我的收獲很大!這就是我一年半的經歷,不是很完美,但對于后來人還是有些可以借鑒的東西,至少我這么認為。
? ? 說了這么多,我想告訴大家的是,當程序員要有靈氣,所謂靈氣并不是說你要有多聰明,關鍵是你要去多想,多結合身邊的東西,不要為學到一門應用而沾沾自喜,比如你會用某個API了,可是你知道它的實現機制嗎?當然有時候不需要你去知道,但你能不能去多了解呢?也許以后你也可以去借鑒啊!東西只有徹底理解了,才是自己的,那個時候你可以對自己吼兩聲。總之要不滿足于別人的東西,要有拿來主義,多借鑒別人的思想,為以后自己的實現去做積累。但說到多想,我覺得我們自己真的是要多看看書,人外有人,天外有天,人的青春沒有幾年,禁不起浪費,想想以后你要娶老婆,生孩子,你就壓力山大啊,所以在公司對我們期望值不高的情況下,多讀點書吧,不然,等公司想給你擔子挑時,你又感覺自己的肩膀太脆!在讀書方面我覺得要多讀外國的經典書籍,就拿c++來說吧,c++ primer 有沒有? effective c++有沒有,inside the c++ object model有沒有?C++.Templates_TheCompleteGuide 有沒有?沒有讀過幾本書,你想說你熟悉c++有點荒謬吧。再者,應屆生好多人有一個特點是,寫的東西功能都能達到預期目標,但不注重細節,內存泄露比較嚴重,對于特殊狀況沒有處理機制,總之就是健壯性方面很少,但這個確實很致命,如果程序老是崩潰,別人還會用??所以我們要多注重細節,這個觀念要建立!此外,我覺得我們作為程序員要有樂于分享自己收獲的習慣,我很鄙視那種剛愎自用,自己學的東西生怕別人知道的人,這種人不會有大出息!上面我不是提到有個人我很不爽嗎?不為別的,就是他總是自以為是,覺得自己很牛叉,跟別人探討問題總是認為自己是對的,叫別人做點事情總是用命令的口氣,殊不知他不知道自己算個球??只不過是比我大一歲罷了,寫的東西還爛得要死,我不知道哪個公司竟然還會收了他,他最讓我不爽的是一件事情:他對c++有個問題不是很了解,然后碰巧我在這方面還知道些東西,就讓我教他,我二話不說,熱心的跟他講,講了以后我還把我以前學習時寫的demo給他看,可是偶然的機會他不知道在哪里弄到一份代碼,有個東西他不清楚又問我,我看了給他講解后,發現這個代碼寫的還不錯,想研究下,問他要來看看,結果他竟然不給,我當時真的是很無語了,本來我對他沒什么成見的,我也不是很難相處的人,但我覺得我通過這件事情就可以知道他不可能會是我的朋友,這種人不能跟他交心!事實上他確實有很多缺點(不是我一個人認為的哦),我覺得歸根到底還是他的人品不咋地。所以我覺得我們不要做那種人,有東西給大家分享對你也會有好處,有時候收獲的是一份衷心的感謝,有時候收獲的是一份你對該技術的透徹理解(講的出來的東西可能才是真正理解的東西),有時候收獲的是一份友誼,有時候收獲的是一份人脈!事實上我一直都是這么做得,在大學時候我有考研的經歷,但是失敗了,后來有學弟要考研,于是我就給他將考研的要點,需要做什么,不能做什么,總之就是掏心掏肺的跟他說一些要點,結果后來他一直聯系我,說他考上了,總是感謝我,我由于有時候忙,到很少主動聯系他,但他每到節日了就給我發短信,透露感激之情,我想他是真心感謝我吧。我寫這篇博客的目的也是為了給應屆畢業生有所幫助,或者讓他們通過我的失敗去總結經驗。對于應屆畢業生我覺得我還要提醒的是,找工作之前的準備很重要!也許你并不優秀,也許你缺乏底蘊,也許你的根基不好,但這并不是很最糟糕的事情,最糟糕的事情是你沒有充足的準備,簡歷寫的好不好,一些考題有沒有做過,應聘公司的信息是否了解的充分,等等。這些都是要思考的問題,在應聘過程中不要畏畏縮縮的,如果你連這點勇氣都沒有,那就該以后好好鍛煉一下了,因為不管做什么事情,心理素質很重要,抗壓能力要強!
? ? 說了這么多,我其實還沒把我的東西說的很詳細,但又倒不出了,等以后有靈感了在寫吧,今天就寫到這,真心希望應屆畢業生都能有個不錯的起點,然后好好打拼,收獲個不錯的未來!到了該長大的年紀了,要有承擔責任的態度了,不僅僅是對自己負責,你該為自己的家人,朋友負責了!
轉載于:https://blog.51cto.com/zliang/1158525
總結
以上是生活随笔為你收集整理的一个c++程序员的学习历程自述的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Windows Server2008R2
- 下一篇: oracle 学习日志