Skip to main content

நிரலாக்க மொழிகள் (Programming Languages)


அனைவருக்கும் வணக்கம்

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

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

இந்நிலையில் பொதுவாக நிரலாக்க மொழிகளுடன் (Programming Languages) தொடர்புபட்ட வேலையில் இருப்பவர்கள் மிக மிக அவதானமாக இருக்கவேண்டிய நிலை காணப்படுகிறது. ஒன்று, தற்போதய காலகட்டத்தில் அனைத்து வாடிக்கையாளர்களும் தமக்கு தேவையான மென்பொருட்கள் (Softwares) பற்றியோ அல்லது செயற்திட்டங்கள் (Projects) பற்றியோ வெவ்வேறு எண்ணப்பாடுகளுடனும் வெவ்வேறு வசதிகளுடனும் கேட்கும் போதும் அவர்களின் அனைத்து எண்ணப்பாடுகளையும் நிறைவுசெய்யக்கூடிய வகையில் பொருத்தமானதொரு நிரலாக்க மொழியினால் குறித்த மென்பொருளினை அமைத்தல் தான் சிறந்த வியாபாரத்திற்கு வித்திடும். காரணம் இங்கு வாடிக்கையாளர்களின் திருப்தியே வியாபாரங்களை நிர்ணயிக்கிறது. சில நேரங்களில் Java பொருத்தமானதாக காணப்படும் அதேவேளை C++,php,asp.net போன்ற மொழிகளும் வெவ்வேறு தேவைகளை பூர்த்திசெய்பவையாகவே காணப்படுகின்றன.
அத்துடன் ஆரம்பகாலம் முதல் கொண்டு சில மொழிகள் காலத்திற்கு காலம் சில புதிய எண்ணக்கருக்கள் புகுத்தப்பட்டு மேம்படுத்தப்படுகின்றனகாரணம் காலம் செல்லச்செல்ல புதிய புதிய மாற்றங்கள் காணப்பட்டால் தான் அவை சந்தையில் பிரபலமாகக்கூடியதாக இருக்கும்.

Netscape Navigator Browser இன் மறைவை இதற்கு உதாரணமாக கூறலாம். 90களில் மிகவும் பிரசித்தி பெற்றதாய் காணப்பட்ட இந்த Browser கால மாற்றத்திற்கு இசைவாக மேம்படுத்தப்படாமையால் தற்போது பாவனையில் இல்லாமல் காணப்படுகிறது. ஆனால் Javascript இனால் மேற்கொள்ளவல்ல அனைத்து செயன்முறைகளும் வெற்றிகரமாக இந்த Browser இல் மாத்திரம் தான் செயற்படுத்தமுடியும் என்பதுவும் தற்போது பயன்படுத்தப்படும் எந்தவொரு Browser ம் Javascript இனுடைய அனைத்து நிரலாக்க குறியீடுகளின் படி இயங்காது என்பதும் ஏற்றுக்கொள்ள வேண்டிய உண்மைகளே.

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

