V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
fox0001
V2EX  ›  Visual Studio Code

[请教] Java 开发过渡到 VSCode 的障碍

  •  
  •   fox0001 · 317 天前 via Android · 5911 次点击
    这是一个创建于 317 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我们主要是 Java 开发。最近公司迁移开发工具,统一用上 VSCode 。使用上,渐渐适应起来了,但是有一点还是很难适应。

    以前用 Eclipse 、IntelliJ IDEA ,针对文件的操作,包括查看属性、查看引用、版本操作( SVN 或 git )等等,都是在同一个文件树进行操作。VSCode 却不行,针对 N 种操作有 N 课树,包括项目文件夹、Java 项目、版本管理等等。操作起来需要切换来切换去。

    疑问:

    1. 是否有插件满足需求?起码在同一棵文件树,可以查看文件属性、版本状态(新增、修改、冲突、未更新等)、进行版本管理(提交、更新、强制回滚等)、对比历史版本等。
    2. 或者说,是不是我的开发思维需要更新,需要更新到 VSCode 的方式?
    55 条回复    2023-06-12 12:21:14 +08:00
    MeteorCat
        1
    MeteorCat  
       317 天前 via Android
    这不是自己找罪受吗?
    Pitttttt
        2
    Pitttttt  
       317 天前
    这。不用 idea 能理解毕竟收费,用 eclipse 也行啊,为啥要用 vscode
    kid1412621
        3
    kid1412621  
       317 天前   ❤️ 1
    建议自己玩 6 vim/neovim ,然后给拍脑袋的 leader 说往这上面迁
    btw 不知道 gitlens 能否满足你的要求
    fox0001
        4
    fox0001  
    OP
       317 天前 via Android
    @Pitttttt #2
    1. 不知道为什么,最近 Eclipse 卡了,敲代码慢半拍的那种卡。
    2. 免费的 VSCode ,有太多唱好的声音,肯定想试试。很多操作都比 Eclipse 流畅。
    3. VSCode 插件太丰富,就跟当年 Eclipse 一样。
    4. 想一个 VSCode 满足项目开发。目前,前后端和数据库,都有对应插件。
    5. 实在不行,就退回去,也不是不能用…
    yazinnnn
        5
    yazinnnn  
       317 天前
    联合同事向你们技术主管抗议
    cs419
        6
    cs419  
       317 天前   ❤️ 1
    为啥不用 IDEA 社区版
    anzerwall
        7
    anzerwall  
       317 天前
    java 和 c 建议不要用 vscode 找罪受 前端和其他语言可以用 vscode 挺好的
    fox0001
        8
    fox0001  
    OP
       317 天前
    @anzerwall #7 其实用了一段时间,觉得还行。你那边,使用上,有哪些不适应?或者觉得不好用的地方?
    fox0001
        9
    fox0001  
    OP
       317 天前
    @cs419 #6 IntelliJ IDEA 社区版,针对 Java 开发,是可以的。但是要做其它开发,又得切换别的工具或 IDE 。当然,大家都懂,针对性的工具肯定是最好的。上面的想法是,统一使用 VSCode ,减少学习成本。
    fox0001
        10
    fox0001  
    OP
       317 天前
    @kid1412621 #3 VIM 的话,我个人觉得是快捷键做得好,熟悉后能提高编辑文本 /代码文件的效率,而且可以脱离鼠标。一些属性图形界面 IDE 的同事,可能不好切过去。你是觉得有哪些其它的优点,值得推荐?
    fox0001
        11
    fox0001  
    OP
       317 天前
    @kid1412621 #3 刚才回复有误:
    一些属性图形界面 IDE 的同事 --改为-> 一些熟悉图形界面 IDE 的同事
    Alias4ck
        12
    Alias4ck  
       317 天前
    @anzerwall c 用 vscode 挺好用的吧
    xmt328
        13
    xmt328  
       317 天前
    有没有可能 IDEA 和 Eclipse 就是比 VSCode 在 java 开发上更好用
    fox0001
        14
    fox0001  
    OP
       317 天前
    @xmt328 #13 我个人从习惯上来说,是。
    yazinnnn
        15
    yazinnnn  
       317 天前
    好蠢的领导, 建议越级报告一下
    Hurriance
        16
    Hurriance  
       317 天前
    很奇怪,为啥会需要统一 IDE ,难道不是只需要代码本身吗,如果是涉及静态代码检查,也应该可以集成到 CI/CD 的过程,实在想不出需要统一 IDE 的目的。

    在前司,有些老同事还是用的 Eclipse ,也有用 IDEA 的,至少在我们的开发过程中并未感到明显的冲突。
    fox0001
        17
    fox0001  
    OP
       317 天前
    @Hurriance #16 开发团队不大,工作内容是全栈。不是每个同事都积极尝试新事物,而且每个人适应新事物的速度也不同。使用一个通用 IDE ,能避免接到新工作才去学习,一定程度上降低学习成本。目的,更多的是强迫团队去学习。大概是这样吧。
    XiLingHost
        18
    XiLingHost  
       317 天前   ❤️ 1
    我的建议是,不要强迫团队成员使用某种特定的 IDE
    考虑把
    .vscode
    .idea
    .project
    这些 IDE 特定的东西都加入.gitignore 里,然后团队成员各自用自己喜欢的 IDE 配置
    harrozze
        19
    harrozze  
       317 天前   ❤️ 1
    @kid1412621 #3 这是要坑全队? vim/neovim 的普及程度还没那么高吧,学习门槛还是挺陡的
    cheng6563
        20
    cheng6563  
       317 天前
    何苦呢,vscode 现在就是不如 eclipse ,更不如 idea 社区版了。idea 社区版装个 spring boot 提示插件照样用。
    Jirajine
        21
    Jirajine  
       317 天前   ❤️ 2
    这确实是 vscode 对插件在 UI 扩展上面的规范,所以还是要用户适应新的使用习惯。
    上次尝试 vscode 开发 Java 项目最大的问题是性能,Java 插件好像用的 eclipse 一样的后端,莫名的卡,虽然 UI 不卡顿但很多功能相应都很慢,不知道现在如何了。
    @anzerwall cpp 要看具体项目,但 c 的话装个 clangd 简直不要太爽。
    RRRSSS
        22
    RRRSSS  
       317 天前
    IDEA CE 啊
    neochen13
        23
    neochen13  
       317 天前
    @cheng6563 #20 老哥方便说一下插件名吗?
    fox0001
        24
    fox0001  
    OP
       317 天前
    @Jirajine #21 终于蹲到一个认真的回复。感谢老哥!

    卡顿的话,打开 VSCode 时,插件读取检测 Java 项目,这个会卡个十几秒吧。然后查找文件、跳转文件等,都没卡顿的感觉。

    另外,UI 扩展的规范,有没有官方文档?方便向上汇报。或者我去找找……
    Jirajine
        25
    Jirajine  
       317 天前
    @fox0001 我记得上次用的时候,随便点个 go to definition ,UI 上显示了个等待的进度条,两三秒后端才相应。
    限制主要是为了让扩展不影响 UI 的响应、扩展只能在 UI 上添加允许添加的组件,确保一致性和避免相互冲突。
    具体能添加哪些看 API 文档,这里有段简短的介绍 https://code.visualstudio.com/api/extension-capabilities/overview#restrictions
    liuhuansir
        26
    liuhuansir  
       317 天前
    @Jirajine 我最近就切到 vscode 了,目前的版本没感觉代码跳转会卡几秒,速度跟 idea 差不多,不过 idea 开发 Java 贴心的小功能,vscode 肯定就不能指望了
    wangxiaoaer
        27
    wangxiaoaer  
       317 天前 via iPhone
    @fox0001 上面是沙雕,不同场景用不同的工具不是很正常,按照上面的思路,下一步是不是统一开发语言,前、后、脚本都用一样的?
    shalk
        28
    shalk  
       317 天前
    这不是相当于计算器换算盘?
    zxCoder
        29
    zxCoder  
       317 天前   ❤️ 1
    vscode 你把他当作一个编辑器和前端 IDE
    silentsky
        30
    silentsky  
       317 天前 via Android
    脑残的决定吧,之前我也考虑从 eclipse 迁移到 vscode ,结果卡死,接近 100 个工程只有 eclipse 能 hold 住
    cnzjl
        31
    cnzjl  
       317 天前
    我今天也试了下 vscode ,有个项目是 kotlin+java 混合开发的,kotlin 的代码也在 src/main/java 下,idea 用着没撒问题,vscode 死活没法导包(无法识别
    roundgis
        32
    roundgis  
       317 天前 via Android
    統一 ide 的想法很奇怪
    potatowish
        33
    potatowish  
       317 天前 via iPhone
    这用什么 IDE 公司也要管吗???,保持代码风格一致即可,你们这公司管理层多半是脑子有包
    wyssurvivor
        34
    wyssurvivor  
       317 天前
    我就是从 idea 转到了 vscode 。我倒没碰到你这些问题,因为我日常只用这些工具来编辑代码,代码中快速跳转,其他的基本都是命令行。
    工具应该选择自己趁手的,不觉得全公司统一迁移是必要的,无非就是在.gitignore 里多加几行。
    ppcoin
        35
    ppcoin  
       317 天前
    这边建议您离职 :doge:
    fpure
        36
    fpure  
       317 天前
    @kid1412621 人家 vscode 都玩不溜你家让人玩 vim ???真不知道该怎么说你们这些 vim 魔怔人
    fpure
        37
    fpure  
       317 天前
    我现在就是在用 vscode 写代码,感觉除了分析大项目会有性能问题之外别的感觉都还不错
    PerFectTime
        38
    PerFectTime  
       317 天前
    什么 xx 公司限制干活的工具
    YuTengjing
        39
    YuTengjing  
       317 天前
    gitlens
    humpy
        40
    humpy  
       317 天前 via iPhone
    真是没事找事。我用了七年 idea ,要让我换 vscode ,我是不想干了
    chor02
        41
    chor02  
       317 天前
    我就是重其他 ide 到 vscode ,还不错吧,多个编辑器使用的话各种快捷指令太乱,宁愿 all in one
    RuLaiFo
        42
    RuLaiFo  
       317 天前
    java 开发用 vscode ,确实想不通,公司会差那一点订阅的钱吗😂。
    byte10
        43
    byte10  
       317 天前   ❤️ 2
    其实楼主也说明了原因情况,但是很多人 固执不听。。。

    楼主回答:开发团队不大,工作内容是全栈。不是每个同事都积极尝试新事物,而且每个人适应新事物的速度也不同。使用一个通用 IDE ,能避免接到新工作才去学习,一定程度上降低学习成本。目的,更多的是强迫团队去学习。大概是这样吧。

    这理由不是完全没道理的。我就是因为全栈开发而迁移到 vscode 上的,我从 21 年就开始用 vscode 的,前后端开发体验一致,快捷键也差不多。而 vscode 的远程开发优越性,有一些场景下真的绝了。比如一个 docker 就能把环境搭建起来了,所有的研发人员 都在局域网上直接连接到一台洋垃圾主机上 64 核,给 20 个前后端 同时开发都没问题吧。客户端给你随便一个 n100 小主机,随便造。你回家后随便一个 vpn 回公司,打开 vscode 就可以直接调试处理问题。

    当然这强制使用 vscode 当然是不太友好,我以前的定的方案是:建议大家使用 idea ,你不可以不使用 idea ,那么出现的配置问题,环境问题,自行解决。统一开发 IDE 其实就是为了避免开发中遇到的一些配置问题能够快速解决。比如我之前用的是 vscode ,但是我跟别人讨论问题,我还是会用 idea 打开跟他们讨论,也是为了大家更好的阅读和理解。

    vscode 跟 idea 是没法比的,不管是功能性和流畅度(我感觉有点卡,也可能是远程的原因)、开发效率体验上都是 idea 强。不过 vscode 满足日常开发是没问题的,要不是因为前端也在 vscode 上开发,我也未必会迁移过来。

    关于文件树的话,我是建议用项目文件夹,忽略 java 项目树就好了。git 的话没啥问题啊,idea 也是不同的界面管理 git 分支的,而且 vscode 的 git 插件比 idea 更直观一些,功能基本没太大差别。
    kid1412621
        44
    kid1412621  
       316 天前
    @fox0001 #10 ideavim/vscodevim
    @harrozze #19 打引号 @fpure #36 引号
    vm97
        45
    vm97  
       316 天前
    80 万行+ Java 项目 目前用 vscode, 只有一点无法解决:dot 连接目录包无法识别,其他 ok
    lguan
        46
    lguan  
       316 天前
    换领导!
    Chieh
        47
    Chieh  
       316 天前
    Jetbrain 的 git 图形客户端相当好用,vsc 的最难用
    RRRoger
        48
    RRRoger  
       316 天前
    vscode 写 java 真就算了
    xyjincan
        49
    xyjincan  
       316 天前
    vscode 有个 "源代码管理" 看当前本地修改全部信息挺好的呀
    Masoud2023
        50
    Masoud2023  
       316 天前
    第一次听说还有公司强制使用开发工具的
    biubiuGolang
        51
    biubiuGolang  
       315 天前
    @Hurriance 在做客户端插件的时候 要做不同客户端的 就要命..
    hellodudu86
        52
    hellodudu86  
       315 天前
    vscode 安装 git graph 、git history 、gitlens 三个插件,你的需求都能在 source control 这个页签下的到满足。
    siweipancc
        53
    siweipancc  
       315 天前 via iPhone
    什么时候换记事本,
    真是,开发效率不够低
    ciki
        54
    ciki  
       315 天前
    @fox0001 IDE 和编辑器还是有区别的,光一个代码调整 VSCode 就没法满足
    ciki
        55
    ciki  
       315 天前
    @ciki 跳转
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5797 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 01:54 · PVG 09:54 · LAX 18:54 · JFK 21:54
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.