தொழிற்சாலை மாதிரி அறிமுகம்
டிசைன் பேட்டர்ன் என்பது மென்பொருள் வடிவமைப்பில் மீண்டும் வரும் சிக்கல்களைத் தீர்க்கும் முறையாகும். Factory Pattern என்பது ஒரு நெகிழ்வான மற்றும் துண்டிக்கப்பட்ட முறையில் பொருட்களை உருவாக்க உதவும் வடிவமைப்பு வடிவங்களில் ஒன்றாகும்.
Factory Pattern என்பது C++ இல் உள்ள ஒரு ஆக்கப்பூர்வமான வடிவமைப்பு வடிவமாகும், இது பொருளின் வகுப்பை வெளிப்படையாகத் தெரியாமல் உருவாக்க அனுமதிக்கிறது. இது ஒரு தனி தொழிற்சாலை வகுப்பிற்குள் சிக்கலான பொருள் உருவாக்கும் தர்க்கத்தை இணைக்கும் வழியை வழங்குகிறது. பொருள்களை உருவாக்குவதற்கான பொதுவான இடைமுகத்தை வரையறுப்பதன் மூலம் இது செய்யப்படுகிறது, அங்கு பொருளின் குறிப்பிட்ட வகுப்பு இயக்க நேரத்தில் தீர்மானிக்கப்படுகிறது.
ஒரு பொருளை நேரடியாக உருவாக்குவதற்குப் பதிலாக, நாம் விரும்பும் பொருளின் உதாரணத்தைக் கொடுக்க தொழிற்சாலை முறையைப் பயன்படுத்துகிறோம். இந்த வழியில், பொருளை உருவாக்குவதில் உள்ள சிக்கலான படிகளை மறைத்து, எதிர்காலத்தில் பொருளை மாற்ற அல்லது மாற்றுவதை எளிதாக்கலாம்.
தொழிற்சாலை வடிவத்தை ஏன் பயன்படுத்த வேண்டும்?
தொழிற்சாலை வடிவத்தை நாம் பயன்படுத்த விரும்புவதற்கு பல காரணங்கள் உள்ளன. ஒரு காரணம், இது குறிப்பிட்ட வகுப்புகளிலிருந்து குறியீட்டை துண்டிக்க அனுமதிக்கிறது. தொழிற்சாலை முறையைப் பயன்படுத்துவதன் மூலம், வேறு எந்தக் குறியீட்டையும் மாற்றாமல், ஒரு வகுப்பை மற்றொரு வகுப்பிற்கு எளிதாக மாற்றலாம் மற்றும் அதை மிகவும் திறமையாக மாற்றலாம்.
தொழிற்சாலை வடிவத்தைப் பயன்படுத்துவதற்கான மற்றொரு காரணம், இது குறியீட்டை மேலும் சோதிக்கக்கூடியதாக மாற்றும். தொழிற்சாலை வடிவங்கள் போலி பொருட்களை உருவாக்குவதன் மூலம் குறியீட்டை சோதிக்க அனுமதிக்கின்றன.
தொழிற்சாலை முறை C++ இல் பயன்படுத்தப்படுவதற்கான சில காரணங்கள் இங்கே:
- ஒரு வர்க்கம் என்ன பொருட்களை உருவாக்க வேண்டும் என்பதை முன்கூட்டியே அறியாதபோது தொழிற்சாலை முறை முறை பயன்படுத்தப்படுகிறது.
- ஒரு வர்க்கம் அது உருவாக்கும் பொருட்களைக் குறிப்பிட அதன் துணைப்பிரிவுகளை நம்பியிருக்கும் போது முறை பயன்படுத்தப்படுகிறது.
- ஒரு சிக்கலான பொருளை ஒரே இடத்தில் உருவாக்குவதற்கான தர்க்கத்தை நீங்கள் இணைக்க விரும்பினால் இது பயனுள்ளதாக இருக்கும்.
C++ இல் உள்ள தொழிற்சாலை வடிவத்தின் எடுத்துக்காட்டு
C++ இல், விர்ச்சுவல் பேக்டரி முறையுடன் ஒரு சுருக்க அடிப்படை வகுப்பை வரையறுப்பதன் மூலம் தொழிற்சாலை வடிவத்தை செயல்படுத்தலாம். இந்த முறை விரும்பிய வகுப்பு நிகழ்விற்கு ஒரு சுட்டிக்காட்டி திரும்ப வேண்டும். அதன் பிறகு, இந்த அடிப்படை வகுப்பிலிருந்து உறுதியான வகுப்புகளைப் பெறலாம் மற்றும் பொருத்தமான வகுப்பின் உதாரணத்தை வழங்குவதற்கு தொழிற்சாலை முறையை மேலெழுதலாம்.
தொழிற்சாலை வடிவத்தின் இந்த செயலாக்கத்தை நாம் எவ்வாறு பயன்படுத்தலாம் என்பதற்கான எடுத்துக்காட்டு இங்கே:
#பெயர்வெளி std ஐப் பயன்படுத்துகிறது ;
வர்க்க வடிவம் {
பொது :
மெய்நிகர் வெற்றிடமானது வரை ( ) = 0 ;
நிலையான வடிவம் * உருவாக்கு வடிவம் ( முழு எண்ணாக வகை ) ;
} ;
வகுப்பு வட்டம் : பொது வடிவம் {
பொது :
வெற்றிடமானது வரை ( ) {
கூட் << 'ஒரு வட்டம் வரைதல்.' << endl ;
}
} ;
வர்க்க செவ்வகம் : பொது வடிவம் {
பொது :
வெற்றிடமானது வரை ( ) {
கூட் << 'ஒரு செவ்வகத்தை வரைதல்.' << endl ;
}
} ;
வடிவம் * வடிவம் :: உருவாக்கு வடிவம் ( முழு எண்ணாக வகை ) {
என்றால் ( வகை == 1 ) {
திரும்ப புதிய வட்டம் ( ) ;
} வேறு என்றால் ( வகை == 2 ) {
திரும்ப புதிய செவ்வகம் ( ) ;
} வேறு {
திரும்ப nullptr ;
}
}
முழு எண்ணாக முக்கிய ( ) {
வடிவம் * வட்டம் = வடிவம் :: உருவாக்கு வடிவம் ( 1 ) ;
வட்டம் -> வரை ( ) ;
வடிவம் * செவ்வகம் = வடிவம் :: உருவாக்கு வடிவம் ( 2 ) ;
செவ்வகம் -> வரை ( ) ;
திரும்ப 0 ;
}
இந்த எடுத்துக்காட்டில், வட்டம் மற்றும் செவ்வகம் ஆகிய இரண்டு பெறப்பட்ட வகுப்புகளைக் கொண்ட வடிவ வகுப்பு உள்ளது. ஷேப் கிளாஸ் ஒரு தூய மெய்நிகர் செயல்பாடு டிரா(), இது பெறப்பட்ட வகுப்புகளால் செயல்படுத்தப்படுகிறது. ஷேப் கிளாஸ் க்ரியேட்ஷேப்(int வகை) என்ற நிலையான செயல்பாட்டையும் கொண்டுள்ளது, இது குறிப்பிட்ட வகையின் அடிப்படையில் பெறப்பட்ட வகுப்புகளின் நிகழ்வுகளை உருவாக்க ஒரு தொழிற்சாலை முறையாக செயல்படுகிறது. உருவாக்கப்பட்ட பொருள்களின் குறிப்பிட்ட நடத்தையை வெளிப்படுத்த, டிரா() செயல்பாடு அழைக்கப்படுகிறது.
முடிவுரை
Factory Pattern என்பது C++ இல் உள்ள ஒரு ஆக்கப்பூர்வமான வடிவமைப்பு வடிவமாகும், இது பொருளின் வகுப்பை வெளிப்படையாகத் தெரியாமல் உருவாக்க அனுமதிக்கிறது. இது ஒரு தொழிற்சாலை வகுப்பின் பின்னால் சிக்கலான உருவாக்க தர்க்கத்தை மறைத்து பொருட்களை உருவாக்குவதற்கான எளிமையான இடைமுகத்தை வழங்குகிறது. பொருள்களை உருவாக்குவதற்கான பொதுவான இடைமுகத்தை வரையறுப்பதன் மூலம் இது செய்யப்படுகிறது, அங்கு பொருளின் குறிப்பிட்ட வகுப்பு இயக்க நேரத்தில் தீர்மானிக்கப்படுகிறது. இந்த கட்டுரையில் தொழிற்சாலை வடிவங்களைப் பற்றி மேலும் வாசிக்க.