2013 সালে প্রবর্তিত, BeautyPlus হল বিশ্বের অন্যতম জনপ্রিয় ফটো-এডিটিং অ্যাপ, যা মেকআপ শিল্পী, ফটোগ্রাফার এবং সাধারণ মোবাইল ফোন স্নাপাররা ব্যবহার করেন। প্রায় 50 মিলিয়ন মানুষ প্রতি মাসে তাদের সেলফি, ছবি এবং ভিডিওগুলিতে ফিল্টারগুলি সম্পাদনা করতে এবং যোগ করতে অ্যাপটি ব্যবহার করে। চীনের Xiamen Meitu Technology Co., Ltd. দ্বারা ডেভেলপ করা, অ্যাপটি (যেটি সেলফি সেটের সাথে বিশেষভাবে জনপ্রিয়) ত্বকের টোন সংশোধন এবং হাসি উজ্জ্বল করা থেকে শুরু করে স্লিমিং বৈশিষ্ট্য এবং এয়ারব্রাশ করা সব কিছুর জন্য ব্যবহার করা হয়, সব কিছু সহজ টেনে এবং ক্লিক
সংস্থাটি অ্যাপটিতে ঘন ঘন আপডেট করে, এটির জন্য প্রচুর সংখ্যক বিকাশকারীদের প্রয়োজন। কিন্তু, সময়ের সাথে সাথে, অন্তর্নিহিত স্থাপত্যে অভিন্নতা এবং স্বচ্ছতার অভাব দেখা দেয়। লাইফসাইকেল ম্যানেজমেন্টকে সরল করার সময় এবং অ্যাসিঙ্ক্রোনাস UI রিফ্রেশ করার সাথে সম্পর্কিত সমস্যাগুলি সমাধান করার সময় দ্রুত-চলমান দলটির তাদের সহযোগী ডেভেলপারদের লুপের মধ্যে রাখার একটি উপায় প্রয়োজন।
তারা কি করেছিল
অ্যান্ড্রয়েড আর্কিটেকচার কম্পোনেন্টগুলি এমন সরঞ্জামগুলি সরবরাহ করে যা ডেভেলপারদের অ্যাপের কোড সংক্ষিপ্ত, স্থিতিশীল এবং নতুন ইঞ্জিনিয়ারদের অনবোর্ডে পড়ার জন্য সহজ করে তুলতে প্রয়োজন৷
বিউটিপ্লাস ডেভেলপাররা যে উপাদানগুলি ব্যবহার করা শুরু করেছে তার মধ্যে রয়েছে ViewModel
, যা কার্যকলাপ এবং টুকরো আপডেটের সাথে সহজ লজিক প্রক্রিয়াকরণ সক্ষম করে৷ ViewModel
একটি লাইফসাইকেল-সচেতন উপায়ে UI-সম্পর্কিত ডেটা সঞ্চয় এবং পরিচালনা করার জন্য ডিজাইন করা হয়েছে যা অন্যান্য অ্যাপের উপাদানগুলির জীবনচক্রকে সম্মান করে।
তারা LiveData
কম্পোনেন্টও ব্যবহার করেছে, একটি পর্যবেক্ষণযোগ্য ডেটা-ধারক শ্রেণী যা লাইফ-সাইকেল-সচেতন তা নিশ্চিত করতে সাহায্য করে যে UI ডেটা অবস্থার সাথে মেলে। দলটি এই অ্যান্ড্রয়েড আর্কিটেকচার উপাদানগুলিকে কোনও সমস্যা ছাড়াই ব্যবহার করা সহজ বলে মনে করেছে—এবং সুবিধাগুলি দ্রুত লক্ষণীয় ছিল৷
ফলাফল
অ্যান্ড্রয়েড আর্কিটেকচার উপাদানগুলির জন্য ধন্যবাদ, বিউটিপ্লাস অ্যাপে অবিলম্বে 5% লিনার কোড ছিল এবং এটি 15% বেশি পাঠযোগ্য ছিল। আর্কিটেকচারটি আরও একীভূত ছিল, যা ডেভেলপারদের সময় এবং শ্রম সাশ্রয় করে এবং নতুন বিকাশকারীদের দ্রুত গতিতে উঠতে সহজ করে তোলে। উপরন্তু, কম মেমরি ফাঁস ছিল, ডেটা রিফ্রেশ করা সহজ হয়ে উঠেছে এবং ডেভেলপারদের আর অ্যাসিঙ্ক্রোনাস UI আপডেট করার বিষয়ে চিন্তা করতে হবে না।
"যখন আমরা বিউটিপ্লাসের জন্য ভিউমডেল এবং লাইভডেটা ব্যবহার করি, কোডটি আরও সংক্ষিপ্ত এবং পাঠযোগ্য হয়ে ওঠে এবং কোডটির আর্কিটেকচার একীভূত হয়," বলেছেন জেং সংগিন, সিনিয়র ডেভেলপমেন্ট ম্যানেজার৷ "অ্যাপের জীবনচক্রের অপারেশন নিরাপদে পরিচালিত হয়েছিল, এবং স্থিতিশীলতাও উন্নত হয়েছে।"
এবার শুরু করা যাক
অ্যান্ড্রয়েড আর্কিটেকচার উপাদানগুলি সমস্ত বিকাশকারীদের জন্য উন্মুক্ত৷ Android Architecture Components দিয়ে শুরু করুন ।