WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   PHP Frameworks (https://www.wn.se/forum/showthread.php?t=1054216)

Adestro 2012-12-15 14:52

Citat:

Ursprungligen postat av Clarence (Inlägg 20457536)
Det flesta moderna ramverk använder väl anonyma funktioner rätt smart? Vidare används traits och nya annotations-stödet effektivt av bla ZF2, Symfony2 och Doctrine utan att förlora 5.3-kompatibilitet.

T o m IOC-containern i Laravel är statisk. Det är ju nästan roligt dum design. För att inte tala om alla som luras in i ActiveRecord-träsket då den ligger som default bundle (fortfarande?). För mig är det ungefär lika clean och classy som Cake eller CI. Går bra att jobba i om man måste men knappast något jag skulle få för mig att välja själv.

Nu låter du som de flesta rubyister som envist basunerar ut att allt som inte är Ruby är skräp. Alla har olika preferenser? :)

Clarence 2012-12-15 15:47

Citat:

Ursprungligen postat av Adestro (Inlägg 20457538)
Nu låter du som de flesta rubyister som envist basunerar ut att allt som inte är Ruby är skräp. Alla har olika preferenser? :)

Usch då. Jag antar du menade rails-fanatiker, ruby är ju faktiskt rätt så trevligt språk även för PHP-fanatiker annars.

Men det jag menar är att Laravel går emot design-principer inom OOP some fått fäste i alla språk. Oavsett om du använder C#, PHP, Java eller något annat så har singletons och statiska metoder samma effekter på återanvändande, testbarhet etc. I undantagsfall är det helt OK, men att t o m använda statiska metoder för modulen som normalt används för att undvika statiska beroenden ... då undrar jag verkligen hur man tänkt.

Jag tycker inte alls att Laravel är så förskräckligt dåligt som jag nog ger intryck av. Men om man marknadsför sig som clean and classy, då ska man få skit när man brister.

För övrigt har jag ett annat PHP ramverk som jag blivit lite intresserad av att titta mer på; Aura PHP. Mest intressant för att man skapat en biblioteks-samling som är helt utan andra dependencies och sedan byggt ett ramverk av det. Symfony2 är rätt bra på decoupling men de allra flesta andra är rätt dåliga på det (ZF2 kommer väl tvåa och är enormt mycket sämre). 100% test coverage är inte heller fy skam.

Adestro 2012-12-15 17:25

Citat:

Ursprungligen postat av Clarence (Inlägg 20457542)
Usch då. Jag antar du menade rails-fanatiker, ruby är ju faktiskt rätt så trevligt språk även för PHP-fanatiker annars.

Men det jag menar är att Laravel går emot design-principer inom OOP some fått fäste i alla språk. Oavsett om du använder C#, PHP, Java eller något annat så har singletons och statiska metoder samma effekter på återanvändande, testbarhet etc. I undantagsfall är det helt OK, men att t o m använda statiska metoder för modulen som normalt används för att undvika statiska beroenden ... då undrar jag verkligen hur man tänkt.

Jag tycker inte alls att Laravel är så förskräckligt dåligt som jag nog ger intryck av. Men om man marknadsför sig som clean and classy, då ska man få skit när man brister.

För övrigt har jag ett annat PHP ramverk som jag blivit lite intresserad av att titta mer på; Aura PHP. Mest intressant för att man skapat en biblioteks-samling som är helt utan andra dependencies och sedan byggt ett ramverk av det. Symfony2 är rätt bra på decoupling men de allra flesta andra är rätt dåliga på det (ZF2 kommer väl tvåa och är enormt mycket sämre). 100% test coverage är inte heller fy skam.

Det verkar dock som om den största strömmen kommer från CodeIgniter, och sett i det perspektivet är ju Laravel ett rejält steg uppåt när det gäller OOP. ;)

danjel 2012-12-17 11:52

Finns det något ramverk som har ett integrerat CMS värd namnet ?
Jag skulle verkligen vilja se något motsvarande EPiServer.
Och där man på ett intuitivt sätt kan hantera olika språk , hantera rättigheter för användargrupper, drag and drop av sidor i en trädstruktur m.m
Nu förstår jag många kör WordPress för innehåll..?

Clarence 2012-12-17 12:25

Det låter som om du vill ha ett CMS och ramverket det bygger på är mindre viktigt?

Gällande färdiga CMS av lite mer strukturerad karaktär än Wordpress är de mest lovande:
Drupal, Joomla, TYPO3

Om du hellre är efter ramverket skulle jag slå ett slag för Symfony CMF (Content Management Foundation). Använder PHPCR i botten. Ett imponerande system som närmast kommer från Java-världen. Du har dock inte så mycket färdigt där, men det finns gott om generators för vanliga tasks, bland annat Sonata Admin gen.

Drag and drop av sidor i en trädstruktur är jag osäker på om det finns i ovanstående system. Men övriga problem löser dom.

danjel 2012-12-17 16:48

Citat:

Ursprungligen postat av Clarence (Inlägg 20457665)
Det låter som om du vill ha ett CMS och ramverket det bygger på är mindre viktigt?
....

Ja ibland, men jag saknar just nu ett alternativ när man vill ha bra CMS funktionalitet och ett fullvärdigt ramverk. Ska kika på TYPO3 och Symfony mer. Tack!


