জিকুয়েরির উপর খাঁটি জাভাস্ক্রিপ্ট ব্যবহারের সুবিধা


86

জাভাস্ক্রিপ্ট-কেবলমাত্র বনাম জিকুয়েরি ব্যবহারের সুবিধা কী?

জাভাস্ক্রিপ্ট এবং জিকুয়ের কোডিংয়ের সাথে আমার সীমিত অভিজ্ঞতা রয়েছে। আমি এইচটিএমএল পৃষ্ঠাগুলিতে প্রত্যেকটির বিট এবং স্নিপেট যুক্ত করেছি তবে আমি বেশিরভাগ ভাষায় অন্য ভাষায় সার্ভার-সাইড স্টাফ কোড করে রেখেছি। আমি লক্ষ্য করেছি যে আপনি দুটি পদ্ধতির যে কোনও একটি ব্যবহার করে তাত্ত্বিকভাবে একই জিনিসগুলি করতে পারবেন (এবং অবশ্যই আপনি একই প্রকল্পে তাদের মিশ্রিত করতে পারেন) সেখানে প্রথম থেকেই জিকুয়ারি ব্যবহার শুরু করার প্রবণতা বলে মনে হচ্ছে প্রকল্পের দাবিগুলি কোনও বিষয় নয়।

সুতরাং আমি কেবল ভাবছি, কেবল জিকুয়েরি-না ব্যবহারের পরিবর্তে কেবল সাদামাটা পুরানো জাভাস্ক্রিপ্ট ব্যবহার করার জন্য কোনও বিধিবদ্ধ সুবিধা রয়েছে?

আমি জানি এটি দেখতে একটি অ-প্রশ্নের মতো বলে কারণ এটি সম্পর্কে এটি বলা যেতে পারে যে "এর কোনও নির্দিষ্ট উত্তর নেই" বা "এটি চিরতরে বিতর্ক করা যেতে পারে", তবে আমি আসলে "আপনি এটি করতে পারেন এর মতো সময়নিষ্ঠ উত্তরগুলির জন্য প্রত্যাশা করছি একটি পদ্ধতির সাথে আপনি অন্যটির সাথে এটি করতে পারবেন না "।


Scrwtp এর মন্তব্য অনুসারে, আমি কেবল ডিওএম হ্যান্ডলিং অংশটি উল্লেখ করছি না। আমার প্রশ্নটি বরং: জ্যাকুয়েরি একটি লাইব্রেরি। জাভাস্ক্রিপ্টের জন্য। অন্যান্য ভাষার জন্য অন্যান্য লাইব্রেরির বিপরীতে এই লাইব্রেরিটি সম্পর্কে আমি কী আশ্চর্যজনক মনে করি তা হ'ল জকিউয়ের ক্ষেত্রে এটি একেবারে ব্যবহার করতে সক্ষম হতে নকশাকৃত মনে হয়েছে এবং জাভাস্ক্রিপ্টকে সরাসরি স্পর্শ করার প্রয়োজন নেই। এটি হাইবারনেট এবং এসকিউএল যেমন বলা যায় তার বিপরীতে, যেখানে গ্রন্থাগার যদিও (বা এই ক্ষেত্রে ফ্রেমওয়ার্কটি হয়, তবে আমি মনে করি সাদৃশ্যটি এখনও প্রযোজ্য) অনেকগুলি দিকগুলিতে হ্যান্ডেলটি গ্রহণ করে, আপনি এখনও এসকিউএল ব্যবহার করার সময় ব্যবহার করতে পারেন , কমপক্ষে কিছু সীমাবদ্ধ মামলার জন্য। তবে JQuery এবং জাভাস্ক্রিপ্ট ক্ষেত্রে, আপনি জাভাস্ক্রিপ্টের সাথে কেবলমাত্র JQuery ব্যবহার করে কিছু করতে পারেন (বা কমপক্ষে এটি আমার কাছে কেমন লাগে)।


স্টারগাজের 12১২ এর মতামত অনুসারে: হ্যাঁ, আমি আপনার সাথে একমত, এখানে প্রশ্নটি যেমন আপনি "আপনি কীভাবে জাভাস্ক্রিপ্টটি ব্যবহার করবেন" এর বিষয়টিকে রেখেছেন। এটিই আমি জিজ্ঞাসা করার জন্য প্রফুল্ল ছিলাম তবে আমি কিছু খারাপ সূত্র তৈরি করেছি form এখানে আরও একটি উপমা: স্প্রিং এক্সপ্রেশন ল্যাঙ্গুয়েজ। এটি একটি জাভা গ্রন্থাগার। আপনি এটি জাভা ব্যতীত ব্যবহার করতে পারবেন না, এটি জাভা ভিত্তিক, এবং জাভা ব্যবহার করার জন্য যা এখনও পাওয়া যায় তার মাধ্যমে এটি চালিয়ে যেতে পারেন। তবে অনুশীলনে আপনি যা করতে পারেন তা হল একটি জাভা প্রকল্পে এই লাইব্রেরিটি যুক্ত করুন, এবং তারপরে স্প্রিং ইএল এর এক্সপ্রেশন ভাষা ব্যবহার করে আপনার সমস্ত কোড লিখুন যা কার্যকরভাবে আপনার কোডটিকে জাভাটির মতো দেখতে দেয় না এবং এটি এমনকি দৃষ্টান্ত বদল করে দেয় (উদাহরণস্বরূপ আপনার আর নেই) এটি ব্যবহার করার সময় শক্তিশালী ধরণের প্রয়োগকরণ)। আমি যখন বুঝতে পারি যে জিকুয়েরি কেবল একটি জেএস লাইব্রেরি, তবে আমার কাছে মনে হয় যে বাস্তবে এটি স্প্রিং ইএলটির সাথে জাভা সহ একই প্রভাব ফেলেছে, আপনি কেবল একটি প্রকল্পের মাধ্যমে এটির এপিআই ব্যবহার করতে পারবেন এবং জাভাস্ক্রিপ্টের এপিআইগুলি এড়াতে পারবেন। এবং আমি ভাবছিলাম যে এটি করা ভাল কোনও জিনিস, সমস্যাগুলি কী কী হতে পারে ইত্যাদি etc.

