百科问答小站 logo
百科问答小站 font logo



两年嵌入式C语言编程经验,如果有机会做和 Android 相关的 C++、JAVA,还有 Javascript 脚本开发工作,转过去好吗? 第1页

  

user avatar   bluedrum 网友的相关建议: 
      

我算对嵌入式C和Android都算比较有发言权的。因为我都在做教学和开发工作。 丢开C语言在教学应用外。在目前C语言的实际应用中。常见的应用的情景有如下: 内核/驱动,bootloader,Android HAL驱动和Linux库。前两者其实跟应层打交道比较多,后两者算Linux C的应用程序,用POSIX接口比较多。所以有在Android 产品这一层,C语言以及Linux相关知识绝对有需求。 所以C语言,特别是嵌入式C语言很难上手的。训练一个人熟练开发C程序,和训练一个编写C++要难得多。工资和竞争人数不在同一个数量级上。所以C语言熟练最好在这几个领域扩展。

另外一种情况C 与面向对象的语言,C++/java/object C 的关健字,语句书法极为类似,但是两者编程思想极为不同,底层C程序大部是直线阻塞式编程。换句话,基本上流程图怎么画,一般C程序就是怎么实现的。而面向对象语言要考虑与UI配合,都可以抽象成事件驱动,可以理解系统通知做什么,你又编程通知别人做什么,不同的模块调来调去。所以C语言编程思想固化的人,初期转型比一开始就习惯事件驱动编程的人要痛苦的多。

所以我建议你想转换应用开发,可以试试开发一下与底层硬件通讯的小应用。找一个现成的demo用eclipse编译运行起来,这个应该有一二天就成了,成功后,再去读其中代码,这里同时包含java,C++,C的代码。再评估一下自己的转型之路。

至于javascript 已经与Android没有太多直接关联吧,是Web编程语言,

在什么平台都通运行,又是另外一个编程思路了。不过最近HTML5开始流行了,象Jquery+phoneCap库可以在iphone 和Android跑,不过后面支持还是C语言和C++。




  

相关话题

  C语言指针难吗?如何看待数学大v认为指针比范畴论还难? 
  如何看待 Ant Design 圣诞节彩蛋事件? 
  没有程序员觉得高单侧覆盖率完全就是在浪费生命和宝贵的时间吗?程序员最卷最没用的就是为了覆盖率而写单侧? 
  在C语言中,math.h中定义的各种数学函数在电脑上具体是怎么实现的? 
  Bug是如何产生的? 
  软件服务提供商通常会通过什么技术手段限制特定地区的使用? 
  怎么在事先未知将要输入数字的个数的情况下,将其全部赋值给一个数组? 
  嵌入式linux内核在内存中运行地址0x30008000到内存起始运行地址0x30000000中的(0x8000=32k)怎么回事? 
  有没有程序员愿意分享一下你的生活? 
  如何理解互斥锁、条件锁、读写锁以及自旋锁? 

前一个讨论
Mac 下顺手的 C/C++ 开发 IDE 是哪个?
下一个讨论
打壁球可以用网球拍吗,还是用专门的壁球拍?





© 2025-02-05 - tinynew.org. All Rights Reserved.
© 2025-02-05 - tinynew.org. 保留所有权利