【问题标题】:Python/Django development, windows or linux? [closed]Python/Django 开发,windows 还是 linux? [关闭]
【发布时间】:2012-07-05 12:09:16
【问题描述】:

我最近一直在研究 Python,并开始阅读 Django 的文档,但我不能否认我发现的大多数视频教程通常将 Linux 显示为所选操作系统的事实。我大多忽略了这一点,但我开始遇到一些问题,人们使用诸如“触摸”之类的命令,我不知道 Windows 7 命令提示符中的等效命令是什么。我听说过 Power Shell 中的 New-Item,但它很乱,我担心这种“等效狩猎”可能会一次又一次......

所以我开始想知道为什么大多数人将 Linux 与 Python 一起使用,学习使用 Linux 进行开发会是一个很好的举动(知道我的 Linux 知识完全是空的)吗?它会让我在使用 Python 进行开发时更有效率吗?是否可以列出这样做的好处?

【问题讨论】:

标签: python windows django linux


【解决方案1】:

django是纯python编写的,所以使用Windows + Eclipse + PyDev进行开发就足够了。

如果您真的想使用一些 Linux 命令跟随酷哥们,请安装 cygwinmingWin 并将系统 PATH 设置为 BIN 指令。然后,您可以使用它们(包括您的 touch)。

Linux 是部署 django 项目的最佳选择,您可以在其中轻松编译/安装/配置一些很酷的东西,如 nginx、uWSGI、mod_wsgi、Apache2 和许多有用的 Python C 扩展。

使用 Linux 的另一个原因是用于托管项目的虚拟专用服务器更有可能支持它。

【讨论】:

    【解决方案2】:

    虽然使用 Linux 进行 Python 开发有一些好处(例如,一些库只能在 Linux 上运行);没有什么能阻止您使用 Windows 进行 django 工作;我每天都在使用它,还没有任何东西出现。

    您熟悉的正确 IDE 将大大有助于您的开发体验更加愉快。许多人在 Eclipse 中使用Pydev;但我更喜欢PyCharm

    许多教程将向您展示 Linux 或 Mac 桌面(和 shell),您可以通过安装 unixtools 来获得等效的命令(如 touchls 等)——它们是常见的 unix 工具。

    您应该为 this website 添加书签,它有用于常见 Python 库的 Windows 安装程序。

    【讨论】:

      【解决方案3】:

      这取决于您最喜欢什么操作系统。 您可以使用 Aptana 3 和 pydev(included) 进行开发。

      在开发时,请记住使用“os”python 库作为 dirs 的路径,这样您的应用程序将在 windows 和 linux 下正常工作。

      例如:

      PROJECT_DIR = os.path.dirname(os.path.abspath(__file__))
      
      MEDIA_ROOT = os.path.join(PROJECT_DIR, 'site_media')
      

      【讨论】:

        【解决方案4】:

        我使用 Windows 进行 Django 开发已经有一段时间了,但最终发现 Linux 是更好的选择。以下是一些原因:

        • 某些 Python 包根本无法在 Windows 中安装或正确安装,否则会给您带来很多麻烦
        • 如果您需要部署 Django 应用程序,使用 Unix 风格的系统更有意义,因为它 99% 的可能性是您的部署环境是相同的。在具有相同配置的本地计算机上进行试运行将在以后为您节省大量时间 + 在这里“允许”您犯错误。
        • 如果您的应用程序变得复杂,在 Linux 中更容易获得所需的依赖项,无论是扩展、库等。在 Windows 中,您最终会寻找合适的站点来下载所有内容并经历一些安装和配置的麻烦.有时我花了很多时间来搜索一些特定的东西。在 Linux 中,它通常只是一个“apt-get”(或类似的),然后你就完成了。
        • 我是否提到过在 Linux 中获取和安装一切都更快?

        当然,如果您的应用程序很简单并且您不需要关心部署,那么 Windows 就可以了。

        【讨论】:

        • 我同意你的观点,Linux 对开发人员非常友好,但我想转移到 Windows 10 for Python Django,windows 已经引入了“Power shell”,这会有所不同吗?迁移到 Windows 的主要原因之一是 Visual Studio 和 Azure 平台的社区版。但是我还是想知道,那里的发展会不会像Linux一样顺利?
        • 我不能在那里真正回答你,但powershell与linux终端不同。据我所知,它是不可替代的。您仍然遇到我上面提到的问题(与您使用的终端无关)。最后你当然可以试一试。
        • 我认为部署的意义被低估了。如果您打算在 Windows 上部署您的应用程序,那么请务必使用 Windows 进行开发。如果您打算在 Linux 上部署它,请使用 Linux 或至少一种 UNIX 进行本地开发。这有助于您尽早而不是延迟解决任何特定于平台的依赖问题,并减少在修复成本更高时在 QA 或生产中出现特定于平台的错误的可能性。
        • 如果您可以完全控制应用程序的部署位置,那么可以。在大多数情况下,您是一家公司的员工,他们中的大多数人在类似 Linux 的系统中部署基于 Python 的应用程序。
        【解决方案5】:

        我通常在我的桌面上使用 OSX,但我使用 Linux for Python,因为这就是它的部署方式。具体来说,我在虚拟机中使用 Ubuntu Desktop 来开发 Python 应用程序,并在服务器上使用 Ubuntu 来部署它们。这意味着当我准备好部署应用程序时,我对库和模块要求/依赖关系的理解可以 100% 转移到服务器上。

        如果我使用 OSX(或 Windows)开发 Python 应用程序,我将不得不处理两种不同的方法来处理需求和依赖关系 --- 工作量太大。

        我的建议:使用 VMWare Player(它是免费的)并找到一个 Ubuntu VM 开始学习。它并不太复杂,实际上很有趣。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2010-09-07
          • 2010-11-17
          • 2014-08-24
          • 2016-01-04
          • 1970-01-01
          • 1970-01-01
          • 2020-10-31
          相关资源
          最近更新 更多