ஒரு தொடக்கக்காரருக்கு, பொருள் சார்ந்த, செயல்பாட்டு மற்றும் நடைமுறை நிரலாக்கத்திற்கும் இடையிலான வேறுபாட்டை எவ்வாறு விளக்குவீர்கள்?


மறுமொழி 1:

எல்லா நிரலாக்கங்களும் சிக்கல் தீர்க்கும். நீங்கள் சிக்கலை எவ்வாறு தாக்குகிறீர்கள் என்பதில் வித்தியாசம் உள்ளது.

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

பொருள் சார்ந்த நிரலாக்கமானது கட்டாயக் குறியீட்டை கட்டமைப்பதற்கான ஒரு முயற்சி. இது சிக்கல் பகுதியில் உள்ள பல்வேறு கருத்துகளின் மாதிரிகளை உருவாக்கி அவற்றைப் பயன்படுத்துகிறது. இந்த மாதிரிகள் ("பொருள்கள்") செயல்பாட்டு ("முறைகள்") வழங்கப்படுகின்றன, அவை பல்வேறு செயல்களைச் செய்ய அனுமதிக்கின்றன, மேலும் ஒவ்வொரு பொருளும் தகவல்களை வைத்திருக்க முடியும். OOP இல் உள்ள அடிப்படை அலகு பொருள், இது ரஷ்ய மேட்ரியோஷ்கா பொம்மை போன்ற ஒரு பிட் மேலும் பொருள்களைக் கொண்டிருக்கலாம். மனித புரோகிராமர்கள் திட்டத்தை கான்கிரீட் விஷயங்களுடன் இணைப்பதன் மூலம் நிரலைக் காண்பதை எளிதாக்குவதே இதன் யோசனை, இது விஷயங்களை தர்க்கரீதியாக தொகுக்க உதவுகிறது.

செயல்பாட்டு நிரலாக்கமானது சிக்கலான பகுதியை சமன்பாடுகளின் சங்கிலியாக ("செயல்பாடுகள்") ஒன்றாகக் கருதுகிறது, இது பதில்களுக்கு வழிவகுக்கும் வரையறைகளின் முன்னேற்றம். தகவல் பல கோட்பாடுகளாகத் தொடங்கி பதிலில் முடிவடைகிறது (இது திரையில் நீங்கள் காண்பதில் முடிவடையும் தர்க்கரீதியான வாதமாக நினைத்துப் பாருங்கள்). செயல்பாட்டு நிரலாக்கமானது முறையான கணிதத்திலிருந்து பல கருத்துக்களைக் கடன் வாங்குகிறது, மேலும் கணிதத்தைப் போலவே (மற்றும் இம்பரேட்டிவ் புரோகிராமிங் அல்லது ஓஓபி போலல்லாமல்), இது வழக்கமாக படிகளுக்கு இடையில் தரவைச் சேமிக்காது. செயல்பாட்டு நிரலாக்கத்தின் அடிப்படை அலகு செயல்பாடு ஆகும், இது செயல்பாடுகளைச் செய்வதோடு மேலும் செயல்பாடுகளை உருவாக்க முடியும்.

நிரலாக்கத்தின் இந்த மூன்று முன்னுதாரணங்கள் (மற்றும் இந்த பதிலின் எல்லைக்கு அப்பாற்பட்டவை) அனைத்தும் தரவை முன்னும் பின்னுமாக அனுப்ப உங்களை அனுமதிக்கின்றன. நீங்கள் அனுப்புவதில் வித்தியாசம் உள்ளது. கட்டாய மற்றும் பொருள் சார்ந்த நிரலாக்கங்கள் மாறிகள் அல்லது பொருள்களின் வடிவத்தில் தரவை அனுப்புகின்றன ("இங்கே நீங்கள் கோரிய விலைப்பட்டியல், நீங்கள் விரும்பும் வழியில் அதைப் பயன்படுத்தவும்.") ஒரு செயல்பாட்டு நிரல் முன்னும் பின்னுமாக செயல்பாடுகளை அனுப்புகிறது ("உங்களுக்கு ஒரு முக்கோணம் இருப்பதாக வைத்துக்கொள்வோம் (மூலம் இந்த வரையறை) இந்த கோணங்களுடனும் அந்த அளவிலும் ... ") மற்றும் வாதத்தின் அடுத்த பகுதியை சேர்க்க பெறுநரை அழைக்கிறது.

சுருக்கமாக, இந்த முன்னுதாரணங்கள் ஒரே விஷயத்தைப் பார்ப்பதற்கான வெவ்வேறு வழிகள்.

(உள்ளீட்டிற்கு ப்ரதிக் மேத்தாவுக்கு நன்றி.)


மறுமொழி 2:
  • பொருள் சார்ந்த நிரலாக்கமானது அதன் தரவு மற்றும் நிரலாக்க தர்க்கங்கள் அனைத்தையும் பொருள்களில் சேமிக்கிறது. பொருள்கள் தரவு மற்றும் நிரலாக்க தர்க்கம் என ஒரு நல்ல நேர்த்தியான தொகுப்பில் தொகுக்கப்பட்டுள்ளன. நடைமுறை நிரலாக்கமானது தொடர்ச்சியான நடைமுறைகளின் மூலம் தரவை மாற்றுகிறது (நடைமுறைகள் என்றும் அழைக்கப்படுகிறது). இந்த நடைமுறைகளை ஒரு பொருளாக தொகுக்க தேவையில்லை. செயல்பாட்டு நிரலாக்கமானது செயல்பாடுகளைப் பயன்படுத்தி புதிய தரவைக் கணக்கிடுகிறது. தரவு ஒரு மதிப்பை ஒதுக்கியவுடன் அதை மாற்ற முடியாது (மாறாத தன்மை எனப்படும் ஒரு சொத்து).

x = x + 1


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

x = x + 1


மறுமொழி 4:
  • பொருள் சார்ந்த நிரலாக்கமானது அதன் தரவு மற்றும் நிரலாக்க தர்க்கங்கள் அனைத்தையும் பொருள்களில் சேமிக்கிறது. பொருள்கள் தரவு மற்றும் நிரலாக்க தர்க்கம் என ஒரு நல்ல நேர்த்தியான தொகுப்பில் தொகுக்கப்பட்டுள்ளன. நடைமுறை நிரலாக்கமானது தொடர்ச்சியான நடைமுறைகளின் மூலம் தரவை மாற்றுகிறது (நடைமுறைகள் என்றும் அழைக்கப்படுகிறது). இந்த நடைமுறைகளை ஒரு பொருளாக தொகுக்க தேவையில்லை. செயல்பாட்டு நிரலாக்கமானது செயல்பாடுகளைப் பயன்படுத்தி புதிய தரவைக் கணக்கிடுகிறது. தரவு ஒரு மதிப்பை ஒதுக்கியவுடன் அதை மாற்ற முடியாது (மாறாத தன்மை எனப்படும் ஒரு சொத்து).

x = x + 1