• Buradasın

    Java Programlama Dili ve Özellikleri Hakkında Eğitim Sunumu

    youtube.com/watch?v=8qPz0X4F8R4

    Yapay zekadan makale özeti

    • Bu video, on yıldan fazla yazılım deneyimine sahip ve "javacılar kralı" olarak tanıtılan Osman Hüngür tarafından sunulan Java programlama dili hakkında kapsamlı bir eğitim dersidir. Konuşmacı, sistem administration arka planından başlayarak PHP ve Java ile uzun yıllar çalışmış, şu anda danışmanlık yapan bir yazılımcıdır.
    • Sunumda Java platformunun temel özellikleri, multi-thread yapısı, object oriented yapısı, compile edilmiş bir dil olması ve platform bağımsızlığı gibi konular detaylı olarak anlatılmaktadır. Ayrıca Java'nın kullanım alanları (microservices, big data, Android uygulamaları, bankacılık, telekomünikasyon) ve Oracle'ın iddiasına göre 15 milyar cihazda çalıştığı bilgisi paylaşılmaktadır.
    • Videoda ayrıca PHP ve Java arasındaki performans farkları da ele alınmakta, Java'nın hazır bağlantı havuzları ve derlenmiş template'ler sayesinde PHP'ye göre 350-400 milisaniye yerine 10 milisaniye daha hızlı çalıştığı belirtilmektedir. Sunum, Java Runtime Environment (JVM), garbage collection ve Java'nın diğer diller (Kotlin, Scala, Clojure, Groovy) üzerindeki etkisi gibi konulara da değinmekte ve soru-cevap bölümüyle sonlanmaktadır.
    00:19Konuşmacının Kariyer Geçmişi
    • Konuşmacı on yıldan fazladır yazılım ile uğraşıyor ve daha önce sistem yönetimi arka planı var.
    • 2012 yılından itibaren Java ve PHP yazmış, ayrıca Ruby, Erlang ve Python gibi farklı diller de kullanmış.
    • Linux yönetimi arka planından dolayı otomasyon ve mimari dizaynı gibi işlerle de uğraşmış.
    01:28Kariyer Yolculuğu
    • 2012'de sunucu satarak kariyerine başlamış ve yaklaşık 1-3 sene hosting satmış.
    • 2005'te PHP yazmaya başlamış ve uzun süre PHP yazabileceğim şirketlerde çalışmış.
    • 2010'da Java yazan bir şirkete (sahibinden.com) geçmiş ve milyonlarca PHP kodunu Java'ya geçirerek devam etmiş.
    03:23Mevcut Durumu ve Sunumun Amacı
    • 2015'in ortalarında tek başına çalışmaya başlamış ve şu anda danışmanlık yapıyor.
    • Sunumda Java platformunun nasıl çalıştığı, popülaritesi ve nerelerde kullanıldığı hakkında bilgi verecek.
    • Derine inmek ve yüzeysel kalmak yerine arada kalmak istiyor ve izleyicilerin sorularını cevaplayacak.
    04:39Java'nın Özellikleri
    • Java platformu, bilgisayar üzerinde kod yazıp çalıştırabileceğiniz bir platformdur.
    • Multi-thread (concurrent) özelliği sayesinde bir işi aynı anda birden fazla thread üzerinden paralel şekilde yapabilirsiniz.
    • Tamamen object oriented, compile edilen ve statik yazılan strongly type bir dildir.
    05:29Multi-Thread ve Object Oriented Özellikleri
    • Multi-thread özelliği, bir işi birden fazla kişiye veya iş parçacığına bölerek daha hızlı tamamlamayı sağlar.
    • Object oriented özelliği sayesinde tüm kodlar sınıflar bazında yazılır.
    • Compile edilen kodlar, kaynak kodundan farklı bir dosya olarak bilgisayarın en hızlı çalıştırabileceği şekilde ortaya çıkar.
    07:04Statik ve Strongly Type Özellikleri
    • Statik ve strongly type özelliği sayesinde değişkenlerin tipleri programın sonuna kadar sabit kalır.
    • Değişkenlerin tipleri değiştirilemez, bu da bankacılık gibi veri kaybına müsaade etmeyen sektörlerde kullanılmasına sebep olur.
    • Java'nın en önemli özellikleri arasında bir kere yazıp her platformda çalıştırabilmenize imkan sağlaması vardır.
    08:33Java'nın Çalışma Prensibi
    • Java kodları herhangi bir platformda yeniden compile etmeden çalışabiliyor.
    • Java ilk yazılırken C ve C++'a yakın tutulmuş, ancak yorucu ve hataya sebep olan kısımları içerden çıkartılmış.
    • Java kodu JVM (Java Virtual Machine) tarafından çalıştırılır ve JVM sadece Java değil, Clojure, Scala, Groovy gibi farklı dilleri de çalıştırabilir.
    10:28JVM ve Çalışma Mekanizması
    • JVM, Java olarak derlenmiş olan kodu çalıştırabilmenizi sağlayan bir uygulamadır.
    • JVM kendi içinde garbage collection adı verilen bir yapı sayesinde zamanla kullanılmayan Java objelerin temizlenmesini sağlar.
    • JVM, kodun daha hızlı çalışmasını sağlayan ve optimizasyonlar yapmasını sağlayan yapılara sahiptir.
    12:12Java'nın Derleme ve Optimizasyon Özellikleri
    • Just in time compiler, derlenen kodu CPU'nun en hızlı çalıştırabileceği hale getirir ve her platform için farklı optimizasyon kuralları kullanır.
    • Hotspot özelliği, uygulamanın sürekli çalışırken en çok kullanılan yerleri tespit edip optimize eder, kullanılmayan alanları çıkarır ve metod inning yaparak tekrar hesaplamaları önler.
    14:05Java'nın Çalışma Alanları ve Popülaritesi
    • Java birçok platformda çalışır: desktop cihazlar, telefonlar, Blue Ray diskler, sunucular ve süper bilgisayarlar.
    • Oracle'ın iddiasına göre şu anda 15 milyar cihaz Java çalıştırıyor.
    • Java, Android platformunun büyük etkisiyle popülerlikte birinci sırada yer alıyor ve son 10 yıldır bu konumda.
    16:38Java'nın Kariyer Avantajları
    • Java ile iş bulmak kolaydır, özellikle bankacılık ve telekomünikasyon gibi kurumsal firmalarda tercih edilir.
    • PHP start-up'lar tarafından, Java ise kurumsal şirketler tarafından tercih edilir.
    • İstanbul ve Ankara sektörlerinde Java ve PHP ile kolay iş bulunabilirken, Python ve Ruby gibi diller daha az tercih edilir.
    20:09Java'nın Kullanım Alanları
    • Java'nın en önemli avantajı her platformda çalışabilmesi: mobil cihazlar, web uygulamaları, masaüstü uygulamaları.
    • Java, microservice ve RESTful mimarilerde oldukça kullanılır, örneğin Twitter'da görülen veriler RESTful yapıdan gelir.
    • Büyük veri mimarilerinde (Big Data) ve Android uygulamalarında Java yaygın olarak kullanılır.
    23:50Java'nın Sektörel Kullanımı
    • Java, finansal servisler, hisse senedi işlemlerinin yapıldığı servisler, online bankacılık ve telekomünikasyon gibi birçok sektörde kullanılır.
    • Konuşmacı, PHP'den Java'ya geçişinin nedenini, yüksek hitlere sahip bir site için PHP yerine Java tercih edilmesinin nedenlerini anlatacağını belirtiyor.
    25:27PHP ve Java Performans Karşılaştırması
    • PHP'de her istekte uygulama tekrar ayağa kalkıyor, memory yazılıyor ve kod execute ediliyor, bu da büyük bir maliyet oluşturuyor.
    • PHP kolay yazılan ve çalıştırılan bir dil olmasına rağmen multi-thread olmadığı için thread problemleri yaşanmıyor.
    • Java'da uygulama sürekli ayakta bekliyor, sınıflar hazırda bekliyor ve veritabanı işlemleri için hazırda olan bağlantı havuzundan bağlantı kullanılıyor.
    27:29Performans Farkları ve Etkileri
    • PHP ile kullanıcıya dönen response süresi 350-400 milisaniye iken, Java'da bu süre 10 milisaniye idi.
    • Performans farkı sayesinde daha az sunucu maliyeti oluşuyor ve veri beslediğimiz sistemler daha az yoruluyor.
    • PHP ile anlık olarak 5000 kullanıcı sayfaya girdiğinde, MySQL'e 5000 bağlantı açılıyor ve Redis, MongoDB gibi sistemlere de bağlantı kuruluyor.
    29:31Scala ve Diğer Java Alternatifleri
    • Scala, Java'daki her nesnenin veya değişkenin tipini belirlemenizi sağlayan, Java'nın bir alt su seti olan bir dil.
    • Kotlin de benzer şekilde yazması kolay ve aynı kütüphaneleri kullanabiliyorsunuz.
    • Scala'da aktör, model gibi Java'da olmayan farklı özellikler bulunuyor ve bu tamamen kişisel tercihe bağlı.

    Yanıtı değerlendir

  • Yazeka sinir ağı makaleleri veya videoları özetliyor