Java Programlama Giriş 2013-2014 Bahar Dönemi Mehmet Akif Ersoy Üniversitesi Teknik Bilimler Meslek Yüksekokulu Burdur 2014 Muhammer İLKUÇAR <imuammer@yahoo.com> 1
Neden Java Programlama Platformdan bağımsızdır Nesne tabanlıdır (object orianted) Açık Kaynak kodludur Dağıtık Kod yazımı (Syntax) olarak C, C++, C# dillerine benzer Yeteri kadar dokumana (Türkçe) sahiptir Popüler bir dildir ve iş olanakları fazladır. 2
Java Programla Dili ile neler yapılabilir? Uygulama (application) yazılımları Applet (internet ortamında - browser da çalışabilen uygulama) Servlet ( server side java kodu) ile web programlama Akıllı Cihaz (Smart Device) programlama (Cep telefonu, PDA, Tablet, Jeton, Java Kart, Çamaşır makinası, uydu alıcıları, Blu-ray Disk oynatıcılar, yazıcılar vb. ) Android, Bada,Sybian vb. gibi mobil telefon ve Tablet bilgisayar işletim sistemleri için program geliştirme Console, Grafik (GUI) ve web arayüzlü program geliştirme 3 http://www.oracle.com/technetwork/java/javame/javamobile/videos/index.html
Java Programlama Console programlama Graphics User Interface (GUI) 4
Java Programla İçin gerekli olanlar Java application program interface (java API) contains predefined classes and interfaces fordeveloping Java programs. Java Development Toolkit (JDK). Java Standard Edition (Java SE), Java SE can be used to develop client-side standalone applications or applets. Java Enterprise Edition (Java EE), Java EE can be used to develop server-side applications, such as Java servlets and Java Server Pages. Micro Edition (Java ME), Java ME can be used to develop applications for mobile devices, such as cell phones. Kaynak kitap Java SE içindir. http://www.java.com http://www.oracle.com 5
Java Programla Arayüzleri (Integrated Development Environment-IDE) NetBeans IDE (https://netbeans.org ; http://www.oracle.com) Eclipse IDE (https://www.eclipse.org/downloads/; http://www.oracle.com) JCreater (www.jcreator.com) BlueJ (www.bluej.org) DrJava (www.drjava.org) InteliL IDEA (www.jetbrains.com/idea/) 6
Java Program Yapısı package Ornek1; //proje adı import java.util.scanner; // Sınıflar public class Ornek1 { public static void main(string[] args) { System.out.println(a); } } Ornek1.Java Javac Ornek1.Java (Compile) Ornek1.class, Ornek1.jar JVM yüklü Herhangi bir Cihaz Java Ornek1.class (RUN) 7 Kaynak (27.02.2014): http://ismailsnr.com/2011/04/21/neden-java/
Java Programla Arayüzleri (Integrated Development Environment-IDE) NetBeans IDE (https://netbeans.org ; http://www.oracle.com) 8
Java Programla Arayüzleri (Integrated Development Environment-IDE) Eclipse IDE (https://www.eclipse.org/downloads/; http://www.oracle.com) 9
NetBeans IDE 7.4 Arayüzü Muhammer İLKUÇAR, MAKÜ-2014 BURDUR Yeni proje oluşturma: Adım-1 10
NetBeans IDE 7.4 Arayüzü Muhammer İLKUÇAR, MAKÜ-2014 BURDUR Yeni proje oluşturma: Adım-2: seç ve Next > 11
NetBeans IDE 7.4 Arayüzü Muhammer İLKUÇAR, MAKÜ-2014 BURDUR Yeni proje oluşturma: Adım-3: projenin adını (ornek) ve yerini giriniz ve Finish 12
NetBeans IDE 7.4 Arayüzü Muhammer İLKUÇAR, MAKÜ-2014 BURDUR Yeni proje oluşturma: Adım-4: projenin adını (ornek) ve yerini giriniz Derle ve Çalıştır Compile & Run) 13
NetBeans IDE 7.4 Arayüzü Muhammer İLKUÇAR, MAKÜ-2014 BURDUR Yeni proje oluşturma: Adım-5: Kodların yazımı 14
NetBeans IDE 7.4 Arayüzü Muhammer İLKUÇAR, MAKÜ-2014 BURDUR Yeni proje oluşturma: Adım-6: Ekran Çıktısı 15
Java Program Yapısı Muhammer İLKUÇAR, MAKÜ-2014 BURDUR package ornek; import javax.swing.joptionpane;// import javax.swing.*; public class Ornek { } public static void main(string[] args) { System.out.print("merhaba... "); JOptionPane.showConfirmDialog(null, "Selam"); } 16
Java Program Yapısı Muhammer İLKUÇAR, MAKÜ-2014 BURDUR Scanner yazıp Alt+Shift+I import java.util.scanner; eklenir 17
Java Program Yapısı 18
Java Program Yapısı Klavyeden oku Yazdırma 19
Java Program Yapısı SORULAR 20
Java Komutları Hızlı Başvuru Muhammer İLKUÇAR, MAKÜ-2014 BURDUR 21
Java Komutları Hızlı Başvuru Muhammer İLKUÇAR, MAKÜ-2014 BURDUR 22
Java Komutları Hızlı Başvuru Muhammer İLKUÇAR, MAKÜ-2014 BURDUR 23
Java Komutları Hızlı Başvuru Muhammer İLKUÇAR, MAKÜ-2014 BURDUR 24
NetBeans IDE 7.4 Kısayol Tuşları Muhammer İLKUÇAR, MAKÜ-2014 BURDUR 25
NetBeans IDE 7.4 Kısayol Tuşları Muhammer İLKUÇAR, MAKÜ-2014 BURDUR 26
Java Programla İçin gerekli olanlar JSP (JavaServer Pages) JSP, bir java sunucusu üzerinde çalışan HTML, CSS, Javascript çıktısı üretebilen, Java gösterim teknolojisi olarak tanımlanabilir. JSP, etiketler ve Java kodlarından oluşur. Programın akışını, dinamik çıktı üretilmesini vs. etiketler ve java kodu ile yapılır. Ancak JSP içinde doğrudan java kodu yazmak yerine, bu kodların JSP içine dahil edilmesi tavsiye edilir. Yani JSP içine veritabanı bağlantıları için java kodu yazmak yerine, bu kodları bir java class'ı içine yazıp, JSP içinden bu class'ın çağırılması tavsiye edilir. JSP'nin etiket kütüphanesi JSTL (JavaServer Pages Standard Tag Library) olarak adlandırılır. Bir JSP kodu sunucudan ilk defa çağırıldığında veya web sunucu ilk defa başlatıldığında, JSP kodu HttpServlet sınıfından türetilerek bir class olarak oluşturulur ve sunucunun yaşan süresi boyunca çalışmaya devam eder. Servlet Servlet, Java application programming interface (API), sunucu üzerinde çalışan, dinamik içerik üreten bir web bileşenidir. HttpServlet, servlet'e örnek olarak verilebilir. Servletler, Java'nin, CGI (Common Gateway Interface) programlamasına alternatifi olarak oluşturulmuşlardır. Web sunucusu ile diğer ortak uygulamaları ve veri tabanı arasında yer alırlar. Örnekle açıklayacak olursak, bir Servlet ilk defa çağırıldığında veya Tomcat gibi web sunucu ilk defa çalıştırıldığında, Servlet'in bir örneği (instance) oluşturulur ve sunucunun yaşam süresi boyunca hazırda bekler. Eğer o servlet için bir istek olursa, yanıt verir. Servlet'lere istekler HttpServletRequest arayüzünden gelir, servlet'in cevabı ise HttpServletResponse arayüzünden döndürülür 27 Kaynak(27.02.2014): http://e-nokta.org/content/jsf-jsp-ve-servlet-arasindaki-fark-nedir
Maven (Becerikli) Java Tools (becerikli) Maven; Java projelerinin geliştirme süreçlerini basitleştirmek, standartlaştırmak, doküman hazırlamak, kütüphane bağımlılıklarından kullanıcıları kurtarmak için kullanılan bir araçtır. Maven ile nredeyse bütün java projelerinin iskeleti oluşturulabilir. Bu iskelet standartlaştığı için, siz oluşturduğunuz projeyi geliştirme ortamınızdan bağımsız olarak geliştirirsiniz. Proje iskeleti standart olduğu için java projenizi ister eclipse ile ister netbeans ile isterseniz başka IDE lerle geliştirebilirsiniz. Bu sayede geliştirme süreçlerini basite indirgersiniz. 28
Java Hibernate (Kış Uykusuna Yatma) Tools Hibernate; genel anlamda Java sınıflarından veritabanı tablolarına dönüşümü ya da Java veri tiplerinden SQL veri tiplerine dönüşümünü gerçekleştirir. Ayrıca veri sorgulama ve veri çekme işlemlerini de kullanıcı için sağlar. Bu özellikleriyle Hibernate uygulamaların geliştirilme aşamasında çok büyük kolaylık ve zamandan kazanç sağlar. Hibernate kullanmadan JDBC ile veri tabanına erişmek mümkündür. Ancak veri tabanındaki tablo sayısı arttığında buna bağlı olarak tablolar arası ilişkiler de artacaktır. Uygulama büyüdükçe bu ilişkiler çok karmaşık bir hal alabilir. Veri tabanı işlemleri için connection açma kapama, ilişkili tablolar için çok karmaşık SQL ler yazma, aynı fonksiyon içerisinde birden fazla connection almama gibi dikkat etmemiz gereken işler artacaktır. Hibernate, hemen hemen yaygın tüm veri tabanı sistemleri ile uyumludur. Bu özelliği ile çok fazla kurum tarafından da kullanılmaktadır. 29 Kaynak(28.02.2014): http://www.javauzmani.com/hibernate-nedir/