Author Archives: Özcan Acar

About Özcan Acar

Bilgisayar mühendisi olan Özcan Acar 1997 yılından beri programcı olarak çalışıyor. KurumsalJava.com, SmartHomeProgrammer.com ve Mikrodevre.com adresleri altında blog yazıyor. Pratik Programcı Yayınları bünyesinde Pratik Spring, Pratik Agile, Pratik Git ve Design Patterns ismini taşıyan kitapları bulunmaktadır. 21.12.2009 tarihinde Java Champion olarak seçildi.

JVM Nasıl Çalışır Yazı Serisi – Java Just In Time Compiler (JIT) Nasıl Çalışır?

Java’yı çoğu programcı yorumlanan (interpreted) dil olarak bilir. Java’nın yavaş olduğu efsanesi de başlangıcını da burada bulur. Bytekod olarak derlenen Java sınıfları Java sanal makinesi (Java Virtual Machine – JVM) bünyesinde yorumlanır. Tek derleme işlemi Java sınıflarının bytekoda dönüştürülmesi esnasında yapılmaz. JVM bünyesinde de bytekodun makine koduna dönüştürüldüğü bir derleme gerçekleştirilir. Bu işleme Just in […]

JVM Nasıl Çalışır Yazı Serisi – Java Nesne Düzeni (Java Object Layout)

Bu yazımda bir Java nesnesinin hafıza alanında (heap) nasıl yer aldığını yanı sahip olduğu hafiza düzenini (object layout) aktarmak istiyorum. Bu amaçla aşağıda yer alan sınıfı kullanacağım. [source language=’java’] public class BirSinif { boolean b; char c; int i; float f; double d; String s; byte bb; } [/source] Java nesnelerinin hafıza düzenini elde etmek […]

Temel Prensipler Yazı Serisi – Yazılımda Şemsiye Modeli

Yazılımda testlerin gerekliliğini ve hangi testlerin ne zaman uygulandığını açıklamak amacıyla şemsiye modeli ismini verdiğim bir model oluşturdum. Bu yazımda sizlerle bu modeli ve işlevini paylaşmak istiyorum. Şemsiyeler gerçek hayatta yağmurdan ve yer yer güneşten korunmak için kullanılır. Yazılım süreçleri için oluşturduğum şemsiye modelinde yazılım testleri uygulamayı korumak için açılan şemsiyeleri temsil etmektedir. Şemsiyenin büyüklüğüne […]

Yazılımcı Olarak Daha İyi ve Usta Olmak Mecburiyetindesiniz

Yazılımcı olarak daha iyi ve usta olmak mecburiyetindesiniz, çünkü İşini bilmeyen birçok yazılımcının geride bıraktığı kaousu siz toplamak zorunda kaldığınızda, işin içinden nasıl çıkacağınız hakkında fikir ve bilgi sahibi olabilmek için; Geride kaos bırakan bir önceki yazılımcı olarak anılmamak için; Kaliteli kod yazarak, işinize ne kadar hakim olduğunuzu göstermek için; Ekipteki genç yazılımcılara örnek olarak, […]