JS

Neden JavaScript? sorusuna üç cevap bulduktan sonra örnek web sayfalarını biraz daha geliştirdim. Kullandıkça JS daha sevimli görünmeye başladı. Bu satırların yazıldığı 2018 ortasında, en sık kullandığımız web sayfalarının tamamının ön-yuzü (client side) JavaScript ile kodlanmış. Sadece bu bile, gençlere ne öğretmemiz gerektiğini açıkça gösteriyor.

Java’dan JavaScript’e Geçiş

Peki bunca senedir yazdığımız Java kodu ne olacak? Zaman içinde hepsinin JS kodu olarak GitHub’da yayınlanacağını umuyorum. Bunun için otomatik çevirme yöntemleri mevcut. Bir örnek: JSweet

JavaScript’e geçenlere (en başta kendime) bu dönüşümü elle yapmalarını tavsiye ediyorum. Hem öğretici olur hem de JavaScript yaklaşımını daha iyi anlarız. Basit bir örnek olarak, Small-Simple-Safe sayfaları içinden seçtiğim Decimal.java -> JS dönüşümünü inceleyelim:

Java class JavaScript

  1. package kavramı yok, sil (namespace var ama şimdilik uzak duralım)
  2. public kavramı yok, sil
  3. int, float, String gibi türleri sil (büyük rahatlık ama riskli)
  4. field (=property) tanımlarını sil (bu daha da riskli görünüyor)
  5. property kullanırken, this. ekle (Java’da izin var ama kullanmıyorduk)
  6. constructor adını değiştir (class adı değişince bu metod aynı kalacak)

Hepsi bu kadar :)

Java Alışkanlıkları

Java imlasının çoğu aynı kalıyor ama alışmamız gereken önemli farklar var:

Peki JavaScript dilinde ne eksik? Thread kavramı eksik ve web sayfalarına hiçbir şekilde eklenemez görünüyor. Ayrıca, güvenlik açısından, dosya erişimi çok sınırlı ve yazma hakkı vermiyor. Lakin, yazdığım programların web sayfalarında bütün dünyaya açık olması o kadar büyük bir avantaj ki, bu iki eksikliğe gönül rahatlığı ile katlanıyorum.

Console & Debugger

Yaygın kullanılan web tarayıcılarının hepsinde Developer Tools (Ctrl-Shift-I) ile başlatılıyor.

Yazılım geliştirmenin önemli bir parçası olan Debugging & Testing bu ekranda yapılıyor.

Console

The power of JavaScript lies in its simplicity

Ref: JavaScript fundamentals