Bir taraftan Türkçe bilgisayar kitaplarının pek tutulmaması var olan kitapların dilinin olgunlaşmaması,
bir taraftan bilginin kıymetini kaybetmesini bir taraftan da önemli bir çalışma yapılırsa takdir edileceği ve bu meslekteki insanlara faydalı olacağını düşünerek,
bazen coÅŸup umutlanarak,
bazen heyecanını kaybedip umutsuz düşerek,
bazen idealist davranıp bazen hızlanarak,
bazen yorularak,
bazen sorgulayıp yeni şeyler öğrenerek,
bazen yanlış bildiğini düzelterek
ama en önemlisi kalemin ve yazının hakkını vererek gerçekten en iyi olması için çalışarak 3-4 yıldır yazılım tasarımı konusunda bir kitap serisi üzerinde çalışıyorum.
Bu seri, Microsoft teknolojilerini kullanan bir yazılım mühendisi için hem başlangıç hem de ileri düzey sürecinde referans teşkil etmeliydi. Özellikle Bilgisayar Mühendisliği, Bilgisayar Programcılığı ve ilgili diğer bölümler için akademik bir kaynak olmalıydı. Bu amaçla serinin Windows, Web ve veri tabanı konulu kitaplardan oluşmasını hayal ediyordum. Projeyi kafamda ve kağıtta olgunlaştırıp yazmaya başladım.
Öncelikle haftasonu verdiÄŸim eÄŸitim notlarımı, okuldayken hocalardan öğrendiÄŸim notları, profesyonel iÅŸ hayatında karşılaÅŸtığım sorun ve ipuçları gün yüzüne çıkardım. Ardından kitapların muhtemel içeriÄŸini belirledim. İlk baÅŸta aynı kitapta hem C# dilinin hem de VB.NET dilinin olduÄŸu “İki dil birden” formatında yazmaya baÅŸladım ancak bunun pek kullanışlı olmayacağını düşünerek ikisini birbirinden bağımsız yazmaya karar verdim. 2005′in baÅŸlarında ilk cümleyi yazmaya baÅŸladım. Her bir satırı yazdıkça yazarlara olan saygım daha da artıyordu. Bilmenin yapabilmek olmadığını, anlatabilmek olmadığını özellikle yazmanın bilmenin çok ötesinde birÅŸey olduÄŸunu anladım. Araya sosyal ve iÅŸ hayatının yoÄŸunluÄŸunun girmesiyle proje uzadıkça uzadı. Çok kısa sürede bilgisayar kitaplarının yazıldığı, popüler bir tüketim alışkanlığının kazandırıldığı ve Microsoft ile teknoloji geliÅŸimi anlamında yarışmanın mümkün olmadığı bir dönemde bu kadar gecikmek birkaç kez projeden soÄŸumama neden oldu. Etrafımdaki deÄŸerli dostlarım aracılığıyla ancak tüm seriyi 2008′in yazında bitirebildim. İlk baÅŸta C#, VB.NET, ASP.NET ve SQL Server kitaplarından oluÅŸması düşünülen bu seri SQL Server olmadan tamamlandı. Kitapların iyi birer kaynak olması gerekiyordu bunun için de zaman yetmiyordu. Bu yüzden SQL Server’e hiç baÅŸlamamaya karar verdik. SQL Server, sırf kitap olsun diye yazılacak bir platform olmadığı için yazılacaksa gerçekten hakkı verilerek yazılmalı. Bunun da önemli bir zaman alacağı kanısındayım. Önümüzdeki yıllarda SQL Server’in özellikle DBA’ler için bir yönetim kitabı çıkarmayı düşünüyorum.
İyi ve faydalı kitaplar olması için iyi bir yayın danışmanı ve iyi bir yayıneviyle çalışmak gerekiyordu. Bunun için bu sektörde birçok kiÅŸiye hocalık yapmış olan ve “İşte C” kitabıyla birçok kiÅŸinin C dilini öğrendiÄŸi Dr. Rifat Çölkesen beyefendiyle çalıştık ve yayınevi olarak ta akademik – bilimsel – üniversite ders kitapları basan Papatya Yayınclık EÄŸitim A.Åž. tercih edildi. Kitaptaki teknik anlatımın doÄŸruluÄŸu için baÅŸta TurkoCRM’in yaratıcılarından Murat Öngüdü olmak üzere birçok Bilgisayar Mühendisi ile çalışıldı. Bu kiÅŸilerin özellikle piyasada çalışıyor olmalarına dikkat edildi. Çünkü kitapların teoriyle birlikte bilgilerin gerçek hayatta hangi projelerde nasıl kullanılacağını örneklendirilmesi amaçlandı. Teknik öneriler için Prof. Dr. Esat HAMZAOÄžLU ve kitaplarda yalın bir Türkçe’nin kullanılması için Necdet AVCI ve Batuhan AVCI önemli katkılarda bulundu. Sayfa düzeni ve kapak tasarımı için Olcay Kara’yı da unutmamak lazım. Bu kitapların bu kiÅŸilerin katkısıyla daha da iyi olduÄŸu kanısındayım. Hepsine şükranlarımı sunuyorum. Bundan sonrası okuyucunun takdirine bırakılmıştır.
Yazılım mühendisi/uzmanı olmak isteyenler veya daha da uzmanlaşmak için düşündüğümüz serinin kitapları şunlardır;
C# Programlama Dili ve Yazılım Tasarımı (2 Cilt)
VB.NET Programlama Dili ve Yazılım Tasarımı (2 Cilt) – Baskıda
ASP.NET ile Web Uygulamaları GeliÅŸtirme (C# ve VB.NET uyarlamalı) – Baskıda
Serinin ilk kitabı olarak C# dilini seçtik. Kitabın 2 cilt olarak çıkarılmasının hem okunabilirliÄŸi hem de konu bütünlüğü açısından daha iyi bir çözüm olacağına karar verildi. Çalışmalarının bitmesiyle birlikte C# kitabının ilk cildi 2008-Kasım ayında piyasaya sürüldü. “Geç olsun, kötü olmasın” diyerek bu kitabı da namluya sürdük.




Åžubat 21st, 2009 at 15:21
VB.NET Programlama Dili ve Yazılım Tasarımı (2 Cilt) – bu kitabın yayım tarihi hakkında bilgi alabilirmiyim.
Åžubat 23rd, 2009 at 15:58
Merhaba,
Kitap şu an da yayınevinde. Mart ayına kalmadan basıma verilir diye bekliyoruz.
Eylül 22nd, 2009 at 19:46
Merhaba hocam yorumlarınızı okudum hep olumlu yorumlarınız var benim sorum ben programlama iÅŸine yeni baÅŸlıyacağım ama benim amacım ASP Net ile siteler ve bazen program geliÅŸtirmek isdiyorum. sizin tavsiyeniz hangi kitab ve hangi yolla baÅŸmam bu iÅŸe….
Eylül 28th, 2009 at 15:47
Merhaba Serkan,
uzun ince bir yol bekliyor bizi. Programlama işini yeni başlayacaksan öncelikle algoritma ile ilgili kitap almasan bile bol bol belge okumanı tavsiye ederim. Ardından C# dilini öğrenmen ve ardından SQL Server ve ASP.NET için yola devam etmendir. Bu konularda 3-4 e-book okumanı tavsiye edebilirim. Eğer sıkı bir programcı olmak istersen bu yol haritasıyla bu iş çözülür diye düşünüyorum. Eğer orta halli birkaç web uygulaması yapmak istiyorum, arka taraftaki işlemler, detaylar çok ta beni ilgilendirmiyor diye düşünüyorsan herhangi bir Türkçe ASP.NET kitabıyla başlayabilirsin.
Kolay gelsin,
Åžubat 1st, 2010 at 14:55
Hocam Mrb,
Sql Server Üzerinde t-sql yardımıyla veritabanı mdf dosyalarının olduğu dizini bulabilir miyiz?
Bu Konuda yardımcı olursanız sevinirim.
Kolay Gelsin
İyi Çalışmalar
Åžubat 1st, 2010 at 15:46
Murat,
bu işlem için sp_helpdb prosedürü kullanılabileceği gibi sysfiles sistem tablosu da sorgulanabilir.
Åžubat 21st, 2010 at 01:29
Sayın Ahmet Kaymaz, ASP.NET kitabınız ne zaman çıkacak acaba, öğrenebilir miyim?
Åžubat 22nd, 2010 at 10:44
Ahmet,
ASP.NET kitabının yayın tarihiyle ilgili o kadar mesaj geliyorki. Artık ben de mahçup oluyorum. Fakat henüz tarih belli değil. Yayınevi şu anda VB.NET 2.Cilt ile uğraşmaktadır. En yakın zamanda çıkaracağız.
Mart 10th, 2010 at 20:16
Asp.net (C#) kitabınız ne zaman çıkar? Teşekkürler.
Mart 11th, 2010 at 11:05
Yayıneviyle hergün iletişimdeyim. Umarım bu dönem bitmeden raflarda görürüz.
Mart 11th, 2010 at 12:49
Ahmet bey ilginiz ve sabrınız için teÅŸekkürler. Bu soru çok soruldu biliyorum. Umarım bu dönem kitabı çıkarırlar. Ben yayın evine e-posta attım. Hala cevap gelmedi daha. Umarım asp.net kitabı Nisan – Mayıs aylarına yetiÅŸir. Nisan ayında Visual Studio 2010 (.Net 4) çıkıyor. Kitap daha çıkmadan eskiyecek bu gidiÅŸle. Umarım yayınevi bu durumuda göz önüne alır.
Teşekkürler.
AÄŸustos 3rd, 2010 at 10:18
Merhaba Ahmet Bey, merakla beklediğimiz ASP.NET kitabınız ne zaman çıkacak acaba? Kitaplarınız çok güzel, onlar için de teşekkür edeyim yeri gelmişken
AÄŸustos 22nd, 2010 at 01:14
Merhaba Ahmet Bey, benim bir sorum olacaktı…
System.Collections içerisindeki class’lar:
public class ArrayList : IEnumerable, ICollection, IList
public class Hashtable : IEnumerable, ICollection, IDictionary
public class SortedList: IEnumerable, ICollection, IDictionary
public class Stack : IEnumerable, ICollection
public class Queue : IEnumerable, ICollection
Burada anlamadığım nokta şu:
ICollection, IEnumerable’ı implement etmiÅŸ. Åžu ÅŸekilde:
public interface ICollection : IEnumerable
Yani ICollection, IEnumerable içerisindeki üyelere sahip.
Hal böyle iken neden örneÄŸin Stack class’ının tanımı
sadece ICollection’ı implement edecek ÅŸekilde yapılmamış da:
public class Stack : ICollection
Zaten IEnumerable ICollection’ın içindeyken,
ICollection’ın yanında IEnumerable gereksiz yere
bir daha kullanılmış:
public class Stack : IEnumerable, ICollection
Keza örneÄŸin…
public class ArrayList : IEnumerable, ICollection, IList
şeklinde ArrayList tanımlanmış.
Halbuki IList zaten ICollection’a sahip,
ICollection da zaten IEnumerable’a sahip,
neden sadece IList kullanılmamış tanımlama olarak,
yani ÅŸu ÅŸekilde:
public class ArrayList : IList
Bununla ilgili kendim de bir örnek yaptım:
using System;
using System.Collections;
namespace _deneme_
{
class Program
{
static void Main(string[] args) {
Student objStudent = new Student();
objStudent.Name = “michael”;
objStudent.Age = 23;
objStudent.GoToSchool();
objStudent.GoHome();
Console.ReadKey();
}
}
interface IPersonalInformation
{
string Name { get; set; }
byte Age { get; set; }
}
interface IStudent : IPersonalInformation
{
void GoToSchool();
void GoHome();
}
//Aşağıdaki 2 satır da sorunsuz çalışıyor,
//Yani sadece IStudent diyebiliyoruz,
//çünkü o zaten IPersonalInformation’a sahip
//IPersonalInformation’ı tekrar kullanmaya gerek yok:
//class Student : IStudent, IPersonalInformation
//class Student : IStudent
{
public string Name { get; set; }
public byte Age { get; set; }
public void GoToSchool() {
Console.WriteLine(“Student {0} is now at school.”, Name);
}
public void GoHome() {
Console.WriteLine(“Student {0} is now at home.”, Name);
}
}
}
XXX
Kısacası takıldığım nokta şurası:
Microsoft’taki mühendisler neden ArrayList’i tanımlarken,
public class ArrayList : IEnumerable, ICollection, IList
demiÅŸler?
Neden public class ArrayList : IList dememiÅŸler?
Teşekkürler.
AÄŸustos 25th, 2010 at 13:00
Ahmet,
bu konuyu hiç kafaya takmamıştım. Teknik bir nedenden dolayı yapıldığını sanmıyorum. Tamamen anlaşılır, yalın bir tanımlama olsun diye yapıldığını düşünüyorum. Nitekim örneğini Reflection aracılığıyla bakarsan büyük ihtimalle şu şekilde görünecektir.
class Student : IStudent, IPersonalInformation
Teknik bir açıklama bulduğun paylaşabilirsen sevinirim.
Eylül 19th, 2010 at 19:22
Merhabalar Ahmet bey, “Önümüzdeki yıllarda SQL Server’in özellikle DBA’ler için bir yönetim kitabı çıkarmayı düşünüyorum.” demiÅŸsiniz; kitapla ilgili çalışmalara baÅŸladınız mı? BaÅŸarılar dilerim…
Eylül 21st, 2010 at 10:16
Emine Hanım,
henüz ASP.NET kitabı çıkmadı. Zamanı verimli kullanamadık. Belki ondan sonra böyle bir çalışmaya girebilirim.
Åžubat 24th, 2011 at 11:52
merhaba ahmet abi yazılım üzerine uzmanlaÅŸmak istiyorum asp.net,sqi,ajax üzerine bilgilerim var kendimi geliÅŸtiriyorum ve ÅŸuna inanıyorum kat cıkmak istiyorsan temelin saÄŸlam olması gerekiyor benim için bu kitabın faydası olurmu yoksa asp.net kitapları üzerinemi yogunlaşıyım..cevabını enkısa zamanda bekliyorum…
Åžubat 25th, 2011 at 22:59
Ünal merhaba,
evet yazılım için en önemli ÅŸey etkili bir alt yapının oluÅŸturulmasıdır. SaÄŸlam bir algoritma saÄŸlam bir teknik altyapı sana güçlü bir deneyim kazandıracaktır. Sana tavsiyem konsol uygulamalarıyla baÅŸlayıp Web’e kadar gitmendir saÄŸlam adımlarla. Ve bol bol proje geliÅŸtirmendir. Bunun için bu kitaplarla baÅŸlayıp bu kitapları sindirmen iyi olacaktır.
Mart 24th, 2011 at 13:36
Hocam merhaba ben Meltem. Veritabanı bölümünde okuyorum lise 3. sınıf. Visual Basic ile ilgili size bir kaç soru sorabilir miyim?
Mart 27th, 2011 at 19:34
Meltem Hanım,
sorabilirsiniz tabiki. Hatta bu mesajla yazmış olsaydınız yanıtlamaya çalışırdım.