PHP vs. ASP.NET

Tags:    snak

Hey

Jeg har nu igennem nogle år programmeret hjemmesider, og har lavet mit eget lille CMS i PHP. Så det sprog er jeg ved at have rimelig styr på.

Dog har jeg i den seneste tid læst en del om ASP.NET og hørt at mange mener at dette er meget bedre/nemmere at programmere i.

Derfor er mit spørgsmål, hvad er bedst af disse 2 sprog. Kom evt. med positive og negative ting ved begge

På forhånd tak



Jeg holder med Jokke omkring de ting han nævner i forbindelse med jobs mv. Jeg tror ikke længere jeg kender nogle der arbejder professionelt med PHP (som sælger løsninger og ikke bare har et intranet skrevet i PHP)

Jeg arbejder selv professionelt med PHP - ligeså gør min ekskæreste og hendes nuævrende kæreste, samt en håndfuld andre af mine bekendte. PHP jobs er skam ganske almindelige også idag, og ingen af de nævnte arbejdspladser har den mindste overvejelse om at skifte til noget andet foreløbig.


Kort sagt, PHP bliver stort set kun brugt af evangelister der tuder over at deres elskede teknologi lige så langsomt bliver udfaset og til sidst går fuldstændigt i glemmebogen (og her varer det ikke længe inden Java går samme vej, men det er en anden diskusion)

Dokumentér påstanden eller lad være at gøre den - i hvert fald, når påstanden er af stødende natur, og du selv er inhabil i dette spørgsmål.

Bortset fra det, bliver alle sprog og teknologier "ligeså langsomt" udfaset og erstattet af nye og bedre. Det samme sker med .NET, og jeg er egentlig ret overbevist om at .NET får en kortere storhedstid end PHP og især Java.

.NET bærer meget præg af at være en "kampagne" fra Microsofts side - et værktøj de bruger for at fremme forretningen en stund, indtil et andet marked virker mere lokkende - hvorefter resourcerne vil blive flyttet derover. Dog virker .NET også til at være en af de større satsninger Microsoft har lavet i nyere tid, og det ser bestemt ud til at have givet pote - havde indsatsen været mindre, havde .NET ikke kunne indtage et marked ellers så solidt domineret af PHP, og til dels Java og Ruby. Men det laver ikke om på, at .NET vil gå i sig selv igen, så snart Microsoft ikke lige føler for det længere.

Og her har vi så styrken i PHP og Java - deres frie kildekode natur gør at teknologierne aldrig kan dø, for den enorme udviklerskare vil fortsætte med at benytte de forks og viderudviklinger som kommer af de to sprog, når de engang udfases. .NET vil ikke have nogle efterfølgere, når det engang udfases.



Per, jeg tror du tager kraftigt fejl i dine forudsigelser om at Microsoft dropper .NET! Det er for mig meget tydeligt at se at Microsoft poster SERIØSE mængder penge i .NET og relaterede teknologier, og forsøger at få .NET ind i alle deres produkter. Det er imo et smart træk, og det vidner om at de er rimeligt dedikerede til at fortsætte med det. Du siger at det vil gå i sig selv igen når de ikke længere føler for det, men hvad pokker baserer du dog det på? Indtil videre synes jeg ikke just at de har ladt deres udviklere i stikken, og jeg tror at .NET er deres helt store vision om at samle alle deres udviklere på noget der minder om én platform, der så til gengæld giver utroligt mange muligheder. Det giver netop den fordel, som en anden udvikler allerede har været inde på, at man med et .NET sprog, fx C#, kan udvikle både Windows apps, Windows services, Office extensions, web apps, web services og hvad der ellers findes af ting.

>.NET vil ikke have nogle efterfølgere, når det engang udfases.

Ikke forstået - du mener at Microsoft vil droppe .NET, uden at komme med et alternativ? Forventer du stadig at Microsoft kan lukke hvert sekund eller hvad? For det står da for mig som den eneste gode grund til at de ikke skulle enten fortsætte med .NET (hvilket jeg tror på) eller udvikle noget helt andet :)

Mvh.

Kasper (TSW)



Indlæg senest redigeret d. 15.09.2008 22:42 af Bruger #1
At du ikke formår at sætte dig ind i konkurrende teknologier, og vælger blindt ikke at lege lidt med på de præmisser vi andre opstiller, må stå for din egen regning. Man kommer ingen steder i en debat hvis man ikke giver lidt luft og lidt plads til andres input.


