Hvad er alternativerne til PHP, hvis nogen?

Bedste svar

Hvis du er på udkig efter at lave simpelt / mellemlangt niveau script på serversiden, skal du gå til PhP. Det er et af de bedste serverskripter, der findes, Hands Down! Det er det mest populære serversidesprog nogensinde!

Hvis du ønsker at håndtere enorme belastninger som Facebook eller google, skal du undersøge Python Scripting. Eller endda ved hjælp af C-programmering på serversiden.

Her er en nedgang med ofte anvendte serversidesprog

CGI / Perl

Perl har eksisteret længere end selve World Wide Web. Version 1 blev udgivet den 18. december 1987, et fuldt årti før de andre sprog, der er omfattet af denne artikel, blev overhovedet udtænkt! Hvis du er ny med disse ting, spekulerer du sandsynligvis på, hvordan et webudviklingssprog på serversiden kunne have eksisteret før selve Internettet. Ser du, Perl blev ikke oprettet som et webudviklingssprog. Perl er faktisk et multifunktionelt script-sprog, der var designet til at håndtere opgaver, der involverer en masse tekstmanipulation. Perl er meget god til at jonglere stykker tekst fra forskellige kilder og kombinere dem til at danne komplette dokumenter, hvilket er nøjagtigt hvad der er involveret i serverudvikling på websiden. I det halvandet årti siden oprettelsen er Perl blevet udvidet ved hjælp af moduler , stykker af nogle gange komplekse funktioner, der kan tilsluttes til sproget for at tilpasse det til forskellige specialiserede formål. Et sådant formål er oprettelsen af ​​dynamisk webindhold via Common Gateway Interface (CGI) understøttet af langt de fleste webservere. CGI er et standardmiddel, hvormed webserver-softwaren kan aflevere en browsers anmodning om en webside til ethvert program. Sandheden bliver fortalt, CGI-programmer kan skrives (og har været lejlighedsvis) i C / C ++, hvis det er nødvendigt. Med sin bekvemme håndtering af tekst har Perl dog altid været bedre egnet til jobbet, og nu hvor Perl leveres med CGI.pm modulet indbygget, er det mest af de nitty gritty detaljer om håndtering af ting som HTML-formularindsendelser håndteres for dig. Som en sidste velsignelse blev Omfattende Perl Archive Network (CPAN) grundlagt for at give en central kilde til tilføjelsesmoduler, eksempler på scripts og i nogle tilfælde fuldt ud udviklede webapplikationer. I dag er versioner af Perl tilgængelige gratis på alle større operativsystemer (fra almindelige Windows til den mest obskure Unix-variant), og hvis du vil gøre det til at gøre noget kompliceret, er chancerne for, at nogen allerede har skrevet et modul for at gøre dit job lettere . Den eneste ulempe ved dette sprog er, at da det ikke var specialbygget til webudvikling, er det ikke blevet optimeret hverken til hastighed, skalerbarhed eller brugervenlighed i en webserverindstilling. Der er meget lettere sprog derude at lære, der kan gøre lige så meget på webudviklingsarenaen, men Perl vil også lade dig gøre meget mere end bare webudvikling, hvis du har brug for det. Fordele:

  • Et modent sprog med over et årti historie, du er mindre tilbøjelige til at løbe ind i bugs i Perl end på ethvert andet serversprog.
  • Det er GRATIS, selvom en god bog, der viser rebene, måske sætter dig lidt tilbage.
  • De fleste gode webværter understøtter Perl, så du behøver sandsynligvis ikke betale ekstra for hosting.
  • Et stort netværk af dedikerede Perl-udviklere over hele verden står til din rådighed. Ikke alene vil de besvare dine spørgsmål på utallige Perl-diskussionsgrupper og mailinglister, men CPAN-arkivet (blandt andre) giver dig masser af eksempler at arbejde fra.

Ulemper:

  • Selvom der findes nogle muligheder for at forbedre situationen, skaleres Perl ikke særlig godt på travle servere. Hvis du ønsker at oprette en webapplikation, der kan placere mange hits på kort tid, kan du søge andre steder.
  • Perl er berygtet for at have fem forskellige måder at gøre selv enkleste ting, som kan gøre det vanskeligt at lære af andres arbejde, hvis de ikke brugte den samme metode, som du er vant til at se. Derudover er Perl-udviklere berygtede for at finde den korteste måde at skrive et givet program på, så du kan blive overrasket over at kun se på et eksemplar script for at finde ud af, at et komplet e-handels indkøbskurv script er blevet skrevet i tre linier kode, hvoraf de fleste er er squiggles og backslash.
  • Perl er optimeret til Unix-platformen, som den blev oprettet på, så hvis du forventer at arbejde på en Windows-server, har du sandsynligvis bedre valg præstationsmæssigt.
  • Perl er Open Source-software, hvilket betyder, at der ikke er nogen formel støtte til det.På trods af det enorme supportfællesskab, der er tilgængeligt for dig, hvis noget går galt, er den eneste person, du virkelig kan stole på, dig selv.

Måludvikler : De fleste webudviklere, der stadig arbejder med Perl i dag, er ofte Unix-administratorer og brugere, der også sætter Perl i arbejde i andre områder af deres system. For folk som disse er Perl et trøstende værktøj, gå hvor som helst, gør hvad som helst, som man altid kan stole på. Hvis du er en uerfaren udvikler, der står over for opgaven med at vedligeholde et websted, der oprindeligt blev skrevet i Perl, så tag et par gode bøger og forbered dig på at tilføje en virkelig kraftfuldt værktøj til dit arsenal.

ASP

Før vi går videre, lad os få noget ud af vejen for puristerne derude. Microsoft Active Server Pages (ASP) er ikke et sprog. ASP er snarere en ramme, der lader dig kombinere et af et antal script-sprog (VBScript og JavaScript er de mest populære valg) med et udvideligt sæt software komponenter . Disse komponenter behandles som objekter af det manuskriptsprog, du vælger, når det bruges som en del af ASP-rammen. I det væsentlige ligger kraften i ASP i dens evne til at kombinere relativt enkle script-sprog som VBScript og JavaScript med kraftfulde softwarekomponenter, der normalt bruges af C / C ++ -udviklere. Okay, det er Microsofts salgshøjde væk. Lad os nu se fakta: til alle praktiske formål kan ASP lige så godt være et sprog. Du får simpelthen et valg mellem at skrive VBScript ASP eller JavaScript ASP. Da det meste af prøvekoden derude er skrevet i VBScript, er dit valg alt andet end lavet til dig. Således betragtes ASP generelt som et sprog til udvikling af dynamiske websteder ved hjælp af VBScript, og under den paraply udmærker det sig. ASP er let at lære, kraftig nok til de fleste almindelige webudviklinger på serversiden og ret god præstationsmæssigt. ASP er tæt knyttet til Windows-operativsystemet (de fleste softwarekomponenter, som ASP er afhængige af for dets funktionalitet, er Windows-specifikke) og Microsoft Internet Information Services-webserver-softwaren. Af disse grunde er det hverken praktisk eller ønskeligt at køre et websted baseret på ASP på andet end en Windows-baseret server. Hvis du opretter din egen webserver, betyder det, at du skal investere i en kopi af Windows 2000 Server (selvom meget af ASP kører på Windows 2000 Professional, er IIS ikke så skalerbar på den platform). Hvis du betaler for webhosting, betyder det at du betaler for en Windows-baseret server, som normalt er dyrere. Uanset hvordan du ser på det, vil ASP koste dig at køre penge. Der er versioner af ASP, som kan køres på en Apache-server, der kører under Linux, men medmindre du er specifikt, er målet at flytte et eksisterende ASP-websted til en Linux-server, der er lidt pointe. En anden bekymring for ASP-udviklere er den relativt begrænsede karakter af de komponenter, der følger med ASP. Hvis alt hvad du behøver til din ansøgning er databaseforbindelse, en søgemaskine, e-mail-håndteringstjenester, grundlæggende formularbehandling og session tracking, så passer ASP dig fint. Enhver mindre almindelig funktionalitet kræver dog normalt, at du installerer yderligere softwarekomponenter på din server. Der er mange virksomheder derude, der producerer komponenter til brug med ASP, der genererer PDF-filer, interagerer med FTP-servere, håndterer binære filuploads og mange andre ting. Desværre har disse komponenter, ligesom ASP, tendens til at være kommercielle løsninger, der koster dig penge. Ulempen ved alt dette er, at ASP er en meget godt understøttet teknologi, med al opbakning fra Microsofts udviklingssamfund bag sig. MSDN , Microsoft Development Network leverer et væld af tekniske artikler og referencemateriale til ASP-udviklere, og Microsofts supportmedarbejdere vil med glæde undersøge eventuelle problemer, du har i din udviklingsindsats (til en pris). Hvis du til enhver tid har brug for et svar på et spørgsmål, kan du være sikker på, at der vil være nogen der, hvis opgave det er at give dig svaret. Fordele:

  • Temmelig nem at lære, selvom programmering er påkrævet.
  • Indbygget i Windows 2000 Server – ingen installationshovedpine.
  • Professionel support tilgængelig.

