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

感觉.NET 比 Java 难多了

  •  1
     
  •   KJH · 141 天前 · 8366 次点击
    这是一个创建于 141 天前的主题,其中的信息可能已经有所发展或是发生改变。

    是我太菜么。

    最近学习了.net 感觉.NET 比 java 难好多。

    比如我要开发 WinForms 窗体应用 需要学习 WinForm 、.net Framework 我要开发 WPF 应用,需要学习 XAML 、.net Framework 我要开发 WebAPI ,需要学习.net core 然后.net core 还分 3.1 4 5 6 7 8 ,一年一个版本 要开发 web 应用,需要学习怎么在前端结合 c#代码一起写

    而 java ,我只需要 springboot 一把梭

    还是我学习新东西的能力太差

    第 1 条附言  ·  140 天前
    谢谢各位大佬。

    不得不说 net 的官方文档确实非常 nice ,确实是我浅见了,以后学东西还是要善于发现他的优点,持之以恒
    63 条回复    2024-08-06 12:36:22 +08:00
    Flybear
        1
    Flybear  
       141 天前   ❤️ 1
    是你学习能力太差。

    WinForm 已经是过去式了,没有特别需求不推荐用。WPF 与 WinUI 3 的 XAML 很多特性都通用,MVVM 一把梭。
    版本推荐用在支持的 LTS ,除非你有支持老系统的需求。
    default996
        2
    default996  
       141 天前 via Android
    最近也在自学 dotnet
    idragonet
        3
    idragonet  
       141 天前   ❤️ 1
    有 GPT 了,我感觉开发语言障碍小多了。
    akira
        4
    akira  
       141 天前
    如果你已经有某个语言的基础, 那学新语言的时候,先带目的的入门。 不要妄想上来就全线学
    qping
        5
    qping  
       141 天前 via Android
    要过一遍官网教程,有些东西不了解一些,那处处是魔法
    watzds
        6
    watzds  
       141 天前
    @Flybear #1

    以前的 MFC 更难,我当时就是觉得难才学的,知道过时了😂
    Nosub
        7
    Nosub  
       141 天前 via iPhone
    c#不是难,是乱,是语法糖太多,版本迭代太快了,可是架不住程序员喜欢,这点我觉得 Java 远比 c#好。
    sagaxu
        8
    sagaxu  
       141 天前   ❤️ 15
    “比如我要开发 WinForms 窗体应用 需要学习 WinForm 、.net Framework 我要开发 WPF 应用,需要学习 XAML 、.net Framework 我要开发 WebAPI ,需要学习.net core 然后.net core 还分 3.1 4 5 6 7 8 ,一年一个版本 要开发 web 应用,需要学习怎么在前端结合 c#代码一起写”

    就算你 SpringBoot 一把梭,
    开发 GUI ,不也得学 Swing/AWT/SWT/JavaFX ?
    开发 Web 不还得学 SpringMVC/JPA/...么?说不定还要学 Quarkus/Vertx/micronaut...?
    JDK 版本也不少啊,还有不同厂商的打包版本,外行一看也好复杂啊。

    我觉得.net 这种一站式解决方案,该有的东西,微软都给你整好了,文档和功能性能都非常不错啊。
    Arthit
        9
    Arthit  
       141 天前
    net core 直接学习 8 就行,之前的过世了,不支持了
    KJH
        10
    KJH  
    OP
       141 天前
    @Flybear 确实学习能力不太行,只想看着视频学,

    @default996 共勉


    @idragonet 那倒是,有啥不懂的可以直接问,不像以前还需要找资料


    @akira 哈哈哈哈 我是还没会走,就想跑


    @qping 我是大概过了遍文档,了解了写法,然后跟着视频敲


    @watzds 这是啥远古技术。。。。是不是比我都大 哈哈


    @Nosub 对对对 我就在想 一年一个版本,岂不是年年都要学


    @sagaxu 最起码开发了这么多年 都是 springboot 一把梭,都给集成好了。


    @Arthit 那有的公司还在用 framework 的咋入职。 winform wpf 不需要单独学么
    none
        11
    none  
       141 天前
    你所用的 Java 只是用来开发 Web 服务吧? 那确实只需要学习 Spring 那一套。

    Java 从一开始就是桌面应用,Web 应用,嵌入式全方面发展的,分别为 JavaSE, JaveEE, JaveME 。后来 Web 发展的比较快,所以就带火了 Structs ,Spring 这些框架。
    国外选择用 Java 开发的桌面应用也不少,主要是跨平台比较方便。
    嵌入式这一块以前 JavaME 在手机上用的也比较多,后来 iOS/Android 智能机出来后,JavaME 就没落了,但 Android 上的原生编程语言也是用 Java 开始的。
    KJH
        12
    KJH  
    OP
       141 天前
    @none 是的 一直是 web 服务,其他的都没落了 就没学过
    nikenidage1
        13
    nikenidage1  
       141 天前
    不是你说别的或许还有那么一丁点道理,你说.net 一年一个版本。。。。。但是你知道 Java 是一年两个版本吗。。。。。。
    xianghaolin
        14
    xianghaolin  
       141 天前 via Android
    边用边学
    maigebaoer
        15
    maigebaoer  
       141 天前 via Android
    直接 dotnet 6 开始学就行了
    lisongeee
        16
    lisongeee  
       141 天前   ❤️ 2
    好奇开发窗体应用怎么用你说的 springboot 一把梭
    yb2313
        17
    yb2313  
       141 天前
    donet 要火
    agdhole
        18
    agdhole  
       141 天前   ❤️ 1
    springboot 你怎么一把梭 gui ?

    .net core 3.1 到 .net 8 升级起来就是顺手的事,更新日志半小时就看完了,又不是颠覆重构,为啥要学。

    难道前端结合 java 一起写代码就不用学了吗?
    page470075640
        19
    page470075640  
       141 天前 via iPhone
    我六月份用 gpt 帮我写 rust ,提了个 prisma-engine 的 PR ,最近被 merge 了🤣
    lsk569937453
        20
    lsk569937453  
       141 天前
    好了。知道你没用过 java 开发过 gui 了。
    yuhuai
        21
    yuhuai  
       141 天前
    我寻思 dotnet 就算一月一版本又咋样,java 版本号刷的这么快,有谁每次都升级版本的
    sks4728
        22
    sks4728  
       141 天前
    实际上只需要 .net8 winfom web wpf maui 一把梭
    KJH
        23
    KJH  
    OP
       141 天前
    @nikenidage1
    @lisongeee
    @agdhole
    @lsk569937453

    好吧 看来是我太菜了,之前写东西都是舍我其谁的太多,原来只是井底之蛙罢了。。。知道的越多,才明白与别人的差距有多大
    KJH
        24
    KJH  
    OP
       141 天前
    @agdhole 那学.net8 之后能上手 3.1 么, 我理解公司项目应该不会迭代这么快把
    GiantHard
        25
    GiantHard  
       141 天前   ❤️ 1
    @KJH #24 其实没啥太大区别,3.1 的 API 是 .net 8 的子集。可能有些 Framework (比如,ASP.NET Core ) 的变化比较大,但是很久之前的 MVC 模式都是兼容的
    seakingii
        26
    seakingii  
       141 天前   ❤️ 1
    @KJH "那学.net8 之后能上手 3.1 么, 我理解公司项目应该不会迭代这么快把" 可以的

    实际上可以直接用 最新的,没有什么问题, .NET 的质量还是有保证的,一个大版本正式上线前有 N 个测试版本在跑很久了.我从来都是用最新的.
    wxw752
        27
    wxw752  
       141 天前
    前年支援公司基于.net 的会议软件项目,几天就上手跟着敲了。
    seakingii
        28
    seakingii  
       141 天前
    .NET 这边越新的版本,功能越好.


    我一直想有的一个功能 ,就是 能用 GO 一样 AOT 编译网站项目, 目前还不是很行. 但随着几个大版本更新,可能会越来越好.
    seakingii
        29
    seakingii  
       141 天前
    另外, 越新的版本, 运行速度越快. .NET 团队会不断的优先底层逻辑.
    programApe
        30
    programApe  
       141 天前
    我朋友 c#其他公司的,我 java ,他时不时发些别处看到得 java 缺陷得文章在群里艾特我😂他这种 winform 都不用好多年了,早转 vue 了。反而我们公司一些年纪比较大的早年 c#转 java 的现在有些项目还喜欢用 winform 。
    wanguorui123
        31
    wanguorui123  
       141 天前
    JAVA 入门难后期提升容易,NET 入门简单后期提升很难
    zhangdawei
        32
    zhangdawei  
       141 天前
    .net 好用,职位少,09 年到 15 年断断续续弄了好些年,最后转了
    jimrok
        33
    jimrok  
       141 天前
    .net 主要是从.net framework 跨越到.net core 历史遗留的问题太多了,生态上有巨大的鸿沟,也造成了混乱。如果分清楚了,找到合适的资料,还是比较容易的。
    kandaakihito
        34
    kandaakihito  
       141 天前   ❤️ 4
    典中典之 Java === Spring
    ShuWei
        35
    ShuWei  
       140 天前
    spring boot 一把梭真的算是好处吗
    xubingok
        36
    xubingok  
       140 天前
    springboot 只能写后端啊...
    你这界面都带上了,等于前后端都做,本来就需要了解很多东西.
    sq955
        37
    sq955  
       140 天前
    刚毕业那会,学的 C#,感觉挺难的,学会了感觉也就那回事🤣
    yangzzzzzz
        38
    yangzzzzzz  
       140 天前
    https://docs.avaloniaui.net/zh-Hans/ 可以试试这个或者 winui3 。winform wpf 适合做偏底层/硬件交互 对 ui 要求不高的程序
    janus77
        39
    janus77  
       140 天前
    你要开发的东西太多了,你用 java 开发 GUI 、写 socket 应用、网络中间件类试试,不是一样要学一大堆
    silencil
        40
    silencil  
       140 天前
    这大概率是因为你已经熟悉了 Java 这一套,相当初入行的时候从 Jsp 、servlet 、ssm 再到的 springboot\spring cloud ,有些东西也是过时了,但是网上大堆的人告诉你要学 jsp servlet (当然,我觉得 servlet 学了是有好处的),因为不知全貌,只能是都学,一大堆的东西也是花了特别多的时间。
    xubeiyou
        41
    xubeiyou  
       140 天前
    这恰恰就是 Java 现在还是主力语言的原因- - 以前 jsp 的时候 一堆配置 很恶心的 。
    xujinkai
        42
    xujinkai  
       140 天前 via Android
    我先学的 C#,Java 就看不进去了,觉得太罗嗦😂
    aw2350
        43
    aw2350  
       140 天前
    知道.net 为什么 越老越没落了吧
    hewiefsociety
        44
    hewiefsociety  
       140 天前   ❤️ 1
    我怎么感觉。net 简单,java 真的看不进去
    EndlessMemory
        45
    EndlessMemory  
       140 天前
    楼主能说说如果想快速一个月入门 Java 后端的话应该学啥
    nevermoreluo
        46
    nevermoreluo  
       140 天前
    用.net 搞过两三个项目
    感觉用 vs 上手.net 干活极快,有点基础就能干活,之前有个项目组都是其他语言转的同学看了两天直接干活的,没有负担

    .net 这一套我想要吐槽的只有
    - framwork 升级到 core 难受,历史包袱受限可以理解
    - gui 框架太杂了,跨平台方案现在都没个定论,但是 win 上 wpf 确实好用,简单的直接 mfc 也行
    - asp 那一套不习惯,看着难受
    - 微软文档虽然啥都告诉你,但是有时候有点绕,干活来不及看
    OMGZui
        47
    OMGZui  
       140 天前   ❤️ 1
    都有 GPT 了,哪个都不难
    catch
        48
    catch  
       140 天前
    一把梭这么厉害啊
    ZhLTE
        49
    ZhLTE  
       140 天前
    .net 向下兼容性非常好,你只需要学最新的版本,之后每年的更新也只需要了解新增的特性
    kxg3030
        50
    kxg3030  
       140 天前
    .net 万金油 能用的地方太多了 学起来当然难(主要指各种开发生态) 学了还会忘
    chinni
        51
    chinni  
       140 天前
    java 我觉得最大麻烦就是 各种方法套啊套 ((( ))) 太多了 netcore 就比较好一些
    decimal 加减乘除 还有 大于小于 这种 我 net 那么多年了 看 java 实在不太习惯.....(
    2020diyige
        52
    2020diyige  
       140 天前
    说实在的,用过 php,java ,delphi,,等。。实际用过 c#之后真的觉得太方便了,用的太舒服回不去了,
    siweipancc
        53
    siweipancc  
       140 天前 via iPhone
    .net 太好用了,三天上手写游戏 mod ,一星期 web 开发,桌面开发也是很快,内部回收比 java 牛逼大了
    xiaozhouyou
        54
    xiaozhouyou  
       140 天前
    嘿嘿我现在上班就在写 WinForm ,,工业软件超级老
    maymay5
        55
    maymay5  
       140 天前
    熟练使用 LLM ,你可以以 java 的提问方式让 LLM 帮你翻译成 C#代码,或者给你提供 C#的实现方法,很简单的,其他的都是些操作习惯和概念性的问题,不想深究你就记住就行,C#就该怎么怎么操作,怎么怎么写
    nightsky
        56
    nightsky  
       140 天前
    你 springboot 一把梭的地方也可以用 asp.net core 一把梭,springboot 只对应 asp.net core ,

    你带上 winform 和 xaml 干啥。。。

    而且.net core 你会用 3.1,难道不能直接用 5 6 7 8 吗?
    最后,.net core 没有 4 这个版本,
    0v5k3Pm87Rf6g7Sd
        57
    0v5k3Pm87Rf6g7Sd  
       140 天前
    不是这个人是钓鱼的吧,还真把一群人钓鱼了
    guanzhangzhang
        58
    guanzhangzhang  
       140 天前
    @ZhLTE 为什么我电脑安装了 net8 ,然后有个 21 年软件 net6 的 exe 无法运行,点开就让我安装 net6
    ZhLTE
        59
    ZhLTE  
       140 天前
    @guanzhangzhang 这不是很正常的依赖策略吗... 你需要找作者把依赖升级下就行了,几乎是不需要改动代码的
    mxT52CRuqR6o5
        60
    mxT52CRuqR6o5  
       140 天前
    一个窗体应用一个后端服务也没可比性啊
    eraserrain
        61
    eraserrain  
       140 天前
    老项目被拉过来写 .net framework 4.2 ,看了网上 .net 8 教程,非常清晰舒服,但回过来看老项目的 framework 4.2 跟吃了屎一样难受。
    bigcat133
        62
    bigcat133  
       139 天前
    语言没啥关系,想学直接做个项目吧
    COOOOOOde
        63
    COOOOOOde  
       139 天前 via Android
    主要需要有东西驱动。我这几天在捣鼓 radarr ,想加个迅雷下载的下载器,但我的接口不符合里面规范,不得已就去改他源码,发现是.net ,迫不得已开始学习。总体下来还算流畅
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5219 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 01:18 · PVG 09:18 · LAX 17:18 · JFK 20:18
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.