来新公司也快一年了,期间有很多不开心不爽的事情,有些事情现在还有,但是已经熟悉了项目的运行方式,也找到了自己的位置。虽然还是有一些小问题,但是已经很不错了,谁能保证一家公司没有问题呢,只不过是看看自己的承受能力怎么样。对于我一个快40的大头兵,其实在哪里都是一样的,只有自己技术强,能力强,才能真正的成为厉害的人。
吐槽完了,接下来我们说说测试的全栈。现在测试内卷化非常严重,刚毕业的小朋友非常厉害。业务、功能、代码,无一不会,给了老大哥、老大姐们无尽的压力。不可否认的是,使用技术手段来驱动业务的发展大势不可挡。界面上有UI自动化,接口侧有接口自动化,性能侧有全链路压测,这些都必须有代码基础。当你有了代码基础后,你就会发现很多之前没有探索的未知领域,都会向你大门敞开,并提升了百分之百的自信。
今天,我们就说下app侧的必备知识,安卓开发。在最上面我上传了一张图,是从菜鸟编程中看到的。大家也可以从B站上找对应的安卓视频来学习。
可以简单看看安卓系统版本名称:
截至2015年,可以看下各系统所占的市场份额:
目前知道的安卓系统已经更新到10了,华为也推出了鸿蒙系统。未来在开发时需要关注系统的兼容性,一般兼容6及以上就可以。
下面我们说下安卓的系统特性和平台架构。
系统特性:
1.应用程序框架支持组件的重用与替换(app发布时遵守了框架的约定,其他app也可以使用该模块)
2.Dalvik虚拟机:专门为移动设备优化 -集成的浏览器:开源的WebKit引擎
3.SQLite结构化的数据存储
4.优化的图形库,多媒体支持,GSM电话技术,蓝牙等
5.采用软件叠层方式构建
平台架构:
说下架构的简单理解:
1.Application(应用程序层) 我们一般说的应用层的开发就是在这个层次上进行的,当然包括了系统内置的一组应用程序,使用的是Java语言
2.Application Framework(应用程序框架层) 无论系统内置或者我们自己编写的App,都需要使用到这层,比如我们想弄来电黑名单,自动挂断电话,我们就需要用到电话管理(TelephonyManager) 通过该层我们就可以很轻松的实现挂断操作,而不需要关心底层实现
3.Libraries(库) + Android Runtime(Android运行时) Android给我们提供了一组C/C++库,为平台的不同组件所使用,比如媒体框架;而Android Runtime则由Android核心库集 + Dalvik虚拟机构成,Dalvik虚拟机是针对移动设备的虚拟机,它的特点:不需要很快的CPU计算速度和大量的内存空间;而每个App都单独地运行在单独的Dalvik虚拟机内每个app对于一条Dalvik进程)而他的简单运行流程如:
4.Linux内核 这里就是涉及底层驱动的东西了,一些系统服务,比如安全性,内存管理以及进程管理等
最后说下开发环境的搭建:
下载java的jdk, 一般8.0就可以,虽然现在已经出到最新的17了,但是很多还是在8.0的基础上发展的。最新的sdk可能在向下兼容上差一些安卓开发工具直接用android studio比较好,不推荐用eclipse和idea
安装好后,可以在android studio中直接下载android sdk
好的,今天就先到这里吧