集成开发环境(IDE)
嵌入式软件工程师基本都会接触几款集成开发环境(IDE),当然,也有很多工程师自己搭建编辑器、编译器、调试器开发环境的,下面罗列几个常用的IDE。 1.KeilKeil主要针对市面MCU绝大部分MCU,从8位到32位的一款IDE,可以参看我的《Keil系列教程》中关于Keil的发展历史以及相关介绍。
http://www.keil.com
Keil针对不同厂家、类型的MCU,进行了划分,目前有4种工具:Keil C51、 C166、 C251、MDK-ARM。 可以关注公众号『strongerHuang』,在后台回复关键字「Keil系列教程」查看更多内容。 2.IAR和上面Keil类似,IAR同样针对市面上绝大部分MCU,有很多功能基本两者都有,也是嵌入式软件工程师常用的一款工具。
http://www.iar.com
IAR同样有很多种工具,所以就有:EWxxx,比如:EWARM、EW430等多种不同IDE工具 (不同工具)。 当然,称呼有很多,另外一种:IAR for xxx。比如:IAR for ARM、 IAR for STM8等。 可以关注公众号『strongerHuang』,在后台回复关键字「IAR系列教程」查看更多内容。 3.VSVS:Microsoft Visual Studio简称,是美国微软公司的开发工具包系列产品。
https://visualstudio.microsoft.com
很多读者应该知道,并学习过VC++6.0,这个工具在之前算是一个众人皆知的工具。VS也是在它的基础上发展而来。 VS是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具。 4.Eclipse
Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。
https://www.eclipse.org
目前,很多开发工具都是基于Eclipse修改而来,比如很多开发STM32的朋友都知道STM32CubeIDE这款工具,你会发现,是不是很多功能和Eclipse一样。
包括前几年很火的安卓开发也是基于Eclipse进行开发。
以上是一些常用、通用的集成开发工具,如果你没有学习过,可以了解一下。
更多IDE,可以参看我的文章:嵌入式工具 | 单片机常用集成开发环境有哪些?
软件版本控制工具
一般稍微大一点的公司都会使用一些版本控制软件对公司的代码进行管理。
下面推荐两个常见的工具。
1.Git
Git是一个免费的开源分布式版本控制系统,旨在快速高效地处理从小型到大型项目的所有内容。
https://git-scm.com
Git 易于学习, 占地面积小,具有闪电般的快速性能。它具有诸如Subversion,CVS,Perforce和ClearCase之类的SCM工具,并且具有本地分支,方便的暂存区域和 多个工作流等功能。
Git应该是目前使用最广泛的工具之一,我之前公司也用Git搭建服务器,进行代码管理,操作也比较简单。
2.SVN
SVN是subversion的缩写,是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,简而言之就是用于多个人共同开发同一个项目,实现共享资源,实现最终集中式的管理。
https://tortoisesvn.net
在Git之前,SVN算是最为流行的代码管理工具,现在同样有很多公司都在使用这个工具,学习教程网上很多,同样也值得大家学习和了解。
代码阅读和编辑工具
一个好的代码阅读和编辑工具有助于提高开发效率。
1.source insight
Source Insight是一个面向项目开发的程序编辑器和代码浏览器,它拥有内置的对C/C++, C#和Java等程序的分析。能分析源代码并在工作的同时动态维护它自己的符号数据库,并自动显示有用的上下文信息。
https://www.sourceinsight.com
Source Insight这个工具,相信绝大部分嵌入式工程师都知道,难度也不大,网上教程很多。不过,缺点就是收费,不能明目张胆的用。 2.VS CodeVS Code :Visual Studio Code,是微软一款真正的跨平台编辑器。
https://code.visualstudio.com
相比Source Insight而言,VS Code算是后起之秀,在2015年才发布。 发布也是受到众多软件工程师的青睐。确实,用时间证明了一些,VS Code不仅功能强大,而且还免费。 3.notepad--Notepad--是Winows操作系统下的一套文本编辑器,有完整的中文化接口及支持多国语言编写的功能(UTF8技术)。
https://gitee.com/cxasm/notepad--
这个工具应该是众多工程师都改拥有的文本编辑器。
文件(代码)对比工具
我们作为软件开发,主要是最对代码对比,比如修改代码之后,会对比修改了那些代码。
1.Beyond CompareBeyond Compare是一套由Scooter Software推出的文件比较工具。主要用途是对比两个文件夹或者文件,并将差异以颜色标示。比较范围包括目录,文档内容等。
http://www.scootersoftware.com
这个工具是国外的一款比较好用的工具,唯一缺点就是收费,国内有代理。 有免费试用时间,如果想免费是使用,自己想办法。 2.Code CompareCode Compare同样也是一款代码比较工具,支持文件和文件夹比较、合并等功能。 ****: https://www.devart.com/codecompare/download.html (公号不支持外链接,请复制链接到浏览器下载) 它支持集成在源代码版本控制工具中,如:SVN、 Git、 TFS、Mercurial和Perforce等这些版本控制工具。同时,Code Compare支持集成Visual Studio 2015、 2017、 2019等开发环境中。 更多代码比较工具,可以参看文章:嵌入式工具 | 软件工程师常用的代码比较工具
项目进度管理工具
一般项目经理,或者项目负责人基本需要掌握一些项目管理的工具。 1.Microsoft projectMicrosoft Project(或MSP)是由微软开发销售的项目管理软件程序。软件设计目的在于协助项目经理发展计划、为任务分配资源、跟踪进度、管理预算和分析工作量。
https://products.office.com/zh-cn/previous-versions/microsoft-project-2010
这个工具建议做项目经理、产品经理都应该去了解和学习一下。 先介绍这么多,后面有机会再给大家介绍一些常用工具。当然,不是要大家花大量时间去掌握工具,先了解一个大概,用到时再花时间学习。