Memik Yanık - Kişisel Web Sitesi Ana Sayfa | Hakkımda | Kitap Önerileri | Fotoğraflarım | RSS RSS | İletişim

Visuan Basic 9.0 Kitabım Hakkında...


Bu yazının amacı bu kitabın satışını arttırmak değildir. Bu yazının amacı olsa olsa böyle bir kitaba ihtiyacı olmayanların bu kitabı satın alıp para ve zaman kaybetmelerinin önüne geçmek olabilir. Her ne kadar bu kitap .NET 3.5 destekli Visual Basic 9.0’ı anlatmak kaygısı ile kaleme alınmış olsa bile Visual Basic 9.0 piyasaya verileli az olmadı. Bu bilgiyi şunun için yazdım: Mevcut bir işletim sisteminin veya bir programlama dilinin yeni sürümü çıktığında özellikle yurt dışında sıcağı sıcağında yeni sürümle gelen yeniliklere odaklanan kitaplar yazılıp yayınlanmaktadır. Böyle kitaplar eski sürüm hakkında bilgisi olup yeni sürümle gelen yeni özellikler hakkında hemen bilgi edinmek isteyenlere uygundur. En başta söylemeliyim ki bu kitap Visual Basic 9.0 ve .NET 3.5’la gelen yenilikleri anlatmak kaygısı ile kaleme alınan bir kitap değildir. Başka bir deyişle bu kitabın hedef okuru programcılık nedir az çok bilip Visual Basic ve nesneye yönelik programcılıkta uzman olmayı kafasına koyanlardır. Bu nedenledir ki bu kitapta konular temelden ele alınarak 1100 sayfa boyunca Visual Basic anlatıldı. Visual Basic anlatılırken .NET Framework 3.5 ile gelen Visual Basic 9.0 derleyicisi ve Visual Studio 2008 kullanıldı. Bu yazıda asıl bu kitapta Visual Basic’ı nasıl anlattım sorusuna cevap aramaya çalışacağım.



Elbette Visual Basic uygulamaları geliştirmek için kullanılan bilgisayara .NET Framework kurulup Not Defteri programı ile istenen programları yazmak mümkün olsa bile bu zahmetlidir. Bu nedenle Visual Basic veya .NET uyumlu başka bir programla diliyle uygulama geliştirmek isteyenler Visual Studio’yu veya Visual Basic için hazırlanmış Express Edition’ı kullanmayı tercih ediyorlar. Bu nedenledir ki bu kitabın başında 18 sayfa boyunca Visual Studio ile hazırlanan Visual Basic uygulamalarının temel özellikleri ve bu uygulamaların nasıl derlenip çalıştırıldığı ve nasıl debug edildiğinden kısaca söz edildi. İşte bu kitabın ilk bölümüyle ilgili olarak kitaptan alınmış bir paragraf : “Bu bölümde ileride işlenecek bazı konulara temel oluşturan birkaç ayrıntıdan söz edilmektedir. Aslında Visual Basic programlama dilinden bağımsız olarak Visual Studio hakkında yüzlerce sayfa yazılabilir. Ne var ki bu kitabın böyle amacı yoktur.” Kitabın içindekiler sayfasına bakıp “bu kitabın 18 sayfası ekran görüntüleriyle doldurulmuş” diye eleştireceklere şunu söylemek isterim: İlk bölümde Visual Studio’nun yardımıyla uygulama geliştirilirken karşılaşılan en önemli kavramlardan birisi olan Debug ve Release modlarından söz edilmektedir.

