Author Archive: கலாராணி

அமேசான் இணையச்சேவைகள் – EC2 – நெகிழக்கூடிய மேகக்கணினி

பெருநிறுவனங்களுக்கான மென்பொருள் தீர்வினைக் கட்டமைக்கும்போது, ஒன்றுக்கும் மேற்பட்ட இயக்கமுறைமைகளைப் (Operating Systems) பயன்படுத்துவது இயல்பான விசயம். ஒவ்வொரு இயக்கமுறைமையின் அம்சங்களையும் நமக்குச் சாதகமாகப் பயன்படுத்துவதன் மூலம், சிறப்பான தீர்வினை வடிவமைக்கமுடியும். இதுபோன்ற சூழலில், அதனை உருவாக்கும் நிரலர்களுக்கு, ஒன்றுக்குமேற்பட்ட இயக்கமுறைமைகளை ஒரே கணினியில் அணுகுவதற்கு, மெய்நிகர் கணிப்பொறிகள் (Virtual machines) பயன்பட்டன. எடுத்துக்காட்டாக, லினக்ஸ் இயக்கமுறைமை…
Read more

அமேசான் இணையச்சேவைகள் – அறிமுகம் – உலகளாவிய உட்கட்டமைப்பு

AWS உருவானகதை அமேசான் இணையச்சேவைகள் தொடங்கப்பட்டு பதினைந்தாண்டுகள் முடிந்துவிட்ட நிலையில், அதுகடந்துவந்த பாதையினை சற்றே திரும்பிப்பார்க்கலாம். 2003ம்ஆண்டு: அமேசானின் தொழில்நுட்பக்கட்டமைப்பு (Infrastructure) எப்படியிருக்கவேண்டும் என விவரித்து, கிறிஸ் பின்க்ஹ்மன், பெஞ்சமின் பிளாக் என்ற இருபொறியாளர்கள், தொலைநோக்குப்பார்வையுடன் ஒரு கட்டுரை எழுதினர். இதைத்தொடர்ந்து இம்மாதிரியான உட்கட்டமைப்பு வசதிகளை, ஒரு சேவையாக வழங்குவதற்கும், அதாவது விற்பதற்கும், பரிந்துரைக்கப்பட்டது. இது…
Read more

மேகக்கணிமை – அறிமுகம்

இன்று, மேகக்கணிமையின் (Cloud Computing) வளர்ச்சியால், இணையசெயலிகள் / சேவைகளை (Web Applications / Services) உருவாக்கும் பலருக்கும் அதை எங்கிருந்து இயக்குவது என்ற அடிப்படைச் சிக்கல் இருப்பதில்லை. தமக்கென சொந்தமாக வன்பொருள்களும் (Hardware), நினைவகங்களும் (Storage), நிரந்தரமான தடையற்ற இணைய இணைப்பும் இல்லாமலேயே, நம்மால் செயலிகளையும், சேவைகளையும் வழங்கமுடிகிறது. அமேசான், கூகுள், மைக்ரோசாஃப்ட் உள்ளிட்ட…
Read more

செயற்கூறிய நிரலாக்கம் – செயற்கூறிய ஜாவாஸ்கிரிப்ட்டு – பகுதி 10

செயற்கூறிய நிரலாக்க அடிப்படைகள் குறித்து கடந்தசிலவாரங்களாக படித்துவருகிறோம். இதனை அன்றாட பயன்பாட்டில் எப்படி பொருத்துவது? இன்றளவிலும் கூட, செயற்கூறிய நிரலாக்கமொழிகளைப் பயன்படுத்தி நிரலெழுதும் வாய்ப்பு நம்மில் பலருக்கு கிடைப்பதில்லை. ஆனால், பெரும்பாலான வலைச்செயலிகள் உருவாக்கும் நிரலர்கள் ஜாவாஸ்கிரிப்ட்டை அன்றாடம் பயன்படுத்தி நிரலெழுதுகின்றனர். எனவே, நாம் இதுவரை கற்ற கோட்பாடுகளை ஜாவாஸ்கிரிப்ட்டில் எப்படி பயன்படுத்துவது என இப்பகுதியில்…
Read more

செயற்கூறிய நிரலாக்கம் – தரவின வரையறை – பகுதி 9

இயல்நிலைமொழிகளில் (Static languages) ஒரு செயற்கூற்றின் வரையறையோடு, தரவினங்களும் (data types) பிணைக்கப்பட்டுள்ளதை, பின்வரும் எடுத்துக்காட்டில் காணலாம். public static String quote(String str) { return “‘” + str + “‘”; } பொதுப்படையான தரவினங்களைக் (generic types) குறிக்கும்போது, இது இன்னும் சிக்கலானதாகிறது. private final Map<Integer, String> getPerson(Map<String, String>…
Read more

செயற்கூறிய நிரலாக்கம் – இயங்குவரிசை – பகுதி 8

பெரும்பாலான நிரல்கள் அல்லது செயலிகள் ஒற்றைஇழையைக் (single-threaded) கொண்டவையாகவே இருக்கின்றன. பலவிழைகளைக் (multi-threaded) கொண்ட நிரல்களில், இவ்விழைகள், ஒருகோப்பினை அணுகவோ, இணையத்திற்காகவோ காத்திருப்பதிலேயே நேரத்தை செலவழிக்கின்றன. இயல்பாகவே மனிதமூளை தான்செய்யவேண்டிய செயல்களை ஒன்றன்பின் ஒன்றாக செய்யவே திட்டமிடுகிறது. நம் எல்லோருக்கும் பரிச்சயமான சுவையானவொரு ரொட்டி தயாரிக்கும் எடுத்துக்காட்டுடன் இதைப்புரிந்துகொள்ளலாம். இதற்கான படிநிலைகள்: இவ்வெடுத்துக்காட்டில் ஒன்றையொன்று சாராத…
Read more

செயற்கூறிய நிரலாக்கம் – பொதுவான செயற்கூறிய செயற்கூறுகள் – பகுதி 7

செயற்கூறிய நிரலாக்கமொழிகளில் பரவலாகப் பயன்படுத்தப்படும் மூன்று முக்கியசெயற்கூறுகளைப்பற்றி இப்பதிவில் தெரிந்துகொள்ளலாம். நமக்கு நன்கு பரிச்சயமான, எளிமையான ஜாவாஸ்கிரிப்ட்டு நிரலிலிருந்து தொடங்கலாம். இந்நிரலில் வழுவேதுமில்லை. ஆனால், இதற்குள் பெரும்பிரச்சனையொன்று அடங்கியிருக்கிறது. அதென்னவென்று கண்டறிய முடிகிறதா? இதுவொரு வார்ப்புநிரல் (Boilerplate code). ஒரு தீர்வைச்செயல்படுத்துவதற்கு இவை உதவுகின்றனவேயன்றி, இவற்றால் தீர்வினைத்தரமுடியாது. ஆனாலும் இதுபோன்ற கட்டளைகளை நாம் அன்றாடம் அதிகஅளவில்…
Read more

செயற்கூறிய நிரலாக்கம் – ஒற்றைஉள்ளீட்டாக்கம் – பகுதி 6

முந்தைய பகுதியில் mult மற்றும் add என்ற இருசெயற்கூறுகளைகளின் உள்ளீட்டுஉருபுகளின் எண்ணிக்கையின் வேறுபாட்டால், அவற்றைக்கொண்டு செயற்கூற்றுக்கலவையை உருவாக்கமுடியாமல் போனது. இங்கே add செயற்கூறு இரண்டு உள்ளீட்டுஉருபுகளை ஏற்கிறது. எனவே அதனை ஒற்றை உள்ளீட்டுஉருபை ஏற்கும் mult என்ற செயற்கூறோடு கலந்து புதிய செயற்கூற்றை வரையறுக்கமுடியாது. நமது mult5AfterAdd10 செயற்கூற்றுக்குத்தேவையான add10 செயற்கூற்றை add செயற்கூற்றிலிருந்து பின்வருமாறு…
Read more

செயற்கூறிய நிரலாக்கம் – செயற்கூறுகளின் கலவை – பகுதி 5

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

செயற்கூறிய நிரலாக்கம் – சூழச்சுருட்டு – பகுதி 4

Closureஐப்பற்றி அறிந்துகொள்வதற்கு முன்னதாக, அதைப்பயன்படுத்தும் ஓர் எளிய செயற்கூற்றைக்காணலாம். இவ்வெடுத்துக்காட்டில் grandParent என்ற செயற்கூறு, g1, g2 என்ற உள்ளீட்டு உருபுகளை ஏற்றுக்கொண்டு, g3 என்ற மாறியை வரையறுத்து, parent என்ற செயற்கூற்றைத் திருப்பியனுப்புகிறது. parent என்ற செயற்கூறு, p1, p2 என்ற உள்ளீட்டு உருபுகளை ஏற்கிறது. p3 என்ற மாறியை வரையறுக்கிறது. child என்ற…
Read more