Yeap. Правильно.
Это может быть либо AbstractFactory, либо DataAccessObject.
Первый - когда вы хотите, чтобы реализация возвращала различные виды статей
Например, допустим, у вас есть условие, когда статьи ведут себя по-разному в зависимости от платформы.
ArticleFactory.getAll(): Article[]
Вернет правильный список в каждой платформе.
Значение может быть:
WindowsArticleFactory
или
OSXArticleFactory
Первый может использоваться для абстрагирования места, из которого извлекаются статьи:
Возможно, у вас есть
ArticleDao.getAll(): Article[]
и реализации:
XmlArticleDao // Return a list of articles from an XML
или
DatabaseArticleDao // return the list from the database.
Суть в том, чтобы отделить создание (getAll ()) от использования (Статья)
Если ваше приложение достаточно простое, вместо него можно использовать factoryMethod.
class Article {
static Article[] getAll() {
// do whatever is neede here...
}
}
Надеюсь, это поможет.