0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

AWorks开发者越来越多,却只有极少数了解其精髓

AGk5_ZLG_zhiyua 来源:互联网 作者:佚名 2018-05-07 08:34 次阅读

一、思维差异

苹果之所以成为全球最赚钱的公司,关键在于产品的性能超越了用户的预期,且因为大量可重用的核心领域知识,综合成本做到了极致。Yourdon和Constantine在《结构化设计》一书中,将经济学作为软件设计的底层驱动力,软件设计应该致力于降低整体成本。人们发现软件的维护成本远远高于它的初始成本,因为理解现有代码需要花费时间,而且容易出错。同时改动之后,还要进行测试和部署。由于缺乏科学的软件工程方法,不仅软件难以重用,而且扩展和维护难度很大,从而导致开发成本居高不下。

更多的时候,程序员不是在编码,而是在阅读程序。由于阅读程序需要从细节和概念上理解,因此修改程序的投入会远远大于最初编程的投入。基于这样的共识,让我们操心的一系列事情,需要不断地思考和总结使之可以重用,这就是方法论的源起。

通过财务数据分析,由于早期决策失误和缺乏科学的软件工程方法,我们开发了一些周期长、技术难度大且回报率极低的产品,不仅软件难以重用,而且扩展和维护难度很大,从而导致开发成本居高不下。

由此可见,从软件开发来看,软件工程与计算机科学是完全不同的两个领域的知识,其主要区别在于人,因为软件开发是以人为中心的过程。如果考虑人的因素,软件工程更接近经济学,而非计算机科学。显然,如果我们不改变思维方式,则很难开发出既好卖且成本低的产品。

二、利润模型

产品的BOM成本很低,而毛利又很高,为何很多上市公司的年利润却买不起一套房?房子到底被谁买走了,这个问题值得我们反思!

伟大企业除了愿景、使命和价值观之外,其核心指标就是利润,作为开发人员一个最大的痛苦就是很难精准地开发好卖的产品。因为很多企业普遍都不知道利润是如何来的?所以有必要建立一个利润模型,即“利润=需求-设计”。需求是致力于解决“产品如何好卖”的问题,设计是致力于解决“如何降低成本”的问题。

代码的优劣不仅直接决定了软件的质量,还将直接影响软件成本。软件成本是由开发成本和维护成本组成的,而维护成本却远高于开发成本,蛮力开发的现象比比皆是,大量来之不易的资金被无声无息地吞没,整个社会的资源浪费严重。

为何不将复杂的技术高度抽象呢?如果实现就能做到让专业的人做专业的事,AWorks就是在这样的背景下诞生的。由于其中融入了更多的软件工程技术方法,因此就能做到将程序员彻底从非核心域中释放出来聚焦于核心竞争力。

三、核心域和非核心域

其实一个软件系统封装了若干领域的知识,其中一个领域知识代表了系统的核心竞争力,这个领域被称为“核心域”,其它领域称为“非核心域”。虽然更通俗的说法是“业务”和“技术”,但使用“核心域”和“非核心域”更严谨。

非核心域就是别人的领域,比如,底层驱动、操作系统和组件,即便你有一些优势,那也是暂时的,竞争对手也能通过其它渠道获得。虽然非核心域的改进是必要的,但不充分,还是要在核心域上深入挖掘,让竞争对手无法轻易从第三方获得。因为在核心域上深入挖掘,达到基于核心域的复用,这是获得和保持竞争力的根本手段。

要达到基于核心域的复用,有必要将核心域和非核心域分开考虑。因为过早地将各个领域的知识混杂,会增加不必要的负担,从而导致开发人员腾不出脑力思考核心域中更深刻的问题。由于待解决的问题的规模一旦变大,而人脑的容量和运算能力有限,因此必须分而治之,因为核心域与非核心域的知识都是独立的。

四、共性与差异性

如果没有ARM公司的IP授权模式,则在设计MCU时势必消耗大量来之不易的财富。虽然ARM公司的规模相对来说不大,但毫不影响ARM成为一个伟大的企业,其为人类做出的贡献是有目共睹的。

尽管如此,没有软件的支持,那么硬件就是一坨废铁。由于需求五花八门,尽管人们也做出了巨大的努力,期望最大限度地降低开发成本,似乎人们期望实现美好的心愿遥遥无期,无法做到高度地重用人类通过艰苦努力积累的知识。由于商业利益的驱使,伟大企业的不伟大之处,企图将客户绑在他们的战车上,让竞争对手绝望,大凡成功的企业无不如此。

有没有破解的办法呢?那就是“共性与差异性分析”抽象工具。实际上,不管是基于何种内核的MCU,也不管是哪家公司的OS,其设计原理是一样,只是实现方法和实体(硬件和程序)不一样,但只要将其共性抽象为统一接口,差异性用特殊的接口应对即可。

基于此,我们不妨做一个大胆的假设。虽然PCF85063、RX8025T和DS1302来自不同的半导体的公司,但其共性都是RTC实时日历时钟芯片,即可高度抽象共用相同的驱动接口,其差异性用特殊的驱动接口应对。虽然FreeRTOS或μC/OS-II或sysBIOSLinux、Windows各不相同,但它们都是OS,多线程、信号量、消息、邮箱、队列等是其特有的共性,显然QT和emWin同样可以高度抽象为GUI框架。也就是说,不管什么MCU,也不管是否使用操作系统,只要修改相应的头文件,即可复用应用代码。

由此可见,无论选择何种MCU和OS,只要AWorks支持它,就可以在目标板上实现跨平台运行。因为无论何种OS,它只是AWorks的一个组件,针对不同的OS,AWorks都会提供相应的适配器,那么所有的组件都可以根据需要互换。

由于AWorks制定了统一的接口规范,并对各种MCU内置的功能部件与外围器件进行了高度的抽象,因此无论你选用的是ARM还是DSP,以高度复用的软件设计原则和只针对接口编程的思想为前提,则应用软件均可实现“一次编程、终生使用、跨平台”,显然AWorks给你带来的最大价值就是不需要重新发明轮子。

五、 生态系统

如果仅有OS和应用软件框架就构成了生态系统,这是远远不够的。在万物互联的时代,一个完整的IoT系统还包括传感器、信号调理电路、算法和接入云端的技术,可以说异常复杂包罗万象,这不是一个公司拿到需求就可以在几个月之内完成的,需要长时间的大量积累。

ZLG在成立之初就做了长期的布局,我们并没有将自己定位于芯片代理或设计,也没有将自己定位于仪器制造,更没有将自己定位于方案供应商,但随着时间的推移和时代的发展,经过艰苦的努力自然而然地成为“工业互联网生态系统”领导品牌。这不是刻意而为的,而是通过长期的奋斗顺理成章的结果。

ZLG通过“芯片+AWorks”设计了高附加值的模块、板卡和高端测量仪器,通过有线和无线通信接口接入ZWS(ZLG Web Services) IoT云端处理系统,,实现大数据处理,构成工业互联网生态系统。

其商业模式既可以销售硬件,也可以销售平台,还可以针对某个有针对性的行业提供系统服务于终端用户。与此同时ZLG将在全国50所大学建立工业互联网生态系统联合实验室,通过产学研的模式培养人才服务于工业界,还可以通过天使投资打造ZLG系,帮助更多的人取得更大的成功,推动“中国智造2025”计划的高速发展。

六、专家与通才

任何一个组织和系统的成功都离不开专家和通才的鼎力配合与奋斗,这12年一路走来很不容易,但欣慰的是AWorks生态系统的开发,培养了一些专家和核心骨干人才。我深深地体会到卓越人才的价值,怎么形容都不为过,所以今后我的主要工作就是寻找和发现卓越人才,为他们提供一个衣食无忧的,可以静下心创新的平台,大家共同努力改变这世界某一小部分,欢迎自我推荐或读者向我推荐有理想有抱负的人才。如果你有心,你一定能找到我。

七、丛书简介

这套丛书命名为《嵌入式软件工程方法与实践丛书》,其最新动态详见www.zlg.cn(周立功旗下企业:广州致远电子有限公司)和www.zlgmcu.com(广州周立功单片机科技有限公司),全部以电子版的形式发布。

目前已经完成:

《程序设计与数据结构》

《面向AMetal框架与接口的编程》

《面向AWorks框架与接口的编程》(上)

后续还将推出系列图书:

《面向AWPI框架和接口的编程》

《面向AWUI框架和接口的编程》

《面向ZWS IoT框架和接口的编程》

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 周立功
    +关注

    关注

    38

    文章

    130

    浏览量

    37656

原文标题:AWorks的哲学思想

