Ruby on Rails ile Web Programlama

Ana Sayfa » Kurslar » Ruby on Rails ile Web Programlama

Eğitimin Kısa Özeti:

Ruby on Rails’i öğrenirseniz neler inşa edebileceğinizi bir hayal edin…

Bu yeni yıla Ruby on Rails öğrenerek başlayabilirsiniz. Böylece tam donanımlı (full-stack) bir web geliştirici olarak daha mutlu, üretken, zahmetsiz ve hızlı şekilde web uygulamaları hayata geçirmenin keyfini yaşayabilirsiniz.

Peki nasıl mı?

Modern bir web uygulaması oluşturmayı öğrenmek çoğu zaman göz korkutucu olabilir. Ruby on Rails bunu çok daha kolay ve eğlenceli bir hale getirmektedir. Harika web uygulamaları oluşturmak için ihtiyacınız olan her şeyi (hatta daha fazlasını) bünyesinde barındıran Rails; model-view-controller (MVC), kendini tekrar etme (don’t repeat yourself – DRY), convention over configuration (CoC) yaklaşımlarını temel alır.

Kursta Rails dünyası ile tanışarak bu araçlarla web uygulaması geliştirme, kapsam belirleme ve kapsamları parçalara bölme, proje yönetimi, uzaktan çalışma kültürü, sürüm kontrol sistemleri, versiyonlama, MVC, ORM, RESTful, test odaklı geliştirme, sürekli entegrasyon (CI) ve uygulamaların web sunucusuna yayınlanması gibi aşamalarda bilgi sahibi olmanız amaçlanmaktadır.

Ayrıca, Basecamp’in ekosisteme hediye ettiği Ruby on Rails ile birlikte sunulan Rails-ujs, Stimulus, Turbolinks ve Turbolinks iOS / Android gibi JavaScript ve Hybrit uygulama geliştirme araçlarının Rails ile birlikte nasıl harikalar yarattığını görme fırsatı bulacaksınız. Bu araçlar sayesinde bir çok katmana bölünmüş, karmaşık, kendini tekrar eden, mikroservis yaklaşımlı “JavaScript uygulamalarının” (SPA) aksine sunucu tarafında oluşturulmuş HTML’leri barındıran, benzer kullanıcı deneyimini yaşatmak için JavaScript’i sadece “bir araç” olarak gören ve ihtiyacı kadar kullanarak tek parçadan oluşan (Monolithic) modern uygulamaların web, mobil ve masaüstü platformlar için başarısı kanıtlanmış bu tekniklerle ne kadar hızlı bir şekilde hayata geçirilebileceğini öğrenebileceksiniz.

Hadi şimdi siz de Ruby on Rails öğrenin ve bu harika ekosisteme dahil olarak web uygulaması geliştirmenin altın çağını yaşayın…

Eğitmenler: Tayfun Öziş Erikan, Kemal Akın

Katılımcılar için Ön Şartlar:

  • Bu kurs ana hatları ile Rails Guides içeriğine sadık kalınarak hazırlanmıstır. Kursta başarılı olmak ve kursun sizin için daha verimli geçmesini istiyorsanız mutlaka gelmeden önce Rails Guides’a https://guides.rubyonrails.org adresinden bir göz atmalısınız.
  • Temel Ruby bilgisine sahip olmalısınız.
  • Web teknolojileri konusunda bilgi sahibi olmalısınız (HTTP, HTML, CSS, JS, SSL, GET/POST, Session, Cookie, vs)
  • OOP: Object-oriented programming – Nesne yönelimli programlama bilgisine sahip olmalısınız
  • Başka bir dilde MVC, ORM tasarım şablonlarını kullanan frameworkler kullanmış olmalısınız
  • Herhangi bir VCS kullanmış olmak ve tercihen Git biliyor olmalısınız
  • Gitlab, Github ya da benzeri bir Git servisinde hesaba sahip olmalısınız
  • SQL biliyor olmak ve PostgreSQL veri tabanı hakkında fikir sahibi olmalısınız
  • GNU/Linux Sistem Yönetimi 0.5 Eğitimi konularına hakim olmalısınız

