ব্রাউজারগুলিতে jQuery ইনস্টল করা হয় না কেন?


19

আমি আমার বেশ কয়েকটি ওয়েবসাইটে jQuery ব্যবহার করছি এবং যদিও আমি এটি সিডিএন ব্যবহার করার জন্য ব্যবহার করি তবে দর্শকদের জন্য প্রতিটি সময় jQuery ডাউনলোড করা ঠিক বোঝা যায় না। jQuery অবশ্যই বিশ্বের সর্বাধিক ব্যবহৃত জাভাস্ক্রিপ্ট ফ্রেমওয়ার্ক হতে পারে - যদি ব্রাউজারগুলি কেবল এটি ডিফল্টরূপে ইনস্টল করে থাকে তবে তা আরও কী বোঝায় না?

এইভাবে দিনে কয়েক মিলিয়ন বার jQuery এর ডাউনলোড প্রতিরোধ করা যেতে পারে। হয় মানুষের নিজস্ব ওয়েবসাইট থেকে বা সিডিএন থেকে।

যে সমস্ত সত্যই প্রয়োজন হবে তা হল বিবৃতি যেমন:

 <!--[if jQuery gt 11]>

এমন কিছু কি উপস্থিত রয়েছে যা ব্যবহারকারীদের সিডিএন ভ্রমণ করতে বাধা দিতে সহায়তা করবে যদি তাদের কাছে ইতিমধ্যে অন্য সাইট থেকে ক্যাশে jQuery থাকে?


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

27
কেন jQuery কিন্তু কৌণিক নয়, MooTools, অ্যান্ডস্কোর, ...? এবং প্রতিটি সংস্করণ? ব্রাউজারগুলিতে কি কখনও তৈরি হওয়া প্রতিটি জাভাস্ক্রিপ্ট লাইব্রেরির অনুলিপি থাকা উচিত?
ব্যবহারকারী 253751

15
"দুঃখিত, আপনি নিজের ব্রাউজারের 0.1 টি উচ্চতর সংস্করণে আপগ্রেড না করা পর্যন্ত আপনি আমার ওয়েবসাইটটি ব্যবহার করতে পারবেন না"
VLAZ


4
ক্যাশিং এর জন্য তৈরি করা হয়। অন্যথায়, সংস্করণ হ্যান্ডলিং মূলত অসম্ভব
njzk2

উত্তর:


55

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

jQuery হ'ল একটি জনপ্রিয় গ্রন্থাগার, যেমনটি আপনি বলেছেন, তবে এটি ব্রাউজারের সাথে বান্ডিল করা কয়েকটি কারণে হওয়ার সম্ভাবনা নেই:

  1. jQuery তুলনামূলকভাবে ছোট (লাইব্রেরির তুলনায় যা কখনও কখনও ফ্ল্যাশের মতো ব্রাউজারগুলিতে বান্ডিল হয়)। JQuery ডাউনলোডের কারণে গড় সাইটে সবচেয়ে বড় পারফরম্যান্সের বাধা unlikely
  2. জাভাস্ক্রিপ্ট / ইসিএমএসক্রিপ্টের উন্নতির অর্থ বিকাশকারীদের ক্রমবর্ধমান jQuery এর উপর নির্ভর করার প্রয়োজন নেই। ( Youmightnotneedjquery.com দেখুন ))
  3. আরও অনেক জনপ্রিয় জাভাস্ক্রিপ্ট লাইব্রেরি রয়েছে। ব্রাউজারগুলি জাভাস্ক্রিপ্ট কোডের জন্য সংগ্রহস্থল হিসাবে ডিজাইন করা হয়নি। স্ক্রিপ্টের জনপ্রিয়তার সন্ধান করা, কম জনপ্রিয় লাইব্রেরি বাদ দেওয়া এবং সবকিছুকে আধুনিক করে রাখা ব্যক্তিগত সাইটের ওয়েব বিকাশকারীদের পক্ষে সেরা বাম হতে পারে।

আমি এটি বুঝতে পারি তবে আমি এখন সিডিএন হিসাবে কোড.jquery.com ব্যবহার করছি। যাইহোক, অন্য কোনও ওয়েবসাইট যখন গুগলাপিস বা সিডিজেএন ব্যবহার করে ব্রাউজারটি আবার অন্য সিডিএন থেকে jQuery ডাউনলোড করবে। এটি কেবল অর্থবোধ করে না এবং পুরো জায়গা জুড়ে প্রচুর সময় / ব্যান্ডউইথ খরচ হয়। যদি আপনি এটি যুক্ত করেন যে বেশিরভাগ ক্ষেত্রে লোকেরা jQuery1.7+ এর মতো কিছু পছন্দ করে তবে এটি আরও খারাপ হয়। আমি ব্রাউজারগুলির সংগ্রহস্থল না হওয়া সম্পর্কে আপনার বক্তব্যটি বুঝতে পারি, তবে আমরা কী একধরণের 'একাধিক উত্স থেকে ক্যাশে' ধরনের নিয়ম নিয়ে আসতে সক্ষম হব না?
ব্যবহারকারী 1914292

