Du må være registrert og logget inn for å kunne legge ut innlegg på freak.no
X
LOGG INN
... eller du kan registrere deg nå
Dette nettstedet er avhengig av annonseinntekter for å holde driften og videre utvikling igang. Vi liker ikke reklame heller, men alternativene er ikke mange. Vær snill å vurder å slå av annonseblokkering, eller å abonnere på en reklamefri utgave av nettstedet.
  20 1903
Hei

På skolen har jeg en mulighet til å velge bonusemner. Siden jeg liker å lage nettsider har jeg tenkt på å velge enten PHP eller ASP.net.

Men jeg vet lite om disse fra før. Har sett endel PHP i f.eks wordpress og divere script jeg har sett på.

Mens Asp.net vet jeg egentlig ingenting om. Har skjønt man bruker VB eller C# her.

Regner med begge har sine fordeler og ulemper. Men jeg er interessert i å høre hva dere andre har å si om disse språkene.
Innenfor webprogramering har du i hovedsak: PHP, ASP.NET, Python(Django) og Ruby(Rails). Det finnes selvfølgelig flere, men disse er mest brukt.

PHP
er den største og mest utbredte av disse, og dermed den det er lettest å finne hosts som kan kjøre på sine servere, men alle er gode valg. Det finnes veldig mye dokumantasjon - men vel og merke veldig mye dårlig dokumentasjon av PHP. Mange som begynner med å lære seg PHP går i en stygg felle med å lære seg dårlig programmeringskikk hvor de blander design og logikk direkte i koden - noe som følger dem videre og ender opp med uoversiktlige koder; og masse unødvendige feil som er vanskelige å feilsøke p.g.a. dårlig oppsett. I tillegg er PHP langt fra det beste språket på objekt-orientering.

asp.net
Microsoft sin variant. Denne krever i hovedsak at du har en host som har windows-server. I hovedsak bruker man C# og .NET for å programmere her. Har ikke så stor erfaring med ASP, men har brukt C# og .NET og jeg er veldig fornøyd med dette.

Python med django
Dette er min desidert favoritt. Jeg har blitt helt forelsket i python til slike oppgaver. Dette blir veldig subjektivt men jeg synes python er veldig enkelt, raskt og gøy å programmere i. Språket er veldig godt dokumentert, og er bra på objekt-orientering. Man ser og at industrien begynner å få litt tro på python når selskaper som google har gått over til å ta i bruk python. Python er i motsetning til ASP.NET open-source, noe i hvertfall jeg ser på som en positiv ting

Ruby
Dette har jeg ikke mye kjennskap til. Men mange av vennene mine sverger veldig til dette. Jeg vet at MVC-prinsippet er veldig godt støttet i ruby. (Altså enkelt å dele design og logikk). Men for mer informasjon rundt dette håper jeg andre kan komme med.
Ikke vanskelig valg, gå for PHP da dette har laaaaaaaaangt flere fordeler og støtte rundtomkring. og ikke minst mye enklere å få hjelp.
Sitat av madsen339 Vis innlegg
Ikke vanskelig valg, gå for PHP da dette har laaaaaaaaangt flere fordeler
Vis hele sitatet...
Begrunnelse?
Sitat av madsen339 Vis innlegg
Ikke vanskelig valg, gå for PHP da dette har laaaaaaaaangt flere fordeler og støtte rundtomkring. og ikke minst mye enklere å få hjelp.
Vis hele sitatet...
hvilke fordeler har PHP som ikke de andre språkene har?
Bare å google litt det : http://www.webpronews.com/expertarti.../22/asp-vs-php

Sier ikke at du ikke kan gjøre det samme i php som i asp.
PHP

open source, veldig godt utbredt (de fleste servere har støtte for php), lett å lære seg, mange gode bøker både på norsk og engelsk, stabilt og facebook har en løsning for å konvertere php til c++ om du trenger det, *nevner andre grunner i fleng*

Sitat av etse Vis innlegg
hvilke fordeler har PHP som ikke de andre språkene har?
Vis hele sitatet...
Du kan kjøre det på både windows servere og linux servere. Det finnes versjoner av ASP servere for linux, men de er ikke spessielt gode (så vidt jeg vet).
Takk for flere gode svar

Det virker på meg som php er mer utbredd enn Asp? Hører iallefall mye mer om php. Og Visual Studio kreves kansje for å lage asp-kode? Det kan vel bli tungvint om man sitter med en mac.
Sitat av madsen339 Vis innlegg
Bare å google litt det : http://www.webpronews.com/expertarti.../22/asp-vs-php

Sier ikke at du ikke kan gjøre det samme i php som i asp.
Vis hele sitatet...
ut av den siden kom jeg frem til:
* PHP er litt raskere enn ASP, men forskjellen er så liten at bare folk som lager veldig store vil merke noe til dette
* PHP er platforuavhengi. Og skal du bruke ASP må du ha en windowsserver.

Av disse er det kun den siste jeg mener er noe som burde vektlegges. Men å skaffe en windows-server er ikke det store problemer, selv om det finnes veldig mange flere hosts som tilbyr hosting på linux-servere med PHP støtte.

Personlig ville jeg dåg brukt Python eller Ruby, og lært meg dette ordentlig. Begge er plattformuavhengie og har veldig mye god dokumentasjon både i bokform og på internett.

Jeg vil i mange tilfeller fraråde PHP, ikke fordi PHP er en dårlig verkøy, men fordi mye av dokumentasjonen ofte lærer folk ting på en veldig dårlig måte. 90% av alle tutorialer og eksempler jeg kommer over med PHP inneholder i stor grad folk som blander design og logikk i stor grad. Og om man lærer deg disse vanene er det vanskelig å legge de fra seg. Og dette er noe jeg personlig missliker sterkt.
Sitat av Yochi Vis innlegg
Takk for flere gode svar

Det virker på meg som php er mer utbredd enn Asp? Hører iallefall mye mer om php. Og Visual Studio kreves kansje for å lage asp-kode? Det kan vel bli tungvint om man sitter med en mac.
Vis hele sitatet...
PHP er mye mer utbredt, per dags dato. og ASP programmeres i hovedsak i Visual Studio, men du kan få express-versjonen gratis på microsoft sine nettsider.
Sist endret av etse; 25. november 2010 kl. 22:00.
PHP er ikke raskere enn asp(.net), tvert imot! .Net, uansett om du bruker c# eller vb.net er kompilerte språk, mens php er tolket, det gir en viss ytelsesfordel det er vanskelig å komme utenom. Spørsmålet er om du trenger denne ytelsesfordelen i prosjektet ditt? Dersom det er snakk om å lære seg webprogrammering vil jeg stille stor tvil til akkurat det.

PHP har fordeler i at det finnes veldig mye dokumentasjon og tutorials rundtomkring på nett, men dette er også et tveegget sverd da mye av dokumentasjonen bærer preg av å ha elendig kvalitet. Som nevnt til det kjedsommelige på dette forumet er det ingen god ide å lære seg programmering fra en bunke tutorials, man bør heller kjøpe en GOD bok.

Jeg er stor fan av å bruke riktig verktøy til riktig jobb, det hjelper meg ingenting å sitte og anbefale python eller ruby dersom det man egentlig vil er å modifisere wordpress (som er utviklet i php). Akkurat like lite som det hjelper å anbefale php til en person som egentlig vil utvikle et tillegg til Sharepoint-løsningen de har kjøpt på skole/jobb.

Hva kan fagene tilby? Hvilke problemstillinger vil man gjennomgå og hva vil man lære seg? Svaret på sånne spørsmål er langt mer interesasnte enn hvilket språk som faktisk benyttes.
Sitat av madsen339 Vis innlegg
Ikke vanskelig valg, gå for PHP da dette har laaaaaaaaangt flere fordeler og støtte rundtomkring.
Vis hele sitatet...
Det spørs jo helt hva man skal lage. For å ta to ytterpunkter: Til en liten gjestebok er PHP vel og bra, men skal du lage et større webapplikasjon (f.eks. nettbutikk), vil du fort se at ASP.NET med C#-kode i bånn er mye mer egnet. .NET-rammeverket er veldig rikt og gjør det veldig lett å lage mer omfattende ting.

Ang. .NET-utvikling på Mac: Kjør Windows 7 i VMWare Fusion og legg inn Visual Studio der.
Jeg gikk fra PHP til ASP.NET for et halvt år siden, og kunne ikke tenkt på å gå tilbake under noen omstendigheter.

Kode

PHP                                      ASP.NET
 + Meget utbredt                      - Ikke så utbredt
 + Kan kjøre på alle servere          - Kan kjøres på Windows og linux, men mye jobb for å få det til i linux (mono)
 + Lett å få hjelp                    + Lett å få hjelp
 - Utrolig ustrukturert               + Strukturert og lett å jobbe i
 - Blander kode og HTML               + Holder stort sett HTML og kode adskilt, har egne tagger <asp:Label...
Utdyper noen av dem:
- ASP.NET er faktisk lett å få hjelp i, så lenge du klarer å bruke google. Jeg finner alltid svar på msdn, stackoverflow ol.
- PHP er utrolig ustrukturert. Etter tre år måtte jeg fortsatt søke på w3schools for å vite om det het strreplace eller str_replace, og i tillegg for å vite hvilken rekkefølge jeg skulle plassere parameterene i. De bruker strpos, men str_replace. (uten understrek noen steder, med understrek andre steder) Det går ikke an å skrive $str->replace i strings, og det misliker jeg.
C# er et programmeringsspråk fra MS, som er objektorientert fra bunn av. (det er ikke PHP, selv om du kan gjøre det bra objektorientert på toppen). C# er strukturert. Jeg bruker veldig sjeldent oppslagsverk for å huske funksjonsnavn, de er selvforklarende. I tillegg holdes koden atskilt fra HTML og CSS i ASP.NET, det gjør det ikke i PHP med mindre du går inn for det.

Jeg kunne fint laget ting i PHP nå, fordi språket er såpass åpent at jeg kunne bygd opp språket på samme måte som det jeg gjør i C#. Men det ville blitt mer jobb, og mindre tilfredsstillelse. Jeg kommer nok ikke til å gå tilbake til PHP igjen, med mindre en kunde krever det.

I tillegg kan jeg bruke C# til å lage vanlige windowsprogrammer, og det er jo et pluss

EDIT: Når det gjelder .NET på Mac, vet jeg ikke helt hvordan det virker, men du kan se på monodevelop (søk på google). Det virker i linux, vet ikke helt hvordan det er i Mac.

EDIT IGJEN:
Jeg har forsvart PHP før, og kommer til å gjøre det igjen. Det er fullt mulig å lage kraftige applikasjoner i PHP, og det er for all del et bra verktøy, så jeg kommer aldri til å gå ut å fraråde folk til å bruke PHP. Dette som jeg skrev over er mine personlige meninger. Jeg er mye mer fornøyd med ASP.NET C# enn det jeg var med PHP.
Sist endret av Jannis!; 25. november 2010 kl. 22:24.
Mye gode svar her, det liker jeg

Ang. hva jeg har tenkt å bruke det til så har jeg ikke noe spesielt å komme med. Vil mest lære meg noe for å kunne lage mer avanserte nettsteder.

Tror begge fagene tar for seg veldig grunnleggende ting.

http://itfag.hist.no/public/fag/enke...fagkode=LV199D - Asp
http://itfag.hist.no/public/fag/enke...fagkode=LV197D - Php

Der er iallefall begge fagene.
Vel å lære ASP gir bonusen aat du lærer C#, som gjør overgangen til å lage f.eks. windowsaplikasjoner i C# liten. Om dette er noe som kanskje kan være interesant er det noe du kan vurdere å vekte i vurderingen din.
Synes definitivt c# / asp.net er best, slenger meg på mange av argumentene som er nevnt tidligere, spesielt at php er ustrukturert. Kan i tillegg nevne at vs er den beste ideen jeg har testet. Dessuten mener jeg at hosting ikke er noe å bekymre seg for. Tenk først på å lage et produkt, og hvordan du best mulig kan klare det. du kan kjøre asp.net rett fra vs.
Husk at det er vesensforskjell på asp og asp.net da. Det er viktig å vite. Søker du etter asp, kommer du over et utdatert rammeverk, der de bruker vbscript og javascript. Du må søke etter asp.net.

