Nodejs开发环境建议:真心建议在window下开发Nodejs的同学们都转向linux下开发。

Nodejs开发环境建议:真心建议在window下开发Nodejs的同学们都转向linux下开发。

以前我是在windows下做开发,后来转到了liunx。深深的体会到了,在windows下的各种不便,以及与之相比的liunx下的各种便捷。

liunx的世界美妙而神奇,几乎只有你想不到的没有你做不到的。

希望身为windows用户的你也能加入到liunx下。

当然,你也可以反驳我,说说你的理由?

67 回复

Node.js 开发环境建议:真心建议在 Windows 下开发 Node.js 的同学们都转向 Linux 下开发

背景介绍

以前我是在 Windows 环境下进行 Node.js 开发的,但后来我决定转向 Linux 环境。这一转变让我深刻地感受到了在 Windows 环境下的诸多不便,以及与之相比在 Linux 环境下的各种便捷之处。

Linux 环境的优势

  1. 命令行工具:Linux 提供了强大的命令行工具,如 grepsedawkfind 等,这些工具可以极大地提高开发效率。
  2. 包管理器:Linux 操作系统通常配备有强大的包管理器,如 Debian 的 apt-get 或 Red Hat 的 yum,这些工具可以帮助开发者轻松安装和管理软件包。
  3. 文件权限管理:Linux 的文件权限管理机制非常强大,这对于开发和部署来说非常方便。
  4. 跨平台兼容性:在 Linux 上开发 Node.js 应用程序更容易确保在其他类 Unix 系统上的兼容性。

示例代码

假设我们需要编写一个简单的 Node.js 脚本来处理日志文件,我们将使用 Linux 命令行工具来简化这个过程。

# 在 Linux 终端中,我们可以使用以下命令来查看最新的日志条目
tail -n 10 /var/log/syslog

# 我们可以将这个命令集成到 Node.js 脚本中,使用 child_process 模块执行外部命令
const { exec } = require('child_process');

exec('tail -n 10 /var/log/syslog', (error, stdout, stderr) => {
    if (error) {
        console.error(`执行出错: ${stderr}`);
        return;
    }
    console.log(`最新日志条目:\n${stdout}`);
});

结论

尽管在 Windows 环境下开发 Node.js 也是可行的,但在 Linux 环境下开发 Node.js 可以带来更多的便利和更高的开发效率。希望你能考虑转向 Linux 环境进行 Node.js 开发。

如果你有任何不同的意见或理由,欢迎在评论区留言讨论!


我在想会有很多人会说 Mac, 原因我也不知道, 我是 Linux 用户. Linux 环境的命令行操作用惯了, 虽然设计也不够先进, 但受不了 Windows 的简单… 就当 Windows 是 IE, Linux 是 Chrome + WebStore

同意,装一个虚拟机支持镜像,方便又快捷

补充一下,很多免费的vps都是linux系统,所以linux还是有必要会操作一下的

每次听人说起windows,都有一种恍如隔世的感觉,哈哈哈

有机会试一试,请大神指点

开发环境mac,速度很快,服务器centos

观点很赞同。

而且,确实很多人用的可能都是Mac,当然我也是。

好吧,找个非IT女友。就不会有恍如隔世的感觉了。哈啊哈

是可以这么说,但是装gyp就像装visual stdio一样。而且对于入门用户或许还是不懂。

;)

可以写篇文章介绍介绍。

哪里有「很多」免费的vps?

vps用linux是因为它可以完全不需要图形界面,系统本身消耗的资源极少,而且大部分程序效率很高,特别是大部分的服务器软件,基本上都是杀手级应用,这方面windows比不了。

另外就是linux基本都有完备的包管理系统,一条命令即可升级整个系统,这大大减少维护的成本,也可以保证服务器的安全性

我也觉得 mac 是较好的开发平台。

我也推荐mac,别光看性能、编译之类的东西,除了本身就是天然的unix外,mac的快捷键、触摸板、键盘手感和布局、操作系统和各种软件的UI,会让开发的时候心情大好的。

公司里用的是mac mini,奇慢的速度和奇卡的效果让我非常不适应,求mac专业用户指导为什么mac没开一个应用都会卡一段时间,关键是时间远长于windows和linux。我现在自己在用的开发环境是ubuntu,除了难看和不兼容中国特色之外其他方面还是很棒的。

追捧 ubuntu

以前的mac mini是不是本来性能就不好?配置一直好像比mbp之类升级慢半拍,磁盘也应该是笔记本磁盘。

