மு.சிவலிங்கம் வலையகம்

சி# மொழிப் பாடங்கள்
 

பாடம் 1.3
மைக்ரோசாஃப்ட்டின் டாட்நெட்

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

பல்வேறு மொழிகளில் எழுதப்பட்ட புரோகிராம்களும் ஒன்றுக்கொன்று இயைந்து செயல்படக் கூடிய ஒரு பணித்தளத்தை (platform) உருவாக்குவதில் மைக்ரோசாஃப்ட் நிறுவனம் கவனம் செலுத்தியது. இக்கால கட்டத்தில்தான், ஏற்கெனவே வெளியிடப்பட்ட விசுவல் ஸ்டுடியோவின் அடுத்த பதிப்பை வெளியிடும் வேலையில் மைக்ரோசாஃப்ட் ஈடுபட்டிருந்தது. தன்னுடைய சொந்தத் தேவை, புறச்சூழ்நிலைகளின் தாக்கம், சந்தையில் போட்டியாளர்களுக்கு ஈடுகொடுக்க வேண்டிய கட்டாயம் ஆகியவற்றின் ஒட்டுமொத்த விளைவாக, மைக்ரோசாஃப்ட் 1990-களின் இறுதியில் டாட்நெட் (.NET) தொழில்நுட்பத்தை அறிவித்தது.

 1.3.1 பரிணாம வளர்ச்சிப் போக்கில் டாட்நெட்

மைக்ரோசாஃப்ட்டின் டாட்நெட் தொழில்நுட்பம் திடீரென உருவாக்கப்பட்டதல்ல. பத்தாண்டுகளுக்கு மேலாகப் பல்வேறு வளர்ச்சிக் கட்டங்களைக் கடந்து வார்த்தெடுக்கப்பட்டது. 1990-களின் தொடக்கத்தில் மைக்ரோசாஃப்ட் நிறுவனம் ஓஎல்இ (OLE - Object Linking and Embeddig) என்னும் தொழில்நுட்பத்தை அறிமுகப்படுத்தியது. இரண்டு பிராசஸுகளுக்கு இடையே தகவல் தொடர்புக்கு (Interprocess Communication) ஓஎல்இ வழிவகுத்தது. ஓர் அப்ளிகேஷனில் உருவாக்கப்பட்ட டாக்குமென்டை இன்னோர் அப்ளிகேஷனில் உருவாக்கப்படும் டாக்குமென்டில் உட்பொதிக்க (Embedding) முடியும். ஓர் அப்ளிகேஷனுக்குள்ளிருந்தே வேறோர் அப்ளிகேஷனின் ஆப்ஜெக்டுகளைத் திருத்தி மாற்றியமைக்க (Linking) முடியும். மைக்ரோசாஃப்ட் ஆஃபீஸ் தொகுப்பிலுள்ள வேர்டு, எக்செல், பவர்பாயின்ட், அக்செஸ் ஆகிய தொகுப்புகளுக்கிடையே இயங்குநிலைத் தகவல் பரிமாற்றத்தை (Dynamic Data Exchange) ஓஎல்இ தொழில்நுட்பம் சாத்தியமாக்கியது.

ஓஎல்இ தொழில்நுட்பத்தின் அடுத்தகட்ட வளர்ச்சி ஆக்டிவ்-எக்ஸ் (ActiveX) தொழில்நுட்பம் ஆகும். அப்ளிகேஷன் சாரா ஆக்டிவ்-எக்ஸ் கன்ட்ரோல்கள் விண்டோஸ் பணித்தள அப்ளிகேஷன் உருவாக்கத்தை மிகவும் எளிமைப்படுத்திவிட்டன. அதாவது, கேட்பொலி (audio) அல்லது நிகழ்படத் (video) துணுக்கை இயக்கும் ஓர் ஆக்டிவ்-எக்ஸ் கன்ட்ரோலை எந்தவோர் அப்ளிகேஷனிலும் பயன்படுத்திக் கொள்ள முடியும்.

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

