1.
这篇文章主要是推荐周工的一本书,大家在学习嵌入式的时候,很多人不明白嵌入式系统和单片机的区别,又感觉自己对嵌入式有所了解,知道什么是嵌入式,文章里的很多见解我觉得对很多人都非常有帮助,今晚上周工的电子书刚出来,我觉得应该第一时间推荐给大家,希望大家读完之后,会感受到嵌入式软件的框架、分层、各司其职的功能,还涉及到如果用 C 去实现面向对象编程。
我认为很多嵌入式系统都是相通的,我一直说我喜欢做嵌入式软件,也不完全只是做 linux 驱动,而对于软件开发人员,了解系统的特性才能编写出高质量的代码,说白了,真的不能乱来,就比如原子操作,互斥锁之类的,我觉得你在很多嵌入式系统中都会有,即使名字不完全一样,也会有类似的东西来解决同样原因引发的问题。
2.
文章中的某一段,大家自行体会
文章摘录:提到面向对象编程,往往会涉及到三个重要的特性:封装、继承与多态。可能很多人对这几个词语并不陌生,甚至是耳熟能详。就像笔者随机的问了几个公司的实习生,“面向对象编程的三大特性是什么?”几乎都可以不假思索的回答:“封装、继承与多态”。但是,在实际编程中,应用这些特性真的能像回答问题这么熟练吗?
部分 C 程序员(特别是嵌入式C程序员)有一种误解:C 语言不是面向对象编程语言,C++、Java、Python 等更高级的语言才是,使用 C 语言是无法实现面向对象编程的。这种误解致使他们没有意识去接触一些优秀的面向对象编程方法,例如设计模式、设计原则、软件架构设计等等,进而很难开发出易维护、易部署、易重用、易管理的软件,很难面对项目需求的变更(扩展),很难开发和维护大型的复杂项目。
本章将站在实际应用的角度,以 C 语言为例,对这些特性进行详细的介绍。实际上,AWorks 的核心及基础组件均是使用 C 语言编写的(当然,这并不影响上层应用使用 C++ 等其它语言。其实,众所周知的 Linux,其内核主要也是使用 C 语言实现的),但其中应用了大量的面向对象编程思想。通过这一章的内容,读者也可以更进一步的理解 AWorks。
3.
AWorks 是周工推出的一个嵌入式系统,我今天跟同事讨论,什么是嵌入式系统,Linux 是不是嵌入式系统?我觉得大家可以自己去理解,自己去学习,评论看看,到底什么才算是嵌入式系统。
我觉得对于做技术的同学有这样的机会接触这部分非常不错,了解大牛是如何搭建嵌入式系统框架的,这部分不像 Android ,很大原因是 Android 太能吃硬件资源了,做不到轻量级的系统开发。
AWorks 的学习链接如下:
AWorks链接
https://mp.weixin.qq.com/s/VWl15ALHaezkuR3ogeU0WA
如果获取电子书?
在公众号后台回复书名获取下载链接
「 抽象接口技术和组件开发规范及其思想 V0.2 」
如果觉得名字太长,还是直接复制过去比较方便
推荐阅读
我认识的周立功(内附广州周立功电子招聘)