Ulemper:

  • Det er ikke gratis (medmindre du allerede bruger en Windows-server)
  • Specialiseret funktionalitet kræver muligvis, at du køber kommercielle komponenter eller udvikler dem selv i C / C ++ eller Visual Basic.
  • Hvis du er vant til syntaks i C-stil (delt af C / C ++, Java, Perl, PHP osv.), kan det være vanskeligt at forstå VBScripts idiosynkrasier.

Måludvikler: Hvis du har foretaget nogen udvikling med VBScript eller Visual Basic eller har udviklet COM-objekter i Windows før, så er dette bestemt webudviklingsplatformen for dig. ASP er også omtrent så venlig over for ikke-programmører som et programmeringssprog kan blive (men hvis du virkelig hader programmering, så tjek Cold Fusion, næste gang). Hvis du har det godt med at forpligte dig til Windows til din webserverplatform og har råd til de involverede omkostninger, eller hvis det firma, du arbejder for, blot kræver det supportniveau, som Microsoft kan tilbyde, er ASP en god teknologi at lære. Cold Fusion For webdesigneren, der aldrig har skrevet et program før, kan valget af serversides webudviklingsplatform være en frygtet. Uanset hvilken vej du går, står du over for et stort, ondt programmeringssprog, du skal lære, og dit hoved begynder bare at gøre ondt … Oprindeligt oprettet af Allaire i 1995 og for nylig købt af Macromedia , Cold Fusion var designet til at være anderledes. I stedet for et skriptsprog giver Cold Fusion dig et sæt tags, du kan lære. Ja, tags – ligesom de HTML-tags, du har lært at kende og elsket! Lad os tage eksemplet med at offentliggøre oplysninger, der er gemt i en database på Internettet. Med langt de fleste sprog på serversiden skal du tilføje kode til dit Webside for at bryde ud af HTML-tilstand, oprette forbindelse til databasen, anmode om poster fra databasen, som du vil vise, og behandle de resultater, som databasen sender dig, for at få vist den som en del af websiden. I Cold Fusion er dette fælles opgave udføres med to tags: et -tag, hvis attributter giver forespørgslen et navn og angiver, hvilke oplysninger der skal hentes fra hvilken database. Et andet tag, henviser til forespørgslen og lader dig bruge standard HTML for at formatere og vise resultaterne af forespørgslen. For den erfarne programmør kan dette tagbaserede system muligvis lyde begrænsende og ufleksibelt, men med et indbygget bibliotek med over 300 tags i den nyeste version og muligheden for at tilføje brugerdefinerede tags med mere traditionelle programmeringssprog som C / C ++ a nd Java, Cold Fusion er alt men begrænsende. Cold Fusion 5.0 inkluderer tags, der automatisk genererer grafer fra databasedata, giver problemfrit søgefaciliteter på dit websted og endda genererer HTML-formularer med fuld JavaScript-valideringskode. For desginer, der er tvunget til at tilegne sig server-færdigheder, kommer Cold Fusion med det utopiske løfte om kun at skulle lære et par nye tags! Ligesom ASP er Cold Fusion en kommerciel serverplatform, hvilket betyder, at det vil koste dig penge at køre det, uanset om du opretter din egen server eller lejer plads hos en webhostingudbyder. I modsætning til ASP er Cold Fusion imidlertid ikke bundet til Windows-platformen. Cold Fusion kan integreres lige så let med Apache, der kører under Linux, som det kan med IIS på Windows 2000. Fordele:

  • Ekstremt let at lære – ingen programmering er påkrævet!
  • Kraftfuld og meget skalerbar (den nyeste version har understøttelse af både software- og hardwarebaseret serverklyngning).
  • Professionel support fra Macromedia.
  • Tvær platform.

