ওপেন ওয়েব অ্যাপ পরিচিতি

This translation is incomplete. Please help translate this article from English.

Multi devices

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

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

ওপেন ওয়েব অ্যাপের সুবিধাসমূহ 

আসুন ওপেন ওয়েব অ্যাপের সুবিধা সমূহ আরও একটু বিস্তারিত ভাবে দেখি:

  • লোকাল ইন্সটলেশন এবং অফলাইন স্টোরেজ: মুক্ত ওয়েব এপ্লিকেশনগুলোকে ডিভাইসে ইন্সটল করা যায়। এরা APIs যেমন লোকাল স্টোরেজ এবং IndexedDB ব্যবহার করে ডিভাইসেই তথ্য সংরক্ষণ করে রাখতে  পারে। এছাড়াও, মুক্ত ওয়্যাপ প্রযুক্তি অল্পস্বল্প জায়গা নেয়, আপনার ডিভাইসের নেটিভ এপ্লিকেশনের সাথে তুলনা করলে এদেরকে আরো আরামে, স্বয়ংক্রিয়ভাবেই আপডেট করা যায়, পুরোপুরি নতুন একটা প্যাকেজ ইন্সটল করা লাগে না এদের আপডেট করার জন্য। (তবে প্যাকেজড ওয়াপ আপডেট করতে গেলে পুরোটাই ডাউনলোড করতে হয়)। এসব অ্যাপ ব্যবহার করতে সবসময় ইন্টারনেটে যুক্ত হয়ে থাকা লাগে না, তাই নেটোয়ার্কে সমস্যা থাকলেও অ্যাপগুলো ভালভাবেই কাজ করে।
  • হার্ডওয়ার ব্যবহারঃ ওপেন ওয়েব অ্যাপ এর সাথে মেটাডেটা ব্যবহার করে এপ্লিকেশনকে হার্ডওয়ারের সাথে যোগাযোগ করে এমন APIs ব্যবহার করার অনুমতি দিতে পারেন। এই সুবিধা গতানুগতিক ওয়েব প্ল্যাটফর্মে ছিল না।
  • বাঁধা ভেঙ্গে দিনঃ মোবাইল প্ল্যাটফর্মে এতদিন আমরা দেখেছি একেক কোম্পানি নিজেদের মত করে প্রযুক্তি দিত আমাদের, এক ডিভাইসের জন্য লেখা অ্যাপ অন্য ডিভাইসে চলত না। অনেক স্মার্টফোন প্রস্তুতকারক এপ্লিকেশন কেনার জন্য ক্রেডিট কার্ড চেয়ে থাকে, তাই এসব প্ল্যাটফর্মে খরচেরও একটা ব্যাপার থাকে। ওপেন ওয়েব অ্যাপ এসব বাঁধা ভেঙ্গে দিয়ে অনেক স্বস্তা, আর প্রায় সব ডিভাইসেই যাতে আপনার এপ্লিকেশন চলে, সেই সুবিধা করে দেয়। বিশেষ করে ফায়ারফক্স ওএস ডিভাইসের কথা বলতেই হয় যেখানে আসলে হাল্কা-পাতলা একটা লিনাক্স কার্নেলের ওপরে ফায়ারফক্স ছাড়া আর কিছুই চলছে না! এসব ডিভাইসের জন্য ওপেন ওয়েব অ্যাপ বিশেষভাবে উপযোগী, ওয়েব হচ্ছে এমন একটা প্ল্যাটফর্ম যা সব ডিভাইসেই সমর্থিত। এছাড়া আপনি যদি আপনার লেখা এপ্লিকেশন বিক্রি করতে চান বা গ্রাহকের মোবাইল বিলের মাধ্যমে বিল নিতে চান, ফায়ারফক্স ওএস সহজেই এগুলো করা যায়।
  • ওপেন ওয়েব অ্যাপ স্টোরঃ আগের পয়েন্টের আলোচনার সূত্র ধরেঃ আপনার অ্যাপ চাইলে প্রতিষ্ঠিত মার্কেট-প্লেসে (যেমন ফায়ারফক্স মার্কেটপ্লেস) অথবা অন্য যেকোন জায়গায় রাখতে পারেন (হোস্ট করতে পারেন)। আপনি - ডেভেলপার যাতে সহজে অ্যাপ তৈরি থেকে শুরু করে বিতরণ, ক্রেতার সাথে সম্পর্ক সবকিছুই যাতে নিয়ন্ত্রণ করতে পারেন এটাই মজিলা'র উদ্দেশ্য।  আর ওয়েবের অন্যান্য জিনিসের মতই সহজে আপনার অ্যাপ খোঁজা (সার্চ) করা যাবে।

