V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
TangMonk
V2EX  ›  .NET

.NET Core 感觉比 Golang 好啊

  •  1
     
  •   TangMonk · Jan 7, 2018 · 50010 views
    This topic created in 3032 days ago, the information mentioned may be changed or developed.

    也可以跨平台编译,性能也和 golang 差不多,而且 c# 比 golang 更好用,还有 VS 这种很方便的 IDE

    137 replies    2019-07-26 13:53:17 +08:00
    1  2  
    fyooo
        101
    fyooo  
       Jan 8, 2018
    『.NET Core 感觉比 Golang 好啊。也可以跨平台编译,性能也和 golang 差不多,而且 c# 比 golang 更好用,还有 VS 这种很方便的 IDE 』


    同意题主的观点,可惜没机会用,业界的开源生态没有太多.NET Core 的第三方库。
    darrh00
        102
    darrh00  
       Jan 8, 2018
    @hjc4869 呜,CentOS 6 被加入鄙视行列了。 我们的生产服务器还有一堆 CentOS 5。。

    不过 rhel6 明明在支持的列表 https://docs.microsoft.com/en-us/dotnet/core/rid-catalog
    我的 dotnet 版本为 2.1.3,却无法给 rhel.6-x64 打包:
    ```
    /usr/local/share/dotnet/sdk/NuGetFallbackFolder/microsoft.netcore.app/2.0.0/build/netcoreapp2.0/Microsoft.NETCore.App.targets(19,5): error : Project is targeting runtime 'rhel.6-x64' but did not resolve any runtime-specific packages for the 'Microsoft.NETCore.App' package. This runtime may not be supported by .NET Core.
    ```

    不得不吹几句 Go:
    1. 打出的单个文件,又干净又清爽,
    2. 可执行文件小很多,(当然对我来说,还是有点偏大),
    3. 没有 libc 的依赖,
    4. windows xp 都还在被支持的行列里
    nannanziyu
        103
    nannanziyu  
       Jan 8, 2018
    @darrh00
    dotnet core 内置的 Kestrel 可以直接开放端口外部使用,但官方建议用 nginx 来反代
    另外 dotnet core 系统要求在这里 https://docs.microsoft.com/en-us/dotnet/core/linux-prerequisites?tabs=netcore2x
    wekw
        104
    wekw  
       Jan 8, 2018
    跨平台不足,go 就是 网络 C,跨平台能力不是一般的强。。。。
    eaglexiang
        105
    eaglexiang  
       Jan 8, 2018 via Android
    @TangMonk 你说的是加-r 参数以后的效果,而且其实-r 参数的作用就是把目标平台的 core 库拷贝一份,再生成一个可执行程序调用你的.dll 文件
    hjc4869
        106
    hjc4869  
       Jan 8, 2018 via iPhone
    @darrh00 没鄙视 CentOS 6,不过 scd 确实没法跑 CentOS 6 上,CentOS 6 缺的东西太多了都要手动编译。
    CentOS 5 今年就结束支持了,支持的必要性不大。

    你说的 golang 的优点从来没哪个说过 .NET 能胜过,不过现在有 docker 部署什么都是一键了。连 ruby 那么麻烦的东西现在都没人抱怨部署了。
    huobazi
        107
    huobazi  
       Jan 8, 2018
    同意楼主观点
    hst001
        108
    hst001  
       Jan 8, 2018
    两种语言我都有用,都很喜欢,各有优劣,不吹了
    abcbuzhiming
        109
    abcbuzhiming  
       Jan 8, 2018
    @hujianxin 继承本来就不是对象范式里必须的东西,它只是学术界在第一次面向对象范式崛起热潮时加进去的,最初的对象范式只有以下描述“程序的最小组织单位是对象,对象彼此之间发消息来组合完成功能”,压根就没对象什么事情。当年 C#之父其实就不想要继承这个特性,最后是屈服于市场才加进去呢,而且现在这个时代,学术界才关注继承封装多态这些玩意,工程界关注的是“组合”,这也是为啥 golang 的接口模式大受欢迎的原因
    ifsclimbing
        110
    ifsclimbing  
       Jan 8, 2018
    同意楼主观点
    zengyuxi
        111
    zengyuxi  
       Jan 8, 2018
    @wuethan 敢问大佬,做了什么软件和站点,能发出来,让小弟弟们摩拜一下吗?
    lbp0200
        112
    lbp0200  
       Jan 8, 2018
    要性能,C
    要生态,Java
    要开发速度,Ruby、Python、PHP
    huangsw
        113
    huangsw  
       Jan 8, 2018
    @jeremaihloo #91
    不会写 .net 的 java 程序员不是好 pythoner
    itfanr
        114
    itfanr  
       Jan 8, 2018
    @CatCode 可惜了
    atcdef
        115
    atcdef  
       Jan 8, 2018
    我也这么觉得,然而微软的船不好上啊,谁知道会不会哪天不玩了?
    ruchee
        116
    ruchee  
       Jan 8, 2018
    我觉得楼主说的很有道理,所以呢?微软家的技术,能不用就不用,不要问我为什么
    halFKing
        117
    halFKing  
       Jan 8, 2018
    上微软的船很多年,出来一看才知道世界这么大,这么灿烂
    0Kelvin
        118
    0Kelvin  
       Jan 8, 2018
    哎,公司用.Net看到.Net Core 算是一丝希望吧,希望能火!!! T_T
    qq1054000800888
        119
    qq1054000800888  
       Jan 9, 2018
    Golang 语言级别支持协程,并很好利用多核
    编译速度快
    与 C 交互很方便,这些不是. net core 能比的
    至于泛型,这些以后会加上,但是 .net core 想引入 golang 的协程就不可能了,除非废除线程,但是不可能
    TangMonk
        120
    TangMonk  
    OP
       Jan 9, 2018 via Android
    karlakte
        121
    karlakte  
       Jan 9, 2018
    微软的船不好上,这船要么开得太慢跟不上其他船,要么开得太快然后沉了
    asuraa
        122
    asuraa  
       Jan 9, 2018
    微软技术变得太快。。。。追不上啊
    mosliu
        123
    mosliu  
       Jan 9, 2018
    .net core 好东西啊!!
    然而我选择 go 和 java。。
    zhujiulin
        124
    zhujiulin  
       Jan 9, 2018
    .NET 本身是好东西, 但是生态太差。 跨平台的语言多了,delphi 还可以跨所有平台呢
    另外我觉得 go 的语法很优美很干净啊
    loqixh
        125
    loqixh  
       Jan 9, 2018
    @TangMonk await 不仅是差不多, 而且是更强大, go 是 M:N 而.net 不仅能 M:N 还能自定义实现 1:N 那些说要.net 引进协程的, 真不知说什么好
    TangMonk
        126
    TangMonk  
    OP
       Jan 9, 2018 via Android
    @loqixh 但是 Task 不太好类似 channel 那样通信啊
    loqixh
        127
    loqixh  
       Jan 10, 2018
    @TangMonk 这个简单 比如用 corefxlab 里的 System.IO.Pipelines 基本和 channel 一样, 以前命名都叫 channel 来着
    wuethan
        128
    wuethan  
       Jan 10, 2018
    @TangMonk

    用 c# winform 做的魔兽 Dota MH 外挂 https://github.com/wuethan/wjewar
    wuethan
        129
    wuethan  
       Jan 10, 2018
    @TangMonk 不过这个一分钱也没赚 刚毕业做的玩的 网上都有魔兽 3 的内存基址和偏移 照猫画瓢 当时很火的小众软件 被 11 禁了
    wuethan
        130
    wuethan  
       Jan 10, 2018
    @bestkayle 大概我的意思是 学好 c#可以做很多终端软件包括网站 微软的集成很智能 推崇的东西也很流行 而 php 和 asp 是比较早的语言 有一定的局限性
    wuethan
        131
    wuethan  
       Jan 10, 2018
    @zengyuxi 嗯...商业的 .net2.0 做的 M1 发卡串口通信软件配合 充电桩、闸门 卡储值消费的,自助终端机纸币器串口通信充值和消费的会员系统,asp.net 微信 H5 站和公众号集成开发 小程序 等等... 截图就算了。
    KgM4gLtF0shViDH3
        132
    KgM4gLtF0shViDH3  
       Jan 10, 2018
    @wuethan #130 要说做的多还是 js 厉害,前端后端移动端,pc,mac 端都行,哈哈。
    zonghua
        133
    zonghua  
       Jan 26, 2018
    @luodaoyi @karlakte "这船要么开得太慢跟不上其他船",也可能微软开着开着无聊自己把船凿沉然后换名叫神舟。
    @bestkayle UWP 支持 C# C 艹 VB.NET Javascript
    hez2010
        134
    hez2010  
       Jan 30, 2019 via Android
    @LukeEuler dotnet publish -c Release -r linux-x64 可以发布无需 runtime 的自托管 app
    downstairs
        135
    downstairs  
       Apr 28, 2019
    go 但论性能,和C#不相上下。但C#开发速度是GO的十倍。。。
    whevether
        136
    whevether  
       May 6, 2019
    jon
        137
    jon  
       Jul 26, 2019
    .net 本来就比 go 好,可惜了
    1  2  
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3190 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 96ms · UTC 14:28 · PVG 22:28 · LAX 07:28 · JFK 10:28
    ♥ Do have faith in what you're doing.