博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《Android程序设计》一3.1 Android平台和传统编程模型的对比
阅读量:6566 次
发布时间:2019-06-24

本文共 508 字,大约阅读时间需要 1 分钟。

3.1 Android平台和传统编程模型的对比

传统编程中,操作系统启动应用时使用单一入口点,通常是main函数,在这个函数中可能会首先解析用户在命令行中提供的输入参数,然后获取输入数据,在处理之后生成输出数据。操作系统负责把程序的代码加载到进程中,然后开始执行它。从概念上讲,这个过程看起来如图3-1所示。

screenshot

使用Java编写程序,这个过程会变得稍微复杂一些:Java虚拟机(VM)负责将二进制代码加载到内存中来实例化Java类。这个过程如图3-2所示。如果使用的是富图形化用户界面系统,如Swing,则可能会启动一个UI系统,在UI系统中通常需要编写回调函数来响应各种操作事件。

screenshot

相比而言,Android则更进一步,它支持多个应用入口点,引入了更丰富的机制。在Android系统中假定的前提是,系统会在不同的地方启动它们,这取决于用户当前正在哪里以及用户接下来想做的是什么。除了位置上的分层,程序近似于一组组件之间的协作,它可能在应用的正常流之外启动。例如,一个对条形码进行扫描的组件提供了这个独立的功能,很多应用可以把它组合到自己的UI流中。用户不需要亲自动手启动每个应用,组件本身就能够调用某个程序与用户交互。

转载地址:http://tfjjo.baihongyu.com/

你可能感兴趣的文章
团队随笔
查看>>
1.7 文件目录管理及相关的命令使用方法
查看>>
PDF中添加页面/合并 PDF 内容
查看>>
JS仿FLASH特效可跳转回首页的CSS二级联动菜单
查看>>
页面导入样式时,使用link和@import有什么区别?
查看>>
类成员与类的实例成员
查看>>
Spark源码编译并在YARN上运行WordCount实例
查看>>
Spring AOP + AspectJ annotation example
查看>>
Spring VS EJB 3 的若干认识误区(转)
查看>>
React.js初探(一)
查看>>
Neo4j CQL -(17)- NULL值
查看>>
BZOJ4554: [Tjoi2016&Heoi2016]游戏 luoguP2825 loj2057
查看>>
json_encode后的中文不编码成unicode
查看>>
修改纵断面图标注栏
查看>>
Flex创建带有空间信息的椭圆(Polygon)
查看>>
java异常常见面试问题
查看>>
课后作业5
查看>>
Centos7.1环境下搭建BugFree
查看>>
共用y轴的双图形绘制
查看>>
第31讲 | 数字货币钱包服务
查看>>