24
@ user1914292 এটি কেবল তখনই কার্যকর হবে যদি সমস্ত ব্রাউজারের jQuery এর সমস্ত সংস্করণ অস্তিত্বহীন থাকে এবং যদি এটি jQuery এর কোনও পরিচিত উত্সের কোনও অনুরোধকে ক্যাশেড সংস্করণে প্রতিস্থাপন করে। এমনকি যদি সামান্য পার্থক্য থাকে, তবে এটি বাগগুলি হতে পারে যা ডিবাগ করা অসম্ভব। ওয়েব ক্যাচিং কাজ করে এবং কয়েক দশক ধরে কাজ করেছে এই বিষয়টি দ্বারা এটি আরও বেড়ে যায় । আপনার ব্রাউজারটি কেবল সেই jQuery অনুরোধগুলিকে ক্যাশে করে না - আপনার ব্রাউজারে যাওয়ার পথে রাউটারগুলির অনেকগুলি একই কাজ করে। সমস্যা অনেক আগে সমাধান করা হয়েছে, যখন ব্যান্ডউইথ করেনি ব্যাপার :)
Luaan

৪) যদি কোনও নির্দিষ্ট সাইটের জিকোয়ারি কোড কোনও ফাংশনের উপর নির্ভর করে যা সাম্প্রতিক আপডেটে মৌলিকভাবে পরিবর্তিত হয়েছে এবং কোডটি এর দ্বারা প্রত্যাশিত আর কি করে না?
শাদুর

1
@ এজে না, এটি ট্র্যাকিংয়ের প্রক্রিয়া হিসাবে কাজ করে না কারণ আপনার ব্রাউজারের ক্যাশে থেকে অনুরোধটি কার্যকর হওয়ার 99% সময় আসে।
suriv

1
@ বেনস্টওয়ার্ড হ্যাঁ, আপনার ব্রাউজারের ডেভ সরঞ্জামগুলি ব্যবহার করুন এবং নেটওয়ার্ক প্যানেলটি পরীক্ষা করুন । Chrome, উদাহরণস্বরূপ, "আকার" কলামে "ডিস্ক ক্যাশে" বা "মেমরি ক্যাশে" সহ ক্যাশেড সংস্থান এবং "স্থিতি" কলামে একটি ভুতযুক্ত মান দেখিয়ে দেবে (যতক্ষণ না আপনার কাছে "ক্যাশে অক্ষম করুন (ততক্ষণ ডেভটুলগুলি নেই)" খোলা আছে) "দেব সরঞ্জাম সেটিংসে সক্রিয়)। এটি ক্যাশে নিয়ন্ত্রণ শিরোলেখ এবং কী ক্যাশে যায় এবং কতক্ষণের জন্য অন্যান্য বিষয়গুলির উপর নির্ভর করে। বিকাশকারী.মোজিলা.আর.ইন-
নিক

21

কেবল জিকুয়ারিই কেবল জনপ্রিয় জেএস লাইব্রেরি নয়, একটি ব্রাউজারকে সম্ভাব্য একাধিক সংস্করণ অন্তর্ভুক্ত করতে হবে। গুগল যা CDN বর্তমানে তালিকাবদ্ধ সাইটে সময় 42 সংস্করণ; JQuery UI এর 44 সংস্করণ; JQuery মোবাইল 6 সংস্করণ।

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


14

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

এছাড়াও, আমরা সমস্ত সংস্করণ অন্তর্ভুক্ত করব? কেউ যদি কাস্টম সংস্করণ ব্যবহার করতে চান? কেউ যদি সেই লাইব্রেরিটি ব্যবহার করতে না চান তবে কী হবে? তারা কত ঘন ঘন একত্রীকরণ করবে এবং সর্বশেষ প্রকাশগুলি রোল করবে? আমরা কি বিভিন্ন সংস্করণযুক্ত jQuerys সহ বিভিন্ন ব্রাউজারটি শেষ করব? তারা মানকৃত এইচটিএমএল, সিএসএস এবং জাভাস্ক্রিপ্ট কার্যকারিতা সমানভাবে প্রয়োগ করতে পারে না। তাহলে যদি ব্রাউজারের একজন রক্ষণাবেক্ষণকারী কোনও গ্রন্থাগার বা এর নির্দিষ্ট সংস্করণ অন্তর্ভুক্ত না করে?

ব্রাউজারগুলি বিল্ডিং ব্লক এবং আপনার জন্য ইতিমধ্যে সমাপ্ত সমাধান না তৈরি করার জন্য একটি পরিবেশ সরবরাহ করে।

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

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


2

