Akın Kaldıroğlu Java ile Nesne Merkezli Programlama
|
|
- Kelebek Erim
- 8 yıl önce
- İzleme sayısı:
Transkript
1 Akın Kaldıroğlu Java ile Nesne Merkezli Programlama Ocak 2014
2 Küçük Bir Konu Ø Bu dosya ve beraberindeki tüm, dosya, kod, vb. eği>m malzemelerinin tüm hakkı Akın Kaldıroğlu na aier. Ø Bu eği>m malzemelerini kişisel bilgilenme ve gelişiminiz amacıyla kullanabilirsiniz ve isteyenleri hhp:// adresine yönlendirip, bu malzemelerin en güncel hallerini almalarını sağlayabilirsiniz. Ø Yukarıda bahsedilen amaç dışında, bu eği>m malzemelerinin, >cari olsun/ olmasın herhangi bir şekilde, toplu bir eği>m faaliye>nde kullanılması, bu amaca yönelik olsun/olmasın basılması, dağıqlması, gerçek ya da sanal/ Internet ortamlarında yayınlanması yasakqr. Böyle bir ih>yaç halinde lüsen benimle, adresinden ile>şime geçin. Ø Bu ve benzeri eği>m malzemelerine katkıda bulunmak ya da düzeltme ve eleş>rilerinizi bana iletmek isterseniz, çok sevinirim. Yukarıda verdiğim adresten bana ulaşabilirsiniz. Ø Bol eğlenceli ve bol Java lı günler dilerim. 2
3 Soyutlama I Ø Soyutlama, bir şeyin, sahip olunan bakış açısı i>bariyle, en önemli özelliklerini ön plana çıkarırken, önemli olmayan özelliklerini basqrmakqr, görmezden gelmek>r: Ø Önemli olan özellikler, genel olarak o şeyi diğer şeylerden ayırt eden unsurlardır ya da ana, asli özelliklerdir, Ø Ayırt edici olmayanlara ise ikincil ya da arizi özellikler denir. Ø Zihnimiz karşılaşqğı her nesneyi tek tek algılamak yerine, nesneleri, karekteris>k özellikleriyle algılar, sonra da ya zihinde var olan kavramsal bir kategoriyle örtüştürür ya da böyle bir kategori yoksa, bu nesneden yola çıkarak yeni bir kategori oluşturur. 3
4 Soyutlama II Ø soyutlama İng. abstrac-on (Lat. abstrac>o < abstrahere = çekip çıkarmak, soymak, ayırmak): 1. Gerçekte ayrılamaz olanı düşüncede ayırma eylemi. (Ör. Biçimi, rengi, boyutları özdekten ayırıp düşünme.) 2. Geneli ve öz olanı arınmış bir biçimde elde etmek için özle ilgili olmayanı bir yana bırakma. Bir tasarımın ya da bir kavramın nitelik ve bağınq gibi öğelerini göz önüne almayarak dikka> doğrudan doğruya kavrama çeken düşünme eylemi. (Ör. Üçgen kavramında; üçgenin büyük, küçük, eşkenarlı ya da dik açılı oluşunu göz önüne almamak gibi.) Ø Felsefi Terimler Sözlüğü, hhp://tdkterim.gov.tr/bts/ 4
5 Soyutlama III Ø Soyutlamanın İngilizce karşılığı abstrac-on kelimesidir. Ø Britannica da şöyle tarif edilmektedir: The cogni>ve process of isola>ng, or "abstrac>ng," a common feature or rela>onship observed in a number of things, or the product of such a process. Ø Soyutlama, bu anlamda kavramsallaşqrma ile aynı anlamdadır. 5
6 Neden Soyutlama? Ø Çünkü zihnimiz bu haliyle soyutlama yapmadan bir nesneyi tüm yönleriyle kavrayamaz. Ø Dolayısıyla soyutlama, bir indirgemedir, basitleş>rmedir ya da genellemedir. Ø Soyutlamalar, bir bebeğin dünyayı algılama şeklinde apaçık görülür: Ø Köpek: 4 ayaklı, havlayan ve kuyruğunu sallayan canlı 6
7 Soyutlama Örneği: Haritalar Ø Haritalar, soyutlamaya mükemmel bir örnek>rler: Ø Farklı türdeki haritalar, aynı gerçekliğin farklı yönlerini be>mlerler, amaçları dışındaki özellikleri göstermezler. Ø Dolayısıyla zihin de soyutlamaları bir amaç doğrultusunda yapar. Ø Amaç ya da ilgi alanı, aynı gerçekliğin farklı soyutlamalarının yapılmasını sağlar: Ø Otel zincirlerinin ya da benzin istasyonlarının haritaları, Ø Aynı binaya bakan farklı meslekteki kişilerin farklı soyutlamaları. 7
8 İstanbul Metro Haritası 8
9 "Ne"lik ve "Nasıl"lık Ø Soyutlamalar, bir şeyin "ne"liği üzerine yoğunlaşır, "nasıl"lık üzerine eğilmez. Ø Yani temel özellikleri, o özelliklerin oluşumundan, nasıl meydana geldiğinden bağımsız olarak ele alır: Ø Araba yı algılamak için, motor yapısını bilmeye gerek yoktur, Ø Ya da bir insanla ortaklık kurmak için onun DNA dizilerini bilmeye de gerek yoktur. 9
10 Soyutlama ve Gerçeklik Ø Soyutlama, sonsuz karmaşıklıktaki gerçekliği basitleş>rerek anlama çabasıdır. Ø Aslında bütün soyutlamalar birer kurgudur, insanın gerçekliğe giydirdiği bir kisvedir, çoğu gerçeklikte ya yoktur ya da bizim algıladığımız şekilde değildir: Ø Banka ya da banka hesabı ya da bilgisayarda dosya sistemi tamamen insan kurgusudur Ø Dosya sistemine karşın hard diskin fiziksel yapısı ve dosya kopyalamayı düşünün. Ø Metre ya da gram ise gerçeklikte bizim algıladığımız şekilde değildir. Ø Dolayısıyla insan zihni, gerçekliği algılamak için olduğu kadar kendi gerçekliğini oluşturmak için soyutlamalar yapar. 10
11 Model I Ø Bir şey ile ilgili farklı açılardan ya da ilgi alanlarından yapılan soyutlamaların bütününe model denir. Ø Modeller, bir neseyi ya da olguyu daha bütünsel olarak ifade ederler, çünkü birden fazla soyutlama barındırırlar. Ø Bu nesne ve olguların çoğu zaman bir tek açıdan yapılan soyutlamayla anlaşılamayacak kadar farklı vechelere sahip olmasındandır. Ø Dolayısıyla modellerle biz gerçeklikteki şeylerin, zihnimizin daha rahat algılaması amacıyla, birden fazla bakış açısıyla elde edilmiş formal tanımlarını yapmış oluruz. 11
12 Model II Ø Ya da başka bir deyişle soyutlamaları da sınıflandırırız Ø Bir binanın sta>k, dinamik açılardan özelliklerini ve davranışlarını farklı soyutlamalarla ortaya koyarız. Ø Aynı binanın elektrik donanımı, ısıtma/soğutma/ havalandırma düzeni ve ısı yalıqmı vs., hepsi birer soyutlamadır. Ø Bir binayı ancak bu soyutlamaların bütünü temsil edebilir ki bu durumda binanın modeli elde edilmiş olur. 12
13 Sınıflandırma Ø Zihin, sonsuz sayıda soyutlama ile uğraşır, Ø Ve bu soyutlamalarla elde edilen genellemeler birer kategori oluşturur, Ø Soyutlamayı yönlendiren ilgi alanları ya da kriterler çerçevesinde kategori oluşturmaya sınıflandırma (classifica-on) denir. Ø Böylece nesneler, olgular, duygular vs. hepsi belli sınıflara ait hale gelirler. Ø Sınıflar, kavramsal genellemeleri, nesneler ise sınıfların gerçeklikte var olan örneklerini oluşturur. 13
14 Sınıflandırma Örneği Natural Objects Plant Animal Mineral Mammal Fish Bird Reptile Amphibian Insect Dog Cow Monkey... 14
15 Sınıf ve Nesne Ø Konuşmalarımızda "Köpek dediğin sadık olmalı." ya da "Köpekler çok sadık hayvanlardır." diyorsak, komşunun köpeğinden ya da sokakta az önce karşılaşqğımız köpekten değil de kavramsal olarak köpek sını3ndan bahsediyoruz demek>r ve söylediklerimiz, var olmuş ve olacak bütün köpekler için geçerlidir. Ø "Komşunun köpeği çok sadık." dediğimizde ise köpek sınınnın bir örneği ya da nesnesi olan, soyut olmayıp somut olan bir canlıdan bahsediyoruz demek>r. Ø Bu durumda "köpek" bir sının, "komşunun köpeği" ise bir nesneyi (object ya da instance) temsil eder. 15
16 Soyutlama ve Programlama Ø Peki bütün bunların yazılım ve programlamayla ne alakası var? Ø Yazılım geliş>rme ve programlama da bir dizi soyutlamayı içerir. Ø Programlama dilleri de birer soyutlamadır haha modeldir: Ø Değişkenler ve veri >pleri Ø Operatörler ve kontrol yapıları Ø Fonksiyonlar Ø Sınıflar, modüller vs. 16
17 Bilgisayarda Soyutlamalar 17
18 Programlama Dilleri ve Soyutlama 18
19 Yazılım Mühendisliği ve Modeller Ø Çok basit olanlar dışında hemen hiç bir iş problemi, problemi ifade eden kişinin ağzından çıkar çıkmaz programlanıp, bir yazılım haline ge>rilemez. Ø Dolayısıyla yazılım geliş>rme sürecinde, ih>yacın alınmasından gerçekleş>rilmesine kadar geçen süreçte pek çok modelin kurgulaması, karmaşık yazılımları geliş>rilebilir kılar. Ø Ancak bu modeller yardımıyla karmaşık ih>yaçları ve yazılmları basitleş>rir ve anlaşılır hale ge>ririz. 19
20 Yazılım Mühendisliği Modelleri Ø Yazlım geliş>rme süreci en temelde üç modelden oluşur: Ø Analiz (Analysis): Bu ih>yacın modelidir. Ø Tasarım (Design): Bu ih>yacın çözümünün modelidir. Ø Gerçekleş>rme (Implementa>on): Bu da çalışan modeldir. Ø Analiz modeli, ih>yacın ne olduğunu anlamaya yönelik>r. Ø Tasarım modeli, ih>yacın nasıl yerine ge>rileceğini ortaya koyar. Mimari tasarım da bu modelin içindedir. Ø Gerçekleş;rme de, analizde detaylandırılan ih>yaçların tasarımda ortaya konan çözüm modelini bir programlama dili ile kodlanır. 20
21 Modeller 21
22 Modellemenin Zorlukları Ø Sınırı yoktur, sonsuz sayıda ve derinlikte modeller oluşturulabilir. Ø Detay miktarı, amaç ve imkanlarla belirlenir. Ø Mutlak doğru model ancak gerçekliğin kendisidir. Ø Doğruluk ya da yanlışlık, ancak gerçekliğe uygunlukla ölçülebilir, Ø Gerekli özellikleri alıp gereksizleri bırakmak, soyutlamanın dolayısıyla da modelin doğruluğunu belirler. Ø Modellerin tes>ni yapmak zordur. Ø En iyi test, yazılımın müşteriyi ne kadar memnun eeğidir. 22
23 Başarılı Yazılım Ø En iyi, başarılı yazılım, ih>yaçlarını tam ve doğru olarak yerine ge>rendir. Ø Bu sebeple doğru modeller için modellenen iş alanı çok iyi bilinmeli ve doğru soyutlamalar yapılmalıdır. Ø Bu bilgi, tecrübe, yaraqcılık ve yoğun ve sağlıklı bir ile>şim gerek>rir. Ø Ayrıca yazılım geliş>rmenin prensipleri, yazılım modelleri de iyi bilinmeli ve uygulanmalıdır. 23
24 Nesne (Object) Ø Nesne, insan zihninin algıladığı herhangi bir kavramsal ya da fiziksel şeydir: Ø Öğrenciler, derslere devam ediyorlar. Ø Öğretmen, sınıqa öğrencileri dinliyor. Ø Dersler yarın başlıyor. Ø Nesnelerin özellikleri vardır ve bu özellikler, nesnelerin durumlarını (state) ve davranışlarını (behavior) ifade eder: Ø Sarı boyalı sınıqa öğrenci şiir okuyor. Ø Kırmızı top suya yuvarlandı. 24
25 Sınıf I Ø Sınıf, benzer nesnelerin kategorisidir. Ø Sınıf, nesneler için şablondur, yani kendisinden üre>lecek olan nesnelerin sahip olacağı özellikler ile davranışları tarif eder. Ø Sınıf, nesnelerinin özellikleri değişik >plerde değişkenlerle ya da bir başka deyişle veri yapılarıyla (data structures), davranışlarını ise metotlarla (method) (fonksiyon (func>on)/prosedür (procedure)) ifade eder. Ø Nesnenin özelliklerinin bütününe durum (state), metotların bütününe de arayüz (interface) denir. 25
26 Sınıf II Ø Böylece, aynı sınıqan üre>len nesneler aynı >pte olurlar, yani: Ø Aynı özelliklere sahip>r ama özelliklerin değerleri değişebilir, Ø Aynı davranışlara sahip>r, Ø Davranışlar genelde duruma bağlı olduğundan, farklı durumdaki nesnelerin davranışları da farklı olur. 26
27 Yazılımın Nesnesi Ø Yazılımın nesnesi ise gerçek dünyadaki, kavramsal ya da fiziksel, bir nesneyi temsil etmek üzere, onun özelliklerini ve davranışlarını ifade eden yapıdır: Ø Yazılımın nesnesi, temsil eeği gerçek dünyadaki nesnenin durumunu, sınınnda tanımlanan değişkenlerle, davranışlarını da metotlarla yerine ge>rir. Ø Yani nesne, sınınnın ifade eeği soyut yapının hayat bulmuş, gerçekleşmiş halidir. 27
28 Durum Ø Nesnelerin durumu ile daha çok durağan (sta>c), görülen ve hissedilen, özellikleri kastedilir ve programlama dillerinde farklı >plerde bir grup değişken ile ifade edilir. Ø Nesnenin durumunu oluşturan her bir ayrık bilgiye ise özellik (a>ribute) denir: Ø Öğrenci Ø No, isim, soy isim, doğum tarihi, cinsiyet, adres, bölüm, aldığı dersler, vs. Ø Ders Ø No, isim, bölüm, veren kişi, kredi sayısı, vs. 28
29 Davranış Ø Nesneler davranırlar, hareket ederler, belli işleri yerine ge>rirler. Ø Yazılım nesnelerinin davranışlarına, sorumluluk (responsibility) ya da hizmet (service) olarak bakmak, işimizi kolaylaşqrır: Ø Öğrenci Ø Kayıt olur Ø Ders alır Ø Sınava girer, vs. Ø Ders Ø Öğrencinin kaydolmasına/bırakmasına izin verir Ø Ön şart dersleri hakkında bilgi verir, vs. 29
30 Mesajlaşma Ø Bir nesne şu 4 şekilden biri ile bir sorumluluk yerine ge>rir: Ø Nesne, kendi durumu hakkında bilgi verir, Ø Nesne, kendi durumunu değiş>rir, Ø Nesne, bir işi ya da faaliye> yerine ge>rir ve zorunlu olmamakla birlikte bu faaliyet sonucunda bize birşeyler geri verir, Ø Nesne, bizim ondan istediğimizi, bir başka nesneye havale eder: Ø Havale edilen nesne bu sefer yukarıdaki 3 durumdan birisiyle istenileni yerine ge>rir. Ø Nesnelerin birbirlerinden bir sorumluluk/hizmet yerine ge>rmesini istemeye mesajlaşma (messaging) denir. 30
31 Nesne- Merkezli Yazılım Ø Nesne- merkezli yazılım sistemi ise, birbirleriyle mesajlaşan ve bu şekilde iş süreçlerini yerine ge>ren bir grup nesneden başka birşey değildir. Ø Nesneler, yazılım sisteminin yerine ge>receği sorumlulukları paylaşırlar öyle ki her bir nesne, temsil eeği kavramla ilgili sorumlulukları yerine ge>rir. 31
32 Nesne Sorumluluk İlişkisi I Ø Bir nesne- merkezli yazılım geliş>rirken önemli olan, yazılım sisteminin sorumluluklarından yola çıkarak hangi nesnelerin bulunacağı ve sorumlulukların bu nesnelere nasıl dağıqlacağıdır. Ø Prosedürel programlamada, nesne kavramı olmadığı için, birbiriyle ilişkili sorumlulukları, fonksiyonlar halinde, olabildiğince birbirlerine yakın olacak şekilde, örneğin aynı dosyaya koymayı tercih ederiz. Ø Bu ise yazılımın daha rahat modellenmesi ve geliş>rilmesiyle ilgili pek de önemli bir avantaj sağlamaz. 32
33 Nesne Sorumluluk İlişkisi II Ø Sağlıklı yazılımlar oluşturmak açısından, sorumlulukları nesnelerle ilişkilendirirken şu iki temel özelliği göz önüne almamız gerekmektedir: Ø İç tutarlılığı yüksek (highly- cohesive) nesneler: Nesne, sadece ve sadece tek bir şeyi soyutlamalı, birden fazla şeyi ile ilgili sorumlulukları bir araya ge>rmemeli, Ø Bağımlılıkları düşük (lowly- coupled) nesneler: Nesne, üzerine düşen sorumlulukları yerine ge>rirken, diğer nesnelere olan ih>yacı/bağımlılığı olabildiğince az olmalı. Ø İç tutarlılığı düşük nesneler, birden fazla konuyla alakalı sorumluluklara sahip olurlar ve genelde bağımlılıkları da bu yüzden yüksek olur. 33
34 Yazılım ve Değişim Ø İç tutarlılığı yüksek ve bağımlılıkları az olan nesnelerden oluşan yazılımların, Ø Modellenmeleri, Ø Kodlanmaları, Ø Test edilmeleri, Ø Hatalarının ayıklanması (bug fix) ve Ø herhangi bir sebepten dolayı değişmeleri daha rahat olur Ø Unutmayalım ki yazılımların maliyetlerinin büyük kısmı bakımda harcanmaktadır, geliş>rmede değil. 34
35 Java da Sınıf Tanımlama I Ø Java da sınıf tanımlamak için class anahtar kelimesi kullanılır: <niteleyici>* class <Sınıfİsmi>{ <özellik>* <kurucu metot>* <metot>* } Ø Sınınn tanımı, Java da en geniş blok olan sınıf blokuyla yapılır. Ø Sınınn bir ya da daha fazla niteleyicisi (modifier) olabilir. Ø Sınınn geçerli ve anlamlı bir ismi olmalıdır. 35
36 Java da Sınıf Tanımlama II Ø Kurucu ya da yapılandırıcı (constructor), nesne yaraqrken çağrılan özel metotdur. Ø Zorunlu olmamakla birlikte sınınn öğeleri, özellikler, kurucular ve metotlar olarak sıralanır. Ø Özellikler farklı >plerde olan nesne değişkenleridir (instance variables). Ø Metotlar ise nesnelerin sorumluluklarını yerine ge>ren nesne fonksiyonlarıdır (instance methods). 36
37 Özellik Tanımı Ø Sınıqa özellikle şöyle tanımlanır: <niteleyici>* <tip> <değişkenismi> = [ilk değer] Ø Değişkenler için bir grup niteleyici vardır, Ø Java da her değişkenin bir >pi olmak zorundadır, Ø Değişkenlere geçerli ve anlamlı bir isim verilmelidir, Ø Değişkene, isteğe bağlı olarak, ilk değer de verilebilir. 37
38 Metot Tanımı Ø Sınıqa metot şöyle tanımlanır: <niteleyici>* <dönüş tipi> <metotismi>(<arguman>*){ <ifade>* } Ø Zorunlu olmamakla birlikte metotlar da farklı niteleyiciler alır, Ø Metotlar, zorunlu olmamakla birlikte, dışarıdan argümanlar alır, bu argümanları, ifadeleri ile işler yani bir iş manqğını yerine ge>rir ve yine zorunlu olmamakla birlikte, çağrıldıkları ortama bilgi geri döndürürler, Ø Dolayısıyla metota geçilen ve metohan dönen bilgi, metotun çağrıldığı ortam ile metot arasındaki ile>şimin öğelerindendir. 38
39 Java Kaynak Kodunun Yapısı Ø Sınınn bütün öğeleri sınıf bloku içinde tanımlanır, Ø Sınınn, sadece paket (package) bilgisi ile koduna dahil edeceği (import) diğer yapıların ifadeleri sınıf dışında tanımlanır. Ø En yaygın sınıf niteleyicisi public >r ve sınıfa her yerden erişilebileceğini ifade eder. Ø Her public sınıf, kendi ismini taşıyan ve.java uzanqsına sahip olan bir dosyada yer almalıdır. Ø Dolayısıyla her.java kaynak kodu dosyasında en fazla bir tane public sınıf olabilir. 39
40 Nesne Yaratma Ø Java da nesne yaratmak için new anahtar kelimesi kullanılır, Ø new den sonra da kurucu metot çağrısı gelmelidir, Ø YaraQlan nesneyi, kendisine ulaşmakta kullanılacak olan bir referansa atamak gereklidir. Ø Bunların hepsini bir saqrda yapabiliriz: Student studentobject = new Student(); Ø Yukarıdaki saqrda, atamanın sağ tarannda oluşturulan nesne, sol taranndaki Student >pinden olan studentobject isimli bir referansa atanmaktadır. 40
41 Araba Ø Bir "Araba" soyutlaması yapın. Ø Soyutlamada bulunması gereken davranışlar nelerdir? Ø Gitmek Ø Durmak Ø Hızlanmak Ø vs. Ø Soyutlamada bulunması gereken durum bilgileri nelerdir? Ø Marka Ø Model Ø Yıl Ø Hız 41
42 public class Car { String make; String model; String year; int speed; int distance; } public void go(int newdistance){ distance += newdistance; } public void accelerate(int newspeed){ speed = newspeed; } public void stop(){ speed = 0; } public String getinfo(){ return "Car Info: " + year + " " + make +...; } 42
43 Main Metot Ø Java da pek çok sınınnız olsa bile en az bir tanesi main isimli özel bir metota sahip olmalıdır. Ø main metota sahip olan sınıf JVM e geçilerek çalışqrılabilir. Ø main metot, sistemin çalışmaya başladığı yerdir. Ø Nerede tanımlandığının pek önemi yoktur. Ø Dolayısıyla diğer sınıfların nesneleri bu metoha oluşturulur ve üzerindeki metotlar burada çağrılarak sistem çalışmaya başlar. Ø main metotun arayüzü (interface) aşağıdaki gibidir: public static void main(string[] args) 43
44 Test Sının Ø Şimdi de oluşturduğumuz sınınn, test ya da istemci (client) sınınnı oluşturup, main metot içerisinde bir kaç tane araba nesnesi yaraqn. Ø Daha sonra bu nesnenin durumunu değiş>rin ve üzerindeki metotları çağırın. Ø YaraQlan nesne üzerindeki değişken ve metotlara "." notasyonuyla ulaşılır: Car arabam = new Car(); int hiz = arabam.speed; arabam.go(50); 44
45 public class CarTest { public static void main(string[] args) { Car car1 = new Car(); car1.make = "Mercedes"; car1.model = "C200"; car1.year = "2011"; car1.distance = 0; car1.speed = 0; } } String infocar1 = car1.getinfo(); System.out.println(infoCar1); car1.accelerate(80); car1.go(10); infocar1 = car1.getinfo(); System.out.println(infoCar1); car1.accelerate(120); car1.go(20); infocar1 = car1.getinfo(); System.out.println(infoCar1); 45
46 Diğer Soyutlamalar Ø Aşağıdaki açılardan bakqğınızda soyutlamanızda neler değişir? Ø Sürücü Ø Akaryakıt kullanımı, maksimum hız Ø SaQcı Ø FiyaQ Ø Araba tasarımcısı Ø Üstü açılabilir mi? Ø Tamirci Ø Motor özellikleri Ø Sigortacı Ø Nerede ve kim kullanıyor, hasarı var mı? 46
2. Bölüm Nesne Merkezli Programlamanın Temelleri Java ile Nesne Merkezli Programlamaya Giriş Akın Kaldıroğlu
Java ile Nesne Merkezli Programlamaya Giriş 2. Bölüm Nesne Merkezli Programlamanın Temelleri Akın Kaldıroğlu Mayıs 2015 Küçük Ama Önemli Bir Konu Ø Bu dosya ve beraberindeki tüm, dosya, kod, vb. eğiam
DetaylıSunum İçeriği. Programlamaya Giriş 22.03.2011
Programlamaya Giriş Nesne Tabanlı Programlamaya Giriş ve FONKSİYONLAR Sunum İçeriği Nesne Tabanlı Programlama Kavramı Fonksiyon tanımlama ve kullanma Formal Parametre nedir? Gerçel Parametre nedir? Fonksiyon
Detaylı3. Bölüm Soyut Sınıflar (Abstract Classes) Java ile Nesne Merkezli ve Fonksiyonel Programlama Akın Kaldıroğlu
Java ile Nesne Merkezli ve Fonksiyonel Programlama 3. Bölüm Soyut Sınıflar (Abstract Classes) Akın Kaldıroğlu Kasım 2015 Küçük Ama Önemli Bir Konu Ø Bu dosya ve beraberindeki tüm, dosya, kod, vb. eğitim
Detaylı5.HAFTA. Sınıf ve Nesne Kavramı, Metot Oluşturma, Kurucu Metot, this Deyimi
5.HAFTA Sınıf ve Nesne Kavramı, Metot Oluşturma, Kurucu Metot, this Deyimi Sınıf Kavramı: Sınıf (class) soyut bir veri tipidir. Nesne (object) onun somutlaşan bir cismidir. Java da sınıf (class) kavramını
DetaylıÖnemli noktalar. Paradigma Nesnelere Giriş Mesajlar / Ara bağlantılar Bilgi Gizleme (Information Hiding ) Sınıflar(Classes) Kalıtım/Inheritance
Önemli noktalar Paradigma Nesnelere Giriş Mesajlar / Ara bağlantılar Bilgi Gizleme (Information Hiding ) Sınıflar(Classes) Kalıtım/Inheritance public class Test { // çalışır İnsan insan = new Çiçekçi();
DetaylıGörsel Programlama DERS 02. Görsel Programlama - Ders02/ 1
Görsel Programlama DERS 02 Görsel Programlama - Ders02/ 1 Kodun Tekrar Kullanımı ve Kalıtım(Inheritance) Nesneye yönelik programlamanın diğer programlama paradigmalarına karşı bir avantajı kodun yeniden
DetaylıUzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA PROGRAMLAMA Öğr. Gör. Utku SOBUTAY İÇERİK 2 Java da Kapsülleme (Erişim Denetleyiciler) Java da Sınıf Oluşturmak Java da Nesne Oluşturmak Java da Constructor Kavramı Java da This Kavramı Java da Constructor
DetaylıJAVA PROGRAMLAMA DİLİ ÖZELLİKLERİ
JAVA PROGRAMLAMA DİLİ ÖZELLİKLERİ Java programlama dili, Java SUN bilgisayar şirketi tarafından 1991 yılında geliştiril Program bloklar halinde yazılır ve bloklar { } ile oluşturulur. Komutlar aynı satıra
DetaylıNESNEYE YÖNELİK PROGRAMLAMA
NESNEYE YÖNELİK PROGRAMLAMA Metotlar Şu ana kadar yaptığımız örneklerde hep önceden hazırlanmış ReadLine(), WriteLine() vb. gibi metotları kullandık. Artık kendi metotlarımızı yapmanın zamanı geldi. Bilmem
DetaylıNesne tabanlı programlama nesneleri kullanan programlamayı içerir. Bir nesne farklı olarak tanımlanabilen gerçek dünyadaki bir varlıktır.
Nesne tabanlı programlama nesneleri kullanan programlamayı içerir. Bir nesne farklı olarak tanımlanabilen gerçek dünyadaki bir varlıktır. Örneğin; bir öğrenci, sıra, çember, bir buton birer nesnedir. Bir
Detaylı5. Bölüm Alt Sınıflar (Nested Classes) Java ile Nesne Merkezli ve Fonksiyonel Programlama Akın Kaldıroğlu
Java ile Nesne Merkezli ve Fonksiyonel Programlama 5. Bölüm Alt Sınıflar (Nested Classes) Akın Kaldıroğlu Ocak 2017 Küçük Ama Önemli Bir Konu Ø Bu dosya ve beraberindeki tüm, dosya, kod, vb. eğitim malzemelerinin
DetaylıBİL-141 Bilgisayar Programlama I (Java)
1 BİL-141 Bilgisayar Programlama I (Java) Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Not: Bu dersin sunumları, Java Bilgisayar Programlamaya Giriş, A. Yazıcı, E. Doğdu,
DetaylıUzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA PROGRAMLAMA Öğr. Gör. Utku SOBUTAY İÇERİK 2 Java da Fonksiyon Tanımlamak Java da Döngüler Java da Şart İfadeleri Uygulamalar Java da Fonksiyon Tanımlamak JAVA DA FONKSİYON TANIMLAMAK 4 Fonksiyonlar;
DetaylıBİL-142 Bilgisayar Programlama II
BİL-142 Bilgisayar Programlama II (C/C++) Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Giriş Sınıflar, Nesneler, Fonksiyon ve Veri Üyeleri Sınıf ve Fonksiyon Üyeleri
DetaylıANA SINIF TÜRETİLEN BİRİNCİ SINIF TÜRETİLEN İKİNCİ SINIF
JAVA PROGRAMLAMA Öğr. Gör. Utku SOBUTAY İÇERİK 2 Java da Kalıtım Kavramı Java da Çok Biçimlilik Kavramı Fonksiyonların Çok Biçimliliği Yapıcı Fonksiyonun Çok Biçimliliği Java da Kalıtım Kavramı 4 Kalıtım;
DetaylıJava da Soyutlama ( Abstraction ) ve Çok-biçimlilik ( Polymorphism )
Java da Soyutlama ( Abstraction ) ve Çok-biçimlilik ( Polymorphism ) BBS-515 Nesneye Yönelik Programlama Ders #9 (16 Aralık 2009) Geçen ders: Java Applet lerde bileşen yerleştirme türleri ( applet layouts
DetaylıPROGRAMLAMAYA GİRİŞ FONKSİYONLAR
PROGRAMLAMAYA GİRİŞ FONKSİYONLAR Fonksiyonlar C programlama dili fonksiyon olarak adlandırılan alt programların birleştirilmesi kavramına dayanır. Bir C programı bir ya da daha çok fonksiyonun bir araya
DetaylıGörsel Programlama DERS 03. Görsel Programlama - Ders03/ 1
Görsel Programlama DERS 03 Görsel Programlama - Ders03/ 1 Java Dili, Veri Tipleri ve Operatörleri İlkel(primitive) Veri Tipleri İLKEL TİP boolean byte short int long float double char void BOYUTU 1 bit
DetaylıMAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş
MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş Yard. Doç. Dr. Alper Kürşat Uysal Bilgisayar Mühendisliği Bölümü akuysal@anadolu.edu.tr Ders Web Sayfası: http://ceng.anadolu.edu.tr/ders.aspx?dersid=101
DetaylıHSancak Nesne Tabanlı Programlama I Ders Notları
METOTLAR Nesneye yönelik programlama dillerinde genellikle fonksiyonlar metot olarak isimlendirilirler. Metot ve fonksiyon olarak ifade edilecek kavramlar aynı anlamda kullanılacaktır. Her çalışan C# programı
Detaylıpublic static int Toplam int x, int y
static Kavramı 1 İçinde bulunduğu sınıftan nesne oluşturulmadan veya hiç bir nesneye referans olmadan kullanılabilen üyeler static olarak nitelendirilir. Metotlar ve alanlar static olarak tanımlanabilir.
DetaylıArayüz soyut metotların oluşturduğu bir koleksyondur. Bir sınıf arayüzü çalıştırırken arayüzün sahip olduğu soyut metotları da miras alır.
Bölüm 20 20 Arayüzler Arayüz bir sınıf değildir. Arayüz yazmak sınf yazmaya çok benzer ancak ikisi birbirinden farklı konseptlerdir. Sınıf bir nesnenin özelliklerini ve davranışlarını belirtirken; bir
DetaylıJava String İşlemleri
Java String İşlemleri Karakterler (Characters) "char" kelimesi bir karakter tanımlamak için kullanılır. Karakter tek tırnak içine alınmalıdır. Bir char'ın aralığı 0 ile 65536 arasındadır. Char türü işaretsiz
DetaylıJava C.Thomas Wu 2004b kitabından Türkçeleştirilerek ve örneklendirilerek hazırlanmıştır.
Ders İçeriği An introduction to Object-oriented programming with Java Third Edition Update Java C.Thomas Wu 2004b kitabından Türkçeleştirilerek ve örneklendirilerek hazırlanmıştır. Nesneye Yönelik Öğr.
Detaylıabstract Sınıflar 1 Sınıf sınıf1 new class Ama aşağıdaki şekilde referans alınabilir;
abstract Sınıflar 1 Özet sınıflar ya da özet metotlar abstract anahtar sözcüğü kullanılarak tanımlanırlar. Bir temel sınıf içinde bildirilen abstract metotların içeriği boştur. Kendisinden yeni bir instance
Detaylı/*Aşağıda ki kodları doğru şekilde anlar ve kullanırsanız java da sınıfları biraz da olsa anlamış olursunuz.*/
Ana Main Kodları /*Aşağıda ki kodları doğru şekilde anlar ve kullanırsanız java da sınıfları biraz da olsa anlamış olursunuz.*/ package javaapplication1; public class JavaApplication1 public static void
DetaylıKlavyeden Basit Giriş/Çıkış İşlemleri
Klavyeden Basit Giriş/Çıkış İşlemleri Klavyeden veri girilmesi, girilen verilere çeşitli işlemler uygulandıktan sonra ekrana yazdırılması ya da herhangi bir yazıcıdan çıktı alınması gibi işlemlerdir. Javada
DetaylıFacade (Cephe) Tasarım Şablonu KurumsalJava.com
Facade (Cephe) Tasarım Şablonu KurumsalJava.com Özcan Acar Bilgisayar Mühendisi http://www.ozcanacar.com Profesyonel yazılım sistemleri birçok komponentin birleşiminden oluşur. Yazılım esnasında bir çok
DetaylıBölüm 11. Soyut veri tipleri ve kapsülleme kavramları ISBN 0-321-49362-1
Bölüm 11 Soyut veri tipleri ve kapsülleme kavramları ISBN 0-321-49362-1 11. Bölüm konuları Soyutlama kavramı Veri soyutlamasına giriş Soyut veri tipleri için tasarım konuları Dil örnekleri Parametreli
Detaylı1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.
1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız. [10 puan] int param = 30; int result = 300; if (param > 45) result
DetaylıYZM 2105 Nesneye Yönelik Programlama
YZM 2105 Nesneye Yönelik Programlama Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği 1 BÖLÜM - 6 Kalıtım (Inheritance) - I Bu bölümde;
DetaylıMAT214 BİLGİSAYAR PROGRAMLAMA II DERSİ Ders 8: Sınıf (Class) Yapılarına Giriş
MAT214 BİLGİSAYAR PROGRAMLAMA II DERSİ Ders 8: Sınıf (Class) Yapılarına Giriş Yard. Doç. Dr. Alper Kürşat Uysal Bilgisayar Mühendisliği Bölümü akuysal@anadolu.edu.tr Ders Web Sayfası: http://ceng.anadolu.edu.tr/ders.aspx?dersid=107
DetaylıLambda İfadeleri (Lambda Expressions)
Lambda İfadeleri (Lambda Expressions) Lambda İfadeleri, değişkenlere değer atamak için kullanılan sadeleştirilmiş anonim (isimsiz) fonksiyonlardır. Bu fonksiyonlar matematikteki ve bilgisayar bilimlerindeki
DetaylıDers 8 Konu Özeti ve Problemler
Ders 8 Konu Özeti ve Problemler C# ve Nesne Yönelimli Programlamanın 3 Prensibi Kapsülleme (Encapsulation) Nesne yönelimli programlamanın ilk prensibi kapsülleme (encapsulation) olarak adlandırılır. Bu
DetaylıBMÜ-101 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ LABORATUARI
BİR BOYUTLU DİZİLER Amaçlar: 1. 1 BOYUTLU DİZİLERİ TANIMLAMAK 2. 1 BOYUTLU DİZİ UYGULAMALARI YAPMAK Örnek 5-1 Aşağıdaki program öğrenci notlarını bularak en iyi notu hesaplar. Harf notu şu şekilde hesaplanır:
DetaylıJava ile Nesneye Yönelik Programlama (Object Oriented Programming)
Java ile Nesneye Yönelik Programlama (Object Oriented Programming) Giriş Yrd. Doç. Dr. Aybars UĞUR Örnek 1 Bir Yolcu sınıfı, yolcu1 nesnesi oluşturulması ve kullanılması class Yolcu String ad; String soyad;
DetaylıNesne Tabanlı Programlama. Ders Notları
Nesne Tabanlı Programlama Ders Notları Nesneye tabanlı programlamanın temellerini kavrayabilme Java temelleri ve Netbeans editörünü kavrayabilme Sınıf ve nesne kavramlarını anlayabilme Kalıtım konusunu
DetaylıBTEP243 Ders 3. class Yazım Kuralı:
BTEP243 Ders 3 Sınıflar ve Nesneler Nesne tabanlı programlamada, programlamanın temeli sınıflardır (class). Nesnelerin yaratılmasında taslak (blueprint) görevi görür. Sınıflar; o Nesnelerin özelliklerinin
DetaylıC++ Dersi: Nesne Tabanlı Programlama
C++ Dersi: Nesne Tabanlı Programlama Bölüm 9: Sınıf İçerik Sınıf Tanımı Nesne Tanımı İkili Kapsam Çözme Operatörü UML ile Sınıfların Gösterimi 2 Sınıf kavramı, nesne-tabanlı programlamanın temelini oluşturur.
DetaylıGenel Programlama II
Genel Programlama II 22.03.2011 1 Yapılar ( Structures ) Yapılar ( structures ); tam sayı, karakter vb. veri tiplerini gruplayıp, tek bir çatı altında toplar. Bu gruplandırma içinde aynı ya da farklı veri
DetaylıLecture 11: Generics
BLM202E Data Structures Lecture 11: Generics Bilgisayar Mühendisliği Bölümü Öğr. Gör. Musa AYDIN 2014 2015 (Bahar) BLM202E Data Structures - 2015 Spring Java programlama dilinin güçlü özelliklerinden biri
DetaylıBMS-302 İleri Web Programlama. İş Parçacığı (Thread) ve Soket (Socket) Programlama
BMS-302 İleri Web Programlama İş Parçacığı (Thread) ve Soket (Socket) Programlama İş Parçacıkları (Threads) Ana programa paralel çalışan işler oluşturmak için kullanılır Makine birden fazla çekirdeğe sahipse
DetaylıBölüm 9. Altprogramlar ISBN
Bölüm 9 Altprogramlar ISBN 0-321-49362-1 Giriş Bu bölümde, programlarda sıkça kullanılan işlemlerin bir araya gruplanması ile oluşturulan altprogramlar incelenecektir. Altprogramlar sayesinde bir programda
DetaylıBMH-303 Nesneye Yönelik Programlama
BMH-303 Nesneye Yönelik Programlama Kurucu metotlar (constructors) ve statik deyimi Dr. Musa ATAŞ Siirt Üniversitesi Bilgisayar Mühendisliği Kurucu Metotlar (Constructors) Kurucu metot çeşitleri Varsayılan
Detaylıİçerik. Kapsülleme ( Encapsulation ) Java da Kalıtım: Örnek 2.1. Kalıtım ( Inheritance ) Tekrar Ziyaret. Java da Kalıtım: Örnek 2.2.
İçerik Geçen ders: Kalıtım ( inheritance ) Kapsülleme ( Encapsulation ) BBS-515 Nesneye Yönelik Programlama Ders #5 (18 Kasım 2009) Bu ders: Kalıtım ( inheritance ) tekrar ziyaret Java da super kullanımı
DetaylıELN1001 BİLGİSAYAR PROGRAMLAMA I
ELN1001 BİLGİSAYAR PROGRAMLAMA I DEPOLAMA SINIFLARI DEĞİŞKEN MENZİLLERİ YİNELEMELİ FONKSİYONLAR Depolama Sınıfları Tanıtıcılar için şu ana kadar görülmüş olan özellikler: Ad Tip Boyut Değer Bunlara ilave
DetaylıNESNE TABANLI PROGRAMLAMA-1 DERS UYGULAMALARI (22 EYLÜL - 14 KASIM
NESNE TABANLI PROGRAMLAMA-1 DERS UYGULAMALARI (22 EYLÜL - 14 KASIM 2014) //Class (Sınıf) // Sınıf (class) soyut veri tipidir. // Nesne (object) sınıfın somutlaşan bir cismidir. // static : nesnesi oluşturulmaz.
DetaylıYZM 2105 Nesneye Yönelik Programlama
YZM 2105 Nesneye Yönelik Programlama Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği 1 BÖLÜM - 5 Nesneye Yönelik Programlamaya Giriş Bu
DetaylıYZM 2105 Nesneye Yönelik Programlama
YZM 2105 Nesneye Yönelik Programlama Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği 1 BÖLÜM - 7 Abstract (Soyut Sınıflar) Bu bölümde;
DetaylıMALTEPE ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ YAZILIM MÜHENDİSLİĞİ LİSANS PROGRAMI
MALTEPE ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ YAZILIM MÜHENDİSLİĞİ LİSANS PROGRAMI 2011 2012 Güz Yarıyılı Java Programlama YZM 363 5 AKTS 4. yıl 7 yarıyıl Lisans Seçmeli 3 s/hafta 3 kredi Teorik: 3 s/hafta
DetaylıÖğr. Gör. Serkan AKSU http://www.serkanaksu.net. http://www.serkanaksu.net/ 1
Öğr. Gör. Serkan AKSU http://www.serkanaksu.net http://www.serkanaksu.net/ 1 JavaScript JavaScript Nedir? Nestcape firması tarafından C dilinden esinlenerek yazılmış, Netscape Navigator 2.0 ile birlikte
DetaylıJava 2 Standart Edition SDK Kurulum ve Java ya Giriş
Kurulum için ilk önce Sun Microsystems in sitesinden uygun J2SE sürümünü indirin. Ben J2SE v1. 4. 2_16 Windows Installer paketini kullandım J2SE SDK Kurulumu aşağıdaki gibi başlayacaktır. 1 Kurulum tamamlandıktan
DetaylıBMÜ-112 ALGORİTMA VE PROGRAMLAMA-II LABORATUARI DENEY-2 FÖYÜ
Amaçlar: 1- Arayüzler (Interfaces) 2- Soyut Sınıflar ve Metotlar(Abstract classes and methods) Uygulama-1: interface:cihaz ac() kapat() goster(string) class: TV class: LCD class: Projector... Cihaz adındaki
DetaylıJava da İstemci Tarafı Uygulamalar
Java da İstemci Tarafı Uygulamalar ( Applets ) BBS-515 Nesneye Yönelik Programlama Ders #7 (7 Aralık 2009) İçerikç Geçen ders: Java da dizi ( array ) ve dizgi ( String ) tanımlama Örnekler Bu ders: 1.
DetaylıWEB TASARIM I. Öğr. Gör. M. Mutlu YAPICI. Ankara Üniversitesi Elmadağ Meslek Yüksekokulu
WEB TASARIM I Öğr. Gör. M. Mutlu YAPICI Ankara Üniversitesi Elmadağ Meslek Yüksekokulu Ders İzlencesi Hafta Modüller/İçerik/Konular 1. Hafta PHP Tanımı ve Sunucu Kurulumları 2. Hafta PHP Yazım Notasyonu
DetaylıSınıflar ve Yapılar Arasındaki Farklılıklar. Değer ve Referans Türde Olan Aktarımlar
Nesneler ve Türler Sınıflar ve Yapılar Arasındaki Farklılıklar Sınıf Üyeleri Değer ve Referans Türde Olan Aktarımlar Yapıcılar ve Statik Yapıcılar Read-Only Statik Sınıflar Object Sınıfı Sınıflar Sınıflar
DetaylıHSancak Nesne Tabanlı Programlama I Ders Notları
Konsol Uygulaması Oluşturma Konsol uygulaması oluşturmak için program açıldıktan sonra Create: Project ya da New Project seçeneği tıklanabilir. New Project penceresini açmak için farklı yollar da vardır.
DetaylıProgramlama Dillerinde Kullanılan Veri Tipleri
Programlama Dillerinde Kullanılan Veri Tipleri Taban/Biçim Basic Paskal C/C++/C#/Java 10 (Decimal ) - - - 16 (Hexadecimal) &hsayı veya &Hsayı $sayı 0xsayı veya 0Xsayı Üstel eüs veya Eüs eüs veya Eüs eüs
Detaylıİsimler ve Kapsam. 24 Şubat 2011. Programlama Dilleri - Pamukkale Üniversitesi 1
İsimler ve Kapsam Tanım: Bir değişkenin kapsamı (scope) değişkenin görülebilir olduğu komutların alanıdır. Görülebilir olduğu alan, bir komut içinde belirlenen değerle kullanılabildiği alandır. Tanım:
DetaylıALGORİTMA VE PROGRAMLAMA II
ALGORİTMA VE PROGRAMLAMA II Yrd. Doç. Dr. Deniz KILINÇ deniz.kilinc@cbu.edu.tr YZM 1102 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Yapılar ve Birlikler enum Deyimi
DetaylıJava ile Nesne Merkezli ve Fonksiyonel Programlama
Java ile Nesne Merkezli ve Fonksiyonel Programlama 1. Bölüm Nesne-Merkezli Programlamaya Giriş: Sınıflar, Nesneler ve Tekrar Kullanım Akın Kaldıroğlu Kasım 2015 Küçük Ama Önemli Bir Konu Ø Bu dosya ve
DetaylıJava da, tüm değişkenlerin kullanılmadan önce tanımlanması edilmesi gerekir. Bir değişken tanımlamanın temel gösterimi bu şekildedir:
BÖLÜM 4 Değişken Tipleri Java da, tüm değişkenlerin kullanılmadan önce tanımlanması edilmesi gerekir. Bir değişken tanımlamanın temel gösterimi bu şekildedir: type identifier [ = value][, identifier [=
DetaylıDATA STRUCTURES. Lab II Metotlar, Diziler ve Hata Ayıklama. Prof. Dr. Aybars UĞUR
DATA STRUCTURES Lab II Metotlar, Diziler ve Hata Ayıklama İçerik Debugging konusunun kısaca anlatımı. (10 dk.) F11, F10 ve Durma Noktası denemeleri yapılması ve gözlemlerin not edilmesi. (10 dk.) Örnek2
DetaylıDekleratif Programlama. Örnek : Aile Ağacı. SWI-Prolog. Prolog Dekleratif programlama dili
Prolog Programlarının özellikleri: PROgrammig in LOGic Semboller üzerinde çalışma Problemlerin çözümünü tanımlama yerine çıkarım yapma Doğal ğ dille düşünülen ş şeylerin y kodlanması kolay Gerçekler ve
DetaylıBLM 112- Programlama Dilleri II. Hafta 4 İşaretçiler (Pointers)
1 BLM 112- Programlama Dilleri II Hafta 4 İşaretçiler (Pointers) Dr. Öğr. Üyesi Caner Özcan İyilik insanları birbirine bağlayan altın zincirdir. ~Goethe Hafıza Yapısı 2 Bir değişken tanımlandığında arka
DetaylıJAVADA METOTLAR. BMÜ-111 Algoritma ve Programlama. Yrd. Doç. Dr. İlhan AYDIN
JAVADA METOTLAR BMÜ-111 Algoritma ve Programlama Yrd. Doç. Dr. İlhan AYDIN 1 Açık problem Amacımız sırasıyla 1 den 10, 10 dan 20 ye ve 35 ten 45 e kadarki sayıların toplamını bulmak olsun. Ne yapmak gerekir?
DetaylıJava Programlamada Paket Yapısı Ve Import
Java programlamada paket yapısı ve import Java Programlamada Paket yapısı ve Java programları paketlerden oluşmaktadır. Paketlerin içinde sınıflar ve arayüzler bulunur. İstenirse var olan paketlerden başka
DetaylıKapsülleme ( Encapsulation ) BBS-515 Nesneye Yönelik Programlama
Kapsülleme ( Encapsulation ) BBS-515 Nesneye Yönelik Programlama Ders #5 (18 Kasım 2009) İçerik Geçen ders: Kalıtım ( inheritance ) Bu ders: Kalıtım ( inheritance ) tekrar ziyaret Java da super kullanımı
Detaylı// hataları işaret eden referans
System sınıfı java.lang.object java.lang.system public final class System extends Object System sınıfı, java.lang paketi içindedir. Platformdan bağımsız olarak sistem düzeyindeki eylemleri belirleyen dingin
DetaylıNesne Yönelimli Programlama
1 Nesne Yönelimli Programlama Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Genel Bilgiler Ders konuları 1. Programlamaya Giriş 2. Program Denetimi ve Operatörler 3. Nesnelerin
DetaylıHafta 13 Fonksiyonlar
BLM111 Programlama Dilleri I Hafta 13 Fonksiyonlar Yrd. Doç. Dr. Caner ÖZCAN Fonksiyonlar Fonksiyonlar C de modüller Programlar kullanıcı tanımlı fonksiyonları ve kütüphane fonksiyonlarını birlikte kullanırlar.
Detaylıİsimler ve Kapsam. Hafta 4 Ders 2 BLG339 PROGRAMLAMA DİLLERİ KAVRAMI
BLG339 PROGRAMLAMA DİLLERİ KAVRAMI Hafta 4 Ders 2 Yrd. Doç. Dr. Melike Şah Direkoğlu Alındığı kaynak: Addison-Wesley s Programming Language Concepts slaytları ve Prof. Dr. Tuğrul Yılmaz ın ders notlarından
DetaylıDers 8: Metotlar. barisgokce.com
Ders 8: Metotlar Hazırlayan : Öğr. Grv.. Barış GÖKÇE Đletişim im : www.barisgokce barisgokce.com Metotlar C# içerisinde bir veya birden fazla kod bulunduran kod bloklarıdır. Bir nesnenin veya sınıfın programı
DetaylıLab7 DOĞU AKDENİZ ÜNİVERSİTESİ BİLGİSAYAR VE TEKNOLOJİ YÜKSEKOKULU BİLGİSAYAR PROGRAMCILIĞI. BTEP212 Java. Uygulama1: package javaapplication58;
BTEP212 Java DOĞU AKDENİZ ÜNİVERSİTESİ BİLGİSAYAR VE TEKNOLOJİ YÜKSEKOKULU BİLGİSAYAR PROGRAMCILIĞI Lab7 bazen bir metodun içinde o metodun ait olduğu sınıftan yaratılacak nesneyi veya o nesnenin bir alt
DetaylıJava Dersi. Altuğ Bilgin Altıntaş
Java Dersi Altuğ Bilgin Altıntaş Bu Dönem Hakkında Corba Servlet RMI Temel Kısım EJB JSP XML 2 JDBC JNI Çalışma Evreleri 6 Çalışma Evreleri 7 Java dosyasının hali 7 İlk Java uygulaması 7 Ciddi bir uygulama
DetaylıProgramlama Dilleri 1. Ders 12: Belirleyiciler ve Niteleyiciler
Programlama Dilleri 1 Ders 12: Belirleyiciler ve Niteleyiciler Genel Bakış Giriş Yer Belirleyicilerle Bildirim İşlemi auto Belirleyicisi register Belirleyicisi static Belirleyicisi Statik ve Global Değişkenlerin
DetaylıNesne Yönelimli Programlama
1 Nesne Yönelimli Programlama Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Not: Bu dersin sunumları, Java Programlama Dili ve Yazılım Tasarımı, Altuğ B. Altıntaş, Papatya
DetaylıProgramın Akışının Denetimi. Bir arada yürütülmesi istenen deyimleri içeren bir yapıdır. Söz dizimi şöyledir:
Programın Akışının Denetimi Bir program komutların yazıldığı sırada akar. Ama çoğunlukla, bu akışı yönlendirmek gerekir. Bu iş için denetim yapılarını kullanırız. Bunlar iki gruba ayrılabilir: Yönlendiriciler
DetaylıDATA STRUCTURES. Lab II Metotlar, Diziler ve Hata Ayıklama. Doç. Dr. Aybars UĞUR
DATA STRUCTURES Lab II Metotlar, Diziler ve Hata Ayıklama Doç. Dr. Aybars UĞUR İçerik Debugging konusunun kısaca anlatımı. (10 dk.) F11, F10 ve Durma Noktası denemeleri yapılması ve gözlemlerin not edilmesi.
DetaylıNesne Tabanlı Programlama
Nesne Tabanlı Programlama Ders Notu - 3 Dicle Üniversitesi Mühendislik Fakültesi Elektrik Elektronik Mühendisliği Bölümü 1 Sınıflar ve Fonksiyonlar Tekrar kullanılabilir kodlar 1 Nesne Tabanlı Tasarım
DetaylıEclipse, Nesneler ve Java 2 Java Nereden Çıktı? 2
1 Eclipse, Nesneler ve Java 2 Java Nereden Çıktı? 2 Eclipse Mimarisi 4 Java Teknolojisine Genel Bir Bakış 6 Taşınabilirlik 6 Java Derleyicisi ve Bytecode 6 Java Sanal Makinası (Java Virtual Machine - JVM)
DetaylıBMÜ-111 Algoritma ve Programlama. Bölüm 5. Tek Boyutlu Diziler
BMÜ-111 Algoritma ve Programlama Bölüm 5 Tek Boyutlu Diziler Yrd. Doç. Dr. İlhan AYDIN 1 Problem 100 adet sayı okumak istediğimizi düşünelim. Bu sayıların ortalaması hesaplanacak ve sayıların kaç tanesinin
DetaylıBire-bir Sahiplik İlişkisi ile İlgili Sorular:
Bire-bir Sahiplik İlişkisi ile İlgili Sorular: Soru 1: Bir füzenin kilometre cinsinden menzili ve kilogram cinsinden ağırlığı mevcuttur. Bir füze ya kara hedefleri ya da hava hedefler için tasarlanır.
DetaylıJava Class Yapısında Finalize Metotunun Kullanımı
Java'da finalize() Metodu: Java dili kullanılmayan nesneleri silmek için arka planda çalışan bir sisteme sahiptir. Bu yüzden C++ gibi dillerde dinamik nesne tanımlarında mutlaka yer alması gereken nesneyi
DetaylıNesne Yönelimli Programlama
Nesne Yönelimli Programlama Not: Bu dersin sunumları, Java Bilgisayar Programlamaya Giriş, A. Yazıcı, E. Doğdu, M. Özbayoğlu, M. Erten, O. Ergin kitabı kullanılarak hazırlanmıştır. Konular Giriş Alt Sınıflar
DetaylıC# Programlama Dili. İlk programımız Tür dönüşümü Yorum ekleme Operatörler
C# Programlama Dili İlk programımız Tür dönüşümü Yorum ekleme Operatörler 1 İlk Programımız Bu program konsol ekranına Merhaba dünya! yazıp kapanır. Programı geçen derste anlatıldığı gibi derleyin, sonra
DetaylıYrd. Doç. Dr. Caner ÖZCAN
Yrd. Doç. Dr. Caner ÖZCAN Hafıza Yapısı Bir değişken tanımlandığında arka planda bilgisayarın hafızasında bir konuma yerleştirilir. Hafıza küçük hücrelerden oluşmuş bir blok olarak düşünülebilir. Bir değişken
DetaylıNESNE TABANLI PROGRAMLAMA
NESNE TABANLI PROGRAMLAMA Öğr. Gör. Utku SOBUTAY İÇERİK 2 Nesne Tabanlı Programlama Sınıf, Nesne Kavramları Kapsulleme, Kalıtım ve Çok Biçimlilik Kavramları Nesne Tabanlı Programlama NESNE TABANLI PROGRAMLAMA
DetaylıBigisayar Programlama
Bigisayar Programlama (GÜZ 2015) DERS-02: C de Programlamaya Giriş Yrd. Doç Dr. Yakup EMÜL Cumhuriyet Üniv., Teknoloji Fakültesi Yazılım Mühendisliği Bölümü yakupemul@cumhuriyet.edu.tr Ofis Saatleri :
DetaylıKUYRUKLAR QUEUES. Doç. Dr. Aybars UĞUR
KUYRUKLAR QUEUES Doç. Dr. Aybars UĞUR Giriş Bu bölümde gerçek yaşamdaki kuyrukların bilgisayardaki gösterimleri üzerinde durulacaktır. Kuyruklar, eleman eklemelerin sondan (rear) ve eleman çıkarmaların
DetaylıYazılım Kodlama ve İ simlendirme Standartları v1.0
Yazılım Kodlama ve İ simlendirme Standartları v1.0 İçerik Yazılım Kodlama ve İsimlendirme Standartları... 2 1. Amaç... Hata! Yer işareti tanımlanmamış. 2. Kapsam... Hata! Yer işareti tanımlanmamış. 3.
DetaylıNESNEYE DAYALI PROGRAMLAMA 9. HAFTA UYGULAMA DERSİ
NESNEYE DAYALI PROGRAMLAMA 9. HAFTA UYGULAMA DERSİ KALITIM Kalıtım Biribiri ile bağlantılı bir grup öğenin ortak özelliklerini tanımlayan genel bir sınıf tanımlanabilir Bu sınıf daha sonra diğer özel sınıflara
Detaylıwhile(), do-while(), for() M.İLKUÇAR 2010 MAKU-MYO
while(), do-while(), for() Döngü (loop) : Bir koşul sağlandığı (true olduğu) sürece bir veya birden çok komutun tekrarlanması işlemidir. Java Döngüler (loops) While() do-while() for ( ) while ( koşul )
DetaylıBLM-111 PROGRAMLAMA DİLLERİ I. Ders-12 Fonksiyonlar. Yrd. Doç. Dr. Ümit ATİLA
BLM-111 PROGRAMLAMA DİLLERİ I Ders-12 Fonksiyonlar Yrd. Doç. Dr. Ümit ATİLA umitatila@karabuk.edu.tr http://web.karabuk.edu.tr/umitatilla/ Fonksiyonlar Fonksiyonlar C de modüller Programlar kullanıcı tanımlı
DetaylıYazılım Mühendisliği 1
Yazılım Mühendisliği 1 HEDEFLER Yazılım, program ve algoritma kavramları anlar. Yazılım ve donanım maliyetlerinin zamansal değişimlerini ve nedenleri hakkında yorum yapar. Yazılım mühendisliği ile Bilgisayar
DetaylıC# Metotlar ve Metot Tanımlama
C# Metotlar ve Metot Tanımlama Metot Kavramı : Metotlar bir program içerisinde aynı işi gerçekleştiren satırları belirli düzende sadece bir kez oluşturarak gerektiğinde tekrar tekrar kullanabilmemizi sağlayan
DetaylıC++ Dersi: Nesne Tabanlı Programlama
C++ Dersi: Nesne Tabanlı Programlama Bölüm 10: Yapıcı ve Yıkıcı Fonksiyonlar Yapıcı Fonksiyonlar İçerik Yapıcı Fonksiyon Tanımı Üyelere İlk Atama Yapıcı Fonksiyonu Yükleme Yapıcı Fonksiyon Çağırımı Kopya
DetaylıProgramlama Dilleri 3
Diziler (Arrays) 1 Dizi Kavramı Bellekte ard arda yer alan aynı türden nesneler kümesine dizi (array) denilir. Bir dizi içerisindeki bütün elemanlara aynı isimle ulaşılır. Yani dizideki bütün elemanların
Detaylı4.Hafta. this Anahtar Sözcüğü
this Anahtar Sözcüğü this anahtar sözcüğü, içinde bulunulan nesneye ait bir referans döndürür; bunun sayesinde nesnelere ait global alanlara erişme fırsatı bulunur. Şöyle ki: Örnek: TarihHesaplama.java
DetaylıÜst Düzey Programlama
Üst Düzey Programlama Servlet Üst Düzey Programlama-ders01/ 1 Servlet Nedir? Web sayfaları ilk başlarda durağan bir yapıya sahipti ve kullanıcıdan bilgi alarak işlemler yapmıyordu. Zamanın geçmesiyle kullanıcıya
Detaylı