Memik YANIK'ın Günlüğü

7/11/2009 - Her Gün Bir Yanlış(1. Yanlış): #undef Deyimi

Kategori: CSharp
 

Daha önce yazmıştım; her kitapta teknik veya dil yanlışları olabilir. Önemli olan bu yanlışların sayısı ve önemidir. Yanlışsız kitap yazmak neredeyse imkânsız olduğu için hedefim hep az yanlışa sahip kitaplar yazmak oldu. Ne zaman okurun birisi kitabımdaki bir yanlışı ilettiğinde kendisine teşekkür edip söz konusu yanlışı ilk fırsatta düzeltme yoluna gittim.

 

Bir programcılık kitabının yanlışlarından söz edilecek bu yazı dizisini hazırlarken kendimi yazar Memik Yanık olarak değil okur yerine koydum. Yani adını burada anmadığım yazara diyorum ki “ey yazar arkadaş kitabında şu şu yanlışlar var, bir zahmet yeni baskıda bu yanlışları düzelt”. Bakalım yazar arkadaş iyi niyetli bu çalışmaya ne tepki verecek?

 

Bu yazı dizisinde yaklaşık 550 sayfalık bir C# kitabının yanlışlarını ortaya koyacağım. Bunu yaparken her gün kitabın bir sayfasını rastgele açıp o sayfadaki hatayı ve doğrusunu yazacağım. Bu hataların sayısı kaç olur şimdiden bilemem. Ancak bu sayının en az 25 olacağını şimdiden söyleyebilirim. Çünkü test amaçlı olarak yaptığım denemelerde her 5-10 sayfada bir yanlışa rastadım. Tabi söz konusu kitabın yanlışlarını ortaya koyarken yanlış yapmam ihtimal dahilindedir. Bu nedenle olası yanlışlarım için kitabın yazarından simdiden özür dilerim ve yanlışlardan söz ederken yapacağım yanlışlarımı düzeltmek için bir uyarının, bir mail'in yeterli olduğunu bilmenizi isterim. Burada sözünü ettiğim hatanın incelediğim kitabın hangi sayfasında olduğunu yazmayacağım. İşte söz konusu kitaptan alınıp anlamı korunup biraz değiştirilmiş bir cümle. 

"demirspor isimli değişken "#undef" komutu sayesinde deklare edilmiştir."

Bu cümlede yazarımız undef adlı önişlemci deyimiyle değişken deklare edildiğini yazmış. Gerçekte C# programlama dilinde #define önişlemci deyimi ile kodun başında veya derleme satırında parametreler kullanılarak sembol veya sabit tanımı yapılmaktadır. #undef deyimi ise bu sabitleri tanımsız duruma getirebilmektedir. Yani yazarımız yanılıyor:Çünkü undef deyimi ile deklarasyon yapılmıyor.

 

Diğer yandan #undef deyimi ile olmayan veya #define deyimi ile tanımlanmayan bir sabiti tanımsız duruma düşürmek istediğinizde C# derleyicisi "dur arkadaş bu sabit tanımlı değil ki tanımsız yapayım, sen olmayan bir şeyi bana yok et diyorsun" demiyor. Yazar arkadaşımız C# derleyicisinin azizliğine uğramış yukarıda verilen cümleyi kitabına almıştır.

0 YorumYorum yaz!Bağlantı

5/11/2009 - Dananın Kuyruğu Ne Zaman Kopacak?

Kategori: Guncel Yazilar

Kendi adıma konuşmam gerekirse bir programcılık kitabı yazmaya karar vermeden önce potansiyel hedef okur grubunun bilgi düzeyini tahmin edip ona göre bir anlatım biçimini seçmeye çalışırım. Kitabın içeriği ve konuların ele alınış şekli potansiyel okurların beklentilerine uygun değilse o kitap okurlardan ilgi görmüyor.

 

