|
這篇文章算是我一個小小的總結,大家看了不要見笑。
大學的時候上的是“網絡工程”專業,關于編程的課程只有C語言,winform基礎,Java語言基礎。教我們C語言的老師特別嚴厲,所以C語言那本基礎教程學的還不錯,老師也比較喜歡我,我也就比較喜歡他,他后來又教我們winform的課程,課本上的那些例子我做的還不錯,老師留得一些擴展的小功能,我也能比較好的完成,所以老師對我比較照顧,讓我的虛榮心得到一些小小的滿足。現在想想大概就是由于這個原因喜歡上編程的吧!(不喜歡Java老師,所以誤打誤撞的用上了C#。)但是當時光顧著玩,亂七八糟的什么都玩,也就沒有去深入的學習。
大學的前三年就這樣玩過去了。在大四的時候大家都有了找工作的壓力,我們班興起了報培訓班的熱潮,因為我們的專業,很多人都報了CCNA,CCNP的培訓課程,女朋友天天看我玩,看別人好像都挺努力的,然后也就天天說我怎么怎么的,我當時也是為了堵住她的嘴,然后就和家里要了些錢準備報個培訓班,但是不喜歡CCNA這類型的課,同宿舍上課的那個地方除了CCNA,只有一個"微軟認證應用程序開發專家 (MCAD)"的課程了,為了和他們在一個地方,就了解了一下MCAD,大概知道這課程講的是怎樣編程,然后一想我在學校編程課程成績還不錯,所以就報了這個培訓班。因為去培訓班的目的不是很純潔,聽課也就不怎么認真,但覺得錢花出去了,為了心理的安慰,還是準時去上課,按老師布置的作業去做一些東西,當時學會了怎么寫一個新聞發布類型的網站,別的就沒什么印象了。
大學轉眼就畢業了,到了找工作的時候,家里想讓回去,在我們那小縣城里給我找工作,當時年輕氣盛,想著自己能養活自己,回去還得吃家里的,父母還得送禮等等,就特別堅定的拒絕了家里的意見,留到了上學的城市開始找工作,因為只會一點點編程(別的什么也不會)所以選擇了找程序員的工作。
找工作的結果可想而知,四處碰壁,印象比較深刻的一次就是我拿出來我做的那個新聞發布網站讓人家看,結果他問我你知道三層架構嗎? 我說聽說過。他問我你知道面向對象怎么用嗎?我說聽說過面向對象,但不知道怎么用。。。(汗死!)。回想起來也真是,上的那個培訓學校的老師都沒教過面向對象,只是說這個控件怎么用,那個控件怎么用。。。我又特別懶,沒有在課下學習過。o(︶︿︶)o 唉,當時還覺得做出過東西,就不知天高地厚了,真是井底之蛙啊!
大概過了半年時間,我大學時的好朋友推薦我到他們公司,做IT培訓。我說我還不會怎么教別人啊!朋友說高級的又不用你教,你就教咱們大學里的那本C語言就行了。就這樣陰差陽錯的到了一個培訓機構教初級的C語言。備課的時候遇到一些問題,上網查才知道有cnblogs這樣好的網站。從那時起,天天都上cnblogs看看,自己也買了一些編程的書,從這時起才算正式開始學習編程吧!
時間過的很快的,大學畢業也一年半多了,自己也深入了了解了一些編程,越是深入的時候,罪惡感越重,因為覺得對不起學生們,只能給他們講書本上的那些基礎知識,沒有什么項目經驗等等。大概這個時候看到吉日寫的文章什么創業失敗啊!自己的權限系統多好多好,這時就動了花錢買下他系統看看的心,心想也不缺500元錢,就算不好也也沒太大關系,起碼肯定比自己寫的好不少,自己也長長見識。于是就聯系吉日買下了他的系統。買下后看了兩天,也讓吉日QQ語音講了兩次,覺得系統挺不錯的。但是懶著個東西一直跟著我,買的時候想的挺好,買下來沒多久就放到一邊,看了兩次就沒動過了。
就這樣渾渾噩噩的又過了一段時間,畢業快兩年了。往前想好像看不到好的未來,覺得如果這樣待下去,最終還是要回家,還是要靠父母給找工作。但是出去找工作吧,心里特別沒底,這時看到吉日寫的招聘廣告,當時就咨詢了一下,然自己和女朋友又討論半天到底辭不辭職,就有耽誤了幾個月,最后她也覺得這樣下去不行,最后決定要辭職,走人。這時就聯系吉日這邊,他這邊人招滿了,就給我推薦到杭州的另一個公司。
初來杭州還是有些不適應,一些亂七八糟的事,把以前的一些積蓄都花完了(自己比較奢侈,覺得來杭州了,挺美的地方,必須有個好相機,就買了個單反,等等等等),工作還是比較順利的,這樣過了兩個月。吉日推薦的這個公司還是不錯的,公司領導為人都挺好的,但是工資不是很好,我也就留意著網上的一些工作,看到一個比較合適的公司,就有跳槽了,也就到了我現在這個公司。
因為給我妹妹報了個培訓班,花了些錢,生活開始緊張了,就開始留意網上的一些私活,看自己有什么能做的,結果是自己能做的都挺多人的,而且給的錢也比較低,自己也懶就沒接過私活。那天在吉日的軟件群里看到他要把軟件的英文軟件包做好,有人愿意做的話給1000元的辛苦費,我一看覺得挺容易,錢也還行,就接了下來。開始做的時候比較容易就是把一些中文翻譯成英文,但是做著做著就遇到問題了,不過好在都做下來了。算是掙了第一筆私活的錢。吉日也還比較滿意,就又談了下個活。
到現在感覺自己的程序員生活才正式開始,走了很多彎路,耽誤了很多時間,總結一下我走過的彎路,希望可以讓大家引以為戒。
最后談一下我自己這兩年多的一些認識:
1. 多上網(少玩游戲);網上真是有很多很好很好的學習資源,有好多牛人的blog,可以幫我們開拓眼界,開始看不懂的時候也可以幫我們開闊眼界,起碼我們能知道有這種東西(雖然不會),但有一個學習的方向。
2. 認真鉆研一門;網上東西看多了,有時候會覺得眼花繚亂,Javascript不錯,css不錯,HTML5不錯,C#不錯,F#不錯。。。等等這時我覺得還是找一本經典的好書把一門的基礎知識好好的看一遍。(比如CLR via C#(第3版))因為這個時候如果還是一直看blog我覺得就是看熱鬧了。
3. 再反過頭來看blog,因為掌握了書上的基礎內容,提高的時候就要多看看大牛的經驗了。
4. 真正的去寫一些功能,搞好工作的時候,力所能及的接一些私活,即賺到了錢,也鍛煉了自己的能力。比如這次我接吉日的多語言包實現就遇到一個問題:
因為要去遍歷每個窗體里的控件,然后對比資源文件,確定該控件應該顯示的內容,這時普通的控件如lable這些可以很簡單的找到
比如:foreach (Control c1 in this.Controls) 所有控件都在集合 Controls 中。但是ContextMenuStrip、Timer 等控件不在這個集合中,如果要獲取就不能使用上邊方法,可以使用反射的方法來找到他們:
System.Reflection.FieldInfo[] fieldInfo =
this.GetType().GetFields(System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);
for (int i = 0; i < fieldInfo.Length; i++)
{
switch (fieldInfo[i].FieldType.Name)
{
case "ContextMenuStrip":
ContextMenuStrip contextMenuStrip = (ContextMenuStrip)fieldInfo[i].GetValue(this);
MessageBox.Show(contextMenuStrip.Name);
break;
case "Timer":
Timer timer = (Timer)fieldInfo[i].GetValue(this);
MessageBox.Show(timer.Interval.ToString());
break;
}
}
it知識庫:兩年多感覺對編程剛剛入門,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。