آیا جی کوئری مٌرده؟ یا در حال مردنِ؟ (jQuery)

سلام دوستان. خسته نباشید. امیدوارم حالتون خوب باشه.
یک سوالی که همیشه تو سایت ها دیده میشه و قبلا فکر میکردم جوّی هست که دنیای فرانت-اند گرفته و دیر یا زود تبش میخوابه.
ولی این موضوع جدی تر شده و کلا جی کوئری پشت صحنه هم نگم، کلا پشت فریمورک های مدرن جاوااسکریپت قرار گرفته.
درسته که هنوزم که هنوزه تو بیشتر سایت ها از جی کوئری استفاده میشه و شده. ولی چند تا سوال واسم پیش اومده اونم اینه که:

1- آیا پروژه های جدیدی هم حال حاضر باهاش شروع میشه؟
2- یاد گرفتن آن حال حاضر عقلانی است؟ در حالی که وانیلا جی اس یکمی بهتر شده از لحاظ (DRY). و بهتره تو جی اس عمیق بشیم؟
3- بلاخره خیلی از وبسایت ها با جی کوئری نوشته شدند و نگهداری و توسعه اونا هم لازمه نه؟

این بحث تو وبسایت های خارجیم پرسیده شده بود ولی گفتم یکم سئو بره بالا چون خیلیا میپرسن این سوالو :sweat_smile:
در آخر هم اضافه کنم که بوتسترپ ورژن 5 جی کوئری رو از دیپندنسی هاش حذف کرده.
یه بحث ریزی بریم با برو بچ :grin:

به نظر من ی زمانی نیاز بود ولی حالا با وجود این همه فریمورک قدرتمند دیگه کمتر سراغش میزن.

1 Likes

این که فریمورک ها باعث شدن که جی کوئری کم رنگ بشه که قطعا درسته اما یاد گرفتنش میتونه مفید باشه چون خیلی از پروژه های قدیمی ازش استفاده کردن و اینکه برای پروژه های جدید هم گاها جی کوئری گزینه ی خوبی هست، مثلا برای قالب های ساده ی وردپرسی

1 Likes

بله درسته. یه جا خوندم. طرف گفته بود یه لایبرری که یک زمانی انقدر جا تو وب (یا هرجا) باز کرده هیچوقت نابود نمیشه فقط کمرنگ تر میشه و شاید توسعش کند بشه.

1 Likes

خیلی تو دنیای front-end نیستم ولی چیزی که مشخصه اینه که SPAها رشد زیادی کردن و ساختن یه SPA با React خیلی راحتتر از jQuery هست.
یه جورایی تغییر نیاز و وجود ابزار بهتر برای اون نیاز، باعث کنار رفتن jQuery شده. شاید هیچوقت نمیره ولی به نظر من هیچوقت به اوج خودش برنمیگرده.

3 Likes

بله مرده :slightly_smiling_face:
از این لحاظ که در بیشتر پروژه های جدید سعی میشه که ازش استفاده نکنند.

3 Likes

یه سوال دارم. و اینو به این خاطر میپرسم که اصلا توی front-end تخصصی ندارم.
لایبرری یا فریمورک خوبی هست که jQuery توش استفاده شده باشه. مثلا یه جور wrapper برای jQuery که کار کردن باهاش رو راحتتر کنه و یه کم قابلیتهاش شبیه react باشه؟
منظورم اینه که jQuery توی یه لایبرری دیگه به زندگیش ادامه بده؟

2 Likes

یادگیری jquery واقعا اشتباه هست در این زمان کنونی . کاملا از رده خارج شده.

1 Likes

اگه گوگل virtual dom رو بتونه تو کراولرش هندل کنه. دیگه واقعا هیچکس از jquery استفاده نمیکنه.در حال حاضر برای اینکه بشه بیلد کرد صفحه رو تو فریمورک ها و سئو فرندلی باشه باید از ssr استفاده کنیم که پیچیدگی های خودشو داره.

1 Likes

داره میمیره
با اومدن اکمااسکریپت 6 هم واقعا نیازی بهش نیست دیگه
یاد نگیری بهتره

library های زیادی از jquery استفاده می‌کنن ولی من تا حالا به اون شکلی که شما منظورتونه ندیدم.
یه نمونش که همین چندروز پیش باهاش کار کردم:

یه library خیلی عالی که یه جدول ساده html ای رو تبدیل می‌کنه به جدول قابل search و sort و pagination ، البته که همه این موارد توی فرانت‌اند هست ولی بازم خیلی کار راه اندازه و استفاده ازش خیلی راحته.
این library نوشته که برای استفاده ازش باید jquery رو قبلش import (توی html میگن import؟ include؟ ) کرده باشیم.

1 Likes

