Опубликован: 28.11.2008 | Доступ: свободный | Студентов: 7968 / 742 | Оценка: 4.49 / 4.28 | Длительность: 37:04:00
Лекция 1:

Введение в стандарты Web

Лекция 1: 12 || Лекция 2 >
Аннотация: Кратко обсуждаются преимущества использования стандартов Web, почему они не общеприняты, как должны были бы быть, и как курс намерен решить эти проблемы. Рассказывается, как структурирован курс, для кого он предназначен.

Введение

Уже в течение некоторого времени меня преследовала мечта. Моя работа за последние 8 или 9 лет, так или иначе, была тесно связана с образованием: занимался ли я выпуском и редактированием технических книг, чтобы помочь людям создавать с помощью имеющейся технологии превосходные продукты, обучал ли новых сотрудников в различных компаниях, в которых я работал, или редактировал и писал учебные статьи, чтобы помочь людям использовать программное обеспечение Opera. Я являюсь также страстным поклонником Web, и верным сторонником открытых стандартов Web. Я хочу внести свою лепту, чтобы помочь сделать сеть Web лучше, чем она есть, и считаю, что это будет способствовать образованию, будет ли это обучение людей сотрудничеству и взаимному уважению друг к другу, или обучение их тому, как заставить сайты Web работать с различными платформами и устройствами и быть доступными людям с ограниченными возможностями. Ключевым моментом в последнем случае являются стандарты Web, поэтому я решил попробовать приложить свое время и энергию для чего-то, что могло бы помочь улучшить принятие стандартов Web сегодня и в будущем. Это вертелось в моей голове в течение какого-то времени, но, в конце концов, осуществилось в компании Opera - большое спасибо моим замечательным работодателям за то, что они платят мне за это. Одно из моих желаний было, наконец, реализовано.

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

В данной лекции рассматриваются следующие вопросы:

  • Зачем нужны стандарты Web? Кратко обсуждаются преимущества использования стандартов Web, почему они не общеприняты, как должны были бы быть, и как мой курс намерен решить эти проблемы.
  • Как структурирован курс. Заголовок полностью отражает содержание; этот раздел рассматривает также вопросы представления материала преподавателем для его эффективного использования в процессе обучения.
  • Для кого предназначен этот курс? Когда я говорю "кто угодно", что я, действительно, имею в виду?
  • Оглавление. Перейдите к этому разделу, если хотите пропустить общие разговоры и перейти прямо к изучению.

Зачем нужны стандарты Web?

