我对C#的认知。

关于开发者的技术水平到底该如何定义,到底一个人的技术水平应该定位在高、中、低的标准是什么呢?很多人觉得这是一个仁者见仁的问题,有人觉得根据公司的那个员工等级判断。答案是肯定不是,从纯开发技术的角度来分析。很多人觉得自己一门语言精通了就去学其他语言了,美其名曰集大成者,这样的工作十几年却是初级水平的技术人员也不少。

下面我来讲讲我的认知,C#这门技术到底学到什么程度可以进入到什么级别。

我常说C#的入门技术是委托、事件、消息。只有当你可以纯熟运用这三个技能的时候,才刚刚入门,此时C#的大门才算正式为你打开。很多人在学了一些语法编写一些项目后就觉得C#精通了,其实你们还没入门呢(对日开发的居多)

下面上一个图片,大家来看看自己的定位,当然是纯技术角度,其是有些时候一个软件架构用初级软件工程师也是可以架构的。

  

我对C#的认知。

 

1,        comom language runtime :初级人员无视他,中级人员起码要知道他,高级人员多数要会使用其中一些应用比如security,架构师要理解原理。

2,        .netframework :这里有许多框架,会的越多越好。

3,        Base class library :这里都是基本语法你会了多少呢,想成为高手一定要全部学会,一个都不能丢。

4,        Runtime infrastructure library:这里内容初级开发者不用了解,进入中级就要开始一点点吸收了,想到高级要全部消化,是全部哦。

5,        Framework calss library:这里都是基本应用,初级程序员肯能都会接触一些,中级就会了解和运用一些,高级就要全部会用。

6,        Core concepts:这里的内容同上。

7,        Core features,core objects,CLI language,DLR略过。。。

8,        Desktop:CUI了解就行,GUI要深入了解,另外这里的涉及到了XAML语言,这个要学会。

9,        Web:这里涉及的框架sharpoint如果工作没涉及不去了解也是可以的,但asp.net是必会的,其中的MVC就算工作没应用也要学会。Asp.net runtime是进阶高手的一个路障,了解的越多越好。Silverlight的话,会xaml基本就能用,如果工作需要精通。

10,     SOA:这也是个必会的东西,而且至少要精一个。

11,     Open web interface for .net:要了解,会使用,如果工作需要,要精通。

12,     SDK:要了解,会基本使用。

13,     Development:这个基本没有人能全会,但工具这个要熟练使用,毕竟工具会的越多越好,但不是技术加分。

14,     Platforms:这个基本很难有人全精,但多少要了解,工作用过的要精通。

15,     Productivity:起码nuget要会用。

16,     Build:高级人员要了解原理。

17,     Testing:至少要会使用1个,其他的要了解。

18,     Deploy/publish:这个基本都百度的出用法,了解就可以,起码知道有这个东西,需要的时候可以百度。

19,     Framework tool:这里有些是必会的,有些会用就行,但最好全部了解,需要的时候学习用法。

20,     Data:这里内容作为高级人员是必会的,如果其中的orm可以用EF作为跳板深入研究(这里的水很深)。

21,     Conponents:中级以后难免要接触这些,了解的越多进步的越多。

22,     Concept:这是图片里没有的,中级以后就会接触的,像什么IOC,AOP,MVC,MVVM,DDD等等,在学习这些的过程中可以逐渐向架构师前进,其实这些概念学会了之后会发现,概念只是装逼用的。在概念里分为基本概念和高级概念,像IOC,AOP就是基本概念,这些东西在编码时你已经应用过了,而且有一些现成的开源代码,而且原理很简单,学会后可以用具体语言来把你编码的方式表达出来,不去了解也无妨,但知道的多了,方便忽悠;而DDD就是高级概念,光百度是学不会的,一定要应用过才能了解,但DDD这样的高级概念很复杂,非技术人员很难理解,技术人员也未必有那么好的口才讲解,而IOC,AOP这类的简单概念很容易理解,基本上口才笨拙的开发人员也能讲的很溜,很适合给领导很讲解。所以在领导看来,会基础概念和会高级概念都是一样一样一样地。 

看到这里是不是那些以为C#很简单的同学就很吃惊啦啊,那些自以为自己是大神的是不是发现,原来自己不过才是刚入门的小菜鸟啦,那些以为自己C#精通的外包达人们,是不是打开图片后一脸陌生的感觉呀。其实,C#并不比其他语言简单,水深的狠,哪那么容易精通。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zyywps.html