Skåne Sjælland Linux User Group - http://www.sslug.dk Forside   Tilmelding   Postarkiv   Forum   Kalender   Søg
MhonArc Dato: [Date Prev] [Kronologisk oversigt] [Date Next]   Tråd: [Date Prev] [Oversigt tråde] [Date Next]   MhonArc
 

[OFFTOPIC] ASP/VB/PHP - forskellen er ...



Hejsa alle.

Dette er lidt offtopic, men med den store diskussion der har været omkring
NT contra Linux for nylig, ville jeg ihvertfald lige sørge for at
begreberne omkring ASP kom pĂĄ plads.

Advarsel: det er meget langt, og jeg væver meget.

(Active Server Pages) ASP er et "framework" for dynamiske web sider, det
vil sige, sider der pĂĄ serversiden fortolkes, og producerer en web side,
som klientens browser kan fortolke.

En af ASP's faciliteter er "session" management. I stedet for den
fuldkommen tilstandsløse protokol som http er, får man en automatisk
tilstandsstyring, hvor serveren automatisk sætter en cookie på klienten,
og vedligholder et datasæt der er specifikt for den pågældende klient, som
man meget nemt kan tilgĂĄ i sine asp sider.

Desuden er ASP et framework for brug af AOD objekter (jeg har glemt hvad
forkortelsen stĂĄr for). Disse objekter kan indeholde forskellig
funktionalitet, som kan tilgĂĄs under fortolkningen af ASP siden pĂĄ
serveren.

ASP er -ikke- det samme som (Visual Basic Script) VB. (Selv erfarne
Windows folk kan ikke altid finde ud af at skelne). VB script (kort VB)
anvendes meget ofte i ASP sider. Men, man kan anvende alle sprog der
overholder Windows script dll standarden (eller hvad den hedder).

I princippet kan ASP -snildt- implementeres pĂĄ andre serveren end IIS.
MEN, for langt de fleste betyder ASP alt det nedenstĂĄende:
- AOD
- VB
- Frontpage extensions
- IIS (<-- sygt, virkeligt sygt).
- MS SQL server (<-- man græmmer sig)
- MS Visual Interdev

Jeg har arbejdet en del med ASP, og efterhĂĄnden endnu mere med PHP. PHP er
ikke som ASP et framework, men et sprog. I forhold til ASP mangler PHP en
del ting, men tilbyder til gengæld et helt sprog.

PHP har ikke, som standard, nogen sessionsstyring. (Enhver kompetent
programmør, der tænker over det i 10 minutter kan -snildt- lave noget
fuldkommen ækvivalent, men lad nu det ligge). For de fleste der bruger PHP
vil jeg tro at de ogsĂĄ bruger Apache, og en eller anden form for database.

Det jeg prøver at sige, er at der er helt grundlæggende forskelle i hvad
for en "konstruktion" der omgiver de to ting (ASP/PHP).

En ting, som Windows folk overhovedet ikke gør sig klart, er at det er
relativt nemt at lave dynamiske web sites. Paradigmet for programmeringen
minder meget om funktionsprogrammering: givet et inddata, produceres et
uddata. Sideeffekterne i form af opdatering af databaser, osv, kan klares,
netop vha. databaser, og sessionsstyringen/tilstanden, er det heller ikke
svært at holde rede på. Hvis der er noget der er vanskeligt, er det at
holde ting konsistent, at bevare overblikket over "sitet", altsĂĄ undgĂĄ
spaghetti.

ASP + frontpage extensions + VB osv, er MS værktøj til windows
programmører for at de skal kunne lave dynamiske web ting.
ASP mv. er lavet af Microsofts udviklingsafdeling, for at den skulle være
så nem at bruge som muligt. For at der skal være så lidt at tænke over som
muligt, for at man skal kunne lave noget "der ser godt ud" sĂĄ hurtigt som
muligt. ASP er bygget omkring objekt hvis man vil noget.

PHP er lavet af programmører for programmører. PHP har klasser og
objekter, men til dagligt brug, tænker man i funktioner. Overblikket
bevarer man vha. en god understøttelse for modulisering.

Jeg synes forskellen i brug er enorm. Jeg kan ikke give konkrete
eksempler, men typisk fandt jeg at under ASP, initialiserede man objekter, 
satte egenskbaer, kaldte metoder i eet væk. Hver eneste gang man
ville noget, skulle man satme igennem 5-10 kald pĂĄ et eller andet dumt
objekt. Enormt trættende. PHP har en helt anden, langt mere direkte
tilgang til problemerne, som jeg ihvertfald finder langt mere
tiltrækkende. Og, som for mig betyder at jeg bruger meget (virkeligt
meget) mindre tid pĂĄ php3 udvikling, end jeg gjorde pĂĄ ASP.

Windows udviklere føler tit, at MS har opfundet genbrugelig kode, i form
af deres COM objekter. I unix verden har man aldrig lavet andet end at
genbruge kode. 

Udviklingsmæssigt opfatter jeg folk der stadig hænger fast i MS/IIS til
web udvikling, som enten tvunget til det af deres virksomhed, eller som
direkte "blinde" for hvad der er effektivt.

Oh well, hvad ender jeg med at sige? 

Diskussionen omkring ASP kontra PHP er lidt ligesom diskussion omkring
Visual Basic kontra MS Visual C++.

Det er to helt forskellige boldgader. At lave ting med "power" i, under
IIS/ASP er een lang pine. At lave ting med power under Apache/PHP er
programmering som det var meningen at det skulle være! Nemt, elegant,
hurtigt, effektivt. (Smukt).

Nogen gange tror jeg at MS bruger sĂĄ lang tid pĂĄ at udvikle fine GUI'er
til deres produkter for at skjule rĂĄddenskaben i den grundliggende brug af
systemet (Ikke design, men brugervenligheden. Hvor brugervenligt er
Windows 95, nĂĄr din sidste mulighed er regedit?).

Endelig: En løsning med Frontpage ext + ASP + IIS er virkelig kun til at
grine af, ved siden af en løsning med posting vha. CVS, preprocessing m.
PHP og web server som Apache. Den sidste danser i cirkler rundt om den
første. 

Det var det. Næste gang jeg poster skal det nok være lidt mere teknisk.
Det her er jo nærmest religiøst (ikke Windows kontra Linux, men ASP kontra
PHP).

Iøvrigt er diskussionen jo egentlig ikke så interessant. Om 5 år er der
nok ikke en NT web server tilbage, ligesom der jo heller ikke var for 5 ĂĄr
siden. (Husker I: "Internettet er for svært at bruge..." :-)

Mads

-- 
Mads Bondo Dydensborg.                               sslug@sslug
Just because a program takes text commands makes it complex? I love GUI's. I
love using the web. I love WYSIWYG word processors. But I also love CLIs. It
feels more natural to me, as if I'm talking with the computer (granted, the
language isn't english, it's bash, and the vocabulary happens to be whatever's 
is my PATH)--I tell it what to do and it does it for me (unlike GUI's where I
have to do everything my own damn self). 
                                      - fassler, in response to MS France FUD



 
Forside   Tilmelding   Postarkiv   Oversigt   Kalender   Søg

 
 
Henvendelse vedrørende websiderne til <www_admin>. Senest ændret 2005-08-10, klokken 21:28
Denne side vedligeholdes af MHonArc .