CodeGym/Java Blog/சீரற்ற/பகுதி 2. மென்பொருள் கட்டமைப்பைப் பற்றி கொஞ்சம் பேசலாம்
John Squirrels
நிலை 41
San Francisco

பகுதி 2. மென்பொருள் கட்டமைப்பைப் பற்றி கொஞ்சம் பேசலாம்

சீரற்ற குழுவில் வெளியிடப்பட்டது
members
இந்த பொருள் "நிறுவன மேம்பாட்டிற்கான அறிமுகம்" தொடரின் ஒரு பகுதியாகும் . நெட்வொர்க்கிங் பற்றிய முதல் பகுதி இங்கே . பகுதி 2. மென்பொருள் கட்டமைப்பைப் பற்றி கொஞ்சம் பேசலாம் - 1மென்பொருள் கட்டமைப்பு என்பது ஒரு பயன்பாட்டிற்குள் உருவாக்கப்பட்ட கட்டமைப்பைக் குறிக்கிறது, அதாவது முழு நிரலின் தொகுதிகள் மற்றும் கூறுகள் மற்றும் அவை எவ்வாறு தொடர்பு கொள்கின்றன. புரோகிராமர்கள் மிக நீண்ட காலமாக நல்ல கட்டிடக்கலைகளில் பணியாற்றி வருகின்றனர், எனவே பல கட்டிடக்கலை வடிவங்களைப் பற்றி நாம் கேள்விப்பட்டதில் ஆச்சரியமில்லை. நீங்கள் அவற்றைப் புரிந்து கொள்ள வேண்டும்: ஒரு வலை பயன்பாட்டை எழுதும் போது, ​​ஒரு நல்ல கட்டமைப்பைக் கொண்டு வருவது மிகவும் முக்கியமானது, ஏனெனில் ஒரு வலை பயன்பாடு வழக்கமான பயன்பாட்டை விட அதிக கூறுகள் மற்றும் தொகுதிகளைக் கொண்டுள்ளது. ஒரு கட்டடக்கலை முறைசில மென்பொருள் வடிவமைப்பு சிக்கலை தீர்க்க ஒரு சிறந்த வழி. தொழிற்சாலை முறை, சுருக்கமான தொழிற்சாலை, பில்டர், முன்மாதிரி, சிங்கிள்டன் மற்றும் மற்றவை போன்ற வடிவமைப்பு வடிவங்களை நீங்கள் கண்டிருக்கலாம். குறியீட்டை எழுதும்போதும், வகுப்புகளை உருவாக்கும்போதும், வகுப்புகள் எவ்வாறு செயல்பட வேண்டும் என்பதைத் திட்டமிடும்போதும் அவற்றைப் பயன்படுத்துகிறோம். சேவையகங்கள், தரவு மற்றும் பிற கூறுகளுடன் பயனரின் தொடர்புகளைத் திட்டமிடும் போது, ​​கட்டடக்கலை வடிவங்கள் சுருக்கத்தின் உயர் மட்டத்தில் பயன்படுத்தப்படுகின்றன. சில வடிவங்கள் மற்றும் அவற்றை எவ்வாறு பயன்படுத்துவது என்பதை விரைவாகப் பார்ப்போம்.

கிளையண்ட்-சர்வர் கட்டமைப்பு