文章出处:【微信号:ZLG_zhiyuan,微信公众号:ZLG致远电子】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    ADS8568上电不能正常工作是什么原因导致的?

    上电,工作就正常了。但是也有极少数的,还依然有上述的问题。 软件隔一段时间(10s),重新初始化,工作就正常了,但是也有极少数的,还依然有上述的问题。 我们采用5V,正负12v供电。 模拟量通过PGA
    发表于 12-27 06:16

    我国软件开发者数量超过940万

    的地位日益凸显。 近年来,我国在软件产业方面取得了长足的进步。随着信息技术的快速发展和普及,越来越多的年轻人投身于软件开发行业,为我国的信息化建设贡献自己的力量。同时,政府也加大了对软件产业的支持力度,推出了一
    的头像 发表于 12-23 11:08 208次阅读

    基于英特尔开发开发ROS应用

    随着智能机器人技术的快速发展,越来越多的研究开发者开始涉足这一充满挑战和机遇的领域。哪吒开发板,作为一款高性能的机器人开发平台,凭借
    的头像 发表于 12-20 10:54 1006次阅读
    基于英特尔<b class='flag-5'>开发</b>板<b class='flag-5'>开发</b>ROS应用

    为什么开发者都往Arm平台迁移

    开发者深知,构建既能高效扩展又能控制成本的应用至关重要。云技术日新月异,背后的技术也在不断发展。近年来,越来越多的公司意识到,将其应用从 x86 架构迁移到 Arm 架构能够带来诸多优势。Arm
    的头像 发表于 12-17 10:19 149次阅读

    开发者洞察 | 小德智能:用涂鸦GenAI能力打造智能宠物创新应用

    宠物硬件和AI能力的结合,正在成为宠物经济接下来的热门风口方向!市场上越来越多的企业,开始将目光投向智能养宠领域,积极打造“AI+宠物”的创新应用。作为涂鸦开发者的小德智能,就专注于将宠物喂养、陪伴
    的头像 发表于 12-12 18:14 176次阅读
    <b class='flag-5'>开发者</b>洞察 | 小德智能:用涂鸦GenAI能力打造智能宠物创新应用

    KaihongOS 4.1.2开发者预览版正式上线,诚邀开发者免费试用!

    深开鸿在2024开放原子开源生态大会上正式宣布KaihongOS4.1.2开发者预览版全面上线,并向全球开发者开放免费下载。作为KaihongOS不断创新与发展的重要里程碑,此次预览版为开发者提供了
    的头像 发表于 09-28 08:07 344次阅读
    KaihongOS 4.1.2<b class='flag-5'>开发者</b>预览版正式上线,诚邀<b class='flag-5'>开发者</b>免费试用!

    KaihongOS 4.1.2开发者预览版正式上线,诚邀开发者免费试用!

    今日,深开鸿在2024开放原子开源生态大会上正式宣布KaihongOS 4.1.2开发者预览版全面上线,并向全球开发者开放免费下载。作为KaihongOS不断创新与发展的重要里程碑,此次预览版为
    的头像 发表于 09-26 15:59 468次阅读

    涂鸦引领云开发AI浪潮,实用给力的三大开发者工具全新发布!

    目前,AI浪潮在云开发领域的发展势头汹涌澎湃,正以前所未有的速度席卷、重塑着各行业的面貌,引领了一场效率与创新的双重革命。涂鸦云开发者平台作为这股AI浪潮中的探索,不仅牢牢把握住了
    的头像 发表于 08-30 12:27 238次阅读
    涂鸦引领云<b class='flag-5'>开发</b>AI浪潮,实用给力的三大<b class='flag-5'>开发者</b>工具全新发布!

    越来越多的领域都用到了USB频谱仪

    科技是不断进步的,越来越多的领域都用到了USB频谱仪。一款值得信赖的产品。
    的头像 发表于 05-07 15:28 560次阅读
    <b class='flag-5'>越来越多</b>的领域都用到了USB频谱仪

    随着非车规器件在汽车上泛滥FPGA会不会越来越多的出现在汽车上?

    随着非车规器件在汽车上泛滥FPGA会不会越来越多的出现在汽车上?
    发表于 04-23 14:50

    IC datasheet为什么越来越薄了?

    刚毕业的时候IC spec动则三四百页甚至一千页,这种设置和使用方法很详尽,但是这几年IC datasheet为什么越来越薄了,还分成了IC功能介绍、code设置、工厂量产等等规格书,很多东西都藏着掖着,想了解个IC什么东西都要发邮件给供应商,大家有知道这事为什么的吗?
    发表于 03-06 13:55

    鸿蒙开发者预览版如何?

    在24年的华为鸿蒙发布会中表示。预览版已经向开发者开放申请,首批支持的机型有三款分别为华为 Mate 60、华为Mate 60 Pro、华为Mate X5。 HarmonyOS NEXT去除
    发表于 02-17 21:54

    华为宣布HarmonyOS NEXT鸿蒙星河版开发者预览面向开发者开放申请

    华为宣布HarmonyOS NEXT鸿蒙星河版开发者预览面向开发者开放申请,这意味着鸿蒙生态进入第二阶段,将加速千行百业的应用鸿蒙化。
    的头像 发表于 01-29 16:42 1430次阅读
    华为宣布HarmonyOS NEXT鸿蒙星河版<b class='flag-5'>开发者</b>预览面向<b class='flag-5'>开发者</b>开放申请

    为什么越来越多的企业会用到 NTP网络时间服务器

          越来越多的企业使用 NTP网络时间服务器 是为了确保计算机网络中的所有设备都具有精确的时间。网络 时间服务器 是一种网络设备,它通过从原子钟等准确时间源获取时间信号并向网络中的设备广播
    的头像 发表于 01-23 14:17 377次阅读
    为什么<b class='flag-5'>越来越多</b>的企业会用到 NTP网络时间服务器

    国产网卡为什么受到越来越多的企业青睐了?

    国产网卡同样取得了优异成绩,并已成为众多企业的重要选择。相比于使用进口芯片开发的网卡,国产网卡对本土企业来说可谓独具优势
    的头像 发表于 01-07 10:27 455次阅读