应用程序开发人员正在不断开发新方法,一方面简化和缩短开发流程,另一方面构建***设计和用户体验。每年我们都可以看到在移动应用程序开发中不断涌现的新型***技术和工具。在这里,我们将介绍一些趋势,让您更好地了解2018年应该是什么。让我们仔细看看Android应用程序的发展趋势!
Kotlin是一种相对较新的编程语言,适用于Java虚拟机。它主要由JetBrains程序员开发,自从Google IO 2017开始,Kotlin一直是Android应用程序的官方编程语言。它有很多优点,比如:
- Kotlin可与Java互操作
- 零安全
- 扩展功能
- Lambda表达式
- 数据类
Kotlin将现代语言的所有这些功能带到Android平台。这非常适合开发Android应用程序,并完全支持Android Studio 3.0。它还包含几个工具来改善工作,就像Kotlin Android扩展,它可以完全替代标志性的findViewById()。
ObjectBox
ObjectBox是由GreenRobot创建的性能优化的移动NoSQL数据库,他也创建了GreenDao库。这个数据库管理系统是在2017年9月发布的一个稳定的版本。ObjectBox是一个从零开始建立的数据库,有一个简洁的API,可以在像GreenDao和Realm这样的对象上运行。它支持ACID操作和多版本并发控制(MVCC),提供安全事务和并行性。
MVVM
开发移动应用程序时,您必须面对一些挑战。其中最重要的是清晰的架构。有几个设计模式可以帮助您分离应用程序中的模块。创建简单且没有业务逻辑的UI代码使管理更容易。还有一个很大的优势 - 你的代码变得更可测试。
MVVM模式是最近创建的,并且是为Android系统创建移动应用程序的创新方法。乍一看,MVVM模式与MVP是非常相似的,这是Android开发中***的模式。由于使用MVVM标准,单元测试的创建更加简单,因为没有层依赖于视图。在测试过程中,在数据模型层更改时,检查观察变量是否正确设置就足够了。在MVP模式的情况下,不需要用人造视图来替代测试。
模型
在MVVM模式中,模型层与MVC和MVP中的模型层相同。它负责管理业务逻辑并从服务器或数据库获取数据。它向View-Model层提供所需的信息。
视图
视图层代表用户界面元素,并负责显示数据。视图观察由视图模型公开的数据。与MVP模式类似,Activities和Fragments与XML文件中的控制系统一起属于视图层。
视图模型
ViewModel是数据层和视图层之间的负责任的连接。其任务是提供帮助维护视图状态的方法,命令和其他属性,以及作为视图中的操作的结果来管理模型并处理视图中的事件。View-Model不包含关于视图的信息,并且完全独立于视图。
Android体系结构组件
Android Architecture Components是一组帮助设计可维护,健壮和可测试的应用程序的库。这个库的集合组成前面提到的持久性库,但也包含下面介绍的LiveData和ViewModel组件和Paging Library,但它仍然是alpha,不像其他组件。
LiveData
LiveData是一个可识别生命周期的可观察数据的持有者,这意味着它尊重其他应用程序组件的生命周期,比如Activity,Fragment或者Service。因此,您不必手动处理生命周期,因为在Fragment收到onDestroy()时,LiveData也会自动删除观察者。
视图模型
ViewModel类是MVVM模式的助手。它旨在存储和管理UI所需的数据。ViewModel类允许数据在屏幕旋转等配置更改后生效,但ViewModel不会取代onSaveInstanceState()。
结论
总之,去年我们有一些很大的变化。***的Android应用程序发展趋势是什么?最重要的是,Kotlin现在是Android的官方编程语言,并且在2018年,Kotlin 可能比Java更受Android应用程序的欢迎。而且,我们在Android数据库管理系统中有一些新的玩家。两者间和ObjectBox值得我们学习,在我看来,值得一用。
因此,Room最终可以取代Android中明确的SQLite数据库,并且ObjectBox可以成为像Realm这样的noSQL数据库的真正竞争者。2017年,Android架构组件也发布了。自2017年11月以来,他们已经有了一个稳定的版本,所以我们相信在2018年这些库可以变得非常强大。