Jump to content

Javascript & JQuerry - Параллельное изучение


psywalker
 Share

Recommended Posts

Привет!

Последнее время часто вижу, что многие подсели на JQuerry и совсем забывают о родном Javascript, мотивируя это тем, что JS - это уже прошлый век и что давно уже пора переходить на JQ. Так-же заметна и следующая вещь, что тот, кто совмещает и учит параллельно и то и то, тот всё равно ссылается в пользу JQ и не хочет познавать чистый JS (или хочет, но делает это с неохотой и познавая только некоторые вещи, далеко не все) и как правило его знания в этой области очень далеки от совершенства.

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

1. Действительно ли Javascript уже на столько стар, что его можно совершенно без задней мысли поменять на JQuerry ?

2. Стоит ли уделять так много внимания чистому Javascript, узнавать его детали и стараться разобраться в нём очень хорошо?

3. Можно ли изучать параллельно Javascript и JQuerry, и не будут ли от этого страдать знания одного и другого, и будут ли усваиваться те и иные вещи вместе?

4. JQuerry может всё что угодно? И может ли он заменить любые вещи на обычном Javascript ?

5. Тяжёлый ли в освоении JQuerry? На сколько тяжелее Javascript или во сколько раз?

Буду признателен каждому ответу, особенно в более развёрнутом виде. -_-

Link to comment
Share on other sites

1. Нет, нет и еще раз нет!

2. Обязательно стоит.

3. Можно, но лично тебе нельзя -_- , т.к. ты, psywalker, нуждаешься в трудностях, преодолевая которые ты быстрее учишься.

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

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

Я для Мишки как то писал тутор-ликбез про то как устроен jQuery. Хошь поищу для тебя (если ты не читал его конечно)? Там много интересного (сам тогда копался в исходниках)...

Link to comment
Share on other sites

1. Нет, нет и еще раз нет!

2. Обязательно стоит.

3. Можно, но лично тебе нельзя -_- , т.к. ты, psywalker, нуждаешься в трудностях, преодолевая которые ты быстрее учишься.

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

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

Я для Мишки как то писал тутор-ликбез про то как устроен jQuery. Хошь поищу для тебя (если ты не читал его конечно)? Там много интересного (сам тогда копался в исходниках)...

Спасиб за ответы дружище, насчёт ликбеза давай конеш, буду рад покопаться.

т.к. ты, psywalker, нуждаешься в трудностях, преодолевая которые ты быстрее учишься.

Тааак, подкол понял, но я имел ввиду, что я так не не быстрее учусь, а качественнее) -_-

Link to comment
Share on other sites

Ну качественнее, так качественнее. -_-

Даю задание:

1) прочитать мой туториал

2) прочитать вот эту статью

3) написать свой фреймворк (пусть будет называться $PSY) на основе моего тутора и реализовать там то же что и в пункте №2

Справишься?

Link to comment
Share on other sites

Ну качественнее, так качественнее. -_-

Даю задание:

1) прочитать мой туториал

2) прочитать вот эту статью

3) написать свой фреймворк (пусть будет называться $PSY) на основе моего тутора и реализовать там то же что и в пункте №2

Справишься?

1. Насчёт твоего туториала я уже пытался читать, и особо ничё не понял в силу своих знаний.

2. А насчёт ссылки про оффсеты я уже в принципе знаю, как они работают.

3. Нет, к сожалению пока не осилю, чувствую, что не смогу. Рано.

Link to comment
Share on other sites

Я вот яваскрипт знал, но основательно забыл. Пользуюсь всегда jQuery. Когда его не хватает (редко, но случается), то я вспоминаю «классический» яваскрипт. Я вообще считаю, что достаточно знать основные принципы языка, а остальное гуглится по мере надобности. Например, PHP, который у меня основной язык я знаю процентов на 10, наверное. Когда что-то надо, чего я не знаю, то я это дело гуглю. Зато вместо того, чтобы тупо изучать синтаксис, я это время трачу на изучение каких-нибудь других вещей как то: настройка серверов, придумываю всякие извращения с кэшированием и вообще расширяю кругозор. По теме я бы посоветовал использовать jQuery, а «классику» смотреть по мере надобности. Всё-таки время не резиновое и тратить его надо максимально эффективно.

Link to comment
Share on other sites

В чем прелесть JQuery в его простоте, не нужно выдумывать циклы перебирать классы и свойства, можно написать просто $('input.last:checked'). Минусы в том что это всего лишь над стройка надо JS получается что если тебе нужен быстрый скрипт надо использовать JS но может оказаться так что твоих знаний на это не хватит на оптимизацию.