நிரலாக்க மொழி வரலாற்றை சற்று திரும்பிப்பார்த்தால் இந்த உண்மை நமக்கு புலப்படும்.
ஆரம்பகாலத்தில் பயன்பாட்டில் காணப்பட்ட COBOL, DB2, SQL, JCL, TSO, ISPF, Assembler, CLIST, Focus, Syncsort, DFSort என்று அடுக்கிக்கொண்டே போகலாம். தற்போது நிரலாக்க சூழலில் வளரும் பெரும்பாலானவர்களுக்கும் இவற்றின் பெயர்கள் தெரியாது என்றாலும் ஆச்சரியப்படுவதற்கில்லை. காரணம் உலகம் அவ்வளவு மாறிவிட்டது. ஆனால் இவை இன்றும் பல்வேறு நிறுவனங்களால் பயன்படுத்தப்பட்டு வருகின்றன என்பது ஏற்றுக்கொள்ள வேண்டிய உண்மை. இன்றளவிலும் COBOL சில நிறுவனங்களின் தகவல் தொழில்நுட்ப முறைமைகளின் இதயமாக திகழ்ந்து வருகிறது. CICS இணையத்தினூடான பரிமாறல்களுக்கும் REXX, Scripting திறன் சம்பந்தப்பட்டவைகளிலும் DB2 பாரிய அளவிலான தகவல்அடிப்படைகளை கையாளத்தக்கவகையிலான ஒரு தகவல் முறைமை என்பது பற்றி ஆராய்ந்தால் தான் அறியமுடியும் என்ற நிலையில் காணப்படுகிறது. இதற்கு ஒரு காரணம் நிறுவனத்தாரின் தேவைகளை இவ்வகையில் அமைந்த மொழிகள் பூர்த்தி செய்வது மட்டுமல்லாது இவற்றை தற்போது பிரபலமாக வழக்கில் உள்ள மொழிகளுக்கு மாற்றம் செய்யத்தக்க அறிவு உள்ளவர்களின் தட்டுப்பாடு மற்றும் இவற்றை மாற்றம் செய்வதற்கு ஏற்படும் அதீத செலவுஇவ்வாறு அடுக்கடுக்கான மறைக்காரணிகள் ஒன்று சேர நிறுவனங்கள் மேற்படி மொழிகளை மாற்றம் செய்யாதவண்ணம் அவற்றிலே இயங்குகின்றன.
ஆக இம்மாதிரியான மொழியினை கையாளும் திறன் படைத்தவர்கள் இன்றைய காலகட்டத்தில் மிகவும் குறைவாக காணப்படுவதாலும் இக்காலகட்டத்தில் இம்மாதிரியான மொழிகள் குறைவான அளவில் பயன்படுத்தப்படுவதாலும் எதிர்காலத்தில் இம் மொழிகள் இறந்த மொழியாவதற்கான சாத்தியப்பாடுகள் அதிகமாக காணப்படுகிறது. இதுமட்டுமல்லாது அப்படி இறந்த மொழியாகும் பட்சத்தில் இவற்றினை பயன்படுத்தும் நிறுவனங்களும் பாரிய அளவிலான சவால்களை எதிர்கொள்ளக்கூடிய நிலை காணப்படும் என்பதும் திண்ணம். ஆனால் இன்றளவிலும் இவ்வாறான மொழிகள் வேற்றுமொழிகளுக்கு மாற்றப்பட்டுக்கொண்டும் தான் இருக்கின்றன. ஆனால் ஒப்பீட்டளவில் புறக்கணிக்கத்தக்க அளவில் தான் இது காணப்படுகிறது. 
இதுவரை நான் குறிப்பிட்டது மேம்படுத்தப்படாத மேம்படுத்தப்படும் தன்மை குறைந்து வருகின்ற நிரலாக்க மொழிகள் பற்றியதாகும்.
இனி தற்போது மேம்படுத்தப்பட்டுவருகின்ற நிரலாக்க மொழிகள் பற்றி நோக்குவோம்.
இப்போது காணப்படும் நிரலாக்க மொழிகள் பயன்பாட்டாளர்கள் மற்றும் வர்த்தக வாடிக்கையாளர்களின் எதிர்பார்ப்புகளுக்கு அமைய பல்வேறு அம்சங்களை இணைத்தவண்ணம் மேம்பட்டவண்ணம் உள்ளது. தற்போது மேம்படுத்தப்படாத நிலையில் இருக்கும் மொழிகளும் ஒரு காலகட்டத்தில் இந்நிலையில் இருந்து தான் அப்படி சென்றன என்பதையும் நாம் மறந்து விடக்கூடாது. ஆக இப்போது பயன்பாட்டில் இருக்கும் மொழிகளும் ஏதோ ஒரு காலகட்டத்தில் முடிவினை எட்டத்தான் வேண்டும். ஆனால் அவற்றின் மேம்பட்ட தன்மை அவை வாழவேண்டிய காலத்தினை நிர்ணயிக்கும் என்பதே திண்ணம்.

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

  • பழைய பதிப்புடன் காணப்படும் குறித்த மென்பொருளினை விளங்கிக்கொள்வதில் சிக்கல்

மென்பொருள் ஒன்று பழைய பதிப்பில் காணப்படும் போது அது  வேறொருவரால் திட்டமிடப்பட்டு வடிவமைக்கப்பட்டிருப்பதால் அவற்றினை முற்றுமுழுதாக எம் சிந்தனைக்குள் எடுத்துக்கொள்வதற்கு அதிக நேரம் செலவாகும்.

  • பழைய பதிப்பில் காணப்படும் நிரலாக்க குறியீடுகளுடன் பரிச்சயம் இல்லாத தன்மை காணப்படல்

     பயனர் ஆவணங்கள்(User Documentation) வாயிலாக பெரும்பாலான பகுதியினை, எம்மால் பழைய பதிப்பில் காணப்படக்கூடிய நிரலாக்க குறியீடுகள் (Programming Codes) பெரும்பாலானவற்றை மேம்படுத்தப்பட்ட நிலைக்கு கொண்டுவந்து விட முடியும் (அதற்கென உருவாக்கப்பட்ட கருவியின் உதவி கொண்டு). ஆனால் பிரச்சினை என்னவெனில் அனைத்து நிரலாக்க குறியீடுகளும் இக்கருவி மூலம் மாற்றம் பெறாது. எம் அறிவினை மூலதனமாக பாவித்தும் மிகுதியாக காணப்படக்கூடிய நிரலாக்க குறியீடுகளை மேம்படுத்தப்பட்ட நிலைக்கு கொண்டுவரவேண்டும் (Manually, We need to convert codes, that are remained). இது அவ்வளவு எளிதான காரியம் அல்ல. ஏனெனில் ஒரு நிறுவனம் என்று நோக்கும் போது குறித்த ஒரு செயற்திட்டத்திற்காக அதிக காலத்தையோ அல்லது அதிக மனித உழைப்பையோ குறைந்த பெறுமதிக்கு முதலிட வராது. அத்துடன் வர்த்தக நிறுவனங்களும் அதி கூடியளவு பணத்தினை வாரி இறைத்து குறித்த மென்பொருளினை மேம்படுத்த முனையாது. வர்த்தக பயன்பாட்டில் காணப்பட்ட ஆயிரக்கணக்கான  மென்பொருட்கள் இவ்வாறு மேம்படுத்தப்பட முடியாமல் கைவிடப்பட்ட பரிதாப நிலை காணப்படுகிறது. இதுவே இதற்கு காரணம்.

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

Comments

  1. தகவல் தொழில்நுட்பம் சார்பாக தொடர்ச்சியாக மூன்று பதிவுகளை இட்டுள்ளீர்கள். தமிழில் வாசிக்க சந்தோசமாக இருக்கிறது.

    உங்களின் தமிழிற்கும் பதிவுகளுக்கும் நன்றிகள் ஐயா...

    தொடர்ந்து பதிவுகளை சீரான இடைவெளியுடன் எதிர்பார்க்கிறோம்.

    நன்றி...

    ReplyDelete
  2. தங்களின் விமர்சனத்திற்கு நன்றிகள், VJ ajai...

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

    மீண்டும் நன்றிகள்--தங்களின் வருகைக்கும் விமர்சனத்திற்கும்.

    ReplyDelete

Post a Comment

Popular posts from this blog

இரையாகும் கனவுகள்...

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

“ Hague Rules, Hague-Visby and Hamburg Rules” Carrier Friendly or Shipper Friendly?

INTRODUCTION In ancient times, ship owners had extensive powers over the shippers and cargo owners. Ship owners managed to escape their liabilities by using these powers and the principle of freedom of contract during cargo damages. Therefore, The cargo owners were disappointed and the reliability of bills of lading was greatly affected. [1] This was the main reason to develop the Hague Rules 1924. Most of the maritime nations ratified Hague rules and still this is in force. These rules apportioned responsibility for the safe delivery of the cargo between shipper, carrier and receiver and denied these parties, particularly the carrier, and the ability to contract out minimum levels of responsibilities.    The international traders were under impression that Hague rules are more ship owner friendly and therefore, in 1968 amendments to the Hague rules were brought up and these are known as Hague-Visby rules. [2] Again, in response to shipper’s complaints that the Hague-V

காலத்துடனான ஓர் பயணம் 03 ( யார் ? இவர்கள் 10 )

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