开发者/开发人员究竟需要什么样的IDE?
IDE作为开发人员使用频度最高、依赖性最强的工具,似乎受到的关注却很少。从工具本身来看,这些年,业界对于IDE的讨论从来没有断过,不管从Visual Stduio到Clion,从eclipse到IntelliJ IDEA,还是从Sublime到Atom、VScode,不管是开源还是商业的,新的IDE在不断涌现,与周边的集成度越来越高、并且越来越智能,Source Insight已经逐渐淡出了主流视野。
从软件工程领域来看,革命的海浪一浪高过一浪,从IPD到敏捷再到时下火热的DevOps,新的IDE也在顺应潮流,不断地做出改变,适应工程领域革新所要求的效率提升。Source Insight的策略似乎是“以不变应万变”,在时隔多年之后才在不久前推出4.0版本。
Source Insight老矣,尚能饭否?这不是这篇文章所要讨论的问题,君不见老树开花、老酒弥新,新或旧从来不是判断工具是否还适用的标准,本着实用主义的观点,能否满足使用者的需求才是最关键的。我们讨论IDE需要回到问题的本源 ---- 作为IDE的使用者,开发者们究竟需要什么样的IDE?
读代码
-全局符号查找,最好是分类型查找,提高查找效率,比如函数查找、类查找、结构体查找;
-符号定义、声明跳转;
-函数Caller、Calls查看,最好是图形方式展示;
-高亮指定符号;
-符号引用查看;
......
SI在读代码这块,无疑是做得比较优秀的,以上这些读代码需要的常用功能,速度都比较快,操作方便,这也是SI在嵌入式产品中经久不衰的关键原因。
写代码
-符号智能联想,可按符号类型快速、准确联想,补齐语法关键字和语法结构;
-自动缩进对齐,包括复杂嵌套结构的自动缩进,括号补齐等;
-智能纠错,对于简单的错误,不用编译,可提前识别,比如未定义符号、函数入参个数与申明不符等;
-重命名智能同步,修改一处符号名,可自动同步到所有引用这个符号名的地方;
-一键注释、去注释;
......
写代码部分,SI相对于新生代的IDE,比如Clion、IntelliJ IDEA和不断演进的Visual Stduio,就要逊色不少,尤其是在智能感知方面。
读、写代码,是开发者对于IDE最基本的诉求,SI的所有功能,都是聚焦于这两个部分,对于现在的开发模式,是不是就足够了呢?不同的程序猿可能会有不同的答案,我们也和不少一线的开发者们交流过,没有统一的答案,基本上是各提所需,来看看他们期望的IDE是什么样的:
编译、调试
小A:能把SI和VS的优点合并下就好了,编辑代码和调试用例在一个IDE上效率要高不少;
代码配置管理
小B:对于代码配置库(git、svn)的操作能否集成到IDE中,现在上个库有点麻烦,多个工具来回切换;
基于IDE的代码检视
小C:现在的检视都是基于web的,能否做到在IDE内检视呢,毕竟IDE内各种操作更方便,能更好的审视代码;
基于代码的问题走单
小D:现在走个问题单太麻烦,手动填一堆checklist,很多信息比如修改人、修改文件、版本、是否通过DT测试这些能不能自动给我填了啊,直接在IDE里面走单,再也不想登陆DTS系统了...(问题单走单这事真是天怒人怨啊...)
错误信息自动关联代码
小E:不仅是PClint、编译问题,CI上的各种问题其实都可以关联到代码中,这样CI报告我都不用看了,聚焦于IDE修改问题就行
任务、用例与代码的自动关联
小F:现在特性、AR、issue、用例和代码的关联度太差,好多要求手动关联,IDE能不能帮我们把这事给做了,修改了代码,影响了什么就比较有谱了
还有软件架构分析、开发任务跟踪、接口自动生成等等等等......看来广大程序猿都想在IDE这件事上偷下懒,让它能承担更多的工作。
说了这么多,最关键的还是用户体验,做再多的功能,不好用程序猿们分分钟撕破脸皮,移情别恋。这件事上,公司已经有前车之鉴。高度集成化、智能化、更佳的用户体验,是未来IDE发展的方向,所有与代码相关的事都在IDE内完成,All for Developer,All for Code,上面列举的,并不全面,如果你有什么想法,欢迎留言讨论,毕竟IDE这事,还得由程序猿说了算...
本文来自作者周捷。
- 点赞
- 收藏
- 关注作者
评论(0)