C,C++,C#,Java各自的特点、应用的领域以及发张趋势

   2023-02-10 besoo1080
核心提示:C程序的设计自由度较大,什么都要由使用者去保证(比如说数组的下标检测 )应用领域:嵌入式开发,大型游戏等等,其他对效率有很高要求的工程C++可以看成是C的扩张,除具有C风格的设计特点外,

C程序的设计自由度较大,什么都要由使用者去保证(比如说数组的下标检测 )应用领域:嵌入式开发,大型游戏等等,其他对效率有很高要求的工程


C++可以看成是C的扩张,除具有C风格的设计特点外,更重要的是具有了面向对象的编程设计方式。其语法复杂度很高,能较好的完成对现实世界的抽象,有人说,学习好了C++其他语言一看就会,可见C++包罗万象。应用领域:C能用的它基本也能,此外C++一般用于开发大型工程,像游戏之类的


C#是微软针对JAVA开发出来的.NET平台语言,与JAVA有相似功能,跨平台方便,不是自己的本行,不做评论,PS如果不解决这类语言的效率问题,我恐怕一辈子都不会用。

linux和嵌入式linux

为什么一说嵌入式Linux就老是想到“裁剪”、“阉割”这种修饰语呢?如果你这么理解的话,说明,你对嵌入式还是存在一定的误区的,对自己知识结构的完善是不利的。。。

什么叫做嵌入式呢?虽然目前没有很标准的定义,但业界普遍认为:专门为某个应用场景而实现的计算机系统,都叫做嵌入式系统。家里的四口路由器,手机,平板电脑,甚至是PC主板(注意,我说的是主板,不是整个PC)都是嵌入式系统。也可以说,除了你用的PC,工作站,服务器以外,都可以归纳如嵌入式系统的领域。

在嵌入式系统中,有的是有操作系统的,有的是没有操作系统的。虽然单片机在嵌入式应用中仍旧占据着很重要的角色和份额,但从软件工程师的就业发展来说,带有操作系统的嵌入式系统无疑有着更广的发展空间。

嵌入式操作系统中,有各种RTOS(最有名的,莫过于VxWorks了),也有一些实时性能不错的OS(较新的2.6版及向后版本的Linux可以规划在这里),还有一些实时性能不怎么样的OS(2.4版本的Linux内核,Windows等可以划归在这里)。

所以,根据应用场景,操作系统是有可能非非非常复杂的。所以,嵌入式Linux未必是“不完整的”“阉割了重大功能的”“简单化的”Linux。。。

纠正了概念,统一了你我的认识之后,你肯定就不会再问:究竟是学“纯”Linux呢,还是学嵌入式Linux呢?这个问题是没有意义的。其实,无论是内核,还是libc库,还是各种应用程序,PC和嵌入式的知识是共同的,没有严格界限的。嵌入式Linux跟PC上Linux的区别,更多的在于驱动程序的选择,本地编译还是交叉编译,UI界面的选择等方面。它们的本质技术,是没有任何区别的。

你在嵌入式上可能需要做小量裁剪,你在PC上同样会做裁剪。这并不意味着要阉割重要功能,因为,你在PC上做的工作,同样会希望在手机、平板电脑等这些复杂的移动终端上得以实现的~~~
(如果你只是为了实现一个很简单的功能,那我还是干脆建议你不要学习、使用Linux了)~~

所以,最终的结论是:如果你能精通Linux,那无论是PC上的Linux,还是嵌入式Linux,那么你都是很精通的。嵌入式和PC只是应用场景不同而已(更多的体现在用户空间各种程序的区别)。

