百科问答小站 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++。




  

相关话题

  面向对象程序设计比传统的面向过程程序设计更有什么好处? 
  windows如何监控文件的修改? 
  长期当程序员会失去什么? 
  如何理解互斥锁、条件锁、读写锁以及自旋锁? 
  如何成为 ios开发高手? 对ios程序员有哪些要求? 
  为什么MSVC比GCC/Clang差(功能支持也差,译后性能也差),微软做不好一个C语言编译器吗? 
  用链表的目的是什么?省空间还是省时间? 
  C语言 下面哪个定义是合法的? 
  美国有哪些值得推荐入职的互联网公司? 
  新程序员如何向英文社区(如github)进阶? 

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





© 2024-11-21 - tinynew.org. All Rights Reserved.
© 2024-11-21 - tinynew.org. 保留所有权利