স্ক্র্যাচ থেকে অ্যাপ্লিকেশন তৈরি করার সময়, আমি কি অবজেক্ট-ওরিয়েন্টেড (ওও) মডেল বা সত্তা-সম্পর্ক (ইআর) মডেল দিয়ে শুরু করব?
স্ক্র্যাচ থেকে অ্যাপ্লিকেশন তৈরি করার সময়, আমি কি অবজেক্ট-ওরিয়েন্টেড (ওও) মডেল বা সত্তা-সম্পর্ক (ইআর) মডেল দিয়ে শুরু করব?
উত্তর:
আপনি যতক্ষণ সম্ভব স্থপতি সিদ্ধান্তগুলি বিলম্ব করার নীতিটি পর্যবেক্ষণ করার চেষ্টা করতে চাইতে পারেন। চিন্তাভাবনাটি এই যে, আপনি এখনই আপনার সমস্যার ডোমেন সম্পর্কে ভবিষ্যতে আরও জানবেন - সুতরাং, আপনি আজ যে কোনও সিদ্ধান্ত নেন তা সন্দেহজনক।
এটির সাথে যুক্ত করার আরও একটি ভাল নীতি হতে পারে আপনার প্রয়োজনীয়তার ঝুঁকিপূর্ণ অংশগুলি প্রথমে চেষ্টা করার চেষ্টা করা - এই ধারণাটি হ'ল যে আপনি যদি সহজ অংশগুলি করেন তবে ঝুঁকিপূর্ণ অংশগুলি আপনাকে অন্যদিকে নিয়ে যায়, আপনার কাছে নেই সহজ অংশগুলি পুনরায় করতে। ঝুঁকিপূর্ণ এখানে অর্থ এমন জিনিসগুলির অর্থ যা আপনার কীভাবে করা উচিত তা আপনি নিশ্চিত নন।
এই দুটি দেওয়া হয়েছে এবং প্রদত্ত যে আমি প্রায়শই কোনও ওও দৃষ্টিকোণ থেকে জিনিসগুলির কাছে যাওয়ার চেষ্টা করি, আপনি প্রথমে আপনার আবেদনের ঝুঁকিপূর্ণ অংশগুলির একটি ওও মডেল দিয়ে শুরু করার চেষ্টা করতে পারেন এবং কমপক্ষে কম পরিমাণে কোড প্রয়োগ করতে পারেন যা কাজ করতে পারে যা সন্তুষ্ট করে ঝুঁকিপূর্ণ প্রয়োজনীয়তা। তারপরে, আপনার যা প্রয়োজন তার কার্যকারিতা যুক্ত করতে আপনার ওও মডেলটি প্রসারিত করা শুরু করুন। সবসময়, আপনি এসকিউএল বা নোএসকিউএল বা ফ্ল্যাটফিলস বা ক্লাউড স্টোরেজ বা যা কিছু ব্যবহার করবেন কিনা সে সম্পর্কে আপনার সিদ্ধান্তকে পুরোপুরি বিলম্বিত করতে পারেন ... এবং অবশেষে আপনি খুঁজে পেতে পারেন যে আপনি মোটেও সম্পর্ক চান না (কোনও ইআর মডেলের প্রয়োজনীয়তা অবলম্বন করে)।
ER মডেল নির্দেশ দেয় যে কীভাবে অ্যাপ্লিকেশনটির ডেটা বজায় থাকবে এবং ওও মডেল সিদ্ধান্ত নিয়েছে যে সেই একই ডেটা কীভাবে মেমরিতে সংরক্ষণ করা হবে, বা অ্যাপ্লিকেশন চলমান অবস্থায়। সুতরাং, ডেটাবেস স্কিমা ডিজাইন (ইআর মডেল) এবং শ্রেণি স্টাকচার ডিজাইন (ওও মডেল) সম্পর্কিত নকশাগুলির বিবেচ্য বিষয়গুলি, এবং সাধারণত একসাথে সম্পর্কে চিন্তাভাবনা করা যায়। প্রকৃতপক্ষে, আপনি যদি কোনও অবজেক্ট-রিলেশনাল ম্যাপিং (ওআরএম) সরঞ্জাম ব্যবহার করেন তবে আপনার ইআর মডেল এবং আপনার ওও মডেল এক এবং এক হতে পারে। অন্য কথায়, আপনার ক্লাসগুলি (ওও মডেল) এমনভাবে নোট করা যেতে পারে যে তারা নিজেরাই ইআর মডেলটি নির্দিষ্ট করে।
যদিও ডিজাইনের আগে নিশ্চিত হয়ে নিন যে সফ্টওয়্যারটির আসল প্রয়োজনীয়তাগুলি, এটি কীভাবে ব্যবহার করা হবে, এটি কীভাবে ব্যবহৃত হবে এবং কে এটি ব্যবহার করবে সে সম্পর্কে আপনার কাছে খুব ভাল ধারণা রয়েছে। অনেকগুলি বিকাশকারী পণ্যটির দ্বারা উত্সাহিত করার প্রয়োজনীয়তাগুলি সম্পূর্ণরূপে বোঝার আগে ডিজাইনের সিদ্ধান্তগুলি নিয়ে চিন্তাভাবনা শুরু করে এবং অ্যাপ্লিকেশনটির আসল উদ্দেশ্যটির জন্য উপযুক্ত নয় এমন একটি নকশা শেষ করে।