Türkçe Ruby kitabı
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
bolum_1 fix typo Aug 1, 2017
bolum_2 fix typo Aug 1, 2017
bolum_3 fix typo Aug 1, 2017
bolum_4 fix typo Aug 1, 2017
bolum_5 bolum_5 index fixed Jul 10, 2016
bolum_6 fix typo Aug 1, 2017
gercek_hayat_ruby_ornekleri fix typo Aug 1, 2017
images images + update: bolum_2/degiskenler Jul 14, 2014
inceleme structure 0.0.4 Jul 13, 2014
yazar_hakkinda fixed yazar_hakkinda Jul 10, 2016
.gitignore _book ignored Jul 13, 2014
README.md Update README.md May 25, 2016
SUMMARY.md fixed bolum_4 index Jul 10, 2016
book.json prefs update 2 Jul 14, 2014
cover.jpg changed cover Jul 13, 2016
cover_small.jpg changed cover Jul 13, 2016
kod_yazma_tarzi_style_guide.md Fixing several typos Mar 15, 2015

README.md

Ruby 101 Kitabı

Build Status %77

Önsöz

Kitap yazmak hep hayalini kurduğum bir şeydi. Hem kendi işime yarayacak hem de başkalarının işini görecek bir kitap olmalıydı. Aslında bir sene önce bu işe soyundum ama bir türlü fırsat bulamadım.

Kafamda kabaca planlar yaptım hep ama son noktayı bir türlü koyamadım. Gitbook.io bu konuda çok işime yaradı. Hem beni fişekledi hem de GitHub ile kolay entegre olması kendimi organize etmem açısından çok rahat oldu.

Hep O'Reilly'nin Pocket yani cep kitaplarına bayılmışımdır. Hem boyut itibariyle hem de içerik anlamında. Sürekli yanınızda taşıyabileceğiniz, içinde konusuyla ilgili her şeyin kompak bir şekilde bulunduğu kaynak.

Amacım, bu kitaplar tadında, her zaman yanınızda bulunabilecek, tabiri caizse başucu kitabı hazırlamak.

Kitabı hazırlarken en çok zorlandığım kısım İngilizce'den anlamlı Türkçe metinler çıkartmak oldu. Bazı şeyleri İngilizce olarak ifade etmek çok kolay, fakat bazı durumlarda tam Türkçe anlamlı karşılık bulmak gerçekten zor oluyor.

Prensip olarak Developer (Yazılım Geliştiren Kişi) denen insanın default olarak İngilizce bilmesi gerektiğine inanıyorum. Neden? Örneğin milyonlarca açık-kaynak projenin bulunduğu GitHub'da herkes İngilizce konuşuyor.

Takıldığınız bir konuda, GitHub'da yorumları okumanız gerekecek. Hatta bazen siz bir şey soracaksınız. Issue'lara bakacaksınız, Pull Request yapacaksınız. Gördüğünüz gibi bir cümlede iki tane İngilizce terim. Bunlar evrensel. Bilmemiz gerekiyor yoksa çuvallarız :)

Özellikle pek çok şeyi olduğu gibi İngilizce olarak kullanmak istedim. Tabii ki Türkçe anlamını da yazdım fakat, genel olarak kullandığım terminoloji Ruby ve yazılım geliştirme terminolojisi.

Örneğin Constant dediğimde bunun ne anlama geldiğini anlamış olmanız gerekiyor. Ya da Instance dediğimde, bunun sınıftan oluşturulmuş bir nesne olduğunu anlamanız gerekiyor.

Yazılım dünyası ne yazık ki İngilizce ve tüm kaynaklar da İngilizce. Bu bakımdan orijinal kelimeleri ve terminolojiyi öğrenmemiz, bilmemiz şart :)

Lisans Mevzusu

Prensip olarak, GitHub'a Public olarak koyduğum her şey, herkes tarafından her türlü şekilde kullanılabilir. Bence Public olarak sürülen bir şey (ki ben eski Amiga'cı Public Domain'ci biriyim) herkesin tepe tepe kullanabilmesi amaçlı olmalıdır.

Her türlü lisans olayına karşıyım. Eğer bir tür lisanslama yapacaksanız kendinize saklayın :)

Bu kitap ananızın ak sütü gibi hepinize helal olsun. Umarım işinize yarar!

Kitabı online olarak okumak için:

https://vigo.gitbooks.io/ruby-101/content/

Tamamlanma Durumu (%78)

Bölüm 1 (%94)

  • Ruby Hakkında
  • Kurulum
  • İnteraktif Kullanım
  • Ruby Komutu ve Parametreleri (%98)

Bölüm 2 (%100)

  • Syntax (Söz Dizimi) ve Rezerve Kelimeler
  • Değişkenler
  • Ön Tanımlı ve Pseudo (Gerçek Olmayan) Değişkenler
  • Operatörler
  • Global Constants (Genel Sabitler)

Bölüm 3 (%100)

  • Methods (Fonksiyonlar)
  • Blocks (Bloklar)
  • Proc ve Lambda
  • Conditional Statements (Koşullar)

Bölüm 4 (%100)

  • Object
  • Number
  • String
  • Array
  • Hash
  • Symbol
  • Class ve Module

Bölüm 5 (%58)

  • Enumeration ve Iteration
  • Ranges
  • File System ve IO (Dosya Sistemi) (%90)
  • Exception Handling (--)
  • Kernel Modülü (--)

Bölüm 6 (%50)

  • Monkey Patching
  • Regular Expressions (--)
  • Time ve Date Nesneleri (%50)
  • Ruby Paketleri: RubyGems
  • Paket Yöneticisi: Bundler (--)
  • Komut Satırı (Command-Line) Kullanımı (--)
  • Meta Programming

Kod Yazma Tarzı (Style Guide) (%98)

  • Değişken Tanımlamaları
  • Blok Tanımlamaları
  • Syntax Tanımlamaları
  • Semantik Tanımlamalar
  • Yanlış ve Doğru Kullanımlar
  • İsimlendirmeler

Gerçek Hayat Ruby Örnekleri (%25)

  • Neden Ruby?
  • Ruby ve TDD/BDD/CI (--)
  • Kendi Rubygem'imizi yapalım! (--)
  • Sinatra ve Web (--)