Pascal ile Karşılaştırma - 1

"Merhaba. Benim adım Laga Bilaabo. Ben bir dünya dışıyım ve bu geminin doktoruyum. Umarım iyi arkadaş oluruz."

"Ben de."

"Benim gezegenimde, geri kalmış Java dili yerine gelişmiş Pascal programlama dilini kullanırız. Java ve Pascal kodunun şu yan yana karşılaştırmasına bakın:"

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.

"Bu, iki farklı dilde yazılmış aynı program. Gördüğünüz gibi Pascal'da daha az satır var, bu da Pascal'ın Java'dan üstün olduğunun kanıtı."

"Pascal'ı daha önce gördüyseniz, bu örneğin Java'yı daha iyi anlamanıza yardımcı olabileceğini düşündüm."

"Hayır, yapmadım. Yine de iki programlama dilini karşılaştırmak ilginç."

"Yeterince adil. O zaman devam edeceğim."

"Pascal'da kodu program gövdesine, prosedürlere veya işlevlere yerleştiririz. Java'da bu işlem basitleştirilmiştir: program gövdesi, prosedürler ve işlevlerin tümü, yöntem adı verilen işlevlerle değiştirilir."

java Pascal
Ana yöntem
public static void main(String[] args)
{
   System.out.println("Ho-ho-ho!");
}
Program gövdesi
Begin
   WriteLn("Ho-ho-ho!");
End.
işlev/yöntem
double sqr(double a)
{
   return a * a;
}
İşlev
Function Sqr(a: Real): Real
Begin
   Sqr := a * a;
End;
geçersiz dönüş tipine sahip işlev
void doubleWrite(String s)
{
   System.out.println(s);
   System.out.println(s);
}
prosedür
Procedure DoubleWrite(s: String);
Begin
   WriteLn(s);
   WriteLn(s);
End;

"Pascal sütununda 'program gövdesi', 'işlev' ve 'prosedür' sözcüklerini görüyorum ama Java'da bunların hepsine yöntem deniyor. Bu biraz tuhaf."

"Evet, biz uzaylılar bunu çok tuhaf buluyoruz. Ama insanlar her şeyi birleştirmeyi sever."

"Java'da tüm kodlar bir yöntemin parçasıdır, dolayısıyla bir yöntemi bildirmek için Pascal'da olduğu gibi Function kelimesini yazmanıza bile gerek yoktur. "

"Her şey çok basit. Bir kod satırı Type + Name gibi görünüyorsa , bu bir yöntemin veya değişkenin bildirimidir. Adın ardından parantez geliyorsa, bu yeni bir yöntemin bildirimidir. Parantez yoksa, o zaman bu bir değişken bildirimidir. "

"Java'daki değişken bildirimleri ve yöntemler birbirine çok benzer. Kendiniz görün:"

kod Tanım
String name;
Adı verilen değişken namea String.
String getName()
{
}
getNamea döndüren çağrılan yöntem String.

"Ama hepsi bu kadar değil. Java'da yöntemler tek başlarına var olamazlar. Bir sınıfın içinde olmaları gerekir. Bu nedenle, insanlar Java'da küçük bir program yazmaları gerektiğinde, önce bir sınıf oluşturmalı, içinde bir ana yöntem bildirmeli ve ancak o zaman yöntemde kodlarını yazabilirler . Bu dünyalılar çok tuhaf!"

"Diego bugün erkenden uğradı ve sana bu görevleri vermemi istedi. Umarım beğenirsin."