aopstudio 的个人博客   >   存档   >   2019 年 09 月 - 2 文章

了不起的 VSCode

2022-03-20

VSCode是目前我心目中最好用的编辑器了。我们暂且不谈论Linux系统上的编辑器,在那边,Vim是绝对的王者,如果一定要说有竞争对手的话,Emacs也能算一个。从我个人的经历来说,在我上中学的年代,一个主流的编辑器叫做UltraEdit,这个编辑器功能很强大,但要收费,价格还不便宜。当时对于UltraEdit的替代品叫NotePad++,这个编辑器是免费的,启动速度也非常快,但是界面实在不怎么好看。之后是个编辑器混战的时代,Sublime、Atom、Webstorm等等各种编辑器的拥趸纷纷说自己的编辑器有多好,直到VSCode横空出世。目前VSCode已经是使用人数最多的编辑器,一张去年的统计数据如图: 这张图表上其他的编辑器的“年纪”基本上都比VSCode大,但却被它打败了。 而从目前各个程序员社区的反馈情况来看,VSCode的使用人数还在不断增长,因此今年VSCode的份额一定比去年还要高,稳稳占据第一的位置。可以说这是微软这几年来做得最成功的一个软件项目。 我们说人的使用习惯是很重要的因素,除非另一个工具特别好用,否则不会改变自己的习惯去使用新的工具。 VSCode到底好在哪....

软件工程形式化方法初学体会

2022-02-19

最近在上一门叫做新技术讲座的课,我估计好多同学是看到讲座这两个字感觉这课会很水才选的,但实际上这门课讲的内容是非常硬核的软件工程形式化方法,而且授课老师也是国内第一批研究软件工程形式化方法的教授,现任日本埼玉大学教授,且上课非常认真负责,每节课都有课堂练习。不过了解了软件工程形式化的概念后,发现这个研究方向真的了不得,简直可以颠覆整个软件行业。 在早期的软件开发过程中,开发者们往往拿到问题后就直接开始编码,软件往往会出现各种各样的问题,大部分软件的质量十分低下,被称为“软件危机”。为了解决软件质量低下的问题,人们提出了软件工程化的思想,也就是目前主流的软件开发方式,引入了从需求分析到最后编码实现这一系列的过程,以及需要遵守的一系列规范,并定义了如CMMI这样的规范性等级。然而软件工程里面有很多内容的规范是非常主观的,没有一个确定的评定标准,另外很多步骤只能尽量争取正确,但根本无法确保正确,比如对于软件的测试,在软件测试这门课中就了解到全覆盖基本上是不可能完成的,并提出了语句覆盖、判定覆盖、条件覆盖等一系列只能尽量争取正确的测试覆盖。而且在执行的过程中,就算是CMMI 5级的开发单位也往....