Bezdepbonusu7Программирование: статьи и ответы

Вопрос

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

Автор вопроса: LarkОтветов: 6

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

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

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

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

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

frameworksstandardsweb-standards

Ответы

Ответ 1 · рейтинг 5 · Andrew Hedges

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

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

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

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

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

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

Ответ 2 · рейтинг 2 · Chuck

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

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

Ответ 3 · рейтинг 1 · cpatrick

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

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

Ответ 4 · рейтинг 1 · Chris Thompson

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

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

Ответ 5 · cherouvim

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

Ответ 6 · рейтинг -1 · Ben S

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

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы