Avatar billede fnoop Nybegynder
24. juni 2005 - 19:24 Der er 9 kommentarer og
1 løsning

Opbygning af site, hvad er bedst?

Hej allesammen

Jeg er i gang med større projekt, er i gang med ideproccesen og er i gang med at skrive alt ned på papir (kedeligt, men genialt :)

Til det har jeg et helt grundlæggende spørgsmål omkirng sidens opbygning:
Man har en main-side, fx default.asp og så har man nogle underliggende sider, fx forum.asp, article.asp, community.asp osv.
I forum-sektionen, har man mulighed for se kategorier, se tråde og oprette selv, der har jeg så et spørgsmål. Hvad er bedst? At man laver en fil - forum.asp og så bruger case-funktionen til at dele siden op, fx forum.asp?view=categori, forum.asp?view=threads eller at man laver en ny fil for hver deling - fx forum_categori.asp, forum_threads.asp.

Jeg vil gerne vide, hvad er mest effektivt, både med hastighed, videreudvikling, sikkerhed og evt. andet, det skal være langsigtet. Det er ikke en privat site jeg er i gang med at lave, men et med mere kommercielt formål. Jeg renger med at i løbet af nogle år, så vil besøgs tallet være over de 30.000 om dagen.
Avatar billede advancedweb Nybegynder
24. juni 2005 - 19:39 #1
Personligt plejer jeg at lave det som undermapper, i sidste ende egentlig også i seperate filer. (f.eks. /forum/topics/ eller forum/read/).

En fordel ved at opdele dem er, er at når ASP-preprocessoren får dokuementet skal den ikke læse så meget igennem og åbne en så stor fil som hvis alt er samlet i én fil.
(Jeg er ikke sikker på det tekniske her, men det er det mest logiske set fra min side :-) )

Ang. sikkerhed, så er det nok, måske ikke sikre, men der er måske lidt mindre chanche (vil jeg umidelbart tro) at man laver fejl ved at samle det i ét dokument, og ved forskellige cases. Det er nemmere at afgøre, også senere til vidreudvikling om man har adgang til den fil eller ikke..

Men det er ikke den store forskel, men det var de fordele jeg lige kunne se ved at lave dem i flere filer...
Avatar billede keysersoze Guru
24. juni 2005 - 20:52 #2
Meget er et spørgsmål om smag - personligt kan jeg godt lide én default-fil og ud fra nogle variabler (querystring eller andet) så inkludere en side svarende til variablen.

Men det er et slavearbejde at bruge cases til at inkludere sider med - brug i stedet server.execute for så slipper du for cases. Eneste ulempe herved er at du ikke kan medføre variabler fra default og videre til din inkluderede side men fordelene vil jeg mene er langt større.
Avatar billede fnoop Nybegynder
25. juni 2005 - 01:33 #3
Jeg kan selv både se fordel og ulemper i begge metoder...

Querystring metode, det ser meget fedt ud med alle de der ? og =, og man har den fordel at alt sammen lægger i en fil og at designet nemt kan ændres, da man slipper for at gøre det på alle underliggende filer. Men problem er som nævnt før, så skal serveren skal bruge tid hver gang på at læse hele dokumentet igennem.

Underliggende filer, det er en simpel måde med ingen dikke dar, man ved præcis hvor skal hen ved evt. fejl og undgår at rode rundt i flere tusinder linjer. Hvis designet så skal ændres, så har man balladen, det tager en hulens masse tid.

...hvis jeg nu vælger querystring løsningen, skal jeg så vælge at skrive koderne i hvert case eller inkluderen en ny fil, med koderne?

Fx

CASE "community"
Velkommen til <%rs("brugernavn")%>
...

eller

CASE "community"
Server.Execute "community.asp"

...hvad er bedst? Til det sidste eksempel, key, jeg får ikke brug for at medføre variablerne fra default, så det er ikke noget problem.
Avatar billede olebole Juniormester
25. juni 2005 - 01:50 #4
<ole>

Blandt professionelle kodere skal man lede meget længe for at finde en, der bliver imponeret over en query-streng. Det er muligt, du finder at "det ser meget fedt ud med alle de der ? og =" ... men det er du nok temmelig alene om. Det er noget alle vi andre så vidt muligt undgår  :)
Er din kode rimelig fornuftig opbygget, tager det ikke længere tid at ændre design på den ene eller anden måde.

Umiddelbart synes jeg, det lyder somom, du bør lege meget mere med kodning, inden du kaster dig ud i et kommercielt site ... just my 2 cents  :)

/mvh
</bole>
Avatar billede keysersoze Guru
25. juni 2005 - 09:58 #5
jeg ville - som sagt - slet ikke lave hverken case eller if-statements. spild af tid - lav det hele dynamisk.

når jeg taler om variabler er det alt - dvs også databaseconnections. så bruger default fra databasen og skal din inkluderede også bruge fra databasen skal du lave 2x connection.
Avatar billede fnoop Nybegynder
25. juni 2005 - 13:46 #6
Tak for svarene, hvordan skal fordelle pointene?
Avatar billede keysersoze Guru
25. juni 2005 - 14:22 #7
det bestemmer du selv - her er et svar i hvert fald :)
Avatar billede fnoop Nybegynder
25. juni 2005 - 15:20 #8
Key<< Kan du ik' lige give et eksempel på hvordan man inkludere med server.execute? For det har jeg ikke helt forsået!
Avatar billede keysersoze Guru
25. juni 2005 - 16:24 #9
præcis som du har skrevet en gang;

Server.Execute "community.asp"

eller dynamisk;

Server.Execute SITEVAR & ".asp"
Avatar billede fnoop Nybegynder
25. juni 2005 - 16:30 #10
Tak, giver dig pointene
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
Kurser inden for grundlæggende programmering

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