हे सदर वाचताना तुम्हाला पडलेला सर्वात मोठा प्रश्नं म्हणजे, आपण कोणती प्रोग्रामिंग लँग्वेज (programming language) शिकणार. या भागात मी या प्रश्नाचं उत्तर देणार आहे.
तुम्ही असं ऐकलं असेल की या क्षेत्रात सतत बदल होत असतात, नवनवीन तंत्रज्ञान येते तसतशा नवीन प्रोग्रामिंग लँग्वेजेस येतात, जुन्या प्रोग्रामिंग लँग्वेजेस मागे पडतात. मग आपण आत्ता एखादी भाषा शिकलो तर पुढे तिचा उपयोग होईलच असं नाही. ह्या म्हणण्यात थोडं तथ्य आहे. नि मी माझ्यापरीने यातून मार्ग काढला आहे.
मला सांगा, तुम्हाला कोणकोणत्या बोलीभाषा येतात? हे सदर वाचताय म्हणजे मराठी नक्की. त्याखेरीज, इंग्रजी, हिंदी, गुजराती, किंवा अजून कोणती तरी. जर तुम्हाला एका पेक्षा जास्तं भाषा येत असतील तर तुमच्या एक गोष्टं नक्कीच लक्षात आली असेल. भाषा, त्यातले शब्दं, उच्चार, जरी वेगवेगळे असले तरी भाषेतील मूळ संकल्पना सारख्याच असतात. म्हणजे, एकवचन-अनेकवचन, भूत-वर्तमान-भविष्य काळ, नाम-सर्वनाम-विशेषण-क्रियापद, इत्यादी, या गोष्टी कोणत्या ना कोणत्या रूपात प्रत्येक भाषेत येतातंच. प्रोग्रामिंग लँग्वेजेसचं ही असंच आहे. लँग्वेज बदलली तरी काही मूळ संकल्पना त्याच असतात.
म्हणून मी ठरवलं आहे की या सदरातून एखादी ठराविक प्रोग्रामिंग लँग्वेज शिकवण्याऐवजी, मी तुमची प्रोग्रामिंगच्या मूलभूत संकल्पनांशी आत्ता ओळख करून देईन. मग पुढे जाऊन जेव्हा संधी मिळेल, गरज पडेल, तेव्हा, तुम्हाला हवी ती प्रोग्रामिंग लँग्वेज तुम्ही शिकाल. या संकल्पना शिकवण्यासाठी गुगल (Google) ने ब्लॉकली (Blockly) या नावाची, चित्रलिपीच्या स्वरूपातील एक प्रोग्रामिंग लँग्वेज विकसित केली आहे. यात प्रोग्रामिंग मधील कमांड्स या जिगसॉ पझल (jigsaw puzzle) सारख्या तुकड्यांच्या स्वरूपात दिलेल्या असतात.
मी या सदरातील उदाहरणांसाठी ही लुटूपुटूची ब्लॉकली भाषा वापरणार आहे. त्याबरोबरच सध्या प्रचलित असलेल्या भाषांपैकी जावास्क्रिप्ट (JavaScript) या भाषेतील प्रोग्रामपण सोबत देत जाईन.
Commands in Blockly
Commands in JavaScript
सदरात दिलेल्या उदाहरणातील ब्लॉकलीची चित्रलिपी, किंवा इंग्रजीसारखीच वाटणारी जावास्क्रिप्ट, हे बघून तुम्हाला प्रश्नं पडेल की या भाषा कंप्युटरला कशा कळणार? कारण त्याला तर फक्तं 0 आणि 1 पासून बनलेली बायनरी (binary) भाषा कळते ना?! तुमचं बरोबर आहे. त्याला फक्तं बायनरी भाषा कळते. पण एवढ्या वेगवेगळ्या प्रकारची कामं त्याच्याकडून करून घ्यायला, सगळ्या सूचना आपण 0/1 वापरून द्यायचं म्हटलं, तर आपल्यालाच ते जमणार नाही. यासाठी आपण कंपायलर्स (compilers) किंवा इंटरप्रिटर्स (interpreters) सारखे मध्यस्त वापरतो. हे पण एक प्रकारचे प्रोग्राम्स असतात. आपण इंग्रजी सदृश प्रोग्रामिंग लँग्वेज वापरून लिहीलेल्या प्रोग्राम्सचं भाषांतर ते 0/1 च्या बायनरी भाषेत करतात नि कंप्युटरने बायनरी भाषेत दिलेलं उत्तर आपल्याला, आपल्याला कळेल अशा स्वरूपात दाखवतात.
मागच्या भागांच्या शेवटी सांगितल्याप्रमाणे या सदरातील उदाहरणं http://www.codingbasics.omsw.co.in या संकेतस्थळावर उपलब्ध असतील. तुमच्यापैकी ज्यांच्याकडे कंप्युटर व इंटरनेट आहे, ते या संकेतस्थळावर जाऊन ही उदाहरणं प्रत्यक्ष सोडवून बघू शकतात. ज्यांना हे शक्य नाही आहे त्यांनी हिरमुसून जायची गरज नाही. या प्रोग्राम्सचे स्क्रीन-शॉट्स आम्ही छापणारंच आहोत. आणि माझी खात्री आहे आज ना उद्या तुम्ही ह्या प्रोग्रामिंगचा उपयोग कुठे ना कुठे नक्की कराल.