V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
woahishui
V2EX  ›  程序员

.net Task 有感

  •  
  •   woahishui · 2020-01-20 11:03:02 +08:00 via Android · 3710 次点击
    这是一个创建于 1788 天前的主题,其中的信息可能已经有所发展或是发生改变。
    刚刚学习 Task 用了以后我被深深地折服了,什么 golang,c++,如同过眼云烟。
    26 条回复    2020-02-12 00:00:08 +08:00
    ddup
        1
    ddup  
       2020-01-20 11:24:32 +08:00   ❤️ 1
    体会到了 Anders Hejlsberg 的语言设计水准了吗。
    codewarrior
        2
    codewarrior  
       2020-01-20 11:50:35 +08:00 via Android
    tpl 确实比较整洁
    rioshikelong121
        3
    rioshikelong121  
       2020-01-20 11:55:46 +08:00
    展开讲讲
    GM
        4
    GM  
       2020-01-20 12:24:49 +08:00
    然后上班时还是得老老实实写 sh!t 一样的、六十年代风格的 go 代码。
    zhuangzhuang1988
        5
    zhuangzhuang1988  
       2020-01-20 12:42:42 +08:00
    而且还有牛逼的调试器加成,(.net 第三方生态做不出, 部分原因是内部 /官方做得太完善.)
    chanchan
        6
    chanchan  
       2020-01-20 13:20:23 +08:00   ❤️ 1
    安德斯 永远滴神!
    jakezh
        7
    jakezh  
       2020-01-20 13:32:56 +08:00 via iPhone
    用的舒坦
    nannanziyu
        8
    nannanziyu  
       2020-01-20 13:34:51 +08:00
    其实 c++ 里也有,微软的 ppl
    在 msvc 下面也可以 async / await
    ZSeptember
        9
    ZSeptember  
       2020-01-20 14:39:34 +08:00
    不就是 async/await 吗。
    zhuangzhuang1988
        10
    zhuangzhuang1988  
       2020-01-20 14:49:41 +08:00
    @ZSeptember 远比 async/await 多的
    比如进度条, 怎么 cancel, 怎么超时 cancel. 都有一定规范的
    别的库要么提供不完善, 要么不好用, 更有的直接不提供,导致各种使用方式都有
    微软的还有个很好的 Disposable 接口
    rxjava 上来内部就有补充.net 本来就有的功能
    MinQ
        11
    MinQ  
       2020-01-20 15:14:18 +08:00
    C#的语法是真的吹爆,配合宇宙第一 IDE 各种舒爽



    可惜在国内坟头草快两米高了(狗头)
    crclz
        12
    crclz  
       2020-01-20 15:23:17 +08:00
    @chanchan Java !暂时的神!


    @ZSeptember async/await 是 c#最先引进的,并且 async/await 是语法糖,实质是 Task 概念
    TangMonk
        13
    TangMonk  
       2020-01-20 15:31:58 +08:00 via iPhone
    Anders Hejlsberg 还是牛逼,可惜了 delphi.
    Rwing
        14
    Rwing  
       2020-01-20 15:39:45 +08:00
    为为数不多的 C#主题点赞
    pursuer
        15
    pursuer  
       2020-01-20 15:41:19 +08:00
    c++听说也快出无栈协程了。Java 日常加特性很保守,而且加上了也不知道 android 之类的什么时候才支持,kotlin 就挺好,不动 jvm 也加了不少语法糖。go 毕竟“大道至简”,不说了
    sarlanori
        16
    sarlanori  
       2020-01-20 16:14:43 +08:00   ❤️ 1
    在 Java 里要执行一个异步任务的时候感觉好麻烦,在 C#里就是 Task+lambda 几句代码的事,虽然最终都能达到效果,但 C#真的优雅方便多了,可惜在国内不受待见。
    FeifeiJin
        17
    FeifeiJin  
       2020-01-20 16:48:45 +08:00
    @zhuangzhuang1988
    这个我真的太同意了。
    但这个点完全是双刃剑,没得社区,真的无法繁荣。
    t123yh
        18
    t123yh  
       2020-01-20 16:53:09 +08:00 via Android   ❤️ 1
    个人认为 golang 的 goroutine 比 async/await 优越,因为没有传染性。
    Athrob
        19
    Athrob  
       2020-01-20 16:58:27 +08:00
    @FeifeiJin #17 你的头像, 交个朋友吧
    FeifeiJin
        20
    FeifeiJin  
       2020-01-20 17:09:36 +08:00
    @Athrob
    哈哈,倒是可。
    但我并没有太玩这个旧游戏哦。
    695975931
        21
    695975931  
       2020-01-20 18:06:45 +08:00   ❤️ 1
    Anders Hejlsberg 牛逼!!!
    Athrob
        22
    Athrob  
       2020-01-20 18:15:43 +08:00
    @FeifeiJin #20 有 tg 吗
    beyondex
        23
    beyondex  
       2020-01-21 08:43:49 +08:00 via Android
    除了 Task,前端的 MVVM 架构是 .NET 最先在 WPF 发明的,async await 语法糖也是 .NET 发明后很多语言引入。
    wanguorui123
        24
    wanguorui123  
       2020-01-21 13:29:05 +08:00
    async await 唯一不足就是 IDE 能自动补齐就好了
    mmdsun
        25
    mmdsun  
       2020-01-21 13:32:52 +08:00 via Android
    async /await ,Rx 系列,LINQ,扩展函数 ... c#语法厉害了。之后不少语言都效仿 c#的特性
    forgottencoast
        26
    forgottencoast  
       2020-02-12 00:00:08 +08:00
    Dataflow (Task Parallel Library),这个更精美,性能也是杠杠的。
    我第一次感受到框架的设计美学是 Windows Workflow Foundation 框架.
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   860 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 21:47 · PVG 05:47 · LAX 13:47 · JFK 16:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.