En iyi uygulama kuralları çevirisini çok beğenmesem de Türkçe olarak bu şekilde çevrilen "best practices" kavramı, her uygulama geliştirme ortamı için düşünülmesi gereken, genel bir yöntem/yordam tanımı veya bir grup kural olarak tanımlanabilir.

Biliyorsunuz ki php eski bir dil, her ne kadar güncellense ve yeni sürümler çıksa da geriye dönük destek verdiği için eski methodlar/teknikler yeni sürümlere uyarlanmadan çoğu zaman çalışır durumda kalıyor. Dolayısıyla çok eski methodlar kullanan geliştiriciler, kodlar görmek mümkün.

Bu durumdan rahatsız olan bir grup php geliştiricisi kendi uygulama kurallarını, standartlaşmış veya kabul görmüş yöntemleri güncel bir şekilde tuttukları bir döküman hazırlamışlar ve açık kaynak olarak herkesin katkısına açmışlar.

Sunucu konfigürasyonu, kod yazım standartları gibi bir çok konuyu topladıkları konu başlıkları, yararlı en iyi uygulama kurallarını barındırıyor. İncelemekte kesinlikle fayda var.

Buyrun:http://www.phptherightway.com
1 Aralık Çarşamba ´04
Linux'ta VI'ı bilmeyen yoktur herhalde, vi çok fonksiyonel ve öğrenilemeyecek kadar özelliğe sahip bir editör. Programcılar için mükemmel bir araç olmakla beraber neredeyse bütün ihtiyaçları karşılıyor. Ana olarak kod renklendirme (desteklemediği dil yok galiba), satır nuamraları, autoindent... Bu dökümanda vi hakkında kendimce önemli, işinize yarayacak ipuçları ve özelliklerin kullanımını bulacaksınız!

VI komutlarının kullanımı

Aslında basit bir mantık içeriyor. önce sınırlarını belirtiyoruz klavyeden, sonra işletilecek komut ve ardından nesnemizi. Örnek olarak şu tuş kombinasyonu : 12dw , aslında kursorün bulunduğu konumdan başlayarak, d yani silme işlemi, w yani ondan sonra gelen kelime sonunu ifade eder; yani kursörden itibaren 12 kelime siler.

Bazı komutlar ve örnek kullanımları


d Silme işlemi

r Karakter değiştirme
"rx" şeklinde kullanımda kursörün altında
bulunan karakteri x ile değiştirir.

w,e w, kelime başına; e ise kelime sonuna gider.

o,O o 'ya basıldığında kursörün bulunduğu satırın
altında yazmaya hazır boş satır açar.
O'da ise kursörün bulunduğu satırın üstünde boş satır açar.


Dosya içinde bişeyler arama

VI komut satırına /fatih yazarsanız bütün "fatih"ler farklı renk olacaktır. Sayfa üzerinde gezinerek tam aradığınızı kolayca bulabilirsiniz.

Bul & Değiştir

Düzenli ifade kullanan arkadaşlar sed ve grep gibi araçlarda regex kullanmışlardır. Oradaki kullanıma çok benzeyen bir kullanımla vi'da belli bir ifadeyi bulup değiştirmek kolaylaşıyor.
Birşey aratmak için vi komut satırında /aramak_istedigimiz_sey yazıp uyguluyorduk. Buna kısa şeyler ekleyerek bul ve değiştir işlemini yapacağız.
s/eski/yeni ile kursörden itibaren tek değişim sağlayabilirsiniz.
Kursörün bulunduğu satırın tümünde yapmak için s/eski/yeni/g uyguluyoruz.
Eğer sınırları belli satırlar arasında uygulamak istiyorsak #,#s/eski/yeni/g uyguluyoruz. #,# ~ 2,5 ise 2. satırdan 5. satıra kadar demek oluyor.
Tüm dosyada değişim yapmak için ise : %s/eski/yeni/g uyguluyoruz.
Böylece kolayca bul&değiştir işlemi yapmış olduk. eski ve yeni değerleri yerine düzenli ifade girerek daha esnek arama, değiştirme işlemleri yapabilirsiniz.

Programcılar için bulunmaz özellik

Çoğu c, java tabanlı programlama dili kontrol yapıları (){}[] işaretleri ile doludur. autoindent yazılmış kodlarda hernekadar bu yapılar arasında dolaşmak veya birinin bitişini, diğerinin başlangıcını seçmek kolay gibi görünebilir ancak iç içe yazılmış çok yapıda bu iş autoindent yazılmış bile olsa zorlaşabiliyor. VI'da bitişini öğrenmek istediğiniz ({[ işaretlerinin üstünde iken % işaretini tuşlarsanız direk kapanışına erişebilirsiniz. Aynı işlemi bitiş karakterlerinde de uygulayarak o yapının başlangıcına erişebilirsiniz.


Özellikler ve kullanımları


VI'da özellikler açıp kapamak için vi komut satırında set kullanılır. "set ozellik" o özelliği açar, "set ozellik!" o özelliği kapatır.


wrap Geçerli olarak kapalı olarak açılan vi'da sözcük kaydırma
özelliğini ifade eder. Bu özellik açıldığında yazılar
konsolun boyutuna sığmaya çalışarak yerleşir.
Ancak sayfanın yapısında değişiklik olmaz!

nu nu özelliği satır numaralandırmadır. Geçerli olarak kapalıdır.
açıldığında her satırın başına satır numaraları eklenir.

syntax Bu özellik kod renklendirmenin ayarlanması içindir.
VI dosya soyadlarına göre otomatik olarak açtığınız dosyaya uygun
kod renklendirmesi yapar. Ancak yeni dosya yazarken veya farklı
uzantılarla çalışırken (mesela php uzantılı html dosyalarında)
kod renklendirme türünü değiştirmek isteyebilirsiniz.
syntax özelliği parametreli kullanılır.
Örneğin : set syntax=html veya set syntax=php gibi...

autoindent Geçerli olarak açık olan ve iç içe yazmayı
kolaylaştıran bir özelliktir.


Not : Bu döküman 2 Ocak 2008 tarihinde yeniden düzenlenmiştir.

Hazırlayan : Mehmet Fatih YILDIZ

Popüler Etiketler

compile nedir mfyz db database service free api mysql query select cookie subdomain optimization less css language development style html icon ikon grafik download firefox banner calendar php logo rss xml örnek kod sql optimizasyon analyse procedure generator javascript js gimp howto imza signature apple mail windows twitter widget mootools ipucu jquery social media tool linux fstab ntfs xhtml tebrik integration network blog facebook opengraph fql html5 form input mobile wanda proje kampanya wordpress compiler macosx app on-the-fly ubuntu cache zaman apache kurulum oyun link plugin ajax xmlhttprequest internet explorer date diff kontrol yapıları if while newsletter subscription table iphone mdb2 pear injection htaccess mod_rewrite url assets portfolio bootstrap css3 digital sosyal konsol iOS osx player framework www redirect crossdomain svn subversion git version control deployment seo search meta export workspace textarea screen google ie browser switch terminal kitap pharma hack ipad istatistik medya lifestream parse chart applications spam connect box design job statistics graph nasıl webkit web app music radio button http server internet doritos tytz itunes mssql prepare execute pgsql login session ui ux insanlar sitemap developer object ruffles open source regex code tarih coding ios app store store in-app purchase purchase verification storekit itunes connect share phpstorm jetbrains ide editor support wireless dokuman auth route router browsers startups license lisans laptop notebook icons cms