আমি ও-এর মতো কৌশল ব্যবহার করে সি-তে একটি মাঝারি এমবেডেড অ্যাপ্লিকেশন নিয়ে কাজ করছি। আমার "ক্লাস" হ'ল .h / .c মডিউলগুলি ডেটা স্ট্রাক্ট এবং ফাংশন পয়েন্টার স্ট্রাক্টগুলি এনক্যাপসুলেশন, পলিমারফিজম এবং নির্ভরতা ইনজেকশন অনুকরণ করতে ব্যবহার করে।
এখন, কেউ প্রত্যাশা করবে যে কোনও myModule_create(void)
অনুষ্ঠান একটি myModule_destroy(pointer)
প্রতিপক্ষের সাথে আসবে । তবে প্রকল্পটি এম্বেড করা হচ্ছে, বাস্তবসম্মতভাবে ইনস্ট্যান্ট করা সংস্থানগুলি কখনই প্রকাশ করা উচিত নয়।
আমি বলতে চাইছি, যদি আমার কাছে 4 টি ইউআরটি সিরিয়াল বন্দর থাকে এবং আমি তাদের প্রয়োজনীয় পিন এবং সেটিংস সহ 4 টি ইউআরটি দৃষ্টান্ত তৈরি করি, রানটাইম চলাকালীন কোনও সময়ে ইউআরটি # 2 ধ্বংস করার কোনও কারণ নেই।
সুতরাং ইয়াগনি (আপনার এটি প্রয়োজন হবে না) নীতি অনুসরণ করে, আমি কি ধ্বংসকারীদের বাদ দিতে পারি? এটি আমার কাছে অত্যন্ত অদ্ভুত মনে হলেও আমি তাদের ব্যবহারের কথা ভাবতে পারি না; ডিভাইসটি বন্ধ হয়ে গেলে সম্পদগুলি মুক্ত হয়।
myModule_create(void)
কার্যকারিতা থাকবে? আপনি যে ইন্টারফেসটি প্রকাশ করবেন তার মধ্যে আপনি যে নির্দিষ্ট উদাহরণগুলি ব্যবহারের প্রত্যাশা করেছেন তা কেবল হার্ড-কোড করতে পারেন।