Avatar billede alister_crowley Nybegynder
11. februar 2005 - 17:55 Der er 16 kommentarer og
1 løsning

ASP.NET hvorfor ?

Hej

Nu er jeg så småt gået i gang med ASP.NET (VB.NET)
og det er vel smart nok.

Men jeg finder det dyrt licensmæssigt, og mere serverkrævende end et gratis sprog som PHP.

Men der er jo nok mening i galskaben, så spørgmålet lyder:
Hvad er ASP.NET's styrke og specialitet ?

Jeg vil gøre opmærksom på at jeg endnu ikke har fået købt en MSSQL server, så helt stræke sider, uden denne (dyre) database.

Forslag til projektet som er nemmere, både kort- og langsigtet, er også velkommer.

På forhånd tak.
Avatar billede arne_v Ekspert
11. februar 2005 - 18:05 #1
(har vi ikke haft det spørgsmål for nyligt ??)

ASP.NET's stærke sider i forhold til PHP må være:
  - gennemført objekt orienteret
  - nem integration mellem web frontend og ikke web komponenter bagved
  - de design guidelines som frameworket ligger op til og som docs anbefaler

De svage sider må nok være:
  - prisen for softwaren
  - den tid det tager at lære
Avatar billede arne_v Ekspert
11. februar 2005 - 18:06 #2
http://www.eksperten.dk/spm/584251 er dog mest performance
Avatar billede arne_v Ekspert
11. februar 2005 - 18:07 #3
http://www.eksperten.dk/spm/588299 snakker om ASP versus ASP.NET og nogle af
betragtningerne må kunen overføres til ASP.NET versus PHP
Avatar billede arne_v Ekspert
11. februar 2005 - 18:08 #4
http://eksperten.dk/spm/511258 har lidt om de ikke tekniske betragtninger
Avatar billede alister_crowley Nybegynder
11. februar 2005 - 18:17 #5
ahh, ja det kan jeg se. Har bare opgivet at bruge søgefunktionen her på E* for lang tid siden.

Er i fuld gang med at læse, i mellemtiden kunne jeg godt (hvis muligt) tænke mig nogle forslag til konkrete projekter som ville være smartere i ASP.NET

Normalt skal man vælge sproget ud fra opgaven, og derfor må der jo være noget som ASP.NET er ekstra smart til (sikkert windows specifikke ting).
Avatar billede burningice Nybegynder
11. februar 2005 - 18:18 #6
asp.net er stærkt på grund af at det er

Object orienteret
- genbrug af kode
- mere klar opdeling af lagene (UI - Codebehind - Business Logic - Data)
- nem tilpasning af eksisterende klasser til ens egne behov

Typestærk
- mindre fejl da compileren finder største delen af dem med det samme

Eventbaseret gennem postback
- Bedre abstraktion mellem klient og server

Central styring af sikkerhed
- kan styres gennem xml konfigurationsfiler på mappe og filniveau
- unificered tilgang til sikkerhedsfunktionerne i koden via et User-object
  - IsAuthenticated()
  - IsInRole
  - m.fl.

Servercontroller
- alle tags kan gøres til serverkontrol (runat="server") og referes til på serveren som objecter gennem deres id

Webcontroller
- kan renderer output baseret på hvilket browser der er i den anden ende
- mere logisk opbygning end normale html-tags
- nogle af controllerne mapper til f.eks. button, mens andre kan renderer en hel kalender med en enkelt linjes kode, og andre igen kan bindes til en række af data så man slipper for at skrive den trivielle while-løkke for at skrive alle poster ud fra en database

Usercontroller
- bedre genbrug af kode og design end include

100% integrering med .Net frameworket og de muligheder det giver
- Nem adgang til data i både databaser og xml (ADO.Net)
- Webservices
- Effektik adgang til OS API'er (DllImpot), og bagudkompabilitet med COM
- God perfomance og sikkerhed (kompileret kode)
- GarbageCollector til optimering af hukommelse

Og jeg kunne blive ved længe endnu :P

Ulemper: Kan virke stort og overvældende, og kræver mere planlægning og overblik under udvikling. Hvis man ikke holder tungen lige i munden kan selv helt simple ting i php kræver det ene hack efter det andet i asp.net.