নিচের ভিডিওতে দেখুন ওপেন ওয়েব অ্যাপ এর সুবিধা কী, আর ফায়ারফক্স ওএস প্ল্যাটফর্মে কিভাবে ডেভেলপ করা যায়ঃ

ওয়েব-ই প্ল্যাটফর্ম

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

মজিলা'তে আমরা দিনরাত কাজ করছি এই  অ্যাপ প্ল্যাটফর্ম তৈরি করতে - যেটা পুরোপুরিভাবে ওপেন ওয়েবের ওপর দাঁড়িয়ে আছে। একে "মজিলা প্ল্যাটফর্ম" বা "ফায়ারফক্স প্ল্যাটফর্ম" হিসেবে তৈরি করার আমাদের কোন উদ্দেশ্য নেই। এর প্ল্যাটফর্ম হচ্ছে ওয়েব। আমরা এক গাদা মুক্ত APIs তৈরি করছি আর এগুলো কার্যকরী করছি, যাতে পোর্টেবল অ্যাপ ওয়েবের ওপর ভিত্তি করে চলতে পারে হার্ডওয়ার প্রস্তুতকারকের ওপর নির্ভরশীল হওয়া ছাড়াই।  অন্যান্য গ্রুপ যেমন ফেসবুক আর গুগল ক্রম ও কাজ করছে ওয়েব-ভিত্তিক অ্যাপ প্লাটফর্মের ওপর। ফেসবুক অ্যাপ ফেসবুকের সাথে ভালভাবেই যুক্ত আর ক্রোম অ্যাপ ডিজাইন করা হয় এমনভাবে যাতে সেটা ক্রোম ওএস আর গুগল সার্ভারের ওপর নির্ভর করে চলে। তবে ওপেন ওয়েব অ্যাপ এর সাথে সবচেয়ে বেশি মিল আছে ক্রোম অ্যাপ এরই। আমরা গুগল ক্রোম টিমের সাথে মিলে কাজ করি অ্যাপ স্ট্যান্ডার্ডের উত্তরোত্তর উন্নতির জন্য আর আমাদের অনেক দর্শন-ও মিলে যায়। সব ওয়েব-ভিত্তিক অ্যাপ প্লয়াটফর্ম মিলে গিয়ে একটি প্ল্যাটফর্ম হয়ে যাওয়ার বেশ ভাল সম্ভাবনা আর সুযোগ রয়েছে, তাই আমরা সব ভেন্ডরদের আমন্ত্রণ জানাই সঠিক ওপেন ওয়েব অ্যাপ APIs গুলো তৈরি করতে আমাদের সাহায্য করার জন্য।

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

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

ওয়েব স্ট্যান্ডার্ডসমূহ

ও. ডব্লিও. এ প্রযুক্তি শুধুমাত্র একটি টুকরো নয়, এটি একটি ক্লাবের মত যা বিভিন্ন প্রযুক্তিকে সংযোগ করে এবং তাদের কিছু খুবই নতুন। এই মুহূর্তে, parts of OWA are standardized (HTML5, CSS, JavaScript, IndexedDB, etc.). Other parts are not yet standardized and the Mozilla implementation is thus specific to Firefox or to some other Mozilla technology. কিন্তু মোজিলার মিশন হলো সবার সাথে শেয়ার করা এবং সবাইকে ক্ষমতাবান করা, এই পরিস্থিতি শুধুমাত্র সাময়িক। এই জন্যে ও. ডব্লিও. এ ডকুমেন্টে আমরা পরিষ্কারভাবে ও. ডব্লিও. এ অংশ চিহ্নিত করার চেষ্টা করব যা এখনো প্রমিত হয় নি।

দয়া করে নোট করুন যে কিছু ও. ডব্লিও. এ সংক্রান্ত প্রস্তাব এবং  potential standards যা মোজিলা দ্বারা ব্যবহার করা হয় না থাকতে পারে।

Intended eventual standards

So here are the parts not standardized yet across the different Web platforms and that still are Firefox-only for the moment:

  • OWA manifest একটি অ্যাপ্লিকেশন সংজ্ঞায়িত করার জন্য
  • The Complete OWA API অ্যাপ্লিকেশন এর কাজ করার জন্য
  • Web APIs ফোন, ভূঅবস্থান ইত্যাদি জিনিস অ্যাক্সেস করতে। স্ট্যাটাস রিপোর্ট এর জন্য arewemobileyet.com দেখুন।
  • Identity (Persona) ব্যবহারকারীর তথ্যের সাথে কাজ করার জন্য।
  • WebPayment API কোনো মার্কেটপ্লেস থেকে ক্রয় এবং ইন-অ্যাপ্লিকেশন পেমেন্ট সহজতর করার জন্য।
  • OWA Receipts যেকোনো ডিভাইসে পেইড অ্যাপস যাচাই এবং যেকোনো মার্কেটপ্লেস থেকে Apps বিক্রি করার জন্য।

মার্কেটপ্লেস

কিনুন একবার, চালান সবখানে

From the ground up Mozilla has been building an apps system that lets users buy an app once and run it on all of their HTML5 devices. Very soon Mozilla will launch the first Firefox OS phone but that will be just one device on which to run your apps. When you purchase an app through the Firefox Marketplace, the system installs a receipt on your device. The receipt is a JSON Web Token with metadata that links to the Marketplace’s public key and its verification service URL. When an app starts up it can verify the receipt but the receipt on the device is not tied to the Firefox Marketplace. The receipt is just a cryptographically verifiable proof of purchase. Anyone can sell open Web apps if they follow the receipt specs. When you buy an app, it is intended to be portable across any device that supports the Open Web Apps system.

Mozilla is building the infrastructure needed to run Open Web Apps on any HTML5 device. Firefox for Android will let you install and run apps (you can try it today on the nightly build). Installed app icons go to your home screen just like regular Android apps. You can also install and run Web apps on your Windows, Mac, or Linux desktop using Firefox (this currently works in the nightly build). Currently some version of Firefox is required, but it is intended that the Open Web Apps system will eventually be supported by all major browsers as a set of standards. From day one Mozilla has included all major HTML5 compliant browsers in its proof of concepts; you can take a look at this hosted JavaScript shim for ideas on how to support the apps platform on a non-Firefox browser.

In the future the Open Web Apps system will support syncing your installed apps across devices. Since receipts are portable you could just sync them yourself if you wanted to. In case it’s not obvious, you can always run a free open Web app in any browser because it is no different than a website. It might, however, use new mobile specific web APIs which are not implemented on all platforms.

The video below provides a useful overview of the advantages of open marketplaces and an open web approach to app discovery:

WebPayment API

Commerce For Apps

Part of the success of mobile app platforms like iOS and Android is that they make it very easy to try out new business models through mobile payments. Those models are still evolving but commerce is no doubt something that, at the moment, is awkward on the desktop Web and more natural on mobile. Specifically, it’s very convenient to charge something to your phone bill when you’re already accessing it from your phone anyway. With the launch of Firefox OS, the apps ecosystem will support app purchases and in-app payments through the WebPayment API. Supporting commerce is crucial for the growth of an apps platform. The use of the proposed payment API is completely optional. Mozilla won’t prevent any app from using its own in-app payment system.

 

 

ডকুমেন্ট ট্যাগ এবং অবদানকারী

সর্বশেষ হালনাগাদ করেছেন: ananda,
সাইডবার লুকানো