Jaké jsou alternativy PHP, pokud existují?

Nejlepší odpověď

Upřímně řečeno, pokud hledáte jednoduché nebo střední skriptování na straně serveru, měli byste jít na PhP. Je to jeden z nejlepších serverových skriptů, Hands Down! Je to nejpopulárnější jazyk na straně serveru vůbec!

Pokud hledáte zvládnout obrovské zátěže jako Facebook nebo Google, měli byste se podívat do skriptování Pythonu. Nebo dokonce pomocí programování C na straně serveru.

Zde je seznam běžně používaných jazyků na straně serveru

CGI / Perl

Perl funguje déle než samotný web. Verze 1 byla vydána 18. prosince 1987, celé desetiletí ještě předtím, než byly dokonce vytvořeny další jazyky obsažené v tomto článku! Pokud jste v této oblasti nováčkem, pravděpodobně vás zajímá, jak mohl existovat vývojový jazyk na straně serveru před samotným webem. Jak vidíte, Perl nebyl vytvořen jako jazyk pro vývoj webových aplikací. Perl je ve skutečnosti víceúčelový skriptovací jazyk, který byl navržen tak, aby zvládl úkoly, které zahrnují hodně manipulace s textem. Perl umí žonglovat s kousky textu z různých zdrojů a kombinovat je do úplných dokumentů, což je přesně to, co se týká vývoje webů na straně serveru. Za deset let a půl od svého vzniku byl Perl rozšířen pomocí modulů , částí někdy složitých funkcí, které lze do jazyka zapojit a přizpůsobit se k různým specializovaným účelům. Jedním z takových účelů je vytvoření dynamického webového obsahu prostřednictvím rozhraní Common Gateway Interface (CGI) podporovaného velkou většinou webových serverů. CGI je standardní prostředek, kterým software webového serveru může předat požadavek prohlížeče na webovou stránku libovolnému programu. Po pravdě řečeno, programy CGI mohou být (a byly příležitostně) napsány v C / C ++, pokud je to nutné. Díky své pohodlné manipulaci s textem se však Perl vždy lépe hodil pro danou úlohu a nyní, když Perl přichází s CGI.pm zabudovaným modulem, většina z drobných drsných detailů zpracování věcí, jako je odesílání formulářů HTML, jsou zpracovány za vás. Jako poslední přínos byla založena Comprehensive Perl Archive Network (CPAN) , která poskytuje centralizovaný zdroj pro doplňkové moduly, ukázkové skripty a v některých případech plně vyvinuté webové aplikace. Dnes jsou verze Perlu k dispozici zdarma na všech hlavních operačních systémech (od hlavního systému Windows až po nejasnou variantu Unixu) a pokud to chcete udělat komplikovaně, je pravděpodobné, že už někdo napsal modul, který vám usnadní práci . Jedinou nevýhodou tohoto jazyka je, že protože nebyl vytvořen pro vývoj webových aplikací, nebyl optimalizován ani pro rychlost, škálovatelnost ani pro snadné použití v nastavení webového serveru. Existuje mnohem jednodušší jazyk, který se dá naučit a který dokáže v aréně vývoje webových aplikací stejně mnoho, ale Perl vám také umožní dělat mnohem víc než jen vývoj webových aplikací, pokud budete potřebovat. Výhody:

  • Zralý jazyk s více než desetiletou historií, je méně pravděpodobné, že narazíte na chyby v Perlu, než v jakémkoli jiném jazyce na straně serveru.
  • Je to ZDARMA, i když dobrá kniha, která vám ukáže lana, vás může trochu vrátit zpět.
  • Většina dobrých webových hostitelů podporuje Perl, takže pravděpodobně nebudete muset platit extra za hostování.
  • K dispozici je rozsáhlá síť specializovaných vývojářů Perlu po celém světě. Nejen, že budou odpovídat na vaše otázky v nesčetných diskusních skupinách a seznamech adresátů Perlu, ale archiv CPAN (mimo jiné) vám poskytne spoustu příkladů, ze kterých můžete pracovat.

