Articles

Mac OS X GCC Compiler ile C++ Derlemeye Giriş

Bir programcı olarak yeni bir ortamı ve yeni bir işletim sistemini keşfe çıkmak gerçekten çok heyecan verici. Keşfedilecek o kadar çok şey var ki insan neresinden başlayacağını şaşırıyor. Unix tabanlı sistemler genelde görsellikle arası pek iyi olmaması ile ünlü iken, OS X hem Unix tabanlı bir işletim sistemi hem de Windows’tan da daha görsel ve kolay bir sistem. Unix tabanlı olmasının en güzel yanlarından birisi de güvenli ve sağlam olmasının yanı sıra hepimizin çok sevdiği...

Continue Reading

Mac OS X Rar Kurulumu

Yeni bir Mac kullanıcısı olarak yeni tanıştığım bu harika işletim sisteminde sürekli yeni şeyler keşfetmek bana heyecan veriyor. Windows kullanıcısı iken severek kullandığım WinRAR'ın komut satırı araçlarını neden OS X'te de kullanmayayım dedim. Bildiğim kadarıyla OS X'te varsayılan bir rar açıcısı bulunmuyor. Öncelikli olarak sitesinden programı indirelim: curl -O http://www.rarlab.com/rar/rarosx-5.0.1.tar.gz Daha sonra arşivimizi klasöre çıkartalım için girelim: tar -zxvf rarosx-5.0.1.tar.gz cd rar/ install komutu yardımı ile programı kuralım: sudo install -c -o $USER unrar /usr/bin...

Continue Reading

Node.js Nedir? - Göz Gezdirme

Ne? Merhaba, bu yazımda size Node.js’ten bahsetmek istiyorum. Node.js’i merak edenler ve bir yerden başlamak isteyenlere giriş niteliğinde fazla kafa karıştırmayan bir yazı yazmak istedim. Herkesin öncelikle sorduğu Node.js nedir sorusunun cevabını zihinlerde aydınlatmak istiyorum. Node.js deyince aklımıza sanki jquery.js, knockout.js, underscore.js gibi birşey geliyor ama neyse ki değil. En azından şimdilik ne değildir onu biliyoruz. Node.js, Google tarafında Chrome için yapılmış olan V8 JavaScript derleyicisini temel alan bir JavaScript derleyicisidir. Karışık oldu değil mi?...

Continue Reading

Pagify.Mvc JQuery Plugin

Aylar öncesinde ASP.NET MVC üzerinde Knockoutjs ve PagedList’i birleştirerek sayfalandırma özelliği bulunan bir ajax tablo yapmaya yarayan bir örnek paylaşmıştım. O zaman paylaştığım örneği daha sonra biraz daha geliştirip JQuery plugin ‘i olacak şeklinde GitHub üzerinde açık kaynak olarak paylaştım. Bu süre içinde sadece bir kez revizyondan geçirmiş olmama rağmen pagify.mvc adını verdiğim örneğim çok iyi bir ivme kazandı ve dünyanın çeşitli yerlerinden olumlu geridönüşler içeren emailler almaya başladım. Bu da ilk başta öylesine paylaşmış...

Continue Reading

Git, GitHub ve BitBucket

Bu yazımda son dönemde, özellikle açık kaynak projelerinde oldukça popüler olan kaynak yönetim sistemlerinden Git ve en popüler sunucularından GitHub ve BitBucket hakkında bahsetmek istiyorum. Nasıl günlük hayatımızda giydiğimiz kıyafetlerin dönem dönem değişen bir modası varsa aynı şekilde yazılım dünyasının da kendine has moda davranışları ve trendleri var. Nasıl proje yönetim metodolojilerinde bir zamanda şelale popülerdi ama süresi geçti ve yerini çevik yöntemlere bıraktı; versiyon ve kaynak kontrol yöntemleri olarak CVS, SubVersion ve proje hosting...

Continue Reading

İlk Yardım