我以前的黑苹果也是卡卡的,后来买的i5的mbp一点问题没有。

总结一点就是发这篇话题最要是因为看到很多话题是说windows下使用nodejs

我自己看大伙的评论总结一点就是:

自己有钱就买个mac,如果有公司标配就更好。但是没钱没标配,那就ubuntu了。;)

支持ubuntu~

如果还有游戏娱乐等需求的话用虚拟机也可以,现在的机器虚拟机跑个ubuntu都很快。如果攒电脑按别人总结的黑苹果配置配,配上苹果的键盘触摸板也没问题。

我觉得问题不大吧,我装ubuntu只是防止自己玩游戏

大家也不要迷信ubuntu,linux在民用的表现上跟windows没法比是事实,但是在linux上进行开发可以学到很多用windows学不到的东西,也会省去很多windows会碰到的麻烦。

这里应该不存在民用

Linux 没有 IE 有时候会囧到… 但 Windows 不方便连接和管理服务器

免费的vps?

恩,也是最近在linux 下学习开发的, 结果一发不可收拾, 深深的爱上linux

我每天还会用windows来做页面自动化测试和浏览器兼容性测试的。。。

还有每月还信用卡的时候。。。

windows下面现在的支持已经很不错了

ubuntu 应该开个在用OS投票帖统计下 hoho

能不能抽时间描述下从windows转到linux开发node后,都经历了哪些步骤,遇到了哪些问题呢? 比如说在linux下推荐使用哪些编辑器这些。。和windows下开发的最大区别。 真心对linux使用很少,最近在windows上遇到些问题发现在linux上不存在,所以也想转linux上去开发,先了解下前人的这些转变过程~:)

我用的mini感觉很好啊,你是不是内存不够啊,默认的好像才2G的样子,我升到8G了

很实在,同求,对Linux很感兴趣

这个不用建议,谁都能看出来哪个系统用nodejs方便,但是现实中没有那么多理想情况,用来开发nodejs的机器可能还要用来开发windows程序,甚至有可能项目组用的很多老资源都在vss上面。楼主这种是基于理想主义的建议实在是没有必要。

俺就是先在windows里跑linux,再在linux里跑nodejs,聊胜于无啊

windows做node开发最大的好处是可以用webmatrix ide。比我在linux下用eclipse+aptana好用

我觉得有好的 IDE 就好,我是用的是 Mac,IDE 是花钱买的 WebStorm,非常好用。

正式部署放到 Linux 上比较好,因为 node 对 Linux 是首选的支持,而且 Linux 作为服务器环境,更加简介稳定高效。

Linux 上使用 git 和 rsync 做软件部署非常方便,在 windows 上就很难。

作为做编译器和理论的苦逼男表示:OS 和我们的世界相距十万八千里啊……

mac,linux 都好 都是 unix下面的, 我主机是 macpro 15 retina,然后加一台 debian 的 galaxy10寸, 如果出门的话我基本上就拿 galaxy 和键盘。

在unix环境下开发 , 路径很简单, 设置配置也都很简单, 无需像 windows 这里一下设置那里一些设置.

加上现在都玩开源经常需要compile 那些开源代码, 这个时候在window就需要去装 cygwin 才能去 make.

但在linux/mac下, 就比较方便 mac( brew ), linux ( apt-get … 看你的distro manager ), 就能用, 基本上就打些命令就好。

mac 比 linux 强是在GUI, 还有就是机子漂亮 。。。 暂时比linux 软件多, 更适合非开发时候用。 机子好一点像高端的 mac retina可以同时用windows, linux虚拟器。

一般来说 linux 只适合开发和做服务器, 如果要一般使用还是mac 和 windows 比较顺手点。除非你就只是上网听歌, 那linux足够了

Windows服务器管理大多也都是用PowerShell或者CMD操作的

现在管理着现在的Windows服务器 用着mac开发 用centOS做测试服务器的苦逼中。。。

可是有的时候需要做windows平台的项目,没办法

支持啊~~俺现在就是这样,还有.net程序要维护开发,不过装个虚拟机倒是不错

我觉得linux如果不是因为驱动的问题,会走的更远

osx 压力不是很大

装了win8和ubuntu双系统,对linux系统还只是基本使用,还不是太熟练,所以日常使用还是在win8,写node和python时,才在Ubuntu .

Fedora单系统……开了个虚拟机跑一个Windows Server 2003日常用已经足够了……

必须推荐mac的说,O(∩_∩)O哈哈~

嗯,mac,一直在用mac,很爽