Bu kitabın Visual Basic ile Programcılığa Giriş adlı 2. bölümünde Visual Basic ve nesneye yönelik programcılık hakkında kuşbakışı bilgi verilmektedir. Bu sayede okurun Visual Basic ve nesneye yönelik programcılık hakkında temel bilgilere sahip olması hedeflendi. Bu kitabı incelemeden eleştirmeyi kafalarına koymuş olanlara şunu söylemek isterim:Memik Yanık’ın Visual Basic 9.0 kitabının 36 sayfadan meydana gelen Programcılığa Giriş adlı 2. bölümünü okuyanlar metotlarla olayları karıştırmazlar, Application sınıfının işlevinden bi haber olmazlar, formların nasıl hazırlanıp ekrana getirildiğini bilirler. Aşağıda verdiğim paragrafı kitaptan olduğu gibi buraya aldım: “Daha önce az çok kod yazmış olanlar bir sonraki bölüme şöyle bir baktıklarında bütün yazılanların bildikleri konular olduklarını sanabilirler. Sanabilirler diyorum çünkü bir sonraki bölümde Visual Basic ile program yazılırken gerek duyulan pek çok kavram hakkında teknik açıklamalar yapılmaktadır. Bu nedenle bu kitabı eline alan herkesin bir sonraki yani 2. bölümü dikkatlice okumasını öneriyorum. Tabii bu öneri kitapçıda veya herhangi bir yerde bu kitabı satın almayacakları önceden belli olup ta meraktan bu kitabı şöyle bir gözden geçirenleri veya Visual Basic hakkında yeterince bilgisi olanları kapsamıyor. Böyle bir kitaba ihtiyaçları olmayanların bir sonraki bölümde yazılanlara yabancı olmamaları normaldir. Bir sonraki bölümün gerek içerik gerekse de konuların işleyişi bakımından bütün yerli yabancı kaynaklardan ayrıldığını söyleyebilirim.” Elbette bu kitabın 2. bölümünde yazılanların bir kısmının başka kaynaklarda bulunma ihtimali yüksektir. Programcılık kitaplarında bilim yapmadığımıza göre bu kitapta anlatılan hemen her konunun başka kaynaklarda bulunması son derece normaldir. Programcılık kitaplarının arasındaki en önemli fark konuların anlatım biçimidir, hikâye etme tarzıdır.

Gelelim bu kitabın Konsol Uygulamaları adlı 2. bölümüne. Bir sonraki bölüm bir bakıma Programcılığa Giriş adlı 2. bölümün devamı gibidir. Çünkü Konsol Uygulamaları adını verdiğim 3. bölümde Visual Basic kodu yazılmak istendiği zaman “ilk” gerek duyulacak kavramlar ve en çok kullanılan .NET sınıflarını anlatmaya çalıştım. Her ne kadar konsol uygulaması geliştirip başkasına verme ihtimaliniz düşük olsa bile bir sonraki bölümde Visual Basic ile program yazmanın geri planı üzerinde biraz durulmaktadır. Tabii bununla da yetinilmeyip Konsol Uygulamaları dahilinde Windows Formlarının nasıl ekrana getirilebileceği anlatılarak referans ve namespace kavramları hakkında ön bilgi verilmeye çalışılmaktadır. Yine bazı arkadaşlar “madem Windows formuna gerek duyuyorsun da neden konsol uygulaması hazırladın?” diye sorabilirler. Bu soruyu soran arkadaşlara aşağıda verilen 2 Main() metodunu incelemelerini önermek isterim.

Sub Main()

  Dim F1 As Form1

  F1 = New Form1()

  F1.Show()

End Sub

Sub Main()

   Dim F1 As Form1 

   F1 = New Form1()

   Windows.Forms.Application.Run(F1)

End Sub

Sizce Memik Yanık konsol uygulamasının Main() metodunu bu şekilde düzenlemekle neyi hedeflemektedir? Sizce hangi kaynakta(yerli yabancı fark etmez) Form nesnesi Application sınıfından yararlanılmadan Show() metodu ile ekrana getirilmeye çalışılmıştır? Hayır hayır Memik Yanık Amerika’yı yeniden keşfetmiyor; Memik Yanık’ın burada amacı okurun dikkatini Application sınıfının işlevine çekmektir. Sizce Application sınıfı hakkında yeterince bilgi edinmemiş birisi Windows mesajlarını hakkıyla anlayabilir mi?