Katılımcıların kursa getirmesi gereken donanım/yazılım:

  • Geliştirme ortamlarının hazırlanması. Bu işlem için aşağıdaki adımları takip edebilirsiniz.
  • Ubuntu GNU/Linux dağıtımını http://www.ubuntu.com/download/desktop adresinden bilgisayarınıza kurabilirsiniz.
  • Eğer Ubuntu kuracaksanız, performans problemleri yaşamamak için işletim sistemini, sanal makine yerine, bilgisayarınızın herhangi bir bölümüne kurmanız önerilir.
  • Ubuntu veya OS X için https://github.com/lab2023/builder adresinde bulunan bash kurulum scripti’ni kullanabilirsiniz.

Kurs İçeriği:

Giriş

Bu bölümde Rails’in ilke ve görüşlerini anlayarak Rails felsefesini ve ekosistemini tanıyacağız.
Temel Bilgiler

Bu bölümde Rails’i daha verimli kullanabilmek için gerekli temel bilgileri edineceğiz ve partik yapacağız.
  • Terminal kullanmak
  • Text editör ve/veya IDE kullanmak
  • Git, Gitflow, Semver ile versiyonlama ve sürüm kontrolü
  • HTTP yaşam döngüsü ve temel kavramları
  • Ruby İçin Gereken Temel Bilgiler
    • Ruby’nin genel özellikleri
    • IRB konsol ile Ruby kullanımı (alternatif olarak PRY)
    • Ruby Paket Yöneticisi (RubyGems ve Bundler)
  • Rails İçin Gereken Temel Bilgiler
    • MVC
    • REST ve RESTful
    • DAO ve ORM
    • Rack Middleware
Rails’e Hızlı Başlangıç

Bu bölümde Rails’e hızlıca göz atıp çok kısa bir sürede calışan bir uygulama hazırlayacağız.
  • Rails Guides tanıtımı ve kullanımı
  • Rails nedir?
  • Rails’i kurmak
  • Yeni bir Rails projesi oluşturmak
  • Bir blog uygulaması oluşturmak
  • Scaffolding kavramı
Turbolinks

Bu bölümde web uygulamanızda daha hızlı gezinmenizi sağlayan ve istemci tarafı JavaScript çerçevelerinin ek karmaşıklığı olmadan tek sayfalık bir uygulamanın performans avantajlarından yararlanabileceğiniz Turbolinks ile tanışacak ve bu araçın ne işe yaradığı hakkında sahibi olacaksınız. Rails ile nasıl etkileşime girdiğini görecek, mobil veya masaüstü platformlar için hibrit uygulamaları nasıl oluşturabileceğinizi anlayacaksınız.

  • Navigating with Turbolinks
  • Building Your Turbolinks Application
  • Advanced Usage
  • API Reference
  • Turbolinks iOS Adapter
  • Turbolinks Android Adapter
Stimulus.js

Bu bölümde mütevazi istekleri olan bir JavaScript çercevesi olan Stimulus.js ile tanışacak ve bu araçın ne işe yaradığı hakkında sahibi olacaksınız. Stimulus kullanarak bir tutam JavaScript kullanarak uygulamanıza nasıl daha fazla etkileşim kazandıracağınızı öğreneceksiniz. Ayrıca Stimulus’u Rails ile nasıl daha efektif bir şekilde kullanabileceğiz hakkında fikir sahibi olacaksınız.

  • Stimulus Handbook
    • The Origin of Stimulus
    • Introduction
    • Hello, Stimulus
    • Building Something Real
    • Managing State
    • Working With External Resources
    • Installing Stimulus in Your Application
  • Reference
    • Controllers
    • Actions
    • Targets
    • Lifecycle Callbacks
    • Data Maps
Temel Rails Bileşenleri

Bu bölüde Rails içerisinde ihtiyacınız olan en temel bileşenler hakkında bilgi sahibi olacak, bu bileşenleri kullanarak Rails uygulamanızı nasıl inşaa edeceğinizi öğreneceksiniz. Bu bölümü tamamladığımızda baştan uca çalışan bir Rails uygulaması hayata geçirecek temel bilgilere erişmiş olacaksınız.

  • Models (Model Katmanı)
    • Active Record Basics
    • Rails Database Migrations
    • Active Record Validations
    • Active Record Callbacks
    • Active Record Assocations
    • Active Record Query Interface
    • Active Model Basics
  • Views (View Katmanı)
    • Action View Overview
    • Layouts & Rendering in Rails
    • Action View Form Helpers
  • Controllers (Kontrolör Katmanı)
    • Action Controller Overview
    • Rails Routing from the Outside In
Diğer Rails Bileşenleri

Bu bölüde Rails ile birlikte gelen harika bileşenleri görecek ve bu bileşenleri kullanarak uygulamanızı nası daha zengin ve kullanışlı hale getirebileceğinizi öğreneceksiniz.
  •  Active Support Core Extensions (Özet)
  •  Action Mailer Basics
  •  Action Mailbox Basics (Özet)
  •  Action Text Overview
  •  Active Job Basics
  •  Active Storage Overview
  •  Action Cable Overview
Derinlemesine Rails

Bu bölüde Rails’in derinlerine inerek geliştirme sırasında ihtiyacınız olacak tüm araç ve kavramlarla tanışacaksınız.
  •   Rails Internationalization (I18n) API
  •   Testing Rails Applications
  •   Securing Rails Applications
  •   Debugging Rails Applications (Özet)
  •   Configuring Rails Applications (Özet)
  •   The Rails Command Line
  •   The Asset Pipeline
  •   Working with JavaScript in Rails (Rails-ujs)
  •   The Rails Initialization Process (Özet)
  •   Autoloading and Reloading Constants (Zeitwerk Mode / Classic Mode) (Özet)
  •   Caching with Rails: An Overview
  •   Active Support Instrumentation (Özet)
  •   Using Rails for API-only Applications (Özet)
  •   Active Record and PostgreSQL
  •   Multiple Databases with Active Record
Rails’i Genişletme

Bu bölüde Rails uygulamanızı genişletmeniz veya kendinize göre özelleştirmeniz yada kendi bileşenlerinizi tasarlamanız için gereken araçları tanıyacaksınız.
  • The Basics of Creating Rails Plugins
  • Rails on Rack
  • Creating and Customizing Rails Generators & Templates (Özet)
  • Getting Started with Engines (Özet)
  • Threading and Code Execution in Rails  (Özet)
Bazı Faydalı Ruby Gem’lerin Tanıtılması

Bu bölüde Ruby ve Rails dünyasındaki popüler Ruby Gem’ler hakkında bilgi sahibi olacaksınız.
Uygulamanızın Yayınlanması (Deployment)

Bu bölüde Rails uygulamalarınızın Heroku servisine veya bir VPS sunucuna nasıl yayınlanacağını öğreneceksiniz.
Topluluk

Bu bölümde özgür yazılım, açık kaynak ve topluluklar hakkında bolca sohbet ederek Ruby, Rails dünyasını daha yakından tanıyacak ve Ruby Türkiye topluluğu olarak Türkiye’de gerçekleştirilen etkinlikler hakkında bilgilendirileceksiniz.
  • Ruby Türkiye topluluğu
  • Özgür yazılım felsefesi
  • Rails’in gelişimi ve topluluğun katkısı
  • Rails’e nasıl katkı sağlarsınız?
  • Birlikte neler geliştirebilirsiniz ve özgür yazılım projelerine nasıl katkı sağlarsınız?

 

Başvurunuzu yapın