一直ubuntu+windows双系统 的飘过,我的windows一个是买电脑的时候预装的,考虑license的问题不愿意作掉自己花钱买的东西,就一直留在电脑里留念了。还有一个Windows是装在乌班图的虚拟机中里面跑着oracle数据库,至于QQ什么的据我所知wineqq现在已经完全胜任。所谓民用我感觉大概是游戏吧,在我感觉除了游戏需要切回win其他的我感觉ubuntu 完全可以完爆win.(只说wim一样就可以把win爆出shit来。)

Windows 下用 VirtualBox 运行 Ubuntu.

Windows 下没有 Linux 下的 symbolic link 非常不方便。

校园用户,学校使用专用客户端验证账户上网,TTTTMD只有win客户端。

在程序员的圈子里, 最热闹的话题总是 哪个系统更好用, 哪个编辑器更好用, 哪个语言更好用。 这个貌似是永远不会冷却的话题哈 我也凑凑热闹, 强烈推荐mac osx系统, 不只是看着好看, 用起来也真心好用

开发和日常使用,两个系统

现在负责的一些项目还必须用windows,所以暂时只能在windows下作node开发,ubuntu试过了,但是感觉系统不好用,运行软件等待时间太长,webstorm要十几秒才能出来,而且经常性的弹出错误要求report。。。我电脑配置第四代酷睿i7,32G内存。。。

用虚拟机然后用putty ssh连接的飘过

两年前的老贴。。。谁挖的😂

据说国外很少用windows开发的,基本用mac,mac和linux差不多,一个是unix一个是linux内核

楼主可以在windows虚拟机里安装个linux啊:)

你从来不是office软件的?

苦逼大神弄编译器的啊,仰慕:)

不用linux,但我也想用linux,求哪位能给出性能最好的解决方案?不要虚拟机。我是机械硬盘啊……

1、要同时搞前端,要看到别人的windows上页面长什么样; 2、用adobe系的:photoshop;lightroom,indesign,以及cinema 4D; 3、要用淘宝千牛;

就是这些,阻挡了linux。。求解。

mac 无敌.

首先建议网站能不能把这个回复框做成标题悬浮弹出的效果。恢复个内容还得拖到最下面… 楼主问个问题: 我下载window nodejs开发环境把开发好的项目传到linux服务器上能运行吗?

还不会linux怎么转 不过已经安装了虚拟机ubuntu 没事的时候练习下 等熟悉了再转

node还好,win在node还算一等公民

python/ruby 在win上一堆子问题…

刚从Ubuntu换成debian的路过~

关于Node.js开发环境从Windows转向Linux的建议,可以从多个角度来说明为什么Linux环境更适合Node.js开发。虽然Windows提供了友好的用户界面和一些方便的工具,但Linux在某些方面具有明显的优势。

Linux vs Windows 开发Node.js的优点

  1. 命令行工具

    • Linux系统默认支持强大的命令行工具,如grepawksed等,这些工具可以帮助你高效地处理文件和数据。
    • 示例:假设你需要在一个日志文件中查找特定错误信息,可以使用如下命令:
      grep "error" server.log
      
  2. 权限管理

    • Linux系统的权限管理非常严格且灵活,有助于保护生产环境免受未授权访问。
    • 例如,使用chmodchown命令管理文件权限:
      sudo chmod 755 file.txt
      sudo chown user:group file.txt
      
  3. 开发工具链

    • Linux系统通常预装了许多开发者常用的工具,如gitnpmcurl等。
    • 示例:安装一个Node.js包:
      npm install express
      
  4. 容器化技术

    • Linux非常适合使用Docker等容器化技术,便于创建一致的开发、测试和生产环境。
    • 示例:启动一个Docker容器:
      docker run -d -p 8080:80 nginx
      
  5. 资源利用率

    • Linux系统通常对硬件资源的占用更低,使得系统运行更流畅。
    • 示例:查看当前系统资源使用情况:
      top
      
  6. 脚本编写和自动化

    • Bash脚本是Linux中常见的自动化任务方法,你可以用它来自动执行重复的任务。
    • 示例:一个简单的脚本来清理日志文件:
      #!/bin/bash
      find /var/log -name "*.log" -exec truncate -s 0 {} \;
      

总结

尽管Windows在某些方面具有优势,例如用户界面友好和广泛的游戏支持,但在开发Node.js应用时,Linux的命令行工具、权限管理、丰富的开发工具链、容器化技术和更高的资源利用效率等特性,使它成为更优的选择。如果你还没有尝试过Linux作为开发环境,不妨试一试,可能会发现更多便利之处。

回到顶部