18年從.net轉行做安卓開發,現在已經過去一年多了。說一下感想和心得體會!
一、開始
說一下我的經厲,從畢業開始出來工作一直是從事.net方向的開發工作。一開始也是沒什麼經驗,加上也沒有其他手藝就找了一個.net的開發崗位,剛開始兩年都是做一些基本的系統開發OA、CRM什麼的。後來跳槽換了幾家公司,也都差不多主要是.net web系統開發或者是後臺介面的開發。跟著團隊一起做專案,完成需求開發,解決bug等等。做了幾年看到現在移動網際網路是趨勢就打算換個方向,本來在我工作的第二年是有一次機會的但是錯過了,當時買了mac準備轉ios開發的但是剛出來工作基礎不好加上沒有自制能力所以就沒有成功轉型。
後來就還是在做.net相關的工作,結果發現做.net的越來越少,加上51上面發現工作崗位遠遠沒有java和Android的多就想著換個方向了,另一個原因是做.net技術一般工資也沒提高多少。然後就準備學習Android了
二、Android學習
Android學習是自學的花了兩三個月的時間吧,買了幾本書,《Android第一行程式碼》《Android開發藝術》再加上Google的文件和菜鳥教程。剛開始是從一個創意開始,比如想做一個app。下載開發環境,配置開發工具,然後寫一個helloworld開始!那時候就是在家自學,做幾個例子。跟著網上的教程寫一下,因為之前做開發也有一段時間了,java基礎還行基本掌握,就從Android開發的ui開始學習,一開始是瞭解基本的一些ui和xml怎麼寫,然後學習如何互動,基本上是把第一行程式碼裡面的例子都敲了一遍。然後就是做一個專案實戰一下,比如一個天氣應用,剛開始學習的時候也是什麼都不會,經常百度,看別人寫的程式碼複製然後改一下,後來發現不行。還是要思考一下原理,然後在家做了一兩個app之後覺得差不多瞭解一點了。
1使用listview 和ReceryView的問題二自定義listview中的東西。
三、找工作
學完Android基礎加上做了幾個例子程式之後有了一點點信心,就開始寫簡歷了,寫的是一年工作經驗。然後投簡歷,找工作的時候已經是6月份了,給我打電話的公司也不多就每天投一下簡歷,然後看看面試題,想想怎麼面試。再就是修改簡歷。大概找了一個星期左右吧,面試成功了一家公司,是一家外包公司,之前沒進過外包加上剛開始也什麼經驗就去了工資待遇還可以。面試的時候問了一些簡單的view基本原理,常用的控制元件和多執行緒知識,以及java基礎等等。我大概答上來了,自我感覺70分吧。然後把之前公司的一些專案寫上去了。之前公司也有移動端的專案,我大概瞭解一些,只不過當時是負責寫後臺介面的。就這樣就找到了第一份Android的開發工作。當然也有一些不好的地方,比如編造了一些經驗。但是不這樣的話根本連面試的機會都沒有。
四、工作體驗
工作也快一年多了吧,剛開始進入公司是負責公司的一個內部系統的Android端的開發工作,根據每一期的需求進行開發。一般一個月到一個半月左右釋出一個版本,更新迭代也是很快的,然後一開始是寫一些簡單的ui介面,呼叫一下介面。第一個月就是熟悉一下專案,剛好公司有同時和我交接,期間有不懂的也會問問其他同事,經常是問一下ios端的開發。然後因為一些事情專案組的一個同事離職了,我才發現原來招我進來是替代他的,然後Android端的話就只有我一個人了,感覺壓力有點大。不過那位同事走之前把專案基本和我介紹了,然後裡面系統框架也已經搭建好了,平時的主要工作就是改改介面,根據需求做一下系統的開發,和之前介面的修改。只是因為基礎不好,加上經驗也不是很足。常常加班,不過進步也是有的。這一年多來基本保證了專案的正常開發上線,雖然有時候會拖延幾天。也緊急修改過一下bug。但是對我也是一種鍛鍊吧。工作總體來說還好,和同事們相處也比較愉快。同時也感謝他們對我的幫助,從別人身上也學到了不少東西,有時候有問題也是一起交流討論。
工作中的一個技術問題和知識點,自定義View,視訊播放,圖片載入快取,獲取視訊縮圖,複雜介面的佈局,以及一些特殊效果的實現。這些問題下一篇文章會詳細寫出來。
五、總結和感慨
總結
通過這一年左右的工作經歷讓我對移動端開發有了一個新的認識,Android入門簡單但是要想深入學習也需要花一番功夫。同時在這一年的開發工作中,業餘還是沒有主動學習和提高。對於專案的開發和程式碼的質量沒有更好的要求自己。有時候也應該主動的去學習和思考一下專案中的程式碼應該怎麼寫。能不能提高一點,在完成任務的同時還需要對自己要求高一點。剛開始可能工作比較認真,到後來也會發現工作不夠熱情,對於專案和程式碼的激情也開始減少,這都是應該思考和反思的。
感慨
從畢業到現在也已經工作四五年了,本來以為可以一直做.net的但是還是換了方向,但是一些基礎的程式設計思想都是相同的,比如資料結構,物件導向,介面。一般的開發語言只是語法的不同,但是基本思想基本差不多。只是其適合使用的場景不同,例如編譯型語言適合後端開發和一些大型的系統,例如java和C#。解釋型語言比較適合web方向的開發比如php和python等。不知道還能寫多久的程式碼,工作到現在進步也不是很明顯,大多數程式設計師基本都是寫需求。那一份還可以的薪水,勉強養活自己。要賺錢還是需要有其他的方向。工作之餘也要考慮一下未來的路該怎麼走,不可能寫一輩子程式碼。最多到30多歲,要找到自己方向吧,工作時間越久想找到一份好工作也越來越難。快30了也有一定的危機感了,人最怕溫水煮青蛙。所以趁年輕還是多學點東西,不能到最後才發現想轉行已經不會其他技能了。是很痛苦的一件事情!這句話是給自己說的,要加油,要努力!