Интернет магазин китайских планшетных компьютеров |
|
Компьютеры - Cocoa - Модель-представление-поведение01 мая 2011Оглавление: 1. Cocoa 2. История Cocoa 3. Управление памятью 4. Основные фреймворки 5. Модель-представление-поведение 6. Позднее связывание 7. Объекты с богатыми возможностями 8. Реализации Команды Smalltalk-программистов из Xerox PARC в конце концов выработали философию, позволившую упростить разработку и значительно увеличить объём повторно используемого кода. Известная как «парадигма модель-представление-поведение», эта концепция предусматривает разделение приложения на три набора взаимодействующих между собой классов. Классы модели представляют данные, такие как документы, файлы настроек или объекты в памяти. Представления, как следует из названия, отображают данные. Классы поведения содержат логику, связывающую модели с соответствующими представлениями, и обеспечивают их синхронизацию. В архитектуре Cocoa принципы MVC строго соблюдены. В OpenStep, большинство классов были либо представлениями высокого уровня либо относительно низкоуровневыми классами модели. По сравнению с похожими MVC-системами, в OpenStep недоставало сильной базы моделей. Например, не существовало базового класса, который бы представлял документ. Во время перехода к Cocoa, база моделей была невероятно расширена, и стала включать несколько готовых к употреблению классов, обеспечивавших функциональность, общую для большинства пользовательских приложений. В Mac OS X 10.3, Apple представила семейство классов MVC, обеспечивающее стандартную функциональность поведения — NSController. Эти классы считаются частью системы Cocoa Bindings которая широко использует такие протоколы как Key-Value Coding и Key-Value Observing. Термин binding означает связку двух объектов, часто представления и поведения. Cocoa Bindings позволяют разработчику сосредоточиться на описании связей между объектами, вместо того, чтобы детально описывать поведение программы. С выходом Mac OS X 10.4, Apple ещё больше расширила основные классы, представив фреймворк Core Data, автоматизирующий отслеживание изменений в моделях и их сохранение. Этот фреймворк значительно упрощает работу с данными в приложении, предоставляя автоматическую поддержку чтения документов из файла и сохранения их в файл, а также архитектуры отмены и возвращения изменений. Обеспечивая фреймворки для поддержки всех трёх уровней MVC, Apple ставит цель уменьшить количество «склеивающего» кода, который вынуждены писать разработчики, и освободить таким образом их время на написание уникальных для конкретного приложения функций. Просмотров: 6994
|