Express Application Generator Nedir? Nasıl Kullanılır? - Yazılım Mimarileri ve Tasarım Desenleri Üzerine

Express Application Generator Nedir? Nasıl Kullanılır?

Merhaba,

Node.js’de bir projeyi sıfırdan manuel olarak oluşturmak zaman ve enerji açısından oldukça maliyetli bir durum arz etmektedir. Halbuki sıfırdan tasarlanacak proje belli bir noktaya kadar varsayılan bir altyapıda bizlere sunulsa ve süreçte sürekli kullanacağımız route yapılanmaları, uygulama dosyaları ve katmansal yapıların klasör hiyerarşisi vs. en temel düzeyde bizlerin rahatça müdahale edip değiştirebileceği esneklikte bizi karşılasa muhtemelen yeni doğacak projemizde lüzumsuz emek israfından büyük ölçüde feregat etmiş olacağız.

Express Application Generator Nedir?

Express Application Generator bu ihtiyaca istinaden oluşturulmuş Node.js modülüdür. Bir uygulama başlarken, ilgili uygulamayı hızlıca ayağa kaldırmak için bir mimari sağlamaktadır.

Express Application Generator ile Hızlı Proje Oluşturma

  • 1. Adım
    İlk olarak ilgili modülü aşağıdaki kod sayesinde global olarak sistemimize yüklememiz gerekmektedir.

    npm install express-generator -g
    

    Express Application Generator Nedir? Nasıl Kullanılır?

  • 2. Adım
    Bu adımda ilgili modülümüze projemizin temellerini attıracağız. Bu işlem için;

    express abc
    

    şeklinde kodumuzu çalıştırabiliriz. Bu kod, çalıştırıldığı dizin altında “abc” adında bir klasör oluşturacak ve içerisine proje dosyalarını atacaktır.
    Eğer ki hiçbir klasör oluşturmadan direkt olarak ilgili klasöre proje dosyalarını oluşturmak istiyorsanız “.” kullanmanız yeterlidir.

    express .
    

    Express Application Generator Nedir? Nasıl Kullanılır?
    İlgili komutu çalıştırdığımızda yukarıdaki ekran görüntüsünde olduğu gibi hangi dosya ve klasörlerin oluşturulduğunu görmektesiniz.

    Şimdi 3. adıma geçmeden önce burada oluşturulan yapıları inceleyelim.

    Express Application Generator Nedir? Nasıl Kullanılır?

    • bin Klasörü
      Proje içerisindeki ana modülümüz olan “app.js” dosyasına bağımlılığı kaldıracak ve projenin başlatılmasını üstlenecek olan “www” isimli dosyayı barındırmaktadır.

      İlgili dosyanın içeriğine göz atarsak eğer;
      Express Application Generator Nedir? Nasıl Kullanılır?
      ekran görüntüsünde görüldüğü üzere belli başlı çalışmalar yapılmıştır. Görüntüde farklı renklerle vurgulamaya çalıştığım gibi server oluşturmadan tutun port tanımlama fonksiyonlarına kadar tüm ayarlar gerçekleştirilmiştir. Burada dikkat edilmesi gereken husus 4. satırda bulunan, localde projenin yayınlanacağı port numarasının “3000” olarak belirtilmesidir..

    • public Klasörü
      Projede barındırılacak dosyalar kategorik bir şekilde bu klasörde tutulacaktır..
    • routes Klasörü
      Projede kullanılacak route yapılarının barındırılacağı dosyadır. Hali hazırda oluşturulmuş herhangi bir route dosyasının içeriğine göz atarsak eğer;

      var express = require('express');
      var router = express.Router();
      /* GET home page. */
      router.get('/', function(req, res, next) {
        res.render('index', { title: 'Express' });
      });
      module.exports = router;
      

      gördüğünüz gibi önceden konuyla ilgili kaleme(klavyeye) almış olduğumuz makalelerimizde olduğu gibi Router nesnesi ile route yapısını farklı bir sınıfta organize etmektedir.

    • views Klasörü
      İçerisinde projede kullanacağımız Pug dosyalarını barındıracak klasördür. Lakin Express Application Generator hali hazırda oluşturduğu projede Pug yapısının eski hali olan Jade formatında dosyaları oluşturmaktadır. Bizler hemen müdahalede bulunup bu dosyaların uzantısını Pug olarak ayarlayabiliriz.
      Express Application Generator Nedir? Nasıl Kullanılır?
    • app.js Dosyası
      Projede ana modül görevini üstlenen dosyadır. İçeriğine göz atarsak eğer;
      Express Application Generator Nedir? Nasıl Kullanılır?
      Kırmızı vurgulanan alanda route modülleri require edilmiş, turuncu vurgulanan alanda sayfanın görsellik alt yapısı belirtilmiş(burada jade olan değeri pug olarak değiştiriyoruz), yeşil vurgulanan alanda harici dosyalara hızlı erişebilmek için “public” klasörü static olarak belirtilmiş, sarı vurgulanan alanda require edilen route modülleri ana modüle route rotaları olarak bildirilmiş ve son olarak mor vurgulanan alanda ise middleware katmanları oluşturulmuş ve hata kontrol mekanizması sağlanmıştır.
    • package.json Dosyası
      Paket bağımlılık yönetimi için package.json dosyası oluşturulmuştur. İçeriğine göz atarsak eğer;

      {
        "name": "ecmascript",
        "version": "0.0.0",
        "private": true,
        "scripts": {
          "start": "node ./bin/www"
        },
        "dependencies": {
          "cookie-parser": "~1.4.3",
          "debug": "~2.6.9",
          "express": "~4.16.0",
          "http-errors": "~1.6.2",
          "morgan": "~1.9.0",
          "pug": "~2.0.3"
        }
      }
      

      şeklinde tasarlanmıştır. Burada “scripts” etiketi içerisinde tanımlanan “start” keywordüne bakarsanız eğer “bin” klasörü içerisindeki “www” dosyası node edilmektedir. Ayrıca jade’e özel (“jade”: “~1.11.0”) paketinin yerine pug için son versiyon paketini ekliyoruz.

  • 3. Adım
    Proje dosyaları oluşturulduktan sonra sıra package.json dosyasındaki tüm paketleri kurmaya geldi.

    npm install
    
  • 4. Adım
    Vee son olarak package.json dosyasındaki “scripts” etiketi içerisinde tanımlanan “start” keywordü ile projemizi çalıştıralım.

    npm start
    

    Express Application Generator Nedir? Nasıl Kullanılır?
    Express Application Generator Nedir? Nasıl Kullanılır?

İlgililerin faydalanması dileğiyle…

Sonraki yazılarımda görüşmek üzere…
İyi çalışmalar…

Bunlar da hoşunuza gidebilir...

1 Cevap

  1. 13 Ağustos 2018

    […] CRUD işlemlerinin nasıl yapıldığını ele alacağız. İlk olarak bir adet Node.js projesi inşa ediyoruz ve ardından projeye gerekli paketleri(express, mongoose vs.) entegre […]

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

*

Copy Protected by Chetan's WP-Copyprotect.