Monday, October 10, 2011

c# chapter-3 c# Basics

ஒரு 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

1 comment:

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

    ReplyDelete