2001 krizinde mevcut kitaplarımın satışı birden düşünce yenilerini yazamadım ve 2 yıl sonra düzeyleri okur beklentilerinin altında kalan birkaç kitabım kitapçı raflarında bulunur oldu. Tam bu sırada bazı yazarların organizasyonu ile Memik Yanık aleyhine iftira kampanyaları açıldı. Bu kampanyalar başlangıçta biraz etkili oldu. Ancak son 2 yıldır durum tersine dönmeye başladı. Çünkü Memik YANIK tarafından yazılan kitaplar hem kolay okunduğu hem de daha kapsamlı olduğu için okurlar gerçeği görmeye başladılar. Başka bir deyişle iftiralar etkisini kaybetmeye başladı. Şu an için Memik YANIK’ın Ado.net, Visual Basic 9.0 ve C# 3.0 kitapları rakiplerine fark atacak kalite ve içeriğe sahiptir.

 

Sanırım bundan 4 yıl önceydi. Kitap yazma hızımı iyice düşürmüştüm. Çünkü aleyhime yazılanlar moralimi bozmuştu ve bu alandan çekilmeye karar vermiştim. Tam bu günlerde Ankara’da bir yazar arkadaşı ziyaret etmiştim. Bu arkadaşa “kitapların okurlardan ilgi görüyor ve iyi satıyor. Onunla bununla uğraşmak yerine enerjini kitaplarına harcayıp kalitelerini yükseltmeye bak” demiştim. Bu yazar arkadaş beni dinlemedi; hem onu bunu dava etmeye başladı hem de kısa zaman aralıklarıyla kitaplar yayınlamaya başladı. Tabi bu kadar çok kitabı kısa süre içinde yazınca kitaplar hem yazım hem de teknik açıdan kabul edilebilir sınırları zorlayacak kadar fazla sayıda yanlış ve hata içerir oldu.

 

Zamanla okurlar bu yazar arkadaşın kitaplarının yüzlerine bakmaz oldular. Örneğin 2005 yılında büyük iddialarla yayınlanan C# kitabının kopyaları aradan yıllar geçmesine rağmen depolardaki yerinde durmaya devam ediyorlar. Umarım yanılırım: Birkaç aya kalmaz bu yazar arkadaşın kitaplarını yayıncılar yayınlamaya son vereceklerdir. Çünkü mevcut kitaplar satmadığı için yeni sürüme güncelleme yapılamıyor. Güncelleme yapılmadığı içindir ki okurlar eski kitaba ilgi göstermiyorlar. Yakın bir zamanda bu yazar arkadaşın kitaplarındaki teknik yanlışlardan söz edilen kitaplar yazıp PDF olarak dağıtacağım. İşte o zaman dananın kuyruğu kapacak. Ayrıca ikisi öğretim üyesi, birisi dershane sahibi, dördü programcı toplam 7 kişi insan içine çıkamaz hale gelecekledir.

0 YorumYorum yaz!Bağlantı

2/11/2009 - Yazılımcı Olmak İçin Kursa Gitmeye Gerek Varmı?

Kategori: Guncel Yazilar
Varsayalım ki Ankara’da ikamet ediyorsunuz, öğrencisiniz veya bir işte çalışmıyorsunuz. Yazılıma meraklısınız, yazılımcı olmak istiyorsunuz. Madem en iyi C# kitabını www.memikyanik.net ‘te yayınlamaya başladık  Bu demektir ki temel C# bilgisi edinme derdiniz yok demektir. Sırada işin web ve veritabanı kısmı var. Hiç kaygılanmayan en iyi Türkçe ASP.NET kitabı çok yakında istifadenize sunulacak.

Tabi bir de işin kurs tarafı var. Üstelik kurslar ucuz da değil. İşte size Türkiye’nin en iyilerinden Fatih Durgut’un zamanında verdiği canlı derslerin video çekimleri. Hemen yanı başınızda: www.durgut.com'u ziyaret edin işin ustasından programcılık dinleyin. Tabi bazı dershane sahipleri “ama biz size kursta kitap veriyoruz” diye sizi ikna etmeye çalışacaklardır. Yani paranızı sokağa atmayın. Yok hayır bana inanmıyorsanız Ankara merkezli eğitimcilerin çektikleri videoları, Fatih beyin videoları ile karşılaştırıp farkı görün.
0 YorumYorum yaz!Bağlantı

2/11/2009 - C# 3.0 Kitabının İlk 120 Sayfası Yayınlandı..

Kategori: CSharp
En kapsamlı ve en kolay okunan C# 3.0 kitabının ilk 120 sayfasının kişisel sitemde yayınlanması tamamlandı. Yakın bir zamanda kimse para ödeyerek Türkçe C# kitabı almayı denemeyecektir. Çünkü en iyisi, en kolay okunanı ellerinin altında. Tabi bazı arkadaşlar diyecekler ki ben Türkçe kitaplar yerine İngilizce olanları tercih ediyorum diyeceklerdir. Bu arkadaşlara söyleyeceğim şudur: Bir kitap kötü kaleme alınmışsa ve zor okunuyorsa hangi dilde yazıldığının ne önemi var?

http://www.memikyanik.net/csharp-30-kitabi-makaleleri/24.aspx

Hele hele 2005 yılında yayınlanıp ve şişirildiği için tuğla kalınlığında olup yanlışlarda dolu olup farkında olmadan C# 2005 adını verdikleri C# 2.0 kitapları depolarda çürümeye devam edeceklerdir.
0 YorumYorum yaz!Bağlantı

2/11/2009 - Aydın Köksal Hocam Sorularıma Henüz Cevap Vermedi

Kategori: Guncel Yazilar
Malumunuz olduğu üzere bilgisayar ve programcılık alanında hocaların hocası Aydın Köksal hocaya haddim olmayarak birkaç soru yöneltmiştim. Soruların birisinin linki şuydu:

http://memikyanik.blogspot.com/2009/09/hocalarn-hocas-aydn-koksal-hocaya.html

Bu kısacık sorumda 2 farklı programcı tarafından yazılmış kısacık kodlarda kullanılan değişken adlarını listelemiştim. Programcının birisi .NET uygulamasına Excel desteği vermek için aşağıda adları listelenen 4 değişkeni tanımlamıştı.

uygulama
sayfa
kitap
i
adet


Bir başka programcı ise yazdığı kısacık kodda aynı amaç için sadece 2 değişken tanımlamıştı ve bu değişkenlere aşağıda listelenen adları vermişti.

Excel_uygulamasi
Tablo


Bir Bilişim A.Ş. çalışanı yani Aydın Köksal hocamızın yanında yetişen uzman bir programcı 2 farklı programcı tarafından yazılan kodlardaki bu değişken adlarının benzer olduğunu iddia etmişti. Bende hocaya sormuştum ve demiştim ki "hocam C# derleyicisinin nazarında bu değişken adları benzer midir?". Aradan 2 ay geçmesine rağmen hocamız (belki buraya yazdıklarımdan haberi yoktur) henüz bir tepki vermedi. Bilmiyorum, belki Aydın hocanın sahibi olduğu Bilişim A. Ş.’nin kullandığı C# derleyicisi özel bir derleyicidir ve burada ayrı olarak listelenen değişken adlarının aynı olduğunu rapor ediyordur. Yoksa koskoca Bilişim A.Ş. çalışanı bilgisayar mühendisliği tahsili yapmış programcı bu değişken adlarının aynı olduğunu rapor eder mi?
0 YorumYorum yaz!Bağlantı

<- Son Sayfa • Sonraki Sayfa ->

Hakkımda

Bu blog'da bilgisayar ve programcılık üzerine yazdıklarımın arka planını bulacaksınız

Kategoriler

  • ASP.NET
  • CSharp
  • Delphi
  • Guncel Yazilar
  • Programcilik
  • Visual Basic
  • Arkadaşlarım

    sewimsizce