![]() |
Архитектура приложения
Доброго всем вечера.
Написал аудио плеер, возник вопрос, насколько грамотна и эффективна его архитектура. Ключевым элементом плеера является, разумеется, SoundChannel. Каким образом должны различные элементы плеера: плейлист (при нажатии на его элемент), панель с кнопочками (при нажатии на них) управлять звуковым каналом? У меня есть родительский класс, от которого наследуются все элементы плеера, которые должны управлять звуком. В этом классе есть статическое свойство типа SoundChannel и несколько методов для управления им (каналом) потомками. На сколько такой подход верен и эффективен? П.С. Подскажите какую-нибудь хорошую литературу по "догмам" и "философии" написания в ОО стиле, а то пока - пишу по наитию... Спасибо! |
Model View Controller или просто MVC - самый распространенный шаблон. Советую почитать про него
|
Цитата:
ActionScript 3.0 - Шаблоны проектирования |
Спасибо за литературу!
А пока я ее не прочел, может кто-нибудь прокомментировать тот принцип работы приложения, что я описал? |
аудиоплеер на самом деле приложение не такого масштаба чтобы имело смысл доробить на сильно большое количество классов
пока не появится какой-нибудь нюанс, вроде необходимости менять скины |
аудиоплеер на самом деле приложение неопределенного масштаба)) Это как сказать "игра это..." Смотря какие задачи ставятся, что от плеера ожидается. Я считаю плеер гораздо более кошерной штукой для самообучения, чем стандартные попытки создать гонки на танках. Но, конечно, смотря какой плеер и какие гонки))))
|
SoundChannel нужно инкапсулировать и реализовать к нему доступ через интерфейс объекта. Не понял - насколько это у тебя реализовано.
Доступ к этому объекту лучше не делать через статические члены класса, а передавать ссылкой твоим управляющим элементам. Тогда у тебя приложение не будет завязано на одном классе, что даст тебе больше гибкости и возможности повторного использования кода. |
Crazyone, у меня есть класс, от которого наследуются все "блоки" плеера. И в этом классе есть protected методы работы с private static var SoundChannel.
Просто я плохо понимаю, как иначе можно это реализовать. |
Выбрал песню и нажал плей, вылетело:
Код AS3:
Цитата:
И подсказки не помешали бы, я например не понимаю, что за кнопка с палочкой. И после окончания песни вылетает этаже ошибка, назвать этот плеер работающим очень трудно. |
Inet_PC, на локальной машине никогда не бывало никаких ошибок, а когда выложил в сеть - они вылезли. Подскажите, пожалуйста, как трейсить ошибки в браузере. Как вы увидели эту ошибку?
П.С. Кнопка с палкой - громкость :) Ее надо зажать и тащить вверх\вниз. |
| Часовой пояс GMT +4, время: 10:33. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.