依赖 IDE 做开发,会让你成为一名糟糕的程序员么?

简介: 那晚我正读着Rob Conery写的一篇文章,其中谈到了他对职业生涯的选择,对编程语言的选择以及这过程中留有的一些遗憾。很多地方让我觉得吃惊,但其中提到的关于.net开发的一点引起了我的深思。他发现的不好之处是:比起PHP开发人员,.Net开发人员会变得越来越依赖IDE。

image.png

那晚我正读着Rob Conery写的一篇文章,其中谈到了他对职业生涯的选择,对编程语言的选择以及这过程中留有的一些遗憾。很多地方让我觉得吃惊,但其中提到的关于.net开发的一点引起了我的深思。他发现的不好之处是:比起PHP开发人员,.Net开发人员会变得越来越依赖IDE。


作为一名.NET开发人员,我已经习惯了周围各种关于IDE依赖现象的说法,也习惯了各种PHP、JavaScript或Ruby开发者对微软产品Visual Studio的抨击。通常来说,基于C语言的开发者们在这个话题上更有发言权,这就像使用编程语言和开发工具更多的人会更了解程序的运行过程一样。


事实上,一款优秀的IDE会让你的工作更有效率:优质的框架加快了项目进度,自动编译和IDE重构工具让编码进行得更快,集成单元测试让你的应用程序易于维护,部署工具、web服务器、代码分析器或编译时绑定等简化了项目工作流程,除此之外,它还标准化了程序员的开发经验,这既有利于开发者本身也有利于项目的进行。团队内的开发者们使用相同的工具一起工作效率更高,而企业也受益于老员工与新员工之间的代沟会变小。


以上所说的优点也只是冰山一角而已,并且在所有可用的IDE中,Visual Studio可以说是最好的,它不仅功能齐全,而且连发布版本也都是免费的(尽管缺少一些中看不中用的组件)。可能你不会被视为那种能在Emacs上用bash写纸牌的“精英”,但是我认为很多人讨厌IDE的原因是因为他们所用的IDE不适合他们所用的编程语言。其中大部分都是脚本语言,因为一个IDE很难为一种解释型语言做出点贡献。不能因为一个开发者更喜欢使用notepad++来写PHP而否认他们能从IDE中获益,相反,这反而是一种固执的表现。


依赖IDE不好的第二大原因是,它会让你对编程语言本身越来越模糊。如果你不需要记住语法规则,也不需要记住那些要调用的方法,因为IDE总会智能的提醒你,久而久之,你就会很难在没有IDE的情况下写好一个程序。但在我看来,对于一个优秀的开发者,最重要的不是去记住那些语法细节,而是知道解决问题的有效方法并能有效利用最好的技术或者工具来解决它。使用IDE能够让你将更多的精力投入到真正重要的问题上,也就是解决方案,而不是纠结于哈希表逆序的函数是哪一个这种问题。


而Rob Conery认为过于依赖IDE不好的原因在于,他的主要工作是在windows平台下使用Visual Studio中的拖放控件来开发web表单。这从某种意义上来说确实是不好的,但同时我也对他竟然花费如此多的时间那样使用.NET感到惊讶。我已经有将近8年没有使用过VS系列的可视化开发工具了,但是我仍然认为没有任何IDE能够比得上它。


我曾经多年见到Xcode就发慌,Eclipse很适合用来做Java开发可是我不喜欢用它来开发PHP,刚用Aptana的时候会觉得不错但是过不了多久就会让你有在使用Notepad++的错觉,诸如此类的IDE还有很多。而由于JetBrains公司(IntelliJ IDEA集成开发环境所属公司)产品的缺乏,使得它远不能与Visual Studio相提并论。


当然这仅仅是我个人的想法。你认为依赖IDE对你的编程能力或者职业生涯有没有影响呢?你觉得如果一个团队的开发者都使用Sublime Text或者Notepad++会和使用IDE一样高效吗?


部分微博评论

@xxiuu :写代码是个手艺活,拿着钉子锤子,锯子墨线,一块木头,半天功夫,一把仿古的凳子就出来了,在来个雕花,上个老漆,真是个绝活。在看看那边,电闸一啦,车床呼啦呼啦的,这边几块木料下去,那边一对零件出来了,打个包装加个说明书,一套原木环保宜家家具就出来了。


@扬仔360:老么前儿学J2EE那会儿,一老师说我太过于依赖Eclipse,用多了代码补全,问:“单单让你用TXT,能写出来吗?”其实当时J2EE勉勉强强还能用txt写出来,现在用XCode用多了,要说用txt写O-B,我是死活写不出来。现在我才明白很多事情,抨击IDE的便捷性就是抨击咱人类的发展过程,不定个反人类罪都是轻的。

相关文章
|
6月前
|
网络协议 IDE 网络安全
GoLand远程开发IDE:使用SSH远程连接服务器进行云端编程
GoLand远程开发IDE:使用SSH远程连接服务器进行云端编程
741 0
|
IDE Go 开发工具
Go开发IDE全览:GoLand vs VSCode全面解析
Go开发IDE全览:GoLand vs VSCode全面解析
515 0
|
1月前
|
IDE 开发工具 C++
AvaloniaUI项目离线开发全攻略:IDE安装、模板应用与NuGet私有化部署一站式解决
本文详细介绍了在离线环境中开发Avalonia UI项目的完整解决方案,包括Visual Studio 2022和JetBrains Rider的离线安装、Avalonia UI模板的配置、私有NuGet服务的部署与使用,以及NuGet包的制作和上传。通过这些步骤,您可以在网络受限或完全离线的环境中顺利进行Avalonia UI项目的开发。
AvaloniaUI项目离线开发全攻略:IDE安装、模板应用与NuGet私有化部署一站式解决
|
1月前
|
机器学习/深度学习 存储 监控
AllData数据中台核心菜单五:实时开发IDE
杭州奥零数据科技有限公司成立于2023年,专注于数据中台业务,维护开源项目AllData并提供商业版解决方案。AllData提供数据集成、存储、开发、治理及BI展示等一站式服务,支持AI大模型应用,助力企业高效利用数据价值。
|
6月前
|
IDE 测试技术 项目管理
集成开发环境(IDE)的使用:提升Visual Basic开发效率的工具和技巧
【4月更文挑战第27天】本文探讨了如何使用Visual Basic IDE提升开发效率,包括理解IDE组件、利用代码编辑器的智能功能、通过界面设计器设计GUI、使用调试和测试工具、有效管理项目与版本控制、掌握快捷键和宏、定制IDE以及利用学习资源。通过充分利用这些工具和技巧,开发者能更快地编写高质量代码,高效管理项目,从而提升整体开发效率。随着IDE的持续发展,开发者应不断学习新特性以适应进步。
159 1
|
4月前
|
人工智能 IDE 前端开发
|
5月前
|
存储 安全 Java
2024ide构建maven项目是总是卡在解析Maven依赖项目 加速方案
2024ide构建maven项目是总是卡在解析Maven依赖项目 加速方案
248 4
2024ide构建maven项目是总是卡在解析Maven依赖项目 加速方案
|
4月前
|
监控 IDE Java
函数计算产品使用问题之如何不使用FC的IDE进行开发,并将开发好的应用部署到FC上
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
IDE Linux 开发工具
GoLand IDE 2023 快捷键大全:提高开发效率的必备操作
GoLand IDE 2023 快捷键大全:提高开发效率的必备操作
254 0
下一篇
无影云桌面