120

你为什么还坚持.NET - 波多尔斯基

 6 years ago
source link: https://www.cnblogs.com/podolski/p/8111734.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

C#换什么比较合适?#

从TIOBE来看,Java、C++、C、Python都好,对了,还不能忘了JS。

Sql Server换什么比较合适?#

MySql挺好,Oracle也不错,也还有不少选择。


都挺好,那问题来了,你为什么要换呢?

最初踏进.NET的世界,很多人都是为了能够快速开发一个程序,解决一个问题。参观各大造船厂,巨硬造船厂给了一个近乎衣来伸手饭来张口的平台,通过这个,很快就能搞定了。

随后你就上了一条巨硬造船厂的客轮,从水手干起,进入了这个行当,干了一年两年很多年,当了船长,船没沉,还能开。

一天,船上有人要去北冰洋了,觉得破冰船更合适,就下船了,上了破冰船;
又过一阵子,有人要运大型龙门吊了,半潜船合适,也下船了;
过两天打仗了,有人去了战列舰。

你还在原来的船上,船上的人越来越少,你怀疑,MDZZ,哥们是不是上了贼船?自己开始焦虑,我应该学点什么好,应该换条什么船。

JS很火,Node.js,react native等技术把js从前端拉到的后端,移动端,感觉什么都能做。仿佛js的船就是航空母舰一样,匆匆上了js的船,开航母,真开心。
“语言都是相通的”,学个语法而已,一个礼拜两个礼拜差不多了,航母一样开。

航母是船,但是不是客轮,好多地方和客轮不一样,没控制好,撞沉了。我靠这什么鬼航母!下船,准备找另一条船...

616093-20171225234257837-638008321.jpg

入行很多年,最近一直在管理和开发两个角色上切换,.NET的技术也算是碰了不少。

Winform -> ASP.NET -> ASP.NET MVC -> WPF -> OPENTK -> Accord.net

回头一看,造船厂一直在出新的船,Xamarin, .Net Core,要被技术淹没了。我觉得...有点迷茫?

  • 今天,需要开发一个服务程序,那么Windows Service
  • 需要开发一个3D程序,OPENTK + Winform,外观再复杂一些?OPENTK + WPF
  • 在加点图像处理吧,+ Emgucv
  • 再加点机器学习啥的 + Accord.net
  • 组态软件?俄语会不会,会的话可以试试RapidScada,不会,那会英语也行啊。
  • 要调用C++?P/InvokeC++ Interop,坑不少,但是也能用下。

Newtonsoft.Json, EF, Dapper, dotnetty, supersocket...这些东西潜移默化在脑子里,会用能用,至少知道该找些什么。

这形成了你的一种体系,虽然品类众多,但是互联互通,迷茫但不迷失。当你决定弃船的时候,放弃的不仅是一艘船,而是一个体系。

不愿意重新来过,是不是意味着要耗死在这条船上了?#

我们都害怕没有选择,很正常,牢牢捆在船上听上去不是个好主意。

兴趣和工作需要,这些都是契机,当你需要用的东西用另外一种语言,另外一种体积比较合适的话,可以先试水用一用。但我建议不要轻易弃船。

有时候兴趣只是一时的,很多年前,我就很喜欢单片机,STM32正开始火,当时整了很多教程,看了很多资料,买了开发板。后来结果并没有坚持下去,我并不是真的喜欢。工作需要也是一样的,前阵子,工作需要,我学了下python,写了个脚本操作excel的,B格可高了,然后发现我还是不习惯,写了个监控程序,发现费半天劲也摸不着门道,还是用C#来的直接。

这并不是说排斥其他语言,我现在时不时还要写python,但是这不是我主要的语言。我这行为...应该叫“脚踏两条船吧”。说不定哪天python用的多了用的熟了,有必要了,我就换船。

你要TensorFlow,学点Java,Python,还要加点深度学习的知识。3D图像、Lidar,整点C++吧。上面的领域.NET也能做,但是不是强项.

很多小伙伴希望能掌握一种语言,学会了就能够吃遍天下了,愿望是美好的,我也希望有这么一天,可惜现在的现实...有取有舍,磨砺好一个技能就很不错了。

.NET是不是好船(nice boat?),说说个人意见。

  1. 语言支持丰富(C#,VB.NET,F#);
  2. 商业支持好,近期开源生态圈也好;
  3. 支持桌面开发、WEB开发、移动开发(Xamarin),基本上除了前端都能做了(当然有方案生成前端代码的,不讨论);
  4. 组件丰富,轮子也多。

不能算完美的船,但也不错了。(佛系佛系)

你为什么还坚持.NET?#

我搞客运的,客轮,我觉得对我来说挺好...
好好考船员适任证书,往远洋方面发展,也希望客轮的船长越来越多,船队发展越来越好。

616093-20171225233605619-1338786698.jpg

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK