gpt4 book ai didi

java - 在 Android 中使用 Java 进行抽象

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:51:51 27 4
gpt4 key购买 nike

我正在学习一些有关 Java 语言的教程。我想知道我是否应该在每次编写代码时以及在任何类型的标准和堆栈上进行抽象?

我已经看到,例如,对于每个 Spring 服务,我们甚至可以抽象 Controller ,使用 JavaEE 堆栈上的 EJB 接口(interface)等。

我想知道这样做的目的是什么?在使用 Android SDK 进行开发时我应该做同样的事情吗?

我应该抽象我编写的每个类吗?

最佳答案

制作模块化可重用组件总是一个好主意。当考虑到这一点从头开始构建应用程序时,它变得越来越可扩展,越来越可自扩展。随着新功能的添加,应用程序中的相同组件会被重新使用,从而节省时间和精力。以后进行更改或识别错误来源变得更加容易。重构永远不应该在事后,而应该从头开始。

话虽如此,仅仅为了“抽象”而在移动应用程序中进行越来越多的抽象并不是一个好主意。原因当然是智能手机没有服务器甚至台式电脑那么强大。 Android 应用程序中的每个类和虚拟方法都会带来性能损失。 “抽象”和效率之间需要更好的平衡,性能权衡在中低端设备上变得更加明显。

来自官方文档:

1. Be careful with code abstractions

2. Avoid dependency injection frameworks

3. Avoid Creating Unnecessary Objects

4. Prefer Static Over Virtual

5. Avoid Internal Getters/Setters

编辑:

在最近试用之后 Dagger ,我不得不承认第 2 点现在可能有点过时了。我能说什么......我来Dagger派对已经很晚了。

关于java - 在 Android 中使用 Java 进行抽象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28897800/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com