Showing posts with label Design Patterns. Show all posts
Showing posts with label Design Patterns. Show all posts

সিম্পল ফ্যাক্টরি, ফ্যাক্টরি মেথড আর অ্যাবস্ট্রাক্ট ফ্যাক্টরি ডিসাইন প্যাটার্ন

অক্টোবর ১২, শনিবার লেখা শুরু করে আজকে নভেম্বর ৭, বৃহস্পতিবার।

যেকোনো ডিসাইন প্যাটার্ন বোঝার জন্য সেটা কী সমস্যার সমাধান করে সেটা খুব ভালো করে বোঝা জরুরি।

চলুন একটা কাল্পনিক ঘটনা বা গল্পের মাধ্যমে আজকের ডিসাইন প্যাটার্ন গুলোর উপযোগিতা বোঝার চেষ্টা করি।তার আগে বলে নেই: পুরো আইডিয়া আর কোড "Head First Design Patterns" বই থেকে নিয়ে আমি আমার মতো কিছু পরিবর্তন করে নিয়েছি। সুতরাং পুরো ক্রেডিটটাই ওই বইয়ের লেখকদের প্রাপ্য। আর লেখাটা একটু লম্বা, তাই ধৈর্য ধরে, সময় নিয়ে পড়ার অনুরোধ থাকলো।

পুরো সিম্পল ফ্যাক্টরির কোড, টেস্ট ড্রাইভ কোড সহ এই Repl.it লিংকে দিয়ে দিয়েছি। আর পুরো ফ্যাক্টরি মেথড ডিসাইন প্যাটার্নের কোড, টেস্ট ড্রাইভ কোড সহ এই Repl.it লিংকে দিয়ে দিয়েছি, দেখে নিতে পারেন। রেডি?

অবজার্ভার ডিসাইন প্যাটার্ন (Observer Design Pattern)

অবজার্ভার ডিসাইন প্যাটার্ন (Observer Design Pattern)
মঙ্গলবার, ১৭ সেপ্টেম্বর, ২০১৯। 

যেকোনো ডিসাইন প্যাটার্ন বোঝার জন্য সেটা কী সমস্যার সমাধান করে সেটা খুব ভালো করে বোঝা জরুরি।

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

কম্পোসিট ডিসাইন প্যাটার্ন (Composite Design Pattern)

কম্পোসিট ডিসাইন প্যাটার্ন (Composite Design Pattern)
১০ মে শুক্রবার, ২০১৯


সফটওয়্যার ডিসাইন প্যাটার্নের উপর একটা কোর্স পড়াবো এই অগাস্টে। কোনোকিছু পড়াতে গেলেই বোধহয় ভালোভাবে শেখা হয়। নতুন করে আবার শিখছি বলেই আসলে আজকে লিখতে বসেছি। Coursera -তে ডিসাইন প্যাটার্নের উপরে একটা কোর্স আছে, কানাডার  ইউনিভার্সিটি অফ আলবার্টা-র প্রফেসর Kenny Wong -এর কোর্স। বেশ ভালো একটা কোর্স। কিন্তু মজার ব্যাপার হচ্ছে, কোর্সটা উনি নিজে পড়াচ্ছেন না! এক অভিনেত্রীকে দিয়ে পড়াচ্ছেন! অভিনেত্রী তার সুন্দর উচ্চারণ, বাচনভঙ্গি দিয়ে ভালোই প্রক্সি দিয়ে পড়িয়ে যাচ্ছেন! 

যাই হোক, কম্পোসিট ডিসাইন প্যাটার্নের আজকের লেখাটা এই কোর্স থেকেই নেয়া। আমি শুধু আমার নিজের মতো করে লিখে রাখছি নোট করে রাখার জন্যই। ভুলভ্রান্তি থাকলে ধরিয়ে দেয়ার অনুরোধ থাকলো।  

টেস্ট অটোমেশনে ব্যবহৃত ডিজাইন প্যাটার্ন -TAP অথবা POM

টেস্ট অটোমেশনে ব্যবহৃত ডিজাইন প্যাটার্ন  -TAP অথবা POM
অগাস্ট ৩১, বুধবার, ২০১৬


আগের এক লেখায় বলেছিলাম Seleniam IDE ব্যবহার করার পর ইচ্ছা আছে Selenium WebDriver নিয়ে টেস্ট অটোমেশনের কাজ করবো। কিছুটা কাজ এর মধ্যে করেছি, আর তা করতে গিয়ে Selenium WebDriver নিয়ে যতটা না মুগ্ধ হয়েছি, তার থেকে বেশি হয়েছি প্রজেক্টে ব্যবহৃত ডিজাইন প্যাটার্ন নিয়ে।

Java Enum - নতুন করে যা শিখলাম

Java Enum  - নতুন করে যা শিখলাম
জুন ২২, ২০১৬, বুধবার।

শুরুতেই ডিসক্লেইমার : পুরো লেখাটাই Java Magazine -এর এপ্রিল/মে ২০১৬ সংখ্যায় University of Kent -র প্রফেসর মাইকেল কলিং (Michael Kölling)-এর লেখা একটা আর্টিকেল থেকে নেয়া।

সিঙ্গেলটন ডিজাইন প্যাটার্ন - Singleton Design Pattern

সিঙ্গেলটন ডিজাইনপ্যাটার্ন - Singleton  Design  Pattern
৩০ ডিসেম্বর, ২০১৪, মঙ্গলবার।

আমার মনে হয়, সিঙ্গেলটন ডিজাইন প্যাটার্ন সবচেয়ে বেশি পরিচিত প্যাটার্ন। আমরা অন্য কোনো ডিজাইন প্যাটার্ন না জানলেও, সিঙ্গেলটন ডিজাইন প্যাটার্ন সম্পর্কে কম-বেশি সবাই জানি। তাই, আজকের পোস্ট খুব বেশি বড় করবো না।  

প্রথম প্রশ্ন: সিঙ্গেলটন ডিজাইন প্যাটার্ন কোন সমস্যার সমাধান করে, কখনই বা  ব্যবহার করতে হয় ?

ডেকরেটর ডিসাইন প্যাটার্ন - Decorator Design Pattern

(ডিসেম্বর , ৪, ২০১৪, বৃহস্পতিবার)
ডেকরেটর ডিসাইন প্যাটার্ন:


জাভার উপর যশুয়া ব্লক’র লেখা খুবই জনপ্রিয় একটা বইয়ের নাম: ইফেক্টিভ জাভা। জাভার প্রতিষ্ঠাতা জেমস গসলিং নিজেও বইয়ের প্রশংসা করে বলেছেন যে অনেকেই মনে করে তাঁর কোনো জাভার বইয়ের দরকার নেই, কিন্তু তাঁর এই বইটির দরকার এবং খুব ভালো হত যদি তিনি আরো ১০ বছর আগে বইটি পেতেন!! [১]

VSCode -এ regEx ব্যবহার করে খুব গ্রুপ টেক্সট পরিবর্তনের উপায়

VSCode -এ regEx ব্যবহার করে খুব গ্রুপ টেক্সট পরিবর্তনের উপায়  ৪ জানুয়ারি, ২০২৫, শনিবার  কাজের জায়গায় regEX ব্যবহার করে একটা প্রবেলম সল্ভ করল...