(এবং হ্যাঁ, প্রত্যেকের উত্তর পড়ার পরে আমি তা বুঝতে পারি:

ক। আমার প্রশ্নটি একটি বিন্দু পর্যন্ত কিছুটা সংবেদনশীল নয়

B ইংরেজী বর্ণমালার দ্বিতীয় অক্ষর. এমনকি যদি প্রশ্নটি পুরোপুরি নির্ভুল হয় তবে এর উত্তরটি অনেকটা "না আপনি কেবলমাত্র সব সময় জিকুয়েরি ব্যবহার করতে পারবেন না)"


25
"শুধুমাত্র JQuery ব্যবহার করুন" বলা ঠিক নয় _ JQuery একটি জাভাস্ক্রিপ্ট লাইব্রেরি।
সুপারম

4
লুপের জন্য বা যখন নেই, কোনও ভেরিয়েবল নেই, কোনও কার্য নেই? সব জাভাস্ক্রিপ্ট।
সুপারম

2
'সাধারণ পুরাতন জাভাস্ক্রিপ্ট' দ্বারা আপনার সম্ভবত জাভাস্ক্রিপ্ট DOM এপিআই বোঝানো হবে। বিভ্রান্তি এড়াতে আপনি এটি পরীক্ষা করে প্রশ্নটি সম্পাদনা করতে চাইতে পারেন want
scrwtp

4
ক্রস ব্রাউজার সামঞ্জস্য কি যথেষ্ট কারণ নয়?
সাইমন হোয়াইটহেড

10
"এটি (জ্যাকুরি) এটিকে একচেটিয়াভাবে ব্যবহার করতে সক্ষম হতে নকশাকৃত মনে হয়েছে এবং জাভাস্ক্রিপ্ট সরাসরি স্পর্শ করার প্রয়োজন নেই"। এটি ঠিক সত্যই ভুল। jQuery হ'ল জাভাস্ক্রিপ্ট ফাংশনগুলির একটি সংগ্রহ (যদিও "$" এর মতো অদ্ভুত নাম থাকা সত্ত্বেও)। JQuery বোঝার একটি গুরুত্বপূর্ণ অংশ হ'ল এটি উপলব্ধি। এর কেবলমাত্র অতিরিক্ত ফাংশন যা ডিওএম হেরফের এবং লুপিং পরিচালনা করে।
গ্রাহাম

উত্তর:


113

প্রথম বন্ধ - কেবল jQuery ব্যবহার করা অসম্ভব, সমস্ত jQuery এটিতে আপনার পদ্ধতিতে একটি গোছা যুক্ত করে আপনার বৈশ্বিক সুযোগগুলিতে একটি $ অবজেক্ট যুক্ত করে। প্রোটোটাইপের মতো আরও ম্যানিপুলেটিভ লাইব্রেরি জাভাস্ক্রিপ্টের বিকল্প নয় , তারা সাধারণ সমস্যা সমাধানের জন্য একটি টুলবেল্ট।

আপনার টুলবেলে jQuery যুক্ত করার প্রধান সুবিধাগুলি হ'ল:

  • ব্রাউজারের সামঞ্জস্যতা - .attr () এর মতো কিছু করা দেশীয় বিকল্পগুলির চেয়ে অনেক সহজ এবং ব্রাউজারগুলির মধ্যে এটি ভেঙে যায় না।
  • সাধারণত জটিল অপারেশনগুলির সরলীকরণ - আপনি যদি কোনও এক্সএইচআর পদ্ধতির একটি ভাল লিখিত ক্রস ব্রাউজারের সামঞ্জস্যপূর্ণ সংস্করণটি দেখতে চান তবে $ .JAX- এর উত্সটি দেখুন - একা এই পদ্ধতির জন্য এটি জেকিউর ওভারহেডের প্রায় মূল্যবান।
  • ডোম নির্বাচন - বন্ডিং ইভেন্টগুলি এবং ডোম উপাদান নির্বাচন করার মতো সাধারণ জিনিস জটিল এবং প্রতি ব্রাউজারে পৃথক হতে পারে। প্রচুর জ্ঞান ছাড়াই এগুলি সহজেই দুর্বলভাবে লেখা যেতে পারে এবং আপনার পৃষ্ঠাটি ধীর করে দেয়।
  • ভবিষ্যতের বৈশিষ্ট্যগুলিতে অ্যাক্সেস করুন - .indexOf এবং .bind এর মতো জিনিসগুলি দেশীয় জাভাস্ক্রিপ্ট, তবে এখনও অনেকগুলি ব্রাউজার দ্বারা সমর্থিত নয়। তবে এই পদ্ধতির jQuery সংস্করণগুলি ব্যবহার করা আপনাকে সেগুলি ক্রস ব্রাউজারে সমর্থন করার অনুমতি দেবে।

জাভাস্ক্রিপ্ট এখন আর কেবল ক্লায়েন্টের পার্শ্বের ভাষা নয় এবং যেহেতু jQuery এত বেশি DOM নির্ভর, তাই এটি সার্ভারে স্থানান্তরিত করা এক ভয়ানক প্রার্থী। আপনি jQuery কেন ব্যবহার করছেন তা বোঝার জন্য আমি অত্যন্ত সময় দেওয়ার পরামর্শ দিচ্ছি (এই প্রশ্নটি জিজ্ঞাসা করা একটি দুর্দান্ত প্রথম পদক্ষেপ!) এবং যখন প্রয়োজন তখন মূল্যায়ন করুন। jQuery বিপজ্জনক হতে পারে, প্রধান কয়েকটি বিপদ হ'ল:

  • কোডের মান - jQuery একটি বিশাল সম্প্রদায় এবং একটি নিম্ন শিক্ষার বক্ররেখা রয়েছে। প্রচুর দুর্বল লিখিত ওপেন সোর্স প্লাগইনগুলির জন্য এটি একটি নিখুঁত ঝড়।
  • অদক্ষতা - jQuery অদক্ষভাবে লিখতে সহজ। উদাহরণস্বরূপ, লুপগুলির পরিবর্তে প্রতিটি jQuery এর ব্যবহার অপ্রয়োজনীয় এবং কিছু ক্ষেত্রে পারফরম্যান্সের প্রভাব ফেলতে পারে। জেএসপিফারফে এই স্টাফ সম্পর্কে প্রচুর ভাল তথ্য
  • ফোলা - jQuery একটি বিশাল গ্রন্থাগার। বেশিরভাগ সময়, আপনি এর বৈশিষ্ট্যগুলির একটি ছোট উপসেট ব্যবহার করবেন এবং পুরো লাইব্রেরিটি দখল করবেন। কিছু দুর্দান্ত বিকল্প রয়েছে যা আপনাকে বৈশিষ্ট্যগুলির সাবসেটগুলি দেবে, যেমন zepto.js, এবং আন্ডারস্কোর.জেগুলি - আপনার পরিস্থিতির উপর নির্ভর করে আপনি আপনার প্রয়োজনের জন্য সঠিক লাইব্রেরিটি বেছে নিয়ে কিছু বাইট সংরক্ষণ করতে পারেন।

শেষ পর্যন্ত, jQuery হ'ল একটি অবিশ্বাস্যভাবে দরকারী এবং সহায়ক লাইব্রেরি, যখন সঠিকভাবে ব্যবহৃত হয়। তবে এটি জাভাস্ক্রিপ্টের বিকল্প নয় । এটা ঠিক মত একটি লাইব্রেরি, zepto.js , Yui , ডোজো মাছের , MooTools এবং প্রোটোটাইপ যার মধ্যে একটি আপনার বর্তমান প্রকল্পের জন্য অনেক ভালো পছন্দ হতে পারে -।

জাভাস্ক্রিপ্ট একটি ভুল বোঝাবুঝি করা ভাষা এবং সম্প্রতি সম্প্রতি বেশিরভাগ লোকেরা স্ক্রিপ্টিং ভাষার চেয়ে বেশি কিছু হিসাবে বিবেচিত হচ্ছে। আমি এটিতে আরও পড়ার পরামর্শ দিচ্ছি, শুরু করার জন্য এখানে কয়েকটি ভাল জায়গা রয়েছে:

07/2014 সম্পাদনা করুন - আমি লক্ষ্য করেছি যে এই পোস্টটি এখনও মনোযোগ পাচ্ছে, তাই আমি বেশ কিছু লিঙ্ক যুক্ত করেছি। এগুলি কোনও নির্দিষ্ট ক্রমে নয়, তবে সহায়ক হওয়া উচিত।

  • বেন আলমানের ব্লগ - এখানে প্রচুর ভাল ভাল অনুশীলন। আমি তাদের সবার সাথে একমত নই, তবে আমি তার ব্লগ থেকে সমস্ত সময় নতুন জিনিস শিখি।
  • কোড একাডেমি - বেসিক জাভাস্ক্রিপ্ট এবং jQuery প্রশিক্ষণ। কখনও কখনও বেসিক ফিরে যেতে সাহায্য করে।
  • জাভাস্ক্রিপ্ট গার্ডেন - জাভাস্ক্রিপ্টের আরও কৌশলযুক্ত বা ভুল বোঝাবুঝি সম্পর্কিত একটি পোস্ট। সমস্ত কিছু বোঝায় না হওয়া অবধি দয়া করে এটি সময়ে সময়ে পড়ুন।
  • বোকুপ - এগুলি প্রশিক্ষণ ক্লাস। আপনি যদি একজনের কাছাকাছি থাকেন তবে এটিতে যান। সেরা জেএস স্পিকার এবং শিক্ষকদের মধ্যে অনেকে এগুলি পড়ান।
  • পল আইরিশের ব্লগ - কঠোরভাবে জেএস নয়, তবে প্রচুর সেরা অনুশীলনগুলি এখানে লিখিত আছে। তাঁকে এবং বেনের টুইটার ফিডগুলি অনুসরণ করা উভয়ই দুর্দান্ত।
  • জাভাস্ক্রিপ্ট: গুড পার্টস - প্রায়শই 'দ্য জাভাস্ক্রিপ্ট বাইবেল' নামে পরিচিত, ডগলাস ক্রকফোর্ডের এই বইটি জাভাস্ক্রিপ্ট বোঝা শুরু করার জন্য একটি আশ্চর্যজনক জায়গা।
  • আইজাক শ্লুয়েটারের ব্লগ - আইজাক এনপিএমের স্রষ্টা এবং নোড কোরটিতে কাজ করেন। তিনি কোড কনভেনশনগুলির চেয়ে জাভাস্ক্রিপ্ট সম্প্রদায় সম্পর্কে অনেক কিছু লিখেছেন, তবে আপনি যদি সত্যিই জেএস-এ যোগ দিচ্ছেন তবে এটি একটি দুর্দান্ত পঠন।
  • ডগলাস ক্রকফোর্ডের জাভাস্ক্রিপ্ট - ব্রেন্ডন আইচ যদি জাভাস্ক্রিপ্টের জনক হন তবে ডগলাস জাভাস্ক্রিপ্টের স্পষ্টবাদী মামা। তিনি জেএসওএন স্পেক, জাভাস্ক্রিপ্ট বাইবেল এবং জাভাস্ক্রিপ্টের বিভ্রান্তি এবং আবহাওয়া উত্থানের বিষয়ে প্রচুর আশ্চর্যজনক পোস্টের লেখক।
  • ব্রেন্ডন আইচের ব্লগ - ব্রেন্ডন জাভাস্ক্রিপ্টের স্রষ্টা - তিনি তার ব্লগে সব ধরণের মূর্খ স্টাফ সম্পর্কে লিখেছেন এবং একজন ব্যক্তি হিসাবে তাঁর দোষ থাকলেও তাঁর জাভাস্ক্রিপ্টের পোস্টগুলি মূল্যবান।
  • জেমস হলিডে (@ সাবস্ট্যাক) ব্লগ - সাবস্ট্যাকটি যুক্তিযুক্তভাবে সম্প্রদায়ের সবচেয়ে গুরুত্বপূর্ণ নোড.জেএস বিকাশকারী - প্রায় 400 (এবং প্রতিদিন বাড়ছে) এনপিএম মডিউল এবং ক্ষুদ্র, ইউনিক্স-মতো মডিউলগুলির একটি গাইড দর্শনের সাথে, তিনি যা লিখেছেন তা মূল্যবান with পড়া।
  • ম্যাক্স ওগডেনের ব্লগ ম্যাক্স ওগডেন হ'ল আরেকটি নোড.জেএস লেখক, এবং আপনাকে কিছু শেখায় এমন ব্লগ পোস্ট লেখার ক্ষেত্রে দুর্দান্ত। তিনি বিড়ালদের জাভাস্ক্রিপ্ট রচয়িতা (অন্যদের সাথে আমিও বিশ্বাস করি)'s
  • বিড়ালদের জন্য জাভাস্ক্রিপ্ট - এটি একটি সংক্ষিপ্ত টিউটোরিয়াল যা আপনাকে জাভাস্ক্রিপ্টের মূল বিষয়গুলি একটি বিড়ালের দৃষ্টিকোণ থেকে নিয়ে যায়। আপনি যদি শিক্ষানবিশ হন তবে এটির মাধ্যমে পড়ুন। এটি মজাদার, এবং এক ঘন্টার মধ্যে শেখায় যে অনেকগুলি বই যোগাযোগ করতে কয়েক সপ্তাহ সময় নেয়।
  • নিকোলাস জাকাসের ব্লগ নিকোলাস কয়েকটি চমত্কার জাভাস্ক্রিপ্ট বইয়ের লেখক: জাভাস্ক্রিপ্টে অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং , রক্ষণাবেক্ষণযোগ্য জাভাস্ক্রিপ্ট , ওয়েব বিকাশকারীদের জন্য পেশাদার জাভাস্ক্রিপ্ট এবং উচ্চ পারফরম্যান্স জাভাস্ক্রিপ্ট । তিনি মূলত ক্লায়েন্টের দিকে মনোনিবেশ করেন তবে তার মধ্যে প্রচুর সেরা অনুশীলন এবং পারফরম্যান্স টিপস রয়েছে।
  • গিলারমো রাউচের ব্লগ - গিলারমো হ'ল আরও একটি নোড.জেএস ডি, যা বেশিরভাগ সকেট.ইও এবং মঙ্গুজের জন্য বিখ্যাত। তার ব্লগ (এবং তার নতুন বই, স্ম্যাশিং নোড.জেএস উভয়ই দুর্দান্ত সংস্থান।

আমি নিশ্চিত যে আরও অনেক দুর্দান্ত সংস্থান আছে যা আমি ভাবছি না বা সে সম্পর্কে জানি না, অন্যান্য উত্তরদাতাদের সেই তালিকাতে নির্দ্বিধায় যোগ করা উচিত।


3
জেএস সম্পর্কে মন্তব্য করার জন্য +1 কেবলমাত্র ক্লায়েন্ট-সাইডের ভাষা হয়ে উঠছে না এবং কীভাবে জ্যাকুয়ারি এই সমস্ত ক্ষেত্রে ফিট করে।
শিবান ড্রাগন

1
নোট করুন যে সমস্ত ফাংশনগুলি বস্তুগত তবে এটি জাভাস্ক্রিপ্টের সমস্ত কিছুর কাছে অভিশাপ। class "ক্লাস-লেভেল" এর উপর পিনযুক্ত বৈশিষ্ট্যগুলির সাথে একটি ফাংশন হিসাবে আরও ভালভাবে বর্ণনা করা হয়েছে যেমন ( $.ajax)) যে ডোম উপাদানগুলির সাধারণত মোড়কগুলি পিতাকে আরও সংক্ষিপ্ত করে, পদ্ধতিযুক্ত করে আরও কম সংক্ষেপে তৈরি করার উদ্দেশ্যে ডোম উপাদানগুলির সেটগুলি ছড়িয়ে দেয় methods ডোম অবজেক্টের সেটগুলির উপর স্বয়ংক্রিয় লুপ যখনই তা বোঝায় এবং ব্রাউজারগুলিতে একটি সাধারণ, ভবিষ্যদ্বাণীযোগ্য এপিআই ভাগ করে নিন (যা কোনও ই আই <= 8 এর চেয়ে কম)।
এরিক পুনরায়

1
এটি দুর্দান্ত পোস্ট, তবে আমি একটি বিষয় নিয়ে ইস্যুটি নিতে চাই - "বিশাল লাইব্রেরি ... জেপ্টো / ইন্ডারস্কোর ব্যবহার করুন" - প্রথমত, অ্যান্ডস্কোরটি সম্পূর্ণ ভিন্ন ধরণের লাইব্রেরি - মূলত অ্যারে / অবজেক্টের সাথে ডিল করার জন্য - আরও লোড্যাশ ব্যবহার করুন পরিবর্তে, এটি দ্রুত। দ্বিতীয়ত, জেপ্টো ছোট কারণ এটি jQuery এর জিনিসগুলিকে আবরণ করে না। এটি jQuery স্থির করে থাকতে পারে এমন বাগগুলিতে নিয়ে যেতে পারে। শেষ অবধি, jQuery আর বিশাল / একরঙা নয়, এটি প্রায় একবার 30 গিগাবাইট জিপি করা হয় এবং আপনি 1 টি কম চিত্র ব্যবহার করে এটি সংরক্ষণ করতে পারেন। আমার কাছে, অর্জিত দক্ষতা সেই বাইটগুলির পক্ষে মূল্যবান।
লোকালপিসিগুই

1
@ লোকালপিসিগুই অবশ্যই কিছু ভাল পয়েন্ট পাবেন। এই পোস্টটি 2 বছর আগে ছিল (ঠিক!) এবং এরপরে অবশ্যই জেএস বাস্তুতন্ত্রে জিনিসগুলি পরিবর্তিত হয়েছে। উদাহরণস্বরূপ, আমি ব্যক্তিগতভাবে ব্রাউসরিফি এবং ছোট মডিউলগুলি কোনও বিশ্বব্যাপী নেমস্পিড লাইব্রেরির পরিবর্তে ব্যবহার করি না। যাইহোক, আমি মনে করি যে প্রাথমিক ভিত্তিটি এখনও সত্য, যা অনেক (সবচেয়ে?) ক্ষেত্রে, একটি রান্নাঘরের সিঙ্ক গ্রন্থাগার খুব কমই প্রয়োজন হয়। আমি এটি বেশিরভাগ ডেভসদের কাছে রেখেছিলাম তা নিশ্চিত করার জন্য যে তারা গ্রন্থাগারগুলির আকারের ব্যয়টি যথাযথভাবে প্রমাণ করার আগে এটি ব্যবহার করার সিদ্ধান্ত নেওয়ার আগে আপনার প্রয়োজনীয়তা সম্পর্কে সুনির্দিষ্ট হওয়ার চেয়ে আরও সহজ করে তোলে।
জেসি

