![]() |
|
|||||||
| Programlama - HTML - Scripting Programcılığın her alanı üzerine olan bölümümüz. |
![]() |
|
|
LinkBack | Konu Araçları |
|
|
#1 | ||
|
Boş İnsan
Giriş Tarihi: Nov 2004
Mesajlar: 12
![]() |
programlama forumumuzu biraz olsun canlandırmak ve yeni deneyimler yaşamak için bugünden (bilen bilir.. yıllar önceydi aslında itibaren meraklılarına elimden geldiğince Java anlatacağım.başlıyoruz... bu yazıları programlamaya tamamen yabancı arkadaşları düşünerek yazacağım.. tabii herkes bu yazılardan bişeyler bulacaktır. her dersi ayrı bir başlık altına yazacağım. ve sizlerde her ders ile ilgili sorularınızı başlığın altına yazabileceksiniz ![]() programlama, sistematik düşünebilmeyi şunu bunu gerektirir gibi önemli detaylara girmeyeceğim, ancak orta ve üzeri bir bilgisayar kullanıcısı olduğunuzu varsayıyorum. ----------------------- neden Java... ----------------------- java diğer programlama dillerine göre henüz yeni sayılır. 1995 yılında geliştirilmeye başlanan java 1996 yılında 1.0 sürümü ile dikkatleri üzerine toplamada gecikmedi. ilk adı Oak olan java, daha sonra aynı isimle bir programlama dilinin olduğu farkedilince o sırada bir cafede "Java" içen programlama grubunun Java önerisiyle bu güne kadar adını ve ününü korudu. o zamanlar birçoğumuzun duymuş olduğu Java Applet'ler ile büyük yankı uyandırdı. şimdi ise görüyoruz cep telefonlarına "Midlet" furyası gidiyor. java işletim sisteminden bağımsız bir programlama dilidir. bireysel kullanım için ücretsizdir.. ilerde ticari bişiler yaparsanız, java sitesinde lisans ile ilgili bilgiler bolca bulunuyor. ---------------------- java'nın kullanım alanları ---------------------- . Grafiksel Kullanıcı Arayüzü) uygulamaları, Applet’ler · Veri tabanı erişim yazılımları · Servlet, Jsp · Dağıtılmış bileşenler (Distributed components) ( EJB, RMI, CORBA gibi ). · Cep telefonları, Televizyonlar ve Smart kartlar için uygulamalar. . İşletim sistemleri · Oyunlar ve daha ne istersen --------------------- Javayı Nerden Buluruz.... ---------------------------- mac kullanıcıları www.apple.com/java sayfasınını karıştırmalılar beos kullanıcıları www.bebits.com u eşelesinler... ve sayın windows kullanıcıları ve sevgili linux kullanıcıları... devamı sizler için javayı bizlere sunan Sun firmasının adresinden Java Geliştirme Seti (JDK)'ni indirebiliriz.. adresi http://java.sun.com/j2se/1.4.2/download.html hemen girip indirin... sayfaya girince 1------- 92 megabytelık komple geliştirme seti.......... NetBeans IDE + J2SE SDK Download J2SE v 1.4.2_04 SDK with NetBeans 3.6 Bundle linkine tıklayabilirsiniz. yazım boyunca kullanacağım editör olan NetBeans'ı da indirmek için bu seçenek ideal. yaklaşık 92 megabyte. bu fazla geliyorsa... aşağıda 2-------------------51 Megabyte lık Sadece Geliştirme Seti-- J2SE v 1.4.2_05 SDK includes the JVM technology The J2SE Software Development Kit (SDK) supports creating J2SE applications. More info... Download J2SE SDK linkine tıklayın... bu dosya ise 51 megabyte... sonraki sayfadaki lisansı kabul ettikten sonra: işletim sistemine göre seçiminizi yapın... windowsçular Windows Offline Installation, Multi-language (j2sdk-1_4_2_05-windows-i586-p.exe, 51.09 MB) linkine tıklayacaksınız. bu da çok diyorsanız sizlere geçici bir çözüm sunacağım... 3-- Sun Jre (15mb) + Ibm Jikes (800kb)+ Herhangi bir editör.... sun sitesinden sadece java JRE indireceksiniz.. ardından IBM in Java Derleyicisi olan Jikes i indireceksiniz.. editör olarak isterseniz not defteri kullanın yada .... evet JCreator kullanabilirsiniz.. şimdi size bunları anlatacam ilk önce http://java.sun.com/j2se/1.4.2/download.html adresine gidip... Java JRE (java çalıştırma ortamı) nı indireceğiz... sayfada şurayı bulun: J2SE v 1.4.2_05 JRE includes the JVM technology The J2SE Java Runtime Environment (JRE) allows end-users to run Java applications. More info... Download J2SE JRE linkine tıklayın ve sonraki sayfada lisans sözleşmesini kabul ettikten sonra Windows Offline Installation, Multi-language (j2re-1_4_2_05-windows-i586-p.exe, 14.91 MB) linkine tıklayın. indiirin... ve şimdi IBM Jikes derleyicisini indirelim 800 küsür kilobyte windows için http://oss.software.ibm.com/develope...t=file&id=1361 linux için http://oss.software.ibm.com/develope...t=file&id=1358 windowsçular jikesı c: içine açın... path değişkeninizi jikesin içindeki bin klasörünüde içerecek şekilde güncelleyin. bunları biliyorsunuzdur.. bilmeyenlere Path değişkenini ayarlamayı aşağıdaki başlıkta inceledim.. linuxçuların işi daha basit indirdikleri rpm'i kurmak yeterli. dar bant internet erişimi kullananlar için böyle bir alternatif sundum. ----------------------------------------------------------- windowsçular. path değişkeni ayarlamayı burada gösteriyorum ------------------------------------------------------------ 1- windows nt tabanlılar (nt,2000,xp,2003,longhorn,blackcomb... daha gider bu) ----------------- winkey+pause break tuşlarıyla sistem özelliklerini açıyoruz. Gelişmiş sekmesine tıklıyoruz... aşağılarda enine büyük bir düğme var "Ortam Değişkenleri" tıklıyoruz ona.. ikinci bölüm olan Sistem Değişkenleri bölümünde "Path" i bulup, çift tıklıyoruz ve end tuşuna (hey o tuş klavyede..) basıyoruz ve bir adet ; (noktalı virgül) koyuyoruz ve jikes'i nereye koyduysak (mesela ben c:\ içine) o adresi yazıyoruz... sonrada java jre'mizi veya java jdk (veya sdk ) nerelere attıysak o adresleri buraya ekleyecez... bunun için... java sdk(jdk) nereye kurulduysa, genelde c:\j2sdk1.4.x. gibi bir klasördür, yada her neredeyse o adresi şu şekilde path değişkeninin sonuna ekleyin: bir tane ; (noktalı virgül) koyuyoruz ve c:\j2sdkxxx\bin şeklinde genişletiyoruz... ve java jre kuranlar ise c:\program files\java\jre1.4xxx\bin şeklinde eklemelerini de yapıyorlar... özetle, path değişkeniniz java sdk indirenler için şuna benzer olabilir. c:\windows\....;c:\j2sdk\bin; ve java jre ile jikes indirenlerin değişkenleri buna benzer olacaktır. c:\windows\...;c:\jikesxxx\bin;c:\program files\java\jrexxx\bin örnek resim için tıklayın.... yeri gelmişken classpath değişkeninide ayarlayalım.... örnek resim... -------------------------------------------------------------- dos üzerine çıkma windowslar (98,MEEE) ------------------------------------------------------ başlat çalıştır... ve notepad c:\autoexec.bat yazıp enterlayın. dosyanın sonuna şunları ekleyin.. ------------- jikes ve java jre kullananlar... ------------------------------ set PATH=%PATH%;C:\jikesinyeri;"c:\program files\java\jrexxx\bin" set CLASSPATH="c:\program files\java\jrexxx\lib\rt.jar";. ----------------------------------- java sdk kullananlar ---------------------------------- set PATH=%PATH%;C:\j2sdkXXX\bin; set CLASSPATH="c:\j2sdkXXX\lib\tools.jar;." ve autoexec.bat dosyanızı Dosya-Kaydet ile kaydedin. ------------------------------- bunları da yazayım dedim... ----------------------------- java telif hakları tek bir firmaya bağlı olmasına rağmen Sun, java yazılımını geliştirmek isteyen firmalar için Java Belirtimleri sunmuştur. bu belgelerde zamanında C veya C++ da ki gibi standart sorunlarını bertaraf edecek javanın tüm detayları açıklanmıştır.(hemen hemen). belki duymuşsunuzdur Sun ile Microsoft arasındaki davaları.. bunlardan birinin nedeni Microsoft'un Windows içindeki Java Sanal Makinesi(JVM)'nin ve Visual J++ ın Sun'ın belirttiği şekilde yazılmamış olmasıydı.. bunun üzerine Sun, Microsoft'a dava açmış ve "adam gibi yapmayacaksanız, koymayın ürünümü programınıza kardeeşiiiim" demiştir. ve bunun sonucu olarak biz(ben değil... ben linux kullanıcısıyım...) WindowsXP içerisinde SP1 öncesi Sun'ın sitesinden JVM indirmeyen kullanıcılar, java applet içeren sitelere, mesela oyun sitelerindeki içerikleri çalıştıramadık. neyse.. bunlar aşıldı. -------------------- ilk programımızı yazalım ----------------------- netbeans indirenler de indirmeyenler, şimdilik notdefteri yada kwrite kullanacağız... açın editörünüzü.... public class merhaba { public static void main (String[] args) { System.out.println ("Merhaba Dünya...!"); } } bu dosyayı merhaba.java olarak bulabileceğiniz bi yere kaydedin. isimlendirme, büyük küçük harf ayrımı java için önemli... public class merhaba ile public class Merhaba farklı... public ise puBlic farklı... fakat isterseniz.. dosya ismi hariç (aslında mümkün) javada tanımlamalarda türkçe harfleri kullanabilirsiniz. şimdi komut satırını açın... ve dosyayı kaydettiğiniz yerde [javac yada jikes] merhaba.java komutunu verin çalıştırmak için java merhaba komutunu vermeniz yeterli ekrana ise Merhaba Dünya...! yazması olasılıklar dahilindedir. evet... java böyle bişi... Bölüm 2 Derleme, Çalıştırma, Sınıflar, Fonksiyonlar. evet kuyu kardeşlerim, sizlere ışık tutmaya devam ediyorum. yalnız, artık NetBeans ile java geliştirme setini indirmiş olmanızı umuyorum. kodlarınızı nasıl derleyeceğinizi ve nasıl çalıştıracağınızı bir kez daha hatırlattıktan sonra bunları tekrar yazma gereğinin olmadığını düşünüyorum. ilk programımızı inceleyerek, java hakkında bilgi vermeye devam edelim. [COLOR=Navy]public[/COLOR] [COLOR=Navy]class[/COLOR] merhaba { [COLOR=Navy]public[/COLOR] [COLOR=Navy]static [/COLOR][COLOR=Navy]void[/COLOR] main (String[] args) { }System.out.println ("Merhaba Dünya...!"); } şimdi programı satır satır inceleyelim, 1. merhaba adında bir sınıf oluşturuyoruz, java da herşey bir nesne olarak hazırlanır ve kullanılır, nesnenin yapı taşlarına da class (sınıf) deniyor. önündeki public kelimesi, bu sınıfın diğer sınıflar içerisinden de çağırılabileceğini bildirir. 2. bir java dosyası içinde birden çok sınıf tanımlayabiliriz. çalıştırılabilir olmasını istediğimiz sınıflar için main fonksiyonu tanımlanır. main fonksiyonunun dışarıdan kabul ettiği bir parametre vardır, o da, args isimli komut satırından program çağrıldığında girilen komut satırı parametreleridir. örneğin programı, java merhaba param1 param2 şeklinde çalıştırdığımızda main fonksiyonunun, args parametresine aktarılır. fonksiyonlar ve args parametresi hakkında detaylı bilgileri ileride vereceğim. java programının derlenmesini şu komutla sağlarız. javac dosya_ismi.java çalıştırmak için ise ; java class_ismi ve ekrana Merhaba Dünya...! çıktısını yazdığımız program verecektir. netbeans kullanıcıları, gerekli bilgileri bulabilirler. -------------------------------------------------------------------------- Nesne Nedir? Referans Nedir? -------------------------------------------------------------------------- bir oyuncak arabamız olduğunu düşünelim. arabayı kontrol etmek için kumandayı kullanırız. kumandayı referans olarak, arabayı da nesne olarak kabul edersek; arabamızı ilerletmek, oraya buraya döndürmek için referans olan kumandayı kullanırız. kumandamız olmadan arabamızı kullanabilir miyiz? hayır. java'da da referans (tanımlama) 'ınız olmadan bir nesneyi kullanamazsınız. örneğin; String araba; bir tanımlamadır. ancak, araba referansı henüz bir nesneye bağlanmaıştır. araba = new String ("Oyuncak Araba x400"); yada araba = "Oyuncak Araba x400"; şeklinde araba referansımız, "Oyuncak Araba x400" nesnesini yönetmeye hazırdır. araba.toUpperCase(); komutuyla, araba referansıyla "Oyuncak Araba x400" nesnesine "büyük harfli içeriği ver" emrini vermiş olduk. ve bu komutun sonucu kuşkusuz: "OYUNCAK ARABA X400" olacaktır. kodlarımıza bir de böyle bakalım; Kod:
/*
* merhaba.java
*
* Created on 25 Ağustos 2004 Çarşamba, 17:18
*/
/**
*
* @author freethings
*/
public class merhaba {
/** Creates a new instance of merhaba */
public merhaba() {
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
System.out.println("Merhaba Dünya...");
String araba = "Oyuncak Araba x400";
System.out.println(araba.toUpperCase());
}
}
Merhaba Dünya... OYUNCAK ARABA X400 Bizim programımız da bir nesne olduğuna göre, şimdi kendi nesnemizi oluşturalım. örnek kodlar aşağıda: Kod:
public class merhaba {
/** Creates a new instance of merhaba */
public merhaba() {
System.out.println("Nesnemiz Oluşturuldu");
}
public void selamVer() {
System.out.println("selamVer çağrıldı");
}
public static void main(String[] args) {
merhaba program;
program = new merhaba();
program.selamVer();
}
}
çıktısı: Nesnemiz Oluşturuldu selamVer çağrıldı şimdi burada neler yaptık açıklayalım: merhaba program; ile program isminde bir referans tanımladık, başındaki merhaba ise bu referansın ne tür bir nesne yöneteceğini belirtiyor. program = new merhaba(); burada program referansımızı bir nesneye bağlıyoruz, new kelimesi ile kalıp olan nesnemizden yeni bir tane üretiyoruz. ardındaki merhaba() yı sonra açıklamam uygun olur. program.selamVer(); bu satırda, referansımız ile merhaba nesnesine selamVer demiş oluyoruz. -------------------------------------------------------------------------- Değişken Nedir? Fonksiyon Nedir? Yapılandırıcı Nedir? -------------------------------------------------------------------------- değişkenler, programlarda üretilen çeşitli değerleri, çalışma süreci boyunca saklamak için kullanılır. değişken tanımının nelerden oluştuğunu inceleyelim: 1- Özellikler 2- Veri Tipi 3- Değişken Adı 4- İlk Değer özellikler, veri tipi ve Değişken Adı'nın açıklaması, biraz aşağıda fonksiyonlar işlenirken verilecektir. 4- İlk Değer bir değişkeni oluşturduktan sonra ona saklayacağı ilk değeri bu sırada veririz. örnek bir değişken tanımlaması: --2-- -3-- ---------4------------- ------ ---- ----------------------- String yazı = "yaz değişkeninin içeriği"; şeklinde yapılabilir. numaralandırılmış kısımlarda, değişkenin tanımlama safhalarını gösterdim. fonksiyonlar, programlarda sık tekrarlanan işleri gruplamada, birkaç işlemin ardından bir değer üreten kodları hazırlamada kullanılır. şeklinde tanımlayabiliriz. bir fonksiyon java da 5 parçadan oluşur. 1- Özellikler 2- Dönüş Tipi 3- Fonksiyon Adı 4- Parametreler 5- Ek Bildirimler. 1- Özellikler fonksiyonun tanımlamasının başında belirtilen özellikler, fonksiyonun çeşitli bilgilerini vermemizi sağlar. bunlar; 1a- Geçerlilik Alanı Bildirimi 1b- Ek Bildirim 1a- Geçerlilik Alanı Bildirimi fonksiyonun hangi noktalardan çağrılabileceğini bu tanımlama ile yaparız. bu bildiriler; public private protected friendly olmak üzere dört tanedir. public bildirisi, fonksiyonun programın yada programların istenen her anında ulaşılabileceğini bildirir. private bildirisi ile sadece kendi sınıfı için erişim hakkı tanır. protected ile sadece kendi paketi içine erişim hakkı verilir. friendly bize aynı paket içindeki nesnelerden erişim olanağı sağlar. paket kavramı hakkında bilgiler ileride verilecektir. 1b- Ek Bildirimler fonksiyonun işleyiş biçimiyle ilgili bilgilerin verildiği nokta burasıdır. örneğin; static, native... bunların şimdi yeri değil. ancak static bildirisini inceleyebiliriz. static static tanımlanmış fonksiyonları çağırmak için, fonksiyonu içeren sınıf için bir referans oluşturmaya gerek yoktur, örneğin System.out static bir alandır (tanımlama,referans,alan ve değişken... bunlar hemen hemen benzer anlamda kullanılırlar, farkları az da olsa vardır.) static tanımlanmış değişkenler nesne içerisinde sadece global sahalarında tanımalanabilen static değişkenler tıpkı static fonksiyonlarda olduğu gibi, ulaşmak için refereans tanımlamaya gerek olmayan değişkenlerdir. bu nedenle biz System.out.println kullanak için, System sınıfına bir referans değişken oluşturmuyoruz. out değişkeni System sınıfında public static olarak tanımlanmıştır. 2- Dönüş Tipi - Veri Tipi fonksiyonun dönüş tipi, yaptığı işin sonucunda hangi türde nesne yada değer ürettiğini belirtir. (sayı,metin gibi) eğer fonksiyon geriye bir değer döndürmiyorsa, dönüş tipi olarak [COLOR=Navy]void[/COLOR] kelimesi kullanılır. değişkenin veri tipi, değişkenin saklayacağı verinin türünü belirtir. (sayı,metin gibi) 3- Fonksiyon - Değişken Adı fonksiyona yada değişkene erişimde bulunurken kullanacağımız ismi burada belirleriz. fonksiyona isim verme kuralları: fonksiyon isimleri bir harf ile başlamalıdır. _ (alt çizgi) karakteri ile başlayabilir ve içerebilir. isim devamında rakam kullanabilirsiniz. içerisinde boşluk bulunamaz. türkçe harfleri kullanamayız. aşağıdaki kurallar zorunlu değildir, ancak Sun Java Specs.te belirtilmiş olduğu için uyarsak iyi olur. fonksiyon isimleri emir verir nitelikte ve emir kelimesinin ilk harfi büyük olmalıdır. örneğin. işYap. değişken isimlendirme kuralları: fonksiyon isimlendirmeleriyle aynı kurallar geçerlidir, ancak türkçe harfleri de kullanabilirsiniz. Yapılandırıcı Nedir? yapılandırıcı, nesnelerin başlangıç işlemlerini gerçekleştirmek için hazırlanan fonksiyonlardır. bir nesnenin yapılandırıcısı, aynı ismi taşıyan public bir fonksiyondur. örnekle açıklarsak Kod:
public class merhaba {
/** Creates a new instance of merhaba */
public merhaba() {
// Burası Yapılandırıcı Fonksiyon
}
}
Global ve Local Sahalar -------------------------------------------------------------------------- |
||
|
|
|
|
|
#7 | ||
|
Boş İnsan
Giriş Tarihi: Nov 2004
Mesajlar: 12
![]() |
devamı... bi ben öğreneyim de
şaka şu sıralar "tiger" özelliklerini öğreniyorum. çok sabırsızlananlar www.kodcu.com adresinden faydalabilirler. ben kitabı aldıktan sonra faydalandım
|
||
|
|
|
![]() |
| Konu Araçları | |
|
|