LINUX.ORG.RU
ФорумTalks

Качество ПО определеятся тем, как оно обрабатывает нештатные ситуации

 


0

1

Существует сабжевый тезис. И если оценивать им современные браузеры, то все они без исключения — УГ.

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

Например, старая Опера при обновлении страницы, которая была загружена ранее, но стала недоступной из-за падения сервера, долго тупила, и оставляла на экране старую страницу, но уже без стилей. Какого хрена?

FF актуальной версии частенько при недоступности страницы вместо сообщения об ошибке показывает желтый экран с желтым «впуклым» прямоугольником в верхней части. Ни одной буковки об ошибке при этом не выводится. Причем так себя ведет и десктопная и андроидная версия. Чтозанафиг?

IE в такой ситуации зависит от того, использовалась ли текущая вкладка для отображения другой страницы. Если использовалась, то не сумев загрузить новый адрес, он иногда тупо возвращается назад к предыдущему URL, как будто, сцуко, ничего не произошло. Ну не сволочь?

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

Они что, специально это делают? Почему эти говнокодеры не могут один раз и навсегда написать нормальную обработку ошибки загрузки страницы? Чтобы вместо вышеперечисленного мудозвонства просто показать код HTTP (если от сервера что-то пришло) и нормальным текстом написать, что собственно пошло не так.


Почему эти говнокодеры не могут

А почему слоны не летают?

Stahl ★★☆
()

Почему эти говнокодеры не могут один раз и навсегда написать нормальную обработку ошибки загрузки страницы?

ты уже отправил свои патчи, правда?

Rastafarra ★★★★
()

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

vehn
()
Ответ на: комментарий от vehn

Для этого можно показать таймаут ошибку, и сделать кнопку «показать страницу из кеша».

alexmaru
()

FF актуальной версии частенько при недоступности страницы вместо сообщения об ошибке показывает желтый экран с желтым «впуклым» прямоугольником в верхней части.

Пруфпик? Это вообще как?

TheAnonymous ★★★★★
()

Дык, идите и напишите сами, если вас так беспокоит данная проблема - браузеры всё-таки опенсурсные (кроме осла). Зато потом сможете гордо опубликовать историю успеха как вы убедили сообщество в нужности такого вот поведения браузеров, как добавили код, и как всем стало от этого хорошо.

DawnCaster ★★
()

Добавлю. Еще сильнее раздражает, что сообщение о попытке коннекта с чем-то может висеть минуты без возможности прервать текущий коннект. Например висит браузер при открытии сайта на доступе к баннерной сети или к счетчику от гугла, страницу не показывает, ну дайте же возможность пропустить это соединение, вот тупо крестик добавить в строку статуса к «connecting...»

praseodim ★★★★★
()

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

Iron_Bug ★★★★★
()
Последнее исправление: Iron_Bug (всего исправлений: 2)

Качество ПО определеятся тем, как оно обрабатывает нештатные ситуации

И для этого пишут 100500 костылей - в итоге все равно получается говнокод и тормоза.

StReLoK ☆☆
()
Ответ на: комментарий от StReLoK

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

Iron_Bug ★★★★★
()

Существует сабжевый тезис.

Слишком максималистично.

Дорого писать софт, который будет 100% exception safe или там на null pointer-ы проверять выделенное malloc()-ом.

utf8nowhere ★★★
()

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

RazrFalcon ★★★★★
()

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

Алсо, напиши чтоле свой браузер. Только не такое говно как links.

svr4
()

ТС, пойми, это не говнокодеры, это само говно, которое кодерам приходится делать. 30 лет назад все писалось на асме/сишечке и говнокодеров не было. Потому что говна не было. Все было чисто и просто. Надо было родиться на 30 лет раньше. Эх.

unt1tled ★★★★
()
Ответ на: комментарий от praseodim

Я просто подобавлял все эти даблклики и ядра в фильтры адблока.

quwy
() автор топика
Ответ на: комментарий от RazrFalcon

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

А вот зря, кстати. Давно пора браузерам выдавать предупреждение при открытии таких страниц. То есть пусть отображает страницу как раньше, но с заметным красным или желтым значком, как в случае нарушений HTTPS. Мало какому заказчику понравится такая метка и веб-макаки вынуждены будут начать писать нормальный код, или идти в дворники.

quwy
() автор топика

У меня без интернета все открывается, особенно если ServiceWorker
Вообще, это одна из особенностей HTML и HTTP

mystery ★★
()
Ответ на: комментарий от TheAnonymous

На десктопе много всего установлено, но вот на планшете стоит только адблок, при этом там эта фигня проявляется гораздо чаще (особенно при хреновом wifi).

quwy
() автор топика
Ответ на: комментарий от DawnCaster

Дык, идите и напишите сами, если вас так беспокоит данная проблема

Я другую работу работаю, и работаю ее нормально. А что касается написания браузера, то возникает закономерный вопрос: почему всякие гугели с майкрософтами, имея миллиарды, пишут говно? Не потому ли, что разработчиков выбирают по принципу «умеет ли он считать гномиков» или «может ли сказать, почему люки круглые»?

quwy
() автор топика

Они что, специально это делают?

А ты подсчитал число ситуаций, с которыми они справляются?

Я другую работу работаю, и работаю ее нормально

Ты никто, звать тебя никак, и качество твоей работы никому не известно.

tailgunner ★★★★★
()
Последнее исправление: tailgunner (всего исправлений: 1)

Где только находишь такие проблемы? Хромой по крайне-мере все честно показывает: 404 и 500. Я скажу даже более, если страница не доступна Хромой запускает небольшую игрушку с динозавриком, чтобы убить время.

Единственно для 451 ошибки шаблон страницы зависит от провайдеру к которому подключен.

foror ★★★★★
()
Ответ на: комментарий от quwy

Давно пора браузерам выдавать предупреждение при открытии таких страниц.

Валидность HTML это плевая проблема, парсер решающий её пишется за неделю. А гугл и так подобные сайты наказывает понижая их в выдаче. Гораздо более существенная проблема в JS и её не просто так выявить.

foror ★★★★★
()

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

foror ★★★★★
()
Последнее исправление: foror (всего исправлений: 3)
Ответ на: комментарий от quwy

Не потому ли, что разработчиков выбирают по принципу «умеет ли он считать гномиков» или «может ли сказать, почему люки круглые»?

Насчёт гугла не скажу, но вот про M$ ходят слухи, что нормальные разработчики от них постепенно уходят в яббл и гугол.

DawnCaster ★★
()
Ответ на: комментарий от foror

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

quwy
() автор топика
Ответ на: комментарий от quwy

Тогда не знаю от чего у тебя так бомбит, у меня бы была жена, которая мне сайты запиливала, так я бы может и на этом лоре не тусовался )

foror ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.