Bu soru BTSoru.com’da soruldu. Benim cevabım şu şekilde oldu:
- Her platformda çalışır; sunucu mimarisinden bağımsızdır.
- Otomatik hafıza yöntemine sahiptir.
- Otomatik exception handling mekanizmasına sahiptir.
- Statik veri tipleri kullanılır. Bu kodun Compiler tarafından optimize edilmesini kolaylaştırır, compile işlemi esnasında hataların ortaya çıkmasını sağlar, IDE bünyesinde auto completion yapılmasını mümkün kılar.
- Hangi platform olursa olsun bir int 32 bit uzunluktadır, ön işareti mevcuttur (+ ya da -). Diğer veri tipleri de standart değerlere sahiptir.
- C’de olduğu gibi makro yazılmasına ve dış header dosyalarnın kullanılmasına izin vermez. Bu programcının hayatını kolaylaştırır.
- Javadoc, Interface ve implementasyon sınıfı kullanarak gerekli tüm tanımlamaları ve dokümentasyonu kod içinde ifade etmek mümkündür.
- Birden fazla sınıfın bir alt sınıf tarafından aynı zamanda extend edilmesine izin vermez. C++ bu mümkündür, ama kalıtımda içinden çıkılmaz sorunlar oluşmasına neden olabilir.
- Operatörlerin yüklenmesine (overloading) izin vermez. Örneğin Java’da a+b işleminde + operatörünün ne yaptığı bilinir. C++’da durum farklıdır.
- Segmentation Fault ya da Buffer overlow gibi hataların oluşmasına izin vermez. C/C++ dillerinde bu sorunlar programcının günlük hayatının bir parçasıdır.
- Dynamic linking ile kodu değiştirmek ya da derlemek zorunda kalmadan implementasyon sınıfları değistirilebilir. Örneğin C/C++ dillerinde bu mümkün değildir. Bu diller static linking mekanizması ile derlenir. En ufak bir değişiklik tüm sınıfların yeniden derlenmesini mecburi kılabilir.
- C/C++ dil ailesinden olduğu için kültür şoku geçirmeden Java öğrenmek kolaydır.
- Nesneye yönelik programlamayı destekler.
- Multithreaded uygulamalar geliştirilmesini mümkün kılar.
- Ögrenilmesi çok kolaydır.
- Çok büyük bir eko sisteme sahiptir. Açık kaynaklı projelerin büyük bir kısmı Java tabanlıdır.
- Javacılar açık kaynaklı proje geliştirme kültürüyle yetiştikleri için paylaşımcıdırlar.
EOF (End Of Fun)
Özcan Acar
java kullanıyorum çünkü javayı seviyorum başka açıklaması yok arkadaş
Bence listeye
– Java API’sinin getirdigi avantajlar
– Framework Destegi
eklenebilir.
Java ile ilgili tedaylı bir bilgim olmadığı için; sadece Platform bağımsız olması bile yeterli benim için :)