一個(gè)兩年左右的.net程序員必須掌握哪些技能?
網(wǎng)友解答: 第一部分:.Net基礎(chǔ)(.Net基礎(chǔ),面向?qū)ο螅S妙悗欤?;第二部分:?shù)據(jù)庫開發(fā)(SQL語言,ADO.Net);第三部分:.Net高級技術(shù)(.net的高級特性,比如說多項(xiàng)目開
第一部分:.Net基礎(chǔ)(.Net基礎(chǔ),面向?qū)ο?,常用類庫)?/p>
第二部分:數(shù)據(jù)庫開發(fā)(SQL語言,ADO.Net);
第三部分:.Net高級技術(shù)(.net的高級特性,比如說多項(xiàng)目開發(fā),值類型和引用類型等,委托與事件,反射,三層架構(gòu));
第四部分:Web前端(HTML與CSS,Javascript,JS Dom,JQuery);
第五部分:ASP.Net核心編程(Web底層原理,ASP.Net深入,ASP.Net高級);
第六部分:ASP.net MVC(EF基礎(chǔ),ASP.Net MVC);
第七部分:就是你的項(xiàng)目了,以及你自己的項(xiàng)目中用到的技術(shù)(比較主流的開發(fā)技術(shù),網(wǎng)站的架構(gòu),還有高級的開源組件等)
第八部分:擴(kuò)展高級技術(shù)(高級數(shù)據(jù)庫操作,團(tuán)隊(duì)項(xiàng)目開發(fā));
以及最近 .net提高班 里開設(shè)的新課程,.Net core+Linux,.Net并發(fā)編程,NoSQL,即時(shí)通訊項(xiàng)目,ASP.Net MVC其他:路由;HtmlHelper;網(wǎng)絡(luò)支付;分布式日志框架;阿里云、Azure等云服務(wù)器的使用;微信小程序開發(fā)等等
以上說的這些,只是大概的內(nèi)容,詳情可以到如鵬網(wǎng)官網(wǎng)上去詳細(xì)的了解一下,有網(wǎng)絡(luò)的地方就可以學(xué)習(xí),可以根據(jù)自己的時(shí)間來靈活安排學(xué)習(xí)進(jìn)度,把空余的可支配的時(shí)間充分的利用起來,更多的時(shí)間來練習(xí),掌握的更好,有問題隨時(shí)提問,老師實(shí)時(shí)在線答疑,課程里所講的都是最新的技術(shù),有技術(shù)大牛親自授課,口碑不錯(cuò),基本上都是慕名而去的,也有很多工作了好多年的到如鵬網(wǎng)上進(jìn)行系統(tǒng)的學(xué)習(xí),而且以后有新的課程更新了,也是可以繼續(xù)申請了免費(fèi)來學(xué)習(xí)的,目前國內(nèi).net最好的就是如鵬網(wǎng)了。
網(wǎng)友解答:任何一個(gè)程序員,.NET也好Java也好,初期最重要的是什么?是對你要用的這門語言的理解,這是最重要的,最基礎(chǔ)的。你把語言想象成房子的地基,架構(gòu)/框架/類庫/工具就是建立在上面的房子?;A(chǔ)牢固了,學(xué)上層的技術(shù)事半功倍,而且能真正理解這些技術(shù),而不是停留在“我會配”“我知道有個(gè)屬性可以xxx”這樣的低級層次。
為什么這么說呢?因?yàn)閍sp.net mvc也好,ef也好,他們都是用C#做出來的,你對C#的理解不夠,怎么能深刻理解它做出來的框架呢?這樣的人即使做一千個(gè)項(xiàng)目,也不會理解框架,只能說表面上會用。
我拿ef舉例子,我第一次用ef的時(shí)候,用msdn上的例子run了一下,就簡單的幾行代碼,能看出什么呢?
(1)我看出來用的不是IEnumerable的擴(kuò)展方法,而是IQueryable的。這得益于對C#里的擴(kuò)展方法的理解,知道它的工作方式、使用場景和優(yōu)點(diǎn)。
(2)發(fā)現(xiàn)IEnumerable擴(kuò)展方法里的Func委托在IQueryable里變成了對應(yīng)的Expression<T,那就大概知道了ef采用了解析expression tree的方式生成查詢語句。這得益于對委托和表達(dá)式樹的理解。
(3)既然要生成查詢語句,那么必須得有個(gè)provider來做這個(gè)事情,這樣才允許不同場景下的差異性。一看果然IQueryable里有這個(gè)屬性,找到實(shí)現(xiàn)的源代碼一看果然是解析表達(dá)式樹。這得益于對接口的理解。
至此,ef的工作原理基本了解了,剩下的細(xì)節(jié)可以通過項(xiàng)目去慢慢熟悉。是不是很快?是不是事半功倍?如果你不了解語言,那剛才那些你根本不可能理解,只能停留在表面會用。而真正理解的人,很快自己都能實(shí)現(xiàn)一個(gè)簡單版了。這才花了個(gè)把小時(shí)而已。
其他框架其實(shí)同理。語言基礎(chǔ)扎實(shí)了,你會發(fā)現(xiàn)學(xué)啥都快,甚至你稍微用一下,就知道它大概是怎么實(shí)現(xiàn)的,假以時(shí)日絕對能充分理解這個(gè)框架而不是停留在表面。
所以說對于初級的程序員,打好語言基礎(chǔ)是最重要的。不要急著去學(xué)這個(gè)框架那個(gè)類庫,先打好基礎(chǔ),磨刀不誤砍柴工。