Thread overview
laravel, vibe.d, web2py
Sep 09, 2017
erdem
Sep 10, 2017
erdem
Sep 10, 2017
Salih Dinçer
Sep 10, 2017
erdem
September 09, 2017

Bu aralar web uygulaması geliştirme çatılarını inceliyorum.

Laravel ile yaptığım basit örneği acaba vibe.d'ye nasıl aktarırım diye düşündüm. Örneğin sunucuda /görevler bölümüne geldiğimiz zaman bize tüm görevlerin listesini verecek.

Markete git
Çorba yap
Yemek pişir
Gezmeye git
Ne yaparsan yap
Top oyna

Bunları da birer bağlantı olarak düşünürseniz

http://gunluk.dev/görevler/1

adresine geldiğinizde

Markete git

http://gunluk.dev/görevler/2

adresine geldiğinizde

Çorba yap

yazmasını istiyoruz.

vibe'd'nin derleme işlemi biraz uzun sürüyor. Sanırım uygulama dosya büyüklüğü de oldukça fazla.

Laravel konusunda SO'da neredeyse 70 B (https://stackoverflow.com/questions/tagged/laravel) konu açılmış.

Bu adreste görüntülü dersler var.

https://laracasts.com/series/laravel-from-scratch-2017

Valet uygulaması ile http://gunluk.dev şeklinde tarayıcı penceresi üzerinden ek bir sunucu programı çalıştırmadan uygulamaya erişim sağlayabiliyorsunuz.

https://laravel.com/docs/5.5/valet

vibe.d örneği henüz bitmedi ama mysql kısmı şuna benzedi:

import std.stdio;
import std.variant;
import std.array: array;

import mysql;

void yazdır(T)(T aralık)
{
   for ( ; !aralık.empty; aralık.popFront())
   {
       Variant no = aralık.front[0];
       Variant açıklama = aralık.front[1];
       write(no, ' ');
       writeln(açıklama);
   }
}

void main()
{
   string mysqlAyarları = "host=localhost;port=3306;user=root;pwd=a12345;db=gunluk";
   Connection bağlantı = new Connection(mysqlAyarları);
   scope(exit)
       bağlantı.close();

   ResultRange aralık = query(bağlantı, "SELECT * FROM `gorevler`");

   aralık.yazdır;
}

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

September 10, 2017

Vibe.d ile de örnek bir uygulama yaptım Allah'ın izniyle. Kaynak kodu da github'a attım.

https://github.com/erdemoncel/sunucu/blob/master/source/app.d

Burada da sanırım vibe.d derleme işlemlerinin nasıl daha hızlanacağını anlatmışlar.

https://code.dawg.eu/reducing-vibed-turnaround-time-part-1-faster-linking.html

https://code.dawg.eu/reducing-vibed-turnaround-time-part-2-less-compiling.html

real 0m50.598s
user 0m47.432s
sys 0m3.100s

Gerçekten de bağlayıcı değiştirip ld.gold bağlayıcısına geçince süre oldukça kısaldı.

'$ time dub build'

real 0m12.327s
user 0m10.684s
sys 0m1.612s

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

September 10, 2017

Geliştirme aşamasında elbette derleme süresi çok etkili olabilir. Peki çalışma zamanında bu tür web uygulamaları yeterince hızlı mı gerçekten? Yani Perl ve PHP gibi scriptlerde biz daha çok verim aldığımızı düşünebilir miyiz?

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

September 10, 2017

Salihcim benim yaptığım uygulama çok az veriden oluşuyordu.

D ile kodlanmış bir uygulamanın hızını test etmek istersen buraya bakabilirsin.

https://forum.rejectedsoftware.com/

Hatta buradan indirerek kendi bilgisayarında deneyebilirsin.

https://github.com/rejectedsoftware/vibenews

Php'nin şöyle bir avantajı var. Örneğin sadece Laravel kütüphanesi ile ilgili yaklaşık 70 bin konu açıldığından bahsetmiştim. Bu da geniş bir geliştirici topluluğu ve özellikle öğrenme aşamasında, hızlı ilerleyebilmek açısından faydalı olduğunu düşünüyorum.

Bir dil öğrenirken kaynakların önemli olduğunu düşünüyorum.

Örneğin burada Php ile ilgili dersler var.

https://laracasts.com/series/php-for-beginners

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]