somewhere in... blog
x
ফোনেটিক ইউনিজয় বিজয়

Visitor Design pattern এর সাহায্যে hierarchical object structure কে traverse করা

০৫ ই জুন, ২০০৭ রাত ১০:৩২
এই পোস্টটি শেয়ার করতে চাইলে :

টারগেট রিডার : জাবা ডেভলপার,
যারা visitor design pattern সম্পকে জানেন না তাদের জন্য এই লেখা ।

visitor pattern ব্যবহার হয় object structure কে traverse করার লজিক কে আবজেক্ট এর ভিতর encapsulate করার জন্য, যার ফলে এ পি আই ব্যবহার কারি কে জানতে হবে না কিভাবে একটা object structure কে traverse করতে হয়. এই প‌্যটারন টা সাহায্য করবে traverse সম্পর্কিত concern আলাদা করতে ।
দরুন আপনি নিচের ক্লাস টা ব্যবহার করছেন :

class Tree {
private List mBranches;
public List getBranches() {
return mBranches;
}
}

সাধারন্ত আপনি নিচের কোড গুলো লিখে এই ট্রি থেকে ব্রান্চ গুলো iterate করে থাকেন :

// ....
final List branches = tree.getBranches();
for (final Branch branch : branches) {
// ...
}
// ...

কিন্তু visitor pattern গুরুত্ব দেয় API designer কে অভন্তরীন object structure এবং iterating লজিক কে গোপন রাখতে ।

ত দেখুন এটা কিভাবে কাজ করে :

interface Visitor {
void visit(final Branch pBranch);
}

interface Visitable {
void accept(final Visitor pVisitor);
}

class Tree implements Visitable {
// ... previous code
public void visit(final Visitor pVisitor) {
for (final Branch branch : mBranches) {
pVisitor.visit(branch);
}
}
}

এখনে আমার আসল উদেশ্য হল আমি visitor কে ট্রির ডাল পালা সহ "n" depth পর্যন্ত traverse করতে দিব ।

আমার কিছু পরিবর্তিত ইন্টারফেস টা হল :

interface Visitor {
void visit(final int pDepth, final TreeItem pItem);
}

interface Visitable {
void accept(final Visitor pVisitor);
}

আমাদের ট্রি :

class Tree implements Visitable {
private TreeItem mRootItem;

// ... setter getter
class TreeItem {
private String name;
// .. Setter getter

private List
mTreeItems;

// .. Setter getter
}

public void accept(final Visitor pVisitor) {
visitRecursivlyTreeItem(0, pVisitor, mRootItem);
}

private visitRecursivlyTreeItem(int pLevel, final Visitor pVisitor, final TreeItem pItem) {
pVisitor.visit(pLevel, pItem);
for (final TreeItem item : pVisitor.getTreeItems()) {
visitRecursivlyTreeItem(pLevel + 1, pVisitor, pItem);
}
}
}

আজ এই পর্যন্ত
১টি মন্তব্য ০টি উত্তর

আপনার মন্তব্য লিখুন

ছবি সংযুক্ত করতে এখানে ড্রাগ করে আনুন অথবা কম্পিউটারের নির্ধারিত স্থান থেকে সংযুক্ত করুন (সর্বোচ্চ ইমেজ সাইজঃ ১০ মেগাবাইট)
Shore O Shore A Hrosho I Dirgho I Hrosho U Dirgho U Ri E OI O OU Ka Kha Ga Gha Uma Cha Chha Ja Jha Yon To TTho Do Dho MurdhonNo TTo Tho DDo DDho No Po Fo Bo Vo Mo Ontoshto Zo Ro Lo Talobyo Sho Murdhonyo So Dontyo So Ho Zukto Kho Doye Bindu Ro Dhoye Bindu Ro Ontosthyo Yo Khondo Tto Uniswor Bisworgo Chondro Bindu A Kar E Kar O Kar Hrosho I Kar Dirgho I Kar Hrosho U Kar Dirgho U Kar Ou Kar Oi Kar Joiner Ro Fola Zo Fola Ref Ri Kar Hoshonto Doi Bo Dari SpaceBar
এই পোস্টটি শেয়ার করতে চাইলে :
আলোচিত ব্লগ

গল্পঃ অনুচ্চারিত উত্তর

লিখেছেন ইসিয়াক, ২৯ শে জুন, ২০২৬ ভোর ৬:২০




জীবনের গতিপথ সর্বদাই চলমান। শত বাধা বিপত্তিতে সে থেমে থাকে না। চাইলেও থামানো যায় না।চলছে তো চলছেই ভালো আর মন্দে।

সে সব কত বছর আগের কথা.. সময়ে সবকিছু কত... ...বাকিটুকু পড়ুন

আনন্দ ও শোকে কবিতা সংকলন - অক্টোবর ২০২৫

লিখেছেন বিজন রয়, ২৯ শে জুন, ২০২৬ দুপুর ১২:২৫



আনন্দ বিশ্বকাপ ফুটবল!
শোক ভেনেজুয়েলা ভূমিকম্প!!


এই আনন্দ ও শোকে কবিতা সংকলন পোস্ট অক্টোবর ২০২৫! অনেক দেরি হয়ে গেল! হ্যাঁ অক্টোবর ২০২৫ এর সব কবিতা সংরক্ষিত ছিল, কিন্ত সময়ের অভাবে সময়... ...বাকিটুকু পড়ুন

দ্যা বেবি রেসলার ইন দ্যা ডে কেয়ার সেন্টার- নিজের চোখকেও অবিশ্বাস হয় আজকাল .....

লিখেছেন অপ্‌সরা, ২৯ শে জুন, ২০২৬ দুপুর ২:৩৭


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

ভালোবাসার আলো, স্মৃতি জাগানিয়া তুমি !!!

লিখেছেন স্বপ্নের শঙ্খচিল, ২৯ শে জুন, ২০২৬ বিকাল ৪:৩২



ভালোবাসার আলো, স্মৃতি জাগানিয়া তুমি !!!

(The Hertiest Light, The Fleeting Memory)



তোমার ছোঁয়ায় থমকে দাঁড়ায় চেনা সময়টুকু,
দূরে গেলেই মেঘের ছায়ায় কাঁদে অবুঝ সুখ।
সুন্দর সেই দিনগুলো যায় ,হুট করে... ...বাকিটুকু পড়ুন

বাংলা ব্লগিং-এ দুই দশক - ধন্যবাদ সামহোয়্যার ইন ব্লগ

লিখেছেন ইফতেখার ভূইয়া, ২৯ শে জুন, ২০২৬ রাত ১০:৫৮


দেখতে দেখতে শেষ পর্যন্ত সামুতে ২০ বছর পেরিয়ে গেল, ব্যক্তিগত একটি মাইলস্টোনও পার করা হলো। এই অনুভূতি মূলত মিশ্র। একদিকে আমি যেমন সামহোয়্যার ইন কর্তৃপক্ষের নিকট কৃতজ্ঞ যে দু'দশক... ...বাকিটুকু পড়ুন

×