P

Yüzbaşı
17 Eylül 2004
Tarihinde Katıldı
Takip Ettikleri
0 üye
Görüntülenme (?)
63 (Bu ay: 1)
Gönderiler Hakkında
P
18 yıl
Programlama Kitapları İnceleme ve Eleştiriler
Bu konu ile alakalı forumda açılan ve programlama hakkında, orda burda sorulara cevap niteliğinde yazdığım yazılardan dolayı mail'ime gelen sorulara yanıt olması düşüncesiyle böyle bir başlık açmaya karar verdim.
Dikkat ederseniz forumda son zamanlar "C# için kaynak, Hangi kitabı tavsiye edersiniz?, nerden başlamalıyım?" tarzında sorular ile karşılaşıyoruz.Bana mail atan kişiler ise "Ben bu işi kitap ile öğrenebilir miyim?, hangi kitapları tavsiye edersiniz?" tarzında sorular yöneltiyorlar.Evet bu iş kitap ile bir nebze öğrenilebilir.Fakat bunun bol bol örnek kod yazarak, makale araştırıp okuyarak takviye edilmesi gerekir.
Ülkemizde Türkçe döküman eksikliği olduğundan önüne gelen yazar programlama dilleri hakkında kitap çıkarıyor.Üstelik bunların birkaçı dışında hemen hepsi rant sağlama peşinde ve yeni başlayan kişilere abuk subuk yalnış bilgi içeren eserler sunuyorlar.Halbuki bu konuda eserler yazan yazarlar'ın Türkiyede yazılım sektöründeki boşluğu dolduracak kişilerin yetişmesinde, öğrenmesinde yada fikir sahibi olmasında oldukça önemli bir misyon üstlenmiş oluyorlar.Fakat birçoğu bunun farkında değil.
İstanbulda bir arkadaşım sayesinde elime bolca geçen kitapları inceledikten sonra burada sizlerle paylaşmayı uygun buldum.Böylece yukarıda bahsettiğim sorulara bir nebze yanıt vermiş olacağım ve bu işe yeni başlayanların hangi kaynakları tercih etmeleri, hangisini etmemeleri konusunda da fikir vermiş olacağım.
Şimdilik 7 adet adet kitabın incelemesini koyuyorum.Bu elime kitap geçtikçe ve bende inceledikçe devam edecektir.

< Resime gitmek için tıklayın >
Kitap Adı : C# 2.0
Yazar : Herbert Schildt
Yayın Evi : ALFA Yayınevi

Bu kitap C# dili üzerine bu güne kadar okuduğum en harika kitaplardandır ve C# için tek kaynak olduğunu rahatlıkla söyleyebilirim.Kitap C# hakkında hiçbirşey bilmeyen birinin bile anlayabileceği şekilde tasarlanmış.
Konular anlatılmaya temel seviyeden başlamış olmasına rağmen, kitap sonuna kadar bir veya iki adet resim görebiliyorsunuz!!
Piyasada bu konu üzerine yazılmış birçok kitap mevcut.Bu kitapları incelediğinizde birçoğunun genelde Windows kontrollerini anlattığını, C# dili ile Windows Tabanlı uygulamaların nasıl tasarlanabildiğini ele aldıklarını görürsünüz.ToolBox'dan Button seçilir, Form üzerine bırakılır, bu butonun Click event'ına C# dilinde MessageBox.Show(“Buton tıklandı”); yazdırılır ve bu konu “C# ile ilk programımız” olarak değerlendirilir.
Kitabın devamında ise Windows kontrolleri bol resimli olarak anlatılmaya devam edilir ama kullanılan dil C#'dır.Herbert Schildt'ın bu kitabı asla Windows kontrollerini anlatmıyor.Kitabın son bölümüne kadar tüm örnekler Console Uygulaması olarak hazırlanmış ve tam anlamıyla C# dili anlatılıyor.Yazar kitabın sonunda ise C# ile bir GUI uygulaması nasıl oluşturulur konusuna yine bir farklı bir şekilde değinmiş.Visual Studio'da ToolBox'dan bir butonu sürükleyip bırakın, butonun properties bölümünden Click event'ına çift tıklayın ve hazırlanan methoda MessageBox.Show(“Şimdi ben öğrendim mi?”); kodunu girin şeklinde anlatacağına, direkt kodlama yaparak button sınıfından bir nesne oluşturun, bu nesnenin Click event'ına daha önce EventHandler delegesi ile aynı imzada hazırladığınız methodu ekleyin, hatta kafanız bozulursa bu şekilde bir tane daha ekleyin button tıklandığında çift method çağrılsın, daha sonra bu butonun Location özelliğini ayarlayarak form'un neresinde gözükmesini istediğinizi belirleyin, ardından bunu form'un Controls koleksiyonuna Add methodu ile ekleyin ve uygulamayı çalıştırın tarzında son derece detaylı bir şekilde işin temelini anlatıyor.Siz daha önce delegeleri ve event'ları detaylı öğrendiğinizden, event'ların delegelerin işaret ettiği method'ları çağırdığını ve her event'ın bir delege'ye ihtiyaç duyduğunu biliyorsunuz.
Böylece bir uygulama için eklenti yazarken “ya şimdi ben bu eklenti ile ana form'un menüsüne yeni bir seçenek nasıl eklerim, bunu nasıl kodlarım, form nerde, propertiesGrid nerde” diye saçınızı başınızı yolmuyorsunuz.Çünkü C# dilini temelden öğrenmiş ve herşeyi kodlayabilecek kıvama geliyorsunuz.
Kitapta aynı zamanda .NET Framework sınıflarından en önemli olanlarıda geniş örneklerle incelenmiş.
Uzun lafın kısası bu kitap Türkiyede C# konusunda tek olarak gösterilebilecek bir kitap.Bu dili öğrenmeyi kafaya koymuş birisi mutlaka bu kitap ile başlamalı.Eğer Windows kontrollerini tanımak amacında ise, C#'ı önce bu kitap ile öğrenmeli ardından bu kontrolleri anlatan bol resimli kitapları incelemelidir.

< Resime gitmek için tıklayın >
Kitap Adı : Her yönüyle C#
Yazar : Sefer Algan
Yayın Evi : Pusula Yayınları

İşte C# üzerine yazılmış, incelediğimde çok beğendiğim kitaplardan birisi daha.Sefer Algan'nın yazmış olduğu “Her yönüyle C#” konulu bu kitap şu anda 5. baskısı ile raflarda yerini almış.Bir önceki yorumladığım kitap gibi bu kitap'da C#'ın temellerini anlatıyor. Herbert Schildt'ın C# 2.0 kitabı kadar detaylı bulmasamda en az onun kadar C#'ı detaylı anlatan bir kitap.En azından “Türk yazarların C# hakkında yazdığı kitapların en güzeli” diyebilirim.Bu kitapda C# dilini anlatıma temelden başlayarak, aşırıya kaçmamış örnek resimlerle konuları pekiştiriyor.Yine öncelik olarak ilk yorumladığım kitabı gösterebileceğim gibi, bu kitabı alarak'da C# dilinin temellerini eksiksiz öğrenebilirsiniz.

< Resime gitmek için tıklayın >
Kitap Adı : Borland C++ Builder
Yazar : Herbert Schildt
Yayın Evi : ALFA Yayınevi

Bu kitap ilk yorumladığım C# 2.0 yazarına ait C\C++ konusunu ele almış bir kitap.Yazarın önceki kitaplarında da olduğu gibi anlatım şekli ve konular çok farklı.Bu kitabı aldığınızda Borland firmasının derleyicisi ile kod yazmaya başlayacağım diyorsanız çok yanılıyorsunuz.Kitapta öncelikle C dili anlatılmaya başlanıyor ve bunu yeni başlayan birinin bile anlayabileceği bir şekilde yapıyor.C dilini anlatmayı bitirdikten sonra ANSI/ISO'da tanımlı olan ve olmayan bir çok fonksiyon örnek kodlarla anlatılmaya başlanıyor.Son olarak nesne yönelimli programlamaya giriş yapılıyor ve C++ anlatılmaya başlanıyor.Kitabın sonunda ise Borland derleyici ile örnek bir GUI uygulaması geliştirilmesi anlatılıyor.
Bu kitap sadece C ve C++ dilinin temellerini anlatıyor ve yeni başlayanlar için tercih edilebilir bir kaynak.Fakat piyasada daha sonra inceleyeceğimiz gibi özellikle C üzerine yazılmış, üstelik Türk yazarlar
tarafından yazılmış daha sağlam kaynaklar mevcut.Örneğin bu kitabı bitirdiğinizde C++ ile DLL yazamıyorsunuz fakat bu dilin temellerini öğrenmiş oluyorsunuz.Yazarın diğer kitaplarınıda incelerseniz bunun genel tekniği ve prensibi olduğunu anlayacaksınız.

< Resime gitmek için tıklayın >
Kitap Adı : Yazılımcılar İçin SQL SERVER 2005 ve Veritabanı Programlama
Yazar : Yaşar Gözüdeli
Yayın Evi : Seçkin Yayıncılık

SQL SERVER 2005 öğrenmek isteyenler için mükemmel bir kitap.Tabii ki her kitap gibi bu kitabında bazı kusurları yok değil.Örneğin ilk bölümlerde ele alınan LOGIN ve USER işlemleri çok açık bir şekilde açıklanmamış.T-SQL ve Managament Studio ile USER, LOGIN oluşturma, yetkilendirme gibi konular anlatılsada çok detaya girilmemiş ve bu işe yeni başlayanların kafasında soru işaretleri oluşturacak şekilde tanımlanmış.Aynı zamanda SQL için çok önemli olan Remote Connection konusuna hiç değinilmemiş, SQL Server'ın uzak bağlantı için yapılandırılması (SQL Server Configuration Manager, SQL Server Surface Area Configuration) konularına hiç girilmemiş.
Bunun yanısıra kitapta çok ayrıntılı bölümlerde var.SQL Server'ın disk yönetimi ve INDEX'ler konusu, SQL'e başka bir güç katan CLR desteği gibi daha birçok konu kafa karıştırmayacak şekilde, yeteri kadar detaya girilerek anlatılmış.Fakat tüm bunların yanı sıra bazı bölümlerdeki konuları anlatırken kullanılan ifadeler yeni başlayanların anlamasını güçleştirecek şekilde yazılmış.Fakat profesyonel kullanıcıların, daha önce SQL'in önceki sürümleri ile çalışmış DBA'lerin bu bölümlerde sıkıntı yaşayacağını sanmıyorum.Üstelik yazarın sitesinde kitap'da eksik gördüğünüz birçok konuya yer verilmiş.Ayrıca SQL ile birçok örnek kod ve makaleler bulunuyor.Kısacası bu kitap SQL SERVER 2005 öğrenmek veya sıfırdan başlamak isteyen kişiler için kesinlikle öncelikli olarak tercih edilmesi gereken bir kitap.

< Resime gitmek için tıklayın >
Kitap Adı : Adım Adım ADO.NET 2.0
Yazar : Rebecca M. Riordan
Yayın Evi : Arkadaş Yayınları

Microsoft baskısı olan bu kitap ile ADO.NET 2.0 konusu harika bir şekilde anlatılmış.Piyasada bulunan ADO.NET konulu birçok kitaptan çok daha kapsamlı olduğunu söyleyebilirim.Fakat yazarın da dediği gibi bu kitabı bitirdiğinizde ADO.NET uzmanı olamazsınız, ancak veri tabanı etkileşimli uygulamalar geliştimek için birçok temel bilgiye sahip olabilirsiniz.
“Burada samimi bir uyarı yapmak istiyorum:Bu kitap sizi ADO.NET uzmanı yapmayacaktır.(Bu kadar kolay olmasını çok isterdim)Bu kitap ADO.NET ortamının temellerini anlamanız için size klavuz olacaktır.
Rebecca M. Riordan

Kitaptaki tüm konular ve örnek kodlar hem C#'da hemde Visual Basic'de verilmiş.Bu sebeple hem VB dilinde
hemde C# dilinde kodlama yapanlar için iyi bir tercih olacaktır.Eğer veri tabanı ile etkileşimli uygulamalar oluşturmayı öğrenmek ve ADO.NET'in temeli olan birçok konuyu anlamak istiyorsanız bu kitap harika bir başlangıç olacaktır.

< Resime gitmek için tıklayın >
Kitap Adı : C#.NET 2.0 ile Internet&Intranet Programlama
Yazar : Nihat DEMİRLİ & Yüksel İnan
Yayın Evi : Palme Yayıncılık