Ulemper:

  • Dyrt at indstille op din egen server: Cold Fusion Server Professional 5.0 koster $ 1.295
  • Programmører kan muligvis ikke lide de tagbaserede udviklingsmetoder.

Måludvikler: Webdesignere, der er fortrolige med HTML, men som har brug for at føje færdigheder på serversiden til deres repertoire uden at skulle lære et programmeringssprog. Fra den gennemsnitlige udviklers synspunkt er læring af Cold Fusion ligesom at lære nogle nye tags. Ikke-designere vil sandsynligvis også varme op til det pæne ved programmering på serversiden med tags, så hvis du er træt af fejlretning af dine serversidescript, kan Cold Fusion være værd at se på!

PHP

En relativ nybegynder på server-side-udviklingsarenaen har PHP fået et stort antal blandt programmører med sin velkendt syntaks og omfattende funktionsbibliotek. Også dens relativt enkle syntaks og lave, lave pris (det er gratis!) Har gjort det til et attraktivt alternativ til Microsofts ASP for nye udviklere. PHP er blevet kaldt af nogle for at være Perl-dræber i script-verdenen på serversiden. Med henblik på webudvikling kan PHP gøre næsten alt, hvad Perl kan, og gør det normalt hurtigere og lettere. I modsætning til Perl, som normalt kører som et CGI-program, der påberåbes af webserveren til at håndtere hver sideanmodning, kan PHP integreres med din webserver, så den fungerer meget mere effektivt.PHP er et ekstremt dygtigt sprog med en lang række indbyggede funktioner til at gøre alt fra sporing af brugersessioner til generering af dynamisk grafik og endda PDF-filer på farten! Ingen moduler at installere, ingen kommercielle tilføjelsesprogrammer at købe … PHP håndterer alt selv! Faktisk er næsten den eneste svaghed ved PHP, at det er relativt vanskeligt at udvide sproget for at tilføje ikke-standardfunktionalitet, der ikke håndteres af dens indbyggede funktioner. At gøre dette kræver kendskab til C / C ++ programmering og er ikke for svag af hjertet! Heldigvis bliver du nødt til at komme med en meget esoterisk webapplikation for at kræve funktionalitet, der ikke allerede er indbygget i PHP. PHP er gratis open source-software på tværs af platforme. Det integreres med alle større webservere på alle større operativsystemer. Dette er en stor velsignelse for udviklere med et budget, fordi de kan oprette en komplet Linux-baseret webserver med PHP-support og ikke betale en krone for software! Ulempen ved dette er naturligvis, at der ikke er nogen formel støtte til eventuelle problemer, du måtte støde på med PHP. Da PHP er sådan en ny og aktivt udviklet teknologi, findes der stadig lejlighedsvise fejl i de nyeste versioner. Lad ikke disse niggles afskrække dig – PHP har et ekstremt aktivt brugerfællesskab (hvoraf et stort segment findes i vores helt egne SitePoint Forums !) der altid er ivrig efter at hjælpe dig med eventuelle snublesten, og de nuværende versioner af PHP er ret stabile og pålidelige. Fordele:

  • Ret let at lære, især for udviklere med C / C ++, Java eller Perl-oplevelse.
  • Aktivt brugerfællesskab, der er villig til at give dig en hånd til at komme i gang.
  • Alt er indbygget lige i sproget.
  • Det er gratis!
  • Tværplatform .

Ulemper:

  • Dette sprog var designet til at være programmørvenligt, hvilket desværre gør det lidt mindre venligt for ikke-programmører.

Måludvikler: Webudviklere på et budget, der nyder godt af enkel programmering (f.eks. JavaScript), eller har ikke noget imod at lære hvordan. PHP giver dig meget magt med relativt enkel kodestruktur, men er muligvis ikke velegnet til meget avancerede applikationer, der ikke understøttes af PHPs indbyggede funktioner.

Java