Var det ikke en idé, at du selv satte dig ind i .NET og Microsofts visioner på området før du selv drager forhastede konklusioner? Jeg har desuden selv kodet PHP i mange år så kender så udemærket godt sproget. Derfor jeg vælger at deltage i debatten, da jeg mener jeg kender til "begge lejre". Hvori i mit svar tolker du, at jeg ikke har sat mig ind i den teknologi jeg skriver om? Svarede jeg ikke på forklaringen på det spørgsmål jeg stillede til PHP?


Dokumentér påstanden eller lad være at gøre den - i hvert fald, når påstanden er af stødende natur, og du selv er inhabil i dette spørgsmål.


Der var den igen. Fej for din egen dør først... Giv luft ;)


Bortset fra det, bliver alle sprog og teknologier "ligeså langsomt" udfaset og erstattet af nye og bedre. Det samme sker med .NET, og jeg er egentlig ret overbevist om at .NET får en kortere storhedstid end PHP og især Java.


Hvad bygger du det her på? Du må lige dokumentere den påstand (nu du selv bragte det på banen).


.NET bærer meget præg af at være en "kampagne" fra Microsofts side - et værktøj de bruger for at fremme forretningen en stund, indtil et andet marked virker mere lokkende - hvorefter resourcerne vil blive flyttet derover.


Hvordan kommer du frem til, at .NET skulle være en kampagne? Den må du også gerne lige dokumentere...


Og her har vi så styrken i PHP og Java - deres frie kildekode natur gør at teknologierne aldrig kan dø, for den enorme udviklerskare vil fortsætte med at benytte de forks og viderudviklinger som kommer af de to sprog, når de engang udfases. .NET vil ikke have nogle efterfølgere, når det engang udfases.


Det sidste om at .NET bliver udfaset på et tidspunkt må du også gerne lige doumentere nu vi er i gang...

Hele humlen omkring open-source sprog som Java og PHP kan, for mig at se, både være en fordel og en ulempe. Man kan sige meget om Microsofts dispositioner, men de har fat i noget af det rigtige når de laver (og udbygger) et Framework som .NET der mere eller mindre kan benyttes til at kode op til næsten alle af deres produkter (Sql Servere, Office-pakke osv.). En af årsagerne til, at jeg valgte at fokusere mere på .NET og Microsofts teknologier var netop, at det var noget nemmere at håndtere for der er en udbyder (Microsoft) til det hele når der skal sættes en server op og udvikles noget til denne (IIS, MS Sql Server, .NET Framework, Visual Studio og hvad man nu eller skulle have brug for) hvorimod man med diverse open-source teknologier bliver nødt til at benytte sig af flere forskellige udbydere for at sætte noget lignende op med det resultat, at det er enormt besværligt, at få til at snakke sammen. Lad nu være med bare at antage at jeg ikke er dygtig nok til at sætte det op. Har sat begge dele (både Microsoft og diverse open-source) op et hav af gange og det er bare nemmere med MS.



Indlæg senest redigeret d. 15.09.2008 23:52 af Bruger #2243
PHP framework add-on for at lave forretningslogik i din webapplikation? Det lyder direkte tåbeligt... Giver overhovedet ikke nogen mening. Forretningslogik er jo noget du selv definerer ud fra applikationen. Så man kan altså ikke skrive sin egen forretningslogik i PHP selv til sin egen webapplikation?


Der er jeg helt enig i det Per siger, hvorfor lyder det tåbeligt? Som Per skriver kan man sagtens lave sit eget, der er bare ikke ret mange der gør det på "bruger niveau". De henter måske aller højest et færdiglavet og måske laver lidt videre på det.

Syntes måske du skulle smile lidt mere og lade vær med at se sort på tingene fordi du bare vil finde dårlige ting ved "det andet sprog".

Jeg er selv fan af .NET til at skrive applikationer i, men mine websites syntes jeg PHP klarer opgaven mere end fint. "Almindelige brugere" sætter sig jo ikke og laver forretningslogik, det er jo kun os nørder der gør det.



PHP framework add-on for at lave forretningslogik i din webapplikation? Det lyder direkte tåbeligt... Giver overhovedet ikke nogen mening. Forretningslogik er jo noget du selv definerer ud fra applikationen. Så man kan altså ikke skrive sin egen forretningslogik i PHP selv til sin egen webapplikation?


Der er jeg helt enig i det Per siger, hvorfor lyder det tåbeligt? Som Per skriver kan man sagtens lave sit eget, der er bare ikke ret mange der gør det på "bruger niveau". De henter måske aller højest et færdiglavet og måske laver lidt videre på det.

