如果使用这个框架,就必须学习 C#。机器人编程语言之C#C#/.NET优点:1.强大的.Net Framework托管代码集合类,封装了大多数windows上使用的技术组件类, 文件系统,UI界面,数据源访问,网络访问,COM互操作(图形图像多媒体,WPF图形系统),没有的可以通过.net的平台调用win API函数来得到。
2.较简单的语言特性自动内存管理, 单继承,支持事件、委托、属性、Linq等一系列让业务开发更简单的功能。3.Web应用程序开发速度快Web应用程序开发速度快(.net框架的支持,控件可以拖拉(UI方便编辑和定位),添加事件(跳转到控制逻辑层),ADO.net数据源访问, xml 网络类库, windows服务)。
4.和语言平台无关的编译机制及较快的运行速度和语言平台无关的编译机制,及较快的运行速度(ms不推荐, mono的 Xamarin, Unity还不错):编译成IL中间语言,CLR公共语言运行库托管代码,CLR根据运行时程序需要将IL中间语言用JIT即时编译方式编译为内部机器代码,对编译好的机器代码缓存起来,提高了程序速度。
5.代码安全性window是基于角色的安全机制,.net提供了基于代码的安全机制,由于中间语言提供了类型安全性,CLR在运行前检查代码,确定是否有需要的安全权限,CLR没有权限则不能执行该代码。C#/.NET缺点:1.底层和高性能不合适不合适做时间性能很高(高速算法)或空间性能很灵活(内存立即释放)的程序,因为中间语言和编译过程,比C/C Native类型的语言会慢一些,内存自动回收难以立即释放不需要的内存,不采用内联函数和析构函数(不建议)。
2.Windows平台以外支持有限mono不够成熟好用,window以外Java,Python等是很强大和同样优秀的。五、MATLAB——一种面向数值计算的高级程序设计语言MATLAB和它的开源亲戚(例如Octave)在一些机器人专家中非常有名,是他们负责调查数据和创建控制系统常用的语言。还有一个非常有名的MATLAB机器人工具箱。
使用MATLAB单独创建整个机器人系统的人员。如需要分解数据,创建高级图表或执行控制系统,那就很可能需要学习MATLAB。机器人编程语言之MATLABMATLAB优点:1.编程效率高MATLAB语言为演算纸式科学算法语言,由于它编程简单,所以编程效率高,易学易懂。2.高效方便的矩阵和数组运算MATLAB语言像BASIC、C语言一样规定了矩阵的算术运算符、关系运算符、逻辑运算符、条件运算符及赋值运算符,而且这些运算符大部分可以毫无改变的照搬到数组建的运算中。
MATLAB缺点:1.循环运算效率低。MATLAB中所有的变量均为向量形式,这样一方面在对向量进行整体的计算时,表现出其他语言难以表现出的高效率,但是对于向量中的单个元素,或是将向量作为单个的循环变量来处理时,其处理过程相当的复杂。2.封装性不好。一方面,所有的变量均保存在公共工作区中,任何语句都可以调用。