টিকটক জেটপ্যাক কম্পোজের মাধ্যমে নতুন ফিচারগুলোর জন্য কোডের আকার ৫৮% কমিয়েছে এবং অ্যাপের পারফরম্যান্স উন্নত করেছে।
২ মিনিটের পাঠ
TikTok হলো একটি বিশ্বব্যাপী শর্ট-ভিডিও প্ল্যাটফর্ম, যা এর বিশাল ব্যবহারকারী গোষ্ঠী এবং উদ্ভাবনী বৈশিষ্ট্যের জন্য পরিচিত। এর টিম ব্যবহারকারীদের জন্য প্রতিনিয়ত আপডেট, পরীক্ষা-নিরীক্ষা এবং নতুন ফিচার প্রকাশ করে চলেছে। টেকনিক্যাল ডেট সামলানোর পাশাপাশি কাজের গতি বজায় রাখার চ্যালেঞ্জের সম্মুখীন হয়ে, TikTok অ্যান্ড্রয়েড টিম Jetpack Compose-এর সাহায্য নেয়।
দলটি পণ্যের প্রয়োজনীয়তার দ্রুততর ও উন্নত মানের পুনরাবৃত্তি সক্ষম করতে চেয়েছিল। Compose ব্যবহারের মাধ্যমে, দলটি কম কোড লিখে এবং মানসিক চাপ কমিয়ে ইঞ্জিনিয়ারিং দক্ষতা উন্নত করতে চেয়েছিল, পাশাপাশি আরও ভালো পারফরম্যান্স ও স্থিতিশীলতা অর্জন করতে চেয়েছিল।
ডেভেলপারদের উৎপাদনশীলতা বাড়াতে জটিল UI-কে সরলীকরণ করা
টিকটক পেজগুলো প্রায়শই দেখতে যতটা সহজ মনে হয়, তার চেয়ে অনেক বেশি জটিল হয়, কারণ এতে অসংখ্য স্তরযুক্ত শর্তসাপেক্ষ আবশ্যকতা থাকে। এই জটিলতার ফলে প্রায়শই রক্ষণাবেক্ষণে কঠিন, ত্রুটিপূর্ণ কাঠামোর ভিউ হায়ারার্কি এবং অতিরিক্ত ভিউ নেস্টিং তৈরি হতো, যা মেজার পাসের সংখ্যা বেড়ে যাওয়ার কারণে পারফরম্যান্সের অবনতি ঘটাতো।
কম্পোজ এই কাঠামোগত সমস্যার একটি সরাসরি সমাধান প্রদান করেছিল।
তাছাড়া, Compose-এর পরিমাপ কৌশল দ্বৈত কর আরোপ কমাতে সাহায্য করে, যার ফলে পরিমাপের কর্মক্ষমতা অপ্টিমাইজ করা আরও সহজ হয়।
ডেভেলপারদের কর্মদক্ষতা বাড়াতে, TikTok-এর কেন্দ্রীয় ডিজাইন সিস্টেম টিম অ্যাপের বিভিন্ন ফিচারে কর্মরত দলগুলোর জন্য একটি কম্পোনেন্ট লাইব্রেরি সরবরাহ করে। দলটি দেখেছে যে Compose-এ ডেভেলপমেন্ট করা সহজ; ছোট কম্পোজেবল ব্যবহার করা অত্যন্ত কার্যকর, এবং একই সাথে শর্তসাপেক্ষ লজিকসহ বড় UI ব্লক যুক্ত করাও বেশ সহজবোধ্য ও এতে অতিরিক্ত কাজের চাপও খুব কম।

