সেরা অনুশীলন

অ্যাড-অন ডিজাইনের জন্য এই নির্দেশিকাগুলি অনুসরণ করে আপনার ব্যবহারকারীদের সামগ্রিক অভিজ্ঞতা উন্নত করুন।

সাধারণ সর্বোত্তম অনুশীলন

আপনার বিকাশ করা সমস্ত অ্যাড-অনগুলির জন্য আপনাকে নিম্নলিখিত সেরা অনুশীলনগুলি অনুসরণ করতে উত্সাহিত করা হচ্ছে৷

শুরু করার আগে অ্যাড-অন মালিকানা নির্ধারণ করুন

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

Google Workspace প্রসারিত করুন, এটি প্রতিলিপি করবেন না

অ্যাড-অনগুলি তাদের প্রসারিত Google Workspace অ্যাপ্লিকেশানগুলিতে নতুন ক্ষমতা প্রদান করার জন্য বা অন্যথায় জটিল কাজগুলি স্বয়ংক্রিয়ভাবে করা। যে অ্যাড-অনগুলি কেবলমাত্র ইতিমধ্যেই অ্যাপ্লিকেশনের মধ্যে কার্যকারিতা প্রতিলিপি করে বা যেগুলি কার্যপ্রবাহে উল্লেখযোগ্য উন্নতি করে না সেগুলি প্রকাশনার জন্য অ্যাড-অন পর্যালোচনা পাস করার সম্ভাবনা নেই।

সুযোগ সংকীর্ণ রাখুন

আপনার সুযোগগুলি স্পষ্টভাবে সংজ্ঞায়িত করার সময়, সর্বদা সম্ভাব্য স্কোপের সর্বনিম্ন-অনুমোদিত সেট বেছে নিন। উদাহরণস্বরূপ, https://www.googleapis.com/auth/calendar স্কোপের সাথে ব্যবহারকারীর ক্যালেন্ডারে আপনার অ্যাড-অন অনুরোধের সম্পূর্ণ অ্যাক্সেস থাকবে না যদি এটি শুধুমাত্র পড়ার অ্যাক্সেসের প্রয়োজন হয়। শুধুমাত্র-পঠন অ্যাক্সেসের জন্য, https://www.googleapis.com/auth/calendar.readonly স্কোপ ব্যবহার করুন।

লাইব্রেরির উপর খুব বেশি নির্ভর করা থেকে বিরত থাকুন

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

উপরে বর্ণিত লেটেন্সি শুধুমাত্র সার্ভার-সাইড লাইব্রেরি হিসাবে ব্যবহৃত অ্যাপস স্ক্রিপ্ট প্রকল্পগুলিতে প্রযোজ্য। আপনি ক্লায়েন্ট-সাইড জাভাস্ক্রিপ্ট লাইব্রেরি যেমন jQuery ব্যবহার করতে পারেন এই লেটেন্সির সম্মুখীন না হয়েই।

Google Workspace অ্যাড-অন সেরা অনুশীলন

নিম্নলিখিত সেরা অনুশীলনগুলি শুধুমাত্র Google Workspace অ্যাড-অন এবং কার্ড পরিষেবা ব্যবহারের ক্ষেত্রে প্রযোজ্য।

মাত্র কয়েকটি কার্ড ব্যবহার করুন

অ্যাড-অন যদি অনেক বেশি কার্ড ব্যবহার করে তাহলে নেভিগেশন কনফিগারেশন জটিল এবং পরিচালনা করা কঠিন হয়ে পড়ে।

প্রয়োজনের চেয়ে বেশি কার্ড তৈরি করার প্রবণতা এড়িয়ে চলুন।

উইজেট তৈরির ফাংশন ব্যবহার করুন

