aug
27
ASP.NET of PHP: wat is beter?
Al jarenlang worden er door ontwikkelaars discussies gevoerd over welk platform nu beter is: PHP of ASP.NET. Door mensen om mij heen wordt dikwijls om mijn mening gevraagd: “Kan ik beter voor PHP kiezen of toch ASP.NET?” Ik heb zelf twee jaar in PHP geprogrammeerd voordat ik volledig op ASP.NET ben overgestapt, en heb dus ervaring met beide platformen. Overigens vind ik het wel belangrijk om te noemen dat PHP geen platform is maar een scripting taal. ASP.NET is wel een platform waarbij de programmeertalen C# en VB.NET (Visual Basic) gebruikt kunnen worden om onder andere websites/webapplicaties te ontwikkelen.
Op diverse internetfora zijn berichten te vinden waarin wordt beweerd dat PHP sneller zou zijn dan ASP.NET. Deze meningen worden echter zelden ondersteund door inhoudelijke argumenten. Omdat dergelijke betogen zo vaak herhaald worden is het snelheidsargument inmiddels een algemeen geaccepteerde mythe geworden.
ASP.NET werkt op basis van een gecompileerde taal, wat wil zeggen dat de meeste broncode wordt omgezet in een – direct door de processor uitvoerbaar – binair programma. Na deze eenmalige compilatie zal de applicatie (lees: uw website) volledig in binaire vorm worden uitgevoerd zonder dat een nieuwe compilatieslag nodig is. Een gecompileerde taal is per definitie sneller dan een geïnterpreteerde taal (zoals PHP). Op deze website is een vergelijking te vinden tussen het prestatievermogen van beide platformen. Hieruit blijkt dat ASP.NET significant beter presteert dan PHP.
ASP.NET is een intensief ondersteund en onderhouden platform en bevat veel faciliteiten en hulpmiddelen om het ontwikkelproces gemakkelijker te maken. Microsoft is continu bezig met het doorontwikkelen van het .NET framework en andere technologieën die daar direct of indirect mee te maken hebben. Door deze constante stroom van verbeteringen wordt het voor ontwikkelaars steeds efficiënter om goede ASP.NET applicaties te bouwen. PHP daarentegen verandert minder snel, omdat het in grote mate afhankelijk is van de open source gemeenschap. Mijn eigen ervaring is dat ASP.NET het makkelijker maakt om solide en grote object-georiënteerde projecten te bouwen die relatief eenvoudig zijn te onderhouden. Omdat beveiliging een zeer belangrijk component is van het .NET framework komt dit platform in mijn ogen ook op dat gebied als winnaar uit de bus.
Ik heb niets tegen PHP. Goed geschreven projecten in PHP kunnen veilig zijn en makkelijk te onderhouden. En voor slecht geschreven ASP.NET code kan juist het tegenovergestelde waar zijn, ondanks de bewezen architectuur van ASP.NET MVC. Echter in het algemeen geldt dat ASP.NET zorgt voor een productievere manier van ontwikkelen, beter schaalbaar is en zorgt voor makkelijker te onderhouden code. Dat is de reden dat ik een persoonlijke voorkeur heb voor ASP.NET, en waarom wij als bedrijf succesvol kunnen zijn: alle web developers bij Internetbureau Bestebroer ontwikkelen namelijk in ASP.NET.