扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
华为和各大高校的联系都挺紧密的,这门课也是华为和高校联系的结果。
成都创新互联公司是专业的秦淮网站建设公司,秦淮接单;提供网站设计、网站制作,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行秦淮网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
一、开设鸿蒙系统课的意义
开设鸿蒙系统课,代表着HarmonyOS正在慢慢走进校园,先是武汉大学,其次可能是清华北大……
在高效开设鸿蒙课程,可以从学校教育开始吸引更多年轻人投入软件开发中,这无疑是好的——这为增强中国软件技术实力奠定了基础,尤其是在我们缺乏技术的情况下。
万物互联是5G出现以来,互联网的必然趋势。“华为软件做操作系统,挑战不在于技术,而在生态”,这句话出自于华为消费者业务软件部总裁王成录。建设华为的万物互联生态需要更多的软件开发者和硬件开发者,需要越来越多的年轻人学习挼勤俭开发,投入软件开发,带来源源不断的新生力量。武汉大学开设全国首个鸿蒙系统课程,正是此用意。
总的来说还是很有意义的一件事情,因为现在鸿蒙出来之后大家都说是安卓套壳,但事实上个人认为更大的原因其实在于鸿蒙的生态还远没有搭建起来,在还没有足够多的开发者的情况下,不基于安卓开发用户会很难接受,这是最困难的一件事情。
二、从课程本身来说
这门课从今年3月就已经开设了,这门专选学分课名为《HarmonyOS移动程序设计》,主要是为了计算机科学技术、软件工程和信息管理学院相关专业的学生选修开设的,所以并不存在蹭热度这一说。
武汉大学专门为《HarmonyOS移动程序设计》这门课程制定了全新的教学方案和教材,意在培养学生使用国产移动操作系统和开发工具,开发HarmonyOS系统应用的兴趣。
同时,该课程也是HUAWEI与武汉大学“产学合作协同育人项目”联合打造的全国首个HarmonyOS高校课程,这不仅标志着HarmonyOS开始融入高校专业课程体系,从高等教育开始培养中国软件领域的专业化人才,也说明了华为目前已经捐赠的鸿蒙核心基础架构已经实施到了教育中。
而目前手机app开发,大家第一个想到的就是Android Studio,采用Java开发安卓app,学校里面授课大致也是按照这个思路,要么就是iOS开发。
对于鸿蒙,到底怎么开发,会不会有什么坑在里面,华为或许清楚,或许不清楚,这一切都需要大家共同去完成。武大和华为合作,在学校里面教授鸿蒙的开发,正是在为鸿蒙培养生态,为日后能够和安卓还有iOS平起平坐奠定基础。
这门课首先当然是教了学生如何开发鸿蒙的应用,但我觉得吧,选这门课的也就二三十人,真的能学会的也不见得有多少,但是更大的意义在于向外传达出了一个信号:鸿蒙开发可以开始研究了。
此外,这一做法也借助武大的师资帮助鸿蒙开创了一个简单版本的入门教程,这也有助于别的公司适配鸿蒙甚至开发鸿蒙专门的应用。
最初竞争时没有跟上,现在要再追赶其实挺艰难的。十年前我们会觉得iPhone4还不错,但是时至今日,我们会觉得iPhone4很落伍了,以至于不怎么值钱。
但是从技术的研发角度来看,从头开始研发一款iPhone4,不管什么时候,成本都是类似的(当然后来者可以借鉴,知道什么是正确的,少了一点点成本,但是该踩的坑还是大致上不会少的)。
但是十年前苹果研发的成本是可以收回来的,因为有消费者买单,但是十年后的今天再去研发,成本就很难收回来了,只能靠着不断的投入,达到当今的最高水平,才会渐渐的有消费者去接受,这个过程是很让人绝望的,而华为至少有勇气去挑战这一切。
三、总结
不管是华为造出来了,还是小米、oppo、vivo、中兴等其他任何一家企业研究出来了,都是可喜可贺的事情,都是值得尊敬的。它填补了没有操作系统的空白,虽然华为的本意可能是出于自己的商业考虑,但某种意义上也是为国家做出了一定的贡献。
产化替代,降低对于漂亮国的依赖。鸿蒙在此其中必定也有它的作用。国家肯定是支持的,武汉大学的态度也是没有毛病的,操作系统的建设需要人才,就像很多大学增加半导体投入及建设半导体相关大学一样。不只是对于学校的好处,而是对于国家大方向的好处。
武汉大学对于鸿蒙系统的认可,也可以在某种意义上打击了网络喷子黑鸿蒙的底气,也更加证明的鸿蒙的前途明朗。
一个操作系统的建设,不只是一家企业可以的,需要更多的企业,更多的个体参与进来。像安卓一样,华为已经开源,期待各位的加入,发展壮大。
Ability
Ability是应用所具备能力的抽象
2.onActive()
Page会在进入INACTIVE状态后来到前台,然后系统调用此回调。Page在此之后进入ACTIVE状态,该状态是应用与用户交互的状态。Page将保持在此状态,除非某类事件发生导致Page失去焦点,比如用户点击返回键或导航到其他Page。当此类事件发生时,会触发Page回到INACTIVE状态,系统将调用onInactive()回调。此后,Page可能重新回到ACTIVE状态,系统将再次调用onActive()回调。因此,开发者通常需要成对实现onActive()和onInactive(),并在onActive()中获取在onInactive()中被释放的资源。
3.onInactive()
当Page失去焦点时,系统将调用此回调,此后Page进入INACTIVE状态。开发者可以在此回调中实现Page失去焦点时应表现的恰当行为。
4.onBackground()
如果Page不再对用户可见,系统将调用此回调通知开发者用户进行相应的资源释放,此后Page进入BACKGROUND状态。开发者应该在此回调中释放Page不可见时无用的资源,或在此回调中执行较为耗时的状态保存操作。
5.onForeground()
处于BACKGROUND状态的Page仍然驻留在内存中,当重新回到前台时(比如用户重新导航到此Page),系统将先调用onForeground()回调通知开发者,而后Page的生命周期状态回到INACTIVE状态。开发者应当在此回调中重新申请在onBackground()中释放的资源,最后Page的生命周期状态进一步回到ACTIVE状态,系统将通过onActive()回调通知开发者用户。
6.onStop()
系统将要销毁Page时,将会触发此回调函数,通知用户进行系统资源的释放。销毁Page的可能原因包括以下几个方面:
用户通过系统管理能力关闭指定Page,例如使用任务管理器关闭Page。
用户行为触发Page的terminateAbility()方法调用,例如使用应用的退出功能。
配置变更导致系统暂时销毁Page并重建。
系统出于资源管理目的,自动触发对处于BACKGROUND状态Page的销毁。
AbilitySlice生命周期
AbilitySlice生命周期回调与Page的相应回调类似,因此不再赘述。由于AbilitySlice承载具体的页面,开发者必须重写AbilitySlice的onStart()回调,并在此方法中通过setUIContent()方法设置页面。
Page与AbilitySlice生命周期关联
当AbilitySlice处于前台且具有焦点时,其生命周期状态随着所属Page的生命周期状态的变化而变化。当一个Page拥有多个AbilitySlice时,例如:MyAbility下有FooAbilitySlice和BarAbilitySlice,当前FooAbilitySlice处于前台并获得焦点,并即将导航到BarAbilitySlice,在此期间的生命周期状态变化顺序为:
对应两个slice的生命周期方法回调顺序为:
FooAbilitySlice.onInactive() -- BarAbilitySlice.onStart() -- BarAbilitySlice.onActive() -- FooAbilitySlice.onBackground()
在整个流程中,MyAbility始终处于ACTIVE状态。但是,当Page被系统销毁时,其所有已实例化的AbilitySlice将联动销毁,而不仅是处于前台的AbilitySlice。
华为开发者创新中心基于华为云、HMS Core和HarmonyOS相关技术,结合华为的开放能力,赋能产教融合,制定人才培养方案,大大助力院校课程改革、专业建设。课程内容包含移动应用开发方向、智能终端方向、HarmonyOS开发与应用等,院校可根据不同专业建设诉求进行选择。
此外华为开发者创新中心还提供了很多其他的服务,比如考试认证,提升学生的就业竞争力;师资培训,助力院校强化师资队伍建设,确保院校开课无忧;生态联运,举办丰富科创活动,提供相应代金券和奖学金支持;人才计划,助力高校毕业生实现高质量就业等。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流