Nevýhody:

  • Přestože existují určité možnosti, jak situaci zlepšit, Perl se na zaneprázdněných serverech zvlášť dobře nemění. Pokud hledáte vytvořit webovou aplikaci, která dokáže v krátkém čase vyřídit mnoho zásahů, možná budete chtít hledat jinde.
  • Perl je známý tím, že má pět různých způsobů, jak dělat i nejjednodušší věc, která může ztěžovat učení z práce ostatních, pokud nepoužili stejnou metodu, na kterou jste zvyklí. Kromě toho jsou vývojáři v Perlu proslulí hledáním nejkratšího způsobu psaní daného programu, takže vás může překvapit, když se podíváte na ukázkový skript, abyste zjistili, že skript nákupního košíku s elektronickým obchodem byl napsán ve třech řádcích kódu, z nichž většina je klikatá a zpětná lomítka.
  • Perl je optimalizován pro unixovou platformu, na které byl vytvořen, takže pokud očekáváte, že budete pracovat na serveru Windows, pravděpodobně budete mít lepší výběr z hlediska výkonu.
  • Perl je software s otevřeným zdrojovým kódem, což znamená, že pro něj neexistuje žádná formální podpora.Navzdory obrovské komunitě podpory, kterou máte k dispozici, pokud se něco pokazí, jedinou osobou, na kterou se můžete opravdu spolehnout, jste vy.

Cílový vývojář : Většina vývojářů webu, kteří dnes stále pracují s Perlem, mají tendenci být unixovými administrátory a uživateli, kteří také Perl nechávají pracovat v jiných oblastech jejich systému. Pro lidi, jako jsou tito, je Perl utěšujícím nástrojem „jděte kamkoli a cokoli“, na který se lze vždy spolehnout. Pokud jste nezkušený vývojář, který stojí před úkolem udržovat web, který byl původně napsán v Perlu, vezměte si několik dobrých knih a připravte se na přidání skutečně účinný nástroj do vašeho arzenálu.

ASP

Než půjdeme dále, pojďme pro puristy venku něco z cesty. Stránky Microsoft Active Server Pages (ASP) nejsou jazykem. ASP je spíše rámec, který vám umožní kombinovat jeden z mnoha skriptovacích jazyků (VBScript a JavaScript jsou nejoblíbenější volbou) s rozšiřitelnou sadou softwarových komponent . Tyto komponenty jsou skriptovacím jazykem podle vašeho výběru považovány za objekty, pokud se používají jako součást rámce ASP. Síla ASP v podstatě spočívá v její schopnosti kombinovat relativně jednoduché skriptovací jazyky jako VBScript a JavaScript s výkonnými softwarovými komponentami, které vývojáři C / C ++ běžně používají. Dobře, to je prodejní hřiště Microsoftu. Podívejme se nyní na fakta: z praktických důvodů může být ASP jazykem. Jednoduše máte na výběr mezi psaním VBScript ASP nebo JavaScript ASP. Vzhledem k tomu, že většina ukázkového kódu je napsána ve VBScript, je vaše volba téměř pro vás. Proto je ASP obecně považován za jazyk pro vývoj dynamických webových stránek pomocí VBScript a pod tímto zastřešením vyniká. ASP je snadné se naučit, dostatečně výkonný pro většinu běžného webového vývoje na straně serveru a docela dobrý výkon. ASP je úzce spojeno s operačním systémem Windows (většina softwarových komponent, na které se spoléhá ASP pro svou funkčnost, jsou specifické pro Windows) a softwarem webového serveru Microsoft Internet Information Services. Z těchto důvodů není praktické ani žádoucí spouštět web založený na ASP na ničem jiném než na serveru se systémem Windows. Pokud nastavujete vlastní webový server, znamená to, že musíte investovat do kopie systému Windows 2000 Server (ačkoli většina ASP běží na Windows 2000 Professional, IIS není na této platformě tak škálovatelná). Pokud platíte za webhosting, znamená to platit za server se systémem Windows, který je obvykle dražší. Jakkoli se na to podíváte, ASP vás bude stát za provoz. Existují verze ASP, které lze spustit na serveru Apache běžícím pod Linuxem, ale pokud nejste konkrétním cílem je přesunout existující web ASP na Linuxový server, nemá to smysl. Dalším problémem pro vývojáře ASP je relativně omezená povaha komponent dodávaných s ASP. Pokud pro vaši aplikaci potřebujete pouze připojení k databázi, vyhledávač, služby zpracování e-mailů, základní zpracování formulářů a sledování relací, pak vám ASP bude vyhovovat. Jakákoli méně běžná funkčnost však obvykle vyžaduje instalaci dalších softwarových komponent na server. Existuje mnoho společností, které vyrábějí komponenty pro použití s ​​ASP, které generují soubory PDF, komunikují se servery FTP, zpracovávají nahrávání binárních souborů a mnoho dalších věcí. Tyto komponenty, jako je ASP, bohužel bývají komerčními řešeními, která vás budou stát peníze. Výhodou toho všeho je, že ASP je velmi dobře podporovaná technologie, za níž stojí veškerá podpora vývojové komunity Microsoftu. MSDN , Microsoft Development Network poskytuje nepřeberné množství technických článků a referenčních materiálů pro vývojáře ASP a pracovníci podpory Microsoftu rádi prozkoumají všechny problémy, které máte při vývoji. (za cenu). Pokud kdykoli naprosto potřebujete odpověď na otázku, můžete si být jisti, že tam bude někdo, jehož úkolem je dát vám odpověď. Výhody:

  • Naučit se docela snadno, je však nutné programování.
  • Integrováno do systému Windows 2000 Server – žádné bolesti hlavy při instalaci.
  • K dispozici je profesionální podpora.

Nevýhody:

  • Není to zdarma (pokud již nepoužíváte server Windows)
  • Specializované funkce mohou vyžadovat nákup komerčních komponent nebo jejich vlastní vývoj v jazyce C / C ++ nebo Visual Basic.
  • Pokud jste zvyklí na syntaxi ve stylu C (sdílenou v C / C ++, Javě, Perlu, PHP atd.), může být pro vás obtížné pochopit idiosyncrasie VBScript.

Cílový vývojář: Pokud jste provedli jakýkoli vývoj pomocí VBScript nebo Visual Basic nebo jste vyvinuli objekty COM ve Windows předtím je to pro vás určitě platforma pro vývoj webových aplikací. Také ASP je pro neprogramátory tak přátelské, jak se programovací jazyk může dostat (ale pokud opravdu nenávidíte programování, podívejte se na Cold Fusion, další). Pokud vám vyhovuje zavádění systému Windows pro platformu vašeho webového serveru a můžete si dovolit s tím spojené náklady, nebo pokud společnost, pro kterou pracujete, jednoduše vyžaduje úroveň podpory, kterou vám Microsoft může poskytnout, pak je ASP skvělá technologie, kterou se můžete naučit. Cold Fusion Pro webového designéra, který ještě nikdy nenapsal žádný program, může být volba platformy pro vývoj webových stránek na straně serveru obávaná. Ať už se vydáte jakýmkoli směrem, musíte se učit velkému zlému programovacímu jazyku a vaše hlava začne bolet… Původně vytvořil Allaire v roce 1995 a nedávno Zakoupeno společností Macromedia , byla aplikace Cold Fusion navržena tak, aby byla odlišná. Namísto skriptovacího jazyka vám Cold Fusion nabízí sadu značek, které se můžete naučit. Ano, tagy – stejně jako ty tagy HTML, které jste poznali a milujete! Vezměme si příklad publikování informací uložených v databázi na webu. U velké většiny jazyků na straně serveru je třeba přidat kód do Webová stránka, aby se vymanila z režimu HTML, připojila se k databázi, vyžádala si položky z databáze, které chcete zobrazit, a zpracovala výsledky, které vám databáze pošle, aby se zobrazila jako součást webové stránky. běžný úkol se provádí pomocí dvou značek: značka , jejíž atributy pojmenují dotaz a označují, jaké informace se mají z které databáze načíst. Druhá značka odkazuje na dotaz a umožňuje vám použít standardní HTML formátovat a zobrazit výsledky dotazu. Zkušenému programátorovi může tento systém založený na značkách znít restriktivně a nepružně, ale s vestavěnou knihovnou s více než 300 značkami v nejnovější verzi a možností přidávat vlastní značky pomocí tradičnější programovací jazyky jako C / C ++ a V Javě je Cold Fusion cokoli , ale omezující. Cold Fusion 5.0 obsahuje značky, které automaticky generují grafy z databázových dat, hladce poskytují vyhledávací zařízení na vašem webu a dokonce generují formuláře HTML s plným ověřovacím kódem JavaScriptu. Pro vývojáře, který je nucen získat dovednosti na straně serveru, přichází Cold Fusion s utopickým příslibem, že se bude muset naučit jen několik nových značek! Stejně jako ASP je Cold Fusion komerční serverová platforma, což znamená, že provozování vás bude stát peníze, ať už si nastavíte vlastní server nebo si pronajmete místo u poskytovatele webhostingu. Na rozdíl od ASP však Cold Fusion není vázán na platformu Windows. Cold Fusion se může integrovat stejně snadno s Apache běžícím na Linuxu, stejně jako se službou IIS na Windows 2000. Výhody:

  • Extrémně snadno se naučíte – není nutné žádné programování!
  • Výkonný a velmi škálovatelný (nejnovější verze podporuje klastrování serverů na základě softwaru i hardwaru).
  • Profesionální podpora od společnosti Macromedia.
  • Cross platform.

