ஒரு 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 எனவும் கூறலாம்.
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 எனவும் கூறலாம்.
தமிழில் கணினி தொழில்நுட்ப பதிவுகளைப் பலர் எழுதி வருகிறார்கள். நிரலாக்கம் (புரோகிராமிங்) குறித்து எழுதுபவர்கள் மிகக் குறைவே. அதிலிருக்கும் வெற்றிடத்தைப் போக்க நல்ல ஒரு தளம் வந்திருக்கிறது என அறிவதில் மகிழ்ச்சி அடைகிறேன்.
ReplyDelete