it-swarm-eu.dev

Kdy použít PHP nebo ASP.NET?

Při vývoji webových aplikací jsem intenzivně pracovala pomocí PHP a ASP.NET), ale jednou z otázek, které mi zákazníci neustále kladou, je to, zda jít vpřed s webovou stránkou php nebo asp. čisté webové stránky.

Takže první věc, která vám přijde na mysl, je odpověď na tuto otázku:

PHP je open-source a ASP.NET je od společnosti Microsoft.

Obvykle po něčem takovém se říká, že zákazník má prázdný pohled na obličej. Skutečnost, že jeden je open source a druhý není, je zjevně neomrzí. A z dobrého důvodu, protože když jsem to poprvé slyšel, moc mi to neříká.

Z práce s oběma vím, že každý má své rozdíly, pokud jde o vývoj webových stránek.

Moje otázka zní, jaké jsou rozdíly mezi ASP.NET a PHP)

  1. Funkce
  2. Bezpečnostní
  3. Rozšiřitelnost
  4. Rámce
  5. Průměrná doba vývoje

Snažím se sestavit seznam skutečností, abych je mohl porovnat se zákazníkem, aby bylo možné provést informovanou volbu na příslušné vývojové platformě.

46
Edward

Funkce, Zabezpečení a Rozšiřitelnost budou více či méně stejné. Co lze udělat pomocí PHP, lze provést pomocí ASP.NET.

Frameworks - Znovu, pokud jde o funkce frameworků, bude to víceméně stejné. Protože však budete konkrétnější než samotný jazyk, měli byste zvážit:

  • S čím jsou vaši vývojáři nejpohodlnější. Znalosti = účinnost.
  • Na základě jednotlivých projektů by jeden rámec v jednom jazyce mohl být lépe přirozený než rámec v jiném. Být konkrétnější než samotný jazyk znamená, že rámec nemůže pomoci, ale být dobře přizpůsoben některým úkolům a méně dobře přizpůsoben jiným.

Průměrný vývojový čas - Váš průměrný vývojový čas pro velmi malý projekt může být lepší s PHP od weboví hostitelé jsou tak snadno k nalezení a dev stroje tak snadno nastavitelné. Nicméně, s čímkoli větším, pokud máte dobré devs, nebo jste již připraveni na jeden, bude to pravděpodobně mytí.


Hlavní úvahu, kterou byste měli zvážit, je jaký technologický zásobník chce být váš klient vázán k dalšímu postupu. Ani jeden se dobře (snadno) mísí s druhým. Mohou mít vývojáře, kteří jsou obeznámeni s jedním nebo druhým.

  • Pokud se vašemu klientovi líbí myšlenka připojení k Microsoftu, pokračujte s ASP.NET. Někteří klienti budou mít větší pohodlí ohledně budoucí podpory, upgradů atd. S MS.

  • Pokud se jim líbí myšlenka open source a Linux serverů, jděte na PHP . To může zajímat některé klienty kvůli přenositelnosti webových hostitelů, svobodného softwaru atd.

A konečně, pokud je to jedno, pak jděte s tím, co vám nejvíce vyhovuje. Kromě toho toho není moc.

39
Nicole

Abych získal informace o tom, na čem spočívám své odpovědi, udělal jsem PHP vývoj profesionálně 6+ let), hrával jsem se s ASP.NET MVC asi za poslední 3 4 měsíce, a já jsem dělal C # programování asi tak dlouho, jak PHP programování.

Pro mě je to spíš argument PHP vs C # argument než a PHP vs ASP.NET jeden).

Funkce/Rozšiřitelnost
Myslím, že ASP.NET zde vyhrál, a to spíše kvůli schopnosti používat jazyk jako C #. C # je mnohem lepší jazyk než PHP s tím jde o podporu OO= podpora). Jsem také osoba, která dává přednost staticky psanému jazyku (i při C # 4.0 "Věřím, že můžete dělat dynamicky zadané proměnné." Jediná věc, která PHP měla nad C #, pokud jazykovou funkcí byly volitelné parametry, ale to je další věc, která byla přidána v C # 4.0 (nevím, jak dobře to funguje, protože jsem to ještě nezkusil).

Zabezpečení
Pravděpodobně bych řekl, že jde o praní mezi nimi. Myslím, že oba mají funkčnost, která jim pomáhá s bezpečností, ale v konečném důsledku je úkolem programátora zajistit, aby jejich aplikace byla bezpečná.

Frameworks
No PHP Zdá se, že má mnohem více mainstreamových rámců (CakePHP, Codeigniter, Symfony, Zend Framework) a mnoho dalších menších rámců než ASP.NET. ASP.NET má 2 hlavní rámce od Microsoftu, WebForms (naprostý kec) a ASP.NET MVC (důvod, proč jsem se začal dostávat do vývoje ASP.NET). Zatímco PHP má více rámců, zjistil jsem, že Rámec ASP.NET MVC 3 je lepší než kterýkoli z rámců PHP).

Průměrná doba vývoje
Myslím si, že u menších projektů je doba vývoje mnohem lepší v PHP však s tím, jak váš projekt roste, velikost C # se v tomto ohledu mění lépe).

Cena
Některé, které by měly být vychovány, jsou náklady. PHP rozdává vítězství na této frontě. I když můžete provozovat ASP.NET na Mono v Linuxu, přichází s vlastními problémy.

Pokud děláte malý až středně velký projekt a/nebo cena je faktor, PHP vyhrává. Pokud děláte rozsáhlý projekt, vybral bych ASP.NET w/C # & ASP .NET MVC.

29
ryanzec

PHP vs ASP.NET je jako srovnávání jablek a pomerančů, které jsou zaměřeny na různá řešení.

PHP je vhodnějším rámcem pro malé spouštěcí řešení. PHP bude spuštěn nebo Linux, Windows bez příliš mnoha požadavků. Microsoft ASP.NET je průmyslová síla, která obsahuje vše, co byste si kdy dokázali představit a další. ASP.NET je velmi bohaté prostředí bohaté na funkce Mnoho z nich bude argumentovat, že ASP.NET je drahý, což byl případ před několika lety, ale už ne. Nejprve jsou nástroje zdarma (expresní vydání), možnosti databáze jsou zdarma (SQL Compact nebo SQL Server 2005) nebo výše Express). Hosting Hosting je nyní velmi levný, takže otázka není, která je lepší, ale co vyhovuje vašemu řešení. Osobně preferuji ASP.NET, ale proto, že pracuji v podnikovém prostředí, kde je velmi důležitá flexibilita a škálovatelnost řešení tedy diktují rámec.

Jedna velmi důležitá věc je, v jakém jazyce jste nejlepší? To by mělo být posledním faktorem v rozhodnutí.

Pokud je vaším cílem přesvědčit klienta, pak asp.net je lepší volbou. Velké jméno společnosti podporuje jazyk, takže se klient cítí pohodlně. V tomto případě jsou nejlepší možnosti (Microsoft) ASP.NET a (Oracle) Java JSP).

ÚPRAVA: Funkce bohatá - Technologie ASP.NET poskytuje dvě alternativy k vytváření webových stránek WebForms a přístupu MVC. Od svého rozhraní .NET Framework musíte mít velmi silné funkce, např. WF (workflow), DLR (dynamický jazyk Runtime), Parallel Linq, Linq, směrování, různé formy správy stavu dat: HTTPContext, ViewState, Runtime Cache, mezipaměť výstupu stránky, tři různé typy implementace relace InProc, State a SQL Server. ASP.NET implementuje různé formy zabezpečení, např. Membership Provider a Role Provider. Nechci sbalit PHP, ale ASP.NET je v jiné lize.

8
Nickz

Po rozsáhlé spolupráci s oběma již víte, že odpovědi se budou lišit v závislosti na problému a klientovi. Ve velmi obecném smyslu:

  • PHP je skvělé pro projekty, které potřebují pracovat na rozpočtu. Například nebudete zasaženi velkými poplatky za licence na databáze.
  • Technologie ASP.NET je skvělá pro projekty, které potřebují podporu a kulturu vývojářů, kterou společnost Microsoft poskytuje.

Pokud sestavujete seznam faktů pro své klienty, založte je na tom, co víte. Váš výzkum, bez ohledu na to, jak zaujatý je váš nález, je v pořádku, když získáváte své body.

6
Fred Wilson

Ovládací prvky .net jsou mnohem hezčí než to, co najdete s platformou PhP. Podívejte se například na Infragistics, co je ekvivalentní pro LAMP?

1
Totor