Основные причины, почему принятие стандартов Web в работе по разработке/ дизайну Web будет полезно во многих ситуациях, подробно рассматриваются в "лекции 4" , но здесь они кратко перечисляются, чтобы определить общую картину. Использование стандартов Web предоставляет следующие выгоды:

  1. Эффективность кода: Как вы узнаете из этого курса, многие эффективные применения стандартов Web имеют в своей основе повторное использование кода - можно разделить контент HTML и информацию о стиле оформления (CSS) и поведении (JavaScript), что позволяет сохранить размеры файлов небольшими, а написанный однажды код использовать повторно, когда это понадобится.
  2. Легкость сопровождения: Это тесно связано с предыдущим пунктом - если можно написать код HTML только один раз, а затем применять стили оформления и поведение, когда они понадобятся с помощью классов и функций, то в случае необходимости изменить что-то в будущем, можно сделать изменение в одном месте, и оно распространится на весь Web -сайт, вместо того чтобы определять изменение везде, где оно потребуется!
  3. Доступность: Следующие два пункта тесно связаны - одной из значительных проблем в Web является создание Web-сайтов доступными для всех, кто бы это ни был, невзирая на обстоятельства. Это включает создание Web -сайтов, доступных для людей с физическими недостатками, такими как слепота/ослабленное зрение и двигательная ограниченность (т.е., людей, которые ограничены в движениях, и не могут полноценно использовать свои руки, или вообще не могут их использовать). Используя стандарты Web и эффективные методы, можно без дополнительных усилий сделать Web -сайты доступными для этой значительной группы пользователей Web.
  4. Совместимость с устройствами: Под этим понимается обеспечение того, что Web -сайты будут работать не только на различных платформах- т.е. Windows, Mac, Linux -но также на альтернативных устройствах просмотра, которые сегодня могут включать мобильные телефоны, телевизоры и игровые консоли. Эти устройства имеют некоторые ограничения, такие как размер экрана, вычислительная мощность, доступные механизмы управления и многие другие, но и в этом случае, используя стандарты Web и эффективные методы, можно в значительной степени гарантировать, что Web -сайты будут работать на большинстве этих устройств. В мире имеется значительно больше мобильных телефонов, чем персональных компьютеров, многие из которых имеют доступ в Интернет, поэтому можно ли позволить себе пропустить такой рынок? Дополнительную информацию о разработке Web для мобильных устройств можно найти в специальных статьях на сайте http://dev.opera.com/.
  5. Web-роботы / поисковые системы: В данном случае мы говорим о так называемой оптимизации для поисковых систем - практика создания Web -сайтов как можно более заметных для так называемых Web -роботов, которые просматривают Web и индексируют Web -сайты, и получении тем самым лучшего положения в результатах поиска на таких сайтах, как Google. Для этого существует специальная наука (см. статьи по оптимизации для поисковых систем (SEO), такие как "Интеллектуальная структура сайта для лучшей SEO!" (http://dev.opera.com/articles/view/intelligent-site-structure-for-better-se/) и "Семантический HTML и Оптимизация для поисковых систем" (http://dev.opera.com/articles/view/semantic-html-and-search-engine-optimiza/)), но и в этом случае простое использование стандартов Web сделает сайт значительно более заметным для Google, Yahoo! и т.д., что будет хорошо и для бизнеса.

Однако даже при наличии всех этих преимуществ большинство сайтов в Web все еще не придерживаются стандартов Web, и многие работающие сегодня разработчики Web по прежнему используют плохие, устаревшие методики. "Почему?" спросите Вы. Для этого существует множество причин - люди будут ссылаться на отсутствие образования, политику компании, отсутствие необходимости изучать стандарты, так как зарплату платят в любом случае, большие трудности изучения, поддержка стандартов в браузерах Web … давайте рассмотрим каждое из этих утверждений более подробно, а затем посмотрим на контраргументы, чтобы попробовать избавиться от любых оправданий неиспользования и незнания стандартов.

  1. Отсутствие образования: Здесь имеется проблема, но это и является одной из основных причин создания данного курса. Многие университеты не преподают стандарты Web в посвященных Web курсах, а многие учебные курсы часто содержат устаревшие методики, и их трудно изменить в связи с бюрократией. Книги и специальные курсы обычно бывают дороги. Но подождите! Сейчас мы представили курс, который совершенно бесплатен, и распространяется в университетах и т.д., чтобы помочь им сделать эти изменения, поэтому в действительности теперь здесь нет никакого оправдания.
  2. Политика компании: Несомненно существуют компании/учреждения, которые до сих пор имеют действительно старые, несовременные Web -сайты, и политики, которые заставляют сотрудников использовать устаревшие браузеры, но ситуация с этим становится лучше. А теперь, когда имеется доступный бесплатный курс, показывающий, как сделать такие изменения, это стало еще легче. Модернизация компанией своего Web -сайта в соответствии с современными стандартами стимулирует также к обновлению используемого браузера, так как сайты будут выглядеть не так привлекательно в устаревших браузерах, хотя и будут там работать. Компании должны также поощрять своих заказчиков на модернизацию. Существуют также сильные доводы для самого бизнеса — сайты, использующие стандарты Web, как показано, было выше, будут иметь лучшие результаты в поисковых системах и будут доступны людям с ограниченными возможностями и пользователям альтернативных устройств — могут ли компании позволить себе игнорировать эту аудиторию?
  3. "Мне не нужно их изучать!": Я знаю, что некоторые разработчики скажут, "но я использую устаревшие методики и по прежнему получаю зарплату - зачем мне беспокоиться об этих новых материях?" Как сказано выше, они делают код значительно более эффективным, легче для написания, и проще для сопровождения. И это позволяет писать современный код, который доступен и может использоваться на альтернативных устройствах - разве это не увлекательно? Это сделает также ваши профессиональные навыки более соответствующими требованиям завтрашнего дня, и позволит заработать больше. Сегодня многим компаниям требуются специалисты, знающие стандарты Web.
  4. "Это очень трудно для изучения!": Глупость. После усвоения части этого курса, вы поймете, как легко понять основы использования стандартов Web, будете ли вы новичком в разработке/проектировании Web, или опытным разработчиком Web, совершенствующим свои профессиональные навыки. Это примерно также трудно, как использование старых, несовременных плохих методов, что не так уж сложно, и они предоставляют так много преимуществ над старыми способами.
  5. Поддержка стандартов в браузерах: Поддержка стандартов в используемых браузерах существенно различалась в прошлом, что делало создание Web -сайтов для работы с различными браузерами настоящим кошмаром. Но эти дни ушли - все современные браузеры имеют сходную поддержку стандартов Web. Поддержка все еще иногда требуется для старых браузеров, которые не имеют хорошей поддержки в браузере, но при использовании лучших современных методов, можно гарантировать, что пользователи этих браузеров будут все же иметь приемлемое взаимодействие.

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

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

В старые времена, хотя и не так давно, люди обычно представляли свои Web -сайты в виде гигантских таблиц, используя различные ячейки таблицы для размещения графических элементов, текста и т.д. (таблицы предназначены не для этого, на страницу добавляется избыточная разметка). При этом часто использовались невидимые изображения, называемые интервальными GIF для точной настройки позиций элементов страницы (для чего изображения не предназначены, на страницу добавляются избыточные разметка и изображения). Было принято писать сценарии JavaScript, которые генерировали меню и т.д. на лету (что не очень хорошо для людей с отключенной в браузерах обработкой JavaScript, или для слабовидящих людей, использующих программы чтения с экрана, которые оказывались бессильны перед таким сценарием JavaScript) или работали только с одним браузером (как насчет людей, использующих другие браузеры). Информация о стилях оформления вставлялась прямо в код HTML с помощью элементов <font> (ужасно для сопровождения, и добавляет на страницу излишнюю разметку). И множество других преступлений против разработки приложений Web. Самое плохое то, что выше было сказано "в старые времена", но факт состоит в том, что множество людей продолжают это делать!

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

Лекция 1: 12 || Лекция 2 >
Константин Моренко
Константин Моренко
Марина Медведева
Марина Медведева

Добрый день. Сегодня записалась на курс, хочу сразу оплатить, но не знаю, можно ли это сделать через сайт Интуит?

Денис Скрипов
Денис Скрипов
Россия, Омск, ОмГУ им. Ф.М. Достоевского