image-ru-01-05

"हाय. माझे नाव आहे लागा बिलाबो. मी परग्रहवासी आहे आणि या अवकाशयानावरचा डॉक्टर आहे. मला आशा वाटते की आपली चांगली मैत्री होईल."

"मलासुद्धा"

"माझ्या ग्रहावर, आम्ही मागास जावा भाषेऐवजी प्रगत पास्कल प्रोग्रॅमिंग भाषा वापरतो. जावा आणि पास्कलचा कोड शेजारी-शेजारी ठेवून केलेली ही तुलना बघ:"

जावा पास्कल
public class MyFirstClass
{
   public static void main(String[] args)
   {
      int a, b, c;
      String s1, s2;
      System.out.println("Enter two numbers");
      a = new Scanner(System.in).nextInt();
      b = new Scanner(System.in).nextInt();
      c = a + b;
      System.out.println("The sum is " + c);
   }
}
Program MyFirstProgram;
Var
   a, b, c: Integer;
   s1, s2: String;
Begin
   WriteLn("Enter two numbers");
   ReadLn(a);
   ReadLn(b);
   c := a + b;
   WriteLn("The sum is ", c);
End.

"हा एकच प्रोग्रॅम दोन वेगवेगळ्या भाषांमध्ये लिहिला आहे. तू पाहू शकतोस, त्याप्रमाणे यात पास्कलमध्ये कमी ओळी आहेत, यावरून उघड दिसते आहे की पास्कल जावापेक्षा श्रेष्ठ आहे."

"जर तू आधी कधीतरी पास्कल पाहिले असशील तर या उदाहरणामुळे तुला जावा अधिक चांगल्याप्रकारे समजायला मदत होईल, असे मला वाटले."

"नाही पाहिले मी कधी. तरीसुद्धा, दोन प्रोग्रॅमिंग भाषांची तुलना करणे रंजक आहे."

"ठीक आहे. मग मी पुढे सुरू ठेवतो."

"पास्कलमध्ये, आपण प्रोग्रॅम बॉडी, प्रोसिजर्स किंवा फंक्शन्समध्ये कोड लिहितो. जावामध्ये, ही प्रक्रिया सोपी करण्यात आली आहे: प्रोग्रॅम बॉडी, प्रोसिजर्स किंवा फंक्शन्स या सर्वांच्याऐवजी मेथड्स नावाची फंक्शन्स वापरली जातात."

जावा पास्कल
मेन मेथड
public static void main(String[] args)
{
   System.out.println("Ho-ho-ho!");
}
प्रोग्रॅम बॉडी
Begin
   WriteLn("Ho-ho-ho!");
End.
फंक्शन/मेथड
double sqr(double a)
{
   return a * a;
}
फंक्शन
Function Sqr(a: Real): Real
Begin
   Sqr := a * a;
End;
व्हॉईड रिटर्न टाईप असलेले फंक्शन
void doubleWrite(String s)
{
   System.out.println(s);
   System.out.println(s);
}
प्रोसिजर
Procedure DoubleWrite(s: String);
Begin
   WriteLn(s);
   WriteLn(s);
End;

"पास्कलच्या स्तंभात, मला 'प्रोग्रॅम बॉडी', 'फंक्शन', आणि 'प्रोसिजर' असे शब्द दिसतात, पण जावामध्ये त्यांना मेथड्स म्हटले जाते. हे जरा विचित्र आहे."

"हो, आम्हाला परग्रहवासियांना हे फारच विचित्र वाटले. पण मानवांना सगळे एकत्र करायला आवडते."

"जावामध्ये, सगळा कोड एका मेथडचा भाग असतो, त्यामुळे आपल्याला मेथड डीक्लेअर करण्यासाठी पास्कलसारखा फंक्शन हा शब्द वापरायलासुद्धा लागत नाही."

"हे फारच सोपे आहे. जर कोडची ओळ प्रकार + नाव, अशी दिसली तर ते मेथड किंवा व्हेरीएबलचे डीक्लेरेशन असते. जर नावापुढे कंस असेल तर ते नवीन मेथडचे डिक्लेरेशन असते. जर कंस नसतील तर, ते व्हेरीएबलचे डीक्लेरेशन असते."

"जावामधले व्हेरीएबल्स आणि मेथड्सचे डिक्लेरेशन अगदी सारखे असते. तुझे तूच बघू शकतोस:"

कोड वर्णन
String name;
name नावाचा स्ट्रिंग प्रकारचा व्हेरीएबल.
String getName()
{
}
String रिटर्न करणारी getName नावाची मेथड.

"पण एवढेच नाही. जावामध्ये, मेथड्स नुसत्याच असू शकत नाहीत. त्या क्लासमध्ये असाव्या लागतात. अशाप्रकारे, जेव्हा मानवांना जावामध्ये एक लहानसा प्रोग्रॅम लिहायचा असतो तेव्हा, त्यांना आधी क्लास तयार करावा लागतो,त्यात एक मेन मेथड डीक्लेअर करावी लागते, आणि मगच ते आपला कोड त्या मेथडमध्ये लिहू शकतात.. हे पृथ्वीवासी किती विचित्र आहेत!"

"धीरज आज सकाळी आला होता आणि त्याने मला तुला ह्या टास्क्स द्यायला सांगितले. तुला त्या आवडतील अशी मला आशा आहे."

1
टास्क
जावा सिंटॅक्स,  पातळी 1धडा 8
लॉक केलेले
मोठी साफसफाई
हा प्रोग्रॅम ज्या कोणी लिहिला तो फार गडबडीत होता, हे उघड आहे. वास्तविक, हे खरे नाही: हा प्रोग्रॅम शैक्षणिक कारणांसाठी लिहिला गेला होता, आणि लेखकाने मुद्दाम अतिरिक्त व्हेरीएबल्सची गर्दी केली आणि त्याचवेळी त्याने आवश्यक व्हेरीएबल्स डीक्लेअर केले नाहीत. आपण तो दुरुस्त करणार आहोत: अनावश्यक व्हेरीएबल्स कमेंट आऊट कर, आणि नसलेले व्हेरीएबल्स डीक्लेअर कर. मग प्रोग्रॅममध्ये पूर्णपणे सुसंगती येईल.
1
टास्क
जावा सिंटॅक्स,  पातळी 1धडा 8
लॉक केलेले
तुला करावेसे वाटत नाही का? तरीसुद्धा कर.
अगदी सर्वांत चांगल्या प्रोग्रॅमर्सनासुद्धा आळस त्रास देतो. आणि केवळ प्रोग्रॅमर्सचना नव्हे तर सगळ्यांनाच. तरीसुद्धा, स्वत:ला शिकवून व्यावसायिक होणे लोकांना जमले आहे. तर, आळशीपणा करू नका असे आम्ही सुचवत आहोत. त्याऐवजी, स्क्रीनवर ही घोषणा दाखव: "If you feel like it, do the task. If you don't feel like it, do it anyway". आणि ती नीट लक्षात ठेवण्यासाठी, ती 16 वेळा दाखव.
5
टास्क
जावा सिंटॅक्स,  पातळी 1धडा 8
लॉक केलेले
एका संख्येचा वर्ग काढणे
संख्येचा वर्ग काढण्याच्या अनेक पद्धती आहेत. उदाहरणार्थ, काही लोक एक संख्या लिहितात आणि तिच्याभोवती चौकोन काढतात. जे लोक कुठेही शिकलेले नाहीत, ते ही पद्धत वापरतात. इतर सर्वांना गुणाकार करावा लागतो, वर्गांचा पाढा लक्षात ठेवावा लागतो,...किंवा एक प्रोग्रॅम वापरावा लागतो. तुझ्या प्रोग्रॅमने 5 चा वर्ग दाखवला पाहिजे.
5
टास्क
जावा सिंटॅक्स,  पातळी 1धडा 8
लॉक केलेले
2+2 इतके सोपे
जावा अॅप्लिकेशनमध्ये, सर्व कृती फंक्शन्सद्वारा केल्या जातात. किंवा अधिक अचूकपणे सांगायचे तर मेथड्सद्वारे केल्या जातात. आपल्या प्रोग्रॅममध्ये, एका दयाळू मार्गदर्शकाने दोन संख्यांची बेरीज करणारी एक मेथड आधीच इम्प्लीमेंट केली आहे(म्हणजे मेथडचा कोड लिहिला आहे). तुला फक्त एवढेच करायचे आहे की 2 आणि 2 ही अर्ग्युमेंट्स पाठवून ही मेथड कॉल करायची आहे. तुला हे थेट मेन मेथडमध्ये करावे लागेल.
1
टास्क
जावा सिंटॅक्स,  पातळी 1धडा 8
लॉक केलेले
आरोग्यपूर्ण पदार्थांची निवड करा! फळांची निवड करा!
ज्यांची मूल्ये फळांची नावे आहेत असे व्हेरीएबल्स दाखव. प्रत्येक व्हेरीएबल, एका नवीन ओळीवर दाखव.
1
टास्क
जावा सिंटॅक्स,  पातळी 1धडा 8
लॉक केलेले
आवडती कविता
हल्लीचे प्रोग्रॅमर्स केवळ तंत्रज्ञान आणि उपकरणे यांनी पछाडलेले स्वयंपूर्ण अभियंतेच असतात असे नाही. तर त्यातले काही काव्याचे चाहतेसुद्धा आहेत. जर तूसुद्धा काव्य-प्रेमी असशील तर, तुला खालील टास्क करणे सोपे जाईल: तुझ्या आवडत्या कवितेतील एक (किंवा जास्त) कडवे दाखव.