28 прочтений · 3 года назад
Инструменты прототипирования в 2021 году
Прототипирование является ключевой частью проектирования UI и UX. Дизайнеры могут создать прототипы как с высокой, так и с низкой точностью, в зависимости от их назначения.
Прототип Prototype. Прототип – порождающий шаблон проектирования, позволяющий создавать новый объект не с помощью конструктора, а путём клонирования инициализированного ранее объекта, называемого прототипом. Это может быть выгодным в тех случаях, когда затраты на инициализацию нового объекта гораздо больше затрат на клонирование. Например, перепишу класс Deal с исполнением интерфейса Cloneable. public class Deal implements Cloneable {   protected int dealID;   @Override   public Deal clone() throws CloneNotSupportedException {    Deal copyOfDeal = (Deal) super.clone();    return copyOfDeal;   } } Затем создам класс StockDeal, наследующий Deal public class StockDeal extends Deal { } В финале создаю клиентский класс, минимально эмулирующий биржевой стакан public class StockExchange {   private Deal deal;   public StockExchange(Deal deal) {    this.deal = deal;   }   public Deal makeDeal() throws CloneNotSupportedException {    return (Deal) this.deal.clone();   }   public static void main(String args[]) throws CloneNotSupportedException {    Deal currentDeal = null;    Deal prototypeDeal = new StockDeal();    StockExchange se = new StockExchange(prototypeDeal);    for (int i = 0; i < 100; i++) {    currentDeal = se.makeDeal();    System.out.println(currentDeal.hashCode());    }   } } Механика очень простая. Создаётся прототип Deal, который в цикле клонируется столько раз, сколько потребуется.