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

感觉.NET 比 Java 难多了

  •  1
     
  •   KJH · 2024-08-04 20:26:05 +08:00 · 10267 次点击
    这是一个创建于 393 天前的主题,其中的信息可能已经有所发展或是发生改变。

    是我太菜么。

    最近学习了.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 条附言  ·  2024-08-05 09:20:19 +08:00
    谢谢各位大佬。

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

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

    以前的 MFC 更难,我当时就是觉得难才学的,知道过时了😂
    Nosub
        7
    Nosub  
       2024-08-04 21:30:56 +08:00 via iPhone
    c#不是难,是乱,是语法糖太多,版本迭代太快了,可是架不住程序员喜欢,这点我觉得 Java 远比 c#好。
    sagaxu
        8
    sagaxu  
       2024-08-04 21:40:41 +08:00   ❤️ 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  
       2024-08-04 21:49:35 +08:00
    net core 直接学习 8 就行,之前的过世了,不支持了
    KJH
        10
    KJH  
    OP
       2024-08-04 22:19:35 +08:00
    @Flybear 确实学习能力不太行,只想看着视频学,

    @default996 共勉


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


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


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


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


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


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


    @Arthit 那有的公司还在用 framework 的咋入职。 winform wpf 不需要单独学么
    none
        11
    none  
       2024-08-04 22:34:48 +08:00
    你所用的 Java 只是用来开发 Web 服务吧? 那确实只需要学习 Spring 那一套。

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

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

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

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

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


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

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

    你带上 winform 和 xaml 干啥。。。

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