নিদর্শন, উপাদান, এবং নকশা সিস্টেম

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

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

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

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

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

জটিলভাবে চিন্তা করুন

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

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

  • একটি প্রতিষ্ঠিত অ্যাক্সেসযোগ্য প্যাটার্ন, উপাদান, বা নকশা সিস্টেম ইতিমধ্যে বিদ্যমান?
  • আমি কোন ব্রাউজার এবং সহায়ক প্রযুক্তি (AT) সমর্থন করছি?
  • কোন কোড/ফ্রেমওয়ার্কের সীমাবদ্ধতা বা অন্যান্য ইন্টিগ্রেশন/ফ্যাক্টর/ব্যবহারকারীর প্রয়োজন আছে যা আমাকে বিবেচনা করতে হবে?

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

প্রতিষ্ঠিত সম্পদ

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

অ্যাক্সেসযোগ্য নিদর্শন, উপাদান এবং ডিজাইন সিস্টেমের জন্য কিছু দুর্দান্ত সংস্থান অন্তর্ভুক্ত:

জাভাস্ক্রিপ্ট ফ্রেমওয়ার্কের জন্য, নিম্নলিখিত সংস্থানগুলি বাক্সের বাইরে মোটামুটি অ্যাক্সেসযোগ্য বা অ্যাক্সেসযোগ্যতার জন্য কাস্টমাইজ করা সহজ:

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

সমস্ত সম্পদ একটি সূচনা পয়েন্ট হিসাবে দেখা উচিত. সবকিছু পরীক্ষা করতে ভুলবেন না!

ব্রাউজার এবং সহায়ক প্রযুক্তি (AT) সমর্থন

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

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

স্ক্রিন রিডার ওএস ব্রাউজার সামঞ্জস্য খরচ
বক্তৃতা সহ কাজের অ্যাক্সেস (JAWS) উইন্ডোজ ক্রোম, ফায়ারফক্স, এজ লাইসেন্স প্রয়োজন (একটি বিনামূল্যে 40-মিনিট সংস্করণ বিদ্যমান)
নন-ভিজ্যুয়াল ডেস্কটপ অ্যাক্সেস (NVDA) উইন্ডোজ ক্রোম এবং ফায়ারফক্স বিনামূল্যে (ডাউনলোড প্রয়োজন)
বর্ণনাকারী উইন্ডোজ প্রান্ত বিনামূল্যে (উইন্ডোজ মেশিনে অন্তর্নির্মিত)
ভয়েসওভার ম্যাক অপারেটিং সিস্টেম সাফারি বিনামূল্যে (macOS মেশিনে অন্তর্নির্মিত)
ওরকা লিনাক্স ফায়ারফক্স বিনামূল্যে (জিনোম-ভিত্তিক বিতরণে অন্তর্নির্মিত)
টকব্যাক অ্যান্ড্রয়েড ক্রোম এবং ফায়ারফক্স বিনামূল্যে (অ্যান্ড্রয়েড ওএসের নির্দিষ্ট সংস্করণে অন্তর্নির্মিত)
ভয়েসওভার iOS সাফারি বিনামূল্যে (iOS ডিভাইসে অন্তর্নির্মিত)

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

কিন্তু এটা সব খারাপ খবর না. সৌভাগ্যক্রমে, HTML5 অ্যাক্সেসিবিলিটি , অ্যাক্সেসিবিলিটি সাপোর্ট , এবং WCAG-এর কাস্টম কন্ট্রোল অ্যাক্সেসিবল ডেভেলপমেন্ট চেকলিস্টের মতো দুর্দান্ত সংস্থানগুলি বর্তমান ব্রাউজার এবং AT ডিভাইস সমর্থন এবং এমনকি কখন ARIA ব্যবহার করতে হবে তা আরও ভালভাবে বুঝতে আমাদের সাহায্য করে৷

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

অন্যান্য বিবেচ্য বিষয়

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

উদাহরণস্বরূপ, যদি আপনি একটি ম্যানেজমেন্ট সিস্টেম (CMS) এ কাজ করেন বা আপনার কাছে লিগ্যাসি কোড থাকে, তাহলে আপনি কোন প্যাটার্ন ব্যবহার করতে পারেন তার কিছু সীমাবদ্ধতা থাকতে পারে। পর্যালোচনা করার পরে, বেশ কয়েকটি প্যাটার্ন পছন্দ দ্রুত এক বা দুটি বিকল্পে কাটা যেতে পারে।

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

প্যাটার্ন, উপাদান বা ডিজাইন সিস্টেম বেছে নেওয়ার সময় ওজন করার জন্য অতিরিক্ত বিবেচনা রয়েছে, যেমন:

  • কর্মক্ষমতা
  • নিরাপত্তা
  • সন্ধান যন্ত্র নিখুতকরন
  • ভাষা অনুবাদ সমর্থন
  • তৃতীয় পক্ষের ইন্টিগ্রেশন

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

আপনার উপলব্ধি পরীক্ষা করুন

নিদর্শন আপনার জ্ঞান পরীক্ষা

অ্যাক্সেসযোগ্য উপাদান সবসময় ব্যবহারকারীদের জন্য অ্যাক্সেসযোগ্য থাকে?

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