Gelelim bu kitabın 4. bölümde anlatılan şu Namespace kavramına. Her ne kadar bu kitabın 2. ve 3. bölümlerinde referans ve namespace’lerden söz edilmiş olsa bile .NET programcılığında henüz yolun başında olan birisi için namespace mutlaka öğrenmesi gereken kavramlardan birisidir. Tabi henüz yolun başında olan birisine namespace kavramını en başta anlatacağım deyip kafasını karıştırmamak gerekir. Bu düşünce ile namespace’ler hakkında bilgi vermeye kısıtlı bir konsol uygulaması hazırlayarak başladım. Çünkü Visual Basic derleyicisinin derleme yaparken neyin sınıf neyin namespace olduğuna karar verirken nasıl bir yöntem izlendiğinin bilinmesi gerekiyor. Bu nedenle Memik Yanık’ın kitabında derleme hakkında bilgi verirken “System.dll” ve “System.core.dll” adlı referanslardan söz etti. Namespace adlı bölümün ileri ki sayfalarında .NET Framework ile gelen namespace’lerdeki sınıfları kullanmaktan öte programcıların kendi sınıflarını nasıl namespace olarak düzenleyebileceklerinden söz edildi. Tabii ki Visual Basic konulu kitapların hemen hepsinde nasıl namespace hazırlandığından söz edilmektedir.

Memik Yanık’ın Visual Basic kitabının 5. bölümünde 36 sayfa boyunca değişkenler hakkında bilgi verilmektedir. Bazı okurlar 'değişkenlere bu kadar sayfa ayırmanın gerekçesi nedir?' diye sorabilirler. Elbette daha önce Visual Basic hakkında az çok bilgi edinmiş olanları göz önüne alırsak değişkenlere daha az sayfa ayırmak gerekirdi. Örneğin daha önce Visual Basic konulu kaynakları okumuş olanlar değişkenlerin nasıl tanımlanıp nasıl ilk değer aktarıldığını bilirler. Her ne kadar bu bölümde Nullable tiplerden, Parse() metodundan, Convert sınıfından söz edilse bile bu kitabı bu bölüm bağlamında değerlendirecek olursam şunları söyleyebilirim:Visual Basic 9.0 kitabımın bu bölüm bağlamında bir artısı varsa değişkenlerin bütün yönleri ile ele alınmış olmasıdır. Bu nedenle değişkenler konusunu bu kitaptan okuyan birisi değişkenlerle ilgili olarak başka kaynaklara bakma gereğini duymaz. Benzer şeyler bu kitabın 6. bölümü için de söylenebilir. Çünkü kitabın 6. bölümünde 18 sayfa boyunca dizi değişkenler ve Array sınıfı her yönüyle en ince ayrıntısına kadar anlatılmaktadır. Belki bu kitap Değişkenler adlı bölüm bağlamında şöyle eleştirilebilir: Bu metni biraz kesip, bazı metot ve işlemlerden söz etmeyip birkaç sayfa tasarruf edebilirdiniz. Ancak ben tercihimi dizi değişkenleri her yönüyle anlatmak yönünde yaptım. Yani istedim ki bu kitabı edinenler Visual Basic’la ilgili temel konuları öğrenirken başka kaynaklara başvurma gereğini duymasın.

Şimdi sırada bu kitapta toplam 8 sayfa yer tutan Operatörler adlı bölüm var. Tabi hemen bazı arkadaşlar 8 sayfa boyunca artı(+), eksi(-), bölme(/) vs.. operatörlerinden söz etmiş olduğumu düşünebilirler. Bu bölümde bu operatörlere kısaca değinilmiş olsa bile asıl ağırlık Kaydırma Operatörleri ile Is, IsNot ve TryCast operatörlerine verildi. Çünkü Is ve IsNot operatörleri çok sık kullanılmaktadır. Devamında 3 sayfa boyunca bit düzeyinde işlem yapılırken kullanılan operatörlerden söz edildi. Matematiksel işlemlerde kullanılan operatörler hakkında bu kitapta yazılanlar çıkarılsa bile sayfa sayısı değişmiyordu. Bit düzeyinde işlem yapılırken kullanılan operatörlerden yararlanmak son derece teknik bir işlem olmasına rağmen konular öyle hikaye edildi ki ilk okumada mutlaka anlaşılacak yalınlıktadır.

Bu kitabın Blok Kontrol adlı bölümünde 10 sayfa boyunca if, while, for, for each’ten söz edildi. Bu kitabın bu bölüm bağlamında diğer kitaplara bir artısı pek yoktur. Ancak başlangıçta zor anlaşılan for each döngüsünü daha önce duymamış kullanmamış olanlar bile ilgili sayfaları okuduklarında hemen konuya hakim olabilirler.

Bu kitabın 9. bölümünde 26 sayfa boyunca String işlemlerinden ve Math sınıfındaki metotlardan söz edilmektedir. Neden mi bu konuyu önemsedim? Çünkü kod yazılırken en çok yapılan işlemlerin başında string işlemleri gelmektedir. Elbette String ve Math sınıflarının bazı metotlarını göz ardı edip bu bölümün sayfa sayısını 22’ye düşürmek mümkündü. Bu durumda Visual Basic ile programcılıkta yeni olan okurların başka kaynaklara başvurma ihtiyacı olurdu. Açıkçası istedim ki bu kitabı her kim edinirse String ve Math sınıfının metotları konusunda eksiksiz bilgiye sahip olsun. Örneğin String sınıfının Split metodunu ayrıntılı bir şekilde anlattım. Bu kitabın 14 sayfalık 10. bölümü bir bakıma String İşlemleri adlı 9. bölümün devamı gibidir. Çünkü 10. bölümde StringBuilder sınıfından ve Düzenli İfadelerden söz edilmektedir. Tam bu noktada bu kitabın boyutlarından kısaca söz etmek istiyorum. Bu kitabın yazı alanın genişliği tam tamına 13 cm’dir. İsim vermeye gerek yok aynı genişliğe sahip(16 cm) birçok kitapta yazı alanı genişliği en fazla 11.5 cm’dir. Asıl demek istediğim şudur: Toplam 1074 sayfa olan bu kitap başka yayınevlerinin ölçüleri ile basılsaydı sayfa sayısı en az 1200 olurdu. Yani anlayacağınız bu kitabın sayfa sayısını azaltmak sürekli çaba harcadım.

11. bölümde 16 sayfa boyunca tarih ve zaman bilgileri bütün ayrıntıları ile anlatılmaktadır. Başka bir deyişle bu kitabı okuyan birisi için tarih ve zaman bilgileri üzerinde yapılan işlemler bağlamında bilmediği hiçbir ayrıntı kalmaz. Ayrıca bu bölümü okuyanlar Ticks özelliği ve TimeSpan yapısı hakkında bilgi sahibi olurlar. Bazı arkadaşlar yine itiraz edip Tarih ve zaman bilgileri üzerinde yapılan işlemleri anlatmak için 16 sayfa fazla değil mi? Bir görüşe göre evet. Şartları zorlayıp bu bölümün sayfa sayısını 12 veya 14’e indirmek mümkündü. Ötesi birçok kitapta bu konuya ayrılan sayfa sayısı üç beştir. Buna rağmen neden mi bu konuyu bütün ayrıntıları ile anlattım. Çünkü izlediğim forumlarda zaman ve tarihsel bilgiler üzerinde yapılan işlemlerle ilgili çok sayıda soru sorulduğunu gördüm. Başka bir deyişle her Visual Basic programcısının bu işlemlere ihtiyacı olduğundan herkesin bu işlemler hakkında bilgi sahibi olması gerekiyor.

Her ne kadar bu kitabın Programcılığa Giriş ve Konsol Uygulamaları adlı 2. ve 3. bölümlerinde Class kavramından az çok söz edilmiş olsa bile konunun ayrıntıları 12. bölümden itibaren anlatılmaktadır. Birçok yerli yabancı kitapta Class’lardan söz edilirken memeli hayvanlardan, arabalardan vs. söz edilir. Başka bir deyişle Class kavramının zor anlaşılması için herkes görüş birliğine varmış gibidir. Memik Yanık nesneye yönelik programcılık şudur, şu ilkeleri vardır vs demeden direk kod üzerinde Class kavramından söz eder. Örneğin Memik Yanık bu kitabın ilk sayfalarında şöyle bir cümle kurdu: “Visual Basic programlarını Class olarak düzenlemek zorunlu olmasa bile Class olarak düzenlenmesi önerilmektedir. Bu nedenle aşağıdaki gibi bir Class bloğu hazırladım”. Bu kadar basit. Henüz yolun başında olan ve programcılıkla ilgili temel kavramlardan bi haber olan birisine memelilerden, arabalardan vs söz etmek kafaları karıştırmaktan öte bir işe yaramaz. Ötesi Visual Basic’la ilgili kaynaklarda değişken-alan ayrımından hiç söz edilmez. Tamam kitabın başında eski alışkanlıklara uyup alanlara değişken denilmesi belki anlatım kolaylığı sağlıyor ama Class’lar ve nesneye yönelik programcılık anlatılırken değişkenlerin gerçekte alan olduğundan hiç söz edilmez.

