: nce structure'dan başlamalı sanırım... struct yapısı C kullananlar için faydalı olur ama diğer dilleri kullanan arkadaşlar için çok da gerekli değil. Bütün mesajlarım ve konularım BSD Lisansı"yla lisanslanmıştır.

nce structure'dan başlamalı sanırım... Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."

istanbulda eyüp tarafına yakınsan Uygulamalı calıstırıp, kaynak kitaplarımı dünç verebilirim. rnek olarak bir madde vardır ve bu maddenin zellikleri vardır. rn ; Araba.. Arabanın Rengi Arabanın Yakıtı Arabanın vs vs vs Bu zellikleri değiştirmek için uzun zaman ayırman gerekıyor. ancak nesne tabanlı programlama mımarısını bılırsen vakıtten ve kod yıgınından kurtulursun. bi arkadas struck'lara calısmanı onermıs ancak C dilinde programlama yapmıyorsan struck'ları ğrenmenın bi nemi yok bence. cokta nemli bi konu sayılmaz. ve eğer gerçekten bu işi yapmak istiyorsan N katmanlı mimari üzerine kafa yorabilirsin. n katmanlı mimari uygulamasında nesne tabanlı programlamanın nemi büyüktür :) eger başlıcaksan 3 katmanlıdan baslayıp nesne üzerinde oynamalar yapıp kendi nesnelerini kontrol etmeyıde ogrenırsın. hsyn. ackgz > skype

hahahah hepte bu araba ornegi verilir hee :D masTR bunu yazdı: istanbulda eyüp tarafına yakınsan Uygulamalı calıstırıp, kaynak kitaplarımı dünç verebilirim. rnek olarak bir madde vardır ve bu maddenin zellikleri vardır. rn ; Araba.. Arabanın Rengi Arabanın Yakıtı Arabanın vs vs vs Bu zellikleri değiştirmek için uzun zaman ayırman gerekıyor. ancak nesne tabanlı programlama mımarısını bılırsen vakıtten ve kod yıgınından kurtulursun. bi arkadas struck'lara calısmanı onermıs ancak C dilinde programlama yapmıyorsan struck'ları ğrenmenın bi nemi yok bence. cokta nemli bi konu sayılmaz. ve eğer gerçekten bu işi yapmak istiyorsan N katmanlı mimari üzerine kafa yorabilirsin. n katmanlı mimari uygulamasında nesne tabanlı programlamanın nemi büyüktür :) eger başlıcaksan 3 katmanlıdan baslayıp nesne üzerinde oynamalar yapıp kendi nesnelerini kontrol etmeyıde ogrenırsın.

bende aynı şeyi demeye çalıştım ama olmadı :D |sadece aptalların başarısı ders notu ile lçülür|

benim anladığım şu hacı mesela bir bina yapacaz ne yapariz 1. katı çiz 2. katı çiz 3. katı çiz... 53. katı çiz kodlama ile rnek verecek olursak kat =çizim. kat1 kat =çizim. kat2 kat =çizim. kat3 kat =çizim. kat4... kat =çizim. kat53 bütün katların planı aynı ise katların hepsini çizmeye gerek varmı 1 tane ortak plan çizer for(int i=1;i<=53;, i++) mantık bu sanırım bende konuyu takipteyim merak ediyorum detayları :D |sadece aptalların başarısı ders notu ile lçülür|

BarisYigit'e ulaş "Erhan hocanın nesne ynelinli programlama için hazırladığı efsane bir ppt-pdf"'i var onu iste. Onu oku olayı çzersin kesin. herkes programcı olmak zorunda değildir, lütfen bir zorunluluk gibi programlama dilleri ğrenmeye çalışmayın. yabancı dil filan ğrenin amq.// s. kimin etini yerim, kasaba minnet etmem.// ince düşünene kalın girer.//

: bende aynı şeyi demeye çalıştım ama olmadı :D seninkine rnek olarak şey olur mesela senin bina diye bi classın olur diyelim binada neler var katlar katlarda odalar var Bina bina = new Bina(14); diyelim 14 katlı demin dediğim gibi kat sayısını yapıcı fonksiyonda tanımlayalım bina. renk = "mavi"; olur mesela biz binayı boyadığımızda direk bina sınıfımızdan rengi değiştirebiliriz bylece mesela binaya kat eklensin kaçak bide bina sınıfımızda void KatEkle olsun bina. KatEkle(1); dersin bi kat daha eklenir vs vs :) Si vis pacem para bellum.

Object Oriented Programming Concept leri olan Polymorphism Inheritance Encapsulation Abstract Class Interface gibi kavramların ne olduğunu ne fayda sağladığını ğrenip iyice anlayın, daha sonra bu faydalardan yararlanırken farkında olmadan OOP e girmiş olacaksınız. En basit haliyle insanların kişisel bilgisini tutan bir uygulamanız var. İnsanları iş gruplarına gre sınıflandıracağız yanlış anlaşılmasın ) Tasarım aşamasında detaya inmek istemiyorsunuz veya büyük projelerde ynetici pozisyonundaki kişiler bu zellikleri belirleyecek programcılar da detayları halledecek bu durumda Interface ler yazılır. Interface de sadece değişkenler ve fonksiyon prototipleri bulunur. Mesela; public int Calis ; private int tcno; rneğin İnsan Sınıfını yaratacaksınız ama hiç kimse sadece insan zelliğine sahip olmayacak o yüzden insan sınıfını Abstract Class yapacaksınız. Bu Abstract Class ı ilk olarak yazılan Interface e gre yazacaksınız. Bu ne demek oluyor hiç kimse sadece insan olamayacak ama bu insan sınıfı size kendi üzerinden başka sınıflar yaratma olanağı sağlayacak. İnsan->İşçi İnsan->Memur gibi... Ahanda tam burda Inheritance devreye girecek Insan Abstract Class ından İşçi Sınıfını İşçi Sınıfından zel Sektr İşçi, Taşeron İşçi gibi diğer alt sınıfları türeteceğiz. Bunun bize hem sistem tasarımı ve bütünlüğü hem de benzer sınıfların tekrar tanımlanması gibi kolaylıklar sağladığından bahsetmeme gerek yok sanırım. Şimdi başka bir boyuta sıçrayacağız. zellikle büyük projelerde her şey iç içe geçtiğinde programcıya sadece ihtiyacı olacak olan kısımları sunarsınız, diğer kısımları ise yanlış kullanımlara/değişimlere mahal vermemek ve programcı için detayları minimuma indirgemek için saklarsınız aha bu da Encapsulation dır. Az nce bahsettiğimiz İşçinin TC kimlik no su nesne yaratılırken bir defa oluşturulup sonra da değiştirilmemelidir, bunu nasıl yaparım peki private int TCNO derim nce ki class ın dışında erişim olmasın ilk atamayı Constructor fonksiyon içinde yapacağım için İşçi derim ilk sefer set eder sonra bir daha dokunmam. Peki bu TCNO dışardan lazım olacak onu nasıl yapacağız derseniz onu da public bir fonksiyonla halledeceğiz. public int getTcNo gibi bir public getter fonksiyon yazarak bu konuyu da çzerim. Bylece tcno kişi ilk oluşturulurken belirlenecek ve de class ımızı kullanan uygulama tarafından yanlışlıkla da olsa değiştirilemeyecek. Son olarak ise Polymorphism olayına gelelim. Şimdi ben bu İnsan denen hayvanın Class ını tanımladım, bunun fonksiyonlarının nasıl çalışacağı ise İnsan türüne gre değişecek ve bunu nceden belirleme şansım yok. O zaman İnsan Class ı içinde diye fonksiyonumu tanımlar içini de boş bırakırım. public int Calis daha sonra İşçi Sınıfına geldiğimde bu fonksiyonu yazarken public int Calis Memur Sınıfına geldiğimde public int Calis gibi gibi fonksiyonları yazarım. Bu da olur Polymorphism. OOP alışınca bağımlılık yapar, ufacık bi veri yapısı için bile class yazarsınız ki aslında yapılması gereken de budur. Başka bir rnekle zetlersek Hayvan sınıfının genel zelliklerini bir Interface ile tanımlarım Hayvan sınıfını Abstract Class olarak yazarım çünkü hiç bir hayvan sadece hayvan olamaz türü vardır. Bu sınıftan İnheritance ile Abstract Kedigiller ile türettirim. Daha sonra Abstract Kedigillerden İnheritance ile Kedi yi ve Kaplan ı türetirim. Kedinin bazı zelliklerini veya fonksiyonlarını read-only yapmak için veya gizlemek için private protected olarak tanımlar bylece Encapsule ederim. Mesela az sonra kullanacağım FareYakala fonksiyonu kullanıcı tarafından direk çağrılmayacak. Kedi. Beslen fonksiyonu kendi içinden Avlan fonksiyonunu o da FareYakala fonksiyonunu çağıracak. Bu durumda programcının grmesi gereken tek fonksiyon Beslen fonksiyonu. Bu durumda bu fonksiyonları public void Beslen private void Avlan private void FareYakala şeklinde tanımlarım. Son olarak da Kedigillerin içi boş olan Avlan fonksiyonunu kedi ve kaplan için farklı olacaktır. Kedi için private void Avlan Kaplan için private void Avlan şeklinde tanımlarım, bu da Polymorphism olur. Atladığım eksik/yanlış belirttiğim bir şey varsa arkadaşlar eklesin bu saatte bu kadar oluyor. Bütün mesajlarım ve konularım BSD Lisansı"yla lisanslanmıştır.

Bi ton karışılık olmuş temizliyorum mesajı. OOP'un teori kısmında c'deki structure'lara bakarak, memoryde ne yaptığını ğrenmek daha iyi olabilir. Fakat oop kullanımı konusunda yapılacak en net iş sınıflarla çalışmaktır. OOP'un bütün zelliklerini kullanacağın en güzel iş bir oyun tasarlamak. Net şekilde oturur.

Bilgisayar mühendisliği 3. sınıfa geçtim hala bunun mantığını oturtamadım. C ve java bilgim iyi ama bi program yazarken hangi nesneleri oluşturucam karar veremiyorum. Nesneye dayalı kavramlar vs dersler grdük ama sadece hikaye kısmını ğrettiler. nesneye dayalı programlamayı tam olarak oturtmak için kaynak vs nerisi veya mantığını anlamak için şu programı yaz gibi nerisi olan varsa bekliyorum Saçma

aynı sorun bendede var takır takır kod yazıyom ama hala nesneye dayalı programlama ne deseler cevaplayamam :D

bence en güzel rnek strateji oyunları. zellikle age of empires. 200 tane populasyonu olan bir imporatorluk kuruyorsun. imparotorlukta çiftçi, avcı, şvalye, okçu mızrakçı vs in var. hepsinin canı, saldırma, koruma zellikleri var. insan arayüzü oluşturursun, bunu savaşan ve savaşmayan iki arayüze uygularsın. savaşanlarıda gemi, atlı, yaya diye ayırırsın. . atlılarıda kendi arasında ayırırsın. şvalye, oklu atlı, develer vs... binadan çıkan her atlı referansa bağlanır ve oyuncunun askeri olur. biraz yavan bir anlatım oldu. akşam daha düzenler yollarım. boş

Bu konu harbi sağlam konu dursun kenarda.. Paslanmış bir uygulama geliştirici.. #AnalistŞart

: Bi ton karışılık olmuş temizliyorum mesajı. OOP'un teori kısmında c'deki structure'lara bakarak, memoryde ne yaptığını ğrenmek daha iyi olabilir. Fakat oop kullanımı konusunda yapılacak en net iş sınıflarla çalışmaktır. OOP'un bütün zelliklerini kullanacağın en güzel iş bir oyun tasarlamak. Net şekilde oturur. Nası bi oyun yazmamı nerirsin?Satranç dama felan geldi aklıma ama baya uğraştırıcı olur :D Saçma

: benim anladığım şu hacı mesela bir bina yapacaz ne yapariz 1. katı çiz 2. katı çiz 3. katı çiz... 53. katı çiz kodlama ile rnek verecek olursak kat =çizim. kat1 kat =çizim. kat2 kat =çizim. kat3 kat =çizim. kat4... kat =çizim. kat53 bütün katların planı aynı ise katların hepsini çizmeye gerek varmı 1 tane ortak plan çizer for(int i=1;i<=53;, i++) mantık bu sanırım bende konuyu takipteyim merak ediyorum detayları :D Çok yanlış yerlere girmişsin sen :D Sscheme güzel anlatmış aslında o 5 başlığı araştırın en nemlisi OOP nin temeli nesne adı üstünde :)) bi console uygulaması açıp bi class oluşturun adı mesela insan olsun insanin içinde decimal Boy int Yas string Ad olsun bunlar encapsulation oluyor eğer oluşturmazsanız default bi construction oluşturur ama biz kendimiz oluşturalım ctor yazıp 2 kere tab ' a basıp oluşturuyoruz parantezlerin içine parametreleri yazın public insan napmış olduk int, double gibi bi tip belirlemiş olduk c deki structure gibi şimdi program. cs e gidip main kısmına Insan insan = new Insan(2.00,23,"sinusx"); yazarsak insan nesnemizi kullanıma açtık artık insan nesnemizin içindeki fonksiyonlara ve atamalara ulaşabiliriz. Console. WriteLine ; Yaklasık olarak olay bundan ibaret gerekli her durum için nesne açıp atamaları orda yaparsın Si vis pacem para bellum.