写点什么

java 好还是嵌入式好?做 IT 开发该如何选择

用户头像
cdhqyj
关注
发布于: 2021 年 03 月 22 日
java好还是嵌入式好?做IT开发该如何选择

java 好还是嵌入式好?对于这样的问题,我想提问者主要是想要了解两者各自的发展前景,嵌入式的发展前景不言而喻,就拿我们经常接触的消费类电子、手机这些设备,都很多程度上集成了各种功能,当然在工业控制、医疗设备领域应用也很多;目前 java 在许多行业的客户端方面的应用有很多,所以 java 开发者在这方面的需求量也是非常大的,两大领域如何来选择,究竟是 java 好还是嵌入式好?


Java 开发的应用及特点


Java 是 Sun Microsystems 公司 1995 年推出的一种面向对象的程序设计语言,应用于个人 PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网方面的应用软件编程,Java 方向开发需要计算机软件基础、数据库原理、SQLserver、C++程序设计、java 核心编程、linux、websphere 开发工具、DB2 数据库、ERWin 数据库建模、UML、ratioanlrose 建模、OM 软件开发生命周期、J2EEOM 企业级开发、基于 MVC 的 struts 框架技术、软件测试工具与方法等,主要是基于 PC 机、linux 等操作系统之上的应用软件开发,对于硬件电路是完全不懂,主要就是做一些界面、QQ、游戏等上位机应用软件。


Java 虽然所学的内容较多,但入门较容易,初中、高中、中专基础的都能学习,但是有发展瓶颈,就是上升空间不大,且生命周期比较短(大概有 7 年左右的时间),感觉做几年之后没什么可做的了,做 java(应用软件)开发的 35 岁以上的基本很少了,就是常说的“吃青春饭”,且软件更新快,工作比较忙。


嵌入式的应用领域、现状及未来趋势


随着科技进步,嵌入式的出现,以及人们对生活质量,产品的智能化,成本的要求等,以及国家对与物联网、电子、科技的扶持,大量的电子产品都促使嵌入式的快速发展。使用嵌入式的产品如我们常用的手机、平板电脑、电子字典、可视电话、数字相机(DC)、数字摄像机(DV)、U-Disk、机顶盒(Set Top Box)、高清电视(HDTV)、游戏机、智能玩具、交换机、路由器、数控设备或仪表、汽车电子、物联网、智能家居、医疗仪器、航天航空设备等都是典型的嵌入式的应用。


嵌入式系统市场是巨大的,市场需求是嵌入式系统产业化发展的巨大推动力,据报告:10%~20%的计算机芯片是位台式或便携式电脑设计,80%~90%的计算机芯片是位嵌入式产品设计的,这意味着每年有 10 亿至 20 亿个 CPU 是为嵌入式产品制造的,市场决定了嵌入式行业是很有发展前途的行业。


嵌入式工作分类


嵌入式产品开发是基于产品的功能,从功能需求、提出并选择方案、电路设计、PCB 电路板设计、软件设计、样机生产、软硬件综合调试,软硬件结合的产品开发。所以嵌入式开发需要软硬件都懂的基础要求。但根据侧重点的不同嵌入式产品开发工作可以有以下分类:


硬件方面:


1、电路设计:产品原理图的设计,需要对数电模电都比较精通,且熟悉单片机、arm 架构及熟练外围电路的使用;基本上会电路设计的都会 PCB 设计。


2、PCB 电路板的设计:需要熟悉数电、看懂常用模电,对单片机、arm 外设了解,且具备安规电磁兼容的应用经验。


软件方面:


1、驱动开发:基于电路图实现产品的驱动开发,需要看懂电路,精通 C 语言,熟悉 arm 架构及外设的使用,熟悉操作系统内核、驱动。


2、系统开发:基于硬件的 uboot 移植、内核移植裁剪、根文件系统制作等系统环境搭建及驱动移植开发、应用测试等,需要精通 C 语言,看懂电路,linux 系统开发。