1
সমস্ত কিছু প্রতিক্রিয়া, আমি ঠিক!?!?! / বিদ্রূপ - কীভাবে @ অ্যান্ডি কাজের উপযুক্ত সরঞ্জাম বাছাই করা যায় এবং এটি সর্বদা প্রতিক্রিয়া হয় না। আমি মনে করি প্রতিক্রিয়া কিছু ভাল কাজ করছে তবে এটি জাভাস্ক্রিপ্ট বিশ্বের জন্য একটি নিরাময় হিসাবে ভান করতে দেয় না।
লোকালপিসিগুয়ে

17

এর সুবিধাগুলি রয়েছে, তবে এগুলি বিতর্কযোগ্য যে তারা সত্যিই ত্রুটিগুলি ছাড়িয়ে গেছে।

প্রধানটি হ'ল আপনি ব্যান্ডউইথটি সংরক্ষণ করেন এবং দ্রুত প্রতিক্রিয়া অর্জন করেন। jQuery আপনার প্রতিক্রিয়াতে আরও একটি 30 ডলার যুক্ত করে। কিছু নেটওয়ার্কগুলিতে (এবং কিছু দেশে) এর অর্থ আরও কয়েক মিলিসেকেন্ড হতে পারে। অন্যদিকে, আপনি নিজের ওয়েব সার্ভারটি ব্যবহার করে সহজেই এর জন্য ক্যাচিং সেট আপ করতে পারেন (বা সিওন যেমন বলেছিলেন, এটি গুগলের সাইট থেকে এটি ব্যবহার করুন যাতে এটি আপনার নিজের উপর প্রভাব ফেলবে না, এবং এখনও ক্যাশে হবে)।

