JAVA MÜLAKAT SORULARI 14

Serdar Arslan
4 min readAug 5, 2022

--

Java Mülakat Soruları yazımızın on dördüncü kısmında iyi okumalar ve mülakatlarda bol şans diliyorum.

64.Bpm nedir?

  • BPM(business process management) kısaca süreç yönetimidir.
  • Varolan iş süreçlerinin tanımlanmasını, geliştirilmesini, takip edilmesini sağlayan yönetim sistemi bütünüdür.
  • Elinizdeki kaynakları maksimum verimle kullanmanızı sağlar. Örneğin; küçük bir şirketiniz var veya çalışıyorsunuz.
  • Size proje için verilen kısıtlı bütçe, teknolojik yeterlilik, malzeme, zaman gibi etmenleri maksimum fayda ile kullanarak müşteriye en verimli şekilde sunma aşamasıdır diyebiliriz.

65.Hazelcast Nedir?

  • Hazelcast açık kaynak kodlu Java tabanlı veri kümeleme, dağıtımı için yapılmış bir yapıdır. Hazelcast verileri anlık olarak hafızada tutuyor. JVM’ler sayesinde verileri eşit şekilde balans etmeye çalışarak veri yükünü düzgün şekide paylaştırıp, hızlı güvenli ve en az veri kaybı için çalışan bir yapıdır Hazelcast. JVM’leriniz ve sunucular arasında bu veri yükünün dağılımını belirleyebiliyoruz.
  • Hazelcast ile farklı instance’ler arasında haberleşebilir ve diğer instance’lere erişebilirsiniz.
  • Hazelcast Java tabanlı olsada , C#’ı da desteklemektedir. Hazelcast Maven dostudur ve uygulamanıza eklemek isterseniz sadece ihtiyacınız olan dosyayı indirip projenize dahil etmeniz yeterlidir. Başka bir bağımlılık istemiyor. Hazelcast yönetimini konsol üzerinden yapabildiğimiz gibi web arayüzü üzerinden de yönetebiliyoruz.
  • Hazelcast verileri hafızada bir map şeklinde tutuyor. Bu verileri Hazelcast aracılığı sadece yönetmekle kalmayıp, verileri kitleme, kuyruğa alma gibi işlemleri yapabiliyoruz. Veriler ram’de tutulurken bir o kadarı da backup şeklinde yine bellekler arasında paylaştırılıp veri kaybını en aza indirmeyi amaçlıyor. Verileri kısaca bir map gibi ramde tuttuğundan bahsettim ancak Queue, List, Map, Set, Lock gibi farklı veri tipleri de tutabiliyor.
  • Varolan sunucunuza ve Hazelcast sistemine yeni sunucu ya da JVM eklendiği zaman bu sunucu ile veriler hemen paylaşılmaya başlıyor.

66.Hazelcast Projede nasıl kullanılır?

  • Projenize Hazelcast’i dahil etmek isterseniz Maven kullanarak

<dependency>

<groupId>com.hazelcast</groupId>

<artifactId>hazelcast</artifactId>

<version>3.5.3</version>

</dependency>

Ardından sınıflarınızda kullanmak için

import com.hazelcast.core.*;

import com.hazelcast.config.*;

Projeye de nasıl kullanırım diyorsanız;

Config cfg = new Config();

HazelcastInstance instance = Hazelcast.newHazelcastInstance(cfg);

ardından

Map<Integer, String> mapKisi = instance.getMap(“kisi”);

mapKisi.put(1, “Burak”);

mapKisi.put(2, “Ahmet”);

ekleyerek map’imizi oluşturuyoruz geri kalan ise Hazelcast config ayarları ve dinleyeceği adresleri belirlemek yetiyor. Kuyruk’taki ya eklenen verileri otomatik ya da sizin belirlediğiniz şekilde dağıtımını yapabiliyor.

67.Java bean nedir?

  • Basitçe java bean, tekrar kullanılabilir bir yazılım bileşenidir (reusable software component). Daha detaylı bakıldığında aslında her java bean bir yada birden çok sınıftan (class) oluşmuş ve tek başına çalışma yeteneği olan bileşenlerdir.
  • Tek başına çalışabilen bu bileşenler, daha gelişmiş programlar oluşturmakta kullanılırlar. Düşük bağlılık (coupling) ve yüksek uyumdaki (cohesion) program parçalarının bir araya getirilmesi ile daha modüler bir yaklaşım elde etmek ve büyük bir projeyi parçalara bölmek mümkündür.
  • Örneğin bir yazılımda veritabanı kullanıyor olalım. Kullanıcıların şifreleri ile giriş yaptıkları bu veritabanı modülünü ele alalım. sınıf (class) yaklaşımında bir veritabanı sistemindeki kullanıcılar (kullanıcı bilgileri, isim, şifre gibi) , veritabanı nesneleri (tablolar) veritabanından geçici alınan bilgiler (veri tabloları, data table) veya kullanıcıların sistemde açtıkları oturumlar (session) ayrı ayrı birer sınıfta tanımlanır.
  • Oysaki bütün bu sınıfları birleştirerek tek bir java bean yapmak mümkündür. Tek başına çalışan bu java bean projenin bir modülü olup bu modül kullanılarak daha büyük sistemlerin inşası mümkündür.
  • JAVA Bean’lerin bir diğer özelliği ise geliştirme sürecinde çalıştırılabilir olmalarıdır. Sonuçta tek başına çalışan bu bileşenler, kod geliştirme (Development) zamanında da çalışabilir ve yazılımı geliştiren kişilere anlık olarak kullanma ve yaptığı her işlemi test etme imkanı sağlar.
  • JAVA Beanler ayrıca şu 3 özelliği barındırmalıdır:
  • Public Constructor
  • Serializable olmalıdırlar yani Serializable arayüzünü (interface) uygulamalıdırlar (implements)
  • Erişim metodları bulunmalıdır (getter /setter methods)
  • Yani bir java bean’in hiç constructor fonksiyonuna ihtiyacı olmasa bile bir adet boş yapıcı (empty constructor) bulunmalıdır. Ayrıca hiçbir değişkenin erişimi public olmamalıdır. Bunun yerine bu değişkene erişen getter ve setter fonksiyonları bulunmalıdır.

Yazımızın Devamı:

https://medium.com/@serdararslan116/java-m%C3%BClakat-sorulari-15-5e8466dff9ea

--

--