当前位置:  技术问答>linux和unix

嵌入式软件开发的一个困惑:究竟应该自上而下,还是可以自下而上

    来源: 互联网  发布时间:2016-10-15

    本文导语:  大家好,我从教研室毕业参加工作已经两年多了,本科我是电子信息专业的,只学过C语言,其他的计算机专业课没有学过,更谈不上写过很多程序了;教研室的时候开始接触嵌入式软件开发,从事的是简单的终端UI设...

大家好,我从教研室毕业参加工作已经两年多了,本科我是电子信息专业的,只学过C语言,其他的计算机专业课没有学过,更谈不上写过很多程序了;教研室的时候开始接触嵌入式软件开发,从事的是简单的终端UI设计——准确说是终端UI的修改而已,用的全是C,而对于OOP编程则一窍不通。工作之后,开始从事Linux嵌入式BSP开发,不过做的时钟都只是独立的模块,而且框架别人都搭好了的,只是需要进行修改和代码优化、测试就可以了,这样的工作两年下来,我却时钟觉得收获很少,而且明明是自己完成的工作几个月之后就很容易忘记了,更谈不上系统架构的理解。于是我开始思考,对于 应用级—中间件—系统级 这样的嵌入式软件大模块,我究竟应该是从上而下,还是可以自下而上地研究和实践?似乎前者才更有逻辑一些,但是我请教一些师兄,他们却说直接玩底层没有问题,不需要涉及多少应用的东西。
    现在我们将要开始进行基于Android的开发,对于Java我没有学过,而对于Android系统移植我觉得也是个很繁杂的工作,我应该在有限的时间内从哪里入手呢?这两天趁着有空,向xdjm们虚心求教了,谢谢

|
出现这种困惑也很容易理解,当初我也一样的困惑过。

我觉得吧,自上而下,或自下而上,需要根据你所从事的工作而定,
首先努力去完成领导安排的任务,

然后再想办法去学习自己不足的地方


学校的考试成绩不能说明什么,只要多参与一些项目,需要知识的时候再去翻书,补充基础知识。
相信你很快就是高手

|
无论自上而下,还是自下而上,对面向对象的理解都是必须的。因为这是设计思路,不是工作起点和顺序的问题。

移植严格来讲有点另类,它并不是系统设计和实现的问题,而已对系统的修改。linux的移植要掌握的东西真的多如牛毛(我说的是真正把linux移植到一个新的芯片,不是那种改改配置就KO的移植),对计算机系统的深入理解必要的,中断,原子操作,内存屏障,多任务,cache等等,还有这些改练之间的互相关系和影响都要一清二楚。

而非移植类的开发工作,无论底层还是上层,OO都是必不可少的基础,直接影响code的质量,除非你愿意写些千疮百孔code。应用,特别是大型的应用,架构设计比较重要。所以如果你是用oo的方式来开发,那么懂点design pattern很有好处。

|
针对你说的做过的事情忘得干干净净的问题,我有如下建议:

1. 养成良好的笔记习惯,把做过的项目详细写一个过程文档,把当时所需要的各种资源做一个分门别类的备份。
2. 增强体育锻炼,提高自己的记忆能力。
3. 平台搭建和模块移植有共性的东西,善于总结,对于过往的工作进行总结,会发现其实技术本身就是根据人们的需求而逐渐演变的过程,可以把这个叫做 “技术思维”,下次遇到一个自己不熟悉的项目,也可以根据这个思维模式来进行探索和尝试,也许你就可以应付一些未知领域的技术难题了。

|
嵌入式linux学习需要掌握的东西确实太多了,这段时间也在努力。
个人感觉还是应该从基础做起,对linux的整个结构有个大致的了解,能够根据需要对linux进行裁剪。根据需要编写相应的驱动程序。这些过程会涉及到很多方面的知识。做什么还是能够做到知其所以然比较好,这样会越做越有信心。
建议根据工作的方向,有目的的学习,由表及里,逐步深入了解。

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 请问在哪下载嵌入式Linux开发平台???想学嵌入式开发!!!
  • 有谁做过嵌入式 Linux开发?是否有嵌入式Linux的JVM?
  • 嵌入式网络编程与非嵌入式网络编程有什么不同
  • 问一个弱弱的问题:做嵌入式开发,宿主机的Linux版本一定要跟目标机上的嵌入式Linux版本一致么?
  • 我怎么糊涂了:想开发嵌入式系统(目标机采用UCLINUX嵌入式操作系统),在RED HAT LINUX下开发,选用什么工具呢?QT还是qt embedded?
  • 嵌入式linux开发:一段代码在windows平台用VC编译运行正常,在linux平台用gcc编译运行正常,但是用arm-linux-gcc编译在嵌入式板子上运行就不正常.
  • 关于“嵌入式Linux”
  • 请问什么是嵌入式数据库?(空)
  • 嵌入式系统的学习
  • 嵌入式学习方法
  • 请问:构建一个嵌入式开发环境时的疑问?
  • linux 嵌入式开发用买开发板吗?
  • 求嵌入式Linux的入门书籍!
  • 嵌入式应用开发协作系统 Yocto
  • 嵌入式系统的C运行库 Newlib
  • 嵌入式GLIBC EGLIBC
  • 驱动程序开发和嵌入式开发有什么联系吗?
  • 嵌入式 syslog
  • vc++与Linux嵌入式
  • 计算机专业学习 嵌入式可以么 ??


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3