Без основ JS все равно не куда не уедишь... Поэтому крайне не корректно ставить вопрос насчет устарелости JS. Я думаю что для каждой задачи свои решения, если по клику на заголовок надо просто сменить у него фон, то нету смысла использовать JQuery если же работа с формами аяксом анимацией то почему бы и нет, тем более если на сайте распространен JS

Edited by stars
Link to comment
Share on other sites

Veseloff, а ты в офисе работаешь? Если да, то как начальники относятся к тому, что ты все время гуглишь те оставшиеся 90%? ) Чет с трудом такую работу представляю.

Link to comment
Share on other sites

А кто сказал, что я использую 100% языка? Мне вполне хватает и 10%. Мне кроме ввода/вывода из файла, запросов в БД и циклов почти ничего и не надо. Для примера, вот список функций PHP на букву «a».

abs()
acos()
acosh()
addcslashes()
addslashes()
aggregate()
aggregate_info()
aggregate_methods()
aggregate_methods_by_list()
aggregate_methods_by_regexp()
aggregate_properties()
aggregate_properties_by_list()
aggregate_properties_by_regexp()
aggregation_info()
apache_child_terminate()
apache_get_modules()
apache_get_version()
apache_getenv()
apache_lookup_uri()
apache_note()
apache_request_headers()
apache_reset_timeout()
apache_response_headers()
apache_setenv()
apd_breakpoint()
apd_callstack()
apd_clunk()
apd_continue()
apd_croak()
apd_dump_function_table()
apd_dump_persistent_resources()
apd_dump_regular_resources()
apd_echo()
apd_get_active_symbols()
apd_set_pprof_trace()
apd_set_session()
apd_set_session_trace()
apd_set_socket_session_trace()
array()
array_change_key_case()
array_chunk()
array_combine()
array_count_values()
array_diff()
array_diff_assoc()
array_diff_key()
array_diff_uassoc()
array_diff_ukey()
array_fill()
array_filter()
array_flip()
array_intersect()
array_intersect_assoc()
array_intersect_key()
array_intersect_uassoc()
array_intersect_ukey()
array_key_exists()
array_keys()
array_map()
array_merge()
array_merge_recursive()
array_multisort()
array_pad()
array_pop()
array_push()
array_rand()
array_reduce()
array_reverse()
array_search()
array_shift()
array_slice()
array_splice()
array_sum()
array_udiff()
array_udiff_assoc()
array_udiff_uassoc()
array_uintersect()
array_uintersect_assoc()
array_uintersect_uassoc()
array_unique()
array_unshift()
array_values()
array_walk()
array_walk_recursive()
ArrayIterator::current()
ArrayIterator::key()
ArrayIterator::next()
ArrayIterator::rewind()
ArrayIterator::seek()
ArrayIterator::valid()
ArrayObject::__construct()
ArrayObject::append()
ArrayObject::count()
ArrayObject::getIterator()
ArrayObject::offsetExists()
ArrayObject::offsetGet()
ArrayObject::offsetSet()
ArrayObject::offsetUnset()
arsort()
ascii2ebcdic()
asin()
asinh()
asort()
aspell_check()
aspell_check_raw()
aspell_new()
aspell_suggest()
assert()
assert_options()
atan()
atan2()
atanh()

Сколько из них вы использовали в жизни хотя бы раз?

Link to comment
Share on other sites

А вот мне почему-то кажется, что JS нужно знать хорошо, а только потом уже переходить на JQ.

И кстати так почти никто не ответил, можно ли совмещать учёбу JS и JQ ?

Link to comment
Share on other sites

Я только начинаю учить php но мнение по сабжу всё-таки есть -_-

Имеет смысл вначале выучить синтаксис чистого ЯваСкрипта, то есть понять его принцип работы. А дальше уже к чему душа потянется, туда и учить. А одновременное углубление в 2 направления спеца из вас не сделает. Это как поговорка про зайцев, только концовка не такая фатальная.

Link to comment
Share on other sites

Я только начинаю учить php но мнение по сабжу всё-таки есть -_-

Имеет смысл вначале выучить синтаксис чистого ЯваСкрипта, то есть понять его принцип работы. А дальше уже к чему душа потянется, туда и учить. А одновременное углубление в 2 направления спеца из вас не сделает. Это как поговорка про зайцев, только концовка не такая фатальная.

Значит твой ответ - нет?

Link to comment
Share on other sites

А вот мне почему-то кажется, что JS нужно знать хорошо, а только потом уже переходить на JQ.

И кстати так почти никто не ответил, можно ли совмещать учёбу JS и JQ ?

меня JS всегда немного раздражал... поэтому начал учить JQ... Применяя полученные знания в реальных проектах сталкивался с тупостью включения фрейма ради пустяшной подсветки и т.п. пришлось подучить JS... Так что пожалуй да можно...

Edited by stars
Link to comment
Share on other sites

Значит твой ответ - нет?
Уверен что лучне не изучать досканально обе формы написания ЯваСкриптов, а если не досконально - тогда о чём мы вообще говорим. Так что, выучил синтаксис - вперёд, учи JQ. Ну или чистую Яву.

Так что мой ответ - НЕТ одновременно учить не стОит.

Link to comment
Share on other sites

Едиснтвенный плюс Jq - наличие внутри костылей для ИЕ. В остальном же не вижу зачем он вообще нужен. Ну да кода писать меньше. Но блин есть же автокомплит во всех ИДЕ.

1) JS не стар) Он активно развивается. Просто браузеры не так активно все это реализуют

2) Да стоит. И чем дальше тем больше развиваются веб сайты и появляются веб - приложения. Активно развивается серверный ЖС в лице ноды.

3) А смысл?

4) Jq это тот же самый Js. Ничего принципиально нового он не может. В принципе. Он только позволяет писать меньше кода.

5) JS он и есть JS. Ничем не отличается.

примера, вот список функций PHP на букву «a».

Тому кто такое придумал нужно гвоздь в голову вбить.

Edited by hf3
Link to comment
Share on other sites

Едиснтвенный плюс Jq - наличие внутри костылей для ИЕ. В остальном же не вижу зачем он вообще нужен. Ну да кода писать меньше. Но блин есть же автокомплит во всех ИДЕ.

1) JS не стар) Он активно развивается. Просто браузеры не так активно все это реализуют

2) Да стоит. И чем дальше тем больше развиваются веб сайты и появляются веб - приложения. Активно развивается серверный ЖС в лице ноды.

3) А смысл?

4) Jq это тот же самый Js. Ничего принципиально нового он не может. В принципе. Он только позволяет писать меньше кода.

5) JS он и есть JS. Ничем не отличается.

1, 2) Понял

3) Ну для того, чтобы потихоньку узнавать и JQ.

4) Почему, а как же всякие фишки, которых огромная куча в инете? Ведь на JQ их реализовать намного легче, они как будто для этого и созданы)

5) Ну это понят, но всё же JQ интересная штука.

Link to comment
Share on other sites

1. Действительно ли Javascript уже на столько стар, что его можно совершенно без задней мысли поменять на JQuerry ?

2. Стоит ли уделять так много внимания чистому Javascript, узнавать его детали и стараться разобраться в нём очень хорошо?

3. Можно ли изучать параллельно Javascript и JQuerry, и не будут ли от этого страдать знания одного и другого, и будут ли усваиваться те и иные вещи вместе?

4. JQuerry может всё что угодно? И может ли он заменить любые вещи на обычном Javascript ?

5. Тяжёлый ли в освоении JQuerry? На сколько тяжелее Javascript или во сколько раз?

1. Вообще не корректно сформулирован вопрос.

Если устареет чистый JS то вслед за ним устареет и jQuery.

jQuery состоит из чистого JS, это всего лишь набор готовых функций.

2. Хочешь быть мастером своего дела - стоит.

3. Можно. Но главное - практика.

Если постоянно стоит задача сделать что-то быстро - то обычно приходиться юзать какую-то библиотеку (jQuery, Mootols, Prototype), если нету готовых решений собственных на чистом JS.

А это потихоньку приводит к тому что забываешь чистый JS.

4. Это всеголишь набор готовых решений/функций.

5. Я бы сказал что jQuery в несколько раз легче.

Едиснтвенный плюс Jq - наличие внутри костылей для ИЕ. В остальном же не вижу зачем он вообще нужен. Ну да кода писать меньше. Но блин есть же автокомплит во всех ИДЕ.

Не единственный, и огромный. Ты можешь представить кроссбраузерный код такой функции:

$(function(){
alert('Hello Word!');
});

И если предоставишь этот код - то объясни как ты это в автокомплит занесешь.

1) JS не стар) Он активно развивается. Просто браузеры не так активно все это реализуют

2) Да стоит. И чем дальше тем больше развиваются веб сайты и появляются веб - приложения. Активно развивается серверный ЖС в лице ноды.

3) А смысл?

4) Jq это тот же самый Js. Ничего принципиально нового он не может. В принципе. Он только позволяет писать меньше кода.

5) JS он и есть JS. Ничем не отличается.

1. Согласен

2. Согласен

3. Согласен

4. Согласен

5. ИМХО jQuery легче учить. Я бы это сравнил как изучение верстки только для фаерфокса :angry:. Опера, правда, иногда преподносит сюрпризы, но знание чистого JS всегда выручит.

Edited by mishka2
Link to comment
Share on other sites

С какими проблемами я столкнусь если буду учить JS, после Java?
JavaScript – это интерпретируемый язык программирования с объектно-ориентированными возможностями. С точки зрения синтаксиса базовый язык JavaScript напоминает C, C++ и Java такими программными конструкциями, как инструкция if, цикл while и оператор &&. Однако это подобие ограничивается синтаксической схожестью. JavaScript – это нетипизированный язык, т. е. в нем не требуется определять типы переменных. Объекты в JavaScript отображают имена свойств на произвольные значения. Этим они больше напоминают ассоциативные массивы Perl, чем структуры C или объекты C++ или Java. Механизм объектно-ориентированного наследования JavaScript скорее похож на механизм прототипов в таких малоизвестных языках, как Self, и сильно отличается от механизма наследования в C++ и Java. Как и Perl, JavaScript – это интерпретируемый язык, и некоторые его инструменты, например регулярные выражения и средства работы с массивами, реализованы по образу и подобию языка Perl.
Edited by Протуберанец
Link to comment
Share on other sites

Не единственный, и огромный.

Да плюс большой, но едиственный. ИЕ 8 неплох - умеет querySelector - а значит также легко делать сложные выборки , ИЕ 9 хорош, ему вообще не нужны костыли подобные. МС вернулась в гонку браузеров.

И нафиг нужен будет этот ДжейКвери и прочие - через 5 - 6 лет?

Ладно бы он просто учил ИЕ нужным методам - например квериСелектору или тот же DOMContentLoaded расширяя через прототип, и уже сейчас можно было бы писать в3ц шный код подключая ДЖквери для ИЕ, но он придумал свои методы, цепочки и прочее.

В итоге многие думают что это какой то другой язык.

ещё другие минусы -

лишний слой абстракции

сложнее дебажить

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

В общем спорная штука.

З.ы. Хотя таки да нужно признать очень неплохо ускоряет процесс разработки. И имеет кучу интересных плагинов. С этим спорить грех, но будущего у него нет.

ИМХО.

>>4) Почему, а как же всякие фишки, которых огромная куча в инете?

Таких штук была огромная куча ещё до Джквери, часики всякие и прочее)

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

Link to comment
Share on other sites

З.ы. Хотя таки да нужно признать очень неплохо ускоряет процесс разработки. И имеет кучу интересных плагинов. С этим спорить грех, но будущего у него нет.

Ну вот ты уже сам и второй плюс нашел.

И нафиг нужен будет этот ДжейКвери и прочие - через 5 - 6 лет?

Это произойдет(наверное даже раньше) если сейчас разработчики jQuery прекратят свою работу над библиотекой.

Набор готовых функций всёравно останеться + плагины + легкость в освоении.

Ну и я не хочу ждать 5-6 лет, и говорить клиентам: "Ребята, я вам все сделаю, но через 5 лет"

Во, еще вспомнил такую штуку как jQuery UI, я считаю это тоже плюсом.

Link to comment
Share on other sites

И нафиг нужен будет этот ДжейКвери и прочие - через 5 - 6 лет?

А почему? Мне вроде кажется, что ДжейКвери наоборот набирает обороты и постоянно развивается, а разве нет?

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

Это точно, было бы здорово :angry:

Link to comment
Share on other sites

Набор готовых функций всёравно останеться + плагины + легкость в освоении.

В таком виде ради бога. Мне не нравится что ДжейКвери меняет сам подход к написанию JS.

А так конечно да удобно - написал 1 слово - анимация готова. Хотя анимацию можно и самому сделать. И она вообще в 90% зло.

но сегодняшний ДжКвери это по сути набор костылей к ИЕ. Тем и ценен.

А который УИ - это который Календарь, Палитра и прочее? Ну так это вроде как веб - формс покроют со временем.

>>А почему? Мне вроде кажется, что ДжейКвери наоборот набирает обороты и постоянно развивается, а разве нет?

Так то да - развивается. Но будущего в нынешнем все равно нет)

ну ИМХО конечно. Я слишком критичен)

Link to comment
Share on other sites

>>А почему? Мне вроде кажется, что ДжейКвери наоборот набирает обороты и постоянно развивается, а разве нет?

Так то да - развивается. Но будущего в нынешнем все равно нет)

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

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy