После небольшого исследования мы приняли решение о выпуске Entry Entry Suite Peter Blum для перестройки онлайн-приложения на TechInsurance.com и BusinessInsuranceNow.com. Проект продолжается уже более года. Но я был очень доволен комплексом Питера. И его документация и поддержка действительно беспрецедентны.
Так что на проект - в первую очередь, онлайн-приложения на двух сайтах чрезвычайно динамичны. Я имею в виду, что приложение должно обрабатывать десятки разных типов бизнеса и задавать только те вопросы, которые актуальны для пользователя. Так что эта задача сама по себе сложна. Но, в частности, речь идет о динамическом характере каждой страницы в отдельности. На сайте должно быть указано & спрятать вопросы динамически на основе ответов на другие вопросы на той же странице. И, конечно, невидимые вопросы не подлежат проверке. Поэтому в старых (или я говорю текущие) версии сайта я обрабатывал все это с помощью тщательно написанного кода на JavaScript и на стороне сервера. Всегда было абсолютно важно, чтобы Javascript выполнял те же правила, что и серверный код, поэтому требовались только видимые вопросы. Но когда я имел дело с приложениями такого масштаба, я бы иногда делал ошибки, которые бы отображали их уродливое лицо, когда выполнялся сложный набор условий.
Теперь, с пакетом Peter Blum, я могу фактически использовать MultiFieldStateController и VisibleCondition внутри EnablerContainer, чтобы позаботиться обо всей этой логике декларативно. Когда я это делаю, DES-пакет фактически будет обрабатывать как клиентскую, так и серверную части этой функции видимости и проверки. И это означает, что мне не нужно писать лижут Javascript. И мне не нужно постоянно проверять, что мой Javascript-код работает так же, как серверный код, потому что я знаю, что DES заботится о нем для меня. Это всего лишь небольшая часть общего набора, но это функциональность, которая для меня наиболее полезна.