2012-02-22 3 views
0

Я довольно новичок в программировании на основе событий и использовании MVC, так что простите меня, если этот вопрос кажется не вопросом.Что лучше? Flex программирование с использованием Parsley Framework

Я пытаюсь присвоить значения моему классу модели singleton (Client). У меня есть 2 варианта:

  1. я могу использовать конструктор класса модели, чтобы присвоить себе так:

    Клиент класса {

     public var name; 
        public var email; 
    
        public function Client(arg_name, arg_email){ 
         this.name = arg_name; 
         this.email = arg_email; 
         } 
        } 
    
  2. я могу использовать контроллер присвоить мне такие значения:

    Class Controller{ 
        public var client:Client = new Client(); 
    
        public function assign(){ 
         client.name = "booo"; 
         client.email = "[email protected]"; 
        } 
    

    }

Какой из них является лучшим решением? :) Причина, по которой я так запуталась, потому что я видел примеры, которые просто передают значения классу модели и делают # 1 (и устанавливают новые переменные, такие как [var fullname = fname + lname], но я знаю, что Дело в том, что это работа контроллера для присвоения значений модели.

ответ

0

Лучше относительна.

Второй пример то, что обычно называют «свойство впрыска».

в принципе первый вариант быстрее, меньше, и намного меньше кода.

Второй вариант является более читаемым и гибким.

Независимо от контроллера, инъекция имеет то преимущество, что вы можете создавать геттеры и сеттеры для каждого объекта.

Таким образом, вы можете иметь что-то подобное, например, отправлять событие, когда вы меняете значение свойства «имя».

Исходный код flex заполнен этой концепцией. Например, всякий раз, когда вы меняете ширину группы, она не просто меняет значение, она выполняет проверки, а затем устанавливает группу как грязную, чтобы другие вещи могли реагировать на нее.

В основном это упрощает, чтобы все делало свою собственную вещь, и это больше ориентировано на объект.

Все это не означает, что на самом деле это лучше, но чаще всего писать код во втором варианте.

Надеюсь, что это поможет.

Смежные вопросы