Nevýhody:

  • Drahé nastavení připravte si vlastní server: Cold Fusion Server Professional 5.0 stojí 1 295 $
  • Programátorům se nemusí líbit vývojové metody založené na značkách.

Cílový vývojář: Weboví designéři, kterým vyhovuje HTML, ale potřebují do svého repertoáru přidat dovednosti na straně serveru, aniž by se museli učit programovací jazyk. Z pohledu průměrného vývojáře je učení Cold Fusion stejně jako učení se několika nových značek. Ne-designéři se také pravděpodobně zahřejí na úhlednost programování na straně serveru pomocí značek, takže pokud vás už unavuje ladění skriptů na straně serveru, Cold Fusion může stát za pohled!

PHP

Relativní nováček ve vývojové aréně na straně serveru si PHP získalo díky programátorům velké pokračování známá syntaxe a komplexní knihovna funkcí. Díky své relativně jednoduché syntaxi a nízké a nízké ceně (je to zdarma!) Se stala atraktivní alternativou k ASP od Microsoftu pro nové vývojáře. Někteří z uživatelů dabovali, že je PHP „zabijákem Perlu“ skriptovacího světa na straně serveru. Pro účely vývoje webu může PHP dělat téměř vše, co Perl umí, a obvykle to dělá rychleji a snadněji. Na rozdíl od Perlu, který obvykle běží jako program CGI vyvolaný webovým serverem pro zpracování každého požadavku na stránku, se PHP může integrovat s vaším webovým serverem tak, aby fungoval mnohem efektivněji.PHP je extrémně schopný jazyk s velkým množstvím vestavěných funkcí, které umožňují vše od sledování relací uživatelů až po generování dynamické grafiky a dokonce i souborů PDF za běhu! Žádné moduly k instalaci, žádné komerční doplňky ke koupi … PHP zvládá vše samo! Téměř jedinou slabinou PHP je ve skutečnosti to, že je poměrně obtížné rozšířit jazyk tak, aby přidával nestandardní funkce, které jeho integrované funkce nezvládají. To vyžaduje znalost programování v C / C ++ a není to pro slabé povahy! Naštěstí byste museli přijít s velmi esoterickou webovou aplikací, která vyžaduje funkce, které ještě nejsou v PHP zabudovány. PHP je bezplatný multiplatformní software s otevřeným zdrojovým kódem. Integruje se se všemi hlavními webovými servery na všech hlavních operačních systémech. To je velká výhoda pro vývojáře s nízkým rozpočtem, protože mohou nastavit kompletní webový server založený na Linuxu s podporou PHP a neplatit desetník za software! Nevýhodou je samozřejmě to, že neexistuje žádná formální podpora pro jakékoli problémy, se kterými se můžete při PHP setkat. Protože je PHP tak novou a aktivně vyvinutou technologií, v nejnovějších verzích se stále vyskytují občasné chyby. Nenechte se však těmito niggles odradit – PHP má extrémně aktivní uživatelskou komunitu (velkou část najdete v našich vlastních fórech SitePoint . !), který vám vždy rád pomůže s jakýmikoli úskalími, a aktuální verze PHP jsou poměrně stabilní a spolehlivé. Výhody:

  • Poměrně snadno se učí, zejména pro vývojáře se zkušenostmi v C / C ++, Java nebo Perlu.
  • Aktivní uživatelská komunita, která vám ochotně pomůže začít.
  • Všechno je zabudováno přímo do jazyka.
  • Je to zdarma!
  • Cross-platform .

Nevýhody:

  • Tento jazyk byl navržen tak, aby byl vhodný pro programátory, což je bohužel pro neprogramátory o něco méně přívětivé.

Cílový vývojář: Weboví vývojáři s rozpočtem, kteří mají rádi jednoduché programování (např. JavaScript), nebo vám nevadí naučit se jak. PHP vám poskytuje velkou sílu s relativně jednoduchou strukturou kódu, ale nemusí se hodit pro velmi špičkové aplikace, které nejsou podporovány vestavěnými funkcemi PHP.

Java

Java je dnes pravděpodobně nejvýkonnější platformou pro vývoj webů na straně serveru. Od malých programů Java (Servlety), které zpracovávají požadavky na webové stránky, až po stránky JavaServer Pages (JSP), které kombinují HTML s vlastními značkami a kódem Java, a dokonce až po Enterprise JavaBeans (EJBs), softwarové komponenty se sofistikovanými schopnostmi bezproblémového přenosu informací mezi servery sítí pro distribuované aplikace, Java je opravdu horká technologie. Zkušený vývojář prostředí Java Web může snadno získat platy přesahující 100 000 USD / rok. Jak můžete očekávat, má to svůj důvod: Java není snadné se naučit! Na rozdíl od skriptovacích jazyků, jako je Perl, ASP a PHP, je Java plnohodnotný programovací jazyk, který je schopen psát velké programy! Někdo s malou zkušeností s programováním by mohl očekávat, že si pomocí dobré knihy osvojí pracovní znalosti jazyka Java za měsíc nebo dva a za další měsíc by pravděpodobně zvládl základy jednoduchého programování na straně serveru s Javou. Nyní, pokud máte zájem o kariéru v programování na straně serveru, pak se to nemusí zdát moc, ale pokud chcete jen něco rychle fungovat, jednodušší jazyk, jako je PHP, vás může spustit za týden nebo méně! Java je proslulá svou filozofií Write One, Run Anywhere (WORA) a Java může být spuštěna na všech hlavních webových serverech a všech hlavních operačních systémech. Webové aplikace Java lze také seskupit do standardních souborů archivu webových aplikací (.WAR), které lze poté nainstalovat na libovolný webový server podporující prostředí Java, bez ohledu na platformu. Tvůrci prostředí Java plánovali, že tento mechanismus bude použit k distribuci komerčních webových aplikací pro použití na webových serverech Java; Podle mých zkušeností však webové aplikace Java mají tendenci být přizpůsobeným řešením složitých problémů, spíše než prodejnými řešeními, která si můžete koupit online. Mnoho různých dodavatelů vyrábí moduly plug-in, které umožňují webovým serverům, jako je Apache a IIS, spouštět webové aplikace Java, a zatímco většina z nich je zdarma pro osobní použití a vývoj, většina musí být zaplacena, než je budete moci použít k poskytování reklam Webová stránka. Výhody:

  • Extrémně výkonný a škálovatelný.
  • Cross-platform.
  • Většina modulů plug-in serveru Java je zdarma pro osobní a vývojové účely.

Nevýhody:

  • Java se dá hodně naučit.Nezačínejte, pokud to s učením objektově orientovaného programování nemyslíte vážně.
  • Většina pluginů serveru Java musí být zaplacena, pokud mají být použity k hostování komerčního webu.

Cílový vývojář: Vážní vývojáři, kteří chtějí pro své webové aplikace maximální výkon, flexibilitu a škálovatelnost a nevadí jim za to platit v potu, slzách a době vývoje. Shrnutí V tomto článku jsme se podívali na relativní funkce, výhody a pády všech hlavních možností vývoje na straně serveru, které jsou dnes k dispozici:

  • Perl : vyspělý jazyk napříč platformami, kterému lze těžko porozumět
  • ASP : výkonný rámec společnosti Microsoft založený na systému Windows
  • Cold Fusion : výkonná možnost založená na značkách pro neprogramátory
  • PHP : multiplatformní alternativa open-source se spoustou zabudovaných funkcí
  • Java : maximální výkon a flexibilita pro seriózní programátory

Na zdraví

Odpověď

PHP je pouze skriptovací jazyk na straně serveru. Jako alternativu lze použít libovolný programovací jazyk, pokud je k dispozici serverový software, který to podporuje. Můžete použít Python pro Django, JavaScript pro Node.JS, ASP. NET pro IIS, Java pro Tomcat, Php pro Apache a mnoho dalších, které Dosud jsem nepoužíval.

Mým osobním favoritem je ASP .net MVC, protože mohu použít výkonné Visual Studio ke kódování a mohu použít C #. Nelíbí se mi php jen proto, že nemá velmi dobré IDE (pravděpodobně jsem ho nikdy nedostal) tak silné jako Visual Studio a php je většinou procedurální. Většinu své kariéry jsem kódoval v objektově orientovaných jazycích a skriptování v procedurálním se mi zdá příliš archaické. Dokonce nenávidím JS za to, ale alespoň jQuery je tu, aby vyřešil většinu mých problémů.

Je to jen můj pocit, že php postrádá strukturu, která je potřebná pro velký projekt. Ano, vím, že facebook používá php, ale je silně přizpůsobený a mají talentované inženýry, kteří vytvářejí vlastní framework a IDE. Zkoušel jsem dokonce framework jako CodeIgniter a CakePHP. I když jsou určitě lepší než psaní surového php kódu, nemohou porovnávat luxus psaní kódu C #.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *