framework初了解与必备技能
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了framework初了解与必备技能相关的知识,希望对你有一定的参考价值。
参考技术AE:Engine发动机,I:Interface接口,T:tire轮胎。有发动机和轮胎,再提供接口接口就可以让汽车跑起来。没有简单,我们就无法理解复杂;
application framework(应用框架层):无论是android提供的应用程序,还是开发人员自己编写的应用程序,都需要使用framework,核心的作用就是提供一个接口,给app跑起来,并且起到了屏蔽解耦作用。
简而言之,Framework具体的工作也就是为android应用开发的开发人员提供了一系列的服务和API的接口。同时负责应用程序生命周期和资源等进行管理。是android系统层内容。
framework是google厂商定制好了,最多修改一些bug或者添加一些东西,如果大改,很多应用就跑不起来。
Framework又分为Java Framework和Native Framewok:示意图如下:
csdn一篇博客通俗易懂的讲了framework: 我眼中的Android Framework
Framework是由多个系统服务共同组成。所有服务都寄宿在系统核心进程中,在运行时每个服务都占据一个独立的线程。
为了实现Java程序在运行阶段的二次编译,Android为他们提供了运行时(Runtime)的支撑。
运行时由Java核心类库和Java虚拟机Dalvik共同构成 。
Java核心类库涵盖了Android框架层和应用层所要用到的基础java库。dalvik负责动态解析执行应用、分配空间、管理对象生命周期等工作,是android心脏。
硬件抽象层(HAL):是安卓为厂商定义的一套接口标准,为框架层提供接口函数。
Binder IPC驱动:Android的一个特殊的驱动程序,具有单独的设备节点,提供进程间通讯的功能。
程序员必备技能-git 不会到还有人不会用吧,不会吧不会吧?
参考技术A版本控制 :版本控制最重要的作用是记录一个文件的修改 历史 记录,并且根据该记录可以切换到对应的 历史 版本,这个也是由个人开发到团队开发重要的工具。
集中式版本控制系统 :具有一个统一的中央服务器,里面存放着项目的源码。各个客户端都从该服务器中拉取代码和上传自己编写的代码到服务器中。
优点:各个客户端可以查看其他客户端在该项目中做了什么,一定程度上了解项目的进度。同时,管理员可以控制各个程序员的权限。
缺点:无法应对中央服务器的单点故障问题,当中央服务器宕机后,各个客户端都不能提交代码和拉取代码,同时在宕机的期间,做不到版本的 历史 记录。
分布式版本控制系统 :每个客户端都是一个版本库(本地库),各个客户端维护自己的版本 历史 记录。各个客户端的协作是通过使用远程库(GitHub等)进行的,push把代码推送到远程库中,pull把远程库的代码拉取下来。
优点:解决了集中式版本控制的缺点。在远程库宕机的情况下(虽然说这个概率极低),客户端还是能进行开发的,因为版本的控制是在本地进行的。同时,每个客户端保存的是整个项目,包括 历史 记录,使得更加安全。
Git的工作机制
代码托管中心(远程库) :
底层:head指针指向分支,分支指针指向版本号。当版本号发生变化时,分支指针指向对应的版本号
(1)配置git的忽略文件
(2)在idea中配置git
(3)初始化项目
以上是关于framework初了解与必备技能的主要内容,如果未能解决你的问题,请参考以下文章