23 Mayıs 2016 Pazartesi

Algoritma Nedir?

Merhaba,

Algoritma nedir?

Belirli bir problemi çözmek ,ulaşmak için adımlar ile senaryolanan veya tasarlanan bir yol haritasıdır.
Kümeler ile gösterilip, en sonda çözüme gideceği bir son noktası olur.Genellikle kullanıldığı alan Bilgisayar Programları 'dır.Günümüzde Algoritma Kavramı her alanda çokça kullanılıyor.Bir projenin gelişme aşamasında Algoritma her zaman yol göstericidir.Daha hızlı çözümler sunar.Genellikle Programlama Dilleri 'nin temelinde,Bir Algoritma yatar.
Algoritma 2 Yönteme bağlıdır.
Bunlardan en önemlisi (AKIŞ DİYAGRAMLARI)' dır.
İkincisi ise Metinsel olarak düz ifade biçimidir.

Bir Bilgisayar Programcısı olarak biz Algoritma 'yı Bilgisayar dili 'ne uygun bir program yapacak şekilde tasarlayalım;

2 SAYIYI TOPLA?

A:ADIM

A0  --> Başla
A1  --> Sayı1 oku // 1. sayiyi kullanıcıdan oku
A2  --> Sayı2 oku // 2. sayiyi kullanıcıdan oku
A3  --> Topla = Sayı1 + Sayı2 // 2 sayının değerini Topla verisine ata
A4  --> Yazdır Topla // Topla verisi ni ekrana yazdır
A5  --> Dur

Bu arada Bilgisayar Programcıları Sıfır(0) ' ı  hiç bir zaman olduğu gibi yazmaz.Bunun nedeni 0 ile O karakteri birbiriyle aynıdır.Buna karışıklık vermemesi sebebiyle sıfıra her zaman ortasından bir çizik atılır.Varsayılan sıfır bu şekildedir.

Yukarıda görmüş olduğunuz Algoritma 5 Adım 'dan oluşuyor.Açıklamaları 'da yanında bulunuyor.Bir algoritma kavramı bunun gibi olmalıdır.Adım adım ve açıklayıcı;




Algoritma 'nın tarihine bakacak olursak ilk defa Harizmi 'nin  "Hisab el-cebir ve el-mukabala" kitabında sunulmuştur.AKIŞ DİYAGRAMLARI 'nı ayrı bir konuda inceleyeceğiz.Şimdilik Algoritma 'yı kavramaya çalışın.

Analiz Nedir?

Merhaba,

Arkadaşlar programcılık kapsamında temel mimarilerden, yani alt tabakadan, henüz programcılığa başlamadan öğrenmemiz gereken konulardan birisi analizdir.Analiz nedir ne değildir bunları göreceğiz.
Ama analiz program veya kod parçası değildir.Sadece reel hayatla birlikte projemizi beynimize adapte etme sürecidir.Yani bir kod yazarken veya program yaparken bu program neleri ve kimleri kapsıyor,
, hedef kitle program üzerinde hakimiyet kurabiliyor mu?  veya bir problem aşamasında takip etmemiz gereken algoritma şekli nasıl olmalıdır? bunlar gibi bir çok problem karşımıza çıkar.Bunları düşünüp sistemli bir şekilde programımıza entegre etmemiz, Bir analiz sonucu oluşur.Yani iyice açıklamak gerekirse, bir problem karşısında o problemi önce analiz etmeliyiz.Analiz demek ; Bir konuyu parçalarına ayırıp o parçaları inceleyip,arasında ilişkileri tanımlayıp yorumlamaktır.Bu sistem li araştırma analiz 'i ortaya çıkarır.Bunun sonucunda programı analiz etmiş oluruz.ve Analiz sonucunda program bileşenleri artık beynimize daha kolay çözümler sunar.Programcılık 'da algoritma kavramı en tecrübe edilmesi gereken bir mantıktır.Algoritma dersimizi ayrı bir konu altında paylaşacağım.Ancak Analiz ve Algoritma konusu bilinmesi gereken en mühim olaylardır.Bu sayede çözüme ulaşabiliriz.Belki şu an yeni bir programcısınız ama ileride sadece kodların ne iş yaptığı değil.Nerede hangi kodun kaç satırlık ,nereye, veya ne iş göreceği problemleri cereyan edecek.Analiz ve Algoritma hayat bulması gereken en önemli kavramlar olacaktır.Sadece Bilgisayar Dünyasında değil,Analiz reel Hayatta da işlenmesi gereken bir mantık senaryosudur.--

13 Mayıs 2016 Cuma

| JAVA GELİŞMİŞ FOR DÖNGÜSÜ |

Merhaba,

Java getirdiği gelişmiş for döngüsü ile bize çok kolaylık sağlar.Bazı dillerde görmüş olduğunuz foreach döngüsü bununla eşdeğerdir.Diziler ve koleksiyonlardaki veriler arasında dönmeyi sağlayan bu döngü,bir dizi veya koleksiyonda görüntelemek istediğiniz her nesne için tek bir komut ihraç eder.


Öncelikle bir dizi tanımladık.
Dizimiz 
String[] degerler = ("Ahmet","Suleyman","Kadir","Kerem","Necmi");
Problem : Tüm nesneleri görüntelemek istiyoruz 
Bu işlemi for döngüsüyle ilede basit bi şekilde yapabilirsiniz.
Ancak gelişmiş for döngüsü zaten bunun için yapılmıştır

for(String hepsi : degerler)
Öncelikle hepsi değişkenimizin başına veri tipimizi zorunlu bi şekilde ekliyoruz.Çünkü bu değişkenimizin içine tüm değerler atanacaktır.String olduğunu belirttik çünkü dizimizin veri tipi String
degerler
dizimizden alacağımızı belirtiyoruz.ve süslü parentezleri koyup yapıcağımız işlem için,(Biz ekrana çıktı verdik örnek te) döngünün içinde artık hepsi değişkenimiz bütün dizideki değerleri döndürecektir..

| YONTEMLER ILE TEK SATIRDA FAZLA PARAMETRE |

Merhaba,

Javada bir fonksiyona parametre göndermek için ,veya dizi göndermek için,farklı sayıda parametreler içeren bir yöntem yazarız.Yani göndereceğimiz farklı değişken kadar yöntemde de o kadar adet parametre oluşur.Ancak JAVA 5 ile gelen bu özellik Tek bir satırda fazla argüman göndermenize yani parametre göndermenize olanak tanıyor..

JAVA ile gelen bu özellikde yönteme eklemeniz gereken tek şey parametre tipini belirledik ten sonra 
3 adet nokta koymanız. örnekler ile gösterelim;



Görmüş olduğunuz yöntemde parametre ( int... sayilar ) tek bir kere olmasına rağmen dışardan fazla sayıda değer alacak.Görelim;


İşte görmüş olduğunuz gibi yönteme 3 kere farklı parametreler gönderdik.Bunlar sırasıyla;1 eleman , 3 eleman , yine 3 eleman içeren komutlar.\toplamDeger\ fonksiyonundaki sayilar parametresi fonksiyon içinde bir dizi olarak değerlendiriliyor. ve gelişmiş for döngüsü ile degerler değişkenine dizi aktarılıyor.toplam değişkeni ile gelen parametredeki değerler toplanmış oluyor.ve ekrana çıktı olarak basılıyor terminal 'de alacağınız sonuçlar şu şekilde olacaktır;


| JAVA DIZILER (ARRAY) SINIFI |

Merhaba,

Tüm programlama dillerinde çok önemli yer tutan Dizileri, JAVA 'da inceleyeceğiz..
Dikkatli kavramanızı öneririm görece açısından biraz sıkıntılı ama işlev açısından projeye kaçınılmaz bir kalite sağlar..

* Diziler referans tipli sınıflardır..

Yani diziler sınıf tipindedir.
Bir dizi aynı tipte birden çok değişken depolayabilen bir veri depo sınıfıdır.

Java içinde örneklendirecek olursak bir dizi şu şekilde tasarlanır;








int[] dizi1; 
int[] dizi2 = new int[10]

Eğer bir sınıfın başlangıç boyutunu belirtmeyecekseniz,üstteki satırı yazarsınız.
Eğer belirtecekseniz alt satırdaki [10] sayısı dizinin boyutunu belirtir

Dizi tanımlaması bu şekildedir.

dizi1 = dizinin adıdır

int[] = dizinin veri tipini belirtir bu string vs. olabilir

Dizideki bir elemana değer atamak istersek
Örnek. 4.elemanı için "dizi1[3] = 25"cümlesini kullanırız.Dizilerde ilk elemanın indis değeri yani [parantez içinde kalan sıra numarası] daima "0" 'dan başlar.Bu sebeple 1. elemana ulaşmak için "dizi1[1]" cümlesi geçersiz sayılır.
Doğru kod yapısı şudur;"dizi1[0]"

IPUCU :
(Dizi elemanlarının toplam değerini yani kaç boyutlu olduğunu bulmak için "dizi1.length" ifadesi kullanılır..)

Bir diziye aynı satırda birden fazla değer atamak için;

                int[] dizi1 = {1,6,9,2};

ifade kullanılır