PHP vs AngularJS

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 volgende »

Ozzie PHP

Ozzie PHP

04/05/2015 02:32:54
Quote Anchor link
In navolging op dit topic ben ik eigenlijk een beetje in verwarring gebracht.

LEDfan gaf mij een link naar een video over AngularJS en die heb ik inmiddels bekeken. Ik zie dus dat je met een Javascript framework best wel heel toffe dingen kunt doen. En ik zie ook dat AngularJS volgens het MVC principe werkt en dat je met controllers en routes kunt werken. In die zin lijkt het dus eigenlijk wel een beetje op een PHP framework.

Nu de hamvraag ... wanneer gebruik je een PHP framework en wanneer een Javascript framework? Volgens mij kun je met beide technieken een vergelijkbaar resultaat bereiken. Wel lijkt het alsof Javascript wat sneller werkt. Maar ik vraag me nu dus echt af wanneer, voor welk doel je wat gebruikt. Wat zijn de overwegingen? Wat zijn voor- en nadelen? Hangt het van het "type" website af? Ik ben heeeel erg benieuwd ...
 
PHP hulp

PHP hulp

16/04/2024 21:00:16
 
Eddy E

Eddy E

04/05/2015 06:22:34
Quote Anchor link
Het lijkt mij dat voor een redelijk 'statische' pagina, zoals van een bedrijf, een webshop of een bibliotheek PHP veel sneller is: die geeft direct de juiste HTML-output en je browser hoeft die alleen maar te rederenen. Geen Javascript voor nodig.

Een Javascript-ding moet eerst html-output krijgen (dus het PHP-gedeelte heb je toch wel, via JSON), moet dat verwerken in Javascript en dan nog redereren.

Zo is het argument van 'sneller laden van een pagina' bij mijn gevoel, niet het geval.
Juist dat Javascript is langzamer, voor mijn idee.


Over de snelheid: bij een hele snelle webserver en goede caching, zal dat toch sneller zijn?
Ja, je hoeft je <title>, <head> en <links> niet te downloaden, maar hoe veel tijd kost dat?
Een JSON die "title" en "div" laad is wel sneller/korter, maar moet dan nog verwerkt worden. Hoeveel tijd kost dat?
Bij een snelle Javascript-motor (ala Chrome etc) is dat ook kort.

Persoonlijk: ik zou gewoon blij PHP blijven.
 
Bart V B

Bart V B

04/05/2015 09:16:27
Quote Anchor link
Goed, ik ga ff geen heel verhaal tikken want dat gaat wat lastig op een gsm.
Het is en blijft javascript. Dus wanneer men javascript uitschakelt, dan ben je de functionaliteit kwijt. Beter lijkt me dit te combineren met een server side taal. Bijvoorbeeld php. Het is heel mooi om fancy smoelende dingen te maken voor de gebruiker, maar je mist aan de andere kant een stukje controle die belangrijk is voor de veiligheid.

Persoonlijk zou ik eerst kijken wat ik er mee wil bereiken i.p.v. mij druk maken over snelheid. ;)
Gewijzigd op 04/05/2015 09:25:51 door Bart V B
 
Ozzie PHP

Ozzie PHP

04/05/2015 10:25:16
Quote Anchor link
>> Persoonlijk: ik zou gewoon blij PHP blijven.

Ik was ook niet van plan om dat overboord te zetten ;)

Maar ik zie wel dingen die me opvallen. Neem bijvoorbeeld dit voorbeeld. Een inputveld waarin je iets kunt typen. Hoe komt het dat de angular versie veel sneller reageert?

jquery : http://jsfiddle.net/daniellmb/4qxgv/
angular: http://jsfiddle.net/daniellmb/34yVp/

Maar in het algemeen is mijn vraag eigenlijk, WANNEER of WAAROM zou je een website maken met AngularJS? Wat zouden iemands beweegredenen kunnen zijn? Is het een persoonlijke voorkeur?

Wat ik zelf ook wel geinig vind is bijvoorbeeld zoiets. Je kunt in angularjs heel makkelijk een interactief filter maken, zoiets als dit:

http://jsfiddle.net/Onza/cWVrV/

Als je dat in jquery doet, krijg je dit, maar het is wat trager.

http://jsfiddle.net/umaar/t82gZ/

Nu gaat het me echt niet alleen om snelheid overigens, maar het valt me gewoon op. Kun je angular dan ook alleen voor dit soort specifieke toepassingen gebruiken, en niet voor routing e.d.?
 
Wouter J

Wouter J

04/05/2015 10:40:03
Quote Anchor link
De snelheid is omdat het een scriptje is die jij schrijft en een script die geschreven is door vele mensen met 100x meer JavaScript kennis (met alle respect) dan wij met z'n alleen hebben.

Overigens ben je nu nog steeds hele kleine stukjes Angular aan het vergelijken met andere technieken. Ik zou het nog steeds geen Angular noemen. Probeer eens een echte applicatie in Angular te schrijven, met models, views, controllers, etc. Pas dan kun je echt leuk gaan vergelijken.

De belangrijkste vraag die je jezelf moet stellen is: Dynamisch of Statisch? Als je hier statisch op antwoord, wordt Angular alleen maar traag en moet je lekker PHP gaan gebruiken. Als je hier Dynamisch op antwoord is het verstandig te gaan kijken naar JS frameworks (welke hou ik even in het midden, er zijn er velen).
 
Bart V B

Bart V B

04/05/2015 10:44:13
Quote Anchor link
Vergelijk je nu geen appels met peren?
Er zit in het jquery stuk een hoop extra dingen dus qua snelheid is het onlogisch om het te vergelijken.
 
Ozzie PHP

Ozzie PHP

04/05/2015 11:09:20
Quote Anchor link
>> De snelheid is omdat het een scriptje is die jij schrijft

Voor de goede orde, ik heb het niet zelf geschreven maar even gegoogled ;)

>> De belangrijkste vraag die je jezelf moet stellen is: Dynamisch of Statisch?

Oké, maar even l@llig gezegd, iedere webpagina is natuurlijk in zekere zin dynamisch. Maar ik denk dat je dan doelt op data die "live" direct op het scherm moet worden aangepast, zonder eerst de pagina te herladen?

* edit: kun je een paar voorbeelden geven van wat jij verstaat onder dynamische websites waar je (bijv.) angularjs voor zou kunnen gebruiken? *

>> Er zit in het jquery stuk een hoop extra dingen dus qua snelheid is het onlogisch om het te vergelijken.

Je bedoelt in de voorbeeldscriptjes? Maar dat is dus ook wat ik bedoel. Blijkbaar kun je in angularjs e.e.a. korter schrijven, heb je minder code nodig. Of begrijp ik jouw opmerking verkeerd?
Gewijzigd op 04/05/2015 11:12:37 door Ozzie PHP
 
Bart V B

Bart V B

04/05/2015 11:30:22
Quote Anchor link
Ja je begrijpt me verkeerd. :)
Er zit ook nog een fade in en dat is niet het geval bij angular. Of ik begrijp jou snelheid niet kan ook natuurlijk.
De schrijfwijze is wel korter idd.
Dat kan handig zijn. Ik dacht dat jij het had over het renderen.
 
Ozzie PHP

Ozzie PHP

04/05/2015 11:42:20
Quote Anchor link
>> Er zit ook nog een fade in en dat is niet het geval bij angular.

Dat klopt inderdaad, maar ik heb sowieso het idee dat angular sneller is. Probeer deze maar eens:

jquery : http://jsfiddle.net/daniellmb/4qxgv/
angular: http://jsfiddle.net/daniellmb/34yVp/

Bij angular verschijnt de tekst vrijwel gelijk terwijl je typt, bij jquery duurt het iets langer.

>> De schrijfwijze is wel korter idd.

Ja inderdaad. Dat vind ik zelf wel mooi.

Maar m'n vraag is vooral (en nog steeds) wanneer je angular zou kunnen gebruiken. Stel we nemen deze site. Zou angularjs daar geschikt voor zijn bijvoorbeeld? Ik zit voor mezelf een beetje te "brainstormen" wat zinnig is. AngularJS gaan gebruiken, of gewoon PHP met jQuery. Waar heb je bij het dagelijks gebruik het meeste aan? Wanneer heeft het zin om AngularJS te gebruiken in plaats van PHP met jQuery?
 
Bart V B

Bart V B

04/05/2015 12:11:47
Quote Anchor link
Je bent al overtuigd dat angular tof is.
php is een van je favoriete.
Waarom die 2 dan niet combineren?
Ik denk dat dat een hele persoonlijke afweging is. Wat ik vooral als voordeel zie is de schone output code (view)
 
Jacco Engel

Jacco Engel

04/05/2015 12:15:33
Quote Anchor link
Ozzie PHP op 04/05/2015 10:25:16:
>> Persoonlijk: ik zou gewoon blij PHP blijven.

Ik was ook niet van plan om dat overboord te zetten ;)

Maar ik zie wel dingen die me opvallen. Neem bijvoorbeeld dit voorbeeld. Een inputveld waarin je iets kunt typen. Hoe komt het dat de angular versie veel sneller reageert?

jquery : http://jsfiddle.net/daniellmb/4qxgv/
angular: http://jsfiddle.net/daniellmb/34yVp/

Maar in het algemeen is mijn vraag eigenlijk, WANNEER of WAAROM zou je een website maken met AngularJS? Wat zouden iemands beweegredenen kunnen zijn? Is het een persoonlijke voorkeur?

Wat ik zelf ook wel geinig vind is bijvoorbeeld zoiets. Je kunt in angularjs heel makkelijk een interactief filter maken, zoiets als dit:

http://jsfiddle.net/Onza/cWVrV/

Als je dat in jquery doet, krijg je dit, maar het is wat trager.

http://jsfiddle.net/umaar/t82gZ/

Nu gaat het me echt niet alleen om snelheid overigens, maar het valt me gewoon op. Kun je angular dan ook alleen voor dit soort specifieke toepassingen gebruiken, en niet voor routing e.d.?


Even als reactie op de 2 fiddles, is niet helemaal eerlijk vergelijken

Je angular filter gebruikt een hide, je jQuery filter een fadeOut. Hoe kort je die fade ook maakt, het gaat niet sneller zijn dan hide.

Als je je fadeOut door hide vervangt gaat het in dit geval gewoon even vlot ;)
 
Ozzie PHP

Ozzie PHP

04/05/2015 12:19:02
Quote Anchor link
Het is inderdaad tof en je zou het kunnen combineren, maar het moet wel ergens op slaan natuurlijk. Ik weet niet of je de video in mijn 1e post hebt gezien, maar het is dus behoorlijk complex. Je kan er ook de routing van de website mee regelen. Maar nog steeds is dus mijn vraag, waarom zou ik de routing via AngularJS regelen in plaats van met PHP? En waarom zou ik ng-repeat gebruiken in plaats van een php foreach loop? Ik snap niet echt wanneer of waarom je nu wat gebruikt?

En ... ik zou me ook wat meer willen verdiepen aan de interactieve kant. Met php kan ik aardig uit de voeten. Op het gebied van js kan ik nog wel wat slagen maken. Maar ik zit dus te denken om me wat te gaan "specialiseren" (heel groot woord) in AngularJS of jQuery, zodat ik dat wat beter onder de knie krijg. Maar ik vraag me dan dus af, waar ik het meeste aan ga hebben.
 
Randy vsf

Randy vsf

04/05/2015 12:46:22
Quote Anchor link
Probeer gewoon zelf eens iets te maken met Angular.
Ik heb meerdere projecten van mijzelf omgezet naar angular. wat eerst in PHP geschreven was.

Dan zie je pas waar je het het beste voor kunt gebruiken, en waarvoor andere technieken weer handiger zijn.
 
Ozzie PHP

Ozzie PHP

04/05/2015 12:50:49
Quote Anchor link
>> Probeer gewoon zelf eens iets te maken met Angular.

Nou, het is ook weer niet zo dat ik tijd teveel heb ;)

>> Ik heb meerdere projecten van mijzelf omgezet naar angular. wat eerst in PHP geschreven was.

Nou, vertel mij dan eens a) waarom je dat hebt gedaan en b) wat jouw bevindingen zijn. Ben je er iets mee opgeschoten?
 
Randy vsf

Randy vsf

04/05/2015 13:02:00
Quote Anchor link
Op stage werken ze met Angular, om dat snel onder de knie te krijgen en om te zien wat er gaat met angular (en wat niet) heb ik ervoor gekozen om bestaande projecten van mijzelf om te zetten naar angular.
 
Ozzie PHP

Ozzie PHP

04/05/2015 13:36:11
Quote Anchor link
Ah oké. En wat vind je ervan? Wat is positief en wat niet? Kun je het vergelijken met jquery?
Gewijzigd op 04/05/2015 13:38:10 door Ozzie PHP
 
Randy vsf

Randy vsf

04/05/2015 13:50:36
Quote Anchor link
Ik vind het wel een ruig framework. Maar ik kon voorheen geen javascript op wat simpel jquery na, dus dat kan ik niet vergelijken met andere :).

Jquery is niet hetzelfde, jquery is een library en angular is een framework om een site mee te bouwen.
 
Ozzie PHP

Ozzie PHP

04/05/2015 15:01:40
Quote Anchor link
Ah oké ... maar wat voor voordelen biedt het? Als je nu een nieuwe site zou gaan bouwen, zou je dan AngularJS gaan gebruiken? Wat kun je ermee wat je bijvoorbeeld voorheen niet kon?
 

04/05/2015 15:06:09
Quote Anchor link
Appels en peren?
PHP is serverside, Angular is en blijft serverside.

Je kan met Angular je frontend bouwen en besturen en met PHP zou je de data e.d kunnen besturen.
 
Wouter J

Wouter J

04/05/2015 15:29:20
Quote Anchor link
Deze site, op +/-1 buttons en "live op phphulp" widget na, is static. Je kan niks zonder een request naar de server te sturen.
Twitter is een voorbeeld van 1 van de grootste dynamische websites. Bijna alles werkt zonder refresh, het inladen van nieuwe tweets, het posten van tweets, het tonen van retweet counts, etc. Moet je eens voorstellen wat er zou gebeuren als twitter een PHP framework had gebruikt :)

Twitter gebruikt daarom ook FlightJS (een veel leuker JS framework ;)).

Voor PHPhulp zou het niet zoveel toevoegen om een dynamische website te zijn (tenzij het een soort chat-forum-systeem wordt). Voor Twitter zou het zijn van een statische website compleet belachelijk zijn.

Je moet dus zelf je afwegingen maken. Zoals ik in het andere topic al had verteld, een webshop kun je dynamisch en statisch maken. Beide werken, maar je zou kunnen zeggen dat de dynamische versie gebruikersvriendelijker is, omdat je niet telkens pagina na pagina aan het laden bent (product, winkelmandje, bestelpagina, success pagina). Daarom zou je daar misschien Angular voor willen gebruiken.

Overigens begin ik me af te vragen hoeveel van wat wij vertellen binnenkomt, want er wordt telkens weer gevraagd om jQuery met Angular te vergelijken terwijl iedereen tot nu toe heeft uitgelegd dat dat niet kan...
Gewijzigd op 04/05/2015 15:30:29 door Wouter J
 
Ozzie PHP

Ozzie PHP

04/05/2015 15:29:55
Quote Anchor link
>> Je kan met Angular je frontend bouwen en besturen en met PHP zou je de data e.d kunnen besturen.

Maar daar gaat mijn vraag dus over. Wanneer, in welke situatie, gebruik je Angular? Wanneer heb je zo'n javascript framework nodig? Voor wat voor soort websites gebruik je dat normaliter?

Toevoeging op 04/05/2015 15:33:12:

@Wouter, oké ... dat is een duidelijk onderscheid, thanks! En kun je dan ook combineren eigenlijk? Dus wel angular gebruiken, maar de routing gewoon met php doen? Of werkt dat dan weer niet?
Gewijzigd op 04/05/2015 15:33:59 door Ozzie PHP
 

Pagina: 1 2 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.