আরও রিফ্যাক্টরিং বন্ধুত্বপূর্ণ সি ++ রচনা করা
C ++ আপনি না আছে এ সব হেডার ব্যবহার করতে। আপনি সি # বা জাভা দিয়ে ঠিক একই ফাইলটিকে একটি ফাইলে সংজ্ঞায়িত করতে পারেন। সি বিকাশকারীরা সাধারণত একটি শিরোনাম ফাইলে বাহ্যিক কলগুলি রাখবে। সমস্ত অভ্যন্তরীণ কলগুলি .c ফাইলটিতে সংজ্ঞায়িত করা হবে। একই টোকেন দিয়ে, আপনি ক্লাস / ইন্টারফেস (খাঁটি ভার্চুয়াল অ্যাবস্ট্রাক্ট ক্লাস) / ইত্যাদির জন্য আপনার সি ++ .h ফাইলগুলি সংরক্ষণ করতে পারেন। যেগুলি ডিএলএল এর বাইরে ভাগ করে নেওয়া উচিত। অভ্যন্তরীণ ক্লাস / স্ট্রাক্ট / ইন্টারফেস ইত্যাদির জন্য আপনি কেবল আপনার প্রয়োজনীয় .cpp ফাইল অন্তর্ভুক্ত করবেন:
#include<myclass.cpp>
এটি সর্বাধিক জনপ্রিয় পদ্ধতির বলে মনে হচ্ছে না তবে এটি আইনী সি ++। এটি অবশ্যই আপনার সমস্ত অভ্যন্তরীণ কোডের জন্য একটি সম্ভাবনা হবে। আপনার লাইব্রেরির বাইরে এক্সিকিউটেবলের সাথে কোডের জন্য আরও স্থিতিশীল ইন্টারফেস সরবরাহ করার সময় এটি অভ্যন্তরীণ কোড এবং শ্রেণীর সেটগুলিকে অনেক বেশি আমূল পরিবর্তন করতে দেয়।
আপনার পুরো ক্লাসটি একটি ফাইলে থাকা আপনার পছন্দসই কাজটিকে আরও সহজ করে দেবে। এটি কোনও পদ্ধতির নাম বদলে দেওয়ার এবং পদ্ধতিটি যে জায়গাতে ডাকা হয় তার প্রতিটি জায়গার সন্ধান করার সমস্যার সমাধান করবে না, তবে এটি নিশ্চিত করবে যে আপনার আরও বোধগম্য ত্রুটি বার্তা রয়েছে। আপনার শিরোলেখটি কোনওভাবেই একটি পদ্ধতি ঘোষণা করার চেয়ে খারাপ আর কিছু নয়, তবে আপনি এটিকে অন্যভাবে প্রয়োগ করেন। শিরোনাম ফাইলটিকে কল করে এমন অন্যান্য কোডগুলি সঠিকভাবে সংকলন করবে এবং আপনি একটি লিঙ্কের ব্যতিক্রম পাবেন, যখন বাস্তবায়ন ফাইলটি এমন এক হবে যা অভিযোগ করে যে পদ্ধতিটি সংজ্ঞায়িত হয়নি। আপনি যখন প্রতিটি পদ্ধতি যথাযথভাবে সংজ্ঞায়িত করেন (প্রকৃত শ্রেণির ঘোষণায়), আপনি কোনও ফাইল এতে অন্তর্ভুক্ত না করে একই ত্রুটি বার্তা পাবেন।
আপনি এই প্রশ্নটিও দেখতে চাইতে পারেন: সি ++ এর জন্য ভাল রিফ্যাক্টরিং সরঞ্জাম
কীভাবে সি / সি ++ শিরোনাম / বাস্তবায়ন ফাইলগুলি সমাধান করে
বেস সি স্তরে (এবং সি ++ সেই ভিত্তিতে নির্মিত), শিরোনাম ফাইলগুলি কোনও ফাংশন / স্ট্রাক্ট / ভেরিয়েবলের প্রতিশ্রুতি ঘোষণা করে যা একটি সংকলককে অবজেক্ট ফাইল তৈরি করার অনুমতি দেওয়ার জন্য যথেষ্ট। একইভাবে সি ++ শিরোনাম ফাইলগুলি ফাংশন, স্ট্রাক্ট, ক্লাস ইত্যাদির প্রতিশ্রুতি ঘোষণা করে এটি সংজ্ঞাটি স্ট্যাকের মধ্যে স্থান সংরক্ষণ করার জন্য ইত্যাদি ব্যবহার করে etc.
.C বা .cpp ফাইলগুলির প্রয়োগ রয়েছে। সংকলক প্রতিটি বাস্তবায়ন ফাইলকে কোনও অবজেক্ট ফাইলে রূপান্তর করার সাথে সাথে অবিযুক্তি ধারণাগুলিতে (শিরোনামে কী ঘোষণা করা হয়েছিল) হুক রয়েছে। লিঙ্কার হুক্সকে অন্য অবজেক্ট ফাইলে প্রয়োগের সাথে সংযুক্ত করে এবং একটি বৃহত বাইনারি তৈরি করে যা সমস্ত কোড (ভাগ করা লাইব্রেরি বা এক্সিকিউটেবল) অন্তর্ভুক্ত করে।
ভিএস স্পেসিফিক
ভিজ্যুয়াল স্টুডিওতে তাদের সাথে কাজ করার জন্য, কিছু উইজার্ড রয়েছে যা কিছুটা সহজ করতে সহায়তা করে। নতুন শ্রেণীর উইজার্ডটি আপনার শিরোনাম এবং বাস্তবায়ন ফাইলগুলির মিলিত জোড় তৈরি করবে। এমনকি একটি শ্রেণীর ব্রাউজার বৈশিষ্ট্য রয়েছে যা আপনাকে নতুন পদ্ধতিগুলি ঘোষণা করতে দেয় declare এটি শিরোনামে সংজ্ঞা এবং .cpp ফাইলে প্রয়োগের স্টাবকে ইনজেক্ট করবে। ভিজ্যুয়াল স্টুডিওতে এক দশকেরও বেশি সময় ধরে এই বৈশিষ্ট্য রয়েছে (যতক্ষণ না আমি সেগুলি ব্যবহার করেছি)।