我是作为产品经理而不是开发人员问这个问题。
在我们的一个项目中,我们有几种不同的口味。为了争辩,我们将它们称为free
和withVideos
。名称很不言自明。
我们的项目分为几个模块。我们称它们为module_base
和module_with_videos
。所有口味都包含module_base
。 module_base
中的某些类从module_with_videos
导入类,只有withVideos
风味才需要。但是,即使我们的其他口味不需要这些类别,我们仍在努力了解如何排除它们。从module_with_videos
导入内容的类之一是我们的菜单类。可以想象,口味之间有很多共享逻辑,因此我们不想为不同口味维护两个单独的菜单类。
在Swift或Objective-C(这是我的主要专长)中,我将使用以下预处理程序命令删除不需要的导入:
import module_base
#if FLAVOR_WITH_VIDEOS
import module_with_videos
#endif
在我看来,这在Java中是不可能的。您能推荐其他可行的方法吗?