آره. از این استفاده کرده بودم.
الآن توی یه پروژه‌ی re-frame دارم ازش استفاده میکنم که re-frame یه لایبرری clojurescript هست که یه جورایی wrapper برای react به حساب میاد. پس احتمالا نسخه‌ی datatable برای react هم وجود داشته باشه.

قبل از اینکه بخوایم این مسائل رو مطرح کنیم باید ببینیم html رو قراره «زبان برنامه‌نویسی»‌ به حساب بیاریم یا نه :stuck_out_tongue_winking_eye:

2 Likes

والا گوگل که می‌گه Programming Language هستش! ولی واقعا نیست.

خب Language که هست:

HTML - HyperText Markup Language

ولی این عکس یه دلیل دیگست برای استفاده از DuckDuckGo
جالبه که بالای متن ویکی‌پدیا هم نوشته ولی معلوم نیست از کجا آوردتش چون توی ویکیپدیا همچین چیزی نیست :neutral_face:

3 Likes

گوگل خیلی چیزا میگه😜

1 Likes

گوگل با توجه به سرچ کاربران تو یه موضوع قرار می‌ده عبارت رو.
این عبارت هم از طرف برنامه‌نویس‌ها و افرادی که دربارهٔ توسعه و برنامه‌نویسی تحقیق کردن زیاد جستجو شده پس گوگل فکر کرده که این هم یه زبان برنامه‌نویسیه که البته نصفش درسته! زبان هست!

اکمااسکریپت ۶ که خیلی وقته اومده!

یادگیری مقدمات و نکاتش زیاد بد نیست.
خودش رو هم استفاده نکنی بقیه جاها به درد میخوره

بستگی به پروژه داره. خیلی جاها ممکنه استفاده بشه. من خودم توی یکی دوتا پروژه جدید استفاده کردم ازش

شاید چون jQuery اصلاً برای SPA ساخته نشده! توی Single Page Application ها ضعیف عمل میکنه.

با این حرف موافق نیستم و به نظرم ممکنه چیزایی که خیلی خیلی موفق بودن هم خیلی سریع از بین برن. همش وابسته به تکنیک های جدیده. ولی نمیگم این موضوع برای jQuery هم صدق میکنه

این که کمتر سراغش میرن درسته. ولی نباید با فریم‌ورک‌ها مقایسه بشه. چون یه کتابخونه‌ـست و اگه جایی به عنوان فریم‌ورک استفاده یا شناخته می‌شه اشتباهه.

درسته. هرچقدر کمتر وابسته باشه سریع تر و بهتر میشه (البته سرعت میتونه کم هم بشه ولی نه در این نمونه.)

همونطور که گفتم به نظرم برای مسائل غیر از خودش هم خوبه یادگیریش. لازم نیست برای کار با خودش یادش بگیریم. همین که مقدماتش رو بدونیم و بدونیم چطور کار میکنه میتونه جاهای دیگه هم کمکمون بکنه.

جی‌کوئری فریم‌ورک نیست به نظرم. چون تعریفش با فریم‌ورک در تناقضه یکم.

همونطور که گفتم خیلی جاها هنوز ازش استفاده میشه و پروژه‌های زیادی که تازه شروع به کار کردن ازش استفاده میکنن.

باید سعی کنن استفاده ازش رو کم کنن.


به نظرم نباید مستقیم ازش استفاده بکنیم و حتی باید از پروژه های کامل و بزرگ حذفش کنیم (با کمک youmightnotneedjquery.com)

ولی یادگیریش خوبه. نه برای استفاده ازش؛ بلکه برای استفاده از تکنیک‌هاش. من خودم توی خیلی از پروژه‌هام، این خط رو میذارم اول کد و مثل جی‌کوئری ازش استفاده می‌کنم. خیلی بهم توی آسون و کوتاه کردن کد کمک می‌کنه:

const $ = document.querySelector.bind(document), $$ = document.querySelectorAll.bind(document);
4 Likes

چیزی که من در صنعت میبینم اینه که محبوبیت jQuery به شدت پایین اومده چون واقعا نیازی بهش نیست، ممکنه شما توی پروژه هاتون استفا‌ده کنید اما اینجا حرف بیشتر سر اینه که jQuery در چه جایگاهی قرار داده. قبلا وقتی توی سایت های کاریابی سرچ میکردیم هزاران پوزیشن براش بود اما الان توی بعضی از همون ها شاید ۲۰۰ تا هم نباشه. دونستنش خوبه اما فقط چون ممکنه مجبور بشیم روی پروژه قدیمی کار کنیم یا اینکه به دلایل مختلف توی پروژه جدید ازش استفاده شده باشه.
قطعا روزهای خوب گذشته برای jQ به سر رسیده

5 Likes

منظورم اینه که قبل از اکمااسکریپت ۶ نیاز بود بهش واقعا ولی الان نیست واقعا

2 Likes