Paghahambing kay Pascal - 1

"Hi. My name is Laga Bilaabo. I'm an extraterrestrial and this ship's physician. Sana maging mabuting magkaibigan tayo."

"Ako rin."

"Sa aking sariling planeta, ginagamit namin ang advanced na Pascal programming language sa halip na ang backward Java language. Tingnan ang magkatabing paghahambing na ito ng Java at Pascal code:"

Java Pascal
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.

"Ito ay ang parehong programa na nakasulat sa dalawang magkaibang mga wika. Tulad ng makikita mo, mayroon itong mas kaunting mga linya sa Pascal, na isang katibayan na ang Pascal ay higit na mataas sa Java."

"Akala ko ang halimbawang ito ay maaaring makatulong sa iyo na mas maunawaan ang Java kung nakita mo na si Pascal dati."

"Hindi, wala pa. Gayunpaman, nakakatuwang paghambingin ang dalawang programming language."

"Fair enough. I'll continue then."

"Sa Pascal, inilalagay namin ang code sa katawan ng programa, mga pamamaraan o mga pag-andar. Sa Java, ang prosesong ito ay pinasimple: ang katawan ng programa, mga pamamaraan, at mga pag-andar ay papalitan ng mga function na tinatawag na mga pamamaraan."

Java Pascal
Pangunahing paraan
public static void main(String[] args)
{
   System.out.println("Ho-ho-ho!");
}
Katawan ng programa
Begin
   WriteLn("Ho-ho-ho!");
End.
Function/paraan
double sqr(double a)
{
   return a * a;
}
Function
Function Sqr(a: Real): Real
Begin
   Sqr := a * a;
End;
Function na may void return type
void doubleWrite(String s)
{
   System.out.println(s);
   System.out.println(s);
}
Pamamaraan
Procedure DoubleWrite(s: String);
Begin
   WriteLn(s);
   WriteLn(s);
End;

"Sa column ng Pascal, nakikita ko ang mga salitang 'katawan ng programa', 'function', at 'procedure', ngunit sa Java lahat sila ay tinatawag na mga pamamaraan. Medyo kakaiba iyon."

"Oo, kaming mga extraterrestrial ay nakakatuwang kakaiba. Ngunit ang mga tao ay gustong pag-isahin ang lahat."

"Sa Java, ang lahat ng code ay bahagi ng isang pamamaraan, kaya hindi mo na kailangang isulat ang salitang Function, tulad ng sa Pascal, upang magdeklara ng isang pamamaraan. "

"Napakasimple ng lahat. Kung ang isang linya ng code ay parang Type + Name , ito ay isang deklarasyon ng alinman sa isang pamamaraan o isang variable. Kung ang pangalan ay sinusundan ng mga panaklong, kung gayon ito ay isang deklarasyon ng isang bagong paraan. Kung walang mga panaklong, pagkatapos ito ay isang deklarasyon ng isang variable. "

"Ang mga deklarasyon ng mga variable at pamamaraan sa Java ay halos magkapareho. Tingnan para sa iyong sarili:"

Code Paglalarawan
String name;
Variable na tinatawag namena a String.
String getName()
{
}
Paraan na tinatawag getNamena nagbabalik ng String.

"Ngunit hindi lang iyon. Sa Java, ang mga pamamaraan ay hindi maaaring umiral nang nag-iisa. Dapat silang nasa loob ng isang klase. Kaya, kapag ang mga tao ay kailangang magsulat ng isang maliit na programa sa Java, kailangan muna nilang lumikha ng isang klase , magpahayag ng isang pangunahing pamamaraan sa loob nito , at saka lang nila maisusulat ang kanilang code sa pamamaraan . Napakakakaiba nitong mga earthlings!"

"Si Diego ay dumaan kanina at hiniling sa akin na bigyan ka ng mga gawaing ito. Sana ay magustuhan mo ang mga ito."