İlk kez bilgisayarlardan uzak bir konudan bahsetmek istiyorum. Başlıktan da anlaşılacağı üzere konum ilk yardım. İlk yardım oldukça hassas bir konu olmasına rağmen ülkemizde sürekli göz ardı edilen ve maalesef cahillik düzeyimizin en hat safhada olduğu konulardan birisi. Üniversite mezunu eğitimli bir birey olarak kendim için bile konu hakkında zır cahil olduğumu söyleyebilirim. Ta ki yaklaşık iki hafta önce ofis olarak çaycımız, ve müşteri temsilcilerimizden tutun yöneticilerimize kadar aldığımız ilk yardım eğitimine kadar. Anlaştığımız ilk...

Continue Reading

C#, ASP.NET için Data Cache

Her ne kadar seçmiş olduğum başlık ASP.NET içersede bu yapıyı WPF, WinForms, WindowsServices, ASP.NET MVC gibi .NET ‘in hakim olduğu heryerde kullanabileceğinizi öncelikle belirtmek isterim. İnternet sitelerimizi OutputCache ile önbelleğe aldık ancak sık sık veritabanından aynı veriyi çekmek veya IO işlemleri gerçekleştirmek ciddi performans problemlerine sebep oluyor. Bunu aşmak için verileri önbelleğe almak oldukça geçerli bir çözümdür. .NET kütüphanesindeki ObjectCache sınıfı bu işin biçilmiş kaftandır. Bu yazımda sizlere ObjectCache sınıfını kullanarak veriönbellekme işlemi gerçekleştirmek için...

Continue Reading

MVC4 ile Upload Edilen Dosyaları Asenkron Olarak Kaydetme

C#’ta asenkron metotlar her zamankinden daha popüler. Dosya kaydetmek gibi işlemciyi meşgul edebilecek bir işlem için asenkron metot yazmak akıllıca bir çözüm gibi görünüyor. Bundan yola çıkaran sizlere XMLHttpRequest ile gönderilen JavaScript File nesnesinin asenkron bir yapıyla diske yadırılması işlemini göstermek istiyorum. Controllerımıza böyle bir action ekleyelim: [HttpPost] public async Task<actionresult> UploadFiles() { for (int i = 0; i < Request.Files.Count; i++) { try { HttpPostedFileBase file = Request.Files[i]; if (file == null) continue; string...

Continue Reading

ASP.NET MVC, PagedList, Knockout ile AJAX grid sayfalandırma

Daha önce paylaştığım yazılarımda genel olarak problem çıkardığında kaynak bulmanın zor olabileceği konuları hedef aldım. Bu yazımda sizlere direkt olarak bir çözüm sunmayı istiyorum. ASP.NET MVC ile uygulama geliştirenler tablolarında sayfalandırma yapmak için genelde PagedList paketini kullanırlar. Ancak bu senkron bir çözümdür ve sayfalarda dolaşmak için bütün sayfaların tekrar tekrar yüklenmelerini gerektirir. Bu durumda JQuery’nin sağladığı hazır ajax fonksiyonları imdadımıza yetişir. Peki PagedList ile gelen veriyi JQuery ile nasıl sayfama yazdırırım. public ActionResult GetList(int? page,...

Continue Reading

Knockoutjs Kütüphanesine Hızlı Bir Giriş

Merhaba, bugün değişik bir şey paylaşıp knockoutjs kütüphanesine bir giriş yapmak istiyorum. ASP.NET MVC ile JSON verisini, JQuery Ajax ile çekip veriyi sayfamızda göstereceğiz. Örneğimi containerless diye tabir edilen ile elemanı sabit bir ‘<ul>’ elementi üzerinden giderek göstermek istiyorum. Karar ve döngü ifadeleri html comment satırlarını kullanacağız. Öncelikle JavaScript ile bir ViewModel Oluşturalım : var viewModel = function(data) { this.postList = ko.mapping.fromJS(data); this.isEmpty = ko.observable(data.posts.length == 0 ? true : false); // Gelen veri boş...

Continue Reading