একজন পারফরম্যান্ট, অফলাইন অভিজ্ঞতার জন্য Google Base এবং Google Gears ব্যবহার করা

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

ডিওন আলমার এবং পামেলা ফক্স, গুগল
জুন 2007

সম্পাদকের দ্রষ্টব্য: Google Gears API আর উপলব্ধ নেই

ভূমিকা

Google Gears-এর সাথে Google Base একত্রিত করে, আমরা প্রদর্শন করি কিভাবে একটি অ্যাপ্লিকেশন তৈরি করতে হয় যা অফলাইনে ব্যবহার করা যেতে পারে। এই নিবন্ধটি পড়ার পরে, আপনি Google Base API এর সাথে আরও পরিচিত হবেন, সেইসাথে ব্যবহারকারীর পছন্দ এবং ডেটা সংরক্ষণ এবং অ্যাক্সেস করার জন্য Google Gears কীভাবে ব্যবহার করবেন তা বুঝতে পারবেন।

অ্যাপটি বোঝা

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

প্রতিটি আইটেম একটি শিরোনাম, বিবরণ, ডেটার মূল উৎসের লিঙ্ক (যদি বিদ্যমান থাকে) সহ টীকা করা হয়, এবং অতিরিক্ত বৈশিষ্ট্যগুলি যা প্রতি বিভাগ প্রকারের জন্য পরিবর্তিত হয়। Google Base এই সত্যটির সুবিধা নেয় যে একই বিভাগের আইটেমগুলি বৈশিষ্ট্যগুলির একটি সাধারণ সেট ভাগ করে-উদাহরণস্বরূপ, সমস্ত রেসিপিতে উপাদান রয়েছে৷ Google বেস আইটেম এমনকি মাঝে মাঝে Google ওয়েব অনুসন্ধান বা Google পণ্য অনুসন্ধান থেকে অনুসন্ধান ফলাফলে প্রদর্শিত হবে.

আমাদের ডেমো অ্যাপ্লিকেশান, বেস উইথ গিয়ারস , আপনাকে সঞ্চয় করতে এবং প্রদর্শন করতে দেয় সাধারণ অনুসন্ধানগুলি যা আপনি Google Base-এ "চকলেট" (yum) বা "সৈকতে হাঁটা" (রোমান্টিক!) সহ ব্যক্তিগত বিজ্ঞাপনগুলির সাথে রেসিপি খুঁজে পেতে পারেন৷ আপনি এটিকে একটি "গুগল বেস রিডার" হিসাবে ভাবতে পারেন যা আপনাকে অনুসন্ধানগুলিতে সদস্যতা নিতে দেয় এবং আপনি যখন অ্যাপটি পুনরায় পরিদর্শন করেন, বা যখন অ্যাপটি প্রতি 15 মিনিটে আপডেট করা ফিডগুলি সন্ধান করতে বের হয় তখন আপডেট ফলাফলগুলি দেখতে দেয়৷

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

গুগল বেস ডেটা API ফিড ব্যবহার করে

Google Base কে Google Base data API-এর সাথে প্রোগ্রাম্যাটিকভাবে জিজ্ঞাসা করা যেতে পারে, যা Google Data API ফ্রেমওয়ার্কের সাথে সঙ্গতিপূর্ণ। Google Data API প্রোটোকল ওয়েবে পড়া এবং লেখার জন্য একটি সাধারণ প্রোটোকল প্রদান করে এবং অনেক Google পণ্য দ্বারা ব্যবহৃত হয়: Picasa, স্প্রেডশীট, ব্লগার, ক্যালেন্ডার, নোটবুক এবং আরও অনেক কিছু।

Google Data API ফরম্যাট XML এবং Atom পাবলিশিং প্রোটোকলের উপর ভিত্তি করে, তাই বেশিরভাগ পঠন/লেখা ইন্টারঅ্যাকশনগুলি XML-এ হয়।

Google Data API-এর উপর ভিত্তি করে Google Base ফিডের একটি উদাহরণ হল:
http://www.google.com/base/feeds/snippets/-/products?bq=digital+camera

snippets ফিডের ধরন আমাদের আইটেমগুলির সর্বজনীনভাবে উপলব্ধ ফিড দেয়। -/products আমাদের ফিডকে পণ্য বিভাগে সীমাবদ্ধ করতে দেয়। এবং bq= প্যারামিটার আমাদের ফিডকে আরও সীমাবদ্ধ করতে দেয়, শুধুমাত্র "ডিজিটাল ক্যামেরা" কীওয়ার্ড ধারণকারী ফলাফলগুলিতে। আপনি যদি ব্রাউজারে এই ফিডটি দেখেন, তাহলে আপনি মিলিত ফলাফল সহ <entry> নোড ধারণকারী XML দেখতে পাবেন। প্রতিটি এন্ট্রিতে সাধারণ লেখক, শিরোনাম, বিষয়বস্তু এবং লিঙ্ক উপাদান থাকে, তবে অতিরিক্ত বিভাগ-নির্দিষ্ট বৈশিষ্ট্যের সাথে আসে (যেমন পণ্য বিভাগের আইটেমের জন্য "মূল্য")।

ব্রাউজারে XMLHttpRequest-এর ক্রস-ডোমেন সীমাবদ্ধতার কারণে, আমাদের জাভাস্ক্রিপ্ট কোডে www.google.com থেকে XML ফিডে সরাসরি পড়ার অনুমতি নেই। আমরা XML-এ পড়ার জন্য একটি সার্ভার-সাইড প্রক্সি সেট আপ করতে পারি এবং আমাদের অ্যাপের মতো একই ডোমেনের অবস্থানে এটিকে থুতু দিতে পারি, তবে আমরা সার্ভার-সাইড প্রোগ্রামিং সম্পূর্ণভাবে এড়াতে চাই। ভাগ্যক্রমে, একটি বিকল্প আছে।