Kitabın yazarları eğer bu yazımı okursa kendileri ile burada özel olarak konuşmak isterim.Kitap C#.NET ile Internet uygulamaları geliştirmek isteyen ve bu iş için .NET Framework'de yer alan sınıfları kullanmak isteyen kişiler için hazırlanmış ve birçok sınıf incelenmiş.Fakat işin kötü yanı bu amaçta pek başarılı olunamamış.
Bu zamana kadar öğrendiklerime ve C# bilgime dayanarak söylemeliyim ki, kitabın neredeyse tamamı yanlış bilgi içeriyor.Üstelik kitabın tasarımı, kullanılan Türkçe'de pek iç açıcı değil.Kod örnekleri düzenlenmemiş ve birbirine girmiş bir halde olduğundan okunması bir hayli güç.Üstelik bazı kodlar hakkında hiç açıklama yapılmadığı gibi bazı kodlar yalnış açıklanmış.Örneğin Thread'ler konusu anlatılırken bir kod parçasında Thread sınıfının GetNamedDataSlot() ve LocalDataStoreSlot() methodları kullanılmış fakat bunların ne olduğu hiçbiryerde açıklanmamış.Ayrıca kitap içerisindeki yine Threadler'le ilgili bir kısımda kabul edilemez yalnışlıklar mevcut.Bunun yanısıra diğer soket programlama ile ilgili konularda da kabul edilemez hatalar yapılmış.Örneğin Socket sınıfının BeginAccept() isimli methodu için yazarların yazmış olduğu tanımlama şu;
Bu method'a parametre olarak girilen prosedür, henüz içerik gönderilmeden sadece bağlantı aşamasında otomatik olarak işletilecek olan kodlarınızı belirlemenizi sağlayacaktır.Bu method için yapılan bu ifade kabul edilemez bir açıklamadır ve yanlış bir bilgidir.Normalde Accept() methodu soket kabul etme methodudur ve çağrıldığında bir soketten bağlantı isteği gelene kadar mevcut kanalı bloke eder.Bir bağlantı isteği geldiğinde ise Accept() methodu bağlantı sağlanan soket ile ilgili bilgiler için bir Socket instance'ı oluşturur ve bu bilgileri bu instance ile sarmalayarak geri döndürür.Fakat bağlantı kabul edilene kadar, kanal bloke olur.Bu durumda program o satırda kalacağı için diğer işlemlere yanıt vermeyecektir.Bu durumu önlemek için Socket sınıfının BeginAccep() methodu kullanılır.Bu method, AsyncCallBack delegesi ile aynı imzada bir method adresi verilerek çağrılır ve geriye IAsyncResult arayüzünde bir nesne döner.Bu sırada socket bekleme işlemi “ayrı bir kanalda” yapılır.Bağlantı isteği geldiğinde ise BeginAccept() methodunda AsyncCallBack delegesi ile belirlenmiş method çağrılacaktır.Bu method'un IAsyncResult parametresine otomatik olarak BeginAccept()'den dönen IAsyncResult nesnesi geçilir.CallBack methodu içinde bu nesnenin AsyncState özelliği çağrılarak, BeginAccept()'in son parametresine geçirilen socket nesnesi elde edilir ve EndAccept() methodu çağrılarak sonuçlar ortama alınır.
Kitapta bu şekilde doğru bilgiyi bir kenara bırakın, bu kadar uzun açıklamaları bulmak neredeyse imkansız.
Bu denli uzun olmasada bu method için “Bağlantı bekleme işlemini ayrı bir thread açarak yapar.Böylece program diğer işlemlere yanıt verebilir” şeklinde bir açıklama yapılabilirdi.Bu sadece basit bir örnektir.Kitapta
baştan sona kadar bu şekilde hatalar mevcut.Kısacası eğer C# ile soket programlama ve Internet uygulamaları hakkında hangi sınıfların kullanıldığını merak ediyor ve fikir sahibi olmak istiyorsanız bu kitabı tercih edebilirsiniz.Lakin bu kitapdaki bilgiler doğrultusunda bu konuyu öğrenmek sizleri yanlış yönlendirecektir.

< Resime gitmek için tıklayın >
Kitap Adı : .NET'e Geçiş Klavuzu
Yazar : Katre, Halari, Surapaneni, Gupta, Deshpande
Yayın Evi : ALFA Yayınevi

Bu kitap daha önce C++, Visaul Basic ve ASP ile çalışanların bu dillerin .NET versiyonlarına geçmeleri konusunda rehberlik etmek için hazırlanmış.Bu yüzden kitap uzamanları hedef alıyor bazı yerlerde ağır anlatımlar var.Bu saydığım diller için .NET versiyonları arasındaki farklar, yenilikler ve değiştirilen bazı önemli konular çok güzel bir şekilde anlatılmış.Ayrıca kitabın başlangıcından sonuna kadar konular arasından sürekli .NET Teknolojisi'nin yeniliklerinden bahsediliyor.
Daha önce bu diller ile program geliştirmiş kişilerin .NET teknolojisine geçerken dikkat etmesi gereken konuları, eski versiyonlarda yazdıkları kodları ise .NET'deki versiyona nasıl taşıyabilecekleri gibi bilgileri edin-
mesi için eksiksiz bir kaynak.

Kitap incelemeleri ve eleştirileri devam edecek...
P
19 yıl
DVD COMBO - CD READ/WRITE SORUNU
Arkadaşlar yaklaşık 1 yıl önce OEM bir DVD Combo almıştım.Bir sabah bilgisayarımı açtığımda çok ilginç bir sorunla karşılaştım.Faturasını filan bulsam götürücem ama kaybettim.

Şimdi benim Combo LG marka 16X DVD okuyor, 52x32x52'de CD yazıyor/okuyor.Fakat bilgisayarımı açtığımda bir CD taktım ve bunu okumadığını gördüm.Bozuldu herhalde CD dedim başka bir tane denedim olmadı.Ne kadar sağlam CD varsa denedim okumuyor..Üstelik CD görmediği için yazma işlemide yapamıyorum.NERO'yu açıyorum, boş bir CD takıp yaz dediğimde CD'yi bulamıyor.Optik Gözde bir sorun var diycem ama DVD'leri çatır çatır okuyor.
Ben en son olarak driver'lardan şüphelendim.Combo'yu söktüm iş yerimdeki PC'imde denedim sorun aynı.Şimdi son olarak cihaz frimware'ından şüpheleniyorum ama LG sitesinden son güncel firmware indirip yüklemek çok gözüme gelmedi.Çünkü en azından DVD okuyor ondan da olmayayım.

Bu konuda yardımlarınızı bekliyorum.
P
19 yıl
ADIM ADIM USB
Arkadaşlar bir süre önce yazmaya başladığım USB ile ilgili e-book'un şu an 50 sayfası bitti ve ben bazı sebeplerden dolayı bu e-book'u parça parça makale olarak yayımlamaya karar verdim.Şimdi aşağıda vereceğim link'deki rar dosyasında neler var öncelikle bundan bahsedeyim.

ADIM ADIM USB.pdf
Bu PDF yukarıda da behsettiğim gibi e-book'un ilk 50 sayfalık kısmını oluşturuyor.Zamanla kalan kısımlar tamamlanacaktır.Fakat okuyacağınız bölümlerde USB transferin detayını anlayacağınızı umuyorum.

ADIM ADIM USB - PIC USB Firmware
Bu dizin içinde PIC18F4550 için yazdığım USB kodları yer alıyor.Buradaki kodlar USB haberleşmesi için iskelet kodlardır ve birkaç adet header ve kod dosyasından oluşmaktadır.Program C18 ile yazılmıştır.

ADIM ADIM USB - USB TEST UYGULAMASI
Bu dizinde devrenizi kurduktan ve PIC kodlarını derleyip yada önceden derlemiş olduğum Hex dosyasını alıp PIC'e yükledikten sonra ve PC'nizin USB portuna takıp windows'a tanıttıktan sonra, bu devre ile haberleşecek DotNET C# da yazdığım USB uygulaması yer almaktadır.Bu program ile devrenize bilgi gönderip-okuyabilir ve daha sonra bahsedeceğim diğer şeyleri yapabilirsiniz.

ADIM ADIM USB UYGULAMALAR
Bu dizinde önceden belirlediğim birçok uygulamayı koyamadım ama zamanla koyacağım.Şimdilik sadece USB Motor Kontrol Uygulaması, USBAutoRun Uygulaması ve USBManagement Library var.

* USB Motor Kontrol : PIC Kodları (iskelet kodlar üstüne yazılmış) ve yine C# da yazdığım uygulama yazılımı yer almaktadır.

* USBAutoRun :
Bu uygulama herhangi bir devre içermemekte sadece yazılımsal bir uygulamadır ve tarafımdan C# da yazılmıştır.Peki bu program ne iş yapıyor;

Bazı CD'lerin içerisinde Autorun.inf diye bir dosyaya rastlamışsınızdır.Bu dosya çok basit bir yapıda olup CD, sürücüye takıldığında otomatik çalıştırılacak programı ve birde CD etketinde gösterilecek icon'u tanımlar.Böyle bir şeyi USB Flash disklerimiz için yapmak istediğimizde önümüze bazı engeller çıkıyor.Bu sorun ise Windows bir USB disk takıldığında Autorun dosyası içindeki icon anahtarını değerlendirip, open anahtarı ile belirtilmiş exe dosyasını değerlendirmemesidir.İşte bu sorunu çözmek için bu aracı geliştirdim.Programı çalıştırdığınızda system tray'de yerini alıyor ve USB disklerin sökülüp-takılmasını dinlemeye başlıyor.Dinleme işlemini sürücü takibi değil, direkt Windows'un mesaj sistemine müdehale yaparak hallediyor.
Araç Kutusu seçeneği herhangi bir USB disk takıldığında disk içindeki tüm exe'leri listeliyor ve bu menüyü kullanarak bu programları çalıştırmanızı sağlıyor.Böylece tüm programlarınızı tek bir arayüzden yönetebilirsiniz.Bu cihazı kaydet ve Bu cihazı kaldır seçenekleri ise disk içerisindeki inf dosyasını değerlendirme işlemini sadece sizin programa kaydettiğiniz USB disk için yapmasını sağlıyor.Bunu yapmak için USB disk'inizi porta takın ve aracın sesli uyarı vererek icon'unu değiştirmesini bekleyin.Daha sonra system tray'deki icona sağ tıklayıp yukarıdaki menüyü açın.Cihaz algılandığından Bu cihazı kaydet seçeneği aktif olacaktır.Bu seçeneğe tıklayarak cihazınızı programa kaydedebilirsiniz.Bu işlemden sonra hangi disk'i takarsanız takın bu disk sizin olmadığı sürece inf dosyası değerlendirilmeyecektir.Yine bu menüden cihazı kaldırabilirsiniz.Otomatik Başlangıç seçeneğini kullanarak bu aracın windows'la başlamasını sağlayabilirsiniz.
Auturun Dosyası oluştur seçeneğini icon dosyanızı, otomatik çalıştırmak istediğiniz programı seçip bir Autorun dosyası oluşturabilmenizi sağlıyor.Hedef dizini kutusu eğer sistemde bir USB disk mevcut ise bunun sürücü adını içerecektir.Bu durumda oluşturduğunuz inf dosyası direkt disk'e kopyalanır.Fakat icon ve exe dosyası kopyalanmaz.Bu dosyalarında inf dosyası ile koyalanmasını istiyorsanız Hedef dizine full paket oluştur kutucuğunu aktif yapmalısınız.Kaydet butonuna basarak işlemleri tamamlayabilirsiniz :)

* USB Management Library :
Bu uygulama önceki geliştirdiğim tüm uygulamaların omurgasıdır.Bu DLL'de C# da yazdım ve tüm USB uygulamaları için kullanılacak temel bileşendir.Bu DLL içinde HID sınıfı cihazlarla haberleşecek ve daha birçok şeyi yapacak methodlar ve özellikler kodlanmıştır.Bu DLL'i kendi yazdığınız uygulamarda kullanabilmek için aşağıda link'ini verdiğim pdf dosyasını okuyun.Bu makalede bu DLL içindeki methodları ve özellikleri uygulamalarınızda nasıl kullanabileceğinizi anlatan ve aynı zamanda PIC İskelet kodlarını nasıl kullanacağınızı gösteren konular bulunmaktadır.
USBManagement Library yani umng.dll, tüm uygulamalar için temeldir ve önceki yazılan tüm uygulamalarda bu DLL kullanımıştır.

TEST ARAÇLARI
Bu dizin içinde tüm hazırlıkları bitirdikten sonra USB cihazınızı test etmek, USB cihazınız ve yukarıda verdiğim TEST uygulaması arasındaki veri trafiğini görebilmeniz ve inceleyebilmeniz için bazı test araçları mevcut.Bu araçların kullanılmasını hemen hemen bitirmek üzere olduğum makalede detaylı olarak anlattım ileriki günlerde link'i vereceğim.ADIM ADIM USB makalesindeki anlattığım konuları bu test araçları ile gözünüzle görerek daha iyi anlayacaksınız.

DRIVER GELİŞTİRME
Bu bölümde ise özellikle sistem programlama ile uğraşanlar için önemli dökümanlar mevcut.

- Microsoft Press Windows Driver Model Programming
- Windows Internals
- Modern Operating System ve diğerleri

Amacım elektronikle hobi veya profesyonel olarak ilgilenen kişilerin, cihazlarını USB arabirimi ile geliştirmelerini sağlamak için gerekli elementleri sağlamaktır.Aynı zamanda bu elementleri kullanarak herkezin kafasındaki devresini USB arabirimi ile tasarlayıp buraya link vermesini istiyorum.USB Management Library(umng.dll) ve PIC İskelet kodları bu iş için temeldir.Bu iki elementi uygulamarınızda nasıl kullanmanız gerektiğini anlatan makale yazı sonunda.Bı ortak komponentleri kullanarak herkezin kendi uygulamasını geliştirmesini istiyorum.Yani umng.dll ve PIC İskelet Kodları ile yapımış projeler.....

Herkezin katılımını bekliyorum.Tüm elektronikçilere faydalı olması dileğiyle..

USB Paket
Bu pakette driver dökümanları hariç yukarıda sayılan tüm componentler bulunmaktadır.

USB Management Library ve PIC Kodları Kullanım Klavuzu
Bu döküman USB uygulamalarınızda kullanabilmeniz için yazdığım USBManagement Library(umng.dll) içindeki method ve özellikleri nasıl kullanmanız gerektiğini anlatıyor.

Windows Internals
Sistem programlama ile ilgilenen kişilerin başlangıç olarak okuması gereken bir döküman...

Modern Operating System
Yine sistem programlama ile uğraşanların Windows Internals adlı dökümanı okuduktan sonra, okuması gereken bir döküman

Programming Windows Driver Model
Bu gerek USB için gerekse diğer donanımlar için driver yazmak isteyen ve bu işe meraklı kişilerin mutlaka okuması gereken Microsoft Press baskılı döküman(CD'si yakında...)

Arkadaşlar aşağıdaki link'e yeni bitirdiğim son makaleyi koyuyorum.Bu makaleyi anlayabilmeniz için ve size faydalı olabilmesi için USB TEST devresini kurmanız ve USB TEST UYGULAMASI adlı programı PC'nizde hazır bulundurmanız gerekiyor.Bu makale önceki linkte verdiğim programların ve ADIM ADIM USB adlı makalenin anlaşılabilmesi için çok önemlidir.

Bu makale USB cihazımızın sisteme tanıtılırken Windows tarafından gönderilen istek paketlerinin ve cihazın verdiği yanıtların gözlemlenmesini içeriyor.Bu gözlemleme işi Device Monitoring Studio aracı ile yapılıyor.Önceki makalemde anlattıklarımı ve USB transferinin iç yüzünü bu USB DEBUG makalesinde gösterilenlerle daha iyi anlayacağınızı umuyorum

USB DEBUG

Devam edecek.....
P
19 yıl
C#,C++ ve OOP
Arkadaşlar yakın bir arkadaşımla girdiğimiz fikir alışverişini buraya dökmek ve sizlerinde fikirlerini almak istedim.Şu an "PROGRAMCI" deyimi birçok insan tarafından çok farklı bir şekilde değerlendirilmekte.Arkadaşımın fikri bir programlama dili ile uğraşıyorsak onun A'dan Z'ye tüm yönlerini bilmemizin gerekmediği sadece birkaç konu üzerinde yoğunlaşarak o dil hakkında "Ben bu dili biliyorum" diyebileğimizi savunuyor.Üstelik bu konular da,
en başta OOP olmakla beraber C#'da birçok önemli ve temel olduğuna inandığım konudur.Üstelik arkadaşım C#, C++'ın OOP ile alakası olmadığını ve OOP'nin başka bir konu olduğunu vurguluyor.
Ben ise OOP = C# olduğunu ve onun gerek duymadığı birçok konunun YALANIP YUTULMASI ve ondan sonra "Ben C# Programcısıyım" diyebileceğini savunuyorum.Bu dediğim konular ise en basitleri;

OOP - Kalıtım, Çok biçimlilik... (Bunları uygulamak için C#'da arayüzler, virtual methodlar, devralınmış sınıflar..)
Delegeler, Thread'ler, Asenkron Programlama Modeli, Jenerikler, Koleksiyonlar, numaralandırıcılar, iteratörler, P/Invoke, Reflection, Unsafe kodlar, indexleyiciler vb..

Bu yukarıda saydıklarım C# en basit ama en temel konularıdır.Daha buna birçok şey ekleyebilirim ama şimdilik bu kadarını yazdım.Arkadaşım bu konuların "Ben C# Programcısıyım" demek için bilmesinin gerekmediğini, sadece onlara ihtiyaç duyduğunda bakıp, öğrenip uygulayabileceğini savunuyor.Üstelik yukarıda saydığım ve sayacağım birçok konuyu bilmediği halde 'C# biliyorum ve bildiklerim bana şimdilik yetiyor, gerektiğinde öğrenir yapabilirim diyor."İş hayatında da bu şekilde yol alabileceğini savunuyor.

Benim fikirlerime gelince...
Ben yukarıda saydığım ve istenirse daha da çok sayacağım C# konularını "Ben C# Programcısıyım" diyen birinin yalayıp yutmasını ve kendisini sürekli geliştirmeye devam etmesini, C# ile alakalı kendisine anında söylenecek bir şeyi oturup çatır çatır yazabilmesini, deminde değidiğim gibi OOP = C# olduğunu ve benim savunduğum mantıkta olmayan bir insanın iş bulabilsede orada tutunamıyacağını savunuyorum.Yani ben PROGRAMCIYIM diyebilmek için C#'ın ve NET teknolojisinin inciğini cıncığını bilmesi gerektiğini söylüyorum.
Bu konuları ve daha saymadıklarımı bilmeyen bir insanın buton programcısı olduğunu savunuyor ve bu işin sadece if ve else ile olamıyacağını savunuyorum.

Bu konuda fikirlerinizi bekliyoruz arkadaşlar.(Olay bir tartışma değil sadece fikir alışverişidir..)
P
20 yıl
ÇOK ÖNEMLİ TÜM ELEKTRNİKÇİLER OKUSUN
@profAhmet nicli arkadaşımızın özelime yazdığı mesajı burda yayınlamak istiyorum.Eğer benim mesajımda da "küfür" içeren yerler varsa burda yayınlasın.Bu kişi için bu sitede gerekn şey yapılmazsa ben bu site için gerekeni yapıcam.Arkadaşlar gerçekten çok ciddiyim.Bu forumda artık böyle terbiyesiz insanlar takılıyorsa kapansın daha iyi.

@profAhmet'in mesajı:

---------------------------------------------------------------------------------------------------------------------
konu admin tarafından görülüp müdahale edildiği için sakıncalı olan bu bölüm editlenmiştir...
---------------------------------------------------------------------------------------------------------------------

Bu adamla daha fazla muhattab olmak zorunda olursam özel mesaj alırsam yada burdan yeniden hakarete uğrarsam işin boyutu çok değişek ve birçok kişinin başı ağrıyacak.Bu yazdıkları hazmedilir cinsden değil.Hepinizin anası bacısı var düşünün.
P
21 yıl
YAPMAYINNNNNNNNNNNN
arkadaşlar kusura bakmayın ama bir kaç şey demek istiyorum burası gerçekten harika bir ortam fakat laçkalaşmaya başladı önüne gelen topic açmış abuk subuk şeyler soruyo adamın biri demiş ben flash bellek yapcam göstersenize ne bu ya bi adam demiş ben uçak yapcam bir yani daha ciddi şeylerle uğraşalım yeni başlayan arkadaşlar için ELEKTRONİK başlıklı bir bölüm açalım öğrenmek isteyen arkadaşlar buraya mail atsın ve yardımcı olalım çok kirlendi burası hatta mail adreslerimizi verelim daha detaylı ilgilenelim ben gönüllüyüm ve bir bölüm daha açalım GENEL SORULAR diye burayada flash bellek yapmak isteyen arkadaşlar ve onun gibiler mail atsın nasıl kötü bir fikir mi
P
22 yıl
çok lazım
slm ben be mikrodenetleyicilerle (genelde pıc ve 8052-basıc kullanırım) uğraşan bir elemanım istediğim herşeyi yapabilecek donanım ve yazılım bilgisine sahibim bozulan elektronik cihazım olduğu zaman hep kendim yaptım şimdide bilgisayarımın anakartı bozuldu ve kendim yapmak istiyorum mikroişlemci,epromlarla filan uğraştığımdan anakartın temelini biliyorum ama sizde takdir edersiniz ki katrın üstünde bi yığın ara birim ve diğer yongalar mevcut sizden isteğim bir anakart şeması böylece uğraşırsam hem kendi anakartımı tamir eder hemde biligime bilgi katarım anakartın tüm birimlerini takip edebileceğim yani kısacası anakrtın devre şemasını arıyorum bilen arkadaşlar site ismi filan yada elinde devre şeması bulunan bana yollarsa sevinirim
DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.