Круглов С.А.
Кросс-браузер DHTML

www.kruglov.ru / Статьи / Браузер Opera - почему он мне не нравится

Браузер Opera - почему он мне не нравится

Внимание: в связи с готовящимся выходом Opera 7 эта статья считается устаревшей

Главными преимуществами Opera (мы рассматриваем 5-ую версию этого браузера, точнее 5.12, последнюю доступную при написании этой статьи русскую версию) считаются компактность, быстродействие и доступность ее для не-Windows платформ (Linux, BeOS, Mac и т.д.) Что ж, давайте рассмотрим стачала ее недостатки, а потом посмотрим, перевешиваются ли они ее преимуществами.

Для сравнения Оперы с другими браузерами возьмем MSIE (Microsoft Internet Explorer) 5.5 SP 2, Netscape 4.5 и Mozilla 0.9.3 (правда Mozilla до сих пор находится с состоянии beta-тестирования, но на ее движке сделан 6-ой Нетскейп).

Недостатки

Опера не соответствует заявленной поддержке CSS1

Рассмотрим пример - вот такой код
<table border=1><tr><td> <!-- Чтоб была видна рамка и можно было оценить отступы -->
<p style="margin-left: 30px; text-indent: -10px;">Line1
<p style="margin-left: 10px; text-indent: 10px;">Line2
</td></tr></table>

Этот код вот так отображается в разных браузерах:
MSIE 5.5 Все как и надо
Mozilla 0.9.3+ Все как и надо, только справа появился небольшой отступ
Netscape 4.5 Все как и надо, за исключением увеличившегося правого пустого места
Opera 5.12 В первой строчке отрицательный text-indent стал положительным и удвоился, во второй положительный просто удвоился. Ко всему прочему еще и неправильно высчитана ширина таблицы, в результате чего текст переехал через границу

Опера не соответствует заявленной поддержке DOM1

В Опере не работает CSS-свойство clip.

В JavaScript'е Оперы нельзя сделать многие вещи

Многие вещи, которые можно сделать даже в Netscape 4, не говоря уж об MSIE 4+, в Опере невозможны. К примеру, в Опере у окна нет события onresize, но слои при изменении размера окна слетают еще похуже, чем в Netscape 4.
<body onresize="alert('resize')"> работает в MSIE и Netscape, но не работает в Opera.

onload у window, бывает, работает через раз.

Опера, в отличие от большинства других браузеров, не бесплатная

В выкачанной (незарегистрированной) версии Оперы наверху сидит баннер, который не только увеличивает траффик и раздражает своим присутствием, но и уменьшает рабочую область экрана. Ни Netscape, ни MSIE такого себе не позволяют.

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

Достоинства

Компактность

Дистрибутив Оперы действительно небольшой (чуть больше 2 Мб без поддержки Java-апплетов), что в сравнении с 10 Мб Mozilla (6-Netscape), а тем более с огромным MSIE впечатляет. Однако размер имеет большое значение только в том случае, если либо человек не может получить браузер другим путем, нежели через скачивание из Интернет, либо если тот компьютер, на который нужно поставить браузер, обладает весьма скромными возможностями (если это устаревший или упрощенный (напр. наладонный) компьютер).

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

Человек, выкачивающий из Internet 2 Мб Оперы на скорости 33600 (средняя скорость для российских телефонных сетей) затратит на это минут 15 и, казалось бы, гораздо меньше денег, чем стоит компакт-диск. Однако ему все равно придется использовать кроме Оперы какой-нибудь другой браузер, т.к. многие сайты в Опере либо не предоставляют всех возможностей и удобств, либо вообще не читабельны. Использовать поставляемый по умолчанию с операционной системой браузер не всегда удобно, т.к. у Windows NT это, к примеру, 3-ий MSIE. Придется либо выкачивать, либо покупать. С 5-ым в Windows 2000 тоже не все так просто, в нем обнаружена дыра в безопасности, закрытие которой требут установки патча, превышающего размер Оперы в несколько раз (если не сказать десятков раз).

Быстродействие

Расширим это понятие - пусть будет "низкая требовательность к ресурсам". Рассмотрим по пунктам:

 Занимаемая память

Сразу после загрузки было занято (цифры округлены) - MSIE 5.5: 8 Мб, Netscape 4.5: 8.5 Мб, Opera 5.12: 6.5 Мб. Ну что ж, неплохо, но и не особо впечатляет...

После загрузки главной страницы сайта www.yandex.ru - MSIE 5.5: 11 Мб, Netscape 4.5: 11 Мб, Opera 5.12: 8 Мб. Меньше чем у конкурентов, но не намного. Где-то на треть. При нынешней стоимости оперативной памяти, когда, к примеру, модуль DIMM SDRAM 256 Мб стоит 25$ (на момент написания статьи), для настольных компьютеров, да, пожалуй, и ноутбуков преимущество Оперы весьма спорно.

 Скорость

Для тестирования с локального диска открывался HTML-файл со скриптом, рисующим большую таблицу:

<script>
document.write("<table border=1>")
for(i=0;i<5000;i++){
  document.write("<tr><td>")
  document.write("xxxxxxxxxxxxxxxxxxxx".substring(0,Math.floor(Math.random()*20))
  document.write("</td></tr>")
}
document.write("</table>")
</script>

Конфигурация использовавшегося в тестировании компьютера - Celeron 700MHz (10.5x66), 512Mb PC-100 SDRAM, Windows 2000 Server. Полученные результаты (время считалось по часам с секундной стрелкой):

MSIE 5.5 2.5 сек
Netscape 4.5 6 сек
Opera 5.12 24 сек
Mozilla 0.9.3+ 28 сек

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

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

 Мультиплатформенность

Как было указано выше, Опера доступна для достаточно широкого ряда платформ, что, конечно, является большим преимуществом перед MSIE, доступного лишь для Windows и, с урезанными возможностями, для Macintosh. Но браузеры не ограничиваются только Оперой и MSIE, под разные платформы есть, к примеру, и Netscape, 4-ый и 6-ой. Повторюсь, однако, что мультиплатформенность Оперы - большое преимущество, беда в том, что не-windows платформы распространены весьма мало, особенно в Рунете.

 Другие преимущества

Выдержка из официального пресс-релиза:

 Клавиатурные сокращения сохраняют время и помогают людям с ограниченными возможностями.

 Включение и выключение показа картинок одной кнопкой.

 Внутри Оперы можно создать несколько окон без съедания системных ресурсов.

 Зум до 1000%.

 Возобновление скачивания.

 Встроенный news, почта, поиск и Instant Messaging.

 Посылка сообщений на ICQ.

Выводы

На фоне несоответствия стандартам, плохого механизма рендеринга, упрощенной DOM-модели и прочих недоделок и багов преимущества видятся в новом свете. Достоинства Оперы можно разделить на 2 части - "легкость" (малый размер, низкая требовательность к ресурсам) и "навороты" (зум, докачка и т.д.).

Первые как раз видятся как обратная сторона недостатков - "ну и что, что плохо работает, зато мало весит", что наводит на такое сравнение: "Опера" среди браузеров - как Запорожец вреди автомобилей. Маленький, экономичный, но... В общем вы понимаете. Много на нем не увезешь, ехать неудобно, да и ненадежный он.

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

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

И не стоит недооценивать полезность Оперы для упомянутых наладонных (palm) компьютеров, распространенность которых, однако же, весьма невелика.


[13 окт. 2001]

(c) Круглов С.А. <info@kruglov.ru>