ব্রাউজার ইনস্টল মধ্যে JQuery এবং অনুরূপ সরঞ্জাম নির্মিত যেতে পারে?


19

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

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

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

এটি যদি সম্ভব হয় তবে তা হয়ে গেছে, আর তা না হলে কেন করা হয়নি?


3
যখন কোনও নির্দিষ্ট জাভাস্ক্রিপ্ট ফাংশন এত সর্বব্যাপী হয়ে উঠেছে যে এটি সর্বত্র প্রয়োজন হিসাবে দেখা যায়, তখন এটি ভাষায় যুক্ত হয়। Array.prototype.forEach, Array.prototype.indexOf, Object.createকোড সব উদাহরণ জাভাস্ক্রিপ্ট ইঞ্জিন নিজেই মধ্যে একত্রিত হন হয়।
zzzzBov

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

1
আপনি কোন সংস্করণটি অন্তর্ভুক্ত করার পরামর্শ দিন? আগামী সপ্তাহে কী হবে?
পিডিআর

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

উত্তর:


15

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

সম্পাদনা করুন: জেএস লাইব্রেরিগুলি প্রাথমিকভাবে, ডোমটির সাথে কাজ সহজ করার জন্য রয়েছে। আমি মনে করি না যে ব্রাউজারের সাথে তৃতীয় পক্ষের লাইব্রেরিগুলিকে বান্ডিল করা ডম এপিআইকে আরও আনন্দদায়ক করার সঠিক উপায়।


1
ধন্যবাদ ড্যান - আপনার বিবরণে আমি কোনও লিঙ্ক পড়তে পারি?
ওজ

1
আমি যুক্তি দিয়ে বলব যে প্রত্যেকবার আমি যখন একটি পৃষ্ঠা অনুরোধ করি তখন সাধারণ লাইব্রেরিগুলিতে মেগাবাইটের উপর মেগাবাইট ডাউনলোড করা দরকার যা ওয়েব পৃষ্ঠাগুলিকে ছোট এবং অ্যাক্সেসযোগ্য রাখার অন্য একটি মৌলিক ওয়েব দর্শনের বিরুদ্ধে যায়। অনেকগুলি এখনও মডেম এবং সর্বোপরি স্যাটেলাইট সংযোগে রয়েছে।
ম্যাপেল_শ্যাফ্ট

4
একটি রুট ক্যানেল অপারেশন ডম এপিআই আরও সুখকর করে তুলবে ...
ডোনাল ফেলো

1
@ ম্যাপেল_শ্যাফ্ট, এটি কিছুটা বিশিষ্ট যুক্তি। সংক্ষিপ্ত jQuery বিতরণ 31K। যদিও এটি অবশ্যই আছে যে এখানে ওয়েব পৃষ্ঠাগুলি রয়েছে যা বিভিন্ন পাবলিক লাইব্রেরির একটি ক্রেজি সংখ্যা লোড করে, প্রশ্নটি jQuery এর জন্য সুনির্দিষ্ট, এবং ক্রেপী প্রোগ্রামারদের কোনও অ্যাকাউন্টিং নেই।
অ্যাডাম ক্রসল্যান্ড

16

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

তারপরে সাইটগুলি সার্ভার থেকে শেষ পর্যন্ত ডিফল্ট হওয়ার আগে সিডিএন এর আগে প্রথমে "স্থানীয়" পরীক্ষা করতে পারে।

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

ব্রাউজার সেটআপে জিকুয়েরি অন্তর্ভুক্ত করা হবে:

  • ব্রাউজার অ্যাপ্লিকেশন এবং সেটআপে অপ্রয়োজনীয় জটিলতা যুক্ত করুন,

  • প্রক্রিয়া আপডেট করতে অপ্রয়োজনীয় জটিলতা যুক্ত করুন,

  • জিকুয়েরির আপ-টু-ডেট সংস্করণ রাখার জন্য আপডেটের সংখ্যা বাড়ান, এমনকি এমন লোকের জন্যও যার প্রয়োজন নেই,

  • বিভ্রান্তি যোগ করুন: কেন জিকুয়ারি এবং প্রোটোটাইপ নয়, বা অন্য কোনও কাঠামো, চিত্র, সিএসএস ফাইল ইত্যাদি?

  • প্রভৃতি