இந்தப் பெயர் இந்த வடிவத்தைப் பற்றிய அனைத்தும் எளிமையானது மற்றும் தெளிவானது என்ற தோற்றத்தை உருவாக்குகிறது. ஆனால் சில விஷயங்களை தெளிவுபடுத்துவோம், இதன் மூலம் நீங்கள் ஸ்பிரிங் படிக்கத் தொடங்கும் போது நாங்கள் எதைப் பற்றி பேசுகிறோம் என்பதை நீங்கள் புரிந்துகொள்வீர்கள். நீங்கள் அரட்டை பயன்பாட்டை எழுதிவிட்டீர்கள் என்று வைத்துக்கொள்வோம், நீங்களும் ஒரு நண்பரும் அதைப் பயன்படுத்தத் தொடங்குங்கள். அறியப்பட்ட ஐபி முகவரிகளைப் பயன்படுத்தி இணையம் வழியாக நேரடியாக ஒருவருக்கொருவர் செய்திகளை அனுப்பும் மிக எளிய அணுகுமுறையை நீங்கள் பின்பற்றலாம்: பகுதி 2. மென்பொருள் கட்டமைப்பைப் பற்றி கொஞ்சம் பேசலாம் - 2முதலில், உங்கள் நண்பர்களில் ஒருவர் அரட்டையில் சேரும்படி கேட்கும் வரை எல்லாம் சரியாக வேலை செய்யும். எனவே, உங்கள் பரஸ்பர நண்பரை அரட்டையில் சேர்க்க முடிவு செய்தால், நீங்கள் ஒரு கட்டடக்கலை சிக்கலை எதிர்கொள்கிறீர்கள்: ஒவ்வொரு அரட்டை பங்கேற்பாளருக்கும், பயனர்களின் எண்ணிக்கை மற்றும் புதிய பயனர்களின் ஐபி முகவரி பற்றிய தற்போதைய தகவலை நீங்கள் வழங்க வேண்டும். மேலும் ஒரு செய்தி அனுப்பப்பட்டால், அது பங்கேற்பாளர்கள் அனைவருக்கும் வழங்கப்பட வேண்டும். இவை எழும் மிகத் தெளிவான பிரச்சனைகள். குறியீட்டிலேயே மற்றொரு சிக்கல்கள் மறைக்கப்படும். அவற்றைத் தவிர்க்க, நீங்கள் ஒரு சேவையகத்தைப் பயன்படுத்த வேண்டும், இது பயனர்களைப் பற்றிய அனைத்து தகவல்களையும் அவர்களின் முகவரிகள் உட்பட சேமிக்கும். செய்திகளை சேவையகத்திற்கு மட்டுமே அனுப்ப வேண்டும். இது, ஒவ்வொரு பெறுநர்களுக்கும் செய்திகளை அனுப்புகிறது. உங்கள் அரட்டை பயன்பாட்டில் சேவையகப் பகுதியைச் சேர்க்க முடிவு செய்தால், நீங்கள் கிளையன்ட்-சர்வர் கட்டமைப்பை உருவாக்கத் தொடங்குகிறீர்கள்.

கிளையன்ட்-சர்வர் கட்டமைப்பின் கூறுகள்

அது என்னவென்று பார்ப்போம். கிளையன்ட் -சர்வர் கட்டமைப்பு என்பது வலை பயன்பாடுகளை உருவாக்கப் பயன்படும் வடிவமைப்பு வடிவமாகும். இந்த கட்டிடக்கலை மூன்று கூறுகளைக் கொண்டுள்ளது: பகுதி 2. மென்பொருள் கட்டமைப்பைப் பற்றி கொஞ்சம் பேசலாம் - 3
  1. கிளையண்ட் - அதன் பெயரிலிருந்து, இந்த கூறு சில சேவைகளை (இணைய பயன்பாடு) பயன்படுத்துகிறது, சில தகவல்களைக் கோர சேவையகத்தைத் தொடர்பு கொள்கிறது.

  2. சேவையகம் - உங்கள் வலை பயன்பாடு அல்லது அதன் சேவையக பகுதி இங்குதான் உள்ளது. இது தேவையான பயனர் தகவலைச் சேமிக்கிறது அல்லது அதைக் கோரலாம். கூடுதலாக, ஒரு கிளையன்ட் கோரிக்கையை அனுப்பும்போது, ​​கோரப்பட்ட தகவலை வழங்கும் சேவையகம்.

  3. நெட்வொர்க் - இந்த பகுதி எளிமையானது. இது கிளையன்ட் மற்றும் சர்வர் இடையே தகவல் பரிமாற்றத்தை எளிதாக்குகிறது.