দ্বিতীয় জিনিসটি হ'ল আপনার কেবল খুব সাধারণ কার্যকারিতা প্রয়োজন হতে পারে এবং কেবল jQuery ডাউনলোড এবং সেট আপ করতে আপনার যা প্রয়োজন তা কেবল প্রয়োগ করার চেয়ে আরও বেশি সময় লাগতে পারে।

এবং সর্বশেষে, আপনি নিজের কাঠামোটি রোল করতে চাইতে পারেন, যা বেশিরভাগই একটি খারাপ ধারণা, তবে কিছু লোকের কারণ রয়েছে।

তবে আপনি যদি শিখার বক্ররেখাকে ভয় দেখিয়ে কেবল jQuery এড়িয়ে যান তবে আপনার পুনর্বিবেচনা করা উচিত। বিশেষত এটি বরং মৃদু হিসাবে।


সম্মত, বিশেষত ব্যান্ডউইথ অংশ সম্পর্কে। JQuery 1.8.2 এর ন্যূনতম / অবহেলা সংস্করণে 92Kb রয়েছে। এছাড়াও সম্মত হন যে এগুলি তবে জিকুয়েরি ব্যবহার না করার জন্য খুব শক্ত কারণ নয়। ধন্যবাদ!
শিবন ড্রাগন

1
@ শিভানড্রাগন: আপনি জিজিপ ভুলে গেছেন। এটি এটিকে আরও ছোট করে তোলে ।
চোরমাস্টার

@ থিফমাস্টার: এটি সত্য, এটি দেখানোর জন্য ধন্যবাদ।
শিবান ড্রাগন

10
আপনি যদি সিডিএন (যেমন গুগল এক) থেকে jQuery ব্যবহার করেন তবে সম্ভাবনা হ'ল ব্যবহারকারীরা এটি অন্য সাইটগুলি পরিদর্শন করার আগেই লোড করেছেন। সুতরাং আপনার প্রতিক্রিয়ার সময়কালের (প্রভাব সর্বাধিক নয়) কম হবে।
Xion

1
@ ফিল আপনি এমনকি কেন একেবারেই ব্যবহার করেন?!?! jQuery কখনও হয় নি এবং কখনও প্রয়োজন হবে না। এটি খাঁটি শয়তানী মন্দ (বাকী রাক্ষসী গ্যাংয়ের সাথে: রিঅ্যাক্টজেএস, অ্যান্ডস্কোর, লোড্যাশ, মডার্নিজার, কমনজেএস, অ্যাঙ্গুলার, গুগল অ্যানালিটিকস, বিশেষত এএমডি ইত্যাদি)। ব্যক্তিগতভাবে, আমি একবারও একটি সম্পূর্ণ লাইব্রেরি অন্তর্ভুক্ত করি নি (যদিও আমি গ্রন্থাগারগুলি থেকে আমার প্রয়োজনীয় ফাংশনগুলি খুব কমই বের করতে এবং অনুকূলিত করেছি), আমি কখনই একটি সম্পূর্ণ গ্রন্থাগারকে অন্তর্ভুক্ত করব না এবং প্রায় প্রতিটি ওয়েবপৃষ্ঠা আমি 11 ফ্রেমেরও কম ফ্রেমে ডায়াল আপ ইন্টারনেটে লোড তৈরি করি (এক সেকেন্ডের 1/59 তম)
জ্যাক গিফিন 20

14

আমি যতদূর জানি ভ্যানিলা জাভাস্ক্রিপ্ট বনাম লাইব্রেরি যেমন জিকুয়েরি , মূটুলস ইত্যাদি ব্যবহারের কেবলমাত্র দুটি সুবিধা রয়েছে

  • গ্রন্থাগারগুলির একটি ব্যয় রয়েছে যা ব্যান্ডউইথ খায়। লোকেরা ইতিমধ্যে অন্যান্য জবাবগুলিতে ইঙ্গিত করেছে যেহেতু আপনি এটিকে গিজিপিং এবং ক্যাশিংয়ের মাধ্যমে সীমাবদ্ধ করতে পারেন। আপনি শুধুমাত্র jQuery এর একটি উপসেট চান তাহলে আপনাকে দিয়ে কি করতে পারেন SizzleJS এবং MooTools সঙ্গে আপনি নির্বাচন করার বিকল্প রয়েছে বৈশিষ্ট্য সেট যে আপনি চান কি হিসাবে একই ভাবে Modernizr করে
  • গ্রন্থাগারগুলি বড় এবং শিখতে কিছুটা সময় নেয়। তারপরে আবার, এটি বিকাশকারীদের জন্য এককালীন বিনিয়োগ ... এবং জাভাস্ক্রিপ্ট লাইব্রেরিগুলি জানতে আপনার পুনঃসূচনাটি দেখে ভাল লাগছে।
  • (বোনাস) লাইব্রেরিগুলি কোনও রূপালী বুলেট নয় তাই যদি আপনি চাকাটি পুনর্বহাল করতে চান তবে অবশ্যই এটি যাওয়ার উপায়।

আপনি জাভাস্ক্রিপ্ট লাইব্রেরি কেন ব্যবহার করতে চান তা উল্লেখ করার মতো, যার জন্য প্রচুর পরিমাণ রয়েছে:

  • আপনার বিকাশ সমর্থন করার জন্য আপনার নিজের কাঠামো লেখার দরকার নেই। আপনি যদি কৌতূহলী হন তবে কীভাবে জিনিসগুলি কাজ করে আপনি কোডটি ওপেন সোর্স হওয়ার কারণে এটি পরীক্ষা করতে পারেন।
  • গ্রন্থাগারগুলি ব্রাউজারের সামঞ্জস্যতা সমাধান করে। ডোম এবং জাভাস্ক্রিপ্ট উভয়েরই ব্রাউজারগুলির মধ্যে কিছু পার্থক্য রয়েছে। আমার উপর বিশ্বাস রাখুন, যদি আপনাকে নিজের সমাধানগুলি হ্যাক করতে হয় তবে এটি একটি বিশাল সময়ের ডুবে আছে।
  • জাভাস্ক্রিপ্ট লাইব্রেরিগুলি ব্যবহার করার জন্য এটি প্রকৃত ইন্টারনেট স্ট্যান্ডার্ড, তাদের বেশিরভাগ এখনই ডকুমেন্টেড এবং বেশিরভাগ ওয়েব বিকাশকারী (যারা জাভাস্ক্রিপ্ট জানেন) তাদের কীভাবে ব্যবহার করতে হয় তা জানেন।
  • লাইব্রেরি ব্যবহার করার সময় আপনি সত্যিই জাভাস্ক্রিপ্ট ছেড়ে দিবেন না। আপনার এখনও জাভাস্ক্রিপ্ট এর ধরণ, অবজেক্টস, ক্লোজারগুলি কীভাবে কাজ করে ইত্যাদি জেনে রাখা দরকার with
  • বেশিরভাগ গ্রন্থাগারগুলি মডুলারি করা হয় এবং এটি প্লাগইন লিখতে বা প্রয়োজনীয়তা এবং এএমডি প্যাটার্ন ব্যবহার করতে খুব বেশি সময় নেয় না ।
  • সিওএস ডিওএম থেকে উপাদান নির্বাচন করা একটি বিশাল সহায়তা।
  • (বোনাস) আপনি এগুলি কফিস্ক্রিপ্টের সাথেও ব্যবহার করতে পারেন ।

আমি একটি ওয়েব শপেই কাজ করতাম যা ভ্যানিলা জাভাস্ক্রিপ্ট ব্যবহারে অনড় ছিল কারণ jQuery বড় এবং ভীতিজনক ছিল। বেশিরভাগ একাকী "জাভাস্ক্রিপ্ট বিকাশকারী" দ্বারা প্রভাবিত এই সিদ্ধান্তটি ছিল অনেক ব্রাউজার বাগ এবং ধীর বিকাশের উত্স এবং তার কোডবেজে toোকার চেষ্টা ছিল একটি চুল তোলার অভিজ্ঞতা। আপনার নিজস্ব কাঠামোটি লেখা একটি ভাল ধারণা বলে মনে হতে পারে তবে আপনি যদি নতুন বিকাশকারীদের ভাড়া নিতে চান তবে তারা দ্রুত আশা করতে এবং সহায়তা করতে পারে না। তারপরে বাস ফ্যাক্টরটি বিবেচনা করার বিষয়টিও রয়েছে ।

আমি যেমন বলেছিলাম যে আমি সেখানে কাজ করতাম ... অন্যত্র সবুজ রঙের চারণভূমি ছিল। : ^)


10

আমি উভয় বেশ কিছুটা মিশ্রিত করতে ঘটতে। এর বৃহত্তম কারণ হ'ল কিছু অ্যাপ্লিকেশনের জন্য (ক্রোম এক্সটেনশানগুলি ভাবেন) আপনার ক্রস ব্রাউজার সমর্থন লাগবে না। যার অর্থ আমি সিএসএস 3 এর মতো নতুন অগ্রগতির সুবিধা নিতে পারি যা ট্রানজিশনের মতো জিনিসগুলি jquery ব্যবহারের মাধ্যমে আপনার কোডকে এক টন সহজ করতে পারে।

এছাড়াও আমি প্রায়শই কিছু কাস্টম করছি। অন্যের মতো সমস্ত উপায়ে বলেছিল যে চাকাটি পুনরায় উদ্ভাবন করা উচিত নয়। তবে যখন আপনি কিছু কৌতুকপূর্ণ কার্যকারিতা করতে বলেছিলেন তখন আমি প্রায়শই এটি লিখতে অনেক সহজ মনে করি তার পরে চেষ্টা করি এবং এমন কিছু জিকোয়ারি প্লাগইন হ্যাক করা যায় যা একটি নিখুঁত মিল নয়।

আমি এমন বিকাশকারীদের সাথেও কাজ করেছি যা jquery ব্যতীত আর কিছুই করে না। এবং আমি বলতে হবে যে তারা প্রায়শই কার্যকারিতা নিয়ে আপস করেছিলেন তবে না যদি তারা কোনও জেকারি প্লাগইন খুঁজে না পান যা তারা চায় তাই করে।

ওয়েব বিকাশের কোনও সময়ে আপনাকে লাইব্রেরিতে প্রাক-প্যাকেজযুক্ত না এমন কিছু করতে বলা হবে। সুতরাং সেই মুহুর্তে আপনি নিশ্চিত হয়ে নিন যে আপনি বেস ভাষাটি কীভাবে কার্যকরী তা বুঝতে পেরেছেন।

তাই টিএলডিসি : উভয়টি ব্যবহার করুন, কেবল ভ্যানিলা ব্যবহার করে আপনার অসুবিধে হয় এবং আপনি যদি ভ্যানিলা ভিতরে এবং বাইরে জানেন না এবং সর্বদা jquery ব্যবহার করার জন্য জেদ করেন তবে আপনি একটি অসুবিধায় রয়েছেন।


3
খাঁটি ভ্যানিলা জেএস যাওয়ার উপায়!
মার্কো

রায়ান জানে না যে jQuery গোপনে document.querySelectorAllপর্দার আড়ালে গালি দেয়।
জ্যাক গিফিন

6

আমি কেবল যে জিনিসটি আপনি JQuery ব্যতীত না করতে পারি তা ভাবতে পারি জিকুয়েরি প্লাগইনগুলি ব্যবহার করা; তারপরেও আপনি নিজের জেএস লাইব্রেরি লিখতে পারেন যা প্লাগইনটির যা প্রয়োজন তা প্রদান করবে।

এটি সম্পর্কে এইভাবে ভাবুন: জাকিউয়ারি জাভাস্ক্রিপ্টে লিখিত একটি মুক্ত উত্স জাভাস্ক্রিপ্ট লাইব্রেরি; আপনি উত্সটি দেখতে পারেন এবং এর মাধ্যমে এটি যেভাবে কিছু করে তা শিখতে পারেন।

আপনি সরল পুরানো জাভাস্ক্রিপ্ট ব্যবহার না করে JQuery ব্যবহার করতে পারবেন না। আপনি সম্ভবত ব্যবহার করবেন না document.getElementById, তবে আপনি এখনও স্ট্যান্ডার্ড জাভাস্ক্রিপ্ট পদ্ধতিতে ফাংশন এবং ভেরিয়েবলগুলি সংজ্ঞায়িত করবেন; আপনি এমনকি একটি মান forলুপ লিখতে পারেন ।

JQuery ব্যবহার করার প্রধান সুবিধাটি হ'ল যে কোনও ভাষাতে অন্য কোনও তৃতীয় পক্ষের লাইব্রেরির মতোই: আপনার অ্যাপ্লিকেশনের সাথে যুক্ত যুক্তি প্রয়োগ করতে আপনাকে এত বেশি কোড লিখতে হবে না।

আকার আপনাকে ভয় দেখাতে দেবে না। যা CDN সংস্করণ একটি ~ 33k ডাউনলোড করে যার পরে প্রথম পৃষ্ঠার হিট ব্যবহারকারীর ব্রাউজার দ্বারা ক্যাশে করা হবে।


6

যদি আপনি কর্মক্ষমতা সম্পর্কে উদ্বিগ্ন হন, আপনার যখনই সম্ভব ভ্যানিলা জেএস ব্যবহার করার চেষ্টা করা উচিত । ফ্রেমওয়ার্কগুলি কেবল ব্যান্ডউইথ ওভারহেডই যুক্ত করে না এবং ওভারহেড প্রক্রিয়াজাত করে। এবং jQuery এছাড়াও বেশ পুরানো ব্রাউজারগুলির জন্য ব্রাউজারের সামঞ্জস্যের সাথে আসে।

আপনি যদি মোবাইল অ্যাপ্লিকেশন বা গেমগুলিতে (বা উভয় সম্মিলিত) কাজ করছেন তবে আপনার প্রথমে পারফরম্যান্স এবং রিসোর্স দক্ষতার প্রয়োজন।

jQuery এবং প্লাগইনগুলি আপনার বিকাশের গতি বাড়িয়ে তুলতে পারে তবে বিশেষত যদি আপনি তৃতীয় পক্ষের jquery প্লাগইনগুলিতে নির্ভর করেন তবে আপনার ভিতরে থাকা কী তা আপনার জানা উচিত। এর মধ্যে অনেকগুলি কোডের মান এবং দক্ষতার খারাপ উদাহরণ।

jQuery স্থানীয় জাভাস্ক্রিপ্টের চেয়ে 2 থেকে 10গুণ ধীর হতে পারে। এবং এটি সহজেই বিকাশকারীদের তাদের ইন্টারফেসটি সঠিকভাবে ডিজাইন না করতে এবং jQuery নির্বাচকদের উপর বেশি নির্ভর করতে পারে যা নেটিভ তুলনায় অনেক ধীর।


+1, আমি পারফরম্যান্সের কারণে গেমস তৈরি করা ভ্যানিলা জেএসের পক্ষে জিকুয়েরি খাঁজ করার একটি ভাল কারণ। এটি যখন বেশিরভাগ ভাষার সাথে একটি গেম করার কথা আসে তখন এটি বেশ সত্য for উদাহরণস্বরূপ গুগল ছেলেরা তাদের অ্যান্ড্রয়েড ডক্সে গেমস তৈরি করার সময় (জাভাতে, অ্যান্ড্রয়েডের জন্য) কেবল গ্রন্থাগারগুলি খনন করার জন্যই নয়, গতির পক্ষে কিছু ভাল কোডিং অভ্যাসগুলি খনন করার পরামর্শ দেয়।
শিবান ড্রাগন

... আপনি যদি দক্ষ ডওম ম্যানিপুলেশন সম্পর্কে যতটা জানেন তবে ভাবী যারা jQuery লেখেন, হ্যাঁ।
এরিক রেপেন

@ এরিকাপেন দয়া করে প্রকৃত উত্স কোডটি "" যারা jQuery লেখেন "থেকে সত্যই তদন্ত করুন। আমি প্রথম 23 লাইনে যে ভয়াবহতা দেখেছি তা থেকে প্রায় এক মাস আমি অন্ধ ছিলাম।
জ্যাক গিফিন

অনেক 2013 সাল থেকে JQ পরিবর্তিত হয়েছে
এরিক Reppen
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.