C#的前世今生,学会C#还能找到高薪工作吗?
其实C#,.net正在逐步淡出程序员的视野是正在发生的现实,量子及量子的小伙伴们,还在坚持写C#代码的人几乎没有了,回忆起过去那些写C#时候的美好时光,真是不胜唏嘘,最近园子里的一篇《C#程序员,你为何不受大公司青睐 》,又勾起了量子的回忆,甚至想到了更久远的Delphi时代,从博客园又想到了大富翁论坛。
这贴还在有人看,C#就是下一个Delphi,.net就是下一个Delphi,博客园如果不转型,就是下一个大富翁论坛。跟不上时代发展的步伐,沉浸在过去的辉煌当中。
住事不堪回首,历史一再变着花样重复它自已,还有多少老程序员,记得Borland公司的Delphi呢?
现在?今年是哪年?2014, IPhone哪年上市?2007年底,现在主流的开发,已经不是企业级,而已网站和App运用了。就象当年Delphi的单机开发一样,技术发展到企业级开发,就被Java和.net干掉了。
很多编程经验连5年都不足的新程序员,大多不了解编程语言及环境的发展演化历史,已致于走错道。
技术是角海浪一样一波一波向前推进的,背后的原理,理论发展变化不大,但实现手段却在不断进化着。
量子作为一个老程序员,勉强提醒下关注的新程序员,让你们了解下程序语言的发展历史。
1.最早大家是用打孔机和汇编编程,这玩意效率不高的,相信现在还用这个的程序员很少了。
2.第二代以C,Basic,Pascal等为主,命令式语言,这里C很特殊。
3.第三代以C++,Delphi等面向对象为主要语言
4.第四代以C#,Java,这种带垃圾回收,中间指令编译,带一个庞大运行框架的及运行环境的高大全为主。
5.第五代,就是正在正在流行的,以PHP,JS,Python,Objective+C,Java等,百花齐放,开放式接口及遵循技术标准的简单编程语言为主。
主要为了解决互联网网站,及App应用的编程。
这里头有个特别的语言就是C,从诞生开始,一直到现在,还是主要的编程语言,为什么呢?有心的人自已去学习吧。
从上面的历史可以看出,除了C一直被发展下来,其它的语言都逐步进入历史。
现在正处于第四代末,第五代初的时期,而C#因为.net环境配套,MS还在卖Copy,而且卖的很贵,正在被免费的JAVA环境取代。C#和.net正在逐步变成MS自已的专属,而MS自已也不太喜欢这个东西,所以变成自已不爱用,别人也用不好的鸡肋,MS今年以来把它开源,就是有点食之无味,弃之可惜的意思,所以不如开源顺手卖个人情。
量子认为,对于C#和.net,没有必要再投入更多时间了,C#用来学习编程和理解面向对象技术还是不错的。用来当做学习和教学语言吧,替代学校里的Pascal。还是不错的。
现在技术的发展,大公司之间竟争激烈,微软的人都已经不用.net和c#开发了,据量子深入敌后所知,他们大多使用sharepoint,biztalk等做定制,也有不少项目使用java,c++等开发,但是使用win server,sql server等,主要盈利是授权和人头费,比如一高级顾问一天8000咨询费,用java或.net有关系吗,只要服务端软件是windows系就成,很多微粉以为微软的项目是.net开发只是想当然。
又有很多微粉以为微软员工只会.net,c#,以为学好.net就可以进微软,更是错的离谱,恰恰相反,量子深入敌后探知,这是天大的误会,微软员工主要分管理型和技术型,管理型不说了,都是各行业拉去的人精,技术人员大多有深厚的c,c++,java背景,.net也用但是不多,主要就是做些快速项目搭建,你想想,一天8000甚至更多,哪有时间去写代码,那样编程成本得多高!快速搭建,配合win系服务端产品定制,在找些第三方公司做java及少量.net开发,php也有,企业级别,大多混合技术,单纯.net的很少见!
以前有两赵,鼓吹学好C#,年薪30W不成问题,还推荐了什么CLR Via 或Deep C#这类的,说什么学懂了年薪30W,这就是在误导人,为什么呢?量子来告诉你!
这两本书,表面上是讲C#,实际上里头的东西主要就是一些核心原理性的东西,你要看明白了,那是因为你的基础理论背景知识足够高,会不会C#,.net是其次,做JAVA,甚至做PHP一样年薪30W,你要不喜欢C#或JAVA,自已去开发一个语言,一个平台也可以。
但是大多数微粉根本做不到这一点,只记住了“学C#年薪30W”这一肤浅认识,结果学上1,2年出来,连个工作都找不到,或者有人干了5年,月薪1500,还能出视频教别人学C#。
这就是分不清楚,实践技术和理论技术之间的重大差别,C#及.net框架所包含的面向对象,设计模式,框架设计,库设计,IL设计,编程范式等等技术原理,就象一本技术百科全书,用来做教材学习技术理论是很好的,但是,用它当工具来赚钱那就是大错特错了,现在的市场行情就是,这玩意没多少人在用,工作不好找。
量子认为,对于C#和.net,没有必要再投入更多时间了,C#用来学习编程和理解面向对象技术还是不错的。用来当做学习和教学语言吧,替代学校里的Pascal。还是不错的。