வெவ்வேறு பயனர்களிடமிருந்து ஏராளமான கோரிக்கைகளை சர்வர் கையாள முடியும். இதன் பொருள் பல வாடிக்கையாளர்கள் இருக்கலாம். அவர்கள் தங்களுக்குள் தகவல் பரிமாற்றம் செய்ய வேண்டும் என்றால், இது சர்வர் மூலம் நடக்க வேண்டும். எனவே, சேவையகத்திற்கு மற்றொரு செயல்பாடு உள்ளது: போக்குவரத்து கட்டுப்பாடு. எங்கள் பல-பயனர் அரட்டை திட்டத்துடன் தொடர்புடையது, அனைத்து பயன்பாடுகளும் இரண்டு தொகுதிகளைக் கொண்டிருக்கும்:
  • கிளையன்ட் தொகுதி - உள்நுழைவதற்கும் செய்திகளை அனுப்புவதற்கும்/பெறுவதற்கும் வரைகலை இடைமுகம் உள்ளது

  • ஒரு சர்வர் தொகுதி - ஒரு சர்வரில் ஹோஸ்ட் செய்யப்பட்டு பயனர்களிடமிருந்து செய்திகளைப் பெற்று, அவற்றைச் செயலாக்கி, பின்னர் பெறுநர்களுக்கு அனுப்பும் ஒரு வலைப் பயன்பாடு.

பகுதி 2. மென்பொருள் கட்டமைப்பைப் பற்றி கொஞ்சம் பேசலாம் - 4இணையத்தில் பயனுள்ள (அல்லது மிகவும் பயனுள்ளதாக இல்லாத) தகவலைப் பார்க்க விரும்பும்போது, ​​நாங்கள் ஒரு உலாவியைத் திறந்து, தேடல் பட்டியில் வினவலை உள்ளிட்டு, தேடுபொறியிலிருந்து பதிலுக்குத் தகவலைப் பெறுவோம். இந்த சங்கிலியில், உலாவி கிளையன்ட் ஆகும். சேவையகத்திற்கு நாம் தேடுவதைப் பற்றிய தகவலுடன் இது ஒரு கோரிக்கையை அனுப்புகிறது. சேவையகம் கோரிக்கையைச் செயல்படுத்துகிறது, மிகவும் பொருத்தமான முடிவுகளைக் கண்டறிந்து, உலாவி (கிளையன்ட்) புரிந்துகொள்ளக்கூடிய வடிவத்தில் அவற்றைத் தொகுத்து, அவற்றைத் திருப்பி அனுப்புகிறது. தேடுபொறிகள் போன்ற சிக்கலான சேவைகள் நிறைய சேவையகங்களைக் கொண்டிருக்கலாம். எடுத்துக்காட்டாக, அங்கீகார சேவையகம், தகவலைக் கண்டறிவதற்கான சேவையகம், பதிலை உருவாக்குவதற்கான சேவையகம் போன்றவை. ஆனால் கிளையன்ட் இதைப் பற்றி எதுவும் அறிந்திருக்கவில்லை மற்றும் கவலைப்படுவதில்லை: கிளையண்டைப் பொறுத்தவரை, சர்வர் ஒரு ஒருங்கிணைந்த நிறுவனம். வாடிக்கையாளருக்கு நுழைவுப் புள்ளி பற்றி மட்டுமே தெரியும், அதாவது, கோரிக்கைகளை அனுப்ப வேண்டிய சேவையகத்தின் முகவரி. நாங்கள் ஆய்வு செய்த விண்ணப்பத்தை நினைவுகூருங்கள்இந்தத் தொடரின் முந்தைய பகுதி . இது எல்லா நாடுகளிலும் உள்ள சராசரி காற்றின் வெப்பநிலையை உண்மையான நேரத்தில் கண்காணிப்பதற்காக இருந்தது. அதன் கட்டமைப்பு இது போல் தெரிகிறது: பகுதி 2. மென்பொருள் கட்டமைப்பைப் பற்றி கொஞ்சம் பேசலாம் - 5எங்கள் பயன்பாடு சேவையகத்தில் அமைந்துள்ளது. ஒவ்வொரு ஐந்து வினாடிகளுக்கும் உள்ளூர் வானிலை நிலையங்களால் இயக்கப்படும் சேவையகங்களுக்கு கோரிக்கைகளை அனுப்புகிறது, ஒரு குறிப்பிட்ட நாட்டிற்கான வெப்பநிலை தகவலை சேவையகங்களிலிருந்து பெறுகிறது மற்றும் இந்த தகவலை சேமிக்கிறது என்று வைத்துக்கொள்வோம். வாடிக்கையாளர் எங்களிடம் "உலகின் தற்போதைய காற்றின் வெப்பநிலையைப் பார்க்க" கேட்கும் போது, ​​நாடு வாரியாக வரிசைப்படுத்தப்பட்ட மிக சமீபத்தில் சேமிக்கப்பட்ட தகவலை நாங்கள் வழங்குகிறோம். எனவே, எங்கள் பயன்பாடு ஒரு சேவையகமாகவும் (பயனர் கோரிக்கைகளைச் செயல்படுத்தும் போது) மற்றும் கிளையண்ட் (பிற சேவையகங்களிலிருந்து தகவலைப் பெறும்போது) ஆகவும் செயல்படுகிறது.
இங்கே ஒரு முக்கியமான விஷயம்: சேவையகத்தின் கருத்து ஒரு குறிப்பிட்ட கணினியைப் பற்றியது அல்ல, மாறாக பிணைய நிறுவனங்களுக்கு இடையிலான உறவைப் பற்றியது .
ஒரு எளிய கிளையன்ட்-சர்வர் கட்டமைப்பு மிகவும் அரிதாகவே பயன்படுத்தப்படுகிறது மற்றும் மிகவும் எளிமையான பயன்பாடுகளுக்கு மட்டுமே. உண்மையில் பெரிய மற்றும் சிக்கலான திட்டங்களுக்கு, எதிர்காலத்தில் நீங்கள் சந்திக்கும் பல்வேறு கட்டமைப்புகளைப் பயன்படுத்துகிறோம். இப்போது கிளையன்ட்-சர்வர் கட்டமைப்பிற்கு மிகவும் ஒத்த மாதிரியைப் பார்ப்போம்.

