Tuesday, September 20, 2011

சி # -அடிப்படைகள்-பாடம் -3

ஒரு c# நிரல் (program) ஒன்றைக் காண்போம்.

class HelloWorld
{
public static void main()
{


System.Console.WriteLine('Hello World');
}
}

இதை இயக்கச் செய்ய visual studio ல் F5 விசையை அழுத்த வேண்டும்.


braces  { and } .

இவை blocks ஆரம்பம் மற்றும் முடிவை குறிப்பிடப் பயன்படுகின்றது.மேலே கண்ட நிரலின் வெளியீடு இவ்வாறு இருக்கும்.

Hello World.

இவற்றில் WriteLine method '"Hello World' என்ற  வெளியீட்டை விடுகின்றது. இந்த method , console என்னும் library classல் உள்ளது.இந்த library class ,system என்னும் namespaceல் உள்ளது.

namespaceஎன்பது வேறு ஒன்றுமல்ல . இவை Folder  உடன் ஒப்பிடக் கூடியவை.
எப்படி எல்லா fileகளும்  folderlல் சேமிக்கப் படுகினறதோ அதே போல் libraryclass கள் name spaceல் சேமிக்கப் படுகின்றது.
.இவை name conflictஐ தவிக்கப் பயன்படிகின்றது.
.
library classல் library methodகள் உளளன. இங்கு Consoleல் WriteLine method  உள்ளது.

சி#ஐ பொருட்த வரை c++ போல் அல்லாமல்  எந்த methodம்  classக்குள் மடுமே இருக்க வேண்டும் .classக்கு வெளியே எந்த methodம் இருக்கக் கூடாது. global declarationம் சி#ல் தவிர்க்கப் பட்டுள்ளது.

எல்லா நிரல்களிலும்(programs) Main FUNCTION  கட்டாயம் இருக்க வேண்டும். இங்கு தான் நிரல் ஆரம்பிக்கின்றது. இங்கு தான் நிரல்  முடிகின்றது. மற்ற  மொழிகளின் main function போல் அல்லாமல் Main('M' capital) என்று அறிவிக்கப் படுகின்றது.

சி#தன்மைகள்.

எளிமையானது:

C# மொழி அளிமையன மொழியாகும். பாயிண்டர்ஸ் (pointers) கருத்து நீக்கப் பட்டுள்ளது.boxing, unboxing மூலம் சாதரண தரவிலிருந்து (Data type) objectக்கும்  objectன் இருந்து  சாதாரண தரவுக்கும் மாறாலம்.

புதுமையானது:

Garbage collection என்கின்ற  நினைவத்தை கையாளும் முறை சி#ல் செய்யப் படுகின்றது.ஒரு object உபயோக முடிவுக்கு வரும் பொது garbage collector மூலம் நினைவத்திலிருந்து அகற்றப் படுகின்றது.

பொருள் நோக்கு நிரலாக்கம் :
 சி#  பொருள் நோக்கு மொழியாகும்.Encapsulation,inheritance,polymorphism ஆகியவற்றை செயல் படுத்துகின்றது. multiple inheritance நீக்கப் பட்டு இடை முகம் (interface) என்ற கருத்து உட்புகுத்தப் பட்டுள்ளது .

தரவு பாதுகாப்பு:
1. மதிப்பிடாத மாறிகளை உபயோகிக்க முடியாது. ஒரு classன்  உறுப்பினரான மாறிகள் (variables) கம்பைலரால் பூஜ்யத்துக்ககு தொடக்க மதிப்பு இருத்தப் படுகின்றது.local variableகளுக்கு நிரலாள்ர்களே பொறுப்பாகும்.

2. c,c++ போல் அல்லாமல்  c# array உறுப்பினர்களின் எல்லைகளை சோதிக்கின்றது. அதாவது a[5] என்று அறிவிக்கப் பட்ட பின் a[0] நவில் இருந்து a[4] க்கு மேல் உபயோகிக்க முடியாது.

versionable:

ஒரு பயன்பாட்டின்(application) வெவ்வெறு பதிப்புகளை ஒரே கணினியில் நிறுவும் போது அவை ஒரே DLL file களை (DYNAMIC LINK LIBRARY) நிறுவுகின்றது. இதனால் சில பயன்பாடுகளினால் இயங்க்க முடியாமல் போகின்றது.இதைசி# மூலம் சரி செய்ய முடியும்.

பின் குறிப்பு:

சி#  ல் பாயிண்டர்ஸ் தவிர்க்கப் பட்டாலும் unsafe என அறிவித்து விட்டு பாயிண்டர்ஸை பயன் ப்டுத்த முடியும். எனவே சி#ஐ flexible எனவும் கூறலாம்.


ads Udanz

No comments:

Post a Comment