Java öğrenmek istediğinizi söylüyorsunuz. Göz korkutucu bir dil olabilir. Yeni bir programcıysanız bile aşılmaz görünebilir. Ancak, derin bir nefes alıp denemeye karar veriyorsunuz. Tamam, ilk önce: Okuduğunuz entegre geliştirme ortamlarından (IDE) birine ihtiyacınız var. Yakında yazılacak Java uygulamanızı düzenleyebileceğiniz, oluşturabileceğiniz, çalıştırabileceğiniz, hatalarını ayıklayabileceğiniz ve dağıtabileceğiniz tek bir uygulama.

Çeşitli popüler, ücretsiz Java IDE'leri mevcuttur: Örneğin Eclipse , NetBeans ve IntelliJ'in topluluk sürümü . Birini seçiyorsunuz, indirip kuruyorsunuz ve çok kısa sürede öğrenmeniz gereken iki şey olduğunu fark ediyorsunuz: Java ve IDE. Seçtiğiniz geliştirme aracı, size yardımcı olması gereken dil kadar aşılmaz.

Yeni başlayanlar için özel olarak tasarlanmış IDE olan BlueJ 'u denemenizi tavsiye  ederim. Londra'daki King's College'da bulunan bir ekibin ürünüdür (ekip üyeleri zaman zaman Avustralya ve Danimarka'daki üniversitelerle bağlantılıdır). BlueJ ve Greenfoot'un yaratıcıları, yeni başlayanları boğmamak için özellik setini ve arayüz tasarımını seçtiler.

Aslında, baş geliştirici Neil Brown'un açıkladığı gibi, BlueJ'ler ve Greenfoot'un özellikleri “... kullanıcılar geldikçe ortaya çıkıyor”. Havuzun derin ucuna atılmazsınız. Sonuç olarak, her ikisi de sadece Java diline değil, aynı dilde uygulamalar oluşturmak için gerekli araç ve tekniklere de kolay bir giriş sağlıyor.

BlueJ ile Java öğrenin

BlueJ ilk olarak 1999 yılında sadece Blue olarak adlandırıldı. O zaman hem bir geliştirme ortamı hem de bir dildi. Java göründüğünde, dil olarak Java kullanılarak araç yeniden oluşturuldu ve ad BlueJ olarak değiştirildi.

Linux, MacOS ve Windows için BlueJ sürümleri bulunmaktadır. BlueJ ayrıca genel bir biçimde de gelir: JJ dosyası olarak paketlenir, böylece BlueJ, Java'yı destekleyen herhangi bir sisteme yüklenebilir. BlueJ'nin şu anki sürümü (bu yazı yazılırken 4.2.2) JDK 11 veya üstünü gerektirir ve bu nedenle 64 bit işletim sisteminde çalıştırılması gerekir. Daha önce 32 bitlik sürümler var, ancak artık geliştirilmiyorlar.

BlueJ'nin (ve Greenfoot'un) ilk önce geçen yıl aldığım bir Raspberry Pi 4'e önceden kurulmuş olduklarını biliyoruz. Daha sonra BlueJ'nin 2015'ten beri Raspberry Pi'ye kurulduğunu öğrendik.

BlueJ'de bir proje açtığınızda karşınıza sade ve kullanışlı bir arayüz geliyor.
Üstte menü çubuğu, geniş bir çalışma alanının solundaki araç çubuğu ve aşağıda daha küçük bir nesne tezgahı bölmesi var.
Araç çubuğundaki düğmeler bir sınıf oluşturmanıza, bir miras ilişkisi tanımlamanıza veya bir sınıfı derlemenize olanak tanır. Proje sınıfları, çalışma tezgahında bir tür ayrıştırılmış UML diyagramı olarak görünür ve BlueJ tam gelişmiş bir görsel geliştirme ortamı olmasa da, programınızdaki varlıklar arasındaki ilişkileri görebilmeniz, ancak gözden kaybetmemeniz için yeterlidir.

Çalışma tezgahındaki bir sınıf simgesine çift tıklayın ve kaynağı düzenleyicide açılır, burada başka bir görsel destek ortaya çıkar: kapsam vurgulama. Kapsam vurgulamasıyla, iç içe kod blokları farklı renkli arka planlarda tam anlamıyla vurgulanır, böylece sınıf içindeki bir yöntemin kapsadığı alanı, yöntem içindeki bir döngüyü, o döngü içindeki forbir ififadeyi forvb. Hızla görebilirsiniz . Kod yapısı anında anlaşılır.

Çalışma tezgahındaki bir sınıfa sağ tıklayın ve - sınıfın doğasına ve yapısına bağlı olarak - sınıfı derlemenizi, içeriğini incelemenizi, karşılık gelen bir test sınıfı oluşturmanızı (daha sonradan daha fazla), yürütmenizi sağlayan yeni bir menü görünür. sınıf yöntemi kullanabilir veya sınıfın bir nesnesini başlatabilir. Burada, BlueJ'nin etkileşimi merkeze giriyor.

Sınıflar ayrı ayrı derlenebilir; tek bir sınıfı değiştirdiyseniz projenin tamamını yeniden oluşturmanız gerekmez. Bir sınıf yöntemi yürütmeyi seçin ve yöntem girişlerini isteyen bir iletişim kutusu açılır. Girişleri girin, Tamam'a tıklayın ve başka bir iletişim kutusu gerçekleşir, dönüş değeri ve veri türü gösterilir.

Bir sınıfı başlatırsanız, nesne tezgahında yeni nesneyi temsil eden bir simge görünür. Sınıflarda olduğu gibi, nesne simgesini sağ tıklatıp nesnenin içeriğini inceleyebilirsiniz. Tek tek nesne örneği yöntemlerini de yürütebilirsiniz; girdi bağımsız değişkenlerini girmek ve dönüş değerlerini görüntülemek için iletişim kutuları (yukarıdaki gibi) görünür.

BlueJ, hata ayıklayıcı olmadan tam bir IDE olmazdı. BlueJ'de hata ayıklayıcı kesme noktalarını, diğer IDE'lerde yaptığınız gibi ayarlayabilirsiniz. Editör'de, hedeflenen kaynak kodu satırının solundaki sütunu tıklayın. Yürütme sırasında kesme noktası tetiklendiğinde, iş parçacıklarını, çağrı yığınını, statik kilidi ve örnek değişkenlerini ve tanıdık hata ayıklama kontrollerini (adım, adım atma, devam etme ve durdurma) gösteren BlueJ hata ayıklayıcı açılır penceresi açılır. Bir kez daha, BlueJ'nin düzenli sunumu sizinle göreviniz arasında durmuyor.

Yukarıda belirtildiği gibi BlueJ, sınıf simgesinin sağ tıklama menüsünden bir test sınıfı oluşturabilir. Otomatik oluşturulan sınıf, iskeletsel bir JUnit test sınıfıdır (JUnit 4, BlueJ ile entegre edilmiştir). Boş yapıcı setUp()ve tearDown()yöntemlerden oluşur. Sınıfın kaynağını düzenleyicide açarak test yöntemleri oluşturabilir veya bir dizi iletişim kutusu aracılığıyla sizi test yöntemleri oluşturmanıza yönlendiren bir tür yerleşik sihirbaz kullanabilirsiniz.

Benzer şekilde, BlueJ JavaFX ve Swing grafik uygulamaları oluşturmak için yardım sağlar. Öğreticiler sağlanır ve JavaFX öğreticisi aracılığıyla çalışmak, BlueJ'nin "canlı" nesneler üzerinde (uygulama çalışırken) yöntemleri yürütme yeteneğini kullanmanın gerçek faydasını ortaya çıkarır. Aslında grafiksel bir bileşende bir yöntem çağrısının sonucunu görebilirsiniz.

BlueJ'nin yerleşik etkileşimli eğiticileri sizi sahadan çıkarır. Daha fazla eğitim materyaline ihtiyacınız varsa , BlueJ yaratıcısı Michael Kölling tarafından ortak olarak yazılan Java ile Objects First kitabı , Java'da nesneye yönelik programlamaya yeni başlayan bir yaklaşım sunmak için geliştirme ortamı olarak BlueJ'yi kullanır.