Og ang. licenser kører asp.net fint sammen med Mysql og kan også køre under Apache med Mono = gratis.
Avatar billede burningice Nybegynder
11. februar 2005 - 18:20 #7
nu er jeg efterhånden inkarneret asp.net bruger, men jeg kan ikke umiddelbart se nogle ting php skulle være bedre til end asp.net. Og nej, ikke nogen kommentarer om at asp.net kun kører på windows - det har jo ikke noget med hvad man kan lave.
Avatar billede alister_crowley Nybegynder
11. februar 2005 - 19:43 #8
hehe, mono har jeg hørt om , det skulle vist ikke være for fantastisk.

Mht. html så er ASP.NET opbygning ala. XML , så hvis man er xhtml/xml koder (ligesom mig) så er strukturen ikke så ny igen :)

Men der er vel ingen forskel i at kode en webshop i ASP.NET, og PHP.
Det afhænger af hvad kunden vil have (Og det webhotel de er købt).

Når man bruger VB.NET kan objektorienteret disskuteres, men jeg kan godt lide den javascript lignede syntaks. Og har lige lært kedskab med codebehind, finder jeg det endnu smartere.
Avatar billede arne_v Ekspert
11. februar 2005 - 19:46 #9
VB.NET er fuldt objekt orienteret i modsætning til VB6

Nogen formulerer den på måde at VB.NET er C# med VB syntax og ikke VB7
Avatar billede arne_v Ekspert
11. februar 2005 - 19:49 #10
Den logiske opbygning af en web shop er (forhåbentligt) ikke sprog specifik.

Men en PHP løsning og en ASP.NET løsning vil se meget forskellig ud i
implementation.
Avatar billede arne_v Ekspert
11. februar 2005 - 19:51 #11
Og ja - valg af PHP eller ASP eller ASP.NET eller JSP er ofte givet
udfra platform restriktioner fremfor hvordan en løsning kunne implementeres
i sprogene.
Avatar billede burningice Nybegynder
11. februar 2005 - 19:54 #12
nu tænker jeg ikke på selve strukturen i html, den er sådan set fin nok... men hvad er mest intuitivt

at skrive
<input type="button" value="en knap" />
eller
<asp:Button Text="en knap" />

ang asp.net på mono, er det så ikke sådan en standard kommentar man skal komme med? Har du selv prøvet? Eller kender nogen der har? Jeg har nemlig gode erfaringer med at kører asp.net på linux.
Avatar billede arne_v Ekspert
11. februar 2005 - 19:56 #13
cf>

Nogle af de ting du remser op har PHP også.

Og andre af tingene giver notorisk mindre kyndige problemer jævnfør en
løbende strøm af spørgsmål her.
Avatar billede alister_crowley Nybegynder
11. februar 2005 - 19:58 #14
kender en par C# nørder , hvor den ene prøvede mono på fedora, ikke lige det bedste var hans kommentar :)

Men jeg ville nu aldrig kører ASP/ASP.NET på andet end windows :)
Men i skal da have tak, huske at lægge et par svar.
Avatar billede arne_v Ekspert
11. februar 2005 - 20:07 #15
Jeg har leget en lille bitte smule med mono (ikke ASP.NET) og det virker fint nok.

Men kompabiliteten er "vi gør vores bedste for følge Microsoft". De har f.eks.
ikke nogen klar skille linie mellem hvad der er .NET 1.0 kompatibel og
hvad der er .NET 1.1 kompatibelt og hvad der er .NET 2.0 kompatibel. Det
er "det meste" af 1.1 plus "lidt af 2.0".

Det kan være meget fint. Og man kan sagtens bruge mono til at lære C# og sikker
også ASP.NET. Men jeg vil være meget tilbageholdende med at basere et
production system på det.

Ifølgde dem selv (http://www.go-mono.com/class-status-System.Web.html) så
mangler ASP.NET delen af mono 2371 ting i forhold til Microsoft og har 28
kendte fejl. Meget af det er sikkert ligegyldige bagateller. Men  der er
en risiko.
Avatar billede arne_v Ekspert
11. februar 2005 - 20:13 #16
Man kan sammenligne med Java. Hver version af Java har en TCK. For at du kan
kan kalde dit produkt for en J2SE 5.0 implementation så skal den lige
testes først. 76000 test cases (2.5 millioner linie kode). Og hvis du kalder noget
Java uden at have klaret samtlige tests, så står der en mindre hær af
SUN's advokater og sagsøger dig ind i helvede og tilbage igen. Ingen er
bekymret for at bygge og teste med SUN Java og så deploye på IBM eller BEA Java.
Kompabiliteten er meget veldefineret.
Avatar billede arne_v Ekspert
11. februar 2005 - 20:18 #17
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester