Yazan : Şadi Evren ŞEKER Sonlu otomatların özel bir halidir. Bu özel hal aşağıdaki 3 durumu içermelidir: Her durumdan (State) gidilecek koşulun tek bir durum göstermesi. Yani bir durumda başka duruma geçerken bir kelime ile sadece bir duruma gidilebilmesi Herhangi bir girdi için, tek bitiş durumunun (final state) kabul edilmesi (birden fazla bitiş durumunun aynı […]
Category: Derleyiciler
Dinamik Bağlantı Kütüphaneleri (Dynamic Link Library (.dll))
Yazan : Şadi Evren ŞEKER Microsoft tarafından windows işletim sistemi üzerinde kullanıma açılan ve çalışma sırasında bağlanmaya izin verilen kütüphane yaklaşımıdır. Basitçe Linux ortamlarındaki .o (object file (nesne dosyası)) benzetilebilir. Bu dosyaların amacı birden fazla program tarafından kullanılan kütüphaneleri içermeleri ve her programın gerekli oldukça ilgili kütüphaneden dosyayı okumasıdır. Windows öncesi microsoft işletim sisteminde (windows […]
XML (extensible markup language , genişletilebilir işaretleme dili)
yazan: Şadi Evren ŞEKER XML dilinin çıkış amacı makinelerin birbiri ile konuşurken kategorize olmuş bir dil (veya prtokol) üzerinden konuşmalarını sağlamaktır. Aslında XML’in çıktığı yıllara bakıldığında verilerin çok çeşitli şekillerde bir standarda uymaksızın saklandığını ve işlendiğini görmek mümkündür. Gelişen İnternet teknolojisinin de etkisiyle birden fazla bilgisayarın (veya programın) birbiri ile bir standart üzerinde anlaşarak konuşmaları […]
Yorumlayıcı (Interpreter)
Yazan: Şadi Evren ŞEKER Bilgisayar dünyasında yorumlayıcı terimi bir programı veya bir komutu çalıştırmaya yarayan programlar için kullanılır. Genellikle derleyiciler ile karışan ve çoğu zaman aynı görevi icra eden yorumlayıcılar da derleyiciler gibi kodu bir dilden başka bir dile çevirme işlemini yerine getirirler. Basitçe görevleri ve tipleri aşağıdaki şekilde listelenebilir: 1. Kaynak kodu çalıştırmak 2. […]
Bağlayıcı (linker)
yazan: Şadi Evren ŞEKER Bir derleyici tarafından üretilmiş olan kodları bağlayarak işletim sisteminin çalıştırabileceği tek bir kod üreten programdır. Günümüzde hızla gelişen programlama ihtiyaçları sonucunda programlamada modüler yaklaşıma geçilmiştir. Buna göre büyük bir yazılım küçük alt parçalara bölünmekte ve her parça ayrı ayrı işlenerek büyük program elde edilmektedir. Yapısal programlamanın da çıkış sebeplerinden birisi olan […]
Derleyici (compiler)
Yazan: Şadi Evren ŞEKER Basitçe bir dilde yazılmış olan kodu (kaynak kodu yada source code) istenilen başka bir kod haline dönüştüren programdır. Genelde üretilen bu kod ortama göre çalıştırılabilir kod (executable code) olarak üretilmektedir. Ancak bir derleyicinin daha doğru tanımı bir dildeki kodu başka dile çeviren program olarak yapılabilir. Örneğin C dilinde yazılan bir programı […]
alt program (subprogram, subroutine)
yazan: Şadi Evren ŞEKER bir programın herhangi bir alt parçasına verilen isimdir. Daha resmî tanımı için ilave olarak bu alt parçanın belirli bir amaca yönelik olması gerektiği söylenebilir. Yani programın herhangi bir alt parçası olmasının yanında bir amaç için bölünmüş parça’ya alt program diyebiliriz. Basitçe dilde bulunan fonksiyon (function), prosedür (procedure) , metod(method) veya herhangi […]
fonksiyon göstericileri (function pointer)
yazan: Şadi Evren ŞEKER fonksiyon göstericilerinin amacı, programlama dilinde bulunan fonksiyonları gösteren birer referans bilgisi tutmaktır. Bu sayede gösterilmekte olan fonksiyon için hafızada ayrılmış olan yere erişmek ve dolayısıyla örneğin fonksiyonun yerel değişkenlerine ulaşmak mümkündür. Aşağıda C dilinde yazılmış bir fonksiyon göstericisi kullanan kod örneği verilmiştir: #include #include void func(int); main(){ void (*fp)(int); fp = […]
otomat yönelimli programlama (automata based programming)
yazan : Şadi Evren ŞEKER otomat yönelimli programlama yaklaşımı, kaynağını otomatlar (automata)’dan alır ve sonlu durum makinaları (finite state machine, FSM) ile tasarlanan bir makinanın kodlanmasını hedefler. Basitçe C dilindeki switch komutlarının dallanmasına benzer bir şekilde her durumdan bir sonraki duruma geçiş yapan bu programlama yaklaşımında amaç durumlar arası geçişin tasarıma uygun olarak kolay bir […]
üst programlama yaklaşımı (metaprogramming)
yazan: Şadi Evren ŞEKER Üst programlama, mevcut programlama yaklaşımlarının üzerinde yeni bir yaklaşım geliştirerek programlama yapan programlama yapma anlamına gelir. Yani üst programlama ile bir program geliştirilirken, alt programlama yöntemleri harmanlanır ve kod üretilir. Bu yaklaşımın ilginç kullanımlarından birisi de kendi kendini programlayan programların üretilmesidir. Yani üretilen kod, başka bir programa ait olmayıp bizzat üreticinin […]