Java er uden tvivl den mest kraftfulde platform til serverudvikling af web i dag. Fra små Java-programmer (Servlets), der håndterer websideanmodninger til JavaServer Pages (JSPer), der kombinerer HTML med brugerdefinerede tags og Java-kode, og endda op til Enterprise JavaBeans (EJBer), softwarekomponenter med sofistikerede evner til at bære information problemfrit på tværs af servere og netværk til at rumme distribuerede applikationer, er Java virkelig en hotteknologi. En erfaren Java-webudvikler kan nemt trække lønninger ud over US $ 100.000 / år. Som du måske forventer, er der en grund til det: Java er ikke let at lære! I modsætning til script-sprog som Perl, ASP og PHP er Java et fuldt udbygget programmeringssprog, der er i stand til at skrive store programmer! En person med lidt programmeringserfaring kunne forvente at hente en fungerende viden om Java-sproget om en måned eller to ved hjælp af en god bog, og i en anden måned ville det sandsynligvis være i stand til at hente det grundlæggende i enkel programmering på serversiden med Java. Nu, hvis du er interesseret i at lave en karriere inden for programmering på serversiden, så virker det måske ikke meget, men hvis du bare vil få noget til at fungere hurtigt, kan et enklere sprog som PHP få dig til at køre om en uge eller mindre! Java er omdøbt for sin WORA-filosofi (Write One, Run Anywhere), og faktisk kan Java køres på alle større webservere og alle større operativsystemer. Java-webapplikationer kan også samles i et standard Web Application Archive (.WAR) -filer, som derefter kan installeres på enhver Java-aktiveret webserver, uanset platformen. Skaberne af Java planlagde, at denne mekanisme skulle bruges til at distribuere kommercielle webapplikationer til brug på Java-webservere; men efter min erfaring har Java-webapplikationer tendens til at være skræddersyede løsninger til komplekse problemer snarere end løsninger, der kan sælges, som du kan købe online. Mange forskellige leverandører producerer plug-ins, der gør det muligt for webservere som Apache og IIS at køre Java-webapplikationer, og mens de fleste af dem er gratis til personlig brug og udvikling, skal flertallet betales, før du kan bruge dem til at betjene en kommerciel Internet side. Fordele:

  • Ekstremt kraftfuld og skalerbar.
  • Tværplatform.
  • De fleste Java-server-plugins er gratis til personlige formål og udviklingsformål.

Ulemper:

  • Java tager meget arbejde at lære.Start ikke engang, hvis du ikke er seriøs med at lære objektorienteret programmering.
  • De fleste Java-server-plugins skal betales for, hvis de skal bruges til at være vært for et kommercielt websted.

Måludvikler: Seriøse udviklere, der ønsker det ultimative inden for magt, fleksibilitet og skalerbarhed til deres webapplikationer og ikke har noget imod at betale for det i sved, tårer og udviklingstid. Resume I denne artikel kiggede vi på de relative funktioner, fordele og nedgang i alle de vigtige serverudviklingsmuligheder, der er tilgængelige i dag:

  • Perl : et modent sprog på tværs af platforme, der kan være svært at forstå
  • ASP : Microsofts kraftfulde, Windows-baserede ramme
  • Cold Fusion : en kraftfuld, tag-baseret mulighed for ikke-programmører
  • PHP : et cross-platform, open source-alternativ med mange funktioner indbygget
  • Java : det ultimative inden for magt og fleksibilitet for seriøse programmører

Skål

Svar

PHP er bare et script-sprog på serversiden. Ethvert programmeringssprog kan bruges som alternativ, så længe der ikke er en serversoftware tilgængelig, der understøtter det. Du kan bruge Python til Django, JavaScript til Node.JS, ASP. Net til IIS, Java til Tomcat, Php til Apache og mange flere, som Jeg har ikke brugt det endnu.

Min personlige favorit er ASP .net MVC, fordi jeg kan bruge det kraftfulde Visual Studio til at kode og kan bruge C #. Jeg kan ikke lide php bare fordi den ikke har en meget god IDE (sandsynligvis har jeg aldrig fået en) så kraftig som Visual Studio og for det meste er php stadig proceduremæssig. Jeg har kodet i objektorienterede sprog i det meste af min karriere, og scripting i procedureløshed virker for arkaisk for mig. Jeg hader endda JS for det, men i det mindste er jQuery der for at løse de fleste af mine problemer.

Det er bare min følelse af, at php mangler den struktur, der var nødvendig for et stort projekt. Ja, jeg ved det facebook bruger php, men det er stærkt tilpasset, og de har talentfulde ingeniører til at skabe deres egne rammer og IDEer. Jeg har endda prøvet rammer som CodeIgniter og CakePHP. Selvom de bestemt er bedre end at skrive rå php-kode, kan de ikke sammenligne luksus ved at skrive C #-kode.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *