View 类
1、ButterKnife
ButterKnife 是一个专注于 Android 系统的 View 注入框架, 当一个布局十分复杂时, 需要引入执行大量的 findViewById 代码来找到 View 的对象,有了 ButterKnife 可以很轻松的省去这些步骤。是 JakeWharton 大神的力作,目前使用很广。最重要的一点,使用 ButterKnife 对性能基本没有损失,因为ButterKnife 用到的注解并不是在运行时反射的,而是在编译的时候生成新的class。项目集成起来也是特别方便,使用起来也是特别简单。
2、lottie-android
Lottie 是一个适用于 Android 和 iOS 的移动库,它可以使用 Bodymovin 解析以 json 格式导出的 Adobe After Effects 动画,并在移动设备上进行本地渲染。
网络类
1、Retrofit
Retrofit 是一个 RESTful 的 HTTP 网络请求框架的封装,网络请求的工作本质上是 OkHttp 完成,而 Retrofit 仅负责 网络请求接口的封装。
2、OkHttp
Square 公司开源的高性能 Http 框架,目前 Android 开发中使用人数最多的框架。
图片操作类
1、Glide
Glide是一个快速高效的Android图片加载库,注重于平滑的滚动。Glide提供了易用的API,高性能、可扩展的图片解码管道(decode pipeline),以及自动的资源池技术。
2、Picasso
由Square 公司开源,强大的Android 图片下载和缓存库。
数据库操作类
1、greenDAO
greenDAO 是对 sqlite 的封装的 ORM 框架,它具有轻量级,性能高,简单,能够快速上手等优点的一个框架。
2、MMKV
MMKV 是基于 mmap 内存映射的 key-value 组件,底层序列化/反序列化使用 protobuf 实现,性能高,稳定性强。从 2015 年中至今在微信上使用,其性能和稳定性经过了时间的验证。近期也已移植到 Android / macOS / Win32 / POSIX 平台,一并开源。
其它
Arouter
阿里巴巴开源的 Android 路由框架,用于帮助 Android App 进行组件化改造的框架, 支持模块间的路由、通信、解耦。有了 Arouter 你可以把你的 App 根据不同的业务、功能等维度划分成多个组件,组件与组件间的通信、数据传递通过 Arouter 实现。
"
学习android开发,需要学习java的gui和数据库oracle数据库吗?
不怎么需要。。
Android开发中的UI是一套全新的东西,有自己的MVC架构,和JAVA中的GUI(AWT,SWING)不同,但如果会JAVA的GUI开发的话还是不错的,因为两者之中的一些机制还是有些类似的,如事件监听器模型,其它关联不是很大,可以相互借鉴。
至于数据库,Android系统内置了SQLite数据库,支持的数据类型和函数和Oracle简直不可同日而语,毕竟,一个是专用于嵌入式的数据库,一个是企业级大型数据库,这个完全不用去学Oracle。SQLite数据库的使用很简单的,借助于Android中的数据库操作封闭类,可以很容易的设计出功能强大的数据库软件的。
"
Oracle数据库开发和Android开发技术相比哪个前景更好?
首先,从目前行业发展的情况来看,Oracle数据库开发和Android开发都已经进入了一个相对比较平稳的发展阶段,整个IT行业内有大量的技术人员在从事相关的工作,近期内爆发大量人才需求的可能性并不大。但是由于Oracle数据库开发和Android开发整体需求量比较大,所以从就业的角度出发,学习这两个方向都是不错的选择,从知识结构的丰富程度来看,学习Oracle数据库开发会更具竞争力。
Oracle数据库开发是IT行业传统的岗位角色之一,由于Oracle具有稳定的性能表现,所以Oracle数据库是企业级开发的重要选项之一。但是在云计算时代,随着NoSql数据库的出现和大面积应用,Oracle似乎并没有脱引而出,反而Amazon占据了一定的优势。目前Oracle也在积极推广自己的云计算业务,也提出了一个综合性的解决方案,包括整合Java开发资源等等,但是从目前的行业应用来看,似乎更多的企业更愿意采用Amazon的云计算方案。但是由于Oracle在行业内也积累了大量的用户,所以在未来较长一段时间内,Oracle数据库开发岗位将依然比较重要。
Android开发在移动互联网时代得到了快速的发展,由于Android系统在智能终端占据着重要的地位,所以Android开发岗位在移动互联网时代得到了充分的释放,目前IT行业内有大量的Android开发人员。随着5G标准的落地,Android开发也被赋予了更多的含义,未来Android开发岗位的知识结构会进一步丰富,包括传统前端知识、物联网开发知识等等,从Android开发岗位的发展趋势来看,Android开发人员要想保持自身的竞争力还需要不断丰富自身的知识结构。
当前正处在大数据时代,对于技术人员来说,一定要紧跟技术发展趋势,学习大数据、物联网、人工智能等相关技术。
我从事互联网行业多年,目前也在带计算机专业的研究生,主要的研究方向集中在大数据和人工智能领域,我会陆续写一些关于互联网技术方面的文章,感兴趣的朋友可以关注我,相信一定会有所收获。
如果有互联网方面的问题,也可以咨询我,谢谢!