বৈশিষ্ট্য, পারফরম্যান্স ইত্যাদির ক্ষেত্রে কোনও লাভ ছাড়াই একটি সফ্টওয়্যার পণ্যটির জটিলতা বাড়ানো একটি অত্যন্ত খারাপ ধারণা।


ধন্যবাদ। হ্যাঁ, আমি আমার প্রশ্নে পরিষ্কার ছিলাম না। আমি ঠিক সচেতন যে কি ঘটবে। আমি এমনকি প্রথম ডাউনলোডের প্রয়োজন অপসারণের বিষয়ে কথা বলছি। আমি প্রশ্ন আপডেট করব।
ওজ

আপনার সমস্ত কারণে ব্রাউজার সেটআপ :-) অন্তর্ভুক্ত না করার জন্য ধন্যবাদ
ওজ

6
আপনি প্রথম ডাউনলোডের প্রয়োজনীয়তা অপসারণ করতে পারবেন না। JQuery সেটআপ মধ্যে অন্তর্ভুক্ত করা হয়, তাহলে এটি করা হয় প্রথমবার যখন ব্যক্তি সেটআপ এক্সিকিউটেবল ডাউনলোড (তারপর এটি আপডেটের মাধ্যমে আবার ডাউনলোড করা হয় যখন JQuery এর একটি নতুন সংস্করণ প্রকাশিত হলে) এর জন্য ডাউনলোড করা হয়নি।
আর্সেনী মোরজেঙ্কো

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

1
@ সমস্ত আপনি যদি এই বিষয়ে আরও আলোচনা করতে চান তবে দয়া করে এটি চ্যাটে যান।
ম্যাপেল_শ্যাফ্ট

5

ভুলে যাবেন না যে জিকুয়েরি একটি জেএস লাইব্রেরি, এটি মনে হয় এটি ডি ফ্যাক্টোর এক হয়ে গেছে এবং এটি একটি প্যানাসিয়া হিসাবে দেখা হয়েছে (এসও-তে মেমোরিয়াল হওয়ার পয়েন্টে) তবে এটি কেবল একটি জেএস লাইব্রেরি।

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

সংক্ষিপ্ত উত্তর: এগুলি অন্তর্ভুক্ত করা যেতে পারে, তবে তাদের উচিত নয়।


5

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

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

একবার আপনি ক্যাচিং অ্যাকাউন্টে নেওয়ার পরে, আপনি যে সুবিধাটি অর্জন করেন তা খুব ন্যূনতম। JQuery এর সংক্ষিপ্ত সংস্করণটি কেবলমাত্র 31K। এটি কোনও কিছু পরিবর্তনের পক্ষে যুক্তিযুক্ত নয়


ধন্যবাদ আদম - হ্যাঁ, আমি প্রথম ডাউনলোড, ক্যাশে দৃশ্য জানি। আমার চিন্তাও সেইসাথে প্রতিস্থাপন করা হয়। জিকুয়েরিটি কেবলমাত্র 1 উদাহরণ ছিল তবে আমি প্রতিযোগিতায় আপনার চিন্তাগুলির সাথে একমত, এই বলে মনে হচ্ছে এটি আমার মূল প্রস্তাব যা ঘটেছিল তা না হওয়ার মূল কারণ হতে পারে। তারপরে আপনি "ডিফল্ট" উপাদানগুলি ইত্যাদির বিভিন্ন সেট সহ বিভিন্ন ব্রাউজার পাবেন
ওজ করুন

আমি ক্যাশিং সম্পর্কে সচেতন তা উল্লেখ করার জন্য প্রশ্নটি আপডেট করেছি :-)
ওজ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.