மூன்று அடுக்கு கட்டிடக்கலை

இது மூன்றாவது தொகுதியை அறிமுகப்படுத்தும் ஒரு கட்டடக்கலை வடிவமாகும் - தரவு சேமிப்பு . இந்த வடிவத்தில், மூன்று நிலைகள் பொதுவாக அடுக்குகள் அல்லது அடுக்குகள் என்று அழைக்கப்படுகின்றன: பகுதி 2. மென்பொருள் கட்டமைப்பைப் பற்றி கொஞ்சம் பேசலாம் - 6
  1. கிளையன்ட் லேயர் என்பது பயனர் இடைமுகமாகும், இது விளக்கக்காட்சி அடுக்கு என்றும் அழைக்கப்படுகிறது. இது HTML பக்கங்களைப் பெறும் இணைய உலாவியாக இருக்கலாம் அல்லது JavaFX ஐப் பயன்படுத்தி எழுதப்பட்ட வரைகலை பயனர் இடைமுகமாக இருக்கலாம். முக்கிய விஷயம் என்னவென்றால், இந்த அடுக்கு பயனர் சேவையகத்திற்கு கோரிக்கைகளை அனுப்பவும் அதன் பதில்களை செயலாக்கவும் அனுமதிக்கிறது.

  2. லாஜிக் லேயர் என்பது கோரிக்கைகள்/பதில்களை செயலாக்கும் சேவையகமாகும். பெரும்பாலும் இது சர்வர் லேயர் என்றும் அழைக்கப்படுகிறது. இங்குதான் அனைத்து தருக்க செயல்பாடுகளும் நடைபெறுகின்றன: கணித கணக்கீடுகள், தரவு செயல்பாடுகள், பிற சேவைகளுக்கான அழைப்புகள் அல்லது தரவு சேமிப்பகங்கள் போன்றவை.

  3. தரவு அடுக்கு என்பது தரவுத்தள சேவையகம்: எங்கள் சேவையகம் அதனுடன் தொடர்பு கொள்கிறது. இந்த அடுக்கு பயன்பாடு செயல்பட தேவையான அனைத்து தகவல்களையும் சேமிக்கிறது.

எனவே, எங்கள் சேவையகம் தரவை அணுகுவதற்கான அனைத்துப் பொறுப்பையும் ஏற்றுக்கொள்கிறது மற்றும் பயனரை நேரடியாக அணுக அனுமதிக்காது.

மூன்று அடுக்கு கட்டிடக்கலையின் நன்மைகள்

