V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
libasten
V2EX  ›  问与答

微软的 C# 和 .NET 未能发展好是不是和名字起的不好也有关系

  •  
  •   libasten · 3 天前 · 5502 次点击

    水木上看到的一个帖子,大家讨论讨论? 首先就是读读音都不好读。 C Sharp 和 java 对比一下,多了一个音节,#符号怎么发音还不知道? C#这个#早年搜索引擎都没法搜到的。 其次就是这个 dotNET 的“点”了,估计不少.NET 的程序员都不知道这个“点”是啥意思。 .NET 在交流打字的时候也不方便,在社区论坛上还很容易被识别成域名后缀。 如都输入成 dotNET 又更复杂浪费时间了。

    95 条回复    2021-04-09 15:08:28 +08:00
    walsh
        1
    walsh   3 天前   ❤️ 4
    微软的那种效率东西能发展好就是走狗屎运了,老本能吃这么多年也是奇迹
    Kaciras
        2
    Kaciras   3 天前
    不是,没有关系
    across
        3
    across   3 天前   ❤️ 3
    C++有话要说····
    drunkdog
        4
    drunkdog   3 天前
    微软老是想一锅端,啥都用自己的,开发也要搞个闭环,自己一家公司做的东西肯定不如 N 家公司做 N 个产品
    KarmaWu
        5
    KarmaWu   3 天前   ❤️ 1
    至少在我看来 .Net 这个名字起得不是很好 以前国内各种读法都有
    LowBi
        6
    LowBi   3 天前 via Android
    好像微软改名部还没对其下手 /dog
    abersheeran
        7
    abersheeran   3 天前   ❤️ 22
    @drunkdog 你要说名字不行、风评不好我都忍了。但凡你写过 C# 也不会说出 C# 不如其他公司产品这句话吧。C# 竞争对手是 Java,哪个用过的不说 C# 比 Java 好使。

    C# 没火起来,名字是一方面,还有就是当年微软在开源社区的风评不好。大佬级开发者不愿意用,然后一群菜逼就跟着不用。所以“没生态”。
    yejinmo
        8
    yejinmo   3 天前   ❤️ 2


    https://www.tiobe.com/tiobe-index/

    国内 Java 太猛了给人的错觉?
    C# 也没有那么发展不好吧
    loverorser
        9
    loverorser   3 天前 via Android   ❤️ 1
    @abersheeran 用 c#配合 vs 写 unity 是真的爽!
    geelaw
        10
    geelaw   3 天前 via iPhone   ❤️ 4
    C Sharp 和 Java 音节数是一样的。
    abersheeran
        11
    abersheeran   3 天前   ❤️ 7
    @yejinmo 主要是国内 Java 人太跳了。GitHub Java 高星中文项目,一水的基础教程。服气的很。
    cqcsdzmt
        12
    cqcsdzmt   3 天前
    我用 C#写过串口的上位机,感觉 C#用着很爽,对新手很友好!
    yejinmo
        13
    yejinmo   3 天前   ❤️ 3
    @abersheeran #11
    最近应甲方要求写 Java 版本接口,好家伙,不知道是我的打开方式不对还是 Java 太顶,序列化反序列化居然都要定义个类,没有 dynamic,开发效率直线下降
    princelai
        14
    princelai   3 天前
    Rwing
        15
    Rwing   3 天前   ❤️ 1
    有一说一,C#和.NET 确实对搜索引擎不太友好。
    但是说回来,排名前几也不叫发展不好吧。
    至于发展的不如 java 我认为是微软的锅,早年商业策略的锅,不是语言和框架的锅
    drunkdog
        16
    drunkdog   3 天前
    @abersheeran 看懂我说的是啥意思了没。。。
    tabris17
        17
    tabris17   3 天前
    和名字没关系,主要是当年不开源,又绑定 windows 平台。只是大家都不愿意出钱买 windows 系统而已
    ziseyinzi
        18
    ziseyinzi   3 天前 via Android
    楼主明天到我们改名部报道
    tabris17
        19
    tabris17   3 天前
    以前单机软件时代或者企业型的 C/S 、B/S 架构还好说,毕竟服务器数量有限。

    后来互联网应用大爆发,服务器需求都是几十台上百台的,当然是选择“不要钱”的 linux 啦
    surbomfla
        20
    surbomfla   3 天前
    shi 拉不出来怪地球
    cxe2v
        21
    cxe2v   3 天前
    @walsh #1
    批微软不行的大佬可是在某标准制定协会或者基金会工作?


    @drunkdog #4
    苹果证明一锅端有大大的好处拿,为什么微软就不能试一试,不过是失败了而已
    wanguorui123
        22
    wanguorui123   2 天前   ❤️ 2
    C# 如果微软官方支持跨平台运行时环境,也不至于沦落到今天这个地步,什么都想搞垄断。
    现在支持跨平台已经有点晚了。
    Nostopping
        23
    Nostopping   2 天前 via iPhone
    @loverorser 我更喜欢用 rider
    yolee599
        24
    yolee599   2 天前   ❤️ 1
    太封闭了,还有绑定 win 平台
    walsh
        25
    walsh   2 天前
    @cxe2v 不批评技术,只说管理,微软里的混子应该不少
    yejinmo
        26
    yejinmo   2 天前   ❤️ 4
    @yolee599 #24

    .Net 使用 MIT 协议开源 目前归属于 .Net 基金会
    .Net 基金会由微软、谷歌、亚马逊等企业赞助独立于微软运行
    https://github.com/dotnet/core

    另外 .Net 早已支持跨平台
    在最新的 .Net 5 中甚至可以像 go 那样只生成单文件应用跨平台

    love
        27
    love   2 天前 via Android
    首先,前几年搞封闭怼开源,公司风评不好,不跨平台根本没办法部署毕竟 windows 在服务器上是个渣渣。
    当然了归根结底就是本身技术和 java 半斤八两根本不能拉开差距,人家已经有成熟更加开放的社区,想追上就很难了。
    gBurnX
        28
    gBurnX   2 天前
    原因 3 点:
    1.Windows 贵,导致整个行业开发者都不愿意用。

    2..net 、Windows 、MSSQL 不开源,导致出了问题很容易造成项目死掉。

    3.Windows 上面的软件质量参差不齐,导致 Windows 经常蓝屏死机。
    johnhartleyGoons
        29
    johnhartleyGoons   2 天前   ❤️ 2
    C#只是在中国不火而已,在国外是绝对的 top3,比 Java 不知道火到哪里去了。Java 的市场只是被中国人撑起来的而已。
    Shy07
        30
    Shy07   2 天前   ❤️ 2
    C# 和 .net 不算啥,WPF 才可惜,XAML 写界面和 MVVM 可以说是领先时代了,结果只有理念发扬光大了
    xiangwan
        31
    xiangwan   2 天前
    Web 开发很晚才能跨平台。
    社区生态相对不够好。
    桌面开发一直很拉跨,替代技术多, 虽然 WPF 技术先进但是不能跨平台,WIN 很晚才有应用市场变现难。
    移动开发直接没了 没了。
    产品不行,技术遭殃。
    djoiwhud
        32
    djoiwhud   2 天前 via Android
    c#已经是游戏前端事实上的标准。
    opengps
        33
    opengps   2 天前 via Android
    易语言这么好听的名字还没有 c#火呢
    chouchoui
        34
    chouchoui   2 天前
    @yolee599 国内的 Java 吹 Linux 吹封闭的都不知道 .NET Core 开放这么多年了?

    看来 Java 开发嘴上开源开放跨系统,实则也就一辈子只会个 Java 深度绑定 Linux
    winnerczwx
        35
    winnerczwx   2 天前
    @loverorser #9 试试用 c# 配合 Rider 写 unity 你会发现打开新世界的大门
    Ley
        36
    Ley   2 天前 via Android
    .NET 主要是国内不流行,其实国内一些大型非互联网外企也是用 .NET 。

    至于名字,一方面,.NET 不利于中文环境流行是事实,但不是因果关系。真的流行的东西,中文一定会自发出现简单的读法的。比如 iPhone X 的 X 会被读成叉。又比如 三星的 Galaxy 手机和索尼的 Xperia 手机这两个品牌会被直接无视。比如 Model 3 也会有毛豆 3 的别称。如果 .NET 非常流行,也许很多人就会叫它比如点奈之类本土化称呼。
    mantout
        37
    mantout   2 天前 via iPhone
    说微软封闭的,你们把苹果放在哪里?
    whileFalse
        38
    whileFalse   2 天前
    @KarmaWu 除了点耐、刀耐还能怎么读?
    zyxk
        39
    zyxk   2 天前   ❤️ 1
    @yejinmo 在最新的 .Net 5 中甚至可以像 go 那样只生成单文件应用跨平台

    可以吗?在 win 下不用装.net 5 的框架可以实现单文件运行?
    luqingliang
        40
    luqingliang   2 天前
    Java,国内真的用的有够多的呢
    Rwing
        41
    Rwing   2 天前
    @zyxk 是的
    yejinmo
        42
    yejinmo   2 天前
    @zyxk #39

    Windows 下刚试了下不能单文件,生成了四个依赖库,看文件名应该是底层依赖,程序本身的依赖还是可以被打成单文件的,可以脱离框架独立运行

    Linux 下则是完全的单独文件


    hacson
        43
    hacson   2 天前 via iPhone
    太封闭而已,如果早几年搞跨平台,至少现在能和 java 五五开,C#开发起来真的很舒服
    easing
        44
    easing   2 天前 via Android
    @drunkdog '肯定不如'这个结论是怎么得出的?苹果不也是闭环么
    zyxk
        45
    zyxk   2 天前
    @yejinmo 麻烦问下 VS2019 下,怎么设置生成单文件的? 即使带几个依赖库
    yolee599
        46
    yolee599   2 天前
    @yejinmo #26
    @chouchoui #34

    早期用的主要是 .NET Framework,这个是单平台,不开源的。开源跨平台 .NET Core 出来的时候已经是很晚了,大概 2016 年才发布 1.0 版本。而 java 1.0 版本 1996 就发布了,天生跨平台。
    Rwing
        47
    Rwing   2 天前   ❤️ 1
    @yejinmo 应该是少了参数,windows 下也可以做到单个文件的,试试
    dotnet publish -r win-x64 -p:PublishSingleFile=true --self-contained true -p:PublishReadyToRun=true -p:IncludeAllContentForSelfExtract=true

    而且可以再加上 trim 参数,把单个文件裁剪到 10M 左右
    zhuangzhuang1988
        48
    zhuangzhuang1988   2 天前   ❤️ 1
    @mantout 一边说微软封闭一边又跪舔苹果..
    janxin
        49
    janxin   2 天前
    JavaScript:???
    poorcai
        50
    poorcai   2 天前
    C# 真的是一门好语言啊,希望在国内赶紧发扬光大
    joe237
        51
    joe237   2 天前
    @yolee599 早些年确实是闭源的,现在早开源啦,.net core
    zhangdawei
        52
    zhangdawei   2 天前
    东西不错,发展太差
    tedcon
        53
    tedcon   2 天前
    微软员工表示内部大把的 dotnet framework 遗留。 几十年的代码 大家都不咋爱动了
    Flymachine
        54
    Flymachine   2 天前   ❤️ 1
    和名字没关系,就是因为之前不开源,不支持跨平台...等到.Net Core 出来黄花菜都凉了。

    话说不喜欢闭源和支持苹果是怎么扯上关系的?不搞苹果 APP 的有几个会用 Objective-C ?
    C#都比 Objective-C 火,至少搞嵌入式的还是很喜欢 C#的——搭上位机够快。
    BigBunny
        55
    BigBunny   2 天前
    想不到 .net c# 有一天上最热榜第一的位置竟然是因为名字没起好 哈哈
    话说早就感觉名字有点别扭各种叫法都碰到过
    Cloutain
        56
    Cloutain   2 天前   ❤️ 5
    怼微软倒是厉害,怼苹果又不敢了。猥琐
    raptor
        57
    raptor   2 天前   ❤️ 1
    名字不重要,根本原因还是 windows 不行。core 出得太晚了。

    苹果封闭只是 iOS,Mac 对开源可比 Windows 友好多了。
    ITrecruit1
        58
    ITrecruit1   2 天前
    其实也还好吧,我们正在招聘.net 开发工程师,量化交易行业,详细链接: https://www.v2ex.com/t/767881#reply5
    xiangwan
        59
    xiangwan   2 天前   ❤️ 1
    苹果封闭,内循环玩的飞起
    微软封闭,自己玩个半死,.net 在国内早两年就没落了

    乔布斯对微软的终极评价是:no taste , 抄来抄去
    微软在 WIN8 时搞 PC Mobile 融合,整成什么样大家都看到了,最近又学 mac-catalyst 想融合 Android
    Xamarin 搞移动跨平台也挺早,但是开发体验奇差,看 Flutter 火起来, 改名 MAUI 重新折腾。



    https://weibo.com/u/1249813797?layerid=4622659482030206
    xiangwan
        60
    xiangwan   2 天前
    对比下苹果开发者,iOS 上拖控件那么多年,一样舒服的把钱挣了。微软技术上折腾不少,WPF,MVVM 倒是先进,平台没了,别说挣钱,白搭进去的时间不算,还要再花时间去转行。[允悲]
    xuanbg
        61
    xuanbg   2 天前
    主要是微软太过强大和强势。什么都有,而且不鼓励别人搞,所以生态搞不起来。Java 就不一样,sun 远没有微软强大。一开始啥都没有,大家想要在这里玩,就得自己动手搞。充分满足了大家造轮子的成就感,所以很快生态就蓬勃发展起来了。
    yohole
        62
    yohole   2 天前   ❤️ 2
    反正都是马后炮的分析,为啥就是不肯承认,C#没火起来就是这个语言本身综合能力不行 ,反过来说,比 C#火的就是综合起来比它好呀,不然如果单纯论语法这些,比 C#好的也很多呀
    tikazyq
        63
    tikazyq   2 天前
    说实话,C#各种碾压 Java,除了国内使用多和一些生态以外,Java 真的没什么优势
    hihanley
        64
    hihanley   2 天前
    hihanley
        65
    hihanley   2 天前   ❤️ 1
    @yohole
    > 如果单纯论语法这些,比 C#好的也很多
    什么是“好”,可以举个例子
    > 语言本身综合能力不行
    也请举个例子

    口出狂言
    wangyzj
        66
    wangyzj   2 天前
    因为要花钱
    charlie21
        67
    charlie21   2 天前
    都是月亮惹的祸
    ychost
        68
    ychost   2 天前   ❤️ 1
    C# 比 JAVA 优秀太多了,对一线码农及其友好,无奈强绑定 Windows,后面 .NetCore 也很难扳回局面
    pancl
        69
    pancl   2 天前 via Android
    java 有行业标准,跨平台,成本低,和一堆菜逼🌝
    chaowang
        70
    chaowang   2 天前
    话说我之前看到中国的手游基本都是 unity 的吧,unity 不是 C#么,中国的游戏现在基本都是手游吧,怎么会是小众的语言呢
    gamexg
        71
    gamexg   2 天前
    开放的太晚了
    很久以前用 C# 时,用 vs 是真的挺舒服。
    但是当时不能跨平台,国内互联网有些火不起来
    hobochen
        72
    hobochen   2 天前
    看到诸位的言论,赶紧看了一眼我司股价。
    我司市值又是新的史高了,各位如果觉得微软不行就去做空嘛。
    w3cll
        73
    w3cll   2 天前   ❤️ 3
    @chaowang 就是因为培训班不教,所以是小众的
    ReferenceE
        74
    ReferenceE   2 天前 via Android
    培训班不教了太生草了
    @w3cll
    muraku
        75
    muraku   2 天前 via iPhone
    不要忘记有改名部(狗头
    Jooooooooo
        76
    Jooooooooo   2 天前
    当然不是, k8s 这种东西人家都发明缩写了. 好用的东西怎么可能因为名字没人用.
    kuangwinnie
        77
    kuangwinnie   2 天前
    Csharp 混的并不差啊。。。
    你会觉得他混的差是因为你听说过他,如果你没听说过他你根本不会觉得他混的差(耸肩
    AutoRip
        78
    AutoRip   2 天前 via iPhone
    @walsh 听起来好像顺带辱骂了一把 SAP (
    domodomo
        79
    domodomo   2 天前   ❤️ 1
    首先,c#并没发展的不好
    其次,c#比 java 好用多了
    最后,楼主你的井口可能需要挖大一点了
    iConnect
        80
    iConnect   2 天前 via Android
    有一定的道理,go 语言流行,和名字简单直接贴切
    hoyixi
        81
    hoyixi   2 天前
    相搞通用,又扭扭捏捏只限定自家的平台, 说白了就是初期“假开放”,错过时机。
    Cbdy
        82
    Cbdy   2 天前 via Android
    Jobs: 微软最大的问题是品味太差
    slack
        83
    slack   2 天前 via Android   ❤️ 1
    当时的微软可是敌视开源的,万圣节文件可见一斑。C#初期同样也是基于这种思维下的产物
    James369
        84
    James369   2 天前
    印度程序员
    zjlin1984
        85
    zjlin1984   2 天前
    @abersheeran 赞成这个说法。
    StephenHe
        86
    StephenHe   2 天前
    不懂就问,C#不等于.Net
    Mithril
        87
    Mithril   2 天前 via iPhone
    @StephenHe 不,.Net 平台上的第一方语言还有 VB 和 F#。
    zwh418346771
        88
    zwh418346771   2 天前   ❤️ 1
    C#不卷,养老贼舒服
    passerbytiny
        89
    passerbytiny   2 天前 via Android
    原因一,整个.Net 都只支持 Windows 平台,意味着占领免费服务器领域决大份额和付费服务器领域不少份额的 Unix/Linux 平台,想用都用不了。

    原因二,唯一的开发工具,Visual Studio,在相当长一段时间内没有免费梯度的版本。
    yolee599
        90
    yolee599   2 天前
    @StephenHe #86 C# 是一个程序语言,.Net 是一个运行环境
    ragnaroks
        91
    ragnaroks   1 天前
    个人理解

    1:VS 收费
    2:SQLServer 太贵

    只能用 windows 的对于企业来说根本不是问题
    huijiewei
        92
    huijiewei   1 天前
    从 .NET 1.1 搞到 4.0 的表示,再搞 .NET 我就是。。

    .NET CORE 吹的再牛都无视
    zerofancy
        93
    zerofancy   1 天前
    应该多少有点关系。我当年开始学编程的时候找教程搜索引擎中还不能打“C#”(井号会消失),而我又不知道可以打“C Sharp”,这是我没入坑的重要原因。
    ddup
        94
    ddup   1 天前
    C# 不卷。
    visonme
        95
    visonme   1 天前
    从语言,框架层面说不好的估计是没怎么用或者没怎么了解的

    你要说不跨平台,这个我倒是可以理解,毕竟那是历史,有时间不妨看看这两年 NET 的发展,还是有点惊喜的 。

    至于不火,至少国内是这样,市场需求摆在那,至于原因,这已经不是语言的锅了。


    写 NET 还是挺不错的,当年用 WPF 做 3D,多媒体应用还是很溜的,现在偶尔也用 NET 写写跨平台的东西还是挺舒服的,

    至于生态,其实这两年已经很好的,至少在我个人的项目和工作中是所需求的基本都能找到,不知道你们是个啥情况
    关于   ·   帮助文档   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1965 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 03:33 · PVG 11:33 · LAX 20:33 · JFK 23:33
    ♥ Do have faith in what you're doing.