3、应用开发:基于操作系统之上的应用程序开发,无需电路方面知识,只需要软件编程,需掌握 Java 或 C++,操作系统、数据库、数据库建模、SQLserver、oracle 等,应用开发更新比较快,像电脑上的软件 QQ、360、游戏等软件,所以工作也比较忙,入门门槛低,但上升空间不大。


嵌入式系统开发及应用开发要求可能不会太高,相对入门比较简单,但系统开发所需掌握知识面还是比较广的,也比较有发展空间,应用开发更新快,发展有限。驱动开发需要有驱动开发经验,如果有开发经验的话,不会很忙,就是实现功能,如果一个产品功能实现了,就没有太多事了,剩余的就是应用开发了,驱动开发更新不会很快。


嵌入式产品开发中不同的工作有不同的一些特点,硬件开发靠经验,经验越丰富越吃香,可以说能做一辈子;软件开发靠思维、靠算法,如果编程思维清晰,算法优越,不需要太长时间就能做的相当不错。如果软硬件都能做,独立开发产品的话,身价更胜一筹。


但是对于入门级甚至初学者来说不可能面面俱到,都要去做,你也没这个能力,即使能做,一般公司也不会让你一个人从硬件到软件独立去开发嵌入式产品,因为公司做项目有时间要求,必须分工协作。


嵌入式的学习规划


嵌入式产品开发是需要软硬件结合,做软件需要能看懂电路,根据电路、功能即实现原理来编写程序,如果电路不懂,是不能编程实现其功能的,硬件开发也需要对芯片架构,外设编程使用比较熟悉,否则你设计出来的硬件不便于软件开发人员编程实现功能,或者你设计出来的硬件繁琐,成本很高。


那么如何学习嵌入式呢,对于想学习嵌入式的朋友们来说有很多都有单片机的学习经历,感觉自学就行,但是从现实情况来看,嵌入式学习还是比较有难度的,很多朋友遇到问题解决不了,学了一部分就学不下去了,嵌入式学习需要有它的学习方法以及发展规划,下面就来谈谈嵌入式的学习规划:


1、软件开发不需要太多经验积累,只要你做过一些开发,编程思维、算法好,不需要太长时间就能做好,所以首先可以做软件开发,比如系统开发或应用开发。


2、对系统比较熟悉,做过一些项目之后,可以朝底层驱动方面发展,这个工作也不会太忙,待遇也相当不错,做过一些项目之后对于电路见的也多了,电路也比较熟悉了。


3、有比较多项目经验之后,电路也熟悉了之后,补充一些硬件电路知识可以朝硬件设计方面发展,整个产品的开发过程都比较熟悉了之后就可以成为项目研发部的主管或经理,也可以自己接外快接项目来做,有管理经验的甚至可以自己开公司做老板,毕竟这方面的产品开发不需要投资太多成本。


就实质来讲,java 与嵌入式各有各的优势和特点:


1.java 是上个世纪推出的一种面向对象的程序设计语言,应用于个人 PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联方面的应用软件编程,java 虽然所学的内容较多,但是入门相对较为容易,无论你是哪个阶段的学生都可以学习,但是该专业发展很有瓶颈,上升空间不大,生命周期比较短,很多人说做 java 应用软件开发的人,35 岁以上的基本就很少了,且软件更新换代速度快,工作比较忙。


2.随着科技进步,嵌入式的出现给人们生活质量、产品智能化带来了质的飞跃,还有的大力支持,一定程度上促使了嵌入式的快速发展,嵌入式技术应用我们日常生活当中方方面面,手机、平板电脑、机顶盒、高清电视、物联网、智能家居等等,由此来看嵌入式系统市场是非常巨大的。


所以,无论选择 java 还是嵌入式都很好,关键是看学习者自己的兴趣和对未来职业的定位。

用户头像

cdhqyj

关注

还未添加个人签名 2020.01.03 加入

还未添加个人简介

评论

发布
暂无评论
java好还是嵌入式好?做IT开发该如何选择