Java’ya Merhaba

Java’ya Merhaba

# Mayıs 31, 2018 # Kodlama Uncategorized 0

Java Teknolojisi nedir ve neden ihtiyacımız olsun?

Java bir programlama dili ve bilgi işlem ortamı olarak ilk olarak Sun Microsytem tarafından 1995 yılında yayınlanmıştır. Birçok uygulama ve websitesi java kurulu olmadan çalışmayacaktır, ve daha fazlası her gün üretilmektedir. Java hızlı, güvenli ve güvenirlirdir. Laptoplardan veri merkezlerine, oyun konsollarından bilimsel süper bilgisyarlara, cep telefonlarından internete, Java her yerde.

Her ne kadar her yerde karışımıza çıksa da, java ya da herhangi bir proglamlama dili için o dilin nasıl ve hangi kurallar silsilesiyle yazıldığını bilmek yeterli değildir. Çünkü, birçok geliştirici ve birçok farklı alanda kullanıcıların ihtiyaçları doğrultusunda her programlama dili farklı kütüphaneler geliştirmiş veya birçokları için aynı kütüphaneler her programlama dili için çatallanmıştır. Bugün QT, GTK vb. masaüstü rad araçları java veya python veya birçokları için kullanılabilir kütüphanelerdir, veri yönetimi kısmında ise artık bir programlama dilinin sql, mysql kullanımını kolaylaştırıcı bir kütüphanesinin olmaması onun bir bakıma sonu gibi bir şeydir.

Bütün bunlar bir kenarda dura dursun, basit kurallar silsesini bilmeden bir programlama dilini okuyabiliyor olmak o kadar da kolay değil. Bu yüzden java ile örnek program üzerinden statement ve syntax’ yapısını öğrenmiş olacağız.


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.Scanner; 
class Calculate {
    public static void main(String[] args) {
	//* Bir sınıf oluşturabilmek için çok şey yazmak gerekiyor özellikle python'a kıyasla
	//* fonksiyon oluştururken ne olacak acaba. :)
	//* ÖNEMLİ! Bu fonksiyon --> Integer.parseInt(String) yazıyı rakama dönüştürebilir.
	//* Yani, eğer bir hesaplama işlemi için bir değişkenden yararlanmak istiyor bu işe yarar!		
	//* Aynı zamanda beklenti işleçlerini öğrenmemiz gerek demek.
	//* Hata ayıklayıcılar olmadan güzel bir kod yazmak mı :P
	//* Bir örnek kod olarak hata ayıklama:
	//*      try {
	//*            int a[] = new int[2];
 	//*           System.out.println("Access element three :" + a[3]);
 	//*        } catch (ArrayIndexOutOfBoundsException e) {
	//*            System.out.println("Exception thrown  :" + e);
	//*         }
	//** Eğer fonksiyonun bir yerinde hata yaratmak gerekiyorsa
	//** Bunun için throw yerleşiği kullanılıyormuş...
	

 	//* Eğer birden çok değişken yaratmak istiyorsak
 	//* array yapısını kullanabiliriz tıpkı burada olduğu gibi;
	//*String[][] names = {
    //*        {"Mr. ", "Mrs. ", "Ms. "},
    //*        {"Smith", "Jones"} 	
    //*        };
	//* 

//*Çoklu değişkenleri fonksiyon içinde kullanmak zor gibi duruyor, ama çokta değil`, )
//*	static void trial(String[] names[]) {
//*        System.out.println(names[0][0] + names[1][0]);
//* çıktı        // Ms. Jones
//*        System.out.println(names[0][2] + names[1][1]);
//* çıktı       // Mr. Smith
//*	}			
//* Eğer global değişken yaratmak istiyorsak "public static" bir tane yaratmak önce kullanmamız gereken.
//* global değişkenler tüm alt fonksiyonlar tarafından erişilebilen, fonksiyonlar arası genel değişkenler.
//* Şunun gibi: public static int result = Integer.parseInt(  ask_to_user("Please chose 1 to 4:\n"
//* Ancak şu an için pekte gerek yok.
	print("Welcome to my first java script. `. ) ");
	int result = entering();
	
	JFrame frame = new JFrame("My first java script. `. )");
	frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
	frame.setSize(400, 400);	
	frame.setLocation(300,300);
	JLabel label = new JLabel(" Result is :" + result +"Bye, have a beautiful day." , 
				JLabel.CENTER );
	label.setFont(new Font("TimesNewRoman", Font.PLAIN, 18));

	
	frame.getContentPane().setLayout(new FlowLayout());	
	frame.getContentPane().add(label);

	frame.setVisible(true);	
	}
	static int entering() {	
		int result = 0;
		int answer_is = 0;
		try {
		result = Integer.parseInt(  ask_to_user("Please chose a number 1 to 4:\n"
					+"1: (+) Addition \n"
					+"2: (-) Subtraction \n"
					+"3: (/) Division \n"
					+"4: (*) Multiplication ") );
//* || işaretleri veya ifadesine, && ise ve ifadesini temsil ediyor..	
		if (result < 1 || result >= 5) {
			print("Curse you... You should stop playing hooky!");
			System.exit(-1000);
		}			
		} catch (NumberFormatException error) {
			print("Woo, wooo easy,\n " +result+	" is out of range??");		
			print("Until the next century, have a good time!");
			System.exit(-500);
		}
		answer_is = four_operations(result);
		String answer  = ask_to_user("Would you like to do any calculate again?\nyes (y/Y),\nno  (n/N) or anything else :");
		if (answer.equals("y") || answer.equals("Y") ) {
			entering();
		} else if (answer.equals("n") || answer.equals("N") || ! answer.equals("y") || ! answer.equals("Y")  ) {
			print("OK"); 
		}
		return answer_is;		
	}		
 	static int four_operations(int result) {
		try {
		//* These are all have to be a number!
		int numbers[] = get_number();
		int number_one = numbers[0];
		int number_two = numbers[1]; 
		int answer_is = 0;
  //* Eğer  { veya } taglarını if ve else ile bu o zaman hataya sebep olur!
//* Tıpkı bunun gibi; Calculate.java:75: error: unreachable statement|biraz akıl karıştı bir hata mesajı açıkçası
//* Aynı zaman if veya elif gibi işleçler altında değişkende üretemiyoruz, eğer denersek:
//* Calculate.java:76: error: variable answer_is might not have been initialized
//* Bir başka akıl karıştırıcı hata mesajı :) .

		if (result == 1) {
			answer_is = number_one + number_two;
		} else if ( result == 2) {
			answer_is = number_one - number_two;
		} else if (result == 3) {
			answer_is = number_one / number_two;
		} else if (result == 4) {
			answer_is = number_one * number_two;
		}
		print("Result is:  " + answer_is);
		return answer_is;
		} catch (NumberFormatException error) {
			print("\nWhat were you thinking, wrote down abc???!");
			return -100;
		}
	}
	static int[] get_number() {
		int number_one = Integer.parseInt( ask_to_user("OK, pick a number:") ) ;
		int number_two = Integer.parseInt( ask_to_user("Pick an another number to add up to first one:") ); 
		int numbers[];
		numbers = new int[2];
		numbers[0] = number_one;
		numbers[1] = number_two;
		return numbers;
	}
	static void print(String text) {
		System.out.println(text);
	}

 //* ve eğer return yerleşiğini fonksiyonda kullanacaksak, fonksiyon aynı yapıya sahip olmalı 
 //* Bunun anlamı, eğer return metodu bir yazı olarak referans veriyor olmalı veya
 //* ne ise o şekilde tanımlanmalı(int, float etc.)
	static String ask_to_user(String text) {
		Scanner scan = new Scanner(System.in);
		print(text);	
		String name = scan.next();
		return name;
	}
}

Kodları yazmak java dili için tam olarak yeterli değil ;çünkü java derlenen bir dil tıpkı C gibi. Derleniyor olması kodların içeriğinin saklanması, gizlenmesi ve işlemlerin biraz daha hızlı olmasını sağlıyor. Ancak tabii ki de java bir script dili, makine koduyla doğrudan temasa geçmiyor C dili gibi. Bu yüzden diğer derlenmeyen script dillerine kıyasla bir avantajı var bu açıdan.

Hazırladığımız dosyayı derleyip çalıştırabilmek için;

javac Derlencek.java
java Derlenecek
Java’ya Merhaba
Java Teknolojisi nedir ve neden ihtiyacımız olsun? Java bir programlama dili ve bilgi işlem ortamı olarak ilk olarak Sun Microsytem Read more.
PR VS AD? Reklam nedir, ne değildir?
   Shakira, Darth Vader’ı alt etti; Pop yıldızın Activia sponsorlu müzik videosu tüm zamanların en çok paylaşılan reklamına dönüşmesi: bit.ly/1ogx9UW Read more.
Venüste Neden Yaşam Yoktur
     Venüs adını eski roma tanrıçasından alır, eski yunandaysa afrodit aşk ve güzellik tanrıçası, venüsün bir diğer adı ise Read more.
Glade, gtk+ ?
GLADE Glade Nedir? Gtk Builder? Gtk Builder İşlevleri? ÖRNEKLER Glade Nedir? Glade, Gnome Masaüstü ortamına ,GTK+ araçkiti için hızlı ve Read more.
Adım adım “python” ile altyazı editörü
#!/usr/bin/env python # -*- coding: utf-8 -*- # vim: ts=4:sw=4 class srt_editor(): def __init__(self,dosya, sure,durum=False): # kullanıcıdan gelen ana değişkenler Read more.
Parça parça “Crystallizing Public Opinion”
.. the professional concept of public relations has its roots in pirimitive times, though relationship between those who led and Read more.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir