ugrás a tartalomhoz

Kicsi a bors, de erős: Silex

gabor.nadai · 2012. Feb. 29. (Sze), 09.49

Nem titok, hogy az Arkonnál a fejlesztésekhez a Symfony keretrendszert preferáljuk, az ingatlan.com frontendje mögött például egy éve áltunk át Symfony 1.4-re. Ennélfogva Fabien Potencier és a Sensio Labs neve nekünk egyáltalán, de valószínűleg másnak sem ismeretlen. A Symfony atyja most egy újabb terméket dobott a piacra, a Silex-et, s nem kizárt, hogy egyszer majd hasonló népszerűségnek fog ez is örvendeni, mint a Symfony.

Silex logó

A Silex egy PHP 5.3 alatt működő, kis méretű keretrendszer, amely ideális lehet egyszerűbb feladatok (például egy Facebook-alkalmazás) megoldására. A Symfony2 és a Pimple keretrendszerekre építkezik, de nagyrészt inspirálta a Ruby-s Sinatra is. Három fő tulajdonsága teszi kis feladatok megvalósításához a tökéletes választássá:

  • kompakt: tömör és egyértelmű API;
  • bővíthető: saját bővítmény-kezelővel rendelkezik, amely a Pimple-t használja, így rendkívül egyszerű a különböző library-k betöltése;
  • tesztelhető: akárcsak a Symfony-ban, a Silexben készített projektek is könnyedén tesztelhetők.

A hivatalos oldalon található leírás és kód alapján a lényeg, hogy kontrollereket definiálunk, amiket egy mozdulattal köthetünk a különböző route-okhoz:

require_once __DIR__ . '/silex.phar'; 

$app = new Silex\Application(); 

$app->get('/hello/{name}', function ($name) use ($app) {
    return 'Hello ' . $app->escape($name);
});

$app->run();

Mindössze a silex.phar elnevezésű PHP Archive betöltése szükséges, a többit a keretrendszer intézi, ahogyan ez el is várható. A route definiálása után már csak futtatni kell az appot, és gyakorlatilag készen is volnánk.

A Silex forráskódját a GitHubos projekt oldaláról lehet letölteni, illetve érdemes átolvasni a korrekt dokumentációját, amelyből gyorsan elsajátíthatóak működésének alapjai.

 
1

Használom

vadviktor · 2012. Feb. 29. (Sze), 13.38
Mikor csak egy picike, alap weblapot kérnek tőlem amiben alig van funkcionalitás akkor ezt használom. Így bármikor tovább bővíthetem, gyorsan beledobhatok extra szolgáltatásokat. Twiggel és a többi Symfony2-es komponensel brilliánsan egyszerű a bővíthetősége! (ami nem brilliáns azt meg githubon kitárgyalják) ;)
2

Oo

EL Tebe · 2012. Már. 1. (Cs), 18.32
Pont egy ilyen megoldáson töröm a fejem.
Hónapok óta próbálom rávenni magam, hogy nekikezdjek, erre most tessék.. :)
3

Egy próbát én is adtam már neki

Thoer · 2012. Már. 4. (V), 13.53
most épp pihen a projekt, de amúgy tényleg nem tűnik rossznak a Silex.

Bizonyos pontok viszont szerintem alul vannak dokumentálva, például hogy hogyan is lenne célszerű megírni azokat a teszteket, hogy passzoljon a keretrendszer filozófiájához.
4

Érdemes úgy, mintha Symfony 2

salla · 2012. Már. 5. (H), 19.28
Érdemes úgy, mintha Symfony 2 teszteket írnál, elvégre ugyanazok az eszközök érhetők el (WebTestCase, DomCrawler, stb.), és bennem a doksi ezt a hitet erősíti.