NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 1. Yrd.Doç.Dr.Hacer Karacan

Benzer belgeler
NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 1

Java Temel Özellikleri

Nesne Tabanlı Programlama. Ders Notları

BM-209 Nesne Yönelimli Programlama. Yrd. Doç. Dr. İbrahim Alper Doğru Gazi Üniversitesi Teknoloji Fakültesi Bilgisayar Mühendisliği Bölümü

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

İçerik. Temel Kavramlar. Yazılım Geliştirme Aşamaları. Problemi Anlama ve Çözümleme. Biçimsel Gösterim - 1. Nesneye Yönelik Programlama

Temel Kavramlar. BS-515 Nesneye Yönelik Programlama. Ders #1 (26 Ekim 2009)

PROGRAMLAMA TEMELLERİ

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1

Görsel Programlama DERS 01. Görsel Programlama - Ders01/ 1

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

C# nedir,.net Framework nedir?

BBS515 Nesneye Yönelik Programlama. Ders 1 Zümra Kavafoğlu

BM-209 Nesne Yönelimli Programlama. Yrd. Doç. Dr. İbrahim Alper Doğru Gazi Üniversitesi Teknoloji Fakültesi Bilgisayar Mühendisliği Bölümü

4. Bölüm Programlamaya Giriş

MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş

Bilgisayarda Programlama. Temel Kavramlar

Programlama Dillerinde Kullanılan Veri Tipleri

PROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay.

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ

Android e Giriş. Öğr.Gör. Utku SOBUTAY

Program Nedir? Program, bir problemin çözümü için herhangi bir programlama dilinin kuralları ile oluşturulmuş komut kümesidir.

5. PROGRAMLA DİLLERİ. 5.1 Giriş

OMNET Ağ Benzetim Yazılımı (Network Simulation Framework) BİL 372 Bilgisayar Ağları. GYTE - Bilgisayar Mühendisliği Bölümü

BİLGİSAYAR PROGRAMLAMAYA GİRİŞ

1.1. Yazılım Geliştirme Süreci

Java 2 Standart Edition SDK Kurulum ve Java ya Giriş

10.DERS Yazılım Gerçekleştirme

Yazılım Mühendisliğine Giriş 4. Hafta 2016 GÜZ

Java Programlama Giriş

Dr. Fatih AY Tel: fatihay@fatihay.net

Akıllı telefonlar, avuçiçi bilgisayarlar ile taşınabilir (cep) telefonların özelliklerini birleştiren cihazlardır. Akıllı telefonlar kullanıcıların

VERİ KAYNAKLARI. Bilgi sisteminin öğelerinden biride veri

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 1. Bölüm C# Programlamaya Giriş

Java nedir, nasıl çalışır?

Öğr.Gör. Gökhan TURAN Gölhisar Meslek Yüksekokulu

Yazılım Mühendisliği 1

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, Kabuk ve diğer temel kavramlar) Öğr.Gör. Dr. Dr. Şirin KARADENİZ

Öğr. Gör. Serkan AKSU 1

Yazılım Çeşitleri. Uygulama Yazılımları. İşletim Sistemleri. Donanım

JAVA PROGRAMLAMA DİLİ ÖZELLİKLERİ

Bilgisayar Mimarisi Nedir?

Tarih Saat Modül Adı Öğretim Üyesi. 01/05/2018 Salı 3 Bilgisayar Bilimlerine Giriş Doç. Dr. Hacer Karacan

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 10. Yrd.Doç.Dr.Hacer Karacan

VERİ TABANI YÖNETİM SİSTEMLERİ Melih BÖLÜKBAŞI

Algoritma ve Akış Diyagramları

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu

GÖMÜLÜ SİSTEMLER. Bilecik Şeyh Edebali Üniversitesi Gömülü Sistemler Ders notları-1

Program Nedir?(1) Programlamaya Giriş

Programlama Dilleri sıralaması Programlama Dilleri sıralaması 2016

MAK 1005 Bilgisayar Programlamaya Giriş. BİLGİSAYARA GİRİŞ ve ALGORİTMA KAVRAMI

İŞLETİM SİSTEMLERİNE GİRİŞ - 2. Sistem, sistem kaynaklarını belli bir hiyerarşi içinde kullanıcının hizmetine

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

ALGORİTMA VE PROGRAMLAMA I

TEMEL BİLGİSAYAR BİLİMLERİ. Programcılık, problem çözme ve algoritma oluşturma

İşletim Sistemlerine Giriş 2. Kaynakların Paylaşımı. Öğr.Gör. Dr. Şirin KARADENİZ

Bilgisayar Programlama Dilleri

BMS-302 İleri Web Programlama. İş Parçacığı (Thread) ve Soket (Socket) Programlama

Bahar. BM 211 Programlama Dilleri 3 1

Bilgisayar İşletim Sistemleri BLG 312

PROGRAMLAMA DİLLERİ. Programlama Dilleri Programlama Dillerinin Önemi Dilleri Sınıflandırılması Anlambilim BNF Notasyonu Kontrol Deyimleri

VERİ TABANI YÖNETİM SİSTEMLERİ

İşletim Sistemlerine Giriş

Bölüm1. İlk Bilgiler ISBN

İŞLETİM SİSTEMLERİ. (Operating Systems)

Veritabanı Yönetim Sistemleri (Veritabanı Kavramı) Veri Modelleri

KODLAMAYA HAZIRLIK MODÜLÜ 1. YAZILI SINAV ÇALIŞMA SORULARI VE MODÜL ÖZETİ

Swing ve JDBC ile Database Erişimi

Nesneye yönelik: Javada herşey bir nesnedir. Java nesne yönelimli olduğu için kolayca geliştirilebilir.

BİL 542 Paralel Hesaplama. Dersi Projesi. MPJ Express Java Paralel Programlama

Kepware Veritabanı Ürünleri. Teknolojiye Genel Bir Bakış

İnsan zekâsının çalışması sonucu ortaya çıkan düşünce ürünü, İletişim?

İŞLETİM SİSTEMLERİNE GİRİŞ. Modern bilgisayar çalışma prensipleri, Von Neumann ın 1945 de geliştirdiği

Üst Düzey Programlama

ANKARA ÜNİVERSİTESİ ELMADAĞ MESLEK YÜKSEKOKULU BİLGİSAYAR PROGRAMCILIĞI PROGRAMI DERS İÇERİKLERİ

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.

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı

Üst düzey dillerden biri ile yazılmış olan bir programı, makine diline çeviren programa derleyici denir. C++ da böyle bir derleyicidir.

Üst Düzey Programlama

İşletim Sistemleri. Discovering Computers Living in a Digital World

Temel Bilgisayar Programlama

Veritabanı Uygulamaları Tasarımı

Eclipse, Nesneler ve Java 2 Java Nereden Çıktı? 2

BİL-142 Bilgisayar Programlama II

Yazılım Mühendisliği Bölüm - 3 Planlama

Günümüz bilgi toplumunda bilgisayar, her alanda kendine yer edinmiş ve insana, bir çok işlemde yardımcı olarak büyük kolaylık sağlamaktadır.

Sınıf Diyagramları Amaç: Sınıf Diyagramları Nasıl Çizilir?

Java Programlamada Paket Yapısı Ve Import

İÇERİK PROGRAMLAMAYA GİRİŞ ALGORİTMA AKIŞ DİYAGRAMLARI PROGRAMLAMA DİLLERİ JAVA DİLİNİN YAPISI JAVA DA KULLANILAN VERİ TİPLERİ JAVA DA PROGRAM YAZMA

GÖRSEL PROGRAMLAMA - I

İÇERİK 2 Java Kodlaması için Gerekli Programlar JRE, JDK kurulması ve Başlangıç Ayarları Java Kodlamayı Kolaylaştıran IDE ler Java Kod Yapısı İlk Java

Bilgisayar Yazılımları

Sunum İçeriği. Programlamaya Giriş

Programlama Yazılımı ile Web Sitesi Oluşturma

Doğu Akdeniz Üniversitesi Bilgisayar Mühendisliği Bölümü. BLGM 318 Ara Sınavı Đlkbahar Dönemi 13 Nisan Ad, Soyad Öğrenci No.

SIMAN KULLANIM KILAVUZU

Algoritmalar ve Programlama. Algoritma

Bölüm 2 Varlık-İlişki Veri Modeli: Araçlar ve Teknikler. Fundamentals, Design, and Implementation, 9/e

VERİ YAPILARI VE PROGRAMLAMA (BTP104)

BLG Sistem Analizi ve Tasarımı. Öğr. Grv. Aybike ŞİMŞEK

Transkript:

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 1 Yrd.Doç.Dr.Hacer Karacan

NESNEYE YÖNELİMLİ PROGRAMLAMAYA GİRİŞ Program Nedir? Programlama Dili Nedir? Programlamanın Tarihçesi Programlama Türleri Makine Dili Programlama Assembly Dili Programlama Yapısal Programlama Nesneye Yönelimli Programlama

Program Nedir? Bilgisayarlar, bilgisayar programı denen komut setlerinin kontrolu altında verileri işlerler. Bilgisayarda çalışan bilgisayar programlarına yazılım denir. Program, günlük hayatta bir sorunu bilgisayar ile çözmek, rutin işlemleri kolaylaştırmak için yazılan yazılımlardır. Kişinin program yazması için öncelikle Genel Programlama Bilgisine sahip olması gerekir. Peşinden bir Programlama Dili bilmek gereklidir. Dil tercihi yazılacak programa, soruna ve platforma uygun olarak yapılabilir.

Programlama Dili Nedir? Programlama Dili bilgisayarda çözülecek bir sorun için çözümün bilgisayara adım adım yazılmasını sağlayan formel kuralları olan ve bu kurallara sıkı sıkıya bağımlılığı gerektiren bir tanımlar kümesidir. Programlama dili son derece standart tanımlar içerir ve bir programı yazarken bu tanımlardan bir an için bile uzaklaşılamaz. Bir program parçasından başkalarının başka şeyler anlaması mümkün değildir. Yazılan bu programlar bir derleyici vasıtası ile Makine diline çevrilir varsa hataların bulunmasını sağlar ve kullanıcı bu hataları düzeltir.

Programlamanın Tarihçesi 1940-1950 yılları arasında programcılar oldukça fazla kodlanmış makine komutlarıyla programlarını yazıyorlardı. Makine dillerine yakın ancak yine belli bir mikroişlemci için geliştirilmiş dillerden birisi de ASSEMBLY programlama dilidir. Bu süreç içinde belli amaçlar ve alanlar için birçok üst düzey programlama dili geliştirildi: ADA, BASIC, FORTRAN, COBAL, PASCAL, PL/I, C, C++ 1980 li yıllar üst düzey programlama dillerinin yaygın olarak kullanıldığı yıllar olmuştur. 1990 li yıllar 'Windows'lu yıllar oldu. Windows işletim sistemlerinin yaşamımıza girmesiyle programlama görsel ve olay- temelli olarak gelişmiştir

Programlama Türleri Programlama türleri makine diline yakınlıktan, insan diline yakınlığına doğru derecelendirilir. Makine Diliyle başlayan programlama, zamanla insan diline yaklaşan seyir izlemiştir. En Temeli makinenin doğrudan anladığı Makine Dili iken, bugüne kadar insan diliyle programlama gerçekleştirilememiştir

Makine Dili Programlama Bilgisayarın doğal dilidir. Bilgisayarın donanımsal tasarımına bağlıdır. Makine dili 010101001 lerden oluşan komutlardır ve bunlar doğrudan makineye hitap eder. Makine dili işlemci türüne özel olarak yazılmaktadır. Dolayısıyla, bir işlemci türü için makine diliyle yazılmış program, diğer işlemciler için uygun olmamaktadır.

Assembly Dili Programlama Bilgisayar programlarının yazılmasında kullanılan alt seviyeli bir dildir. Assembly insanlar tarafından anlaşılması zor olan makina dilinin sayısal ifadelerini, insanlar tarafından anlaşılarak programlanması daha kolay olan alfabetik ifadelerle değiştirerek düşük seviyede programlama için bir ortam oluşturur. Bir assembly dil programı çevirici (Assembler) olarak adlandırılan faydalı bir program tarafından hedef bilgisayarın makine koduna çevrilir.

Yapısal Programlama Uzun ve karmaşık programların, bloklara ayrılarak daha kolay biçimde yazılabilmesini mümkün kılar. Küçük kod parçacıkları seviyesinde yapısal programlama hiyerarşik program akışı yapılarını tavsiye eder. Bu yapılar pek çok modern dilde kolayca elde edilebilen, while, repeat, for gibi yapılardır. Bu teknik ile programcılar büyük kod parçalarını daha kısa ve dolayısıyla anlaşılırlığı yüksek alt yordamlar halinde yazarlar. Genel olarak programlarda çok az genel (global) değişken kullanılır. Genel değişkenler yerine altyordamlar yerel değişkenler kullanırlar ve değişkenlerini adres ve değer ile gönderirler.

Nesne Yönelimli Programlama Yazılım teknolojisindeki gelişme ve ilerlemeler; yapısal programlama, yapısal tasarım, yapısal analiz ile başlasa da nesne yönelimli analiz, tasarım ve programlama ile daha çok gelişme elde edilmiştir. Nesneye yönelimli programlama gerçek dünyayı örnek almakta tıpkı gerçek dünyada olduğu gibi nesneler ve nesnelerin birbirleriyle iletimini sağlayan sistemler kurmaktadır. Bu tarz yazılan yazılımlar, daha iyi organize ve anlaşılır oldukları için bakımları da çok kolay olmakta ve programcıya zaman ve maliyetten büyük tasarruf sağlamaktadır.

Nesneye Yönelimin Esasları Nesne kavramı Nesneler arası ilişkiler ve bir birleri arası etkileşimler Sınıf kavramı Nesneye yönelimli programlanın esasları Java Programlama Dili

Modelleme Gerçekleştirilmesi maliyetli ya da riskli olan projelerde, projenin beklenmedik durumlardan dolayı başarısızlığa uğramaması için bir takım fikir ve tasarım işlemleri (modelleme) yapılır. Modelleme fikir bazındaki projenin, gerçek dünyada uygulanabilirliğini sorgular. Karşılaşılabilecek sorunlara önceden çözüm bularak işgücü, maliyet, zaman gibi kaynak kayıplarını önler. Nesneye yönelimli programlamayla birlikte modellemeye duyulan ihtiyaç artmış ve Yazılım projelerinde kullanılmak üzere UML (Unified Modeling Language) modelleme dili geliştirilmiştir. Model oluşturmak şu getirileri sağlar Yapılacak iş için gereksinimleri ortaya koyar Anlaşmazlıkları çözümlemeye yardımcı olur. Yanlışları Önler

Nesne Nedir? Sözlük anlamı Belli bir ağırlığı ve hacmi, rengi olan her türlü canlı ve cansız varlık. olan nesne çevremizi saran dokunabildiğimiz, görebildiğimiz her şeydir. Nesneye yönelimli Programlama gerçek dünyayı örnek almaktadır. Tıpkı gerçek dünyadaki gibi nesneler vardır ve bir birleri arasında etkileşim içerisindedirler.

Nesnenin Özellikleri Gerçek hayatta olduğu gibi NYP da da her bir nesnenin özellikleri vardır. Nesnelerin özelliklerinin tutukları değerler nesnenin o andaki durumu hakkında bilgi verirler. Bu değerler değiştikçe nesnenin durumu da değişikliğe uğrar. Nesnelerin özellikleri genellikle nesnenin içinde ya da dışında oluşan bir olayla değişir. Şapka nesnedir, yeşil olması özelliğidir. Kapı nesnedir, açık olması özelliğidir.

Nesnenin Eylemleri Nesnenin var olmasındaki temel amaç diğer nesnelere dolayısıyla sisteme katkı sağlamasıdır. Sistemler nesnelerden oluşur ve sistemlerin işlevleri bünyelerindeki nesnelerin eylemleri ile mümkündür. Nesneler var oldukları sürece eylemlerde bulunurlar bu eylemlerden nesnenin kendisi ya da diğer nesneler etkilenirler. Nesneler tasarlanırken ilk olarak sorulan bu nesne hangi eylemlerde bulunacak sorusudur. Uçak Bir Nesnedir, Uçağın Uçması Eylemdir

Nesneleri Modelleme Nesnelerin oluşturulabilmesi için öncelikle özelliklerinin ve eylemlerinin neler olduğuna karar vermek gerekmektedir. Bunun kararını vermek için oluşturulmak istenen nesnenin sistemdeki diğer nesnelerce nasıl kullanılacağının bilinmesi gerekmektedir. Modellenecek nesneler gerçek dünyadakilerle bire bir aynı olmak durumunda değillerdir. Sistem için kullanılan nesnelerin sistemin ihtiyaçlarına cevap verecek özelliklere ve eylemlere sahip olması yeterlidir.

Nesneler Arası İlişkiler Nesneler, daima diğer nesnelerle ilişki içerisindedirler. Bu ilişki nesneler arası iletişim şeklinde olabildiği gibi, yapısal ilişkilerde kurabilirler. Öyle ki bir nesne başka bir nesnenin parçası olabileceği gibi, birden çok nesnenin birleşiminden de oluşabilir. Örneğin bir araba tekerlekler, kapı. motor, koltuk gibi pek çok nesnenin bir araya gelmesiyle oluşmuş bir nesnedir. Nesneler arası bu ilişkiye toplama (aggregation) denilmektedir.

Nesneler Arası İlişkiler Nesneye Yönelimli bir uygulamada tüm veriler ve kodlamalar nesneler üzerinden yapılırlar bu nedenle iş birliği söz konusudur. Nesnelerin birbirleriyle işbirliği yapabilmesi için birbirleriyle ilişki içersisinde olmaları gerekmektedir. Nesneler işbirliğini aralarında mesaj iletimiyle yaparlar. Mesajı alan nesne bu mesajı nasıl yorumlayacağını bilmekle yükümlüdür. Mesajlar genellikle nesnenin bir eylemini gerçekleştirmesi için gerekli veriyi taşırlar.

Sınıf Nedir? Nesneye yönelimli programlamada sınıf bir nesnenin tüm özelliklerini ve eylemlerini tanımlayan şablondur. Bir nesne oluşturulacağı zaman sınıfın verdiği bilgilere bakılır ve bu bilgiler doğrultusunda nesne oluşturulur. Sınıflar nesnelerin ilk oluşumu sırasında gerekli olan başlangıç durumlarını da belirtirler. Örneğin, bir marangozhanede masa imal etmek istendiğinde, oluşturmak istenilen masanın tüm özelliklerini sınıf olarak belirtmemiz gerekir. Masa kaç ayaklı olacağı, yüksekliği, açılıp kapanabilirliği gibi zihinde çizilen masa modelini sınıfa yansıtmak gerekmektedir.

Sınıf oluşturulduktan sonra sınıfın belirttiği özelliklere ve eylemlere sahip nesneler oluşturulabilir. Gerçek dünyada pek çok nesnenin ismi yoktur. Nesneler ait oldukları sınıflarla adlandırılırlar. Örneğin binek otomobilimize de pazarcının sebzeleri taşıdığı araca da araba diyoruz. Sınıflar tanımlanırken genelden sistemin ihtiyaç duyduğu tüm nesneler göz önüne alınarak sınıflar tanımlanmalı. Benzer özellikteki nesneler için tek sınıf oluşturulması yazılım geliştirme süreçlerinde kolaylıklar sağlamaktadır

Java Programlama Dili Java, Sun Microsystems mühendislerinden James Gosling tarafından 1990 ların basında gelistirilmeye baslanmıs; Açık kodlu, Nesneye yönelik, Platformdan bagımsız, Yüksek performanslı, Çok görevli, Yüksek seviyeli, Adım adım isletilen (yorumlanan - interpreted ) bir dildir.

Java Temel Özellikler Platform bağımsız Kaynak programları çesitli bilgisayar sistemlerinde derlenip çalıstırılabilen diller tasınabilir ( portable ) olarak nitelendirilir. Java ile yazılmıs programlar, her donanım/isletim sistemi platformunda benzer sekilde çalıştırılabilir. Bir kez yaz ve her yerde çalıstır ( write once, run anywhere ) Otomatik çöp toplama ( garbage collection ) Dinamik bellek yönetimi: Java'da bir nesne olusturulduktan sonra o nesne ile isiniz bittiginde hiçbir sey yapmanız gerekmez; sanal makine akıllı bir biçimde kullanılmayan bellek bölümlerini belirli aralıklarla ya da tetiklenen yordamlarla otomatik olarak temizler ve sisteme iade eder. Açık kaynak Sun, Kasım 2006 da Java bilesenlerini, GNU General Public Licence altında açık kaynak olarak yayınladı.

Java Runtime Environment JRE Java uygulamalarının bilgisayar üzerinde koşturulmasını sağlayan yazılımdır. Kullanıcılar Java Çalıstırma Ortamınının son sürümünü java.com internet sayfasından yükleyebilir (http://java.com/en/download/help/testvm.xml) Java Çalıstırma Ortamı iki kısımdan olusur: Java Sanal Makinesi ( Java Virtual Machine - JVM) Uygulama Programlama Arayüzü ( Application Programming Interface API) Bir dizi standart kütüphane saglar. JVM ve API birbiriyle tutarlıdır ve bu yüzden JRE altında birlestirilmistir. JRE nin Java uygulamalarını çalıstıran sanal bir bilgisayar oldugunu düşünürsek; JVM islemci, API kullanıcı arayüzü olarak isimlendirilebilir.

Java Virtual Machine JVM Sanal makineyi bir yönden bir tür hayali mikroişlemci gibi düşünebiliriz. Gerçek tüm mikroişlemciler (Intel Pentium, AMD Athlon, Sun Sparc, vs.) belirli bir grup komutu işlemek üzere tasarlanmıstır. Bu komutlara islemcinin komut kümesi adı verilir. Tüm yazılımlar çalışabilmek için önce bu komut kümesine dönüştürülür, daha sonra işlemci bu komutları sıra ile sayısal işlemci komutlarına dönüştürüp işletir. Java Sanal Makinesi de baytkod komut kümesini tıpkı işlemci gibi adım adım işletir. Java bu nedenle, yorumlanan ( interpreted ) bir dil olarak adlandırılır.

Application Programming Interface API Java API, Java yazılımlarında kullanılan yazılım kütüphanelerine genel olarak verilen isimdir. Java API ile disk, grafik, ağ, veri tabanı, güvenlik gibi yüzlerce konuda kullanıcılara erisim imkanı sunulur. Java API, J2SDK nın ( Java2 Software Development Kit ) bir parçasıdır. Sun, farklı uygulama ortamlarını desteklemek için, farklı API lar tanımlamıştır: Java Platform, Micro Edition (Java ME): Avuçiçi aygıtlar gibi kısıtlı kaynaga sahip ortamlar için Java Platform, Standard Edition (Java SE): Masaüstü bilgisayarlar ve is istasyonları için Java Platform, Enterprise Edition (Java EE): Genis dagıtık sistemler ve web sunucuları için

Java kaynak dosyasının yapısı Programlamada kodların yazıldığı dosyalara kaynak dosyası denilmektedir. Java kaynak dosyaları.java uzantısıyla oluşturulurlar. Java kaynak dosyaları oluşturulurken dikkat edilecek ilk kural, kaynak dosyasının içerisinde dosyayla aynı adı taşıyan bir sınıf yada arayüz bulunması gerekliliğidir. Bir java kaynak dosyası üç ana bölümden oluşur. Bunlar: Paket Bildirimi Kütüphane Ekleme Kod Bloğu

Paket Bildirimi Java da kaynak dosyalar veya derlenmiş halleri bilgisayarımızdaki dosya sistemine benzer bir hiyerarşide tutulurlar. Nasıl ki bilgisayarımızdaki tüm dosyalar bir dizinde tutuluyorsa kaynak dosyalarımız da mutlaka bir paket içerisinde tutulmalıdır. Paketler başka paketlerin içerisinde bulunabilirler. Örneğin java da dosya işlemlerini yapan File.java kaynak dosyası java paketinin içerisindeki io paketine aittir. Bu nedenle File.java dosyasının en üst kısmında package java.io ifadesi bulunur. Bir kaynak dosya sadece bir pakete ait olabilir dolayısıyla kaynak dosyasında sadece bir adet paket bildirimi olur.

Kütüphane Ekleme Daha önceden yazılmış ve programcının kullanımına sunulmuş kaynak dosyalar yada bunların derlenmiş hallerine kütüphane denilmektedir. Java da kütüphane bildirimi, paket bildiriminin ardından yapılmaktadır. Örneğin yukarıda bahsettiğimiz File.java kaynak dosyasından üretilmiş File sınıfını yeni yazacağımız kodda kullanmak istersek; import java.io.file; ifadesini kullanmamız gerekmektedir.

Kütüphane Ekleme Tek tek sınıf dosyalarını eklemektense bir paket içerisindeki tüm dosyaları aynı satırda ekleme imkanı da mevcuttur. Örneğin Java nın giriş çıkış işlemlerinin bulunduğu java.io paketinin içerisindeki tüm kütüphaneleri yazacağımız kodda kullanmak istersek import java.io.*; ifadesini kullanırız.

Kütüphane Ekleme

Kod Bloğu Paket ve kütüphane işlemlerinden sonra kod bloğu tanımlanır kod bloğu en az bir adet sınıf veya arayüz tanımından oluşur. Kod bloğunda tanımlanan arayüz yada sınıfın en az birinin dosya ismiyle aynı isimde olması gerekmektedir.

Java da İsimlendirme Java da isimlendirme yaparken bazı kurallar mevcuttur. Dosya İsimleri: Java da dosya isimleri büyük harfle başlar. Dosya ismi birden fazla sözcükten oluşuyorsa, sözcükler arasında boşluk bırakmadan tüm sözcüklerin ilk harfi büyük olacak şekilde isimlendirilir. Dosya isminin sonuna.java uzantısı eklenir. Örn. Araba.java SuSisesi.java Sınıf İsimleri: Java da sınıf isimleri büyük harfle başlar. Sınıf ismi birden fazla sözcükten oluşuyorsa, sözcükler arasında boşluk bırakmadan tüm sözcüklerin ilk harfi büyük olacak şekilde isim verilir. Örn. Surucu YemekMasası

Java Programlama Dili Metod İsimleri: Java da metod isimleri küçük harfle başlar. Metod ismi birden fazla sözcükten oluşuyorsa, sözcükler arasında boşluk bırakmadan ilk sözcük hariç diğer tüm sözcüklerin ilk harfi büyük olacak şekilde isimlendirilir. Örn. baglan() kapiyiac() Paket İsimleri : Java da paket isimleri tamamen küçük harflerden oluşur. Alt paketler. ile birbirlerinden ayrılır. Örn. java.io java.sql

Java Programlama Dili Değişken İsimleri: Java da değişken isimleri küçük harfle başlar. Değişken ismi birden fazla sözcükten oluşuyorsa, sözcükler arasında boşluk bırakmadan ilk sözcük hariç diğer tüm sözcüklerin ilk harfi büyük olacak şekilde isimlendirilir. Örn. adi dogumyeri dogumtarihi Sabitler : Java da sabit isimleri büyük harflerden oluşur. Sabit ismi birden fazla sözcükten oluşuyorsa, sözcükler arasında _ karakteri konularak isimlendirilir. Örn. RAKIM PI_SAYISI

Notlandırma Arasınav %30 Proje %30 Proje Önerisi (29.02.2012) %5 Mantıksal Tasarım (28.03.2012) %10 Proje Raporu (16.05.2012) % 10 Sunum (09.05.2012 & 16.05.2012) %5 Final %40