|
|
|
| Считается, что JavaScript, а также некоторые плагины могут представлять опасность. Это так, потому что, интерпретатор JavaScript и другие интерпретаторы(которые называются плагинами) могут иметь гораздо больше ошибок(а значит и уязвимостей) чем простой парсер гипертекста? И лучшей защитой будет отключение JavaScript на подозрительных сайтах и своевременная установка обновлений? | |
|
|
|
|
|
|
|
для: dump
(25.01.2012 в 13:01)
| | Когда такое говорят, обычно добавляют оговорки. Например, опасность JavaScript заключается в том, что у вас могут украсть cookie, однако, если вы отключите JavaScript вы скорее всего вообще не сможете работать с сервисом, который их вам устанавливает. Когда лет 5-7 назад JavaScript серьезно не рассматривался, его можно было почти безболезненно отключить, сейчас с появлением AJAX и jQuery об этом и речи идти не может - вы себе пол Интернета отключите. Пожалуй, только к нам сможете ходить по прежнему :))), правда у вас перестанут работать цитирование и bbCode.
JavaScript не может ничего утащить с вашей машины без вашего ведома и закинуть на ваш сайт не может. Вот ошибка в браузере или плагине - это большая проблема, они могут эксплуатироваться. | |
|
|
|
|
|
|
|
для: cheops
(25.01.2012 в 13:13)
| | А я почти всегда вручную BB-коды пишу, и цитаты сам, так что у меня совсем ничего не отключит )
P.S. Прошу прощения за «не в тему», но меня мучал, и до сих пор мучает вопрос о использовании JS на собственном сайте: так ли это нужно, много ли я потеряю без него, не лучше ли сосредоточиться на повышении эффективности скорости загрузки страниц и т.д. | |
|
|
|
|
|
|
|
для: Vyacheslav Tsv.
(26.01.2012 в 03:11)
| | Некоторые сайты, панели управления очень завязаны на JavaScript, AJAX сейчас очень много, поэтому много чего может перестать работать.
>P.S. Прошу прощения за «не в тему», но меня мучал, и до сих пор мучает вопрос о
>использовании JS на собственном сайте: так ли это нужно, много ли я потеряю без него, не
>лучше ли сосредоточиться на повышении эффективности скорости загрузки страниц и т.д.
Это лично ваше дело, совершенно не нужно вводить на сайте функциональность, которая у всех, видится вам архитектура вашего приложения/сайта без JS, вполне можно обойтись без него. В конце концов задача пользователей пользоваться сервисами, а не разбирать сайт по косточкам в поисках той или иной технологии. Меня еще умилият, когда валидность кода смотрят - я понимаю, когда это делает робот - он может себе время на разбор сэкономить, зачем это обычному пользователю, мало понятно - что валидный код, что не валидный, лично для себя он выгоды, защиты, скорости никакой не извлечет. Валидация - это инструмент разработчика (более того, не такой совершенный, как он многим может представляться, это как с замечаниями PHP: и польза и вред, но пользы больше). | |
|
|
|
|
|
|
|
для: Vyacheslav Tsv.
(26.01.2012 в 03:11)
| | >так ли это нужно, много ли я потеряю без него, не лучше ли сосредоточиться на повышении эффективности скорости загрузки страниц и т.д.
Наверное у каждого третьего web-программиста есть своя собственная cms, которую он ставит заказчикам или держит на ней свой(и) сайт(ы). Так вот несколько лет назад моя cms обладала почти всеми теми функциями, которыми обладает новая, переписанная недавно, а удобство пользования - небо и земля. Раньше у меня уходило больше дня на создание сайта (это еще мягко сказано, хотя и опыта было намного меньше), теперь, бывает меньше чем за час делаю (а это внедрить дизайн, создать разделы, добавить тексты, информационные блоки и т.д.). Современные средства требуют потратить очень много времени на их изучение, зато с помощью них вы можете сильно облегчить себе жизнь, в будущем правда.
Если использовать jQuery - то там особо и думать не надо, надо лишь знать элементарно синтаксис javascript, а jQuery за несколько дней можно освоить. Если учить javascript (я не знаю, знаете вы его или нет), то получите намного большие средства, для решения любых задач.
Еще года три четыре назад я сам не видел надобности в javascript, и спроси вы меня тогда, я бы сказал что javascript бред. На самом деле это мощный инструмент, половину возможностей которого я до сих пор не знаю. Сейчас мое поменялось, я вижу в javascript большое будущее. И теперь я считаю, что бред это jQuery. Использовать ее все равно что использовать Жомлу) | |
|
|
|
|
|
|
|
для: deimand
(26.01.2012 в 08:09)
| | jQuery - это еще и связь с декларациями CSS, это вообще очень мощная штука, зачастую даже JavaScript-разработчики со стажем не очень понимают, какой силы это вещь, а вот кто в руках держал декларативные языки вроде SQL, регулярных выражений, те врубаются моментально, что сделали разработчики jQuery - они эту неудобную хрень, придуманную Microsoft/Netscape довели до ума, сделали её такой, какая она должна быть: не объектно-ориентированной, а декларативной, в результате чего пазл CSS+JavaScript наконец сложился если не в промышленный стандарт, то в его прототип. | |
|
|
|
|
|
|
|
для: deimand
(26.01.2012 в 08:09)
| | > я не знаю, знаете вы его или нет
Знаю. Из-за интереса напичкал свой сайт таким обилием этого JavaScript, что браузер стал тормозить на старой машине. На новой-то всё хорошо, но вот обладатели более старых процессоров и версий браузеров — плюнули бы и ушли с сайта, добавив его в чёрный список какой-нибудь.
С того момента прошёл год, и за это время я решил хорошенько поработать над повышением эффективности работы JavaScript на моём сайте. Получилось. Сейчас я создаю собственные универсальные функции JS, в которых использую и собственно сам родной синтаксис, и jQuery в перемешку.
Однако всем пример: ru.wikipedia.org — покажите мне JavaScript у них? ) | |
|
|
|
|
|
|
|
для: Vyacheslav Tsv.
(26.01.2012 в 14:42)
| | >Однако всем пример: ru.wikipedia.org — покажите мне JavaScript у них? )
Не... ну есть чуть-чуть, даже AJAX, даже довольно много можно найти... просто портал старый, а их ой как не просто на новые рельсы переводить, не смотря на армию разработчиков. | |
|
|
|
|
|
|
|
для: cheops
(26.01.2012 в 15:35)
| | Ну, есть-то есть, опять же BB-коды и прочее, как минимум )
Ну, допустим они переведут на AJAX сайт, и что с точки зрения пользователя должно измениться? Навигация по статьям без перезагрузки? Да там же одного текста бывает по 1-5 Мб! Те же самые «висы» будут у пользователей. | |
|
|
|
|
|
|
|
для: Vyacheslav Tsv.
(26.01.2012 в 15:51)
| | AJAX не применяется для целевого текста (ну нормальными людьми не применяется), он применяется для управления и форм. Вот управление патрулирующего переделали на AJAX и это очень уместно, так как страницы довольно объемные, она может потребоваться как для патрулирования, так и для обычного чтения, патрульный может подтвердить дифф, сделать откат или начать редактирование. Т.е. очень большое количество действий, которые касаются менее 1% посетителей и менее 10% редакторов. В этом случае AJAX очень уместен. Понятно, что для навигации по статьям никакой AJAX не то что не нужен - он вреден, так как на статью нельзя будет сослаться. | |
|
|
|
|
|
|
|
для: cheops
(26.01.2012 в 16:08)
| | >Понятно, что для навигации по статьям никакой AJAX не то что не нужен - он вреден, так как на статью нельзя будет сослаться.
Это уже технический вопрос, и больше всего неудобств доставляет именно IE. А так как на него ориентируются, как на обязательно поддерживаемый браузер, и проблемы особо никто не хочет решать, тем более та же jQuery их не хочет решать, вот никто его особо и не применяет. Лучше бы jQuery решали сложные технические моменты. Что они делают вообще, визуальные понты? А ля компьютер в интернете? Кому нужны эти понты? У Вас на форуме этого нет, на многих других серьезных сайтах тоже. Если у Вас была потребность сделать bb коды - Вы написали маленькую функцию. Если у Вас будет потребность сделать статейный сайт, весь на ajax (заказчик захочет, разве откажете?), Вы будете подключать jQuery? Или будете доказывать ему нецелесообразность подхода?
Ajax не вреден, он просто не рАзвит. И всему виной библиотеки "на все руки", которые задействовали половину его возможностей и решили что всем хватит, так как для популярности библиотеки нужно побольше понтов, это же важнее.
Не нужно ориентироваться на мнение толпы. Нужно задаваться правильными вопросами и не обманываться ложными ответами. | |
|
|
|
|
|
|
|
для: deimand
(26.01.2012 в 17:43)
| | AJAX не был стандартизирован с самого начала, как собственно и JavaScript - разные версии браузеров имели разные версии DOM-моделей и JavaScript, которые вредили развитию языка и клиентскому программированию, так как прежде чем его использовать нужно было решить проблему совместимости браузеров, а она не тривиальна.
Библиотека jQuery именно тем и известна, что она решила эту проблему, код созданный с использованием jQuery одинаково выполняется во всех браузерах. Код позволяет задействовать непосредственно конструкции CSS, а не объекты, которые отличаются от браузера к браузеру. Это то, чем должен быть JavaScript с самого начала. Я не удивлюсь, если в самое ближайшее время, когда версии jQuery стабилизируются, его начнут включать в состав браузера, чтобы не загружать со страниц сайтов.
С jQuery придется иметь дело каждому, с AJAX тоже, более того, если 3-5 лет назад я говорил, что это серьезно и это придется осваивать, то сейчас это должно быть очевидно. Дорого по сравнению с jQuery писать на чистом JavaScript. Слишком широкое распространение получила jQuery и дальше его популярность будет расти, пока она только росла.
Ну и кроме того, сервера перегружены, клиенты ничего не делают - это основной тренд, он не ложный. Всеми силами сейчас будут пытаться нагрузить клиента и разгружать сервер. Идет укрупнение проектов, это общий тренд, его нельзя игнорировать и не принимать во внимание.
>Если у Вас будет потребность сделать статейный сайт, весь на ajax (заказчик захочет, разве
>откажете?), Вы будете подключать jQuery? Или будете доказывать ему нецелесообразность
>подхода?
Мы почти не используем jQuery в системе представления (как правило, лишь на тех страницах, где она уместна), но она необычайно интенсивно используется в системе администрирования при построении сложных динамических форм, отчетов и поиска по ним (когда есть море флажков, выпадающих списков, селекторов и полей ввода).
>Ajax не вреден, он просто не рАзвит. И всему виной библиотеки "на все руки", которые
>задействовали половину его возможностей и решили что всем хватит, так как для
>популярности библиотеки нужно побольше понтов, это же важнее.
Очень возможно, что вы лишь половину возможностей библиотеки видели :) В jQuery можно составить любой AJAX-код, который имеет место в обычном JavaScript - он просто устранит несовместимость браузеров. | |
|
|
|
|
|
|
|
для: cheops
(26.01.2012 в 18:59)
| | >Очень возможно, что вы лишь половину возможностей библиотеки видели :)
Возможностей у библиотеки много и они будут добавляться и добавляться, но уделяется ли большое внимание каждой из возможностей, вот главный вопрос. Я знаю, что можно написать целую web OS (не говоря уже про сайты), клиентская часть которой будет весить не больше половины веса jQuery. Учитывая распространенность библиотеки и отсутствие web OS написанных на одной ней, можно смело сказать что эта библиотека только для рюшечек. Сильный проект на jQuery не сделать. И спорить можно бесконечно, я просто преследую другие цели, решать которые jQuery не умеет, а значит это не универсальная библиотека, а узконаправленная. Да она много умеет, да она позволяет делать это не думая, но она не универсальная, а значит это неверное направление, которое не развивает а тормозит. Может дальше что-то изменится, кто его знает, но ее вес неумолимо растет, сейчас 250Кб (что-то около того, точно не помню), потом будет пол метра... А начинали с решения проблемм кроссбраузерности. | |
|
|
|
|
|
|
|
для: deimand
(26.01.2012 в 17:43)
| | На самом деле полностью согласен с Игорем Вячеславовичом, так как сам верю в то, что одной из основных (именно основных) функций, или даже скорее свойств, jQuery является именно кроссбраузерность, а это дело сложное и неблагодарное, за что разработчикам нужно сказать огромное спасибо. Хотя, это не их проблемы, а проблемы разработчиков браузеров, на самом деле!
А ещё все такие «умные» (разработчики браузеров), создают целые Help'ы и Support'ы, где описывают, что вот это свойство именно в их браузере называется так, а не как у всех. Ууу, бесят. | |
|
|
|
|
|
|
|
для: Vyacheslav Tsv.
(26.01.2012 в 20:19)
| | >одной из основных (именно основных) функций, или даже скорее свойств, jQuery является именно кроссбраузерность
В рамка AJAX вся кроссбраузерность заключается в:
function connect()
{
if(navigator.appName == "Microsoft Internet Explorer")
return new ActiveXObject("Microsoft.XMLHTTP");
else
return new XMLHttpRequest();
}
|
Эти три строчки не стоит заменять на библиотеку. | |
|
|
|
|
|
|
|
для: deimand
(26.01.2012 в 20:37)
| | Дело не только в них, а например в том, как в IE и других браузерах принято считать расстояния, как принято работать с прозрачностью. Библиотека позволяет не обращать внимание как на сам барузер, так и на его версии, которых у каждого типа браузеров - море разливное и не у всех пользователей идет автоматическое обновление - многие блокируют такую возможность. | |
|
|
|
|
|
|
|
для: Vyacheslav Tsv.
(26.01.2012 в 14:42)
| | http://floomby.ru/content/uucuLFE0Ak/full/ | |
|
|
|
|
|
|
|
для: AlexSol
(26.01.2012 в 20:57)
| | Thank you xD | |
|
|
|
|