IT कंपनी मध्ये मुलाखत घेतांना विशेषतः Computer/IT Freshers ला विचारला जाणारा एक प्रश्न म्हणजे What is a Class and What is an Object? 👇
जवळपास सगळ्यांचं उत्तर हे पुस्तकी भाषेतलं असतं कि A Class is Blueprint of Object and an Object is instance of Class. हे उत्तर म्हणजे पत्ता सांगण्यासारखं आहे. बस स्टॅन्ड कुठे तर गणपती मंदिरासमोर आणि गणपती मंदिर कुठे तर बस स्टॅन्ड समोर. दोन्ही अमोरासमोर.👇
ह्याच प्रश्नाला जर थोडं सोप्या भाषेत आणि दैनंदिन जीवनातील उदाहरणासहित सांगता आले तर त्याचा 'इम्पॅक्ट' चांगला होतो.
उदाहणार्थ जर तुम्हाला सायकल डिजाईन करायची आहे. तर आपल्याला काय प्रश्न पडणार? 👇
आपल्या सायकलच्या काय विशेषता (attributes) असणार म्हणजे 'हॅन्डल', रंग, 'सीट्स', 'टायर' हे ठरवणार. सोबतच आपल्याला आपल्या सायकल कडून काय करून घेण्याची अपेक्षा आहे (behavior) म्हणजे 'पेडल' मारलं कि पुढे जाणार, घंटी वाजवली कि आवाज ऐकू येणार हे पण ठरवणार. 👇
हे बघूनच तुम्ही एक डिजाईन तयार कराल. आता जे डिजाईन केलं ते तुमच्या मित्राला दाखवलं सोबतच तुम्ही मित्राला सांगितलं कि हॅन्डल ची लांबी रुंदी, रंग, सीट ची लांबी रुंदी 'कस्टमाइझ' पण करू शकतो. तर तुम्ही तुमच्या मित्राच्या 'कस्टमाइझ' requirement प्रमाणे व्यस्थित डिजाईन दिलं👇
जे तुमच्या मित्राला ते फार आवडलं. त्यांनी तुम्हाला एक सायकल बनवण्याची ऑर्डर दिली.तर आता मला सांगा कि तुमच्या डिजाईन मधील सायकल खरी सायकल आहे का? तर नाही. जो पर्यंत ती सायकल पूर्ण बनून तुमच्या मित्राच्या पार्किंग ची जागा व्यापात नाही तो पर्यंत तिला आपण सायकल म्हणूच शकणार नाही👇
जेव्हा ती सायकल मित्राच्या हातात जाईल आणि त्याला ती कधीही वापरायला तयार राहील तेव्हाच ती खरी सायकल. Classes आणि Objects चे पण तेच आहे. Class हे एक Collection असतं. ह्या मध्ये Objects चे attributes आणि behavior असतं जे फक्त एक डिजाईन स्वरूपात असतं (सायकल च्या डिजाईन प्रमाणे). 👇
आणि जेव्हा हे collection memory मधील जागा व्यापतं (सायकल पार्किंग प्रमाणे) तेव्हा त्याचा Object होतो. जसे तुम्हाला सायकल मिळाली कि तुम्ही त्याचे attributes म्हणजे हॅन्डल, ब्रेक, टायर आणि behavior दोन्ही चा तुम्हाला योग्य वाटेल असा वापर करू शकता तसेच objects चं पण असतं. 👇
ज्यांनी कोणी object बनवलाय तो आपल्या आवश्यकतेनुसार attributes आणि behavior चा वापर करून घेतो. Object ला memory मिळण्याच्या प्रक्रियेला Instantiation असे म्हणतात म्हणूनच Object ला Instance Of a Class असे म्हणतात.
मित्रांनो, परंपरागत पद्धतीने म्हणजेच JAVA/PYTHON/.NET ह्या प्रोग्रामिंग language वापरून जर systems तयार केल्या तर त्या साठी लागणार वेळ खूप जास्ती असतो. सोबतच जितका जास्ती code तितकेच bugs असण्याची शक्यता असते. 👇
म्हणूनच IT industry मध्ये readymade tools/platforms ला खूप महत्त्व आहे. हे tools तुमच्या साठी code लिहितात आणि एका developer चा वेळ वाचवतात. आजच्या घडीला जितक्याही IT Systems बनत आहेत त्या मध्ये सगळ्यात महत्वाचं आहे System Integration (SI). 👇
तर SI साठी लागणाऱ्या एका Platform बद्दल थोडी माहिती देत आहे. Mulesoft Anypoint Platform हे एक अग्रणी असलेले SI tool आहे. विशेष म्हणजे ह्या Mulesoft चे २ course मोफत आहेत. ज्यामध्ये तुम्हाला tool बद्दल माहिती आणि system कशी बनवायची ह्या बद्दल माहिती देतात. 👇