您使用的IDE可以在编程时完全改变您的体验。 尤其是在学习的初期,如果您使用的IDE不能解决您面临的问题,那么您会发现这非常具有挑战性。
最好的情况是,编程是创造力的体现,因为我们作为研究人员,正在努力解决重大问题。 正是这种创造力的表达使我们一直想解决问题,因此我们需要出色的工具来做到这一点。
IDE(集成开发环境)是一种软件应用程序,为程序员提供了进行软件开发的便利。
这就是Microsoft Word对作家的意义。 这就是Adobe Photoshop对创作者的意义。 这是我们工作的地方。
我自己的编程生涯始于多年使用IDLE,然后进入Sublime Text Editor,然后是PyCharm,然后是Notebooks。 但是,下面列出了许多其他IDE,值得探讨。
在下面的文章中,我将介绍以下IDE,并根据自己的观点给每个IDE评分。 如果您不同意,请告诉我!
- IDLE (5/10)
- Jupyter Notebooks (7/10)
- PyCharm (9/10)
- Sublime (6/10)
- Spyder (4/10)
- Atom (7/10)
- Eric (8/10)
- VScode (8.5/10)
IDLE
当我开始编程时,IDLE是我的第一个开发环境。 我很喜欢它,因为它已经部分安装在我的计算机上,并且易于使用。
我的本地Python IDLE IDE
作为一个初学者,您希望能够很快看到自己的工作成果,而命令行界面就可以做到这一点。 通过将IDE用作准计算器和准脚本运行程序,意味着我可以实际看到自己正在创建的内容,并且可以看到代码的每一行都很重要。
现在,IDLE代表“集成开发和学习环境”。 它使用100%纯Python(使用tkinter)进行编码,并且是跨平台的:在Windows,Unix和macOS上的工作原理基本相同。 它的功能是最基本的,但包括:
- 代码输入,输出和错误消息的着色
- 具有多个撤消、智能缩进、呼叫提示、自动完成和其他功能的多窗口文本编辑器
- 具有持久断点、步进以及查看全局和本地名称空间的调试器
如果您刚开始编程,那么我强烈建议您使用IDLE,因为您很快就会发现自己的工作成果,并且作为一个初学者,您只希望能够快速构建,快速失败并进行迭代。
但是,如果您想构建任何实质性的东西,它所提供的功能都会受到一些限制。 稍后您会看到您的IDE应该适合您所拥有的项目类型(我将通用编码分为科学计算或生产软件),而IDLE介于两者之间。 代码调试,项目管理,快速搜索,可视化显示(以及更多)都是我们在编码和IDLE不能提供足够多的方式时定期完成的任务。
鉴于此,我给它的分数是5/10。 易于使用,但不算昂贵。
对于常用图形化展示的编程者:Jupyter Notebooks
现在,如果您想以更结构化的方式工作(我认为与大多数数据科学社区一起工作),我强烈建议您使用Jupyter Notebooks。
Jupyter在您的浏览器中运行,并且超轻量级。 其目的是在报告(如框架)中呈现和构建代码框架,这在美学上非常令人满意。 它的界面实际上与Mathematica和SageMath非常相似,但是已经变得越来越流行。
我本地笔记本的屏幕截图
从功能上讲,Jupyter确实有局限性,并且您无法在生产环境中真正使用在这里制作的任何东西(除非您将其运送到.py文件中),因为Jupyter Notebook是使用JSON框架构建的,因此您需要用于任何目的的python文件你想带走。而且,笔记本电脑真正缺乏的是缺乏研究和更多软件工程的广泛功能。
进行版本控制。使用笔记本电脑并不是一件真正的事情(至少不是很自然)。例如,如果您要共享一些代码,则可以发送笔记本:但是,如果您一边更新某些内容,又或者您的同事在他们身边更新某些内容,您又必须继续发送笔记本吗?而且,自动完成,自动代码重构,代码概要分析,版本控制集成和数据库工具等功能都是您在Notebook中无法获得的。但是你在乎吗?
归根结底,这取决于您使用IDE的方式。对我来说,我使用笔记本电脑比其他任何东西都多,因为我需要可视化结果并且需要以可管理的方式持续监视它们。考虑到我在使用笔记本电脑时的舒适度,并且它非常专注于研究,而很少关注生产(如果有的话),那么将其评分在基于生产的任务上是徒劳的,因此,作为纯研究开发环境,Notebook很棒,分数为 8/10。
对于商用用户:PyCharm
PyCharm是一个IDE,旨在使Python编程尽可能高效。 从搜索整个存储库,到调试再到部署,PyCharm在构建时都考虑了程序员。 放心使用:PyCharm是一款出色的IDE。
正如我之前所说,每个人的编码都有些不同,但是对我来说,我使用PyCharm来编码我的生产软件。原因是调试,测试,性能分析,集成之类的任务以及创建生产级代码所涉及的所有其他任务都可以直接使用。实际上,您几乎不需要设置。
例如,PyCharm甚至还具有重新格式化代码以使其更具可读性的快捷方式。我对此深有感触,因此很高兴看到PyCharm的工程师也如此。
注意:PyCharm确实有社区版和专业版,如果您负担得起的话,专业版是值得的。但是,社区版仍然很棒,建议您学习使用它。
现在,PyCharm很难适应。我认为自己最好的编码器,甚至花了我很长时间才能完全掌握调试信息。这并不是说特别困难:PyCharm具有如此多的功能,有时您会感到不知所措。
但是,随着时间的流逝,您将了解到更多有关PyCharm的信息,最终,如果没有它,您将无法生存。我在PyCharm和Notebooks之间共生,这对我来说非常有效。 PyCharm甚至有一个新的本地笔记本工具(我承认我并没有花太多时间)。鉴于PyCharm可以做任何您想做的事,而且不会在任何地方偷工减料,我确实认为它很棒,因此,我给它9/10。
VSCode
VSCode是由Microsoft开发的免费开放源代码编辑器。本机支持几种语言,但是通过扩展,您可以添加Microsoft Python。
这是有趣的地方。
VSCode旨在具有广泛的功能集,因此PyCharm是其自然的竞争对手。两者都具有智能代码完成,全文搜索,语法突出显示和括号匹配,Git集成,代码格式和代码整理,调试等功能。
但是,PyCharm挤满了所有功能,因此,它以很高的内存要求运行:VSCode的运行空间减少了约30%!
此外,PyCharm是JetBrains家族的一部分,因此,插件必须在很大程度上通过JetBrains家族,目前在其网站上已有3000多个插件。另一方面,VSCode被设计为准系统编辑器,可通过其扩展程序制成完整的IDE。鉴于其开发方式,这意味着VSCode可以为用户轻松定制。
这一点很重要,因为VSCode确实具有所有功能的扩展。我研究了Docker容器使用的便利性以及IPython Notebook扩展,并且两者都对这两种IDE都很满意。 Event Reddit无法确定哪个更好。
PyCharm实际上是完整的生产软件,如果您的计算机不太受内存需求的困扰,那可能是更好的选择,仅因为它是行业标准,但是,如果您更喜欢轻便和通用的产品,VSCode就是很好的选择。
很棒,而且会随着时间的推移而成熟:8.5 / 10。
其他Python IDE
1. Sublime
Sublime是一种文本编辑器,可跨越PyCharm和IDLE之间的鸿沟。它具有许多令人印象深刻的技巧,例如多项选择,分割编辑,出色的性能,并且是跨平台的。但是,与PyCharm相比,其功能的广度无济于事。
初次接触Sublime时,您会发现自己喜欢其中的编码感觉。一切运行迅速,并且在其中编写很多代码非常容易。这让我希望IDLE实际上会使用Sublime提供的更多功能,但是对我来说,Sublime有点不足,因为它不是本机Python IDE。
例如,您不能像说PyCharm那样真正地进行逐步调试。一段时间后,这会变得非常令人沮丧,尤其是当您的项目处于工业规模时。您总是会发现自己回到PyCharm的其中一项功能或另一项功能。
鉴于它绝对破坏了编码的美感,因此在该方面会获得很高的评价,但是由于您在功能方面有很多苦恼,因此也会受到影响。与我说的笔记本相比,它与PyCharm的可比性更高,因此,我必须给它6/10。
2. Spyder
在视觉上,Spyder与Matlab一样可怕。它在右上角具有相同的变量资源管理器框架,在右下角具有图表的位置,在左侧具有编码窗格。它旨在用于使用Python的科学计算中,这体现在其功能,包装和IDE的整体性能上。但是,对我来说,与笔记本电脑或PyCharm相比,产品的整体感觉通常很笨拙。
3. Atom
现在,Atom是我没有用过的东西,但已经阅读了有关它的精彩评论。 Atom称自己为“ 21世纪可***的文本编辑器”。它由GitHub维护,因此您可以想象它可以做几乎您可以想象的任何事情。但是,Atom并不是真正的轻量级(大约400MB(包括其依赖项)),但是即使对于较弱系统的程序员来说,只要您可以占用内存,它也可以正常运行!
现在总而言之,Atom在开始时看起来很棒,您可以使用它,而不用说Sublime或IDLE。但是,Atom可与许多插件一起使用,因此在您学习时,加载,安装和搜索这些插件很有意义。这样可以帮助您理解每个元素的重要性,而不是像在PyCharm中那样被深深吸引。
鉴于此,Atom易于使用且对初学者友好,因此,如果您正在考虑使用Sublime,那么绝对值得尝试使用Atom,因此得分 7/10。
4. Eric
Eric被设计为日常编辑器,并且可用作专业的项目管理工具。它提供了强大的功能,因为它可以在代码上进行实时协作(有多棒?),并且包括一个插件系统,可以通过从Internet下载的插件轻松扩展IDE功能。
现在,IDE有点忙,但是它包含了很多功能。它支持标准任务,例如代码折叠,代码完成,花括号匹配。它还具有集成的类浏览器和强大的代码调试器。它还支持单元测试,并且可以调试多线程和多处理程序。而且,它本地支持版本控制软件(例如Mercurial和SVN版本控制),并且Git通过插件支持。
鉴于其功能集的广泛性以及您如何轻松地使用插件扩展它,您需要将其与PyCharm进行比较。但这种比较的问题在于PyCharm太好了:是IDE的Barcelona Fc或Michael Jordan。鉴于已投入PyCharm的资源,Eric会努力变得更好。
即便如此,埃里克(Eric)可能很难下定决心,但是一旦踏上第一步,它就会变得非常好,得分 8/10。
鉴于此,如果您刚开始编写代码,则应该真正看一下要完成的项目。如果您想建立一些时髦的深度学习网络并研究最新技术,Jupyter笔记本电脑将非常适合您,通常来说,它是研究用途最广泛的界面。
但是,如果您打算为客户端部署软件,并且需要一些可以24/7全天候工作的强大代码,那么使用PyCharm绝对是更好的选择。您需要广泛的功能以及与各种数据库或版本控制系统或库的集成,因此PyCharm可以使所有这些操作变得非常简单。喊出VSCode,它也非常好,可扩展且免费!
您选择的IDE确实非常重要,因为根据您期望的编码方式,IDE可能会使您变得更容易或更困难。长期以来,由于我使用的是IDLE而不是Jupyter Notebooks之类的东西,所以我的研究受到了阻碍。我几乎全都放弃了Python,并长时间使用了Matlab,因为用Matlab编写代码感觉更加自然了。
【责任编辑:赵宁宁 TEL:(010)68476606】