Oracle View' ları için Otomatik DataTable' lar Üretmek

Üzerinde çalıştığımız ve uzun süredir canlı ortamda yaşamakta olan eski bir ürünümüz geçtiğimiz günlerde kod kalite taramalarından birisine girdi. Vaktinde her zaman olduğu gibi alel acele yazılmak zorunda olan kodlar bir kaç ana kategori altında çeşitli tipte ihlallere yakalandı. Bunlardan birisi de Strongly Typed DataSet kullanımına ilişkindi. [Dah fazla]

Bir Tip Ağacındaki Aynı İsimli Özelliklere Değer Atamak

Çalışmakta olduğumuz projelerde zaman zaman bizi zorlayan vakalar ile karşılaşıyoruz. Bu gibi durumlarda Google abimiz en büyük yardımcımız olabiliyor. Hatta pek çoğumuz sorunların çözümünde Stackoverflow gibi kaynaklardan yararlanıyor ya da daha deneyimli birisinden yardım istiyor. Ne var ki bazı vakaları kendimiz çözmeye çalışsak çok daha yararlı olabilir. [Dah fazla]

TCP Bazlı Soket Haberleşmesinde Sertifika Kullanımı

Günümüzde geliştirilen yazılım ürünleri çoğunlukla farklı uygulamalar ile de konuşmak durumunda. Sistemler sürekli birbirleri ile konuşan parçalar bütünü halinde genişlemeye devam ediyor. Akıllı cihazlar büyük ölçekli sistemlerin birer parçası olup çeşitli iş süreçlerinin işletilmesinde rol alıyor. Bu iletişimde servislerin de yeri var. [Dah fazla]

C# 6.0–Yeni Esintiler

İngilizce kelime anlamı Build olan inşa etmek(yapmak, kurmak) üzerine bu aralar uzak uzak diyarlarda da yapılmakta olan konuşmalar da var. Evet tahmin ettiğiniz gibi Microsoft’ un Build etkinlikleri dolayısıyla yazılım dünyasında hareketli günler yaşanmakta. Yeni ürünler, var olan ürünlere eklenen yeni özellikler, gelecek ile ilişkili planlamalar ve diğerleri. Konuşulabilecek ve üzerinde durulabilecek pek çok konu var. Benim dikkatimi çeken nokta ise bir süredir varlığından haberdar olduğumuz ve şu anda Roslyn’ in End User Preview sürümü ile Visual Studio 2013 üzerinden anında inceleyebileceğimiz C# 6.0 dili ile ilişkili yeni kabiliyetler. Bu yazımızda söz konusu yeteneklerden bir kaçına kısaca değinmeye çalışacağım. Amacımız öncelikli olarak söz konusu bu yeteneklerin ne olduklarını kavrayabilmek. [Dah fazla]

Excel İçeriğini DataSet Olarak Sisteme Katmak

Bazen geliştirme ortamımız ile yazılan uygulamanın taşınacağı ortamlar arasında ciddi ve keskin farklılıklar bulunur. İki resim arasındaki 9 farkı bulunuzdan öte, geliştirici ekiplerinin bu farkları bilerek kodlama yapmasında yarar vardır. Tabi bazı yazılım ekiplerinde Development sunucularının sanallaştırılmış versiyonları üzerinde geliştirme yapabilme imkanı da vardır. [Dah fazla]

Dosya Satır Sayısını Bulmak

Malum Bankaların sistemleri halen daha eski olabildiğinden, bölümler arası veya uygulamalar arası veri aktarmanın en popüler yollarından birisi olarak Text tabanlı dosya formatları göz önüne alınmaktadır. Bazen onlarca megabyte' ı aşan ve milyonlarca satırdan oluşabilen düzenli text dosyaları söz konusu olur ve bunların bir şekilde uygulamaların konuştuğu veritabanı ortamlarına işlenerek, ilişkisel veri bütünlüğü içerisinde yerlerini alması beklenir. [Dah fazla]

Sıralama Algoritmaları - Hangisi Daha Hızlı(Bubble,Quick,Insertion,Selection,Shell,Merge,Heap)

Özellikle bu algoritmaların dil bağımsız olan Pseudo Code içeriklerinden yararlanarak her hangi bir dile uygulanmaya çalışılması üzerine epeyce kafa yormuşuzdur. C, C++, Java, Basic, Pascal ve benzeri temel programlama derslerinde edindiğimiz bilgiler ile bu algoritmaları yazmak için çokça uğraşmışızdır. Tabi üzülerek söylemeliyim ki ben üniversite yıllarındayken Bubble ve Quick Sort sıralama algoritmalarından fazlasını ne yazık ki göremedim. [Dah fazla]

MigraDoc ile PDF Rapor Üretimi - Hello World

Özellikle veri odaklı(Data-Centric) çalışan uygulamalar düşünüldüğünde çeşitleri ne olursa olsun raporlama, işin oldukça önemli bir parçasını oluşturmaktadır. Ağırlıklı olarak rapora ihtiyaç duyan pozisyonlar, söz konusu raporları çeşitli ortamlarda görmek isteyen elemanlardır. Örneğin bunları Web arayüzünde açabilmeyi, Excel veya Word formatındaki dosyalara çıktı olarak alabilmeyi ve mobil cihazlarından takip edebilmeyi isterler. Günümüzün pek çok modern uygulaması zaten bu tip çıktıların alınmasını standart olarak olanak sunmaktadır. [Dah fazla]

Hanoi Towers Probleminin Recursive Çözümü

Merhaba Arkadaşlar, Bu görsel dersimizde eğlenceli Matematik oyunlarından birisi olan Hanoi Kuleleri problemini, Recursive bir metod yardımıyla nasıl çözebileceğimizi incelemeye çalışıyoruz. İlk olarak problemi tanımlıyor ve oyunun kurallarına kısaca bakıyoruz. Sonrasında ise 3 disk için gerçekleşt... [Dah fazla]

Recursive Fibonacci Neden Yavaş?

Merhaba Arkadaşlar, Okulda “Algoritma ve Veri Yapıları” dersinde ya da C# benzeri nesne yönelimli(Object Oriented) bir dili öğrenmeye başladığımız ilk zamanlarda, karşımıza muhakkak Recursive fonksiyonlar çıkmıştır(Çıkmaya da devam edecektir). Hatta en meşhur ola... [Dah fazla]

Kodla Saçmalamaca

Lafı fazla uzatmadan felsefemizi örnek bir fikir ile ilişkilendirip ilerlemeye çalışalım. Örneğin geliştireceğiniz Freelance uygulamalarınızda sıklıkla kullandığınız ama aslında dünya bakış açısına göre çok uzun bir zaman boyunca sabit kalan belirli veri içeriklerine ihtiyacınız oldu. Ülke adları, kodları, telefon alan kodları vb…Karar verdiniz ve dediniz ki, [Dah fazla]

Çerezlik Algoritmalar ve Extension Methodlar

Pek tabi yazılım dünyası söz konusu olduğunda var olan hemen her algoritmanın karşılığı olan kodlamaların geliştirilmesi de önemli bir mevzudur. Bilimsel uygulamalarda, finansal model çözümlerinde, endusturi alanındaki planlama tekniklerinde vb...Ben bu yazımda sizleri o karmaşık ve anlaşılması zor algoritmalar ile yormayacağım. Bunun yerine eğilenceli sayılabilecek ve özellikle oyun programlamada oyunculara keyifli dakikalar yaşatmanızı sağlayabilecek basit bir kaç algoritma üzerinde durmaya çalışacağım. Söz konusu algoritmaları birer Extension Method olarak geliştireceğiz(Extension Method kavramını hatırlayalım. C# 3.0 - Derinlemesine Extension Method Kavramı) Dilerseniz hiç vakit kaybetmeden ilk algoritmamız ile işe başlayalım. [Dah fazla]