开发将在不同环境中运行的python软件

时间:2019-06-01 11:06:20

标签: python

最近六个月以来,我一直在研究将在工作中使用的Python GUI应用程序。具体来说,我的GUI将在我用于工作的几个超级计算机群集上运行。

但是,我主要是在个人计算机上开发软件,在这里,我无法直接访问GUI调用的命令,因为GUI将使用subprocess来调用仅可用的命令在计算集群上。

因此,为了有效地开发程序,我经常必须将包含与GUI相关的所有文件的目录复制到集群。然后,我在那里测试当前版本,找到所有错误,通过编辑群集上的文件来修复它们,最后将所有文件复制回我的计算机,覆盖旧版本。

这似乎是一种不好的方法,但是我必须能够在开发该软件的环境中测试我的软件,以便发现我的错误。

这肯定是软件开发中的常见问题……实际的程序员在做什么(而不是像我这样的业余程序员)?

编辑: 我大量使用的仅在计算群集上可用的命令示例为squeuesacctscontrol(与SLURM相关的命令)。

Edit2: 我可以提到我已经在Python上使用ssh连接进行了测试,但是它显着降低了命令速度,必须为我想要的每个命令建立ssh连接。除非我可以设置一个持久的ssh会话(如打开程序时登录),否则我认为ssh-ing无效。

1 个答案:

答案 0 :(得分:0)

探索构成Vagrant a popular choice for developers

的概念
  

Vagrant是用于构建和管理虚拟机的工具   单一工作流程中的环境。凭借易于使用的工作流程和   专注于自动化,Vagrant降低了开发环境的设置   时间,提高生产平价,并使“在我的机器上工作”   原谅过去的遗物。

您的用例被几个无用的盒子覆盖,这些盒子创建了一个用于开发目的的Slurm集群。一个很好的起点可能是

如果您了解并可以使用Vagrant之类的工具设置开发环境,则可以接下来探讨现代代码编辑器或集成开发环境(IDE)为远程开发提供哪些选项。远程开发涵盖了其他一些用例,这些用例也可能适合您的开发人员工具箱。

Visual Studio Code是用于Python开发的“足够好”的免费开放源代码编辑器。根据文档,它具有用于远程开发的强大功能。

  

Visual Studio Code远程开发允许您将容器,远程计算机或Windows Linux子系统(WSL)用作完整的开发环境。

阅读文档