En meget bra lenke for å lære asp.net er http://asp.net/
z0p
uʍop ǝpısdn
z0p's Avatar
Fordelen med PHP er at man veldig raskt og enkelt kommer igang. Med notepad og en webserver, så vips har man sitt første "Hello world".
Ulempen med PHP er at man plukker opp veldig mange dårlige tendenser dersom brukt som førstespråk. Man lærer kanskje også ikke nok om grunnleggende programmeringsprinsipper.

Jeg er enig med moridin i at språket egentlig er kun et verktøy, og må ofte velges utifra oppgaven. Men som et førstespråk i startfasen i læringsprosessen (prosessen stopper aldri), mener jeg man bør velge oppgaver selv som passer til dette.

Dersom du vurderer å utvikle deg videre innenfor programmering ville jeg absolutt anbefalt c#. Visual basic derimot vil jeg dog ikke anbefale så varmt. Hvorvidt jeg støtter .net utover dette skal jeg ikke si så mye om, men det er viktig å huske på at det finnes flere andre gode løsninger der ute.
Sitat av moridin Vis innlegg
PHP er ikke raskere enn asp(.net), tvert imot! .Net, uansett om du bruker c# eller vb.net er kompilerte språk, mens php er tolket, det gir en viss ytelsesfordel det er vanskelig å komme utenom.
Vis hele sitatet...
Så absolutt ikke. Både php og asp er tolket. Derimot kan du ha et asp skript som kommuniserer med et kompilert c# eller vb.net programm.

Av andre ting som er nevn:

Php er ikke mer ustrukturert en ren asp.
Hverken php eller asp trenger å være ustrukturert, man må bare lære seg gode vaner, noe som man oftest gjør om man kjøper en bok eller tar et kurs.
Php er enkelt å lære og komme i gang med, og har mange muligheter for å komme videre.
At man kan bruke C# med asp er ingen stor fordel, om man først kan php så er det ikke så vanskelig å gå over til C#. Er mye kjekkere å programmere i php (har erfaring med begge deler, bruker C#/asp dagligt i sammenheng med studier, men har flere år erfaring med php fra før. Begge har sine fordeler/ulemper når det gjelder selve språket. Men jeg tror bestemt at jeg ville gått for php først, og så heller lært seg asp/C# i tilleg senere.)
Sist endret av d-_-b; 26. november 2010 kl. 10:30.
Jeg snakket ikke om ustrukturert i måten man programmerer på, jeg sankket om selve språket.

Bare se på referansene i w3schools: http://w3schools.com/php/default.asp (under References)

De har funksjoner som str_position() (med understrek) og strtolower() (uten understrek)

Hvis jeg har en string i en variabel som heter str. For å gjøre diverse operasjoner i denne:

Kode

ASP.NET:                               PHP:
str.Substring(5);                      substr($str,5);
if (str.StartsWith("Hello")) { }       http://bytes.com/topic/php/answers/466181-string-starts-function
str.Split('/');                        explode('/',$str);
Spesielt den siste er helt utrolig. Navnet er ulogisk, rekkefølgen på parameterne er ulogisk. Hvorfor ikke bare kjøre $str->Split('/')? Da hadde jeg godtatt språket med en gang.

Men for all del; jeg startet med PHP, og jeg tror nok det er lavere terskel for å komme inn i PHP, så det å starte med PHP og deretter gå over i ASP.NET er ikke sikkert så dumt.
Sist endret av Jannis!; 26. november 2010 kl. 13:24.
Hvorfor ikke bare kjøre $str->Split('/')
Vis hele sitatet...
Fordi PHP i utgangspunktet ikke er objektorientert.

Du kan jo lage $str->Split('/') selv, om nødvendig.
NOOOOOOOOOOOOOOOOOO-
robhol's Avatar
Fra språkstandpunkt er PHP forferdelig rotete, klønete, ulogisk, osv., mens ASP.NET-språkene i alle fall er noe bedre lagt opp.

Problemet er at ASP.NET ofte forutsetter MS-software på serveren, noe som ikke er så utbredt, og som ofte medfører ekstrakostnader.