Daha önce az çok program yazmış ve nesne nedir Class nedir sorularına verecek cevabı olan birisi Memik Yanık’ın kitabındaki “Class’lar ve Nesneye Yönelik Programcılık” adlı 30 sayfalık bölüme şöyle baktığına kesin burun kıvıracaktır. Sanki Memik Yanık bu bölümü Visual Basic uzmanları için yazmış ta uzmanların bu metinden öğreneceği yeni bir şey yokmuş. Sanki Memik Yanık bu bölümü herkesin işine yarayacak Class örnekleri hazırlamak için kaleme almış. Bu bölümün amacı Class’lar ve Class’ların üyelerinden söz etmektir, yapıcı ve yok edici metotların nasıl hazırlandığını okura göstermektir, statik yapıcı metotların işlevinden söz etmektir. Eğer okurun birisi bu bölümü okuyup Class’lar hakkında genel bilgiye sahip oluyorsa bu bölüm işlevini yerine getirmiştir. Her ne kadar bu kitabın “Class’lar ve Nesneye Yönelik Programcılık” adlı bölümde Class’ların en önemli üyesi metotlardan söz edilmiş olsa bile metotlar ayrı bir bölümde ayrıntılı bir şekilde incelendi. Başka bir deyişle Memik Yanık’ın Visual Basic 9.0 kitabının 14 sayfalık 13. bölümünü okuyanlar metotlarla ilgili her tür bilgiye sahip olurlar.

Bu kitabın 14. ve 15. bölümlerinde İndeksleyiciler ve Interface’lerden söz edildi. Nesneye yönelik programcılıkta indeksleyiciler zor anlaşılan konulardan birisidir. Memik Yanık 8 sayfalık bu bölümü öyle bir kaleme aldı ki hayatında daha önce indeksleyici kavramını hiç duymamış olanlar bile ilk okumada yazılan her şeyi anlayabilirler. Benzer şeyler 14 sayfa boyunca Interface’ler hakkında bilgi verilen bölüm için de söylenebilir. Gelelim nesneye yönelik programcılığın hem önemli hem de zor anlaşılan 2 konusuna: Delegate ve Olaylar. Sizce Delegate’ler ve Olaylar neden zor ve genellikle yanlış anlaşılan 2 konudur? Tabi bazı arkadaşlar şöyle bir yorum getirecekler: Forma bir Button nesnesi yerleştirirsin sonra tasarım anında bu button nesnesini çift tıklarsın vs.. Zaten Delegate ve Olayların zor ve yanlış anlaşılmasının temelleri Button nesnesinden ve tasarım anında Button nesnesi çift tıklandığında hazırlanan kodun anlatılış şeklinde atılmaktadır. Hal bu ki gerçek başkadır: Tasarım anında formdaki Button nesnesi çift tıklandığında Visual Studio programcının söz konusu Button nesnesinin Click olayını temsil edecek bir metot hazırlamak istediğini varsayıp Click olayının yapısına uygun bir metodu hazırlayıp Click olayıyla ilişkilendirmektedir. Kullanıcı çalışma anında button nesnesini tıkladığında Button nesnesiyle ilgili olarak Click olayının nasıl tetiklendiğinden söz edilmediği için konu havada kalıyor. Memik Yanık bu düşünceyle 20 sayfa boyunca delegate ve olaylardan söz etti.

Bu kitabın 18 sayfalık Module, Stucture ve Enum Tipleri adlı bölümünü okuyanlar Structure’ların ne olduğu, hangi amaçlarla kullanıldığı, sınıflarla structure’ler arasında ne gibi farkların olduğunu kısa sürede öğrenirler. Devamında Enum tipleri hakkında ayrıntılı bilgiye sahip olduğu gibi Enum’larla ilgili olarak başka kaynaklara başvurma ihtiyacı kalmaz. Gelelim bu kitabın 12 sayfalık Object Sınıfı adlı bölümüne. Bütün Visual Basic kitaplarında dakka 1 gol 1 misali daha ilk sayfadan Object sınıfından söz edilir. Okur kitabın sonuna kadar gelir ama hala Object sınıfı hakkında derli toplu bilgiye rastlamaz. Object sınıfı hakkında yeterli bilgiye sahip olmayan okur ToString() metoduyla ilgili olarak anlatılanları kavramakta zorlanır. Memik Yanık ne mi yaptı? Kitabının ortalarına bile gelmeden Object sınıfının önemli gördüğü özelliklerini ve metotlarını anlaşılır bir dille anlattı.

Bu kitabın mevcut yerli yabancı Visual Basic kitaplarına fark atılan bölümlerden bir diğeri Koleksiyon Sınıfları adlı 19. bölümdür. Bu bölümde 50 sayfa boyunca .NET Framework ile gelen koleksiyon sınıfları ve bu sınıflarla ilgili bütün Interface’ler ayrıntılı bir şekilde anlatılmaktadır. Bu bölümün tümünü okuyan birisi kendisini koleksiyon uzmanı olarak ilan edebilir. Koleksiyonlar konusu oldukça kapsamlı olduğu için BitArray, BitConverter, Buffer, StringCollection ve StringDictionary sınıflarını ayrı bir bölüm olarak düzenledim. Tabi hemen aklınıza Generic koleksiyonları ne yaptınız Sorusu gelmiş olabilir. Bu kitabın 21. bölümünde 24 sayfa boyunca önce .NET Framework ile gelen Generic koleksiyon sınıflarından, devamında Generic sınıflarından söz ettim. Yurt dışında yalnızca Generic sınıflardan söz edilen bağımsız kitaplar yazıldığına göre bu kitabımda Generic koleksiyonları ve sınıfları bütün yönleriyle anlatmadığımı tahmin etmiş olmalısınız.

Şimdi sözünü edeceğim 3 bölüm gerek içerik gerekse de anlatım şekli bakımından mevcut(tabi bu değerlendirme benim görebildiğim kitaplarla sınırlıdır) kitaplara fark atmaktadır. Her ne kadar Hata Ayıklamak ve Debug İşlemleri adlı 16 sayfalık bölümün ilk 7 sayfasında anlatılan konuları hemen her kaynakta bulmak mümkün olsa bile bu bölümün diğer sayfalarında Debug, Trace, TextWriterTraceListener ve EventLogTraceListener sınıfları hakkında ayrıntılı bilgi verilmektedir. 24. bölümde ise hata yakalanırken kullanılan Exception sınıfları anlatılmaktadır. Tabii ki başka kaynaklarda da Exception sınıfları hakkında bilgi bulabilirsiniz. Gelelim şu Application sınıfına. Diğer kaynaklarda Application sınıfının bazı özellikleri ve metotları hakkında bilgi veriliyor olsa bile hiçbir kaynakta 32 sayfa boyunca yalnızca Application sınıfından söz edilmemektedir. Application sınıfı hakkında bilgi içeren bu bölümü kitap hakkında ve konuların nasıl işlendiğini merak edenler için burada yayınladım. Tabi bu bölümün kitabın tam ortasında bulunduğunu, başka bir deyişle kitabın daha önceki bölümlerini okumamış olanların bu bölümde ilk okumada anlamayacakları cümleler olabilir.

Bu kitabın içindekiler sayfasına bakan birisi Form Sınıfının Özellikleri, Olayları ve Metotları adlı bölümde 22 sayfa boyunca klasik olarak formların herkes tarafından bilinen özelliklerinden söz edildiğini sanabilir. İşte size bu bölümden alınma 3 satırlık kod.

Protected Overrides Sub OnCreateControl()

MyBase.OnCreateControl()

End Sub

