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

求助各位用 Windows 笔记本的程序员

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

    现在打算换电脑,觉得 32G 的 mac 性价比不高,想买 Windows 。于是最近一个月尝试在 Windows 做开发,说实话,Windows 太难用了。然后尝试用 wsl2 ,想把环境全迁移到 wsl2 上,却发现一堆问题,看到之后就不想折腾。最后想到了可以在 VMware 上装个虚拟机。 所以就想问下各位大佬,你们开发环境是全放在虚拟机上吗?连 ide 都放到虚拟机里吗?

    121 条回复    2022-07-30 19:41:31 +08:00
    1  2  
    GentleFifth
        1
    GentleFifth  
       250 天前 via Android
    难用指的是什么难用?
    FYFX
        2
    FYFX  
       250 天前
    你是用什么语言开发,用的开发工具是什么呢,考虑换 Linux 开发吗
    luozic
        3
    luozic  
       250 天前   ❤️ 3
    难用? 难道是开发 js vue 的? c++/java/c#等不应该啊。
    cmdOptionKana
        4
    cmdOptionKana  
       250 天前
    说具体问题吧
    wangkun025
        5
    wangkun025  
       250 天前
    对我来说,性能差异太大了。
    hhhanako
        6
    hhhanako  
       250 天前
    可以考虑黑苹果。i5-12490, rx 6600, 32g 内存 1t ssd 。 总共 6500 块左右,咸鱼 80 块找个人远程+自己安装,耗时 3 小时左右
    squarefong17
        7
    squarefong17  
       250 天前
    直接 Arch Linux + KDE ,Golang + Vue 暂时没啥问题,Goland 和 Webstorm 都有 Linux 原生版本。你要是喜欢全局菜单,KDE 也可以通过设置调出来,而且 Jetbrain 有支持,搜一下很多 KDE 仿 macos 的教程。有国内 IM 需求再开 Wine 或虚拟机。。。
    churchill
        8
    churchill  
       250 天前   ❤️ 9
    我怎么觉得相比 windows/linux mac 作为开发更难用
    写个 opengl 都得降版本
    thedrwu
        9
    thedrwu  
       250 天前 via Android
    dual boot 或者 windows 放虚拟机
    seaswalker
        10
    seaswalker  
       250 天前
    Windows 配置下开发 Java 还好吧,不过 Java 性能确实低在 Windows
    Ranni
        11
    Ranni  
    OP
       250 天前
    @GentleFifth 喜欢用命令行解决的事,不喜欢点点点。。。。。 外加熟悉 Linux 指令了,不想学 win 的 cmd 了。。。。
    jackmod
        12
    jackmod  
       250 天前
    又搞 wsl 又搞虚拟机,还是直接装 linux 吧,比如 mint 。而且现在 uefi 安装,双系统也不难。能不折腾就不折腾。
    Noicdi
        13
    Noicdi  
       250 天前 via iPhone
    @Ranni #11 什么语言,做什么方向的开发啊。我主要 Linux c/c++ wsl2 用着很顺手
    Ranni
        14
    Ranni  
    OP
       250 天前
    @Noicdi Java+vue/react 还有一点 golang
    LowBi
        15
    LowBi  
       250 天前 via Android
    我开发都放在虚拟机里了,宿主机就是玩游戏,想加内存了,目前 16g ,奈何现在 DDR5 还是太贵了
    arch9999
        16
    arch9999  
       250 天前 via iPhone
    试试 vagrant 或 multipass
    Suddoo
        17
    Suddoo  
       250 天前   ❤️ 6
    Windows 挺好用的,各种软件都支持 Windows, 开箱即用,不用浪费时间解决各种乱七八杂的问题,效率高多了
    hackpro
        18
    hackpro  
       250 天前 via iPhone
    我也反复折腾过 可以把 Linux 作为主力
    Windows/macOS 丢虚拟机里面跑
    如果需要同时跑 可以看看 ESXI
    Maboroshii
        19
    Maboroshii  
       250 天前 via Android
    搭车问一下 windows 有什么好用的终端吗,用来连虚拟机当 linux 用的
    rpish
        20
    rpish  
       250 天前 via Android
    为什么不直接装 Ubuntu ?用不惯 wsl 的话。
    rpish
        21
    rpish  
       250 天前 via Android   ❤️ 1
    @Maboroshii Windows terminal
    imycc
        22
    imycc  
       250 天前
    开发环境全发虚拟机里面
    java 的 ide 我不熟,react/vue 的开发可以用 vscode 的远程开发来解决,编辑器在本地,代码运行在虚拟机里。按理说这个特性其他 IDE 也有才对。
    终端用 xshell ,windows 官方也有终端,但我用起来有点小毛病,算了。
    me221
        23
    me221  
       250 天前
    +1 讨厌 Windows


    Windows 的防火墙我到现在没用明白
    chensuiyi
        24
    chensuiyi  
       250 天前   ❤️ 3
    @Maboroshii #19 windTerm

    tramm
        25
    tramm  
       250 天前
    直接装双系统嘛
    shoaly
        26
    shoaly  
       250 天前
    我跟你正在做相反的事情, 我正在从 win 切换到 mac , 连一个好用的支持标签的 ssh + rdp 客户端都还没找到, 举步维艰
    linglin0924
        27
    linglin0924  
       250 天前
    @arch9999 multipass 支持镜像 /容器的导入导出吗?假如我配置好了一个镜像,怎么复用?
    skies457
        28
    skies457  
       250 天前
    wsl2 直接 code 命令弹出 Windows 里的 vscode 很方便呀,还能 localhost 直接访问 wsl2 里开放的端口
    GentleFifth
        29
    GentleFifth  
       250 天前 via Android
    @Ranni PowerShell+Windows Terminal 也没那么难用吧,只是开发的话就那么些命令
    ncepuzs
        30
    ncepuzs  
       250 天前
    #11 scoop( https://scoop.sh/ ) 和 winget ( https://docs.microsoft.com/en-us/windows/package-manager/winget/ ) 了解一下

    除了网络互访和 IO 性能,WSL2 应该还好吧……
    skies457
        31
    skies457  
       250 天前
    但我选择买个 VPS 当 devbox ,再也不用担心忘记 git push 了(逃
    dcsuibian
        32
    dcsuibian  
       250 天前   ❤️ 3
    Java 、Vue 、React 用 Windows 开发都没啥问题,跨平台。Golang 没用过。
    不推荐主力用虚拟机,毕竟性能终归比不上宿主。

    别用 cmd ,用 powershell (最好是最新版的跨平台 PowerShell 7 ,pwsh )。
    Windows 上开发的最大问题是 Windows 非常不 unix 。
    bthulu
        33
    bthulu  
       250 天前
    必须 macbook 啊, 我开发.net 都是在 mac 上开发, windows 上的 visual studio 实在太难用了
    join
        34
    join  
       250 天前   ❤️ 4
    楼主可以看看我的经历:
    妄想这可以用 wsl 完全替代一个 Linux
    https://www.v2ex.com/t/791142#reply59
    然后我逃离到了 Linux
    https://www.v2ex.com/t/794193?p=2#reply144
    一年多了,再也不想回去了。工作除了不能用微信以及会议软件的屏幕共享外,开发体验远超其他平台。更重要的是买电脑再也不用卖肾了。
    https://liyafu.com/2021-08-17-keep-away-the-fancy-tool/
    BeautifulSoap
        35
    BeautifulSoap  
       250 天前   ❤️ 3
    不建议装虚拟机,因为到头来你会发现体验不一定比 wsl2 好多少。
    我的所有开发环境包括 ide 都在 wsl2 里,反正 wsl2 的图形界面解决办法很多( wslg ,vnc ,rdp 之类的),比你装虚拟机然后用虚拟机那拉垮的虚拟显卡强多了( wsl2 用了 hyperv 的黑科技,里面的显卡性能和原生一样,这是你装什么虚拟机达不到的)
    如果想要 linux 的桌面环境,那么可以试试 wsl2 的 kali linux ,开箱即用给了你 N 种解决办法

    https://www.kali.org/docs/wsl/win-kex/
    wu67
        36
    wu67  
       250 天前
    开发环境或者试试 docker 那套, 至于系统层级上的东西, 受不了的那确实没办法.
    另外如果没有移动需求, 可以考虑 mini 或者 studio, 性价比比笔记本要好一点.
    pigspy
        37
    pigspy  
       250 天前
    你装个 ubuntu 啥的 linux 桌面不就行了
    FrankHB
        38
    FrankHB  
       250 天前
    我是 Windows11 的 SB2 (这个实例有毒,Win10 时就 80072F8F 没法自动更新和进商店,更新 Win11 便笺也废了,一直懒得全新重装),因为屏幕好使,远程 Win10 的 G14 ,开发环境 MSYS2+WSL1(Arch+KDE)。VMWare 备用。
    只要日常不是写内核驱动 /FUSE/systemd/个别系统调用 /依赖显卡加速或具体外设 /非 x64 应用,WSL1 基本爆杀全场,还不用担心滚挂……(虽然但是最近 node SIGILL 挂了好像还没解法)……最欠抽的小文件性能也比原生 Windows 强得多。原生 Windows 和 WSL2 或者虚拟机都要吃点各种性能的亏,要再快你就基本只能直接原生 Linux (但反过来要部署到 Windows 就基本得要虚拟机了,Wine 还是太感人)。
    smdbh
        39
    smdbh  
       250 天前
    还是 32G mac 吧,能节省很多时间
    rpish
        40
    rpish  
       250 天前
    @skies457 好奇问一下,远程主机( terminal 用 ssh 连接了),也可以用 code 命令弹出 VSCode 窗口编辑吗?
    Suddoo
        41
    Suddoo  
       250 天前 via iPhone
    命令行和图形化界面的优劣、看情况吧

    比如,Git 解冲突,图形化界面比命令行好用多了,效率提升百倍
    leeg810312
        42
    leeg810312  
       250 天前 via Android   ❤️ 17
    我在公司里用公司机器 Windows 系统,家里用 Mac ,用个操作系统而已,有什么难的,一个个说这个难用那个难用,我看就是技术不够好,做开发只要一些基本操作又不需要你精通操作系统的运维。部署服务器是 Windows ,就 rdp 远程,服务器是 Linux ,用 mobaxterm 或 Windows terminal 访问,都挺好用的
    zxCoder
        43
    zxCoder  
       250 天前
    我之前也一段时间折腾 linux ,觉得命令行比较好,后来又换回 windows
    TcDhl
        44
    TcDhl  
       250 天前
    楼上的怎么都感觉有点点偏题

    我给你个参考建议, 自己用的是 Dell Precision 7760, 当时买的时候除了自己想要的屏幕, 硬盘-内存-显卡都可以联系客服选最低配置, 然后自己升级内存( 128G )和硬盘( 512G + 1T*3 ), 差不多接近 5W 元

    然后再弄个塔式服务器,可以自己配置, 或者买个二手的, 装的 ESXI, 解决掉异地组网, 服务器就随便你放哪里

    在我个人看来, 先开开心心开发, 是要有点点成本的

    至于我为啥还要弄个服务器, 是因为不想很多乱七八糟的开发软件, 开发环境在 C 盘中无休止的占用, 哪怕软件本体装在其他盘, 反正很少有软件能意识到把它运行后产生的缓存-配置文件等这些控制权交给用户的
    janus77
        45
    janus77  
       250 天前
    额,你为什么不试试最简单的方法:直接装 linux 系统?
    你换 win 笔记本的原因是因为性价比不高。所以只需要硬件是 windows 即可,系统不一定非得 windows 啊
    但是你又想有*nix 系的体验,又不想虚拟机、wsl 这类折腾,为何不直接把 linux 装成主系统?
    chaleaochexist
        46
    chaleaochexist  
       250 天前
    vscode
    ssh remote
    aaa5838769
        47
    aaa5838769  
       250 天前
    ida+ssh VMware 虚拟机开机
    RockShake
        48
    RockShake  
       250 天前 via Android   ❤️ 4
    如果换个系统一些小问题都搞不定,那估计不太适合搞开发
    wxw752
        49
    wxw752  
       250 天前
    我在家经常换着用,想起来开哪台就用哪台,什么操作系统敲个需求而已,不都是一样的吗,又不是让我去研发 JDK 。。。
    caoayu
        50
    caoayu  
       250 天前
    windows 装各种桌面软件,ide ,调式工具,文本工具,等,虚拟机只装 linux 等系统,使用共享目录或者直接 ftp 进行代码同步,开发环境 windows ,虚拟机中都可以装,其实就相当于虚拟机是你的服务器了,平时怎么使用就怎么来
    dingwen07
        51
    dingwen07  
       250 天前 via iPhone
    WSL2 很方便啊,有什么问题吗
    u823tg
        52
    u823tg  
       250 天前
    @ncepuzs #30 wsl2 io 性能现在改善的不错了。
    x02
        53
    x02  
       250 天前   ❤️ 1
    开发什么都没讲, 是开发苹果软件吗? 什么难用也没讲, 是不习惯没有 itunes 的日子吗?
    towave
        54
    towave  
       250 天前
    wsl2 解决一切问题
    Knuth
        55
    Knuth  
       250 天前 via iPhone
    @rpish 可以
    akira
        56
    akira  
       250 天前
    windows 的优势就是点点点,你不喜欢的话 考虑下直接装个 linux 吧。。。
    linux server 版本,全命令行,ide 都木有
    hijoker
        57
    hijoker  
       250 天前
    我就是在 win 的虚拟机里跑 vmware ,docker ,ide 什么的都在里面
    liuhan907
        58
    liuhan907  
       250 天前
    @bthulu
    额,我第一次见有人觉得在 Windows 上用 VS 开发 C#程序比 Mac/Linux 还难用的。
    ipcjs
        59
    ipcjs  
       250 天前
    @FrankHB 不是吧,WSL1 不是在 Windows 上实现的 Linux 的系统调用吗?怎么文件性能还会比 Windows 快的🤔
    ipcjs
        60
    ipcjs  
       250 天前
    用的 WSL1+zsh+Windows Terminal+scoop+Android Studio ,
    WSL2 上面各种网络文件、互访问题着实折腾
    Macolor21
        61
    Macolor21  
       250 天前
    有些人习惯 windows ,有些人习惯 Mac ,为什么总要把自己的习惯强加给别人呢?我想不明白
    charlie21
        62
    charlie21  
       250 天前 via iPhone
    你居然去想。
    mikewang
        63
    mikewang  
       250 天前
    可以尝试 MSYS2 ,内置 Bash ,能和 VSCode 配合得很好。还可以用 pacman -S 直接安装软件包。
    https://www.msys2.org
    rpish
        64
    rpish  
       250 天前 via Android
    @Knuth 可以问下怎样配置吗?或者该搜索哪些关键字?
    因为我找了很长时间,还是不知道该怎么做。
    dfkjgklfdjg
        65
    dfkjgklfdjg  
       250 天前   ❤️ 1
    从 Win ↔ Mac/Linux 切换只是会有一点点习惯上的不适应罢了,只看你愿不愿承受重新适应新环境这个成本了。
    Win 开发到现在 6 年了啥问题都没有,没有什么难用的感觉,只是续航和屏幕质量没办法和 Mac 比。

    不过既然都选择了 win 本子了,用不惯装个 Linux 不就结了,装个系统才多大点事。
    20015jjw
        66
    20015jjw  
       250 天前 via iPhone
    上班的话是不是应该让公司给你买 mac…
    HankLu
        67
    HankLu  
       250 天前
    开发啥啊你,人工智能?
    placeholder
        68
    placeholder  
       250 天前
    当然是纯 linux 开发环境了,之前强迫症的时候,装了个 manjaro 的最小环境,桌面 UI 都没有的,

    还在 win 系统上搞虚拟机干什么,费劲吧啦的,你又不是专门搞虚拟机的,就那一大堆配置,搞死你
    takashiki
        69
    takashiki  
       250 天前
    我是机器上只装基础工具类应用,像 git 、docker 、vscode 、tabby 之类,然后所有涉及环境的都自己搞个 docker 镜像,用 docker-compose 搞个常用的 workspace ,换新机器只要装好 docker 然后 docker-compose up -d 就好。
    vcfvct
        70
    vcfvct  
       250 天前 via Android
    @Maboroshii
    alacritty 很好用,设置也可以跨平台。
    villivateur
        71
    villivateur  
       250 天前 via Android
    我用 Windows 搞开发了好几年,然后因为特殊原因需要转到 Ubuntu ,我能在一天内研究并整理出一套高效舒适的开发环境。
    不是我吹牛,可能只是你技术菜而已。厉害的开发者,给你个拖把都能写出漂亮的毛笔字
    msaionyc
        72
    msaionyc  
       250 天前
    真习惯了命令行,就虚拟机里搭一套,然后 IDEA 或者 VSCode 开 remote 远程到虚拟机开发吧,不完全在虚拟机里开发的原因是图形性能确实差点,UI 交互稍微卡点就会很难受。做好版本控制,其他没什么问题了

    另外,楼上人身攻击的这些人非常 low ,可无视
    klesh
        73
    klesh  
       250 天前
    习惯 linux shell ,最爽的还是直接用 linux ,什么东西都能通过 cli 来控制 。
    不得不用 windows 的话,wsl2 还凑合啊,能执行 .exe 文件,docker 也支持。应该比虚拟机方便才对。
    yixinlove
        74
    yixinlove  
       250 天前
    如果不是特别特殊的开发人群,就是那种专业软件只能某个操作系统有的,那么哪种开发系统都可以,不要太过于关注系统,你可以尝试去熟悉它,毕竟系统不是你写的,如果它足够开放,能让你调教的很顺手,那么就挺好,如果都不能,就只能你适应。

    Windows 、Mac 和 Linux ( Arch / Manjaro )我都用过,后台开发,也写过 JS ,现在( 2022 年)来讲配个环境,稍微熟悉下,都能满足我的需求。可能也是没有太多定制化的需求吧。

    建议以开放的心态来看
    leighton
        75
    leighton  
       250 天前
    开 hyper-v ,hyper-v 创建 external virtual switch ,linux 放 hyper-v 里,这样你的 linux 也有独立内网 ip ,给 linux 选上动态内存。不需要 linux gui 的直接 windows terminal ssh 和 VScode remote ssh 就行了。需要 gui 的再买个 X410 ,把用的软件比如 IDE 都 X11 forward 出来。intellij 系的 appearance -> use custom font 调节字体大小会同步缩放 UI ,和 X410 搭配完美。
    raptor
        76
    raptor  
       250 天前
    格掉装 linux
    lepig
        77
    lepig  
       250 天前
    @shoaly 是的。win 上的软件生态用久了,突然切换到 mac 还得适应。 很多以前 win 上的肌肉记忆的操作都得放弃重新适应。
    ShadowPower
        78
    ShadowPower  
       250 天前
    开发环境全放 WSL2 上,办公、协作全放 Windows 上。在 WSL2 里使用图形界面,不用在 WSL2 里访问 Windows 目录下的文件。
    关于“却发现一堆问题,看到之后就不想折腾”这一点,其实换到什么都会遇到。无非是对某些平台已经特别熟悉,遇到问题已经轻车熟路了……

    我的情况可能还跟大多数人不太一样,我属于换到 mac 之后会发现不少问题的唯一解法只有“远程调试”。
    zxxufo008
        79
    zxxufo008  
       249 天前
    wsl2 不好用还有 wsl1 啊
    input2output
        80
    input2output  
       249 天前 via iPhone
    那你不如用 Linux 作为操作系统了
    2exploring
        81
    2exploring  
       249 天前
    就我周围人而言,除了写的程序是给 Windows 跑的,清一色 MAC 。
    我是用 Windows 的,因为 VS 。
    shoaly
        82
    shoaly  
       249 天前
    @lepig 我按键切换其实都还好, 就是软件生态很难受.... win 那边有的 mac 这边会缺
    xiangyuecn
        83
    xiangyuecn  
       249 天前
    “Java+vue/react 还有一点 golang” #14 🐶🐶🐶 懒得说话了
    jorneyr
        84
    jorneyr  
       249 天前
    去年用了一年左右的 Windows 开发,把 uTools 、Zeal 和 AutoHotkey 这 3 个软件用好了会舒服很多。
    后来继续用 Mac ,感觉差距没那么大了。
    100Percent
        85
    100Percent  
       249 天前   ❤️ 1
    @RockShake #48 如果 28 岁前没有年薪百万或者 50w 美金,那估计不太适合做这行
    100Percent
        86
    100Percent  
       249 天前   ❤️ 2
    @RockShake #48 BTW , 看了你的网站,没见过这么烂的😂
    100Percent
        87
    100Percent  
       249 天前
    题主只是觉得搞这些浪费时间,又没说搞不出来,不知道楼上某些人怎么得出的结论楼主搞不出来。。。逻辑都不过关,怪不得 35 被开😂
    leeg810312
        88
    leeg810312  
       249 天前 via Android
    @100Percent OP 说自己想买 Windows 系统电脑,一个月尝试在 Windows 做开发都还没有搞出来自己想要的环境?要多久才算搞不出来呢
    100Percent
        89
    100Percent  
       249 天前
    @leeg810312 #88 op 是纯纯的花了一个月搞配置环境,还是每天 code 10 小时只在晚上抽 10 分钟研究一下? OP 说 wsl 一堆问题看着不想折腾,那么 OP 是出于觉得浪费这点时间成本不划算导致的不想折腾,还是出于太难了不想折腾?从 OP 的提问并不能得到这些信息,因此不能得出结论 OP 很菜
    macha
        90
    macha  
       249 天前
    我觉得 windows 开发还好。可能我主要工作都是写 C++和 python 的原因吧。
    Nasei
        91
    Nasei  
       249 天前
    @100Percent 楼主说了半天也没说明白哪里难用,连开发啥都不知道,你们就没必要根据自己的喜好站队了吧
    Knights
        92
    Knights  
       249 天前
    新系统总是要花时间和精力适应的,以下是个人看法:
    VMware 、Hyper-V 都用,但是只用来运行垃圾软件;
    wsl2 没在开发机上用,嫌它太占内存,性能也有点问题;
    windows 自带的杀软比较弱智,编译时杀毒进程会占用巨量的 cpu ,如果出现这种情况建议换杀软;
    win 本建议明年再买,5nm zen4 要出了。
    tianxin8431
        93
    tianxin8431  
       249 天前
    我也不喜欢 windows 做开发,cmd 下的命令和 bash 不一样+偶尔的一些奇奇怪怪的问题+一些和 linux 不相同的行为搞得人很心累。当然这些问题不是解决不了,但我选择用 mac 和 linux 。举个例子,之前帮朋友调 windows 下的 Django 问题,明明代码改了,走的却还是旧的逻辑。调了俩小时发现,windows 下同一个端口可以有多个进程同时监听,他那边旧进程没停,就算改了代码,新的请求都打到旧实例上了,这谁能想到啊。
    leeg810312
        94
    leeg810312  
       249 天前 via Android
    @100Percent 又不是搞运维,配置开发环境还要多久?你搭建调优环境每天花几个小时?开发工作的效率和环境密切相关,要么集中几天搞定,要么逐步微调,谁不是这么做的?一个月都没有解决主要问题,影响心情和工作效率一个月,好有耐心呢
    Dragonphy
        95
    Dragonphy  
       249 天前
    看你干嘛的吧,做个前端,WSL2 完全能胜任。Java 后端扯不到 Linux 环境,最多写个 MAVEN 命令。至于运维部署都是远程机了。
    HFX3389
        96
    HFX3389  
       249 天前
    @chensuiyi #24 这个好像不是完全开源的是部分开源、逐步开源...
    xiaochao666
        97
    xiaochao666  
       249 天前 via Android
    为什么难用呢
    RockShake
        98
    RockShake  
       249 天前
    @100Percent ?这么玻璃心的么,还要开小号
    Nasei
        99
    Nasei  
       249 天前
    @tianxin8431 你可能不知道 linux 3.9 之后也支持 reuseport
    RockShake
        100
    RockShake  
       249 天前
    之前的回复如果不小心 AOE 到了某些玻璃心这里表示抱歉
    1  2  
    关于   ·   帮助文档   ·   博客   ·   nftychat   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   实用小工具   ·   3493 人在线   最高记录 5556   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 58ms · UTC 04:10 · PVG 12:10 · LAX 21:10 · JFK 00:10
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.