কোড লেখার সময় যা Card বা অন্যান্য জটিল UI অবজেক্ট তৈরি করে, সেই কোডটিকে তার নিজস্ব ফাংশনে রাখার কথা বিবেচনা করুন। এই সৃষ্টি ফাংশন শুধুমাত্র বস্তু নির্মাণ এবং এটি ফেরত করা উচিত. এটি আপনাকে যখনই UI রিফ্রেশ করতে হবে তখনই সেই বস্তুটি দ্রুত পুনরুত্পাদন করতে দেয়। কার্ড সার্ভিসে বিল্ডার ক্লাস ব্যবহার করার পরে build() কল করতে ভুলবেন না।

কার্ড সহজ রাখুন

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

ত্রুটি কার্ড ব্যবহার করুন

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

পরীক্ষা এবং পরীক্ষার বার্তা লিখুন

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

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

    Logger.log(response.printJson());

রান মেনু ব্যবহার করে অ্যাপস স্ক্রিপ্ট এডিটর থেকে সরাসরি তৈরি করা টেস্ট ফাংশন চালান। যখন আপনার একটি কার্যকর অ্যাড-অন কাজ করে, তখন অপ্রকাশিত সংস্করণটি ইনস্টল করতে ভুলবেন না যাতে আপনি এটি পরীক্ষা করতে পারেন।

অ্যাড-অন প্রসারিত প্রতিটি হোস্ট অ্যাপ্লিকেশনের জন্য উপযুক্ত পরীক্ষা ডেটা ব্যবহার করুন। উদাহরণস্বরূপ, যদি অ্যাড-অনটি Gmail প্রসারিত করে তবে আপনার কয়েকটি পরীক্ষামূলক ইমেল এবং তাদের বার্তা আইডির প্রয়োজন হতে পারে যাতে আপনি নিশ্চিত করতে পারেন যে বিভিন্ন বার্তা সামগ্রী দেওয়া হলে অ্যাড-অন প্রত্যাশিতভাবে কাজ করে। আপনি Gmail API Users.messages.list পদ্ধতি ব্যবহার করে অথবা Apps Script-এর Gmail পরিষেবা ব্যবহার করে বার্তা তালিকাভুক্ত করে প্রদত্ত বার্তার জন্য বার্তা আইডি পেতে পারেন।

ক্যালেন্ডার কনফারেন্সিং সেরা অনুশীলন

যদি আপনার অ্যাড-অন তৃতীয় পক্ষের ক্যালেন্ডার কনফারেন্সিং বিকল্পগুলিকে Google ক্যালেন্ডারে একত্রিত করে, তাহলে এই অতিরিক্ত সেরা অনুশীলনগুলি অনুসরণ করুন:

আপনার onCreateFunction হালকা রাখুন

আপনি আপনার ম্যানিফেস্টে সংজ্ঞায়িত প্রতিটি onCreateFunction কে সিঙ্ক্রোনাস বলা হয় যখন একজন ব্যবহারকারী সেই ধরনের একটি কনফারেন্স সমাধান তৈরি করার চেষ্টা করেন। কনফারেন্স তৈরি করার জন্য এই ফাংশনগুলি শুধুমাত্র ন্যূনতম প্রয়োজনীয় কাজ করে কিনা তা নিশ্চিত করুন। এই ফাংশনগুলিতে অত্যধিক কাজ করা আপনার অ্যাড-অনের জন্য ধীর ব্যবহারকারীর অভিজ্ঞতার কারণ হতে পারে।

কনফারেন্স ডেটার জন্য উপযুক্ত ConferenceData ক্ষেত্র ব্যবহার করুন

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

Google ক্যালেন্ডার ইভেন্টে কনফারেন্সিং বিশদ যুক্ত করবেন না

আপনার অ্যাড-অনকে Google ক্যালেন্ডার ইভেন্টের বিবরণে তৈরি তৃতীয় পক্ষের সম্মেলন সম্পর্কে তথ্য যোগ করার প্রয়োজন নেই। Google ক্যালেন্ডার প্রয়োজনে স্বয়ংক্রিয়ভাবে এটি করে।