Tabii ki burada bu 3 satırlık kodun işlevinden söz etmeyeceğim, demek istediğim şudur: Bu 3 satırlık koda başka basılı kaynaklarda rastlama ihtimaliniz son derece düşüktür. Başka bir deyişle bölümün adı Form Sınıfının Özellikleri olsa bile son derece teknik bilgiler içermektedir.

Bu kitabın diğer basılı kaynaklar bağlamında en sıradan bölümü “Sık Kullanılan Kontroller” adlı bölümüdür. Bu bölümde sık kullanılan 20’ye yakın kontrol 38 sayfa boyunca anlatılmaktadır. Bu kontroller anlatılırken daha önce az çok kod yazmış herkesin ilk bakışta tahmin edeceği özellik ve metotlardan söz edilmedi. Yoksa çok sayıda kontrolü 38 sayfada anlatmak mümkün olmazdıç

Bu kitabın Dosya ve Klasör İşlemleri adlı bölümünde 28 sayfa boyunca Visual Basic kodu yazan birisinin gerek duyması muhtemel bütün bilgiler verilmektedir. Başka bir deyişle bu bölümü okuyanlar dosya ve klasör işlemleri bağlamında başka kaynaklara başvurma ihtiyacını duymazlar. Kapsamı bir yana Memik Yanık’ın kitabının bu bölümünü okuyanlar yorulmazlar, anlatılanları izlemekte zorluk çekmezler.

Şimdi bu kitabın mevcut basılı kitaplar bağlamında bence açık ara önde olduğu 3 bölümden kısaca söz edeceğim. Birçok kaynakta Visual Basic uygulamaları dahilinde Word ve Excel’den nasıl yararlanıldığı kısaca anlatılırken Memik Yanık’ın kitabında bu konu 30 sayfa boyunca ayrıntılı bir şekilde anlatılmıştır. Ayrıca bu anlatma öyle bir anlatmadır ki ilk okumada anlaşılmayacak bir tek cümle bile yoktur. Benzer şekilde Api Fonksiyonları adlı bölümde Memik Yanık programcıların en çok gerek duyduğunu sandığı çok sayıda API fonksiyonunu 40 sayfa boyunca anlatmıştır. Windows Mesajları adlı bölümde ise Memik Yanık 20 sayfa boyunca son derece teknik bir konuyu ilk okumada anlaşılacak yalınlıkta anlatmıştır. Bu kitabın hepsi ileri düzey diye anılan diğer bölümlerinden söz etmeye gerek duymadım. Çünkü ileri düzey konulara gerek duyanlar zaten neyi aradıklarını biliyorlar.

Her ne kadar Memik Yanık bu kitabında 30 sayfa boyunca Visual Basic uygulamaları dahilinde Word ve Excel'den nasıl yararlanıldığını anlatmış olmakla birlikte bu amaçla kullanılan sınıfların örneklerini hazırlamak gerektiğini Dünyanda ilk kez akıl eden yerli bir yazardır(!). Bu yerli yazar 2004 yılında yazdığı kitabında aşağıda verilen 2 satırlık kodu programcılık dünyasına hediye edip programcıların önünü açmamış olsaydı Memik Yanık kitabında 30 sayfa boyunca Word ve Excel'den söz edemezdi. Ötesi bu yerli yazarımız olmasaydı Memik Yanık kitabında Word.Application tipindeki değişkene "Word_uygulamasi" gibi bir ad veremezdi(!). Mümkünü yok Memik Yanık bu değişkene ad kendi imkanlarıyla değişken adı bulamazdı.

Dim Word_uygulamasi As Microsoft.Office.Interop.Word.Application

Word_uygulamasi =New Microsoft.Office.Interop.Word.Application()

Buraya kadar Visual Basic kitabımım yarısından biraz fazlasından söz ettim. Kitabın diğer bölümlerini de anlatıp bu yazının sayfa sayısını iki katına çıkarırsam tamamını okuyanların oranı düşüreceği için bu kitabım üzerine konuşmayı burada kesiyorum.

Kitaplarım 14.05.2009 00:31:31

YORUM YOK


YorumlarYorum Yaz
Ana Sayfa | Hakkımda | Kitap Önerileri | Fotoğraflarım | RSS | İletişim
Memik Yanık 2004-2009 © Tüm Hakları Saklıdır.
Hazırlayan www.semgoksu.com