কৌশলগত স্থানান্তরের মাধ্যমে অগ্রগতির পথ তৈরি করা
কৌশলগতভাবে জেটপ্যাক কম্পোজ গ্রহণ করার মাধ্যমে, টিকটক টেকনিক্যাল ডেট নিয়ন্ত্রণে রাখতে সক্ষম হয়েছিল এবং একই সাথে তাদের ব্যবহারকারীদের জন্য চমৎকার অভিজ্ঞতা তৈরিতে মনোযোগ দেওয়াও অব্যাহত রেখেছিল। কন্ডিশনাল লজিককে পরিচ্ছন্নভাবে পরিচালনা করার এবং কম্পোজিশনকে সুবিন্যস্ত করার কম্পোজের ক্ষমতা দলটিকে নতুন বা সম্পূর্ণরূপে পুনর্লিখিত পেজগুলিতে পেজ লোডিং টাইম ৭৮% পর্যন্ত কমাতে সাহায্য করেছিল। ছোটখাটো ক্ষেত্রে এই উন্নতি ছিল ২০-৩০%, এবং সম্পূর্ণ পুনর্লিখন ও নতুন ফিচারের জন্য ছিল ৭০-৮০%। তারা তাদের কোডের আকারও ৫৮% কমাতে সক্ষম হয়েছিল। ভিউস-এ অন্তর্নির্মিত একই ফিচারের সাথে তুলনা করলে, দলটি আরও কয়েকটি শিক্ষণীয় বিষয় শেয়ার করেছে:
TikTok টিমের সামগ্রিক কৌশল ছিল পর্যায়ক্রমে নির্দিষ্ট ইউজার জার্নিগুলো মাইগ্রেট করা। এটি তাদের মাইগ্রেট করার, পরিমাপযোগ্য সুবিধাগুলো নিশ্চিত করার এবং তারপর আরও স্ক্রিনে তা প্রসারিত করার সুযোগ করে দিয়েছিল। তারা QR কোড ফিচারের সামগ্রিক কাঠামোকে সরল করার জন্য Compose ব্যবহার করে শুরু করেছিল এবং এর উন্নতি দেখতে পেয়েছিল। পরবর্তীতে টিমটি লগইন এবং সাইন-আপ অভিজ্ঞতা পর্যন্ত এই মাইগ্রেশন প্রসারিত করে।
দলটি আরও কিছু শিক্ষা ভাগ করে নিয়েছে:
মাইগ্রেশনের সময় পারফরম্যান্স পরীক্ষা করতে গিয়ে টিকটক টিম দেখতে পায় যে, একটিমাত্র ViewHolder-এর ভেতরের এলিমেন্টগুলো প্রতিস্থাপন করার জন্য অনেকগুলো ছোট ComposeView ব্যবহার করলে কম্পোজিশন ওভারহেড তৈরি হচ্ছিল। পুরো ViewHolder-টির জন্য একটিমাত্র ComposeView ব্যবহার করে মাইগ্রেশনটিকে আরও বিস্তৃত করার মাধ্যমে তারা আরও ভালো ফলাফল অর্জন করে।
পরীক্ষার ভিত্তিতে কাস্টম হাইট লজিক এবং UI লুকানো ও দেখানোর জন্য কন্ডিশনাল লজিক থাকা ViewPager-এর ভেতরের একটি Fragment মাইগ্রেট করার সময় পারফরম্যান্সের উপর কোনো প্রভাব পড়েনি। এক্ষেত্রে, Fragment মাইগ্রেট করার চেয়ে ViewPager-কে Composable-এ মাইগ্রেট করার পারফরম্যান্স ভালো ছিল।
জুন শেন কম্পোজের এই দিকটি খুব পছন্দ করেন যে এটি "ফিচার ডেভেলপমেন্টের জন্য প্রয়োজনীয় কোডের পরিমাণ কমায়, টেস্ট করার সুবিধা বাড়ায় এবং ডেলিভারি দ্রুততর করে"। দলটি ধীরে ধীরে কম্পোজের ব্যবহার বাড়ানোর পরিকল্পনা করছে, যাতে দীর্ঘমেয়াদে এটি তাদের পছন্দের ফ্রেমওয়ার্ক হয়ে ওঠে। জেটপ্যাক কম্পোজ তাদের ডেভেলপার অভিজ্ঞতা এবং প্রোডাকশন মেট্রিক্স উভয়ই বৃহৎ পরিসরে উন্নত করার জন্য একটি শক্তিশালী সমাধান হিসেবে প্রমাণিত হয়েছে।
Jetpack Compose দিয়ে শুরু করুন
Jetpack Compose কীভাবে আপনার দলকে সাহায্য করতে পারে সে সম্পর্কে আরও জানুন।
কেস স্টাডিজনতুন প্রজন্মের অবিবাহিতদের জন্য সাক্ষাৎ প্রক্রিয়াকে সহজ ও মজাদার করে তোলার মাধ্যমে প্রকৃত সংযোগকে শক্তিশালী ও অনুপ্রাণিত করাই টিন্ডারের লক্ষ্য।
Ajesh Pai , Ulises Uriel Verduzco Díaz , Tracy Agyemang • ৪ মিনিট পড়া
কেস স্টাডিজহোয়াটসঅ্যাপ বিশ্বের বৃহত্তম মেসেজিং প্ল্যাটফর্ম, যা বিশ্বব্যাপী কোটি কোটি ব্যবহারকারীকে পরিষেবা প্রদান করে। এটি বিভিন্ন অঞ্চলের মানুষের জন্য যোগাযোগের প্রধান মাধ্যম, যা ব্যক্তিগত, নির্ভরযোগ্য এবং সুরক্ষিত মেসেজিংয়ের মাধ্যমে ব্যবহারকারীদের সংযুক্ত করে।
Niharika Arora , Tracy Agyemang , Mayank Jain • ৮ মিনিট পড়া৷
কেস স্টাডিজবেশিরভাগ অ্যান্ড্রয়েড অ্যাপ তাদের প্রধান ভাষা হিসেবে কোটলিন গ্রহণ করায়, অ্যাসিঙ্ক্রোনাস প্রোগ্রামিংয়ের জন্য kotlinx.coroutines একটি কার্যত স্ট্যান্ডার্ডে পরিণত হয়েছে। এই লাইব্রেরিটি কোটলিনের নিজস্ব একটি সুগঠিত ও পরিকল্পিত উপায়ে কনকারেন্ট ফ্লো পরিচালনা করার পদ্ধতি প্রদান করে।
Jonathan Starup , Andrei Shikov • 7 মিনিট পড়া হয়েছে
অ্যান্ড্রয়েড ডেভেলপমেন্টের সর্বশেষ তথ্য প্রতি সপ্তাহে আপনার ইনবক্সে পান।