För att utgå till ursprungsfrågan,
jag går mer och mer mot tanken att inte köra ramverk för egna projekt
då jag fokuserar mer på gränssnitten och vill undvika alltför mycket beroenden.
Jag håller på med denna uppsättning just nu:

- Html 5 boilerplate
- Jquery och Jquery UI
- Modernizer
- PHP som "template engine"
- Ingen MVC i egentlig mening, dvs ingen Routing med FrontController eller så. "Vyn" agerar även som controller och anropar ett "Model" lager
- En enkel egenutvecklad hybrid av DataMapper/DDD som innehåller all SQL och returnerar entitets POCOs
- Fristående klasser för DB samt Cache m.m

Clarence 2012-12-17 16:59

Citat:

Ursprungligen postat av danjel (Inlägg 20457694)
Ja ibland, men jag saknar just nu ett alternativ när man vill ha bra CMS funktionalitet och ett fullvärdigt ramverk. Ska kika på TYPO3 och Symfony mer. Tack!


För att utgå till ursprungsfrågan,
jag går mer och mer mot tanken att inte köra ramverk för egna projekt
då jag fokuserar mer på gränssnitten och vill undvika alltför mycket beroenden.
Jag håller på med denna uppsättning just nu:

- Html 5 boilerplate
- Jquery och Jquery UI
- Modernizer
- PHP som "template engine"
- Ingen MVC i egentlig mening, dvs ingen Routing med FrontController eller så. "Vyn" agerar även som controller och anropar ett "Model" lager
- En enkel egenutvecklad hybrid av DataMapper/DDD som innehåller all SQL och returnerar entitets POCOs
- Fristående klasser för DB samt Cache m.m

Njae, har du väldigt enkel eller custom struktur och inte allt för mycket kringkod så kanske du inte har behov av något fullt ramverk. Kan dock rekommendera en artikel om att skriva sitt eget micro framework av skaparen av Symfony. Det är egentligen mest en genomgång av Symfony2:s viktiga komponenter och hur du vet huruvida du har behov av dom själv och hur du sedan kan bygga ditt eget ramverk med din egen applikationstruktur. Du hittar den på: http://fabien.potencier.org/article/...ponents-part-1

Om du inte redan använder det vill jag också tipsa om Composer. För att läsa in dependencies och hämta bibliotek; tar även hand om din autoloading (även om den inte följer PSR-0). Nu vet jag inte om du redan bra uppsättning bibliotek för allt du behöver, men annars är just Symfony2 rätt decoupled (med väldigt genomtänka bibliotek) och Aura PHP helt decoupled (inte tittat så mycket på det, men ser bra ut). Skriver du dina egna privata bibliotek så kika även på Satis, för att sätta upp ett privat package repo för Composer.

eliasson 2013-01-11 21:32

1) Zend Framework tillsammans med Smarty
2) Inga andra
3) Egenutvecklade

tartareandesire 2013-01-13 23:04

Citat:

Ursprungligen postat av HenrikAI (Inlägg 20445541)
Kör numera antingen eget ramverk eller Symfony 2. Har tidigare jobbat gjort en del med Codeigniter och F3 (Fat Free Framework).

Det går ju även att bygga sitt eget custom-ramverk utifrån till exempel Symfony genom att bara använda de delar som är relevanta. Att använda ett helt ramverk till ett enkelt projekt är lite grann som att använda Drupal för en enkel webbplats med fem statiska sidor :) Visst funkar det men det är tämligen ineffektiv resursanvändning.

pelmered 2013-01-14 17:34

1) Vilket PHP Framwork/Template generator använder du helst?
Kohana! Tekniskt fantastiskt mycket bättre än exempelvis CodeIgniter. Nackdelarna är väl att det inte är så bra dokumenterat(man får ofta kolla i källkoden för att få detaljer om hur man ska göra). De har ett riktigt smart HMVC-filsystem med autoload och följer PSR-0 fr.om. version 3.3. Den enda saken som jag känner är i vägen för mig när jag utvecklar är ORM-lösningen, men den är å andra sidan frivillig att använda.

2) Vilka andra PHP Framworks/Template generator använder du?
Mustache/KOstache är det enda jag använt på senare tid och jag tycker det fungerar bra.

3) Vilka har du slutat använda?
CodeIgniter. Blev väldigt trätt på den extremt dåliga objektorienteringen och väldigt mycket som är "bad practice" bara för att de ska kunna behålla kompatibilitet med både gamla versioner av ramverket och gamla versioner av PHP. Det hela gör att ramverket känns väldigt omodernt och ointuitivt, speciellt om man har goda kunskaper om OO-programmering och MVC.
Egenutvecklade. Sällan en bra lösning tycker jag. Det som är logiskt i ditt huvud är kanske inte alls så logiskt i någon annans huvud och att hålla sig till ett ramverk är ett väldigt bra sätt att "tvingas" in i en vettig struktur som andra kan förstå. Så länge du inte är ensam utvecklare är det en enorm fördel. Sedan slipper man en del ansvar för applikationen och får en hel del inbyggd säkerhet på köpet vilket sparar mycket tid. Det är bara några av en lång rad fördelar med att använda ett open source-ramverk.


Alla tider är GMT +2. Klockan är nu 08:47.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson