Ekim 19, 2021
11 11 11 ÖÖ
TCP nedir ? Aktarım Katmanı 2
Aktarım Katmanı Tcp Nedir
Yönlendirme Nedir 2 ?
Yönlendirme Nedir ?
Ağ Katmanı Nedir 2 ?
Ağ Katmanı Nedir ?
Veri Bağı Katmanı Nedir 2 ?
Android Studio Nasıl Kurulur ?
Veri Bağı Katmanı Nedir ?
Fiziksel Katman Nedir ?
Son Yazılar
TCP nedir ? Aktarım Katmanı 2 Aktarım Katmanı Tcp Nedir Yönlendirme Nedir 2 ? Yönlendirme Nedir ? Ağ Katmanı Nedir 2 ? Ağ Katmanı Nedir ? Veri Bağı Katmanı Nedir 2 ? Android Studio Nasıl Kurulur ? Veri Bağı Katmanı Nedir ? Fiziksel Katman Nedir ?
Programlama Dilleri

Programlama Dilleri Nedir ? Giriş – Konular

Paylaşım , Takip İçin

Bölüm 1 Konular


• Programlama Dilleri Kavramlarının
Çalışılma Nedenleri
• Programlama Alanları
• Dil Değelendirme Kriterleri
• Dil Tasarımındaki Etkileri
• Dil Kategorileri
• Dil Tasarımındaki Getiri-Götürü İlişkileri
• Gerçekleştirim Metotları
• Programlama Çevreleri
 

Programlama Dilleri Kavramlarının
Çalışılma Nedenleri


• Fikirleri ifade ederken yeteneğin artması
• Uygun dillerin seçimi için geliştirilmiş
arka plan
• Yeni dillerin tanınması için yeteneğin
artması
• Gerçekleştirimin anlaşılmasıyla
programlama dilini daha iyi anlama
• Hesaplamaların nasıl yapılacağı
konusunda gelişme


Programlama Alanları


• Bilimsel uygulamalar
– Büyük sayıda noktalı hesaplama yapma
– Fortran
• İş Uygulamaları
– Rapor oluşturma, ondalık sayı ve karakterlerin kullanımı
– COBOL
• Yapay Zeka
– Sayılar yerine semboller kullanılır
– LISP
• Sistem Programlama
– Sürekli kullanım nedeniyle hızlı ve verimli çalışma
gereksinimi
– C
• Web Yazılımı
– Çeşitli diller: markup (örn. XHTML), scripting (örn., PHP),
genel-amaçlı (örn. Java)

Dil Değerlendirme Kriterleri


• Okunabilirlik: Programlar kolay okunabilir
ve anlaşılır olmalı
• Yazılabilirlik: Program oluşturmak için
yazımının kolay olması
• Güvenilebilirlik: teknik şartnamelere
uygunluğu; tanımlara uyması
• Maliyet: son toplam maliyet

Değerlendirme Kriteri:

Okunabilirlik
• Bütünün basitliği
– Yönetilebilir özellikler ve yapılar
– Aynı işi yapan özelliklerin az olması
– Minumum operatör aşırıyüklenmesi
• Dikliği
– Ilkel yapıların küçük sayıdaki yollar ile bir araya getirilerek
birleştirilebilmesi
– Mümkün olan her kombinasyonun yasal olması
• Kontrol ifadeleri
– İyi bilinen kontrol ifadelerinin varlığı(örn., while ifadesi)
• Veri Tipleri ve yapıları
Veri yapılarının tanımlamak için yeterli sayıda kolaylığın olması
• Söz dizim tasarımı
– Tanımlayıcı Biçimleri: Esnek kompozisyon
– Bileşik ifadeleri oluşturmak için özel kelime ve metotların olması
– Biçim ve anlam: kendi-kendini tanıtan yapılar, anlamlı anahtar
kelimeler

Değerlendirme Kriteri: Yazılabilirlik


• Basitlik ve diklik
– Az yapıcının olması, küçük sayıda ilkellerin
olması, bunları birleştirecek kuralların az
olması
• Soyutlama desteği
– Detayları yok sayarak karmaşık yapı ve
işlemlerin tanımlanmasına ve kullanma
yeteneği
• Anlamlılık
– İşlemleri tanımlamak için uygun yolların
olması
– örneğin: for ifadesinin birçok modern dile
katılması

Değerlendirme Kriteri: Güvenilirlik


• Tip kontrolü
– Tip hataları için test etme
• İstisna(Exception) işleme
– Çalışma zamanı hatalarının kesilmesi ve düzeltici
önlemlerin alınması
• Örtüşme
– Aynı bellek bölgesini işaret eden iki Ya da daha fazla farklı
referansın olabilmesi iyi değildir.
• Okunabilirlik ve Yazılabilirlik
– Bir algoritmayı doğal bir şekilde ifade yolları bulunmayan
diller ister istemez doğal olmayan yaklaşımları
kullanacaktır, böylece de okunabilirlik azalacaktır.

Değerlendirme Kriteri: Maliyet


• Dili kullanmak için programcıların eğitimi
• Program yazma (özel uygulamalara
kapalılık)
• Programları derleme
• Programları yürütme
• Dil gerçekleştirme sistemi: özgür
derleyicilerin bulunması ve kullanılabilirliği
• Güvenilirlik: zayıf güvenilirlik yüksek
maliyetlere neden olur
• Programların bakımı

Değerlendirme Kriteri: Diğerleri


• Taşınabilirlik
– Bir programın bir gerçekleştirimden başka bir
gerçekleştirime kolaylıkla taşınabilir olması
• Genellik
– Geniş sahadaki uygulamalara uygulanabilirlik
• İyi tanımlanabilirlik
– Dilin resmi tanımının tam ve kesin olması

Dil Tasarımını Etkileyenler


• Bilgisayar Mimarisi
– Diller von Neumann mimarisi olarak bilinen bir
bilgisayar mimarisi temelinde geliştirilirler.
• Programlama Metodojileri
– Yeni yazılım geliştirme metedojileri(örn, nesneye
yönelik yazılım geliştirme) yeni programlama
paradigmaları ve eklentilerine yol açmıştır.

Bilgisayar Mimarisi Etkisi


• İyi bilinen bilgisayar mimarisi: Von Neumann
• Emirsel(Imperative) diller, von Neumann
bilgisayarlarının kullanılması nedeniyle yaygın
kullanılırlar.
– Veri ve programlar bellekte saklanır
– Bellek işlemciden ayrıdır.
– Talimatlar ve veri bellekten işlemciye gider.
– Emirsel diller için temeller
• Değişkenler bellek hücrelerini modeller.
• Atama ifadeleri veri getirme işini modeller
• İterasyon etkilidir.

Programlama Dilleri

Programlama Metodolojileri Etkisi


• 1950 ve 1960 ların başlarında : Basit uygulamalar
vardır ve verimli değildir.
• 1960 ların sonlarında: İnsanların verimlilik ve
etkinliği önemli oldu; okunabilirlik ve daha iyi
kontrol yapıları oluştu
– yapısal programlama
– yukarıdan-aşağı tasarım
• 1970 lerin sonlarında: Süreç yönelimliden veri
yönelimli hale gelmişlerdir
– veri soyutlama
• 1980 lerin ortalarında: Nesne yönelimli
programlama
– Veri soyutlama+ kalıtım+ polymorphism

Dil Kategorileri


• Emirsel(imperative)
– Merkezi özellikleri değişkenler, atama ifadeleri ve döngülerdir
– Örneğin: C, Pascal
• Fonksiyonal(Functional)
– Hesaplama yapmanın temelinde verilen parametrelere
fonksiyonları uygulamaktır
– Örnek: LISP, Scheme
• Mantık(Logic)
– Kural tabanlı (kurallar belirli sıralama olmadan verilir)
– Örnek: Prolog
• Nesneye yönelik (Object-oriented)
– Veri soyutlama, kalıtım,geç bağlama (late binding)
– Örnek: Java, C++
• İşaretleme (Markup )
– Yeni; tam bir programlama dili değillerdir fakat web
dökümanlarındaki bilginin yerleşimini belirtmede kullanılır.
– Örnek: XHTML, XML

Dil Tasarımının Getiri-Götürüsü


• Güvenilirliğe karşı çalıştırma maliyeti
– Örneğin: Java dizi içindeki elemanların tamamına
ulaşımda referansların ve indislerin kontrol edilmesini
talep eder, bu da çalıştırma maliyetini arttırır.
• Okunabilirliğe karşı yazılabilirlik
– Örneğin: APL birçok güçlü operatör yardımıyla oldukça
karmaşık hesaplamaların yapılabilmesine imkan verir
fakar okunabilirlik azalır.
• Yazılabilirliğe (esneklik)karşı güvenilirlik
– Örneğin: C++ işaretçileri güçlüdür ve oldukça esnektir
fakat kullanımı güvenilir değildir.

Gerçekleştirme Metotları


• Derleme(Compilation)
– Programlar makine diline çevrilir.
• Saf yorumlama(Pure Interpretation)
– Programlar yorumlayıcı adlanan başka bir
program tarafından yorumlanır
• Hibrit sistemler
– Derleyici ile yorumlayıcının ortak
kullanımı şeklindedir.

Bilgisayarın katmanlı görünümü


İşletim sistemi ve dil gerçekleştirimi, bir bilgisayarın makine ara yüzünün üstünde
katmanlanmıştır.

Programlama Dilleri

Derleme


• Yüksek seviye program(kaynak dil) makine koduna
(makine dili) çevrilir.
• Yavaş çeviri, hızlı çalıştırma
• Derleme süreci birkaç safhadır:
– Sözcüksel analiz(lexical analysis): kaynak programdaki
karakterler sözcüksel birimlere dönüştürülür.
– Sözdizim analizi(syntax analysis): sözcüksel birimler
ayrıştırma ağaçlarına(parse tree) dönüştürülür. Bu ağaçlar
programın söz dizim yapısını temsil eder.
– Anlamsal analiz(Semantics analysis): Ara kod oluşturulur
– Kod üretme: Makine kodu üretilir.

Programlama Dilleri

Ek derleme terminolojileri


• Modül yükleme (çalışabilir imaj{executable
image}): kullanıcı ve sistem kodlarının
birlikte kullanılması
• Bağlama ve yükleme(Linking and loading):
sistem programlarının toplanması ve
kullanıcı programına bağlanması süreci

Paralel programlama konusu için — Tıklayınız


Paylaşım , Takip İçin
0 0 votes
Article Rating

Bir Cevap Yazın

0 Yorum
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x
HAYALİNDEKİ YAZILIM
%d blogcu bunu beğendi: