25 Haziran Pazar ´17
iPad'de kod yazmak kulağa ne kadar garip gelse de bazı alanlarda oldukça konforlu bir şekilde yapılabilir durumda. Geçtiğimiz yıl 4 aylık bir süre sadece iPad ile bilgisayarsız çalışma deneyi yaptım ve bu süreçte çok aktif olmasa da bir süre kod yazmam gerekti. Tahmin edeceğiniz üzere çoğunlukla back-end ve web tabanlı şeyler yazmam gerekti ancak arada sırada Python ve biraz mobil koda (Swift, Java) dokunmam gerekti.

Coda Screenshot

Bu süreçte çoğunlukla "Coda" adında bir uygulama kullandım ve bu yazıda biraz Coda'daki deneyimimi özetleyeceğim.

Devamını Oku →
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

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