我是否需要为java中的一个函数创建单独的服务类
我有个人课,然后像我是否需要为java中的一个函数创建单独的服务类,java,design-patterns,class,service,Java,Design Patterns,Class,Service,我有个人课,然后像 Countries Languages 我有针对国家和语言的单独课程。我需要在下拉列表中显示所有国家和所有语言。那么我需要创建CountryService类和LanguageService类吗?里面有像getLanguages和getCountries这样的函数吗 正在寻找一个好的解决方案。您的解决方案没有错,但通常像getAvailableCountries()和getAvailableLanguages()这样的方法在各自的类中声明为静态方法。这样,您可以像这样使用它
Countries
Languages
我有针对国家和语言的单独课程。我需要在下拉列表中显示所有国家和所有语言。那么我需要创建CountryService类和LanguageService类吗?里面有像getLanguages和getCountries这样的函数吗
正在寻找一个好的解决方案。您的解决方案没有错,但通常像
getAvailableCountries()
和getAvailableLanguages()
这样的方法在各自的类中声明为静态方法。这样,您可以像这样使用它们:
List<Country> lc = Country.getAvailableCountries();
List<Language> ll = Language.getAvailableLanguages();
Country.save(new Country("United States"));
Language.save(new Language("English"));
答案取决于您对该代码库的期望增长路径 如果除了您提到的函数之外,您没有看到在
CountryService
或LanguageService
类中添加多少其他功能,那么添加两个新类可能会过度设计解决方案。在这种情况下,更好的做法可能是在类中添加一个静态方法getLanguages
,在Language
类中添加一个getCountries
,在Country
类中添加一个getCountries
如果您看到自己在一个CountryService和一个LanguageService类中扩展角色和功能,那么这种方法就可以了。这意味着所有静态方法都应该在各自的类中,那么添加conutry、删除country函数基本上是这样的,没有理由拥有一个
CountryService
类,它的唯一功能是保存国家功能;将它们添加到Country
类中非常有意义,因为这是搜索在国家上运行的方法的第一个地方。这意味着我需要在该类中定义函数save()
Country.save(new Country("United States"));
Language.save(new Language("English"));