இது போன்ற ஒரு கட்டிடக்கலை நமக்கு பல நன்மைகளைத் தருகிறது, அவற்றுள்:
  1. SQL உட்செலுத்தலுக்கு எதிராக பாதுகாக்கும் திறன் (இது ஒரு சேவையகத்தின் மீதான தாக்குதல்; இது SQL குறியீட்டை அனுப்புவதை உள்ளடக்கியது, செயல்படுத்தப்படும் போது, ​​தாக்குபவர் எங்கள் தரவுத்தளத்தை பாதிக்க அனுமதிக்கிறது).

  2. பயனர் அணுகலைக் கட்டுப்படுத்த விரும்பும் தரவைப் பிரித்தல்.

  3. வாடிக்கையாளருக்கு அனுப்பும் முன் தரவை மாற்றும் திறன்.

  4. அளவிடுதல் (ஒரே தரவுத்தளத்தைப் பயன்படுத்தும் பல சேவையகங்களுக்கு எங்கள் பயன்பாட்டை விரிவாக்கும் திறன்.

  5. பயனர் இணைப்புகளின் தரத்தில் குறைவான கடுமையான தேவைகள். சேவையகத்தில் பதிலை உருவாக்கும் போது, ​​ஒரு தரவுத்தளத்தில் இருந்து பல்வேறு தகவல்களைப் பெற்று, பயனருக்குத் தேவையானதை மட்டும் வடிவமைத்து விடுகிறோம். இதைச் செய்வது வாடிக்கையாளருக்கு நாம் அனுப்பும் தகவலின் அளவைக் குறைக்கிறது.

கட்டடக்கலை வடிவங்களை எவ்வளவு அடிக்கடி பயன்படுத்த வேண்டும்?

தொழிற்சாலை முறை வடிவமைப்பு முறை உங்களுக்குத் தெரிந்திருந்தால் , அதை எப்போது பயன்படுத்த வேண்டும் என்று நீங்கள் யோசித்திருக்கலாம். சில நேரங்களில் என்ன செய்வது என்று தீர்மானிக்க கடினமாக உள்ளது: புதிய ஆபரேட்டரைப் பயன்படுத்தி அல்லது தொழிற்சாலை முறையைப் பயன்படுத்தி ஒரு பொருளை உருவாக்கவும். ஆனால் காலப்போக்கில், புரிதல் வருகிறது. கட்டிடக்கலை வடிவங்களுக்கு வரும்போது விஷயங்கள் கொஞ்சம் வித்தியாசமாக இருக்கும். எண்டர்பிரைஸ் கட்டமைப்புகள் பொதுவாக ஏற்றுக்கொள்ளப்பட்ட சில வடிவங்களின் அடிப்படையில் ஒரு திட்டத்தை உருவாக்க ஒரு புரோகிராமர் அனுமதிக்கும் வகையில் வடிவமைக்கப்பட்டுள்ளன. அதன்படி, ஸ்பிரிங் ஃபிரேம்வொர்க்கைக் கற்றுக்கொள்வதற்கு முன், கிளையன்ட்-சர்வர் கட்டமைப்பு, மூன்று அடுக்கு கட்டமைப்பு மற்றும் எம்விசி கட்டமைப்பு ஆகியவற்றை நீங்கள் நிச்சயமாகப் புரிந்து கொள்ள வேண்டும். கவலைப்பட வேண்டாம்: எம்விசி கட்டிடக்கலை பற்றி இன்னும் பேசுவோம். பகுதி 3. HTTP/HTTPS பகுதி 4. மேவனின் அடிப்படைகள் பகுதி 5. Servlets மற்றும் Java Servlet API. எளிய இணைய பயன்பாட்டை எழுதுதல் பகுதி 6. சர்வ்லெட் கொள்கலன்கள் பகுதி 7. MVC (மாடல்-வியூ-கண்ட்ரோலர்) வடிவத்தை அறிமுகப்படுத்துதல்
கருத்துக்கள்
  • பிரபலமானவை
  • புதியவை
  • பழையவை
ஒரு கருத்தைத் தெரிவிக்க நீங்கள் உள்நுழைந்திருக்க வேண்டும்
இந்தப் பக்கத்தில் இதுவரை எந்தக் கருத்தும் வழங்கப்படவில்லை