Professional Documents
Culture Documents
DERS 01
Takdim Plan
Nesneye Dayal Programlama Kavram Nesne, Snf Kavram Java Programlama Dili Java Programlama Dili Temel zellikleri Java Srmleri Snf yeleri Temel Eriim Denetleme Sistemi
Nesne
Nesne = evremizde incelediimiz herey bir nesnedir. (Pencere, kap, tahta, tebeir, lamba, sra, vb.) Tm grdmz nesnelerin temel iki karakteristikleri bulunmaktadr; -DURUM (STATE) -DAVRANI (BEHAVIOUR) rnek ; Bir BSKLET nesnesini ele alalm. DURUMLARI = (vites says, u anki vites deeri, hz, rengi, markas, tekerlek says) DAVRANILARI=(fren yapma, hzlanma, yavalama, vites deitirme, vb.)
Nesne
Yazlmlarda kullanlan nesnelerde evremizdeki nesnelerin bilgisayarda modellenmesidir. Yazlm nesneleri evremizdeki nesnelerin durumlarn deilenler de saklar, davranlar ise metotlar ile gerekletirir. Metotlarda bildiimiz fonksiyon ve prosedrlerdir. Nesneleri temsil etmek iin yazlmda nesne snflar (class) oluturulur ve bu snflardan gerektiinde rnek (instance) nesneler oluturulur. lk nesneye ynelik programlama dili olan SMALLTALK n gelitiricisi nesneye ynelik programlama paradigmasn u be zellik ile tanmlamtr.
Nesne
1. Herey bir nesnedir. 2. Bir program ne yaplmas gerektii hakknda birbirlerine mesajlar gnderen nesneler topluluudur. 3. Her nesne, temel veri yaplar ve dier nesnelerden oluabilen bir bilgi bankasna(deikenlere) sahiptir. 4. Her nesnenin ait olduu bir snf vardr. (Her nesne belirli bir snf temel alnarak oluturulur.) 5. Belirli bir snfa ait (ayn tipteki) nesneler ayn mesajlar alp, tepki verebilir.
Nesne ve Snf
Nesne (object) yapsal bir deiken kmesidir ve ierisinde kendisine ait deikenleri ve kendi durumunu deitirmek iin kullanlan metotlar vardr. Snf (class) ise nesneler iin ayrntl taslak oluturan, programc tarafndan tanmlanm bir veri tipi dir. Snfn ierisinde nesneye ait olan deikenlerin ve metotlarn tanmlanmas yaplr. Her nesne belirli bir snfa aittir. Belirli bir snfa baklarak elde edilmi olan nesneye rnek(instance) denilir.
Nesne ve Snf
SINIF = PASTA KALIBI NESNE = BU KALIP KULLANILARAK YAPILAN PASTA DIR.
Nesne ve Snf
Belirli bir snftan oluturulan tm nesneler ortak zelliklere sahiptir. rnein bir bisiklet snfndan olan tm nesnelerde (vites says, hz, rengi ) gibi zellikler ortak bulunacaktr. Bu zellikler hepsinde ortak bulunmasna ramen zelliklerin deerleri farkl olabilir. Da bisikletinin vites says=12 iken yar bisikletinin vites deeri vites sayy=24 olabilir. Bu deerler incelenen nesnenin zelliklerinin gzlem anndaki deerlerini gsterir. Bu ekildeki deikenlere yani nesnenin zelliklerine rnek deikenleri (instance-variables) denilir. Ayn ekilde rnek metotlarda olabilir. Bu metotlar nesnenin o anki durumunu deitiriyorsa rnek metotlar (instance methods ) denilir.
Grsel Programlama - Ders01/ 8
Nesne ve Snf
Nesnenin deikenlerine (Alanlar-Fields) denilir. Nesnenin metotlar grld gibi o nesnenin ekirdeini (alanlarn) d evreden korur.
tot -2
...
Metot-3
Bu ileme nesneye ynelik programlama paradigmasnda KAPSLLEME (Encapsulation) denilir. Bu nesneyi kullanacak olan programc nesneyi kara kutu gibi grr. Bu nesnenin metotlarn kullanarak kod yazar ve bir yazlm gelitirir.
Grsel Programlama - Ders01/ 9
Me
Nesne ve Snf
Bu snflar ve nesneleri kullanan kiiler ile yazanlar farkl kiiler olabilir. Snf yazan kii kendi snfndaki alanlar deitirirse ya da metot ieriklerini deitirirse bu snf kullanan dier programclar ve uygulamalar etkilemez. rn; YANLI YNTEM
A Firmas Veritaban Snf +kullancAd +parola +baglan() ... B Firmas Adres Defteri veritaban +KaytGir() +KaytSil()
10
Nesne ve Snf
B firmas, A firmasndan ald snf kullansn. Veritaban na balanmak iin kullancAd, parola deerini girip baglan() metodunu kullanarak veritaban ilemlerini yapacaktr. Eer A firmas kendi yazlmnda bir gncelleme yaparsa ve kullancAd alann username yaparsa B firmas kendi yazlmdaki tm kullancAd alanlarnn isimlerini deitirmeli ve yazlmn yeniden oluturmaldr.
11
Nesne ve Snf
DORU YNTEM
A Firmas Veritaban Snf -kullancAd -parola +baglan() +kullancAdAta( +kullancAdAl() +parolaAta() +parolaAl() ... B Firmas Adres Defteri veritaban +KaytGir() +KaytSil()
A firmas alan adn kulancAd yerine username yapsada B firmas bu alan kullanmamaktadr. KullancAdAta() metodunu kullanmaktadr.
12
JAVA
Java, farkl alma ortamlarnda dank ortamlarda(a zerinde datlm) almas gerekli olan uygulamalarn gelitirilmesindeki zorluklar yenmek iin ortaya kmtr. Java ok eitli a aralar ve gml(embedded) sistemler iin gelitirilmi bir yazlm projesi sonucu ortaya kmtr. Ama; kk boyutlu, gvenilir, tanabilir ve dank bir iletim sistemi gelitirmekti. Projenin balangcnda C++ tercih edilmitir. Proje ilerledike farkl sorunlar ile karlalmtr ve yeni bir dile ihtiya duyulmutur. (Eiffel, Smalltalk, Objective C ve Mesa) dilleri temel alnarak JAVA dili gelitirilmitir. Green Project Oak = Java nn ilk ad
James Gosling tarafndan gelitirilmi ve 1991 de Java olarak Sun microsystems tarafndan duyurulmutur.
Grsel Programlama - Ders01/ 13
JAVA
Java sadece bir programlama dili deildir. Java bir teknolojidir. Tek bir bilgisayarda alacak uygulamalar, web tarayclarda alacak appletler, sunucu tabanl web uygulamalar (JSP,Servlet), enterprise uygulamar, mobil cihazlar iin uygulamalar dahil ok eitli uygulamalar gelitirmek mmkndr.
14
15
JAVA
Bir java program herhangi bir editrde yazlr ve uzants .java olacak ekilde kaydedilir. Bu kod Java derleyicisi tarafndan bytecode haline getirilir. Oluturulan derlenmi dosyann uzants .class dr. Oluturulan byte code lar Java Sanal Makinesi (JVM-Java Virtual Machine) tarafndan yorumlanarak altrlr. Yazlan kod farkl sistemlerde deitirilmeden alabilir.(Win98, 2000, Linux, Mac OS, Solaris, Unix, VMX, ...) Derlenmi olan kod (byte code) ayn olmasna ramen bu kodu yorumlayan Java sanal makinesi farkl sistemlerde farkldr ve alt sisteme zeldir.
16
JAVA
dosya .java .java Derleyici (javac) .class Yorumlayc (javac)
JAVA Srmleri
J2SE : Standart Srm J2ME: Mikro Srm (Mobil Cihazlar in) J2EE: Enterprise Srm (Tm uygulama gelitirme amalar iin)
18
class IlkProgram{ public static void main(String[] args){ System.out.println(lk Java Uygulamas); } }
19
JAVA
Yazdmz IlkProgram snf IlkProgram.java ismiyle kaydedilir.
20
JAVA
Yazdmz IlkProgram snf IlkProgram.java ismiyle kaydedilir.
21
JAVA
J2SE nin kurulumunun sisteminize yapilmis olmasi gereklidir.
22
JAVA
Kurulum ileminden sonra bilgisayarnzda u konumdadr :
23
JAVA
Sisteminizde Java derleyici ve yorumlaycnn tannmas iin Sistem Deikenlerini deitirmeni gereklidir.
24
JAVA
25
JAVA
Sisteminizde Java derleyici ve yorumlaycnn tannmas iin Sistem Deikenlerini deitirmeni gereklidir.
26
JAVA
27
28
29
Bu hatann nedeni java yorumlaycsnn (java) snf kendi snflar iinde grmemesinden kaynaklanmaktadr.
Grsel Programlama - Ders01/ 30
-cp parametresi ile yorumlaycnn snf verilen klasr iinde aramas salanabilir.
31
2. Yntem olarak sistem zelliklerindeki CLASSPATH parametresine yeni snfnzn bulunduu klasr eklenir ve sistem yeniden balatlr.
Grsel Programlama - Ders01/ 32
Bu ekilde altrlabilir.
33
Grsel Programlama
DERS 01
34