எம் எஸ் ஆபீஸிலுள்ள அப்ளிகெஷன்கள் அனைத்தும் காம்பொனன்டு அடிப்படையில் உருவாக்கப்பட்டவையே. எடுத்துக் காட்டாக, எம் எஸ் ஆபீஸ் தொகுப்பில் சொற்பிழை, இலக்கணப் பிழை கண்டறிந்து திருத்தும் (Spelling and Grammar Check) நிரல்கூறு காம் தொழில்நுட்பத்தின் அடிப்படையில் உருவாக்கப்பட்ட ஒரு காம்பொனன்டு ஆகும். அதனை வேர்டு, எக்செல், பவர்பாயிண்ட் போன்ற எந்த அப்ளிகேஷனிலும் பயன்படுத்திக் கொள்ள முடியும். குறிப்பிடத்தக்க செய்தி என்னவெனில், நாமாக உருவாக்கும் ஓர் அப்ளிகேஷனில்கூட அந்தக் காம்பொனன்டின் சேவையைப் பயன்படுத்திக் கொள்ள முடியும்.

காம் தொழில்நுட்பம் என்பது ஓஎல்இ, ஆக்டிவ்-எக்ஸ் தொழில்நுட்பங்களின் மேம்பட்ட வடிவமே. அதனைத் தொடர்ந்து காம்+, டி’காம் ஆகியவற்றையும் மைக்ரோசாஃப்ட் அறிமுகப்படுத்தியது. டி’காம் என்பது டிஸ்ட்ரிபியூட்டடு காம்பொனன்டு ஆப்ஜெக்டு மாடல் என்பதைக் குறிக்கிறது. கிளையன்ட் / செர்வர் அடிப்படையிலான காம்பொனன்டுகளை உருவாக்கிச் செயல்படுத்தும் வசதியை இத்தொழில்நுட்பம் நல்கியது.

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

ஓர் அப்ளிகேஷனில் வெவ்வேறு மாடியூல்கள் அல்லது காம்பொனன்டுகளை வெவ்வேறு மொழிகளில் எழுதிக் கம்ப்பைல் செய்து, அவற்றை ஒருங்கிணத்து டாட்நெட் பணித்தளத்தில் செயல்படுத்த முடியும். ஆக, டாட்நெட் பணித்தளம் என்பது மொழிசாராப் பணித்தளம் (Language Independent Platform) ஆகும். ஜாவா மொழி பணித்தளம் சாரா மொழி (Platform Independent Language) என்ற பெருமையுடன் பவனி வந்து கொண்டிருந்த வேளையில், அதற்குச் சரியான போட்டியாக, மைக்ரோசாஃப்ட்டின் மொழிசாராப் பணித்தளம் களத்தில் குதித்தது.

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

ஆக, விண்டோஸ் பணித்தளத்துக்கான அப்ளிகேஷன் உருவாக்கத்தில் ஏற்பட்ட தொழில்நுட்ப வளர்ச்சியைக் கீழ்க்காணுமாறு மூன்று கட்டங்களாக வரிசைப்படுத்தலாம்:

கட்டம்-1: 1990-களின் தொடக்கம். ஓஎல்இ/ஆக்டிவ்-எக்ஸ் தொழில்நுட்பம். பிராசஸுகளுக்கு இடையேயான தகவல் மறிமாற்றம் (Interprocess Communication).

கட்டம்-2: 1990-களின் பிற்பகுதி. காம்/காம்+/டி’காம் தொழில்நுட்பம். மாடியூல்களுக்கு இடையேயான தகவல் பரிமாற்றம் (Intermodule Communication).

கட்டம்-3: 2000-ன் தொடக்கம். டாட்நெட் தொழில்நுட்பம். இணையத் தளங்களுக்கு இடையேயான தகவல் பரிமாற்றம் (Intersite Communication)

மனிதன் பயன்படுத்தும் அனைத்து மின்னணுக் கருவியிலும் சாஃப்ட்வேரின் ஆதிக்கத்தைக் கொண்டுவந்து, அலுவலகம் அல்லது வீட்டில் உள்ள கணிப்பொறியின் ஒருபுறம் லேப்டாப், பாம்டாப், பீடிஏ, செல்பேசி மற்றும் பிற மின்னணு சாதனங்களின் நெட்வொர்க்கையும், மறுபுறம் உலகளாவிய இன்டர்நெட்டையும் ஒன்றிணைப்பதே பில்கேட்ஸின் அடுத்த பத்தாண்டுகளுக்கான தொலைநோக்குப் பார்வை. அத்திசைவழியில் மைக்ரோசாஃப்ட்டின் பங்களிப்பே டாட்நெட்டும் அதன் அங்கமாக விளங்கும் விசுவல் ஸ்டுடியோ தொகுப்புமாகும். புதிய தலைமுறை விண்டோஸ் சேவைக்கான (New Generation Windows Services - டாட்நெட்டின் தொடக்ககாலப் பெயர்) பணிச்சூழலாக விசுவல் ஸ்டுடியோ.நெட் விளங்குகிறது. ஓர் அப்ளிகேஷனை உருவாக்குதல் அந்த அப்ளிகேஷனுக்கான புரோகிராம்களை எழுதுதல் ஆகிய பணிகளை டாட்நெட் பணிச்சூழல் மிகவும் எளிமைப்படுத்தியுள்ளது.

 1.3.2 டாட்நெட் கட்டமைப்பு

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

