嵌入式开发中的抽象、封装与继承

这篇具有很好参考价值的文章主要介绍了嵌入式开发中的抽象、封装与继承。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

嵌入式开发中的抽象、封装与继承

## 1 何从实现?

OOP 是 CPP 的显著特征,尽管它是一种多重范式的语言

第一部分谈的是产品的实现(implement)而非产品的设计,因为对于个人开发者而言,往往是知道如何实现产品,而后才着手做整体设计的。这并不是说实现高于设计,而是承认此类开发者的首要驱动力通常不是用户需求,而是尝试新事物的热情。

嵌入式开发中的抽象、封装与继承,从物理定律到编程语言,嵌入式,模块,操作系统,linux

对新事物的尝试是以一些原则为基础的。从一年级学习电路原理开始,基尔霍夫定律指导下的‘前后级独立’的分析原则就印刻在每个电子/控制/仪器专业的预备工程师心中。各类软件工程实施原则也时刻提醒我们模块化设计对系统的可维护性与可拓展性的重要意义。这就是说,产品的模块化应当尽早开展,最好在需求分析阶段就将产品拆解成多个需求模块,后续设计时则只需针对各个需求模块之间的衔接关系做出定义即可。

嵌入式开发中的抽象、封装与继承,从物理定律到编程语言,嵌入式,模块,操作系统,linux

尽管C++(C PLUS PLUS) 是一种多重范式(Multiple paradigms)的语言,但面向对象(Object Oriented Programming)仍不失为它最显著的特征。类似于 CPP,尽管产品设计的原则成千上万,但对需求的抽象仍是并仍将长期是产品实现最关键的预处理。

嵌入式开发中的抽象、封装与继承,从物理定律到编程语言,嵌入式,模块,操作系统,linux

2 何必抽象?

计算机科学是关于计算机的科学,计算机技术是关于抽象的技术

嵌入式开发中的抽象、封装与继承,从物理定律到编程语言,嵌入式,模块,操作系统,linux

  • 应用
  • 编程语言/运行时
  • 操作系统
  • 处理器
  • 计算单元
  • 数字逻辑/电路
  • 物理布局(VLSI)
  • 流片

计算机体系结构中,每一层级的设计者都只需要考虑下一层层级的问题,不需要考虑下一层级的下一层级的问题。所以抽象即是简化,抽象提高效率。

3 何须封装?

尼泊尔军刀或许比电钻功能更多,但我们需要的是电钻

这是某处理器的地址映射图,从中可以看到两条 APB 总线的地址范围。片上所有的外设都挂载在这两条总线上,开发者要操作外设,就得以这两条总线的起始地址为基地址访问外设。

嵌入式开发中的抽象、封装与继承,从物理定律到编程语言,嵌入式,模块,操作系统,linux

这是 C++ Boost 库主页上的图,一个红色按钮,体现了一键可得的设计哲学。

嵌入式开发中的抽象、封装与继承,从物理定律到编程语言,嵌入式,模块,操作系统,linux

当然这种对比略显夸张,但良好的封装的却可以屏蔽掉不必要的细节,极大节省开发者的精力。

4 何谈继承?

“寻找别人已经走过的路”(Find a path that others have already traveled)

我们在解决问题或实现目标时,应当寻找已经有人成功探索过的方法和经验。通过借鉴他人的经验,我们可以避免重复的探索和错误,并更有效地达到目标。

嵌入式开发中的抽象、封装与继承,从物理定律到编程语言,嵌入式,模块,操作系统,linux嵌入式开发中的抽象、封装与继承,从物理定律到编程语言,嵌入式,模块,操作系统,linux嵌入式开发中的抽象、封装与继承,从物理定律到编程语言,嵌入式,模块,操作系统,linux

以操作系统为例,它将处理器抽象为进程/线程、将主存抽象为内存管理、将磁盘抽象为文件系统,我们可以借鉴/复用操作系统中的这些组件,而不必自行开发。文章来源地址https://www.toymoban.com/news/detail-657482.html

