0Pricing
Scala for Backend Engineering & Functional Programming · Ders

Play Framework Temelleri

Play ile çalışmaya başlayın, mimarisini anlayın ve ilk web uygulamanızı kurun.

Play Framework Temelleri, CoddyKit'te ücretsiz bir Scala for Backend Engineering & Functional Programming dersidir. Bu, 3 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Scala for Backend Engineering & Functional Programming öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Scala for Backend Engineering & Functional Programming kursu toplamda 3 dersten oluşur.

Play Çatısına Giriş

Play çatısına hoş geldiniz! Play, Scala ve Java için güçlü, açık kaynaklı bir web uygulaması çatısıdır.

Geliştirici üretkenliğini ve performansını ön planda tutarak yüksek düzeyde ölçeklenebilir, modern web uygulamaları ve API'ler oluşturmak için tasarlanmıştır.

Tepkisel ve Eş Zamanlı Olmayan Çekirdek

Play, temelinde Akka'dan yararlanan tepkisel bir yapı üzerine kuruludur. Bu, istekleri varsayılan olarak eş zamanlı olmayan ve engellemesiz bir şekilde işlediği anlamına gelir.

  • Tepkisel: Aynı anda gelen çok sayıda isteği verimli bir şekilde işler.
  • Eş zamanlı olmayan: İşlemler sunucu iş parçacığını engellemez.
  • Durumsuz: Yatay ölçeklendirme için tasarlanmıştır; bu da onu mikro hizmetler için ideal kılar.

Play Projesi Oluşturma

Yeni bir Play projesi başlatmak için Play seed şablonuyla SBT (Scala Derleme Aracı) kullanacaksınız. SBT'nin yüklü olduğundan emin olun.

Terminalinizde şu komutu çalıştırın:

sbt new playframework/play-scala-seed.g8

Bu komut, temel bir Play Scala uygulaması yapısına sahip yeni bir proje dizini oluşturur.

Play Proje Yerleşimi

Bir Play projesinin iyi tanımlanmış bir dizin yapısı vardır:

  • app/: Scala kaynak kodunuzu (denetleyiciler, modeller ve görünümler) içerir.
  • conf/: routes (URL eşleme) ve application.conf gibi yapılandırma dosyalarını içerir.
  • public/: Statik varlıkları (JavaScript, CSS ve görseller) içerir.
  • project/: SBT derleme tanımı dosyalarını (örneğin build.sbt) içerir.
  • test/: Uygulamanızın testlerini içerir.

`routes` ile URL'leri Eşleme

conf/routes dosyası çok önemlidir. HTTP isteklerinin (yöntem + yol) uygulamanızdaki belirli denetleyici eylemleriyle nasıl eşleneceğini tanımlar.

Her satırda bir HTTP yöntemi, URL yolu ve çağrılacak denetleyici yöntemi belirtilir.

# conf/routes
GET     /               controllers.HomeController.index()
GET     /hello/:name    controllers.HelloController.sayHello(name: String)

Play Denetleyicileri Oluşturma

Denetleyiciler, gelen HTTP isteklerini işleyen Scala nesneleri (veya sınıfları)dır. İstekleri işleyen ve sonuç döndüren eylem işlevleri içerirler.

Denetleyicileriniz genellikle BaseController sınıfını genişletir ve ControllerComponents ile enjekte edilir.

package controllers

import play.api.mvc._
import javax.inject._

@Singleton
class HomeController @Inject()(val controllerComponents: ControllerComponents) extends BaseController {
  // Action functions go here
}

Eylem Mantığını Tanımlama

Bir eylem işlevi, denetleyici içindeki temel mantıktır. Örtük bir Request alır ve bir Result (örneğin Ok, NotFound veya Redirect) döndürür.

Action { ... } bloğu, kodunuzu geçerli bir Play eylemine dönüştürür.

// Inside HomeController
def sayHello(name: String) = Action { implicit request =>
  Ok(s"Hello, $name! Welcome to Play.")
}

Twirl ile Dinamik HTML

Play, dinamik HTML yanıtları oluşturmak için Twirl şablonlarını (.scala.html dosyaları) kullanır. Bu şablonlar, Scala kodunu doğrudan HTML'nizin içine yerleştirmenize olanak tanır.

Şablonlar tür güvenlidir ve derlenir; böylece hatalar erkenden yakalanır.

@* app/views/welcome.scala.html *@
@(userName: String)

<!DOCTYPE html>
<html>
<head>
    <title>Welcome</title>
</head>
<body>
    <h1>Welcome, @userName!</h1>
    <p>This page was generated by a Play template.</p>
</body>
</html>

Play Uygulamanızı Başlatma

Projeniz kurulduktan ve bazı yollar ile denetleyiciler tanımlandıktan sonra uygulamanızı SBT kullanarak çalıştırabilirsiniz.

Terminalde projenizin kök dizinine gidin ve şu komutu çalıştırın:

sbt run

Uygulama genellikle http://localhost:9000 adresinde başlar.

Play Bileşenleri Sınavı

Play çatısının temellerini ne kadar anladığınızı kontrol edelim.

Özet: Play Temelleri

Play çatısıyla ilk adımlarınızı attınız! Şunları ele aldık:

  • Play'in ne olduğunu ve tepkisel yapısını.
  • SBT ile yeni bir projenin nasıl kurulacağını.
  • Temel proje dizinlerini.
  • URL eşleme için conf/routes dosyasının rolünü.
  • Denetleyicilerin ve eylem işlevlerinin nasıl oluşturulacağını.
  • Dinamik görünümler için Twirl şablonlarının kullanılmasını.
  • Play uygulamanızın çalıştırılmasını.

Sırada Play ile RESTful API'ler oluşturmayı öğreneceksiniz!

Sıkça Sorulan Sorular

“Play Framework Temelleri” dersi ücretsiz mi?

Evet — “Play Framework Temelleri” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Scala for Backend Engineering & Functional Programming kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Scala for Backend Engineering & Functional Programming kursu toplamda 3 dersten oluşur.

“Play Framework Temelleri” dersinde ne öğreneceğim?

Play ile çalışmaya başlayın, mimarisini anlayın ve ilk web uygulamanızı kurun. Scala for Backend Engineering & Functional Programming ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Scala for Backend Engineering & Functional Programming öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Scala for Backend Engineering & Functional Programming, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 3 dersinin 1. dersidir.

“Play Framework Temelleri” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Scala for Backend Engineering & Functional Programming dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Scala for Backend Engineering & Functional Programming dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Play Framework Temelleri
  2. Play ile RESTful API Oluşturma
  3. Slick/Doobie ile Veritabanı Entegrasyonu
← Scala for Backend Engineering & Functional Programming Sayfasına Dön