அறுசுவை தமிழ்

ஓர் அழகான எழுத்து முயற்சி.

Showing posts with label ஜாவா. Show all posts
Showing posts with label ஜாவா. Show all posts

ஜாலியாக ஜாவா கற்கலாம்: கணினி மொழி (computer language)

நாம் கருத்துகளையும்,உணர்வுகளையும் மொழியின் வாயிலாகவே வெளிப்படுத்துகிறோம்.ஒருவருக்கொருவர் கருத்துகளை பரிமாறிக்கொள்ள மொழி மிக அவசியமான ஒன்று.அதுபோல் கணிப்பொறியுடன் இணைந்து செயல்பட கணினிக்கு என்று பிரத்தியேக மொழிகள் உண்டு.ஆனால் அடிப்படையில் கணினிக்கு தெரிந்த ஒரே மொழி இயந்திர மொழி(machine language) அல்லது இருநிலை மொழி(binary language) மட்டுமே.நாம் கணிப்பொறியுடன் இணைந்து செயல்பட இயந்திர மொழியை கற்றுக்கொள்ள வேண்டும்.அது மிகவும் சிக்கலானதாகவும், புரிந்து கொள்ள கடினமானதாகவும் இருப்பதால் நமக்கு உயர்மட்ட கணினி செயலாக்க மொழிகள் (high level programming  language)தேவைப்படுகிறது.

உதாரணமாக நமக்கு தமிழ் மட்டுமே தெரியும் என வைத்துக்கொள்வோம்.ஒரு ஜெர்மன் நபருடன் உரையாட வேண்டும் என்றால் என்ன செய்ய வேண்டும்?ஒன்று ஜெர்மன் மொழி படிக்க வேண்டும் அல்லது ஜெர்மனும்,தமிழும் தெரிந்த மொழிபெயர்ப்பாளரை(translator) உடன் வைத்துக்கொள்ள வேண்டும். கணினி செயலாக்க மொழிகள் இந்த மொழிபெயர்ப்பாளர் பணியைதான் செய்கின்றன.நாம் செய்ய வேண்டிய செயல்களை மனிதர்களுக்கு புரிந்த ஆங்கில மொழியில் சொன்னால் இந்த கணினி செயலாக்க மொழிகள்(programming  languages) கணினிக்கு புரியும் வகையில் இயந்திர மொழியில்(machine language) மொழிபெயர்த்து கொடுத்துவிடும்.

பொதுவாக மனிதர்களுக்கு புரியும் மொழியினை உயர்மட்ட மொழிகள் என்றும்((high level languages),இயந்திர மொழியினை கீழ்மட்ட மொழிகள்(low level  languages) என்றும் கூறுவர்.பெரும்பாலான கணினி செயலாக்க மொழிகள்(computer programming  languages) இந்த உயர்மட்ட மொழிவகையினை சேர்ந்தவை.

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

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

உயர்மட்ட மொழிகளுக்கு உதாரணமாக ஜாவா,சி,சி++ மொழிகளை கூறலாம்.ஒவ்வொரு மொழிக்கும் சில சிறப்புகள் உண்டு.நம் தேவையை பொருத்து மொழியை தேர்தெடுக்க வேண்டும்.

  • இயந்திர மொழி(machine language) 
  • இருநிலை மொழி(binary language)
  • கணினி செயலாக்க மொழிகள்(programming  languages)
  • உயர்மட்ட கணினி செயலாக்க மொழிகள் (high level programming  language)
  • கீழ்மட்ட மொழிகள்(low level  languages) 
  • மொழிபெயர்ப்பாளரை(translator)  


முந்தய பதிவுகள் :

கணிப்பொறி செயலாக்கமுறை(computer programming)


                                                                                 ---- பயணம் தொடரும் ----

ஜாலியாக ஜாவா கற்கலாம்:கணிப்பொறி செயலாக்கமுறை(computer programming)


 கொள்கையோ அல்லது கோட்பாடோ அதை ஒரு மூன்று வயது பிள்ளைக்கு புரியவைக்க முடியவில்லை என்றால் அதனால் எந்த பயனும் இல்லை. 
                                                               -  ஐன்ஸ்டீன்



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

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

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


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


இப்படி தெளிவாக சொன்னால் மட்டுமே பூதம் சாப்பிடமுழுக்கோழி கொண்டுவரும்.சரி இப்போது கணிப்பொறிக்கு வருவோம்.

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

  • எண் ஒன்றை உள்ளீடாக பெறு
  • எண் இரண்டை உள்ளீடாக பெறு
  • இரண்டையும்  கூட்டு
  • விடையை திரையில் காண்பி


மேலே சொன்னவாறு எந்த ஒரு செயலையும் கணினி மொழியில் செய்முறையாக மாற்றுவதே கணிப்பொறி செயலாக்கமுறை(computer programming)

 
 கணிப்பொறி செயலாக்கம் (computer program)

கணிப்பொறி செயலாக்கமுறை  (computer programming)
                                                                                                                              .....தொடரும்