Frame technology (software engineering)
ஃப்ரேம் டெக்னாலஜி (எஃப்டி) என்பது ஒரு மொழி-நடுநிலை (அதாவது, பல்வேறு மொழிகளை செயலாக்குகிறது) அமைப்பாகும், இது பிரேம்கள் என்று அழைக்கப்படும் மறுபயன்பாட்டு, இயந்திர-தகவமைக்கக்கூடிய கட்டுமானத் தொகுதிகளிலிருந்து தனிப்பயன் மென்பொருளை உற்பத்தி செய்கிறது. பெரிய, சிக்கலான மென்பொருள் அமைப்புகளின் வடிவமைப்பு, கட்டுமானம் மற்றும் பரிணாம வளர்ச்சியில் ஈடுபடும் நேரம், முயற்சி மற்றும் பிழைகளைக் குறைக்க எஃப்டி பயன்படுத்தப்படுகிறது. எஃப்டிக்கு அடிப்படையானது ஒத்த ஆனால் நுட்பமாக வெவ்வேறு கூறுகளின் பெருக்கத்தைத் தடுக்கும் திறன் ஆகும், இது மென்பொருள் பொறியியலை பாதிக்கும் ஒரு சிக்கலாகும், இதற்காக நிரலாக்க மொழி கட்டமைக்கிறது (சப்ரூட்டின்கள், வகுப்புகள் அல்லது வார்ப்புருக்கள்/ஜெனரிக்ஸ்) அல்லது மேக்ரோக்கள் மற்றும் ஜெனரேட்டர்கள் போன்ற கூடுதல் நுட்பங்கள் ஒரு நடைமுறை, அளவிடக்கூடிய தீர்வை வழங்கத் தவறிவிட்டன. எஃப்டியின் பல செயல்பாடுகள் உள்ளன. நெட்ரான் ஃப்யூஷன் வணிக மென்பொருளை உருவாக்குவதில் நிபுணத்துவம் பெற்றது மற்றும் தனியுரிமமானது. ஏஆர்டி (தகவமைப்பு மறுபயன்பாட்டு தொழில்நுட்பம்) என்பது எஃப்டியின் ஒரு பொது நோக்க, திறந்த மூல அமலாக்கமாகும். பால் ஜி. பாஸெட் முதல் எஃப்டியை கண்டுபிடித்தார், இது தேவைகள் மற்றும் சூழல்களை மாற்றுவதற்கு ஏற்ப (உருவாக்கப்பட்ட மற்றும் கையால் எழுதப்பட்ட) நிரல்களை மாற்றியமைப்பதில் ஈடுபடும் மீண்டும் மீண்டும், பிழை ஏற்படக்கூடிய எடிட்டிங்கை தானியக்கமாக்குவதற்காக. டொமைன் மாடலிங், தேவைகள் சேகரிப்பு, கட்டமைப்பு மற்றும் வடிவமைப்பு, கட்டுமானம், சோதனை, ஆவணப்படுத்தல், சிறந்த ட்யூனிங் மற்றும் பரிணாமம் உள்ளிட்ட மென்பொருளின் வாழ்க்கைச் சுழற்சியின் பெரும்பாலான அம்சங்களை எஃப்டி எவ்வாறு எளிதாக்கும் என்பதை விளக்கும் கணிசமான இலக்கியம் இப்போது உள்ளது. மாற்று அணுகுமுறைகளுடன் எஃப்டியின் சுயாதீன ஒப்பீடுகள் சிக்கலான அமைப்புகளை உருவாக்குவதற்கும் பராமரிப்பதற்கும் தேவையான நேரத்தையும் வளங்களையும் கணிசமாகக் குறைக்க முடியும் என்பதை உறுதிப்படுத்துகின்றன. ஒரு காரணம்ஃ எஃப்டி புரோகிராமர்களை மென்பொருளின் உள்ளார்ந்த பணிநீக்கங்களிலிருந்து பாதுகாக்கிறதுஃ எஃப்டி மூன்றில் இரண்டு பங்கு சிறிய மற்றும் எளிமையான சமமான எக்ஸ்விசிஎல் பிரேம் நூலகங்களிலிருந்து சிஓடிஎஸ் பொருள்-நூலகங்களை மறுஉருவாக்கம் செய்துள்ளது; தனிப்பயன் வணிக பயன்பாடுகள் வழக்கமாக நெட்ரான் ஃப்யூஷன்எஸ்பிஸி பிரேம்களால் குறிப்பிடப்பட்டு பராமரிக்கப்படுகின்றன, அவை அவற்றின் கூடியிருந்த மூலக் கோப்புகளின் அளவு 5%-15% ஆகும். கீழே உள்ள சட்டகங்கள் இரண்டு முறைசாரா விளக்கங்கள், அதைத் தொடர்ந்து மிகவும் துல்லியமான வரையறை மற்றும் விளக்கம். ஒரு சட்டகம் என்பது ஒரு தானியங்கி மென்பொருள் அசெம்பிளி வரிசையில் மாற்றியமைக்கக்கூடிய கூறு ஆகும். ஒரு கார் தொழிற்சாலையை கற்பனை செய்து பாருங்கள், அங்கு ஒவ்வொரு கார் மாடலிலும் குறிப்பிட்ட பம்பர்கள், ஃபெண்டர்கள் மற்றும் பிற பாகங்கள் இருப்பதற்குப் பதிலாக, எங்களிடம் ஒரு பொதுவான பம்பர், ஒரு பொதுவான ஃபெண்டர் மற்றும் பல உள்ளன. இப்போது இந்த பொதுவான பாகங்களை குளோன் செய்து ஒவ்வொரு கார் மாடலுக்கும் பொருந்தும் வகையில் வடிவமைக்க முடியும் என்று கற்பனை செய்து பாருங்கள். அத்தகைய கற்பனை உற்பத்தியில் புரட்சியை ஏற்படுத்தும்; மேலும் இயற்பியல் பாகங்களுக்கு சாத்தியமற்றது என்றாலும், மென்பொருளுக்கு (மற்றும் பொதுவாக தகவல்) பிரேம்கள் இதைத்தான் செய்கின்றன. ஒரு சட்டகம் என்பது ஒரு (நிரல்) உரையை "சமைப்பதற்கான" ஒரு சமையல் முறையாகும். அதன் அறிவுறுத்தல்கள் அதன் பொருட்கள்-பிரேம்-உரையின் துண்டுகள்-மற்ற பிரேம்களின் பொருட்களுடன் எவ்வாறு கலப்பது என்பதைக் கூறுகின்றன. "சமையல்காரர்" என்பது அறிவுறுத்தல்களைச் செயல்படுத்தும் ஒரு பிரேம் செயலி, அதாவது. பிரேம் கட்டளைகள், இது முக்கிய சமையல் குறிப்புக்கு ஏற்ப தேவையான பொருட்களை மாற்றுகிறது (சேர்க்கிறது, மாற்றியமைக்கிறது, நீக்குகிறது). முறைப்படி, ஒரு பிரேம் என்பது பிரேம்-டெக்ஸ்ட் கொண்ட ஒரு நடைமுறை மேக்ரோ ஆகும்-பூஜ்ஜியம் அல்லது அதற்கு மேற்பட்ட சாதாரண (நிரல்) உரை மற்றும் பிரேம் கட்டளைகள் (இவை தனிப்பயன் நிரல்களை உற்பத்தி செய்யும் போது எஃப்டியின் பிரேம் செயலியால் மேற்கொள்ளப்படுகின்றன). ஒவ்வொரு சட்டமும் கூட்டுக் குழுக்களின் படிநிலையில் ஒரு பொதுவான கூறு மற்றும் அதன் துணைக் குழுக்களுடன் தன்னை ஒருங்கிணைப்பதற்கான ஒரு செயல்முறை (உயர் மட்ட துணைக் குழுக்களுக்கு ஆதரவாக ஒருங்கிணைப்பு மோதல்களைத் தீர்க்கும் ஒரு தொடர்ச்சியான செயல்முறை). வெளியீடுகள் தனிப்பயன் ஆவணங்கள், பொதுவாக தொகுக்கக்கூடிய மூல தொகுதிகள். முக்கிய கட்டளைகள் ஒரு சட்டகத்தை அழைக்கிறது (நிரல் உரைகளை உருவாக்கும் போது, கட்டுமான நேரத்தில் ஏற்படும் ஒரு செயல்முறை அழைப்பு); ஒரு சட்ட அளவுருவிற்கு (ஒரு கட்டுமான-நேர மாறி பணி) ஒரு (பட்டியல்) வெளிப்பாட்டை ஒதுக்குங்கள்; முன், அதற்கு பதிலாக, அல்லது பிரேம்-உரையின் தொகுதிகளுக்குப் பிறகு, அளவுரு வெளிப்பாடுகளால் பெயரிடப்பட்ட பிரேம்-உரையை செருகவும்; ஒரு பிரேம் அளவுருவை (ஒரு கட்டுமான-நேர வெளிப்பாடு மதிப்பீடு) உடனடியாக உறுதிப்படுத்தவும்; செயலாக்கத்திற்கான பிரேம்-உரைகளைத் தேர்ந்தெடுக்கவும் (ஒரு கட்டுமான-நேர வழக்கு அறிக்கை); சில பிரேம் அளவுருக்களை மாற்றும் போது பிரேம்-உரையை மீண்டும் செய்யவும் (அறிக்கையின் போது ஒரு கட்டுமான-நேரம்). செயலி கட்டளைகளை சாதாரண உரையுடன் மாற்றுவதன் மூலமும், சாதாரண உரையை வெளியிடுவதன் மூலமும் சட்டக உரையை மாற்றுகிறது. எடுத்துக்காட்டுகள்ஃ இது அழைக்கப்பட்ட சட்டகத்தை செயலாக்குவதன் விளைவாக ஒரு அழைப்பை மாற்றுகிறது; இது ஒரு ஒதுக்கீட்டை ஒன்றுமில்லாமல் மாற்றுகிறது; மேலும் ஒரு இன்ஸ்டான்டியேட் என்பது சட்ட அளவுருவின் ஒதுக்கப்பட்ட வெளிப்பாட்டை மதிப்பிடுவதன் விளைவாக சாதாரண உரையாக மாறுகிறது, இது சரங்கள், எண்கணித வெளிப்பாடுகள் மற்றும் உள்ளமைக்கப்பட்ட சட்ட அளவுருக்களின் ஒருங்கிணைப்பாக இருக்கலாம். கூறு உறவுகள் பிரேம்களுக்கு இடையே கூறு உறவுகளை அமைக்கின்றன. எடுத்துக்காட்டாக, படம் 1 இல்ஃ F என்பது J இன் கூறு மற்றும் C என்பது J இன் துணை கூறு ஆகும். நிச்சயமாக, பல கூறுகள் அதே துணை கூறுகளை அழைக்கலாம், I மற்றும் J இல் F ஐ அழைப்பது போல, ஒவ்வொன்றும் வெவ்வேறு உரையை உருவாக்குகின்றன. ஒட்டுமொத்த கூறு அமைப்பு ஒரு பொதுவான அரைகுறையை உருவாக்குகிறது, ஒவ்வொரு சட்டகமும் ஒரு துணை கூட்டத்தின் வேர் ஆகும். எனவே சி அதன் சொந்த துணைக்கூறு; எஃப் மற்றும் சி ஆகியவை எஃப் துணைக்கூறு கூட்டத்தின் கூறுகள், மற்றும் ஜே, எஃப் மற்றும் சி ஆகியவை ஜே துணைக்கூறு கூட்டத்தின் கூறுகள். சூழல் வரம்பு என்பது எஃப்டியை மற்ற மாடலிங் மற்றும் கட்டுமான அமைப்புகளிலிருந்து வேறுபடுத்துகிறதுஃ ஒவ்வொரு சட்டகமும் அதன் துணை கூட்டத்தை ஒருங்கிணைக்கும் சூழலை உருவாக்குகிறது. உள்ளமைக்கப்பட்ட துணைக் கூட்டங்களில் கீழ் நிலைகள் படிப்படியாக அதிக சூழல் இல்லாதவை, ஏனெனில் அவை குறைந்த தகவல்களை ஒருங்கிணைக்கிறது. ஒருங்கிணைப்பு மோதல்கள் ஒரு அளவுருவை ஒதுக்க அல்லது செருக மிகவும் சூழல்-உணர்திறன் சட்டகத்திற்கு ஆதரவாக தீர்க்கப்படுகின்றன-அது அந்த சட்டகத்தின் துணைக்குழுவில் உள்ள மற்ற அனைத்து சட்டகங்களுக்கும் படிக்க மட்டுமே. படம் 1 இல், பிரேம்கள் எஃப் மற்றும் சி ஆகியவை அளவுரு p க்கு வெவ்வேறு மதிப்புகளை ஒதுக்கினால் முரண்படும். எனவே எஃப் சி-ஐ மீறுகிறது, அதாவது பிரேம் செயலி சி இன் வேலையை (களை) p க்கு புறக்கணிக்கிறது, மேலும் எஃப் மற்றும் சி இல் p க்கு எஃப் இன் மதிப்பை (களை) பயன்படுத்துகிறது. இதேபோல், ஜே எஃப் மற்றும் சி இரண்டையும் மீறலாம், மற்றும் பல. சூழல்-வரம்பு முக்கியமானது, ஏனெனில் கொடுக்கப்பட்ட சூழலுக்கு எந்த எண்ணிக்கையிலான (துணை) கூறுகளையும் பொருத்துவதற்குத் தேவையான அனைத்து மாற்றங்களும் வெளிப்படையானவை மற்றும் அந்த சூழலுக்கு உள்ளூர். சூழல் வரம்பு இல்லாமல் இத்தகைய மாற்றங்கள் பெரும்பாலும் மறைமுகமானவை, சிதறியவை மற்றும் கூறு வகைகளுக்குள் மறைக்கப்பட்டுள்ளன. இத்தகைய மாறுபாடுகள் பெருகுவது மட்டுமல்லாமல், தேவையற்ற பணிநீக்கம் மற்றும் சிக்கலை ஏற்படுத்துகின்றன, ஆனால் கணினி பரிணாமம் தேவையில்லாமல் கடினமாகவும் பிழைகள் ஏற்படக்கூடியதாகவும் உள்ளது. விவரக்குறிப்பு சட்டகங்கள் மற்றும் வார்ப்புருக்கள் ஒரு விவரக்குறிப்பு சட்டகம் (எஸ். பி. சி) ஒரு முழு அசெம்பிளியின் மிக உயர்ந்தது, எனவே மிகவும் சூழல்-உணர்திறன் சட்டகம். ஒரு முழுமையான நிரல் அல்லது துணை அமைப்பைத் தயாரிப்பதற்காக, படம் 1 இல் உள்ள எல் அல்லது எம் போன்ற எஸ். பி. சி. யில் செயலி தொடங்குகிறது. கொள்கையளவில் ஒரு எஸ். பி. சி ஒவ்வொரு விவரத்தையும் தனிப்பயனாக்க முடியும் என்றாலும், நடைமுறையில் ஒரு எஸ். பி. சி என்பது அதன் முழு அசெம்பிளியிலும் ஒரு சிறிய பகுதியாகும், ஏனெனில் பெரும்பாலான விதிவிலக்குகள் (மற்றும் விதிவிலக்குகளுக்கு விதிவிலக்குகள் போன்றவை) ஏற்கனவே பல்வேறு துணை அசெம்பிளி பிரேம்களால் கையாளப்பட்டுள்ளன. ஒரு பிரேம் நூலகத்தைப் பொறுத்தவரை, எஸ். பி. சி. க்கள் தர்க்கரீதியாக அவர்கள் உருவாக்கும் நிரல்களை உள்ளடக்குகின்றன, இதனால் எஸ். பி. சி. க்கள் மூலக் கோப்புகளை முதன்மை கட்டுப்பாட்டு புள்ளிகளாக மாற்றுகின்றன. நிரல்களை உருவாக்கும் எஸ். பி. சி. க்களை உருவாக்க வார்ப்புருக்களைப் பயன்படுத்துவது வழக்கமான நடைமுறையாகும், பின்னர் அந்த நிரல்களை காலவரையின்றி நிர்வகிக்கவும் உருவாக்கவும் எஸ். பி. சி. க்களைப் பயன்படுத்தவும். இந்த நடைமுறை பயன்பாட்டு புரோகிராமர்கள் தெரிந்து கொள்ள வேண்டிய மற்றும் நிர்வகிக்க வேண்டிய விவரங்களின் எண்ணிக்கையை பெரிதும் குறைக்கிறது. மூல உரைகளை கையால் நகலெடுப்பதிலும் திருத்துவதிலும் உள்ளார்ந்த பணிநீக்கங்கள், சிக்கல்கள் மற்றும் பிழைகளையும் இது தவிர்க்கிறது. பெரும்பாலான கூறுகள் மீண்டும் பயன்படுத்தப்படுவதால் பிழைத்திருத்தம் செய்யும் நேரமும் சுருங்குகிறது, எனவே முன்கூட்டியே சோதிக்கப்படுகிறது. பிழைகள் எஸ். பி. சி. களில் உள்ளூர்மயமாக்க முனைகின்றன, ஏனெனில் அவை மிகக் குறைவாக சோதிக்கப்பட்டவை. ஒரு டெம்ப்ளேட் என்பது ஒரு ஆர்க்கிடைபல் எஸ். பி. சி ஆகும், அதை எவ்வாறு தனிப்பயனாக்குவது என்பதை விளக்கும் உட்பொதிக்கப்பட்ட கருத்துகளுடன். பொதுவாக, ஒரு சிறிய எண்ணிக்கையிலான நிரல்கள் உள்ளன, ஒவ்வொரு வகையும் ஒரு வார்ப்புருவால் வகைப்படுத்தப்படுகின்றன. அதை நகலெடுத்து நிரப்புவதன் மூலம், புரோகிராமர்கள் தங்களுக்கு என்ன பிரேம்கள் தேவை, அவற்றின் கூறு உறவுகள் அல்லது பொதுவாக எந்த விவரங்களைத் தனிப்பயனாக்க வேண்டும் என்பதை நினைவில் கொள்ளாமல் ஒரு டெம்ப்ளேட்டை ஒரு எஸ். பி. சி. யாக மாற்றுகிறார்கள். ஒரு எஃப்டி அடிப்படையிலான, டொமைன்-குறிப்பிட்ட மொழி (எஃப்டி-டிஎஸ்எல்) என்பது ஒரு டொமைன்-குறிப்பிட்ட மொழியாகும், அதன் சொற்பொருள்கள் (நிரல் குறியீட்டில் வெளிப்படுத்தப்படுகின்றன) பிரேம்களாக வடிவமைக்கப்பட்டுள்ளன. ஒரு வழக்கமான எஃப்டி-டிஎஸ்எல் எடிட்டர் டிஎஸ்எல் வெளிப்பாடுகளுக்கும் ஒரு சட்டகத்திற்கும் இடையில் மொழிபெயர்க்கிறது, இது டிஎஸ்எல் வெளிப்பாடுகளின் நிரல்-குறியீடு சமமானவற்றை வெளிப்படுத்த கட்டமைக்கப்பட்ட சொற்பொருள்களை மாற்றியமைக்கும். இந்த துணைக்குழுவின் மேல் அமர்ந்திருக்கும் ஒரு எஸ். பி. சி பின்னர் டொமைன்-குறிப்பிட்ட மொழியில் விவரிக்க முடியாத எந்தவொரு தனிப்பயனாக்குதலையும் நிரல் குறியீட்டில் குறிப்பிடலாம். எனவே பயனர்கள் மாற்றியமைக்கப்பட்ட டி. எஸ். எல் வெளிப்பாடுகளிலிருந்து நிரல் குறியீட்டை மீண்டும் உருவாக்கும்போது, முந்தைய தனிப்பயனாக்கல்கள் இழக்கப்படுவதில்லை. ஃப்ரேம் இன்ஜினியரிங் ஃப்ரேம் இன்ஜினியரிங் ஒரு ஃப்ரேம் தொழில்நுட்ப சூழலுக்கு மென்பொருள் பொறியியலைப் பயன்படுத்துகிறது. கள பகுப்பாய்வு, வடிவமைத்தல், எழுதுதல், சோதனை செய்தல் மற்றும் அவை உருவாக்கும் அமைப்புகளுடன் இணைந்து உருவாகும் கட்டமைப்புகள் ஆகியவை இதில் அடங்கும். ஃப்ரேமிங் கீழ்-மேல் மற்றும் மேல்-கீழ் ஆகிய இரண்டிலும் நிகழ்கிறது. கீழே, பிரேம் பொறியாளர்கள் பொதுவாக ஒத்த நிரல் கூறுகளின் (எந்தவொரு கிரானுலாரிட்டியும், உரை துணுக்குகள் முதல் துணை அமைப்புகள் வரை) குழுக்களை பொதுவான சமமானவையாக ஒருங்கிணைத்து அளவுருவை உருவாக்குவதன் மூலம் பிரேம்களை உருவாக்குகிறார்கள். மேல்-கீழ் அணுகுமுறை கள நிபுணத்துவத்தை மறுசுழற்சி முன்மாதிரி சுத்திகரிப்புடன் ஒருங்கிணைக்கிறது, பயன்பாடு மற்றும் கட்டிடக்கலை தேவைகள், பெருநிறுவன தரநிலைகள் மற்றும் முதலீட்டை விட அதிகமான வருவாயைக் கொண்ட மறுபயன்பாட்டு சொத்துக்களின் தொகுப்பை உருவாக்குவதற்கான விருப்பம் ஆகியவற்றால் கட்டுப்படுத்தப்படுகிறது. (சட்டக நூலகங்களின் மொத்த அளவை அதன் விளைவாக உருவாகும் கட்டமைப்புகளின் மொத்த அளவாகப் பிரிப்பதன் மூலமும்,/அல்லது தனிப்பட்ட சட்டகங்களின் மறுபயன்பாடுகளை எண்ணுவதன் மூலமும் மறுபயன்பாடு அளவிடப்படுகிறது.) ஒரு முதிர்ந்த சட்டக நூலகம் செலவு-செயல்திறனை மேம்படுத்துகிறது, ஏனெனில் மென்பொருள் திட்ட பங்குதாரர்கள் ஒரு அமைப்பின் புதுமைகளுக்கு தங்கள் கவனத்தை கட்டுப்படுத்தலாம், அதன் வலுவான கூறுகள் மற்றும் கட்டமைப்பின் பெரும்பகுதியை ஒரு பொருட்டாக எடுத்துக் கொள்ளலாம். ஒரு முதிர்ந்த நூலகம் நிலையானது அல்ல. பிரேம் பொறியாளர்கள், தேர்ந்தெடுக்கப்பட்ட கட்டளையைப் பயன்படுத்தி, மீண்டும் பயன்படுத்தக்கூடிய பிரேம்களை காலவரையின்றி உருவாக்கலாம், பிரேம்களின் முந்தைய பதிப்புகளிலிருந்து தயாரிக்கப்பட்ட நிரல்களுக்கு மறுசீரமைப்புகள் தேவையில்லாமல் புதிய தேவைகளைப் பூர்த்தி செய்யலாம். அடிக்குறிப்புகள் மூலக் குறியீடு உருவாக்கம்