Syntes måske du skulle smile lidt mere og lade vær med at se sort på tingene fordi du bare vil finde dårlige ting ved "det andet sprog".

Jeg er selv fan af .NET til at skrive applikationer i, men mine websites syntes jeg PHP klarer opgaven mere end fint. "Almindelige brugere" sætter sig jo ikke og laver forretningslogik, det er jo kun os nørder der gør det.


For mig virker det fuldstændigt tåbeligt at der er lavet frameworks til ens forretningslogik. Jeg skal lige have opklaret en ting: Når jeg skriver "forretningslogik", hvad forstår i så ved det?

Den der med at smile, ikke se så sort på tingene og at jeg vil finde dårlige ting om PHP, hvor har du dog det fra? For det første kender du mig ikke så du aner ikke om jeg lige nu sidder og smiler...! (egentlig har jeg tit gået og grint lidt af den her debat af flere årsager...) Det er da i øvrigt en del af det med at sætte teknologier op mod hinanden og sætte dem lidt på spidsen og få fordele og ulemper frem...

Den sidste sætning du skriver forstår jeg ikke meget af. Hvad mener du med "almindelige brugere"? Det er da ikke nørdet at skrive forretningslogik i sine applikationer, det er da common sence!

(Du får lige en smiley til sidst så du kan se at jeg smiler når jeg skriver det her) :)



Indlæg senest redigeret d. 16.09.2008 08:34 af Bruger #2243
En ting som jeg synes er enormt fedt i .NET er, at jeg nemt og hurtigt kan bygge mit eget framework op og genbruge dette framework i alle mine applikationer. Så når jeg har brug for adgang til en MS Sql Server eller MySql database så kan jeg benytte mit framework til det lige gyldigt hvilken type applikation jeg skal lave og jeg kan genbruge det ud i det uendelige fordi det ikke er lavet til den enkelte applikation.

Kan man det i PHP?



Gah, kæmpe post efterhånden... anyways, nu hvor du (Jonas Midstrup) nævner at du i .NET laverdine egne frameworks og spørger til om dette ikke kan gøres i php, så må man da kun sige "jow, det kan det da".

Der er en lille artikel her, hvor en gut angriber hele "framework" termet: http://nettuts.com/php/creating-a-php5-framework-part-1/

Derudover, så består et framework vel bare af genbrugelige komponenter, som man kan bruge right?
Hvis man laver en lille søgning på wikipedia, finder man hurtigt frem til: http://en.wikipedia.org/wiki/Software_framework
Her står der bla.:
In computing, a software framework provides "the skeleton of an application that can be customized by an application developer"[1] Like software libraries, software frameworks aid the software developer by containing source code that solves problems for a given domain and provides a simple API.


Så.. hvis jeg lige hurtigt skulle lave noget i php, som jeg kunne genbruge igen og igen og igen, kunne det f.eks. være initialiseringen af en database forbindelse...?

Fold kodeboks ind/udPHP kode 


Denne klasse kan jeg så bruge i alle mine projekter, og så må jeg jo efter wikipedia's defination, have lavet et framework right ?

Nu skal I ikke begynde at snakke om arv og brokke jer over at jeg brugte mysql som default db ting, det var et eksempel



Det var da et rigtig godt eksempel på hvordan man kan lave et Framework i PHP. Findes der så også namespaces så man kan lave sine egne DLL'er i PHP? Tak for eksemplerne Jimmi :)

Her er i øvrigt det samme kode i .NET:
Fold kodeboks ind/udCSharp kode 




Indlæg senest redigeret d. 16.09.2008 15:40 af Bruger #2243
Danser i ligsom i siger ?

ASP.NET folk: fortæl meget konkret om hvad ASP.NET kan i forhold til PHP ?

Til PHP folk, svar mig venligst på dette: http://www.udvikleren.dk/PHP/Thread.aspx/6/26086/

Jeg er ikke ude på at "bashe" PHP eller Java eller Ruby eller Google eller nogle af de andre på markedet, men jeg vil gerne vide hvorfor PHP er så smart :)



Danser i ligsom i siger ?

ASP.NET folk: fortæl meget konkret om hvad ASP.NET kan i forhold til PHP ?

Til PHP folk, svar mig venligst på dette: http://www.udvikleren.dk/PHP/Thread.aspx/6/26086/

Jeg er ikke ude på at "bashe" PHP eller Java eller Ruby eller Google eller nogle af de andre på markedet, men jeg vil gerne vide hvorfor PHP er så smart :)


Begge sprog kan det samme... Det skal bare gøres på forskellige måder som regel...



t