Bu makalenin farklı dillerde bulunduğu adresler: English Castellano Deutsch Francais Nederlands Russian Turkce Arabic |
tarafından Katja Socher Yazar hakkında: Katja LinuxFocus'un Almanya editörüdür. Kendisi bir kaç sene önce Gimp ile tanıştığında Linux kullanıcısı oldu. Kendi ev sayfası bu adreste : bulunuyor . İçerik: |
Özet:
Bu yazı Richard Stones ve Neil Matthew tarafından yazılan ve Wrox Yayınları tarafından basılan
Beginning Linux Programming - Second Edition
kitabının incelenmesidir.
Kitabı alırken yalnızca 2 Kg' lik bir kağıt yığını değil aslında çok geniş bir yelpazede bilgi içeriği olan bir kitap satın almış oluyorsunuz. Yeni başlayanlar için yalnızca bir kitap değil aynı zamanda Linux Programlamayla ilgili çok değişik konulardaki doygun içeriğiyle okuyucunun bu anlamda kültürünü artıran bir kaynak. Her bölüm derin bir içerik sunuyor ve bu sayede her konu başığı hakkında bilgi sahibi olabilir ve kendi çözümlerinizi geliştirebilirsiniz. Elbette bir konuyu okumakla o konunun uzmanı olamazsınız ancak yeterli bir bilgi düzeyiniz olur ve diğer kaynaklardan da faydalanarak hızla değişen konularla ilgili en güncel bilgilerini edinebilirisiniz.
Yazarlar bize en iyiyi yakalamada en etkili şekilde özel araçları nasıl kullanabileceğimizi anlatıyorlar. Gereksinimiz olan konularla ilgili mümkün olabilecek herşeyi yapmanıza yardım edecek araçlar ve bunların amaçlarınız doğrultusunda nasıl kullanacağız ayrıntılarıyla anlatılıyor.
Kitapta Linux altında bir programcı olarak pek çok konuyla ilgili iyi bir bakış açısı kazanıyorsunuz ve gerçekten uzman olabileceğiniz çalışmalara girebilecek düzeyde çalışmalar yapıyorsunuz.
Programlamaya sadece başlangıç düzeyinde bile olsanız programlama problemleriyle ilgili farklı pek çok çözüm sunuluyor ve bu çözümlerin nasıl uyarlandığı anlatılıyor.
Çok uzman iki programcının bilgilerini diğer programcılarla paylaştığı açık bir kitap. Gerçekten epeyce detaylı ve titiz bir şekilde pek çok konu üzerinde duruluyor. Verilen örnekleri ve uygulamaları kolaylıkla anlayabiliyor ve uygulayabiliyorsunuz. Pek çok örneği bulabiliyor ve bunlar üzerinde bir iki küçük değişiklikle kendiniz de deneyebiliyorsunuz. Bu örnekler gerçekten benim konuları anlamamda ve açıklamaları incelememde çok faydalı oldu.
Her konuyla ilgili pek çok örnek ve uygulama yazarların geliştirdiği CD uygulaması ile veriliyor. Detaylı bir şekilde açıklanan tüm bu uygulamaları gerçekten takdir ettim.
Kitap Linux'un ne olduğu ve felsefesi üzerine başlıyor ve ardından C Programla dilinin Linux altında nasıl kullanıldığından kabuk programladan önce bahsediliyor. Bazı genel kabuk bilgileri verildikten sonra (örneğin adres değişiklikleri ve borulamalar) kitap bize kabuk programlama dilini her yönüyle anlatıyor , örneğin değişkenler , koşullu yapılar, program denetimi, listeler, fonksiyonlar ve "dokumanlar" açıklanıyor.
3. bölüm donanım aygıtları ve heryerdeki dosyaların Linux açısından genel anlamını açıklıyor. Düşük sistem çağrılarıyla başlıyor ve yazarlar Standart I/O kitaplıklarını açıklamaya bu bölümde başlıyorlar.
Bölüm 4 Linux bileşenlerine bakıyor. Yazarlar örneğin komut satırı bileşenlerinden benimsenmiş değerlerini değiştirebileceğiniz programlardan bahsediliyor. Üstelik kitaplık fonksiyonları kullanarak nasıl program yapılacağı, tarih ve zaman değerleriyle kısaca kullanıcı ve bilgisayarın kendisiyle ilgili bilgilerin nasıl getirileceği anlatılıyor.
Bir sonraki bölüm terminaller hakkında ve terminal denetiminin nasıl yapılacağı ile ilgili konular farklı açılardan ele alınıyor. Terminallere bu girişten sonra pencere terminaller üzerine görüntü çıkışı sağlayan curses kitaplıklarını öğreniyoruz.
7. bölüm veri yönetimi üzerine, dinamik veri yönetiminden ,dosya paylaşım kısıtlamaları ve dosya kısıtlamalarından ve son bahsediliyor ve son olarak dbm veritabanına giriş yapılıyor.
8. bölümde yönetilebilir programların dağıtımı ve geliştirilmesine giriş yapan araçlar anlatılıyor. Önceden RCV ve CVS kullanarak açıklanan çoklu dosyalarda kaynak kod denetimi ilk olarak make ve makefile ile yönetiliyor.Son olarak yama,tar ve gzip, dağıtılan ve güncellenen programlar için açıklanıyor.
9. bölüm debugging ile ilgili. Genel teknikler anlatıldıktan sonra GNU debugger'ı gdb'ye giriş yapılıyor. cflow ve lclint gibi genel analiz araçları da açıklanıyor. Son olarak Elektrik Çit ve Denetleyici ele alınıyor, bu iki uygulamayla bellek sızıntılarının önüne geçiliyor.
10. bölümde neredeyse Linux bilgisayar sisteminde gerçekleşen her türlü işlemin nasıl hesaplandığı ve sinyalizasyonu açıklanıyor. İşlem yapısı ile başlıyor ve çatallı sistem çağrıları ile nasıl yeni işlemlerin nasıl oluşturulacağı açıklanıyor. Faha sonra bir kaç örnekle sinyal için program arayüzlerine giriliyor.
11. bölüm Posix Thread'ları ile ilgili. Farklı işlemler tarafından başlatılıyor ve sonra sessiz arkataban işlemler ve semaforlar karmaşık çok işlemli programlara yazma gereği duyuyorlar.
Bir sonraki bölüm arka tabandaki iletişim işlemleriyle ilgili. İlk borulamalar açıklandı. Normal isimsiz borulamalar, boruların isimleri (FIFO) ve verinin gerçel çalışmayan programlardan nasıl geçeceği kararları veriliyor.
Semaforlardan, paylaşılmış bellek ve messaj sıraları tıkanır. Semaforlar bundan kurtulmaya gereksinim duyar ve iki işlem önemli olan bölümlere erişir ve eğer gerekliyse paylaşılan ve veri geçişleri çoklu hesaplama ile yapılır. Mesaj sıraları iki işlem arasındaki veri geçişini kolay ve etkin bir biçimde yapmasını sağlar.
Son olarak çalışan bir ağ ortamında borular kullanan soket yapılar açıklanıyor.
15. bölüm Tcl ele alıyor, (Tool Command Language). Yazarlar örnek olarak komutlardan ve denetim yapılarından, Tcl içinde dizgi ve listelerden aynı zamanda Tcl'de giriş ve çıkışlar, çeşitli ek ve uygulamalardan bahsediyor.
X inceledendikten sonra Tk hakkında bilgi sahibi oluyoruz , Tcl için grafik arayüzü bir sonraki bölümde. Tk'nın kareler, etiketler, butonlar, kutular, gezgin çubukları, ölçeklendirebilirlik, yazılar gibi pek bileşenine giriş yapılıyor. Örnek olarak elli parça resimden oluşan bir yapboz veriliyor ve ,menülerin içeriği, diyaloglar, renk seçenekleri, fontlar, birleştirim, geometrik biçimler ,yakınlaşma ve gezinmeler açıklanıyor.
Sonra Gnome ve Gtk+ öğreneceğiz. Gnome mimarisi ve masaüstü hakkında bilgi sahibi oluyoruz ve Gtk+ kullanarak Gnome programlama yapıyoruz. Olabilirlikler Tk altındakileriden bile daha büyük. Üstelik yazarlar Gnome için bir uygulama geliştiriyor : Gnome analog saat.
Sonraki bölümde çok kısa bir şekilde Perl programlamaya giriş yapılıyor.
19. bölümde HTML temelleri öğretiliyor ve sunucular ve CGI programlamaya giriş yapılıyor. İstemcilerde gerekecek tabloların HTML içinde nasıl oluşturulacağı, verilerin sunucuda nasıl işleneceği, C ve PERL ile anlatılıyor. Ayrıca dinamik olarak istemciye geri dönüşümün nasıl olacağı da açıklanıyor.
Kitabın son konusu aygıt sürücüleri ve bu sürücülerin nasıl yazılacağı üzerine. Örneğin karakter ve blok aygıtların çekirdek kodlarında nasıl debug edileceği anlatılıyor.
Eğer sistem yöneticisi , programcı, ya da gerçek bir Linux sever iseniz bu kitabı kesinlikle beğeneceksiniz.
|
Görselyöre sayfalarının bakımı, LinuxFocus Editörleri tarafından yapılmaktadır
© Katja Socher, FDL LinuxFocus.org Burayı klikleyerek hataları rapor edebilir ya da yorumlarınızı LinuxFocus'a gönderebilirsiniz |
Çeviri bilgisi:
|
2001-04-30, generated by lfparser version 2.9