C#换什么比较合适?

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

Sql Server换什么比较合适?

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


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

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

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

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

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

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

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


入行很多年,最近一直在管理和开发两个角色上切换,.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?

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

你为什么还坚持.NET的更多相关文章

  1. static,你还敢用吗?(二)

    为了压系统,昨天小组在测试环境模拟了一大批订单数据.今天上午查看记录的账单计息日志,发现了一大堆的MySqlException MySql.Data.MySqlClient.MySqlExceptio ...

  2. 【翻译】Awesome R资源大全中文版来了,全球最火的R工具包一网打尽,超过300+工具,还在等什么?

    0.前言 虽然很早就知道R被微软收购,也很早知道R在统计分析处理方面很强大,开始一直没有行动过...直到 直到12月初在微软技术大会,看到我软的工程师演示R的使用,我就震惊了,然后最近在网上到处了解和 ...

  3. 微软新神器-Power BI横空出世,一个简单易用,还用得起的BI产品,你还在等什么???

    在当前互联网,由于大数据研究热潮,以及数据挖掘,机器学习等技术的改进,各种数据可视化图表层出不穷,如何让大数据生动呈现,也成了一个具有挑战性的可能,随之也出现了大量的商业化软件.今天就给大家介绍一款逆 ...

  4. [修正] Firemonkey TFrame 存档后,下次载入某些事件连结会消失(但源码还在)

    问题:Firemonkey TFrame 存档后,下次载入某些事件连结会消失(但源码还在) 解决:(暂时方法) type TTestFrame = class(TFrame) public const ...

  5. VS2010 release编译下进行调试,“当前不会命中任何断点,还没有为文档加载”问题解决方案

    在release模式下调试程序,经常出现"当前不会命中任何断点,还没有为文档加载"的问题,可尝试以下方法: 1. 属性 → 配置属性 → C/C++ → 常规 → 调试信息格式:选 ...

  6. 你还可以再诡异点吗——SQL日志文件不断增长

    前言 今天算是遇到了一个罕见的案例. SQL日志文件不断增长的各种实例不用多说,园子里有很多牛人有过介绍,如果我再阐述这些陈谷子芝麻,想必已会被无数次吐槽. 但这次我碰到的问题确实比较诡异,其解决方式 ...

  7. static,你还敢用吗?

    我用火狐的HttpRequester测试开发组里一个同学发布的Web API接口,遇到了一个奇怪的问题. 我测试边界情况时,第一次调用响应的结果是正常的,但当再次及以后的请求时,却返回了异常“Syst ...

  8. java中异常抛出后代码还会继续执行吗

    今天遇到一个问题,在下面的代码中,当抛出运行时异常后,后面的代码还会执行吗,是否需要在异常后面加上return语句呢? public void add(int index, E element){ i ...

  9. redis-cli中那些或许我们还不知道的一些实用小功能

    玩过redis的朋友都知道,redis中有一个叫做redis-cli的小工具,我们可以利用它在test和develop环境下进行高效的模拟测试,然而在现实环境中, 我们只知道直接键入redis-cli ...

  10. html你可能还不知道的一些知识点

    一.标签语义化 html标签语义化是让大家直观的认识标签和属性的用途和作用,好处最主要的是对搜索引擎友好. Eg: 1.如果你想在页面中突出"奥巴马"这三个字,让搜索引擎重视它,如 ...

随机推荐

  1. wealoha thrift-client-pool 总结

    DefaultEvictionPolicy类是EvictionPolicy接口的实现主要描述,pool中那些idel对象会被Evict,回收.关键代码如下: public boolean evict( ...

  2. 重构手法之Split Temporary Variable(分解临时变量)

    返回总目录 本小节目录 Split Temporary Variable(分解临时变量) Remove Assignments to Parameters(移除对参数的赋值) 6.6Split Tem ...

  3. springboot之banner

    1 在Main里面关闭 @SpringBootApplication@MapperScan("org.sselab.mapper")public class Application ...

  4. HCTF

    题目:魂斗罗 介绍:这个是HCTF里面的杂项,很好玩的, 1,这个看链接可以下载(http://139.224.54.27/gogogo/hundouluo.nes),然后在网上下载一个虚拟器(htt ...

  5. jq实现全选或者全不选

    $("#all").click(function () { if($(this).is(":checked")){ $("input[name='pr ...

  6. Python之文件的基本操作

    在python中,对文件的基本操作一共有如下四种: 1.打开文件 file_obj = open("文件路径","模式") 常用的打开文件模式有: r:以只读方 ...

  7. 例题:填词-poj

    问题描述 Alex喜欢填词游戏.填词游戏是一个非常简单的游戏.填词游戏包括一个N X M大小的矩形方格盘和P个单词.玩家需要把每个方格中填上一个字母使得每个单词都能在方格盘上被找到.每个单词都能被找到 ...

  8. Python爬虫利器:Beautiful Soup

    Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.使用它来处理HTML页面就像JavaScript代码操作HTML DOM树一样方便.官方中文文档地址 1. 安 ...

  9. 【MAVEN】maven系列--pom.xml标签详解

    pom文件作为MAVEN中重要的配置文件,对于它的配置是相当重要.文件中包含了开发者需遵循的规则.缺陷管理系统.组织.licenses.项目信息.项目依赖性等.下面将重点介绍一下该文件的基本组成与功能 ...

  10. openstack pike 集群高可用 安装 部署 目录汇总

    # openstack pike 集群高可用 安装部署#安装环境 centos 7 史上最详细的openstack pike版 部署文档欢迎经验分享,欢迎笔记分享欢迎留言,或加QQ群663105353 ...