Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

Bölüm 1: Bilgisyara, Programlamaya ve Java’ya giriş

Benzer bir sunumlar


... konulu sunumlar: "Bölüm 1: Bilgisyara, Programlamaya ve Java’ya giriş"— Sunum transkripti:

1 Bölüm 1: Bilgisyara, Programlamaya ve Java’ya giriş

2 Objectives Bilgisayarın temelleri, programlar ve işletim istemleri incelenecek. Java’nın World Wide Web ile olan ilişkisi incelenecek. API, IDE, JDK, JRE gibi kısaltmaların ne anlama geldiği öğrenilecek. Basit bir java programı yazılacak. Konsol çıktısı gösterilecek. Temel Java sentaksı açıklanacak. Java programı yazılacak derlenecek ve çalıştırılacak. (GUI) Program çıktısının JOptionPane kullanılarak gösterilmesi.

3 Bilgisayar nedir? Bir bilgisayar CPU, Bellek (RAM/Memory), Sabit (Hard) disk, Giriş birimleri, Çıkış birimleri ve Ağ (Network) bağlantısından oluşur.

4 CPU (Merkez işlemci birimi)
Merkez işlemci birimi (CPU) bilgisayarın beynidir. Hafızadan komutları çeker ve çalıştırır. CPU hızı megahertz (MHz) ile ölçülür ve 1 megahertz, saniyede 1 milyon işlem demektir. 1 gigahertz megahertz’dir.

5 Hafıza (RAM) Hafıza çalıştırılan programların veri ve komutlarını tutar. Bu veri ve komutlar işlemci tarafından işlenirler. Hafıza ölçüm birimi byte tır. Bir programın veri ve komuları işlemci tarafından çalıştırılmadan önce hafızaya aktarılır. Modern işletim sistemlerinde RAM de bir çok uygulama olur ve bunlar GB larca yer kaplar. Bilgisayar kapatıldığında RAM deki veriler silinir. .

6 Bilgisayar verileri nasıl tutar?
Sayı, karakter ve karakter olmayan diğer ifadeler bilgisayarda sıfırlar veya birler olarak kaydedilir. Bilgisayarların RAM, Sabit disk gibi veri depolama üniteleri, bit denen değeri sıfır veya bir olabilen küçük alanlardan oluşur. Programcının bir karekterin sayıya dönüştürülerek kaydedilmesi (encoding) ve sonra tekrar karakter olarak geri verilmesi (decoding) ile ilgilenmez. Bu işlem otomatik olarak işletim sistemi tarafından yapılır. Örneğin J harfi hafızada olarak tutulur. Ve istendiğinde tekrar J olarak programa geri verilir. Byte paylaşılan bir şey değildir. Bilgisayar bir byte ı bir programdaki iki değişken veya iki program arasında paylaştırmaz

7 Depolama Aygıtları Depolama aygıtları temelde hafıza ile aynı işlevi görürler. Fakat Hafızadan farklı olarak bilgisayar kapatıldığında veriler silinmez. Bir program çalıştırıldığında işlemci tarafından kullanıla bilmesi için diskten hafızaya aktarılır. Disk tipleri: Sabit Diskler, SSD, USB Memory, CD Rom ve diskettir.

8 Giriş Birimleri Klavye, fare, barkod okuyucu, kamera, mikrofon giriş birimlerine örnektir.

9 Çıkış Birimleri Monitör, Projektör, Yazıcı ve HDMI bağlantısı çıkık birimlerine örnektir.

10 Bağlantı Aygıtları Bağlantı aygıtları bir bilgisayarın başka bilgisayarlarla iletişime geçmesini sağlar. Dial up modemler, ADSL modemler, Blue tooth, RFID bağlantısı, Kızıl ötesi bağlantı, gibi farklı araçlarla bu amaca ulaşılabilir.

11 Programlar Bilgisayar programları (yazılımlar) bilgisayara ne yapacağını söyleyen bir çok komutun birleşiminden oluşur. Programlar olmadan bilgisayar işe yaramaz makinalardır. Windows, android gibi işletim sistemleri de birer programdır. Bilgisayarlar bizim dilimizi bilmediklerine göre onlarla anlayacakları bir dilden konuşmak zorundayız. Bu nedenler programlar programlama dilleri kullanılarak yazılırlar.

12 Programlama Dilleri Makina Dili Sembolik Makine dili Yüksek Seviyeli Diller Makine Dili bir grup komuttan oluşur. Bu komut kümesi her bilgisayarda (İşlemcide) farklılık gösterebilir. Komutlar ikilik sistemdeki sayılardan oluşmuştur. Bundan dolayı yazması, anlaması ve değişiklik yapması çok zordur. Örneğin iki sayıyı topla demek için aşağıdaki gibi bir komut yazılır:

13 Programlama Dilleri Makina Dili Sembolik Makine dili Yüksek Seviyeli Diller Sembolik Makine dili (Assembly languages) program yazmayı kolaylaştırmak için geliştirilmiştir. Aslında bilgisayar sembolik makine dilini anlamaz. Ancak Sembolik makine dilini makine diline çeviren assembler diye adlandırılan bir program kullanılır. Örneğin iki sayıyı toplayan program söyle yazılır: ADD F3 R1, R2, R3

14 Programlama Dilleri Makina Dili Sembolik Makine dili Yüksek Seviyeli Diller Yüksek seviyeli diller, İngilizce kelimelerin kullanıldığı kolay öğrenilen ve kolay uygulama geliştirilen dillerdir. Programın kodlarının okunması, anlaşılması ve değiştirilmesi kolaydır. Örneğin Aşağıdaki yüksek seviyeli dil komutu yarı çapı 5 olan bir dairenin alanını hesaplar: alan= 5 * 5 * ;

15 Popüler Yüksek Seviyeli Diller
COBOL (COmmon Business Oriented Language) FORTRAN (FORmula TRANslation) BASIC (Beginner All-purpose Symbolic Instructional Code) Pascal (Blaise Pascal’dan gelir) Ada (Ada Lovelace’dan gelir) C (B programlama dili temel alınarak geliştirildi) PHP (C benzeri web geliştirme dili) Visual Basic (Microsoft’un geliştirildiği, Basic benzeri görsel dil) Delphi (Borland’ın geliştirdiği Pascalbenzeri görsel dil) C++ (C yi temel alır, nesne yönelimlidir) Java  C# (Microsoft’un geliştirildiği, Java benzeri bir dil)

16 Derleyici, Bağlayıcı ve Yorumlayıcı
Derleyici (Compiler): bir programlama dilinde yazılmış olan kaynak kodunu başka bir dile (genellikle makine koduna) çeviren yazılım. Bağlayıcı (Linker): Derleyici tarafından object dosyasına çevrilen bir veya birden çok dosyanın birbirleri ile ilişkilendirmesi ve tek bir çalıştırılabilir dosyaya çevrilmesini sağlayan yazılımdır. Yorumlayıcı (Interpreter): kodu kısım kısım ele alarak çalıştırır. Yorumlayıcılar standart bir çalıştırılabilir kod üretmezler. Yorumlama işlemi aşama aşama yapıldığı için genellikle çalışma zamanda ilk hatanın bulunduğu yerde programın çalışması kesilir.

17 Kaynak Kodun Derlenmesi
Yüksek seviyeli programlama dilleriyle yazılan programlara kaynak kod denir. Bilgisayarlar Kaynak koddan anlamadıkları için kaynak kodlar makine diline dönüştürülür. Bu dönüşümü yapan programa derleyici denir. Yeni oluşan derlenmiş dosyada nesne (object) programı denir. Nesne programı sıklıkla bir başka nesne programıyla yada kütüphane ile bağlanır.

18 İşletim sistemleri İşletim sistemi, bilgisayarı yöneten ve kontrol eden bir programdır. Windows 7/8, Mac OS, Linux ve Unix türevleri, Android, IOS, Simbian birer işletim sistemidir. Notepad, Ms Paint, Chrome Browser gibi programlar İşletim sistemleri olmadan çalışamaz. Programlar belirli işletim istemleri için yazılırlar.

19 Neden Java hocam?  Java, uygulama geliştirip, bu uygulamayı internet serverlarında, masa üstü bilgisayarlarında ve el terminallerinde çalıştırma imkanı verir. Bir çok işletim sisteminde çalışabilir. Java bir genel amaçlı programlama dilidir. Java bir internet programlama dilidir.

20 Java, Web ve Ötesi Java Web uygulamaları geliştirmek için kullanılabilir. Java ile applet geliştirilebilir. Java ile masa üstü uygulaması geliştirilebilir. Java ile el terminalleri için uygulama geliştirilebilir . Java ile android uygulamaları geliştirilebilir. Java ile facebook uygulamaları geliştirilebilir.

21 Java Applet Örneği

22 PDA and Cell Phone

23 Java’nın Tarihçesi James Gosling ve Sun Microsystems ve "Green Team" ve Oak C++ çağı ve java çağı Java, 20 Mayıs 1995, Sun World HotJava İlk Java çalıştıran Web browserı (Netscape)

24 JDK ve JRE Write ones, run every where / bir kere yaz her yerde çalıştır. JDK Java Development Kit / Java Geliştirme Araçları JRE Java Runtime Environment / Java Çalıştırma Ortamı

25

26 Java’nın özellikleri Java Basittir Java Nesne Yönelimlidir
Java Dağıtık Mimaridir Java Yorumlanır Java Sağlamdır Java Güvenlidir Java Platform Bağımsızdır Java Taşınabilirdir Java’nin performansı Java Multi Threaddir Java Dinamiktir

27 Java’nın özellikleri Java Basittir Java Nesne Yönelimlidir
Java Dağıtık Mimaridir Java Yorumlanır Java Sağlamdır Java Güvenlidir Java Platform Bağımsızdır Java Taşınabilirdir Java’nin Performansı Java Multi Threaddir Java Dinamiktir Java C++ model alınarak tasarlanmıştır ancak daha gelişmiş ve çok daha basitleştirilmiş halidir. Java C++ a göre daha fazla fonksiyonelite içerir ve bazı C++ araçları javaya alınmamıştır. Ör: function pointer, Multiple inheritance C++ daki bellek yönetimi sorunu ortadan kalmıştır

28 Java’nın özellikleri Java Basittir Java Nesne Yönelimlidir
Java Dağıtık Mimaridir Java Yorumlanır Java Sağlamdır Java Güvenlidir Java Platform Bağımsızdır Java Taşınabilirdir Java’nin Performansı Java Multi Threaddir Java Dinamiktir Java tamamıyla nesne yönelimlidir. Diğer bir çok nesne yönelimli programlama dili yapısal programlama dili olarak tasarlanmış ve sonradan nesne yönelimli olmuştur. Ama java doğuştan nesne yönelimli olması için tasarlanmıştır. Yazılım geliştirmede en önemli hedeflerden biri yazılan kodun tekrar kullanılabilir olmasıdır. Nesne yönelimli programlama içinde barındırdığı encapsulation (sarma), türetme ve çok biçimlilik sayesinde; esnek, modüler, sade ve tekrar kullanılabilir kod üretme imkanı verir.

29 Java’nın özellikleri Java Basittir Java Nesne Yönelimlidir
Java Dağıtık Mimaridir Java Yorumlanır Java Sağlamdır Java Güvenlidir Java Platform Bağımsızdır Java Taşınabilirdir Java’nin Performansı Java Multi Threaddir Java Dinamiktir Dağıtık hesaplama (Distributed computing) bir çok bilgisayarın network aracılığıyla çalışmasıdır. Java dağıtık hesaplamayı kolay bir şekilde yapabilmek için tasarlanmıştır. Javada network programing yapmak dosya işlemleri yapmak kadar basittir.

30 Java’nın özellikleri Java Basittir Java Nesne Yönelimlidir
Java Dağıtık Mimaridir Java Yorumlanır Java Sağlamdır Java Güvenlidir Java Platform Bağımsızdır Java Taşınabilirdir Java’nin Performansı Java Multi Threaddir Java Dinamiktir Java’nın çalışması için yorumlayıcıya ihtiyaç vardır. Java programları derleyici sayesinde Java Virtual Machine koduna yani bytecode a dönüştürülür. Bytecode makine bağımsızdır ve java yorunlayıcısı olan her makinada çalışır. Yorumlayıcı Java Virtual Machine (JVM) nin bir parçasıdır.

31 Java’nın özellikleri Java Basittir Java Nesne Yönelimlidir
Java Dağıtık Mimaridir Java Yorumlanır Java Sağlamdır Java Güvenlidir Java Platform Bağımsızdır Java Taşınabilirdir Java’nin Performansı Java Multi Threaddir Java Dinamiktir Java derleyicisi, diğer bir çok dillin derleyicinin bulamadığı hataları bulabilir Java diğer dillerin aksine, hata potansiyeli taşıyan kodu bulur ve uyarır. Java kendi içinde çalışma zamanı hatalarını işleyen bir mekanizmayla gelir.

32 Java’nın özellikleri Java Basittir Java Nesne Yönelimlidir
Java Dağıtık Mimaridir Java Yorumlanır Java Sağlamdır Java Güvenlidir Java Platform Bağımsızdır Java Taşınabilirdir Java’nin Performansı Java Multi Threaddir Java Dinamiktir Java çalıştığı bilgisayara zarar verilemesin diye, birkaç güvenlik mekanizmasını ile birlikte tasarlanmıştır. Örneğin appletle bir masa üstü uygulamasının yaptığı her şey yapılamaz

33 Java’nın özellikleri Java Basittir Java Nesne Yönelimlidir
Java Dağıtık Mimaridir Java Yorumlanır Java Sağlamdır Java Güvenlidir Java Platform Bağımsızdır Java Taşınabilirdir Java’nin Performansı Java Multi Threaddir Java Dinamiktir Bir kere yaz heryerde çalıştır. Java Virtual Machine (JVM) sayesinde yazdığınız bir program bütün makinalarda çalışabilir.

34 Java’nın özellikleri Java Basittir Java Nesne Yönelimlidir
Java Dağıtık Mimaridir Java Yorumlanır Java Sağlamdır Java Güvenlidir Java Platform Bağımsızdır Java Taşınabilirdir Java’nin Performansı Java Multi Threaddir Java Dinamiktir Çünkü java platform bağımsız ve tekrar derlenmeden heryerde çalışabilir.

35 Java’nın özellikleri Java Basittir Java Nesne Yönelimlidir
Java Dağıtık Mimaridir Java Yorumlanır Java Sağlamdır Java Güvenlidir Java Platform Bağımsızdır Java Taşınabilirdir Java’nin Performansı Java Multi Threaddir Java Dinamiktir Java C++ kadar performanslı değildir çünkü önce bytecode makine koduna dönüştürürlür. Fakat JIT sayesinde bir defa bytecode dan makine koduna dönüşüm yapılınca JRE bunu saklar ve tekrar derlemez.

36 Java’nın özellikleri Java Basittir Java Nesne Yönelimlidir
Java Dağıtık Mimaridir Java Yorumlanır Java Sağlamdır Java Güvenlidir Java Platform Bağımsızdır Java Taşınabilirdir Java’nin Performansı Java Multi Threaddir Java Dinamiktir Multithread programlama javanın içsel araçlarındandır. Bunun için javada özel anahtar kelimeler vardır. Javada multithread programlama dilin bir aracıdır.

37 Java’nın özellikleri Java Basittir Java Nesne Yönelimlidir
Java Dağıtık Mimaridir Java Yorumlanır Java Sağlamdır Java Güvenlidir Java Platform Bağımsızdır Java Taşınabilirdir Java’nin Performansı Java Multi Threaddir Java Dinamiktir Java yenilenmeye açık bir şekilde tasarlanmıştır ve her zaman geçmişe uyumludur. Java nın yeni bir versiyonu çıktığında eski kodların tekrar derlenmesi gerekmez ve makinalara bu yeni versiyonun kurulması zorunlu değildir.

38 JDK Versions JDK Beta (1995) JDK 1.0 (Ocak 1996) JDK 1.1 (Şubat 1996)
JDK 1.2 (Aralık 1998) JDK 1.3 (Mayıs 2000) JDK 1.4 (Şubat 2002) JDK 1.5 (Eylül 2004) JDK 5 veya Java 5 JDK 1.6 (Aralık 2006) JDK 6 veya Java 6 JDK 1.7 (Temmuz 2011) JDK 7 veya Java 7 JDK 1.8 (Mayıs 2014) JDK 8 veya Java 8 JDK 1.9 (2016 da bekleniyor)

39 JDK Editions Java Standard Edition (J2SE)
J2SE: Tek bilgisayar üzerinde çalışan uygulamalar geliştirmek için tasarlanmıştır (Masaüstü yazılımı) Java Enterprise Edition (J2EE) J2EE: Server tabanlı (web) uygulamalar geliştirmek için tasarlanmıştır. Ör: Java servlets ve Java ServerPages. Java Micro Edition (J2ME) J2ME eski tip telefon yada el terminalleri için uygulama geliştirmek amacıyla tasarlanmıştır. Android JDK (Standart değil) Android JDK: Android işletim sisteminde uygulama geliştirmek amacıyla Google tarafından geliştirilmiştir. Bu kurs sadece J2SE’yi konu almaktadır.

40 Popüler Java IDEleri NetBeans Open Source (Oracle)
Eclipse Open Source (IBM) RAD (IBM) JDeveloper (Oracle) InteliJ IDEA (JetBrains)

41 Basit Bir Java Pogramı //Bu program ekrana "Merhaba Java!" yazar
public class Merhaba { public static void main(String[] args) { System.out.println("Merhaba Java!"); }

42 Programın Oluşturlması, Derlenmesi ve Çalıştırılması

43 JAVA Kaynak Kodunun Derlenmesi
Bir kaynak kod bir işletim sitemi için özel olarak yazılmış derleyicide derlenerek o işletim sisteminde çalışacak programa dönüşür. Aynı kod başka işletim sisteminde çalıştırılmak isteniyorsa mutlaka o işletim sistemi için yazılmış derleyici ile tekrar derlenmelidir. Bazen bunu yaparken programın değiştirilmesi gerekir. Java ise bir kere derlenip bir çok yerde çalışmak üzere tasarlanmıştır. Java’nın bu çığır açan özelliği sayesinde java kodunu derledikten sonra .class uzantılı bytecode dosyaları oluştururlur ve bytecode da hangi makinada çalışıyorsa orada kurulu olan JRE / JVM aracılığıyla makine diline çevrilir.

44 Programın çalışması //Bu program ekrana "Merhaba Java!" yazar
Animasyon Programın çalışması Giriş metodu main //Bu program ekrana "Merhaba Java!" yazar public class Merhaba { public static void main(String[] args) { System.out.println("Merhaba Java!"); }

45 Programın çalışması //This program prints Welcome to Java!
Animasyon Programın çalışması Satırın işletilmesi //This program prints Welcome to Java! public class Welcome { public static void main(String[] args) { System.out.println("Merhaba Java!"); }

46 Trace a Program Execution
animasyon Trace a Program Execution //Bu program ekrana "Merhaba Java!" yazar public class Merhaba { public static void main(String[] args) { System.out.println("Merhaba Java!"); } Konsol çıktısı

47 JDK nın kurulumu En son jdk versiyonunu oracle ın sitesinden indir ve kur Sayfadan JDK linki tıklanır istenen ortam için uygun olan JDK indirilerek kurulur

48 IDE olmadan derleme ve çalıştırma
JDK bin klasörünün path değişkenlerine eklenmesi set path=c:\Program Files\java\jdk1.6.0\bin Derleme javac Merhaba.java Çalıştırma java Merhaba

49 IDE Yardımıyla Derleme ve Çalıştırma
IDE: Integrated Development Environment / Birleştirilmiş Geliştirme Ortamı Eclipse Netbeans

50 Two More Simple Examples
Welcome1 ComputeExpression

51 Anatomy of a Java Program
Comments Reserved words Modifiers Statements Blocks Classes Methods The main method

52 Comments Three types of comments in Java. Line comment: A line comment is preceded by two slashes (//) in a line. Paragraph comment: A paragraph comment is enclosed between /* and */ in one or multiple lines. javadoc comment: javadoc comments begin with /** and end with */. They are used for documenting classes, data, and methods. They can be extracted into an HTML file using JDK's javadoc command.

53 Reserved Words Reserved words or keywords are words that have a specific meaning to the compiler and cannot be used for other purposes in the program. For example, when the compiler sees the word class, it understands that the word after class is the name for the class. Other reserved words in Listing 1.1 are public, static, and void. Their use will be introduced later in the book.

54 Modifiers Java uses certain reserved words called modifiers that specify the properties of the data, methods, and classes and how they can be used. Examples of modifiers are public and static. Other modifiers are private, final, abstract, and protected. A public datum, method, or class can be accessed by other programs. A private datum or method cannot be accessed by other programs. Modifiers are discussed in Chapter 6, “Objects and Classes.”

55 Statements A statement represents an action or a sequence of actions. The statement System.out.println("Welcome to Java!") in the program in Listing 1.1 is a statement to display the greeting "Welcome to Java!" Every statement in Java ends with a semicolon (;).

56 Blocks A pair of braces in a program forms a block that groups components of a program.

57 Classes The class is the essential Java construct. A class is a template or blueprint for objects. To program in Java, you must understand classes and be able to write and use them. The mystery of the class will continue to be unveiled throughout this book. For now, though, understand that a program is defined by using one or more classes.

58 Methods What is System.out.println? It is a method: a collection of statements that performs a sequence of operations to display a message on the console. It can be used even without fully understanding the details of how it works. It is used by invoking a statement with a string argument. The string argument is enclosed within parentheses. In this case, the argument is "Welcome to Java!" You can call the same println method with a different argument to print a different message.

59 main Method The main method provides the control of program flow. The Java interpreter executes the application by invoking the main method. The main method looks like this: public static void main(String[] args) { // Statements; }

60 Displaying Text in a Message Dialog Box
you can use the showMessageDialog method in the JOptionPane class. JOptionPane is one of the many predefined classes in the Java system, which can be reused rather than “reinventing the wheel.” WelcomeInMessageDialogBox

61 The showMessageDialog Method
JOptionPane.showMessageDialog(null, "Welcome to Java!", "Display Message", JOptionPane.INFORMATION_MESSAGE);

62 Two Ways to Invoke the Method
There are several ways to use the showMessageDialog method. For the time being, all you need to know are two ways to invoke it. One is to use a statement as shown in the example: JOptionPane.showMessageDialog(null, x, y, JOptionPane.INFORMATION_MESSAGE); where x is a string for the text to be displayed, and y is a string for the title of the message dialog box. The other is to use a statement like this: JOptionPane.showMessageDialog(null, x); where x is a string for the text to be displayed.


"Bölüm 1: Bilgisyara, Programlamaya ve Java’ya giriş" indir ppt

Benzer bir sunumlar


Google Reklamları