অ্যান্ড্রয়েড বিকাশের জন্য গুগু পেয়ারা লাইব্রেরি ব্যবহার করা কি ভাল ধারণা?


122

আমি অ্যান্ড্রয়েড অ্যাপ্লিকেশন বিকাশের সাথে জড়িত যা একটি ওয়েব পরিষেবার জন্য বরং "ঘন" মোবাইল ক্লায়েন্ট। এটি সার্ভারের সাথে ভারী যোগাযোগ করে তবে এর অভ্যন্তরীণ যুক্তিও অনেক বেশি। সুতরাং, আমি Google Guavaউন্নয়ন প্রক্রিয়াটিকে সহজ করার জন্য লাইব্রেরির কয়েকটি বৈশিষ্ট্য ব্যবহার করার সিদ্ধান্ত নিয়েছি । এখানে আমি আগ্রহী এমন বৈশিষ্ট্যের একটি তালিকা: অপরিবর্তনীয় সংগ্রহ, বেস ব্যবহার, সংগ্রহের এক্সটেনশান, ক্রিয়ামূলক প্রোগ্রামিং চিনি এবং আইডিয়ামস ( common.collectএবং common.base), আদিম ইউটিলিটিস ( common.primitives), হ্যাশিং ইউটিলিটিস ( common.hash) এবং একযোগে ব্যবহার (ফিউচার এবং AsyncFunction)। জিনিষ আমি করতে চান না Android এর মধ্যে ব্যবহার করার জন্য: common.cache(নীচের প্রশ্ন দেখুন), common.eventbus(আমরা যেমন এই জন্য ভাল অ্যান্ড্রয়েড নির্দিষ্ট লিব, have আতর ), common.io(আমরা ব্যবহার করতে পারেন Okio এখনই অ্যান্ড্রয়েডের জন্য)।

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

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


2
" তবে আমি শুনেছি [...] " আপনার উত্সগুলি কী?
jlordo

3
@ জ্লোর্ডো ঠিক আছে আমার সম্পাদনাগুলি দেখুন
ওলেকসান্ডার কারাবেরভ

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

4
appbrain.com/stats/libraries/details/guava/google-guava ইঙ্গিত করে যে পেয়ারা প্রচুর অ্যান্ড্রয়েড অ্যাপ্লিকেশনগুলিতে ব্যবহৃত হয় ।
লুই ওয়াসারম্যান

3
লজ্জাজনক যে নতুন উত্তর পোস্ট করা যাবে না (আমি একজনের জন্য আবার খোলার পক্ষে ভোট দিয়েছি)। কিছু বাস্তব এবং আকর্ষণীয় সমস্যা রয়েছে যেমন 65 কে মেথডের সীমা সম্পর্কিত যা মনোযোগের দাবি রাখে।
জোনিক

উত্তর:


117

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

তদুপরি, পেয়ারা ব্যবহার করে অনেক অ্যান্ড্রয়েড অ্যাপ রয়েছে - কেবল ছোটগুলি নয়, গুগল অনুসন্ধান এবং ইউটিউব যা সরাসরি গুগল থেকে আসে।

( আপনারও সামঞ্জস্যতা নোটটি দেখতে হবে ))


105
আমি পেয়ারা এবং APK এর আকার সম্পর্কে আগ্রহী ছিলাম । সাধারণ পরীক্ষায় নিম্নলিখিতটি প্রকাশিত হয়েছিল: "হ্যালো ওয়ার্ল্ড" এবং আরও বেশি কিছু নয় (ডিবাগ): 27 কেবি ; "হ্যালো ওয়ার্ল্ড" পেয়ারা (15.0) নির্ভরতা এবং গৌণ পেয়ারা ব্যবহার (ডিবাগ) সহ: 705KB ; একই, রিলিজ বিল্ড, প্রোগার্ড: 22 কেবি দিয়ে অনুকূলিতকরণ । এই পরীক্ষাটি একসাথে একটি বৃহত বাস্তব-ওয়ার্ল্ড অ্যাপ্লিকেশন তৈরি করার সময় পেয়ারা ব্যবহার করার সাথে সাথে আমার বিশ্বাসকে নিশ্চিত করেছিল যে পেয়ারা অ্যান্ড্রয়েডেও পুরোপুরি ঠিক আছে!
জোনিক

2
এছাড়াও, যদি আপনি পেয়ারা নির্ভরতা নিয়ে কাজ করার জন্য প্রোগার্ড পেতে সমস্যা বোধ করেন তবে আমি এই পোস্টটি পোস্ট করেছি এই উত্তরটি দেখুন ।
জোনিক

2
পেয়ারা ব্যবহার করে শীর্ষস্থানীয় অ্যাপ্লিকেশনগুলির লিঙ্কে কেবল একটি পর্যবেক্ষণ। আমি ফেসবুক, স্পটিফাই, গুগল ট্রান্সলেট এর ভারী ব্যবহারকারী এবং এগুলি এখনই দ্রুততম অ্যাপগুলি চলছে না? আসলে তারা খারাপ। এফবি আমার আপনাকে বলার দরকার নেই, সর্বশেষ আপডেটের সাথে স্পটিফাই আমাকে প্রিমিয়াম থেকে গ্রোভশার্কে যেতে বাধ্য করেছে। ফেসবুক এবং স্পটিফাই মোবাইলে ব্যবহারকারীর অভিজ্ঞতার সাথে সত্যই লড়াই করে এবং কৌতূহলবশত আমি দেখতে পাচ্ছি যে গুগল ট্রান্সলেট এধরনের সাধারণ কাজের জন্য অনেকটা ধীর হয়ে গেছে। এখন আমি পেয়ারা চেষ্টা করিনি। তবে আমি করার আগে দু'বার ভাবব। এটি লিঙ্কটি হ'ল
albertpeiro

7
পেয়ারা সম্পর্কে সচেতন হওয়ার মতো কিছু হ'ল অ্যান্ড্রয়েড k৫ ক পদ্ধতির সীমা, কারণ পেয়ারা লিবিতে ১৩ কেওরও বেশি পদ্ধতি রয়েছে। আপনি মাল্টিডেক্স যেতে পারেন সীমাতে পৌঁছাতে সমস্যা হওয়া উচিত নয় (তবে আমার এটির প্রথম কোনও অভিজ্ঞতা নেই)। ফিউচারিস অ্যান্ড্রয়েড সেরা অনুশীলন গাইড এ সম্পর্কিত আলোচনা দেখুন ।
জোনিক

3
@ জোনিক আমি কেন জানি না কেন আমি বেশি লোক উল্লেখ করছি না। আপনার অগ্রসর হয়েছে তা নিশ্চিত, তবে এটি কি সত্যই মূল্যবান? ডিবাগ বিল্ডসগুলি সম্পর্কে কী, আপনাকে সেইগুলির উপর অগ্রসর হতে হবে। মাল্টিডেক্সিংকে আমি কোনও সমাধান হিসাবে বিবেচনা করি না। এটি অ্যাপে লোডিংয়ের সময় 2-5 সেকেন্ডে সহজেই যুক্ত করে। সত্যিই বড় প্রকল্পগুলিতে 65k সীমাতে আঘাত করা এতটা কঠিন নয়। ইমো পেয়ারা এমন এক একরঙা যে আমি সত্যই কোনও ভক্ত নই। আমি বরং ছোট, ফোকাসযুক্ত লাইব্রেরি ব্যবহার করব যা নির্দিষ্ট কার্যকারিতার একটি সেট তৈরি করে।
জোওও সউসা
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.