如果希望成为一个内核开发者:
如果你对内核感兴趣的话,可以推荐两本公认的经典书籍:《深入理解Linux内核》《LInux设备驱动程序》。这两本,是所有内核开发工作者,读1遍,10遍,100遍,仍旧会认真读下去,并尝试理解每一个字的经典中的经典。
另外,我个人推荐一本《深入Linux内核架构》。这本书是一个德国人写的,对于基础比较薄弱的,是一个很好的自学教材。
如果看起来感觉还是吃力,建议以《Linux内核设计与实现》作为起步。这本书里没有讲透彻的地方,都可以去参看上面的那三本书。这本书,如果读起来也比较吃力的话,建议看看《Linux内核0.11完全注释(赵炯)》。如果连这本书都比较吃力的话,我还真没辙了,建议先看Linux的一些科普文章了。
补充一句:看任何书,永远都无法替代自己读内核源码~~~

如果你要搞应用,那么《UNIX环境高级编程》不可不读。剩下的,就要看你搞什么应用了。

 
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们联系,本网站将在规定时间内给予删除等相关处理.

 
更多>同类科技
  • 如何实现信息采集分类网站?
    我们前端一般只做设计图稿,切图跟页面制作,及js特效的添加。其他的后台数据,我们都用后台程序员实现。SQL注入漏洞是什么,相对于哪些网站有这种漏洞?请把IE菜单-工具-Internet选项-高级-
    02-10
  • 深圳市诚添益科技有限公司介绍?
    简介:深圳市诚添益科技有限公司成立于2010年07月30日,主要经营范围为数码通讯产品的研发及销售等。法定代表人:陈书慧成立时间:注册资本:50万人民币工商注册号:企业类型:有限责任公司(自
    02-10
  • 传感器的应用
      随着技术的进步,由称重传感器制作的电子衡器已广泛地应用到各行各业,实现了对物料的快速、准确的称量,特别是随着微处理机的出现,工业生产过程自动化程度化的不断提高,称重传感器已成为过
    02-09
  • 我的朋友是科技达人作文800字
    机器人是智能控制中的一个分支。当我看到机器人做着各种各样的优美动作,完美的执行人们每一个指令的时候,心里真的感叹神奇。我多么希望有一天,我也能成为机器人的编程者,设计出一款真正的有
    02-09
  • 普洱茶有什么保健作用?有药用功能吗?
    降三高,通肠道,要长期喝,不可代替药物。适宜饭后一小时左右喝。阿诗玛是什么人呀?谁知道?阿诗玛是彝族--撒尼人的经典性传说。聪明、善良、美丽、勤劳的农家姑娘阿诗玛与勇敢憨厚的牧羊人阿
    02-06
  • 非主流图片哪找啊?
    www.qqfzl.com 或许能帮你下``````中国的古代、近代和现代的科学家层出不穷,他们是民族的脊梁。 请回答...(1)图一是毕升、图二是侯德榜、图三是袁隆平。 (2)他们的主要成就分别是发明活字印
    02-05
  • 英国科学革命的代表人物有谁
    英国科学革命的代表人物有瓦特、牛顿。1、瓦特改良蒸汽机是工业革命中最具代表性的重大发明,使人类社会进入蒸汽时代。2、十七纪学术分科未若今日之精密;当时所称的物理科学,包括了数学、化学
    02-04
  • 宋元时期三大科学家的成就?
    毕升、沈括、郭守敬。北宋毕升发明活字印刷术,取代了雕版印刷,奠定了现代活字印刷和印刷基本工序的基础。宋人沈括被李约瑟评为“中国科学史上最奇特的人物”。他的“十二气历”创造了先进合理
    02-04
  • 中国制造北斗用了多少年?
    据报道,6月23日北斗三号最后一颗全球组网卫星,在西昌卫星发射中心“重启”发射后,成功飞向太空。至此,30颗北斗三号全球组网卫星全部到位,我国北斗三号全球卫星导航系统星座部署全面完成,
    02-04
  • 中国移动中国联通中国电信5G出来了吗?
    2019年11日1日,中国联通5G网络正式商用。各省目前5G网络应用情况可通过手机营业厅-服务-5G-附近5G”查询或者拨打10010客服了解您所在地的5G网络覆盖情况 。
    02-04
更多>推荐图片
点击排行