Jump to content
  • 0

State Controller v4


s0rr0w
 Share

Question

Что такое StateController

Это, принципиально отличающийся от современных фреймворков, подход к созданию удобных и функциональных интерфейсов.

Принципиальное отличие состоит в том, что управление элементами возложено на HTML. Это противоречит концепции "ненавязчивого" JS, но в процессе работы технология зарекомендовала себя как более эффективная.

Это не фреймворк, это подход. Базис технологии - событийная модель. В этом подходе не придумано ничего того, что не было уже известно программистам.

Плюсы данной технологии:

* Высокая переносимость кода. Миграция кода может происходить без внесения изменений.

* Дешевизна при расширении функциональности

* Не требует высокого уровня кодера для начала работы.

* Широкий спектр выполняемых задач

Данная технология спокойно может работать в связке с другими фреймворками. Хотя может заменить большинство из них без проблем.

Лиензия

1. Запрещается использование технологии StateController в любых продуктах, которые будут использоваться в банковской сфере.

2. Модификация кода разрешена только при обязательном уведомлении автора о сути и характере изменений.

3. Разрешено разрабатывать обработчики SC.

Исходный код

stateController.zip

Обновлена версия до 4.1

* Добавлено кеширование разбора атрибута SC, что увеличило скорость работы с последующими запросами примерно в 2 раза.

Edited by s0rr0w
Link to comment
Share on other sites

21 answers to this question

Recommended Posts

  • 0
Будет печально, если кто-то на эжту чущь купиться.

:rolleyes: Как я и предполагал, есть ряд ортодоксов, которые не принимают чего-то, что не укладывается в их понимание о том, как нужно делать удобный код для интерфейсных решений.

Давайте проведем эксперимент, который докажет выигрыш этой технологии по сравнении с любым фреймворком :(

Edited by s0rr0w
Link to comment
Share on other sites

  • 0

А в чем собственно вы видите преимущества?

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

  • Like 1
Link to comment
Share on other sites

  • 0
А в чем собственно вы видите преимущества?

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

Ок. Создам тему с ТЗ

Link to comment
Share on other sites

  • 0
А в чем собственно вы видите преимущества?

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

Создал специальную тему.

http://forum.htmlbook.ru/index.php?showtopic=12633

Если кто-то будет реализовывать ТЗ, прошу засечь время исполнения.

Link to comment
Share on other sites

  • 0
Чет не вижу смысла пользоватся StateController Посмотрел код, ничего гениального не увидел,Jquery намного удобней.

Смысл появляется только тогда, когда будешь работать с интерфейсами каких-нибудь систем. Для единичных случаев смысла реально не имеет.

Гениального нет, это просто другой подход.

Link to comment
Share on other sites

  • 0
Смысл появляется только тогда, когда будешь работать с интерфейсами каких-нибудь систем. Для единичных случаев смысла реально не имеет.

Гениального нет, это просто другой подход.

s0rr0w.. этот метод действительно хуже. как минимум с точки зрения XP (eXtremal Programming) когда лучше возьмутся за проверенные технологии чем за экспериментальные. SC практически неизвестный метод, который уступает таким вещам как Prototype и jQuery, особенно последнему. Наверняка ты не будешь оспаривать (хоть это и моя догадка) что SC работает с DOM без использования XPath что означает более низкую производительность B)

Link to comment
Share on other sites

  • 0
s0rr0w.. этот метод действительно хуже. как минимум с точки зрения XP (eXtremal Programming) когда лучше возьмутся за проверенные технологии чем за экспериментальные. SC практически неизвестный метод, который уступает таким вещам как Prototype и jQuery, особенно последнему. Наверняка ты не будешь оспаривать (хоть это и моя догадка) что SC работает с DOM без использования XPath что означает более низкую производительность B)

Уступает по каким параметрам? Если спорить, то предметно.

В SC другая идеология перебора нод. Добавлю кеширование для атрибута (в одной из веток разработки у меня была идея добавить динамические функции по добавленю и удалению обработчиков динамически, но я потом понял, что это невостребовано и легко заменяется другими методами и способами), и скорость работы будет еще более увеличена. Потом выложу свои тесты.

У меня реально нет xPath, так как я работаю либо с одной нодой, либо с чайлдами этой ноды, либо со всеми нодами, либо с набором конкретных нод. И мне неважно, какие у ноды имена классов, первый это элемент в списке или последний, содержится там какой-то атрибут, или нет. Все решает обработчик.

SC для статических сайтов трудноприменим. Потому что его прелесть раскрывается в тесном сотрудничестве с серверными технологиями.

Вот представим задачу. Есть некая форма, которая динамически подгружается на страницу. Форма имеет некое свое поведение. Нельзя отправлять пустую форму, отправка данных делается через асинхронный запрос. При успешной отправке форма убирается, показывается сообщение, что данные добавлены. При ошибке - рядом с формой появляется сообщение об ошибке, или предупреждение с конкретной ошибкой.

Решать ее можно разными способами.

Например, грузить форму вместе с контейнерами для сообщений, при ошибке - наполнять контейнер готовым HTML кодом. А можно загрузить все сообщения об ошибках сразу, а потом показывать нужное при помощи JS.

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

Link to comment
Share on other sites

  • 0
как два пальцаB) Только не буду писать эти 2 строчки чтобы только убедить тебя что твоя идея SC не приживется

Знаешь в чем прикол? В том, что мой пример содержит западло. Пока ты не выполнишь все требования до конца, ты его не поймешь. ;)

На jQuery легко сделать первые 80% работы. А вот с 20ю оставшимися начнутся проблемы. Я не поленился, изучил JQuery, и не нашел там методов ускорения разработки.

Link to comment
Share on other sites

  • 0
Знаешь в чем прикол? В том, что мой пример содержит западло. Пока ты не выполнишь все требования до конца, ты его не поймешь. B)

На jQuery легко сделать первые 80% работы. А вот с 20ю оставшимися начнутся проблемы. Я не поленился, изучил JQuery, и не нашел там методов ускорения разработки.

ммм, проблема - я это УЖЕ реализовывал ;) в менеджере проектов :)

Link to comment
Share on other sites

  • 0
И много ли таких последователей этой технологии?

P.S. Свидетели Иеговы не в счет

Мне все равно сколько последователей. Но технологией серьезно заинтересованы в корпоративном секторе в Европе :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy