Programlama Temelleri Temel Kavramlar KAVRAMLAR Programlama yaadmz gerek












































































- Slides: 76

Programlama Temelleri Temel Kavramlar

KAVRAMLAR Programlama, yaşadığımız gerçek dünyadaki problemlere ilişkin çözümlerin bilgisayarın anlayabileceği bir biçime dönüştürülmesi / ifade edilmesidir. Bunu yapabilmek için, kodlamaya geçilmeden önce tasarım aşamasında, problemi oluşturan varlıkların bilgisayarda ifade edilebilecek şekilde modellerinin oluşturulması gerekmektedir. Programcı, çözülmesi gereken problemlerle ilgili kavram ve varlıkları, kullandıkları programlama dili ile bilgisayarda ifade etmeye çalışırlar gerçek dünyada insanların yaptığı gibi…

KAVRAMLAR Program, değişik ve çeşitli görevler yapma amaçlı tasarlanmış elektronik araçların, birbirleriyle haberleşebilmesini ve uyumunu sağlayarak, görevlerini ya da kullanılabilirliklerini geliştirmeye yarayan makine komutlarıdır. Bir başka deyişle var olan bir problemi çözmek amacıyla bilgisayar dili kullanılarak oluşturulmuş anlamlı ifadeler bütünüdür. Giriş değerlerini kullanarak istenilen çıkış değerlerinin elde edilebilmesi için bilgisayara iletilen komutlar dizisidir.

KAVRAMLAR Veri girişi: Program, kullanıcıların veri girmesi ile başlar. Girilen veriler daha sonra işlenmek üzere hafızada saklanır. Program: Veriler, programın yazılma şekline göre bir dizi işlemden geçirilir. Sonuç: İşlenen veriler kullanıcıya aktarılır. Bilgisayar insanın komutlarla verdiği emirleri yerine getirir. Yani kullanıcı bilgisayara ne öğretirse onun karşılığını alır. Programdaki çözüm yolu yanlış ise bilgisayarın bulacağı sonuç ta yanlış olur.

Program Türleri Sistem programları Her program, bir işletim sistemi üzerinde çalışır. İşletim sistemi, diğer programların çalışması için gerekli olan kaynakları ve ortamı sağlar. Sürücüler (Driver) İşletim sistemi ile donanım aygıtları arasında iletişim sağlayan programlardır. Klavye ile yazılan yazıların algılanması için, klavyenin sürücü programı kullanılır. Uygulamalar İşletim sistemi üzerinde çalışan, kullanıcıların ihtiyaç duyduğu işlevleri sağlayan programlardır.

KAVRAMLAR Programlama dili, program tasarımında sorulardan biri tasarlanan çözümlemeye uygun programlama dilini seçmektir. ÖZET : Program, bilgisayara ne yapması gerektiğini söyleyen bir grup komuta (kod topluluğuna) verilen isimdir. Bu komutları veren kişiye programcı , komutların bütününe ise programlama dili denir.

Programlama Dilleri… Bir problemin çözümünde birden çok yol vardır. En uygun olanı seçmek, programcının yetenek ve tecrübesine bağlıdır. Kullanılacak programlama dili, çözülecek problemin niteliğine bağlı olarak seçilebilir. Hangi dilin seçileceğini belirleyen etkenlerin başında, verilerin işlenmesinde zaman tasarrufu yada komut sayısınırlamak olabilir Bir programlama dilinin belirli amaçlara hizmet eden bir çok deyimi vardır ve bu deyimler özel kodlarla ifade edilir. Programlama dillerinin ortak özellikleri vardır.

Programlama Dilleri… Programlama dillerinin tümü simgesel’dir. Yani, bilgisayarın anlayacağı işlemleri insanların da anlayabileceği simgelerle ifade ederler. Örneğin program içinde yer alan write/print komutunun, yazma işlemini yerine getiren bir komut olduğu hemen anlaşılır. Bu simgeler, özel programlar yardımıyla bilgisayarın anlayabileceği bir biçime çevrilirler. Bu programlara derleyici adı verilir Programın yazımı, kaynak programın geçerli makine diline derleyici aracılığı ile çevrilmesi için bilgisayar ortamında bir yazım/editör programı yardımı ile, gerçekleştirilir. Programım yazımında anlaşılabilirlik ve okunabilirlik önem taşır.

Programlama Dilleri… Program yazma, ilk kez yazma veya var olan programı geliştirme şeklinde olabilir. Programlar çoğunlukla ilk kez yazıldığından sonra üzerinde düzeltme ve geliştirmeler yapma gerektirir. Bu nedenle, diğer taraftan programlar bir kez kullanılmak için de hazırlanmaz bir süre sonra programa bakıldığında anlaşılabilir olma önemli olur. Açıklama satırları eklemek, program işlem kümelerini, yordamları, yapıları izlenebilir yapıda yazmak sonrada izlenebilmeye kolaylık sağlar. • Değişkenlere, yordamlara işlev ve görevini anımsatacak isimler vermek, karar işlemlerini anlaşılır açıklıkta yazmak, • okunabilirliğine yardım edecektir.

Kavramlar Derleyici (Compiler) : Programlama dili ile yazılmış bir programı, makine dili ile yazılmış amaç veya hedef programa çevirirler. Yüksek seviyeli bir dil ile yazılanlarda kurallarına ters düşen hata kontrollerini oluşturduktan sonra komut ve bilgilerin makine tarafından tanınarak işlemlerin yapılmasını sonuçların tekrar yüksek seviyeli program diline anlaşılır duruma çevrilmesini sağlarlar. Fortran, C, C ++, C#, Pascal, Delphi gibi diller derleyici kullanırlar. Elektronik ortamda disk kütüğü yapısında hazırlanan kaynak programın işleyebilir makine diline dönüştürülmesi, kullanılan üst düzey dil için hazırlanmış dil derleyicisi yazılımları ile gerçekleştirilir. Örneğin, C ve C++ destekleyen Turbo C++, Borland C++, MS Visual C++ derleyicileri yaygın kullanılan dil derleyicilerindendir.

Kavramlar Bu dönüştürme süreci bir adımda gerçekleşmez. Örneğin C Derleyicisi derleme (compile), bağlama (linker), yükleme (loader) işlemleri sonunda işleyebilir amaç programa (makine kodu) dönüşür. Yorumlayıcı (Interpreter) : Program kodlarının ilk satırından son satırına kadar satır belirtilmiş komut ve işlemleri inceleyerek kaynak programın hatalarının düzeltilmesine imkân veren ve çalıştıran programdır. Herhangi bir komut satırının çevrilmesinde ya da çalıştırılmasında bir hatayla karşılaştığında çalışmayı durdurur ve hatalı satırı programcıya bildirir. PHP, Perl, Lisp gibi diller yorumlayıcı kullanırlar.

Derleyici ve Yorumlayıcı Farkı Basitçe, bir kaynak kodu hedef koda çevirdikten sonra çalıştıran ve dolayısıyla koddaki hataları yakalama işlemini ve kodun iyileştirilmesini daha kod çalıştırmadan yapan çeviricilere derleyici, kodu satır veya bloklar halinde çalıştırıp sırası gelmeyen satırları hiç çalıştırmayan bu satırlardaki hataları hiçbir zaman göremeyen ve kodun bütününe ait iyileştirmeleri yapamayan çeviricilere de yorumlayıcı adı verilmektedir

Derleyici ve Yorumlayıcı Farkı Yorumlayıcıda kodun okunması ve çevrilmesi programın çalışması sırasında yapıldığından hız düşüktür. Yorumlayıcı yalnızca karşılaştığı ilk hatayı rapor edebilir. Bu hata düzeltildiğinde sonraki çalışmada da program ancak bir sonraki hataya kadar ilerleyebilir. Oysa derleyici kaynak kodundaki bütün hataları bulabilir. Buna karşılık hata ayıklama işlemi yorumlayıcılarla daha kolaydır. Ayrıca derleyicilerle gelen bazı sınırlamaların kalkması nedeniyle daha esnek bir çalışma ortamı sağlanır. Son yıllarda iki yöntemin üstün yanlarını birleştiren karma diler (Java ve Python gibi) öne çıkmaya başlamışlardır.

Çalışma Diyagramları: «Derleyici»

Derleyiciler / Yorumlayıcılar

Kavramlar Kaynak Program (Source Program): Bir programlama dili ile yazılmış programlardır. Kaynak program dosyasının uzantısı örneğin Visual Basic dilinde ise. bas veya. frm , C dilinde yazıldı ise. c , Java dilinde yazıldı ise. java, Assembly dilinde yazıldı ise. asm dir. Amaç Program (Object Program): Bir programlama dilinde yazılmış kaynak programın derlenmesi ile elde edilen program. Amaç program makine diline dönüştürülmüş ve çalıştırılmaya hazır programdır. Programlama dilleri, kaynak kodun makine koduna (amaç programa) çevrilmesi ve çalıştırılması işleminde derleyici, yorumlayıcı veya her ikisini birlikte kullanabilir.

Çalışma Diyagramları: «Yorumlayıcı»

Yazılım Geliştirme Aşamaları

Yazılım Geliştirme Aşamaları

Yazılım Geliştirme Aşamaları /Analiz Bir sistemin bileşenlerini (olaylar, kurallar, insanlar, makineler), bileşenlerin birbiri ile ilişkilerini, amaçlarını, önceliklerini belirleyerek sorunların tanımlanması amacıya yapılan çalışmalardır. Çözülecek soru tam olarak anlaşılmalıdır. Yanlış anlaşılmış bir sorunun çözümü yanlış olacak ve istenileni vermeyecektir. Analizde yapılacak ufak hatalar daha sonraki adımların yeni baştan yapılmasını gerektirebilir. İstenenler iyi belirlenmeli ve bunların var olan bilgiler ile ilişkileri öğrenilmelidir. Yapılacak işlemler belirlenir. Mümkün ise örnek veriler ile elde edilen sonuçlar değerlendirilmelidir.

Yazılım Geliştirme Aşamaları /Analiz Soru tanımını tam olarak yaptıktan sonra, çözüm için yol aramak gerekir. Genellikle bir sorunun birden fazla çözüm yolu olabilir. Bunlardan en uygunu seçilmeye çalışılır. Soru ne kadar karışık olursa olsun, alt birimlere bölünür. Her birimin çözümü ayrı, ayrı yapılır. Bu yapılırken birimler arası ilişki sürekli olarak korunur. Algoritma bir sorunun çözümü için izlenecek yolun tanımıdır. Kısaca algoritma mevcut bilgilerden istenilenlere erişme yöntemidir. (ileride detaylandırılacak)

Yazılım Geliştirme Aşamaları /Analiz Sonuçların dış ortama, dolayısıyla insana aktarımı düzgün bir biçimde yapılmalıdır. Programcı program çıktısı olarak almak istediği dökümün biçimini tasarlar. Bir döküm biçimi tasarlanırken anlaşılır ve kullanılabilir olmasına özen gösterilmelidir. Genellikle programa, çözdüğü soruna ilişkin bazı verilerin dışarıdan verilmesi gerekir. Örneğin bir denklem takımının kökleri bulunacaksa, ilgili katsayıların programa verilmesi gibi.

Yazılım Geliştirme Aşamaları /Analiz Akış Şemasını Çizme: Akış şeması belirli bir işin yapılabilmesi için, basit işlemlerle şema halinde gösterilmesidir. Kısaca algoritmanın şemalarla gösterilmesidir. Algortima geliştirildikten sonra, daha iyi anlaşılabilir olması ve programlama dillerine aktarımı daha kolay olması nedeniyle, akış şeması haline getirilir. Böylece sorunun çözüm basamakları, birbirleri ile ilişkileri ve bilgi akışı daha kolay görülebilir ve yanlışlıklar düzeltilebilir.

Yazılım Geliştirme Aşamaları / Tasarım

Yazılım Geliştirme Aşamaları / Tasarım Yapılan çözümlemeye göre Sistemin bilgi akışı, girdiler, çıktılar şematik olarak ortaya konur. Algoritmalar geliştirilir. Akış şemaları, karar tabloları vb. şemalar üretilir. Doğruluğunun mantıksal sınaması yapılır.

Yazılım Geliştirme Aşamaları

Yazılım Geliştirme Aşamaları

Yazılım Geliştirme Aşamaları / Test

Yazılım Geliştirme Aşamaları Bakım: Programın, problemin kendisindeki veya çözüm yolundaki değişiklikler nedeni ile işlevselliğini devam ettirebilmesi için veya çözüm için kullandığı teknolojilerin yenilenmesi için gerekli düzenlemeleri (güncelleme) içeren bir konudur.

Algoritmalar ve Programlama Algoritma

Algoritma Bir sorunu / problemi çözmek veya belirli bir amaca ulaşmak için gerekli olan sıralı mantıksal adımların tümüne algoritma denir. Algoritma bir sorunun çözümü için izlenecek yolun tanımıdır. Kısaca algoritma mevcut bilgilerden istenilenlere erişme yöntemidir. Programlamanın en önemli kısmı problemin çözümü için algoritma hazırlayabilmek / geliştirmektir. Hazırlanan algoritmanın bir programlama dili ile kodlanması işin basit kısmıdır. Kullanılan dilin basic / pascal / c ya da başka bir programlama dili olması bir şeyi değiştirmez. Yani burada Bu yüzden kullanılan programlama dilinin eski yada yeni bir programlama dili olması hiç önemli değildir.

Algoritmadan Beklentiler Etkinlik: Bilgisayarlar düşünemez. Bu yüzden algoritmanın her adımı anlaşılır, basit ve kesin bir biçimde ifade edilmiş olmalıdır. Yorum gerektirmemeli ve belirsiz ifadelere sahip olmamalıdır. Gereksiz tekrarlarda bulunmayan diğer algoritmalar içerisinde de kullanılabilir olmalıdır. Sonluluk: Her algoritmanın bir başlangıç noktası, belirli işlem adımı ve bir bitiş noktası içermelidir. Sonsuz döngüye girmemelidir. Kesinlik: İşlem sonucu kesin olmalı, aynı veri için her yeni çalıştırmada aynı sonucu üretmelidir. Giriş/Çıkış: Algoritma giriş (üzerinde işlem yapılacak değerler) ve çıkış (yapılan işlemler neticesinde üretilen sonuç değerler) değerlerine sahip olmalıdır. Başarım/Performans: Amaç donanım gereksinimi (bellek kullanımı gibi), çalışma süresi gibi performans kriterlerini dikkate alarak yüksek başarımlı programlar yazmak olmalıdır.

Algoritma İfade Şekilleri 1. Algoritmanın metin olarak yazılması Çözülecek problem, adım metin olarak yazılır. Her satıra numara verilir. ‘Başla’ ile başlayıp ‘son’ ile bitirilir

Algoritma İfade Şekilleri • Problem: Klavyeden girilen sayının karesini hesaplayarak ekrana yazdıran programın algoritmasını yazınız? 1) 2) 3) 4) 5) Başla Sayıyı (A) gir Sayının karesini hesapla (Kare = A*A işlemini yap) Sonucu (Kare) yaz Dur

Algoritma İfade Şekilleri • Pseudo Code (Kaba Kod) – Sözde programlar, doğrudan konuşma dilinde ve programlama mantığı altında, eğer, iken gibi koşul kelimeleri ve > = < gibi ifadeler ile beraber yazılır. İyi bir biçimde yazılmış, sözde koddan, programlama diline kolaylıkla geçilebilir.

Algoritma İfade Şekilleri • Problem: Verilen bir sıcaklık derecesine göre suyun durumunu belirten bir sözde program(pseudo kod) yazınız. • İstenilen programın Pseudo Kodu: 1. Program açıklama mesajı yaz. 2. Kullanıcın sıcaklığı girmesi için bir uyarı mesajı yaz. 3. Girilen Sıcaklığı Oku. 5. Eğer Sıcaklık < 0 ise Durum=“Buz” 6. Eğer Sıcaklık>= 100 ise Durum=“Buhar” 7. Değilse Durum =“Su” 8. Sonucu Yaz.

Akış Diyagramları (Şemaları) • Algoritmanın, görsel olarak simge ya da sembollerle ifade edilmiş şekline “akış şemaları” veya FLOWCHART adı verilir. Akış şemalarının algoritmadan farkı, adımların simgeler şeklinde kutular içine yazılmış olması ve adımlar arasındaki ilişkilerin ve yönünün oklar ile gösterilmesidir.

Akış Diyagramları (Şemaları) • En basit şekliyle dikdörtgen kutulardan ve oklardan oluşur. Akış şeması sembolleri ANSI (American National Standards Institute) standardı olarak belirlenmiş ve tüm dünyada kullanılmaktadır.

Akış Diyagramları (Şemaları)

Akış Diyagramları (Şemaları)

Akış Diyagramları (Şemaları)

Akış Diyagramları (Şemaları)

Akış Diyagramları (Şemaları)

Algoritmalarda Kullanılan Operatörler

Algoritmalarda Kullanılan Terimler 1) 2) 3) 4) 5) 6) 7) 8) Tanımlayıcı Değişken Sabit Aktarma Sayaç Döngü Ardışık Toplama Ardışık Çarpma 1) Tanımlayıcı – Programcı tarafından oluşturulur. – Programdaki değişkenleri, sabitleri, kayıt alanlarını, özel bilgi tiplerini vb. adlandırmak için kullanılan kelimeler – Tanımlayıcılar, yerini tuttukları ifadelere çağrışım yapacak şekilde seçilmelidir. – İngiliz alfabesindeki A-Z veya a-z arası 26 harften – 0 -9 arası rakamlar kullanılabilir – Sembollerden sadece alt çizgi (_) kullanılabilir. – Tanımlayıcı isimleri harfle veya alt çizgiyle başlayabilir. – Tanımlayıcı ismi, rakamla başlayamaz veya sadece rakamlardan oluşamaz.

Algoritmalarda Kullanılan Terimler 2 -)Değişken • Programın her çalıştırılmasında, farklı değerler alan bilgi/bellek alanlarıdır. • Değişken isimlendirilmeleri, yukarıda sayılan tanımlayıcı kurallarına uygun biçimde yapılmalıdır. Örneğin ; • • • Bir ismin aktarıldığı değişken ; ad Bir isim ve soy ismin aktarıldığı değişken; adsoyad Ev telefon no sunun aktarıldığı değişken; evtel Ev adresinin aktarıldığı değişken; evadres İş adresinin aktarıldığı değişken; isadres 3 -) Sabit Programdaki değeri değişmeyen ifadelere “sabit” denir. “İsimlendirme kuralları”na uygun olarak oluşturulan sabitlere, sayısal veriler doğrudan; alfa sayısal veriler ise tek/çift tırnak içinde aktarılır.

Algoritmalarda Kullanılan Terimler

Algoritmalarda Kullanılan Terimler 4 -) Aktarma

Algoritmalarda Kullanılan Terimler 5 -) Sayaç

Algoritmalarda Kullanılan Terimler

Algoritmalarda Kullanılan Terimler 6 -) Döngü Bir çok programda bazı işlemler, belirli ardışık değerlerle gerçekleştirilmekte veya belirli sayıda yaptırılmaktadır. Programlardaki belirli işlem bloklarını, verilen sayıda gerçekleştiren işlem akış çevrimlerine “döngü” denir. Örneğin 1 ile 1000 arasındaki tek sayıların toplamını hesaplayan programda T=1+3+5 …. yerine 1 ile 1000 arasında ikişer artan bir döngü açılır ve döngü değişkeni ardışık toplanır.

Algoritmalarda Kullanılan Terimler

Algoritmalarda Kullanılan Terimler 7 -) Ardışık Toplama Programlarda, aynı değerin üzerine yeni değerler eklemek için kullanılır. Toplam değişkeni=Toplam değişkeni + Sayı Örnek: Klavyeden girilen 5 sayısının ortalamasını bulan programın algoritması. 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Başla T=0 S=0 Eğer S>4 ise git 9 S=S+1 Sayıyı (A) gir T=T+A Git 4 Ortalama=T/5 Yaz Ortalama Dur

Algoritmalarda Kullanılan Terimler 8 -) Ardışık Çarpma Ardışık veya ardışıl çarpma işleminde; aynı değer, yeni değerlerle çarpılarak eskisinin üzerine aktarılmaktadır. Çarpım değişkeni=Çarpım değişkeni * Sayı Örnek: Klavyeden girilen N sayısının faktöriyelini hesaplayan programın algoritmasını yazınız. 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Başla N sayısını gir Fak=1 S=0 Eğer S>N-1 ise git 9 S=S+1 Fak=Fak*S Git 5 Yaz Fak Dur

Akış Diyagramlarında Kullanılan Temel Şekiller

Akış Diyagramlarında Kullanılan Temel Şekiller

Akış Diyagramlarında Kullanılan Temel Şekiller

Akış Diyagramlarında Kullanılan Temel Şekiller

Akış Diyagramlarında Kullanılan Temel Şekiller Döngü Yapısı Bu yapı kullanılırken, döngü sayacı, koşul bilgisi ve sayacın artım bilgisi verilmelidir. Döngü sayacı kullanılmıyorsa sadece döngüye devam edebilmek için gerekli olan koşul bilgisi verilmelidir. Genel olarak çoğu programlama dilinin döngü deyimleri ; • While • Do-while • For gibi yapılar üzerine kurulmuştur. Farklı dillerde bu yapılara farklı alternatifler olsa da döngülerin çalışma mantığı genel olarak benzerdir.

Akış Diyagramlarında Kullanılan Temel Şekiller

Akış Diyagramlarında Kullanılan Temel Şekiller

Akış Diyagramlarında Kullanılan Temel Şekiller

Akış Diyagramlarında Kullanılan Temel Şekiller

Akış Diyagramlarında Kullanılan Temel Şekiller

Matematiksel işlemler

Matematiksel işlemler

Matematiksel işlemler

Matematiksel işlemler

Karşılaştırma

Karşılaştırma

Mantıksal İşlemler

Mantıksal İşlemler

Mantıksal İşlemler

Mantıksal İşlemler

Mantıksal İşlemler

Mantıksal İşlemler
Programlamayla ilgili temel kavramlar
Programlama temelleri nedir
Stikll
Igor gerek
Mukavemet temel kavramlar
Beslenme ile ilgili temel kavramlar
Gelişimle ilgili temel kavramlar
Termodinamiğin temel kavramları
Temel kavramlar özel öğrenci
Pdr temel kavramlar
Beslenme ile ilgili temel kavramlar
Program geliştirmede temel kavramlar
Program geliştirmenin felsefi temelleri
Sosyal hizmet uzmanının becerileri
Bilişim teknolojileri temelleri
Engelsiz hayat teknolojileri 7. sınıf maket
Eğitimin seçme ve yöneltme işlevi
Devops temelleri
Rehberliğin felsefi temelleri
Hastalıkların biyokimyasal temelleri
Eğitimin psikolojik temelleri soruları
Eğitimin bilimsel temelleri test soruları
Bilgisayar programcılığı ağ temelleri ders notları
Program geliştirmenin tarihsel temelleri
Eğitimin tarihi temelleri
Eğitimin politik temelleri
Eğitimin hukuksal temelleri
Kimyanın teorik temelleri var mıdır
Start telaşı
Okul yaşamın kendisidir
Kuramsal temel ne demek
Terbiyeyi bedeniye
Eğitimin ekonomik temelleri
Kabenin güneydoğu köşesinde bulunan siyah taş
Aksiyom ne demek
Microsoft word sunum hazırlama
Lipofilik
Anahtar kavramlar nedir
Devlet malını koruma ve tasarruf tedbirleri
Panteizm nedir
Hristiyanlığa ait kavramlar
Kolektif ve distribütif kavramlar örnek
Kalite ile ilgili kavramlar
Dts modelinin içerdiği kavramlar
Kaderle ilişkilendirilen kavramlar
Soyutlama örnekleri mimarlık
Bilgisayar parçalarını tanıyalım
Doğrusal programlama modeli cj
Yordamsal programlama nedir
Sakai programlama dili
Excelde vba editöründe hazırlanmış kod arşivi
Python paralel programlama
Kabuk programlama
Ccs programlama
Arduino programlama dili
Fpga eğitimi
Slidetodoc.com
Yöneylem
Siemens cnc freze programlama
Sarmal programlama
Delphi programlama dili
Sklerenkima lifleri
Ortogonallik
Sarmal yaklaşım kpss
Robotk
Android studio
Dinamik programlama
Programlama dillerinin sınıflandırılması
Scheme programlama dili
Fortran programlama dili
Yunus programlama dili
Matematiksel programlama
Sarmal eğitim nedir
10.sınıf ntp
Alma tepkide bulunma
Harezmi
Eclipse android programlama