Должны ли веб-приложения соответствовать веб-стандартам?

StackOverflow https://stackoverflow.com/questions/620172

Вопрос

Днем я занимаюсь интерфейсным веб-разработчиком, но в свободное время увлекаюсь другими языками, такими как C, Objective-C, Python и т. д.Когда я впервые занялся веб-разработкой, идея веб-приложений только зарождалась.

С тех пор появились два замечательных фреймворка: SproutIt’s SproutCore и 280 North’s Cappuccino (+Objective-J).SproutCore используется Apple для своего приложения MobileMe, а компания 280 North выпустила 280 Slides.Оба эти приложения потрясающие и являются свидетельством того, что возможно в Интернете.Таким образом, динамика меняется.Веб-приложения начинают выглядеть и действовать как настольные приложения.

Итак, мой вопрос заключается в следующем:должны ли веб-приложения следовать веб-стандартам, разделению разметки (контента), представления (дизайна) и поведения (функциональности) или нет?

Я не уверен насчет SproutCore, так как не смотрел исходный код, но знаю, что если вы зайдете на 280slides.com и отключите JavaScript, все практически исчезнет.У вас остались бессмысленные слова.

Позвольте мне уточнить: я понимаю, что веб-приложения, такие как 280 Slides, должны включать JavaScript и не должны работать без него, но в моей повседневной работе мое основное внимание уделяется написанию чистой разметки, разделению контента, представления и поведения, чтобы наш сайт и приложения могут использовать как можно больше людей.

Это было полезно?

Решение

Похоже, что другие люди, которые уже ответили, понятия не имеют о чем вы говорите.

Как и я, вам в голову пришло сделать веб-приложения максимально доступными. То есть они должны работать без сценариев и без таблиц стилей. JavaScript и CSS должны использоваться только для улучшения опыта. Они не должны быть обязательными.

SproutCore и Cappuccino - это фреймворки для разработки front-end , которые требуют, чтобы у пользователя был включен JavaScript и CSS. Ваш вопрос заключается в том, как мы примирим это с догмой дня.

К сожалению, у меня нет четкого ответа. Мне нравится тот факт, что SproutCore и Cappuccino (и, возможно, другие) тестируют пределы того, что возможно в веб-браузере. Я также твердо верю, что информация и услуги, предоставляемые в Интернете, должны быть доступны как можно большему числу людей, учитывая ограничения технологии.

То, как вы подходите к своим решениям, должно основываться на глубоких знаниях вашей пользовательской базы. Если вы работаете над приложением для iPhone, вам не нужно беспокоиться о традиционной доступности веб-страниц, потому что это очень визуально. Если вы создаете веб-приложение для широкой аудитории, эти новые фреймворки, вероятно, являются плохим выбором (если вы цените максимально широкий доступ к вашей информации и услугам).

Со временем программное обеспечение для чтения с экрана, вероятно, станет лучше интерпретировать интерфейсы, насыщенные JavaScript, поэтому, возможно, эта проблема исчезнет. Дело в том, что что-то еще может «прорасти» на своем месте.

Другие советы

Javascript является веб-стандартом & # 8212; конечно, больше, чем, скажем, Flash, который ранее (и до сих пор часто) используется для многофункциональных веб-приложений. В этом отношении SproutCore и Cappuccino - гигантские улучшения в моей книге.

Вопрос здесь действительно заключается в том, насколько важна доступность. И это в значительной степени личное решение, основанное, как сказал Эндрю, на знании ваших пользователей. Для некоторых приложений доступность не имеет особого смысла & # 8212; 280 слайдов является хорошим примером этого. Это приложение для графического дизайна, в основном о визуальном поведении. Это не имеет большого смысла для него, чтобы перейти на открытый текст. (По крайней мере, текстовое приложение, предназначенное для выполнения того, что делает 280 Slides, было бы совсем другим делом.)

Да.Поначалу это будет сложно, но как только база кода станет зрелой, вы будете благодарны, что следовали этим строгим стандартам.

Редактировать:Дополнительным преимуществом будет переносимость на многие веб-платформы через профили CSS и многое другое.

Модель MVC может применяться как к настольным приложениям, так и к веб-приложениям. Я не вижу особой причины для различия между ними, тем более что в случае веб-приложений линия более размыта.

Я не знаю об этих конкретных фреймворках, но многие веб-фреймворки в наши дни структурированы вокруг модели MVC, такие как ASP MVC, CakePHP, Ruby on Rails и т. д.

Разделяйте как можно больше, и в итоге это окупится. Когда все становится сложным и волосатым :)

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top