到了这里,关于嵌入式开发中的抽象、封装与继承的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 嵌入式软件开发工程师应该关注芯片数据手册中的哪些信息

    1. 芯片的架构和处理器类型:了解芯片的架构和处理器类型可以帮助开发人员选择合适的开发工具和编程语言。 2. 芯片的时钟频率和电源要求:了解芯片的时钟频率和电源要求可以帮助开发人员设计合适的电路和电源系统。 3. 芯片的存储器类型和容量:了解芯片的存储器类

    2024年02月08日
    浏览(58)
  • 嵌入式Linux系统中的设备驱动开发:从设备树到驱动实现

    大家好,今天给大家介绍 嵌入式Linux系统中的设备驱动开发:从设备树到驱动实现 ,文章末尾附有分享大家一个资料包,差不多150多G。里面学习内容、面经、项目都比较新也比较全! 可进群免费领取。 在嵌入式Linux系统中,设备驱动是连接硬件设备和操作系统之间的桥梁。

    2024年02月19日
    浏览(66)
  • 关于嵌入式开发的一些信息汇总:嵌入式C开发人员、嵌入式系统Linux

    这篇文章是关于嵌入式开发的一些基本信息,供想入行的人参考。有一些作者本人的想法,以及来自外网的大拿的文章翻译而来,原文链接在此Learning Linux for embedded systems,再次感谢,支持原创。 普通C开发人员和嵌入式C开发人员之间的 基本区别在于 ,因为嵌入式C程序被设

    2024年02月03日
    浏览(71)
  • 适合嵌入式开发的GUI(嵌入式学习)

    嵌入式开发中的GUI(图形用户界面)是指在嵌入式系统中实现图形化的用户界面,以便用户可以通过触摸屏、按钮、鼠标或其他输入设备与系统进行交互。 以下是一些常见的嵌入式GUI开发方法: 轻量级GUI库:一些轻量级的GUI库适用于嵌入式系统,例如uGFX、LittlevGL、Nanogui等。

    2024年02月09日
    浏览(69)
  • 嵌入式Linux:如何进行嵌入式Linux开发?

    目录 1、裸机开发 2、SDK开发 3、驱动开发 3.1、字符设备驱动 3.2、块设备驱动 3.3、网络设备驱动 4、应用开发 嵌入式Linux开发主要有四种方式:裸机开发、SDK开发、驱动开发和应用开发。 裸机开发通常指在没有操作系统支持的环境中直接在硬件上运行程序的开发。这种开发方

    2024年01月25日
    浏览(80)
  • 嵌入式软件调试与验证4自动重现和分析嵌入式软件中的Bug

    嵌入式软件的重要性逐年增加。ISO26262标准的最高安全级别要求十个9小时内无故障运行。然而,历史上的一些项目表明,即使进行了全面的测试,多年来仍有许多错误未被发现。航天飞机的控制计算机仅有50万行源代码,却经过了长达8年的测试,每行源代码耗资1000美元,即总

    2024年02月08日
    浏览(57)
  • 嵌入式开发:单片机嵌入式Linux学习路径

    SOC(System on a Chip)的本质区别在于架构和功能。低端SOC如基于Cortex-M架构的芯片,如STM32和NXP LPC1xxx系列,不具备MMU(Memory Management Unit),适用于轻量级实时操作系统如uCOS和FreeRTOS。高端SOC如基于Cortex-A架构的芯片,如三星、高通、飞卡、全志和瑞芯微等,具备MMU,支持虚拟内

    2024年02月15日
    浏览(57)
  • 嵌入式系统中的FPGA

            假设你有一台智能家居系统,其中的FPGA可以被类比为智能家居中的中央控制器。 智能家居系统: 定制家居逻辑: 你希望智能家居系统能够根据你的生活习惯、时间表和喜好自动控制灯光、温度、窗帘等设备。就像FPGA中可以根据需求重新配置硬件逻辑一样,智能

    2024年02月03日
    浏览(58)
  • 【小黑嵌入式系统第八课】初识PSoC Creator™开发——关于PSoC Creator&下载、创建项目、单片机中的hello world(点亮一个led)

    上一课: 【小黑嵌入式系统第七课】PSoC® 5LP 开发套件(CY8CKIT-050B )——PSoC® 5LP主芯片、I/O系统、GPIO控制LED流水灯的实现 下一课: 【小黑嵌入式系统第九课】PSoC 5LP第一个实验——LED、字符型LCD显示实验 本课程主要介绍了 PSoC® 5LP, 一个基于 ARM® Cortex®-M3 的可编程片上系

    2024年02月03日
    浏览(62)
  • 【嵌入式】字体极限瘦身术:Fontmin在嵌入式UI中的魔法应用(附3500常用汉字)

    🧑 作者简介 :阿里巴巴嵌入式技术专家,深耕嵌入式+人工智能领域,具备多年的嵌入式硬件产品研发管理经验。 📒 博客介绍 :分享嵌入式开发领域的相关知识、经验、思考和感悟,欢迎关注。提供嵌入式方向的学习指导、简历面试辅导、技术架构设计优化、开发外包等

    2024年03月11日
    浏览(64)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包