Java ile Programlamaya Giriş | Java Hakkında


 

Herkese merhaba arkadaşlar, bu serimizde Java hakkında konuşmaya başlayacağız ve Java platformları hakkında bilgiler aktararak, adım adım bu platformlar üzerinde kodlama eğitimlerine geçeceğiz. Peki nedir bu Java?

Java ; Sun Microsystems mühendislerinden James Gosling tarafından geliştirilmeye başlanmış açık kodlu, nesneye yönelik, zeminden bağımsız, yüksek verimli, çok işlevli, yüksek seviye, adım adım işletilen (yorumlanan-interpreted) bir dildir.Java doğası gereği sistemden(işletim sistemi) bağımsız olarak çalışabilir. Bu sayede Java ile yazacağınız bir uygulama Windows,Linux veya Macintosh bir sistem üzerinde rahatlıkla çalışacaktır. Java Nesne Yönelimli bir dil olduğu için bir çok avantaj sunmaktadır. Javanın kendi özelliği olarak aynı amaca yönelik görevlerin sınıf(class) denilen yapılar içerisinde toplanması ile geliştiriciye rahat bir geliştirme yapmasını sağlar. Java güvenli ve dayanıklıdır. C/C++ da bulunan pointer kavramı Java’da C/C++ olduğu gibi geliştiriciye açık olmadığı için, bu adımlardan doğabilecek açıklar Javada rastlanamaz. Java‘nın sağladığı bir diğer özellik ise atık temizleme yapısı. Java içerisinde built-in olarak bulunan bir takım araçlar hafıza temizlemeyi dinamik olarak ele aldığı için bir süre sonra hafıza dolması gibi sorunlar Java’da karşılaşılacak durumlardan değildir. Built-in olarak bulunan bir araç olan Garbage Collector hafıza içerisinde tutulan ve artık kullanılmayan nesneleri dinamikotomatik olarak temizlemektedir. Java’nın güvenli olmasını sağlayan bir neden ise çalışma mekanizmasıdır. Çalışma Mekanizmasını açıklayacak olursak;

Java ClassLoader denilen bir yapı mevcuttur. Bu yapı yazılan-geliştirilen uygulamanın içerisinde gerekli sınıflar class loader ile programa dahil edilir. Ancak Class Loader lokal sınıfları ve üzerinden gelen sınıfları ayrı lokasyonlarda sakladığı için, ağ üzerinden gelen sınıflar lokal güvenilir sınıfların üzerine yazılma ihtimalini ortadan kaldırır.

 

Java Paketleri

Paket denilen şeyi aslında daha önce başkalarının yazıp dil içerisinde kullanılacak şekilde hazırladığı program parçaları olarak düşünebilirsiniz. Bu parçalar içerisinde ana programınızı yazmak için bazı özel işleri yapabileceğiniz(dosya işlemleri, ağ işlemleri, ekran işlemleri v.b.) araçlar yer almaktadır. Bu araçlar aslında tüm önemli işlerini temelini oluşturacak görevleri yapabilmektedir. Daha özel uygulamalar bu temel araçların üzerine geliştirilir. Bu nedenle temel araçları en baştan tekrar yazmak yerine paket içerisinden kullanırız. Daha teknik anlamda bu araçlar; sınıflar ve bu sınıflara ait metod ve değişkenlerdir. Bu paketlere aynı zamanda Sınıf Kütüphaneleri (Class Libraries) de denilir.(Bu paragraf alıntıdır)

 

Java Teknolojileri

 

 

Java bildiği kadar küçük bir teknoloji kümesi değildir. Java EE Java Se, Javanı en çok bilinen teknolojilerindendir. Java, EE, SE, ME ve JavaCard olarak dört ana başlıkta listene bilir. Java EE Web tabanlı kurumsal online uygulamaları geliştirmek, oluşturmak ve dağıtmak için Java merkezli bir ortam, bağımsız bir platformdur. Java EE, birçok Java Standard Edition (Java SE) bileşeni içerir. Java EE platformu, çok katmanlı, Web tabanlı uygulamaları geliştirmek için bir takım hizmetler, API’ler ve protokollerden oluşur.Java SE (Java Standard Edition) masaüstü ve sunucu ortamları için taşınabilir uygulamaların geliştirilmesi ve dağıtımı için yaygın olarak kullanılan bir platformdur.Java ME veya J2ME (Java Micro Edition) çeşitli cihazlar için tanımlanmış bir grup belirtim ve teknolojidir. J2ME belli sınıflardaki cihazlar için bir grup yapılandırma ve profillere bölünmüştür. Şu anda çoğu telefon bu platformu desteklemektedir. Şu anda belli güncellemeleri çıkan bu platformun, telefonlarda güncellemesini yapabilmeniz için, işletim sisteminin desteklemesi gerekmektedir . Java Card teknolojisi, akıllı kartlarda ve sınırlı bellek ve işleme özelliklerine sahip diğer güvenilir aygıtlarda çalışan uygulamalar için güvenli bir ortam sağlar. Tek bir karta birden fazla uygulama dağıtılabilir ve son kullanıcıya verildikten sonra bile yenileri eklenebilir. Java Card ayrıca yeni ürünler geliştirmek için bir dizi benzersiz araç içerir.(Alıntıdır)

 

Java’da Nesne Kavramı ve Sınıf Nesnelerinin Tasarımı 

 

Java’da her şey bir nesnedir ve nesneler sınıf denilen yapılar ile meydana getirilir. Her nesne kendisine ait bazı temel özellikleri barındırır. Bu çeşitli bilgiler nesneye ait bazı değişkenler, nesne ile ilgili bazı işleri yapacak çeşitli fonksiyon ve sabitlerdir. Yine bir nesne içerisinde kullanacağı başka nesnelerde olabilir. Buradan da anlıyoruz ki aslında bir sınıf nesnesi birden fazla veri tipinin bir arada bulunduğu ve belli bir işi yapmaya yönelik hazırlanan birleşik bir yapıdır.Bir sınıf nesnesi yazılırken değişmez bazı kurallar vardır. Bu kurallar neticesinde siz de kendinize ait sınıflar
yazabilirsiniz.Şimdi temel olarak bir sınıf nesnesinin nasıl yazılacağına bakalım.

 

public class Ogrenci{

 String ogrenci_adi;
 String ogrenci_bolum_adi;
 int ogrenci_numarası;
 int ogrenci_yasi;
 
 float ogrenciAdiYaz() {
 
 }

 void ogrenciBolumDegistir(String ogrenci_bolum_adi) {
 
 }

}

Bu örneği incelediğimizde bir sınıf nesnesi yazarken “classanahtar sözcüğünü kullanıyoruz. Nesnemizin tamamı, class anahtar sözcüğü ile onu takip eden ve bizim vereceğimiz isimden sonra açılan küme parantezi ile en sonda kapatılan küme parantezi içerisine yazılmaktadır. Ogrenci nesnesi oluşturulurken en başta kullanılan public anahtarı ise bu nesnenin başka nesneler içerisinde de kullanılabileceğini belirtmektedir. Bu anahtar sözcük gibi nesnenin doğrudan kullanılamayacağını belirtebileceğiniz “private” anahtar sözcüğü de mevcuttur. Bunu dışında yeri geldikçe kullanılabilecek başka anahtar sözcüklerin olduğunu da belirtmeliyiz. Görüldüğü gibi artık bir Ogrenci(sınıf) nesnemiz mevcut. Ogrenci nesnemiz içerisinde;

ogrenci_adi,ogrenci_bolum_adi,ogrenci_numarasi,ogrenci_yasi gibi değişkenler var. Bu değişkenlere sınıf nesnesi adı verilir,yani belirtilen sınıfa ait olan değişkenlerdir(nesne). Sınıf nesnemiz için belirttiğimiz class anahtarı gibi bu değişkenlerin başında String ve int şeklinde iki anahtar sözcük var. String anahtarı, tanımlanacak nesnenin veri tipini belirtir. Aynı şekilde int de tanımlanan nesnenin veri tipini işaret etmektedir bize. Peki ne bu veri tipleri?

Java Veri Tipleri

Temel veri tiplerimiz bu şekilde arkadaşlar. Dikkat etmişsinizdir, yukarıda yazdığımız örnekte bir değişken String, ama bu tablo içerisinde String bir değişken yok. Evet bu doğru çünkü String değişken aslında temel bir veri tipi değildir. String tek bir karekter yerine bir sözcük, bir tümce, bir paragraf ya da bir roman yazmak istediğimizde char veri tipi yeterli olmayacaktır. Modern dillerin çoğunda olduğu gibi, Java dili de metinleri içerecek  bir veri tipi yaratmıştır. Bu tipe String denilir. Bütün veri tiplerinin oluşturulduğu bir nesne sınıfı yazalım şimdide.

public class VeriTipleri {

int bu_degisken_int; 
short bu_degisken_short;
long bu_degisken_long;
byte bu_degisken_byte;
float bu_degisken_float;
double bu_degisken_double;
char bu_degisken_char;
String bu_degisken_String;
boolean bu_degisken_boolean;

Şu şekilde her bir veri tipi için bir değişken oluşturarak o değişkenin veri tipini sırayla temel veri tiplerinden seçtik.

Java Özel Karakterler

C ve C++ programlama dillerinde de olduğu gibi Javada klavyeden girilen bir takım özel karakterlerin karşılığı vardır. Bu özel karakterler bip sesi, enter tuşu, alt satır başı, tab tuşu gibi karakterlerdir. Bu karakterler kullanılırken başlarına \ işareti koyulur ve uygun sembol yerleştirilir. Buna göre:

\n : alt satır başına

\t : tab tuşu

\\ : \ işareti

\b : backspace (bir önceki karakteri silme)

\r : kendisinden önce gelen tüm karakterleri satır başına kadar silme

// : tek satır üzerinde açıklama

/**/ : çoklu satır üzerinde açıklama

 

Buraya kadar Java’nın genel yapılarından, teknolojilerinden,veri tiplerinden ve nesnelerinden bahsettik. Bir sonraki yazımızda; Java SE üzerinde konuşmaya başlayarak Java SE eşliğinde masaüstü uygulama geliştirmeye adım atacağız. Yorum ve önerilerinizi aşağıdaki kısımdan bizlere ulaştırabilirsiniz. İyi çalışmalar herkese.

 

Java ile Programlamaya Giriş | Java Hakkında

Giriş Yap

Hoşgeldin
Don't have an account?
Kayıt Ol

Şifreni Yenile

Back to
Giriş Yap

Kayıt Ol

Ekimize Katılmaya Hazırmısın

Back to
Giriş Yap
Choose A Format
Personality quiz
Series of questions that intends to reveal something about the personality
Trivia quiz
Series of questions with right and wrong answers that intends to check knowledge
Poll
Voting to make decisions or determine opinions
Story
Formatted Text with Embeds and Visuals