Паттерны программирования

Раньше разработчики писали программный код, как называется по методу Все-В-Одном (All-In-One). Это было жутко неудобно. Но не думайте! Многие и сейчас пишут…

Как ни крути, а скриптовые языки с поддержкой ООП, очень тяжело поддаются разбиению на модули. А если брать Perl или PHP, невольно начинаешь задумываться об альтернативе, если вы занимаетесь каким-нибудь серьезным проектом. Этим летом программировал на Питоне(Python). Вообще не понял, нафиг этот язык. Синтаксис как у Бэйсика с Паскалем. ООП есть на уровне примитива. Есть пара фишек и все! Очень тормозной. Делать на нем что-то профессиональное категорически не советую!

Document-View

Тут все просто. WinForms, ASP.Net – проекты в Visual Studio по умолчанию уже создаются с этим паттерном. Code-Behind, или Код-Позади. Т.е. у нас есть форма и к этой форме присобачен отдельный файл с кодом. Удобно, пока не будешь заниматься чем-то более серьезным. Я 5 месяцев делал один Web-сайт, в итоге понял, что делал его не правильно, т.к. не тот паттерн. Но тогда я узнал про MVC:

MVC

Во! Классная штука! Им использовался еще в языке SmallTalk в далеких 70-х. Смысл в том, что все приложение было разделено на 3 основных части: Model-View-Controller

Все бы ничего. Но слишком сложно и запутано. Модель отвечала за извлечение данных из хранилищ, таких как БД.

Вьюшка – за интерфейс и отображение на экране.

Контроллер всем этим управлял.

Модули эти лучше реализовать через классы и интерфейсы, но, повторюсь, слишком неудобно и наворочено.

MVP

MVP по сути своей – наследник MVC.

Сочетает в себе гибкость и 100% отделение бизнес-логики от интерфейса.

Я тут например накатал программу. И за 10 минут прикрутил 5 платформ: ASP.Net, WinForms, Mobile, WPF, Silverlight. Очень понравилось. Думаю, напишу статью на эту тему.

Сейчас делаю презентацию. Буду рассказывать про MVP в своем родном универе.

0 коммент.:

Отправить комментарий