上一篇開個頭沒開好,大家不太喜歡錢,規划,未來這些東西,喜歡技術,那就只談技術好了。
還是那句話,程序員的黃金區(25-35)很短暫,白銀區(35-45)也無奈。技術博大精深,怎么才能投入對得起產出?
本人不是什么技術大牛,只是干的時間久了見過的多點,起名最最簡單,也是希望在技術泥潭里化繁為簡。
先說.net
.net從蛋生到現在VS2012, Framework4.5,有了不少變化,積累了相當的東西。現在的.net已經不是當年的吳下阿蒙了,一般人難於全盤掌握,應用更不可能,怎么從里面取到合適的東西很重要。
大原則:選語言。
首先看語言,里面包含了VB, C#, C++等。VB可以無視了(當然你會有不一樣的觀點),C++和C#選一個。實際上你選了.net,就不應該選C++,原因不多說,有個F#這國內不太了解,沒聽說有誰在用,略過,那么簡化到語言只有C#了。
第二:放棄老舊的平台
一個.net里,歷史原因到現在,產生了N個小平台,Winform, WPF, Webform, MVC, SL, Web Service, WCF, WebApi等。一樣根據工作環境,果斷放棄一些。
SL不用說了,MS自已就放棄了,WPF是Windows自已用的多。性能上有大問題,一般沒啥人用,所以基本上,如果沒有必要,WPF, Blend可以放棄了。
一般碼農做開發時,可能會做Win平台或者Web平台,現在Win平台不太流行了,所以Winform也可以放棄了。
Webform 能做的,MVC也能做,還能做的更好,所以Webform也可以放棄了。
Web Service, WCF能做的, WebAp能做還能做的更好,所以Web Service, WCF也可以放棄了。
而MVC中,從MVC1.0到現在4.0,各不相同,那么MVC4以下的都可以無視了。
所以只小平台剩下MVC4+WebApi了。
第三:數據庫框架
在.net里,從最早的ADO.net,到Linq to sql 到Entity framework.還有MS單獨的Enterprise Library這類的,還有第三方的各種ORM, Nhibernate等。
這里面linq to sql MS自已放棄了,可以無視,ADO.net和Enterprise Library已經Out了,放棄,第三方ORM大多數就是垃圾,用來增加你程序的Bug和增加你的學習量及開發量的,更本就應該無視。
Entity framework發展了N版本,只有VS2012的算比較成熟了,干麻不用呢?以前版本的可以無視了。
所以只有Entity framework和Nhibernate了。當然,傳統模式用SQL的,直接用Sql helper就可以了,寫SQL 拼字符串。
第四:類庫
.net龐大的類庫,是為上面等各種技術,小平台,小框架服務的,現在它已經龐大到沒有人可以完全了解(實際上也沒有這個必要),那么首先把上面非紅字相關的類庫的部分放棄得了。
其它就是一些基礎類庫,比如集合,反射,IO操作,網絡操作,這些開發常用的掌握了就成了。
第五:工具
VS2012
其它的有想到的再補充,經過整理簡化,龐大的.net技術體系,變得有點小清新了。一個新手,按這個步驟來,小半年時間就能達到一個老鳥的技術水准(經驗方面是無法快速彌補的)。這里面被放棄被拋棄的技術的概念,關鍵是搞清楚它是什么,能干什么用就成了。
但就算小清新后的.net技術,其實也有很豐富的內涵,基體用起來還會涉及到方方面面的東西,不是一兩句話說得清楚的。如果有必要,回頭有空再寫一篇細點的。