善事利器
同样是完成一件事,会用工具会使开发效率得到大幅提升。下面我从我个人的习惯和接触到的东西给大家安利一些利器。篇幅不长、难以详述,在这里给大家引路,需要的话自行再百度资料学习如何安装使用。
软件
xshell、secureCRT、Finalshell
xshell是一个强大的安全终端模拟软件,简单来说就是一个可以在Windows界面下用来访问远端不同系统下的服务器,从而比较好的达到远程控制终端的目的。最常用到是ssh登录linux系统,同时xshell支持串口。免费版的不足之处就是一个界面中最多只能打开4个窗口,如果超过4个则会开启另一个界面。所以会出现当你打开4个以上的界面时,会有两个以上的界面。不过总的来说,xshell算是特别强大好用的终端模拟软件,运行稳定,可惜只有windows版本,没有os系统的版本。
secureCRT和xshell差不多,支持串口和ssh,但是secureCRT是没有免费的,需要自己破解。详细的区别我不清楚,在我使用的体验来说,两个软件我觉得不同点就是风格和习惯不同吧。看看每个人的习惯可以自行选择,secureCRT有os系统版本 。
Finalshell是一个国行软件,我用过一段时间,总的来说,体验不是很佳。因为工作中常需要使用到串口,它相对xshell和secureCRT来说,不支持串口,所以如果需要使用串口,那么则需要另外使用其他软件。然后就是普通版虽然免费,但是软件有些小问题,用着用着,电脑莫名其妙就会cpu跑满,然后就巨卡,我是查看后台进程才发现是这个软件吃掉的。具体什么原因我也不知道,反正试过好几次都是一样,我的一个同事也是如此(只是在windows系统下,mac系统好像没有)。它做的很好的就是它有很多目标主机性能指标的参数会实时显示。它的付费升级版我没用过,Finalshell有os系统版本。
[xshell官网]、[secureCRT官网]、[Finalshell官网]
vscode
编程少不了代码编辑器,以前我用Source insight,但是发现它管理工程项目挺好用的,用来c\c++的编码的话,这不是最佳选择。visual stduio好像也很强,但是很大,很多不需要的东西也安装了,对于我来说有点积重了。Visual Studio Code(简称vscode)是一个轻量且强大的跨平台开源代码编辑器,简单来说就是一个轻量级的、动态拓展的、操作简单的代码编辑器。它支持特别丰富,出来这些语言类的,还有很多数据格式的插件,如json、protobuf等。最大的好处是它调试很方便,出来ide有的基本的调试外,它支持终端登录调试。如下图所示,编辑完代码的同时,可以直接在编辑界面下操作终端,有时真的很方便,如写代码的过程中,我想要拷贝其它路径下的文件,直接在这下面敲命令就行了,不需要再切到终端界面。还有很多功能,都很方便开发。它有linux版本,所以可以直接在ubuntu系统中安装,然后编码。[vscode官网]
Notepad++
Notepad++是旨在替代Windows默认的notepad而生,比notepad的功能强大很多很多。它很强大,功能很多,但是我都不会用(想要熟希它的自行去百度),我用它的原因很简单,代替微软自带的文本编辑器(太丑又难用)。Notepad++不大,而且界面什么的都好看。[Notepad++官网]
vmware、VirtualBox、Parallels
嵌入式开发肯定少不了搭建虚拟机,毕竟绝大部分人是使用一台机器开发。三个软件我都用过。os系统下推荐使用Parallels,巨好用。windows系统下可以选择vmware、VirtualBox。风格不一,都没啥大问题,这也没啥好讲的。
postman
Postman 提供功能强大的 Web API 和 HTTP 请求的调试,它能够发送任何类型的HTTP 请求 (GET, POST, PUT, DELETE…),并且能附带任何数量的参数和 Headers。简单来说就是模拟http请求。
winshark
winshark是一个网络抓包的工具,在开发中涉及到网络的开发的时候,就有可能需要进行抓包分析排查问题。
mqttfx
MQTT.fx 是目前主流的mqtt客户端。当你的开发涉及到mqtt协议的时候,这个工具就少不了。
winscp
WinSCP是一个Windows环境下使用SSH的开源图形化SFTP客户端。同时支持SCP协议。它的主要功能就是在本地与远程计算机间安全的复制文件。很多嵌入式系统之间拷贝文件夹的时候,这个工具就派上大用场了。
samba
samba主要用于文件共享。简单来说就是,你在linux系统中安装一个samba服务器,然后在windows系统下可以操作linux的文件。也就是windows共享linux的文件。对于开发有什么好处呢,好处就是你开了虚拟机,使用samba的话,linux就相当于一个文件夹,我们访问这个文件夹就相当于直接访问linux,相互之间拷贝删除文件就变得很简单和轻松了。详细的安装使用在这里不赘述了。
ssh-server
要想ssh访问linux系统,linux系统需要安装ssh-server。ssh访问有什么好处呢。例如你开了虚拟机,你需要在终端下操作linux系统,如果不能ssh登录,那么就必须进入虚拟机界面,在这个界面下操作,其实用多了你就会发现这样很不方便的。那么如果有ssh,那么就可以用xshell进行登录,然后在这个界面下进行操作,有时嵌入式系统也要开一个窗口,那么在xshell界面下,一个界面就可以来回切换了,不需要进入虚拟机界面,麻烦死了。
总结
这只是我工作中使用的总结,可能有错,欢迎指正,有什么推荐也可以给我安利一波。吾不删言辞,详细的东西需要大家自行去找资料。要解决一个问题,我告诉你了这条路可通,具体怎么走,得自己去动手了。