A. android系统级应用层开发是做什么的
涉及各个模块的界面和功能,主要用java语言。例如mms的主要功能集中在应用层。有很多模块其实不绝对区分哪一层,有些是由上至下贯通。看你侧重问什么模块了。
B. 一般的android开发都用到了系统架构哪些层
1:android分为四个层,从高层到低层分别是应用程式层、应用程式框架层
开发一个程式,android系统框架是层层相扣,不能分开的。 应用程式层: 这个层主要指的就是用java语言编写的执行在虚拟机器上的程式,Google在最开始时就 在android系统中捆绑了一些核心的应用(核心应用的编写必须使用应用层序框架层的API框架.
2:android 开发框架有四个层,从高层到低层分别是应用程式层、应用程式框架层
android应用开发框架是 Application Framework. 其系统架构由5部分组成,分别是:Linux Kernel、Android Runtime、Libraries、Application Framework、Applications。
开发什么应用?
硬体还是软体?
硬体的话,看看这个:
:m2m.temolin./doc/62/m100wu-lian-mo-kuai
软体的话,看看这个:
:jb51./article/51052.htm
对于作业系统来言,不存在C/S,B/S一说。
java的确执行效率不如C/C++,但任何开发语言都有其各种特点,有缺点必有优点,否而只能被淘汰。
java有很多过人之处,要不然android也不会看上java作为其应用层的开发语言。
android相比IOS,的确存在距离,但我始终相信以LINUX为核心的android在几百万开发者的磨练下,将会越来越完美,“开源”永远值得人们去琢磨,精益求精!
Solaris支援多种系统架构: SPARC, x86 and x64. x64即AMD64及EMT64处理器。在版本2.5.1的时候,Solaris曾经一度被移植到PowerPC架构, 但是后来又在这一版本正式释出时被删去。与Linux相比,Solaris可以更有效地支援对称多处理器、即SMP架构。Sun同时宣布将在Solaris 10的后续版本中提供Linux执行环境, 允许Linux二进位制程式直接在Solaris x86和x64系统上执行。
Solaris传统上与基于Sun SPARC处理器的硬体体系结构结合紧密, 在设计上和市场上经常捆绑在一起,整个软硬体系统的可靠性和效能也因此大大增强。然而SPARC系统的成本和价格通常要高于PC类的产品,这成为Solaris进一步普及的障碍。可喜的是,Solaris对x86体系结构的支援正得到大大加强,特别是Solaris 10已经能很好地支援x64(AMD64/EMT64)架构。Sun公司已推出自行设计的基于AMD64的工作站和服务器,并随机附带Solaris 10。
dalvik是执行的时候编译+执行,安装比较快,开启应用比较慢,应用占用空间小
ART是安装的时候就编译好了,执行的时候直接就可以执行的,安装慢,开启应用快,占用空间大
用个比喻来说就是,骑脚踏车
dalvik 是已经摺叠起来的脚踏车,每次骑都要先组装脚踏车才能骑
ART 是已经组装好的脚踏车,每次骑直接上车就能走人
系统架构属于系统设计阶段,系统架构图只是这个阶段一个产物,要正确的、合理的画系统架构图需要全面的理解使用者需求以及业务流程,当理解了这些东西后,剩下的就是如何进行表达了,一般而言,可以参照RUP的用例驱动来进行逻辑架构,开发架构等设计工作,你稿春的系统架构图可以反应在各个视图里面,我估计你所说的系统架构图是属于逻辑架构里面,比键枝如分多少层,每层分多少模组等。
至于,绘制的工具,有很多很多。可以选择微软的visio,或者EA,rose,power designer等UML建模工具,当然,你甚至可以用PPT,Word来绘制。
当然,系统架构不是一日之功,需长期努力,跟经验和技术都有很大关系。
今天兴致来了,回复了这么多,不知满意不。
我不是高人,也谈不上指点,我只是一个很普通的程式码工人发表一下自己的看法哈~~
一个activity上多个surfaceview切换的做法是做游戏开发的,现在市面上大多数游戏都是采用的这种做法,并没有什么不妥,surfaceview使得画面更自由,拿到canvas后就不局限于安桌提供的控制元件了,纯自由发挥,各种游戏特效表现得更精彩。只是切换surfaceview时稍微麻烦点,需要写程式码来手动判断游戏状态和控制切换。
如果你只是做普通的应用,安桌提供的控制元件能满足你的需求,你就用普通的activity呗。用surfaceview多麻烦啊。把切换丢给系统来管理,省去不少事儿。如果你愿意麻烦,使用surfaceview来相互手动切换,也没什么问题的,放心去做吧。毕竟记忆体管理机制用的是JАVΑ的那一套,自动回收,用哪种架构都差别不大。
个人拙见,手动拼音打字,非ctrl+c/ctrl+v之流。望诸位看官别笑话俺哈~~
一个好的IT架构师,眼光不会仅仅停留在写程式码的层次上,在做开发的时间里,他们会积极学习各种知识,经验,培养自己的商业头脑,包括扩充套件自己各方面的资源,这些积累会为他们未来成为管理者或创业打下牢固的基础。
对于学习来说我们都是希望可以全面综合的掌握技术,这样才有助于你今后的整体发展。目前企业需要的不再是理论型人才了,而是实用技能型人才。
首先我们需要全面掌握专业实用的技术,其次加强个人整体素质的提升,这样才能符合目前企业的用人需求。如果我们选择了单科学习无疑是在起跑线上局限了我们的个人发展,或许短期内你觉得只是需要某项单独的技术,但是你有没有想过今后你不可能一直从事底层的程式设计师,看着和你同意时间进入公司的同事虽然技术和你不相上下,但是由于掌握的比较全面而被提升为专案主管、专案经理,或许到那个时候你又要为此再一次走进培训机构,这样也是耽误你个人的时间和精力,我相信你也希望自己今后可以步入管理层工作,有一个更好的发展。最好 是 掌握全面的技术,资料库,JAVA.NET.客户端技术。
就我接触到的说一下,我第一家公司专案比较小型是 springmvc + spring + hibernate (也有mabatis的) ,第二家公司,专案是大型的,所以好多是分散式的框架,spring、spring integration、bbo、zookeeper、redis、mybatis等都有用到
JDE属于分散式架构,人和系统恕我孤陋寡闻,没听过阿
C. android 五大应用开发框架是什么
android应用开发框架是 Application Framework,其系统架构由5部分组成,分别是:Linux Kernel、Android Runtime、Libraries、Application Framework、Applications。
1、Linux Kernel (Linux内核)
Android基于Linux 2.6提供核心系统服务,例如:安全、内存管理、进程管理、网络 堆栈、驱动模型。Linux Kernel也作为硬件和软件之间的抽象层,它隐藏具体硬件细节而为上层提供统一的服务。
2、Android Runtime (运行库)
Android包含一个核心库的集合,提供大部分在Java编程语言核心类库中可用的功能。每一个Android应用程序是Dalvik虚拟机中的实例,运行在他们自己的进程中。
Dalvik虚拟机设计成,在一个设备可以高效地运行多个虚拟机。Dalvik虚拟机可执行文件格式是.dex,dex格式是专为Dalvik设计的一种压缩格式,适合内存和处理器速度有限的系统。 大多数虚拟机包括JVM都是基于栈的,而Dalvik虚拟机则是基于寄存器的。
3、Libraries (程序库)
Android包含一个C/C++库的集合,供Android系统的各个组件使用。这些功能通过Android的应用程序框架(application framework)暴露给开发者。
4、Application Framework (应用框架层)
通过提供开放的开发平台,Android使开发者能够编制极其丰富和新颖的应用程序。开发者可以自由地利用设备硬件优势、访问位置信息、运行后台服务、设置闹钟、向状态栏添加通知等等,很多很多。 开发者可以完全使用核心应用程序所使用的框架APIs。
应用程序的体系结构旨在简化组件的重用,任何应用程序都能发布他的功能且任何其他应用程序可以使用这些功能(需要服从框架执行的安全限制)。这一机制允许用户替换组件。
5、Applications(应用层)
Android装配一个核心应用程序集合,包括电子邮件客户端、SMS程序、日历、地图、浏览器、联系人和其他设置。所有应用程序都是用Java编程语言写的。Android本身是一套软件堆迭(Software Stack),或称为“软件迭层架构”,迭层主要分成三层:操作系统、中间件、应用程序。
(3)android应用层开发扩展阅读
开发人员也可以完全访问核心应用程序所使用的API框架。该应用程序的架构设计简化了组件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性限制)。同样,该应用程序重用机制也使用户可以方便的替换程序组件。
隐藏在每个应用后面的是一系列的服务和系统,其中包括;
丰富而又可扩展的视图(Views),可以用来构建应用程序,它包括列表(lists),网格(grids),文本框(textBoxes),按钮(buttons),甚至可嵌入的web浏览器。
内容提供器(ContentProviders)使得应用程序可以访问另一个应用程序的数据(如联系人数据库),或者共享它们自己的数据
资源管理器(ResourceManager)提供非代码资源的访问,如本地字符串,图形,和布局文件(layoutfiles)。
通知管理器(NotificationManager)使得应用程序可以在状态栏中显示自定义的提示信息。
活动管理器(ActivityManager)用来管理应用程序生命周期并提供常用的导航回退功能。
D. 安卓系统下如何开发应用程序
1、在自己的手机桌面上,直接点击打开所安装的C4droid。
E. 安卓开发需要学习什么_学安卓软件开发需要什么基础
一:JavaSE编程
Java是一种面向对象的开发语言,Android操作系统的应用层使用Java语言来开发,所以要想进行Android开发必须有良好的Java基础。这一阶段的学习,要牢固掌握Java中的基本语法,掌握面向对象的程序设计思想,及开发工具的使用。之后学习常用类,多线程等高级特性,学习Java网络编程,了解网络通讯结构,掌握数据库语言及JDBC对数据库的访问,了解数据结构与算法,设计模式,项目开发工具的使用等内容。为后续的学习打一夯实的基础。
二:Android基础应用开发
这一阶段的学习主要是掌握Android的系统架构,熟悉整个android开发环境的搭建,以及的常用命令和工具的使用,熟练掌握Andoid的UI开发,包括使用标准控件,以及自定义各式各样的UI控件,配合动画部分的使用,让自己UI设计更加炫丽更加吸引。最后在自己的应用中植入广告,发布到Market中,享受挣钱的乐趣。
三:Android核心组件开发
精通Android应用开发核心组件的使用,包括Acitivity窗口活动管理;连接各个组件起到通讯作用的Intent信使;存在于服务端不可见的Service组件;为数据提供共享的;之后要掌握Andorid中很实用的数据存储,以及复习Java中御兆的网络技术,并将它结合到android的开发当中,特别是常用的http通信,以及XML,Json数据的解析。中间通过不同项目让我们去强化该部分的知识。
四:Android深入开发
通过前面的三个阶段的学习,这一阶段主要是把前面的内容作为基础,结合一些实际的应用,让Android开发更加多样化,当然腊搜需要一些练习了,不妨可以尝试一下多媒体方面,如:音视频播放,照相机,闹钟等;常用设备方面,如:GPS,重力传感器,指南针等;还有基本的Android图形开发,绘制自己的View部件以镇局租及通过Bitmap对图片作一些处理。然后在此基础之上,学习高级的游戏开发引擎,2D,3D的图形处理。
F. 安卓开发一定要用 Java 吗,其他语言开发方便吗
我可以很肯定的跟你说:是的,必须是的。基于java这门语言作为应用层的开发语言的优势与目的我就不说了,网上一大堆。结合我浅薄的android开发经验来跟你说说:
1、应用层的开发是使用java语言跟xml布局以及充当小型数据库功能的特点,你必须得会java跟xml,这是基础。xml就没什么好介绍的,java的话必须得掌握它的多线程操作机制以及事件驱动机制,回调机制。
如果是安卓系统的话:一般是Java开发,但是会调用C的代码; 如果是安卓软件的话:必须是Java,因为安卓系统原始都是Java开发。Android主流开发语言是Java,但也可以使用C、C++开发, 即使用Android NDK,不过使用NDK编程有一些劣势,比如程 序更加复杂,兼容性难以保障,无法访问Framework API,Debug 难度更大等。所以一般还是用Java,只是有时候会在一些核心代码上用C和C++来提高执行效率。
以上均是我个人原创的学习以及开发经验,这只是建议,大家根据自己的实际经验操作吧!