(1) பொதுமொழி இயக்கத்தளம் (Common Language Runtime - CLR)

வெவ்வேறு மொழிகளில் எழுதப்பட்ட புரோகிராம்களை (காம்பொனன்டுகளை) ஒருங்கிணைத்து டாட்நெட் பணித்தளத்தில் இயக்க முடியும் என்றும் ஒரு மொழியில் எழுதப்பட்ட காம்பொனன்டு வேறொரு மொழியில் எழுதப்பட்ட காம்பொனன்டுடன் தகவல் பரிமாற்றம் செய்துகொள்ள முடியும் என்றும் பார்த்தோம். மைக்ரோசாஃப்ட்டின் இடைநிலை மொழி (Intermediate Language - IL) என்னும் கருத்துரு இத்தகைய தகவல் பரிமாற்றத்தைச் சாத்தியம் ஆக்கியுள்ளது. அதாவது ஒரு மொழியில் எழுதப்பட்ட புரோகிராம் கம்ப்பைல் செய்யப்பட்டு இடைநிலை மொழிக் குறிமுறையாக (Intermediate Language Code) மாற்றப்படுகிறது. இடைநிலை மொழியில் மாற்றப்பட்ட புரோகிராம் ஜிட் (JIT - Just In Time) கம்ப்பைலரால் கம்ப்பைல் செய்யப்பட்டு (அந்தந்தக் கணிப்பொறிக்குரிய அதாவது பிராசசருக்குரிய எந்திர மொழியில் மாற்றப்பட்டு) பொதுமொழி இயக்கத்தளத்தில் செயல்படுத்தப்படுகிறது. இடைநிலை மொழி என்கிற ஏற்பாடே பொதுநிலை மொழி என்கிற நிலைக்கு இட்டுச்செல்லும் கருவியாகிறது.

(2) பொதுத் தரவின முறைமை (Common Type System - CTS)

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

(3) பொதுமொழி வரையறுப்பு (Common Language Specification - CLS)

இருவேறு மொழிகளில் எழுதப்பட்ட புரோகிராம்கள் தமக்குள்ளே உறவாடிக் கொள்வதைச் சாத்தியமாக்கும் விதிமுறைகளைப் பொதுமொழி வரையறுப்பு வரையறுத்துச் சொல்கின்றது. சிஎல்எஸ் என்பது சிடீஎஸ்ஸில் உள்ளடக்கம். சிஎல்எஸ்ஸுக்கு உட்பட்ட மொழிகள் ஒன்றுக்கொன்று உறவாட முடியும். ஒரு மொழியின் கிளாஸ் லைப்ரரிகளை மற்றொரு மொழி பயன்படுத்திக் கொள்ள முடியும். சிஎல்எஸ்ஸின் விதிகளை ஒட்டி உருவாக்கப்பட்ட அப்ளிகேஷன் புரோகிராம் இன்டர்ஃபேஸுகளை (APIs) அனைத்து டாட்நெட் மொழிகளாலும் பயன்படுத்திக் கொள்ள முடியும். வெவ்வேறு மொழிப் புரோகிராம்களுக்கு இடையே இயக்கநேரப் பிழைகளை எதிர்கொள்ளுதல் (Cross Language Exception Handling) சாத்தியம்.

மேம்பட்ட பாதுகாப்பு (Enhanced Security), பதிப்பு நிர்வாகம் (Versioning), பிழைதிருத்தம் (Debugging), பயனர் குறிப்புச் சேவை (User Profiling Service) ஆகியவற்றையும் டாட்நெட் வழங்குகிறது.

(பாடம்-1.3 முற்றும்)


இந்த வலையகத்தில்

இவ்வலையகத்தின் பக்கங்கள் இன்டர்நெட் எக்ஸ்புளோரர்-8, 1024 X 768 பிக்செல் திரைக்கேற்ப வடிவமைக்கப்பட்டுள்ளன
வலையக வடிவமைப்பு, உள்ளடக்கப் பதிப்புரிமை © 2009 மு.சிவலிங்கம்