Posts

এন্ড্রয়েড (Android) এ Saripaar Library দিয়ে ফরম ভ্যালিডেসন

Image
  আসসালামুয়ালাইকুম , আমরা যারা এন্ড্রয়েড ডেভেলপমেন্ট নিয়ে কাজ করি তারা সবাই হয়তবা ভ্যালিডেসন নাম এর সাথে পরিচিত। কারণ এন্ড্রয়েড ডেভেলপমেন্ট এর প্রায় জায়গায় এটি ব্যবহার করা হয়।যেমন যদি লগইন পেইজ ডিজাইন করি।এখানে ইউজার যদি ইমেইল পাসওয়ার্ড না দিয়ে লগইন বাটন এ ক্লিক করে,তাহলে আমরা এরর দেখাই।হতে পারে  এটি টোস্ট এ অথবা এডিট টেক্সট এ এরর মেসেজ এড করে। এইটা যদি আমরা র  প্রসেস এ করি তাহলে ডিজাইন এ যতগুলো এডিট টেক্সট আছে সবগুলো চেক করার পর এরর টেক্সট এড করতে হবে।এইটা এক সাথে সময় সাপেক্ষ এবং বিরক্তিকর ব্যাপার।আমার ডিজাইন এ যদি ১০ টা যয়গায়  ভ্যালিডেসন করার প্রয়জন হয় তাহলে ইফ ইলস দিয়ে ১০ জায়গায় আমাকে চেক করতে হবে। উফফ, এই সমস্যা সমাধান করতেসে সারিপার   লাইব্রেরি ।শুধু কিছু ইন্টারফেস , এনটেসন  এবং বিলড ইন মেথড ব্যাবহার করেই এই লাইব্রেরি ব্যাবহার করা যায়। 1 st Step গ্রাডেল এ সারিপার লাইব্রেরির ডিপেনডেন্সি এড করতে হবে। যদি কটলিন এ ইমপ্লিমেন্ট করি তাহলে সারিপার লাইব্রেরির সাথে সাথে ভিউ বাইন্ড করার জন্য বাটার নিফ লাইব্রেরি এড করতে হবে। Example, নেট এ সার্চ করে আপডেটেড ভা...

কম Time complexity তে একটি সংখ্যার Divisor বের করার অ্যালগরিদম (Algorithm)

Image
ডিভিসর কি আমরা সবাই হইতবা জানি । তবুও একটু আলোচনা করে নেওয়া যাক । ধরি একটি সংখ্যা ২০, তাহলে এর ডিভিসর হবে ১,২,৪,৫ এবং ২০ । কারন এই সব সংখ্যা দ্বারা ২০ কে ভাগ করা যাবে।তাহলে ডিভিসর কি সেইটা আমরা একটু ঝালিয়া নিলাম।এখন তাহলে এইটার প্রোগ্রাম নিয়ে আলোচনা করি। আমরা সাধারনত ডিভিসর বের করার জন্য একটি লুপ চালিয়া মোড করে বের করে ফেলি।কিন্তু এইভাবে করলে আমাদের প্রোগ্রাম এর Time complexity অনেক বেড়ে যাবে। কারন যদি আমাদের বলা হয় ১০০০০০০০০০ এর ডিভিসর বের করতে দেন আমরা যদি সাধারণ ভাবে করি তাহলে আমাদের ১০০০০০০০০০ বার লুপ ঘুরাইতে হবে।এইটা আমাদের কাছে সহজ হলেও কম্পিউটার এর কাছে তা না।নিচে প্রোগ্রামটি এবং execution time দেখি। তাহলে এখানে execution time ৭ সেকেন্ড। তাহলে আমাদের অউটপুট পেতে সময় লাগবে ৭ সেকেন্ড।যদি আরও বড় ইনপুট দেওয়া হত তাহলে অউটপুট আসতে আরও সময় লাগত। এই প্রোগ্রাম টিকেই আমরা আপডেট করে Time complexity কমিয়ে আনতে পারি। নিচের প্রোগ্রামটা দেখি। এখানে কয়েকটা লাইন বেশী ইমপ্লেমেনট করা হয়েছে। এখন দেখি এখানে কি কি করা হয়েছে।এখানে লুপ এর মধ্যে sqrt ইউস করে আমরা লুপটা ঘুরানো কমাইছি। ১০০০০...