![]() |
Кто что для себя понял по mvc?
Кто для себя что понял изучив mvc и в последствии модифицировав его во многие структуры тесно связанные со схемой этого формирования. Или может есть пик организации какой-то сложной структуры и дальше идти некуда?
|
Цитата:
Не понял смысла темы. Но если тебе интересно как сделать, чтобы твои программы не заходили в тупик, изучи принципы SOLID |
для меня mvc хорошо проиллюстрировала принцип модульности, раскрыла его, помогла писать более ООПэшный ООПэ. Не сказал бы, что я сейчас ему скрупулезно всегда следую. Главная задача - разделить полномочия так, чтобы никто ни о чем не догадывался.
|
Понял, что все об этом трещат, но толком никто не реализует :)
А если реализует - то "правильной" реализацию считает лишь реализатор :) Сугубо субъективная вещь. |
а мне вот интересно возможен ли mvc без событий(на колбэках),ведь колбэк за собой тянет еще и скоуп,где он описан,от чего ,вся троица получается тесно связана.
Например в жаве,в контроллере: Код AS1/AS2:
|
Цитата:
|
Цитата:
Callback-и - просто менее удобны чем события. Но то что ты пишешь, я даже интерпретировать не могу. Из твоего кода, могу предположить, что контроллер подписывается на какой-то сигнал модели, все, причем тут что там захватывает callback? Он захватил ссылку на model? Так судя по коду она у тебя и так есть, он захватил ссылку на контроллер, и...? зы Java, какая-то у тебя старая, функции уже давно можно передавать на прямую, без классов - обвязок :) |
Цитата:
Цитата:
|
Модель захватила? Прям вот так? Т.е. можешь прям взять эту ссылку на контроллер и использовать в моделе?
Цитата:
|
можно пример как можно передать колбэк без класса-слушателя?
|
Извини, я тебя сейчас немного не понимаю, и на мой вопрос ты не ответил.
Но я отвечу сам, захваченный callback-ом скоут, который возможно содержит this - того самого контроллера, который ты называешь ссылкой на контроллер в моделе ты дернуть не можешь, потому что ты про него ничего не знаешь. |
да,я понял,это тоже самое что и с событиями.Подписка на событие ведет к точно такой же связанности.
Так что со слушателем без класса?Реально интересно вроде в жаве нельзя передавать ссылки на методы как в js/as3 |
Java 8
Код:
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6);Цитата:
Или я трактовал слово связанность, не так как ты задумал... |
Цитата:
Цитата:
|
Еще раз - это не одно и тоже. Событийная модель, как раз возволяет избежать прямых связей и легко расширяема, в отличии от системы callback-ов. Подписка/отписка тут не причем.
Если говорить в контексте флеша, допустим у тебя есть View внутри которой 100500 кнопок, ты подписываешься на родителя(контейнер) и можешь за счет всплытия поймать событие, скажем, клика по одной из 100500 кнопок. Усложнять я могу до бесконечности. Система сигналов/callback-ов - хороша, наверное, может быть, только в "плоской" системе, не хочу поднимать и углубляться в эту тему. Так же стоит не забывать, что есть всякие глобальные менеджеры событий, типа EventBus и т.п. Цитата:
В MVC речь всегда идет о явных связях, а не о том как какая-то платформа, на какой-то виртуальной машине, после компиляции куда-то что-то сохраняет. У меня все. UPD Когда-то давно кто-то тут приводил хороший пример: Выбегаешь ты на улицу и орешь во весь голос: "ПОЖАР!" - вот кто тебя услышал, тот сообщение и получил, может быть один, может быть 10, а может и никто. Вот она система сообщений, ты не знаешь кто тебя слушает, ты орешь. А вот взял ты телефон и позвонил в пожарную - вот она система сгнал/слот. Явная связанность. (Но система прослушки линии не знает, кто звонит, она просто определила звонок и начинает анализировать его, чтобы понять, терорист ты или нет, она явно на тебя не подписывалась, она слушает весь канал) |
Цитата:
Цитата:
Добавлено через 17 минут Цитата:
Код:
public class Tmp {Спор явно потерял содержание.Предлагаю закончить |
Я понял, что идеального МВЦ не существует, каждый, кто кричит, что нашел идеал - ЛжеФлешер - гоните его, насмехайтесь над ним. МВЦ это такая мечта, к которой должны стремится участники этого форума, но не должны ее достичь, иначе не о чем будет больше мечтать.
|
Верните мне мой 2010, с мечтами о MVC и способами заливки спрайтов одним шейпом...
|
| Часовой пояс GMT +4, время: 19:40. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.