Паттерны объектно-ориентированного программирования — довольно распространенная тема для обсуждения среди разработчиков. Однако, кроме них существует набор методик программирования, используемых преимущественно при реализации GUI. Например, в случае, если необходимо получать доступ к одному и тому же классу в разных элементах графического интерфейса, может применяться ServiceProvider, когда возможно получить объект класса по имени класса. Например, на Java это может выглядеть так:
//ServiceProvider.java
public class ServiceProvider {
//Хранит объекты, которые можно получить передав класс
private final HashMap<Class<?>, Object> instances = new HashMap<Class<?>, Object>();
//Возвращает объект класса по переменной типа Class
public <T> T getService(Class<T> classObject){
return (T) instances.get(classObject);
}
}
Существует ли книга или статьи, описывающие другие приемы, применяющиеся при реализации GUI?