Java String Concatenation, StringBuilder ve StringBuffer
Gece gece canım sıkıldı, yine yerimde duramadım,
bir benchmark yapıp yazılım camiasında sık sık dile getirilen bir noktaya bir de ben parmak basayım dedim.
Biliyorsunuz ki Java ile birşeyler geliştirirken sık sık String
‘leri uç uca eklememiz gerekiyor.
En basit okul ödevinden en komplike web projelerine kadar bu işlemi
hiç düşünmeden concatenation yöntemi ile yapanlarımız var.
Hiç düşünür müydünüz bunun bir performans sorunu olarak değerlendirilebileceğini
ve alternatif yaklaşımlarının bulunduğunu?
Tab Archiver: Tablerinizi Kaydedin
Google Chrome eklentisi geliştirmeye tam gaz devam ediyorum. Bu eklenti yardımıyla web tarayıcınızda açık olan tüm sekmeleri bir tıkla kaydedip kapatabilirsiniz. Daha sonra istediğiniz zaman bu sekmeleri geri getirebilirsiniz.
Checkbox Yerine Select Kullanalım
Uzun zaman olmuş blog yazmayalı. Madem frond-end developer olduk, hadi biraz daha Javascript yazalım. Geçen gün Netmera için bir sayfa geliştirirken karşılaştığım bir zorluktan bahsetmek istiyorum öncelikle. Diyelim kullanıcıya ekranda belirli seçeneklerden istediği kadarını seçebilmesi için bir arayüz hazırlamamız gerekiyor. Bunun için genellikle kullanılan ön yüz elemanı genellikle checkbox olur. Fakat seçenekler biraz fazla olursa ne olur? Ekranda 50-60 tane checkbox’ı alt alta göstermek ister miyiz? Bu gibi durumlarda bizim kullandığımız genel yöntem kullanıcıya bir tane select (dropdown yada combobox) göstermek ve bir tane butonla da daha fazla select elementini ekrana getirebilmesini sağlamak. Bu yöntem çok güzel bir şekilde ihtiyacımızı karşılıyor fakat bir sıkıntısı var, Javascript ve jQuery ile bunu yönetmesi biraz zor.
Linux: MySQL Veritabanını Import ve Export Etmek
Bazen tüm bir MySQL veritabanını tek bir dosya halinde yedek almamız gerekebilir. Yada tam tersi, bir dosyadan bir database’i geri yüklememiz gerekebilir. Bunun için linux konsolunda doğrudan çalışan mysqldump ve mysql komutlarını kullanabiliriz. Bu yazıda kaynak olarak gösterdiğim stackexchange linkini yer imlerime eklemiş her ihtiyacım olduğunda oradan bakarak yapıyordum bu işi fakat buraya da not alayım dedim.
jQuery'de Olaylar (Event Handling)
jQuery Giriş ve Gelişme yazısıyla başladığım jQuery yazı dizisine olaylar ile devam ediyorum. Bilgisayar programlarını ve web sitelerini interaktif hale getiren şeyler aslında olay(event) dediğimiz şeylerdir. Örneğin kullanıcı bir linke tıkladığında, faresinin imlecini bir butonun üzerine getirdiğinde veya klavyeden bir tuşa bastığında biz bunları anlık olarak yakalamak ve tepki vermek isteriz. Aslında kullanıcının web sitesinde yaptığı hemen hemen herşeyin bir olay karşılığı vardır ve jQuery sayesinde biz bu olayları çok kolay yakalayıp buna karşı bir davranış geliştirebilir, bir tavır takınabiliriz.
jQuery Giriş ve Gelişme
Günümüzde Javascript’in web programlama alanında ne denli önemli bir dil olduğunu artık açıklamaya gerek yok. Client tarafında neredeyse her işi artık Javascript ile yapıyor hale geldik. Aslında, Javascript yaygınlaşmadan önce client tarafında hiçbir şey yapmıyorduk. Sayfalar düz HTML sayfalarıydı, bir linke veya bir butona tıkladığımızda sayfanın yeniden yüklenmesini bekliyorduk. Örneğin Facebook’daki like butonuna tıkladığınızda tüm sayfanın yeniden yüklendiğini düşünün. Tüm o yazılar, resimler, görüntü… Ne amelelik değil mi?
Bir Ses Yap
Final döneminden midir, ruhsal çalkantılarımdan mıdır nedir bilmem, ses çıkartan, müzik yapıyormuşum havası veren sitelere, Google Chrome eklentilerine sardım. Yer imlerim de şişmesin linklerle falan buraya not alayım, hem de paylaşmış olurum küçük kitlemle.
Winamp Jump To File Penceresi Açılmıyorsa
Bilmiyorum hala winamp kullanan var mı lakin ben kullanıyorum. Basit bir sorun gibi görünebilir başta fakat winamp kullanımını en çok hızlandıran kısayollardan birisidir ‘Jump To File’ özelliği. ‘J’ tuşuna basılarak açılır kendisi. Arama kutusu çıkar, 7500 şarkılık playlistinizde aradığınız şarkının adını veya başka bir şeyini girersiniz bulur seçenekler sunar size, siz de enter’a basar dinlemeye başlarsınız. Winamp’ın son versiyonlarında bu pencereyi ‘J’ tuşuna basarak açmak biraz zorlaşmaya başladı. Sanırım dandirik bir bug var programda. Aslında pencere açılıyor fakat göremiyoruz.
Metro Style Uygulamalarda Hata Yakalamak
Microsoft yakın zamanlarda Metro Style Apps isminde yeni bir konsept duyurmuş. Windows 8 yüklü tüm platformlarda çalışan bir uygulama türüymüş kendisi. Ben de stajda kendimi bir anda Metro Style Apps geliştirirken buldum. En güzel yanı dil olarak C#, C++, VB, ve Javascript/HTML5 kullanılabiliyor olması.
Nesne Merkezli(Object Oriented) Javascript
Bu yaz yaptığım stajda edindiğim deneyimlerini sıralamam istense şüphesiz ilk sıraya Akın hocamdan aldığım 2 haftalık Java dersini koyardım. Hatta öyle bir eğitim oldu ki bu, bütün sıralamayı etkiledi bence. ‘Java biliyorum ki ben, hehe’ diyerek gittiğim eğitimde her gün ağzımı açık bırakacak, daha önceden bilmediğim şeyler öğrendim. Gerek Java syntax’ında olsun, gerekse işin mantığı ve felsefesinde olsun, birçok şey keşfettim Akın hocam sayesinde.
Java'da InputStream Class'ının Skip Hatası
InputStream
class’ının skip
methodu bir datayı okurken
okumak istemediğimiz kadar veriyi atlamamızı sağlaması gereken bir fonksiyon.
Parametre olarak kaç byte skip edileceğini alıyor
ve return olarak da kaç byte skip ettiğini dönüyor.
Yani dosyanın sonuna gelinmediği sürece parametresi
ile return değerinin eşit olması gerekiyor, mantıken.
Ama bazı durumlarda nedense atladığı data parametre olarak verdiğimizden çok daha ufak,
neredeyse onda biri olabiliyor.
Windows: Klasör Sağ Tuş Menüsüne Buraya CMD Eklemek
Windows üzerinde çalışan programcı arkadaşlar bazı işlemler için kendilerine kolaylık sağlamak isteyebilirler. Mesela bir klasöre komut isteminde ulaşmak için cd komutu ile o klasörün adresini yazmak yerine, klasöre sağ tıklayıp “Buraya CMD” gibi bir komutu seçebilmeli insan. Bilgisayar mühendisliği öğrencisinin çok değerli proje zamanlarının cmd komutlarıyla uğraştırılarak harcanmaması lazım. O halde sağ tuş menümüze böyle bir kısayol ekleyelim ve kurtulalım.