JQuery এর মতো লাইব্রেরি ব্যবহারের একটি কারণ হ'ল সামঞ্জস্য।

ব্রাউজারগুলি আরও স্ট্যান্ডার্ড-মেনে চলেছে, তবে jquery লাইব্রেরি ব্যবহার করে আপনি নিজেকে সরবরাহ করেন, আপনাকে ব্রাউজার পরিবার এবং সংস্করণগুলির মধ্যে পার্থক্য সম্পর্কে চিন্তা করতে হবে না

নিজে jquery সরবরাহ করে, আপনি একটি নিয়মিত এপিআই নিশ্চিত।

যদি আমাদের ব্রাউজারে জেকোয়ারিটি তৈরি করা থাকে তবে আপনাকে ব্যবহারকারীকে কোন সংস্করণ রয়েছে তা পরীক্ষা করে দেখতে হবে এবং আমরা ব্রাউজারস্নিফিংয়ে ফিরে এসেছি এবং "এই সাইটটি সর্বোত্তমভাবে দেখা হচ্ছে ..."

সুতরাং ব্রাউজারে jquery বিল্ডিং থাকা মানে না।

এছাড়াও, ক্যাশিং কাজ করে, সুতরাং ব্যবহারকারীটির কাছে ইতিমধ্যে আপনার জিকুরি সংস্করণ না থাকলেও এটি কেবল একবার ডাউনলোড করা দরকার।


-3

আমি আসলে এখানে উত্তরদাতাদের বুঝতে ব্যর্থ হয়েছি যে প্রশ্নের উত্তর ব্রাউজার সম্ভবত ক্লায়েন্টের পক্ষে সর্বাধিক ব্যবহৃত ব্যবহৃত লাইব্রেরি এবং পলিফিলস ইত্যাদি অন্তর্ভুক্ত করা উচিত।

প্রশ্নটি জিজ্ঞাসা করা ব্যক্তি হিসাবে বলা হয়েছে, শর্তসাপেক্ষ মন্তব্যগুলি নিশ্চিত করার জন্য এটি ব্যবহার করা যেতে পারে যে ব্রাউজারগুলি জ্যাকুয়েরি অন্তর্ভুক্ত নয় তাদের উপযুক্ত সংস্করণ দেওয়া হয়েছিল।

জিকুরিতে মাইগ্রেটের মাধ্যমে এটির নিজস্ব পিছনের সামঞ্জস্যতা সমর্থনও অন্তর্ভুক্ত রয়েছে, শর্তাধীন মন্তব্যগুলি সম্পূর্ণ নতুন লাইব্রেরি ডাউনলোড না করে পুরানো জেকুরি লাইব্রেরির প্যাকেজযুক্ত সংস্করণ সহ কারও জন্য রেট্রো সমর্থন দেওয়ার অনুমতি দেয়।

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

মূলত একটি প্যাকেজযুক্ত ব্রাউজারে অতিরিক্ত কয়েকটি মেগাবাইট কোড ব্লাট যুক্ত করার স্বার্থে - একই ডেটা অযাচিতভাবে দিনে কয়েক বিলিয়ন বার নিয়ে যাওয়া হচ্ছে।

এটি ইন্টারনেটে প্রত্যেকের জন্য ব্যবহারকারীর অভিজ্ঞতা খারাপ করে। এবং বড় ব্যবসায়ে বিপুল পরিমাণ অর্থ ব্যয় করে।

একজন বিকাশকারী হিসাবে আপনি বর্তমানে যেমন IE ইত্যাদির জন্য প্রয়োজনীয় প্রয়োজনীয় ফলব্যাকগুলি তৈরি করবেন, তাই সমস্যা কী - সম্ভবত এটি অবশ্যই অন্তর্ভুক্ত করা উচিত?


1
এটি প্রশ্নের স্পর্শকাতর। প্রশ্নটি "ব্রাউজারগুলি কেন করবেন না এবং আমি এটি সম্পর্কে কী করতে পারি", "ব্রাউজারগুলি কেন করা উচিত নয়" not
স্টিফেন অসটারমিলার

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

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

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

আপনার সকলকে আপনার বাহ্যিক পূর্বরূপ ধারণাগুলি রক্ষা করা এবং আপনি এখনও শিখতে পারবেন তা গ্রহণ করা দরকার। ওহ, এবং আসলে কিছু পড়তে শিখুন। #Weapons। "ওপি, আপনার বিষয়টি বিবেচনা করার সময় সিডিএন-তে ট্র্যাফিক হ্রাস করতে আগ্রহী"। না তিনি বলেন যে এটি ক্লায়েন্টের পাশে বা সিডিএন হোক না কেন এটি হিউজ পরিমাণে ব্যান্ডউইথের সঞ্চয় করতে পারে। প্রভাবিত পোস্ট পড়ুন।
অ্যান্ডি বিবপ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.