PHP или .NET? Към какво да се ориентирам?

Обзор на PHP

PHP е събрал предимствата на своите предшественици като Perl и TCL и изключил техните недостатъци. Особеностите на този скриптов език са следните:

- Езикът е с отворен код, който се изпълнява на сървъра. Това му дава предимството да бъде модифициран и разширяван от всеки, който има съответното желание и възможности.

- Езикът не зависи от операционната система. Поддържа се еднакво добре от най-известните операционни системи като Microsoft

Windows и Linux

- Предоставя се поддръжка за широк набор от уеб сървъри като Apache, Internet Information Services на Microsoft Corporation и др.

-Поддържа голям брой системи за бази данни като например MySQL, MSSQL, PostgreSQL, Ingres, Sybase,Oracle, Informix и др.

- Разработени са редица разширения и са опростени голям брой от всекидневните операции, които трява да извършва програмиста, освен това може да визуализира изображения, графики и почти всички функционалности, които имат компилируемите езици от високо ниво.

- Езикът поддържа множество протоколи като HTTP, POP3, SNMP, LDAP, IMAP

Синтаксиса на езика е много сходен с този на C и Perl, което дава възможността на всеки, който има базови познания по програмиране, бързо и лесно да се запознае с езика и да започне да го използва.

Защо PHP се предпочита за изграждане на динамични бизнес приложения.

- Късите времена, за изграждане, които предоставя езика предполагат по-малко необходими разработчици, а в днешно време е трудно да се открият кадърни програмисти.

- Улесненията в програмния код означават по-лесна поддръжка и по-лесно разширяване на приложението

- Поддръжката на различни платформи, предоставя добра преносимост на приложението.

- Поддръжката на бази данни дава възможност за досъп до платени и безплатни приложения работещи на различни сървърни езици.

- Отворения код на езика дава възможност за неговото разширяване и открива нови възможности за програмистите.
- Езика не е строго типизиран, което позволява бърза и лесна работа с кода.

- В новите версии на езика обектно ориентираната поддръжка е доста застъпена, което позволява да се изграждат сложни приложения, йерархии от класове и наследственост.

Обзор на .NET

.NET представлява платформа създадена от гиганта Microsoft. Платформата е изградена на следната концепция:

- вместо изпълними файлове, всичко се свежда от т.нар байткод, който в средата се нарича IL( Intermediate Language)

На практика IL представлява обектно-ориентиран стеков асемблер, който има вградени инструкции за създаване на обекти, извикване на виртуални методи и т.н. За да се изпълни IL код е необходимо да има инсталиран Microsoft .NET Framework. По своята същност, това представлява витуалната машина, която разчита ILкода и го изпълнява.
Средата, в която се изпълнява всяко .NET приложение се нарича CLR (Common Language Runtime). Тя осигурява обектите, върху която се гради платформата .NET, и тя е отговорна за правилното изпълнение на IL кода. Когато CLR се зареди, тя създава AppDomain по подразбиране, в който се зареждат основните асемблита, необходими за правилното функциониране на средата.

PHP или .NET? Какво да избера?

Обикновено актуалната област се определя от търсенето. През последните години България се утвърди като предпочитана дестинация за outsourcing на PHP програмисти и .NET програмисти. Преди да можем да се ориентираме към едното или другото нека разбулим няколко същесвтуващи мита:

1. .NET е бъдещето на Интернет

.NET e бъдещата платформа на всички приложения на Microsoft, но не е направено специално самостоятелно за Интернет. Всъщност платформата би намерила своя разцвет в корпоративните Intarnets.

2. .NET е най-добрата технология за изграждане на уеб сайт.

И PHP и .NET са добър избор за изграждане на уеб приложения. Дали става въпрос за достъп до база данни, изпащане на поща, или работа с портал за разплащане, и двата езика го могат идеално. В практиката единствената разлика е крайната цена на продукта, с особено оскъпяване при .NET продуктите

3. PHP не се компилира, а се интерпретира, докато .NET се компилира и извлича всички ползи на компилацията

Това е едно голямо заблуждение по следната причина. "Компилиране" при .NET има съвсем различен смисъл от компилиране на програма писана например под C++. Zend - компанията майка на PHP, на практика прави т.нар "компилиране" с техния PHP Accelerator. За съжаление компанията описа деиствието му като "комплексно кеширане"

4. ASP.NET има много по-добра поддръжка, a PHP няма изобщо.

Много корпорации като Zend, NuSphere, ThinkPHP и др. предлагат хубава поддръжка на езика. Освен това, PHP има страхотната поддръжка на обществото, което създаде езика от съществуването си.

5. PHP няма добра поддръжка на обекти и обектно-оринтиран поход.

От версия 5 PHP, в езика се наблюдава сериозна поддръжка на класове и обекти. Въведоха се области на видимост, интерфейси, абстрактни класове, final класове и др. Единственото на практика, което липсва са именованите пространства,  но и за тях има време.

Една е основната разлика с .NET. При платформата на Microsoft, програмистите са принудени още от самото начало да изберат обектно-ориентиран подход, докато при PHP всеки е свободен да избере своя подход и изобретателност.

6. PHP е обречен език

Има доста нееднозначни доводи за това трърдение. През Юни 2002 година, езика превзе ASP буквално за дни. Към това помогна и излизането на Apache 2.0 доминиращо над слабо подсигурения IIS сървър на Microsoft.

.NET има само едно реално предимство пред PHP - в .NET може да се създадват приложения, които ще работят нормално под Windows, и в същото време могат да бъдат предоставени от уебсайт. Microsoft имат да изминат доста път в сигурността преди .NET да стане доминиращ в Internet

За да определим, кой език е най-популярен, можем да питаме Google. Ето какво ни казват те от обемите на търсене за следните изрази:



PHP се нарежда на второ място след Java. .NET от своя страна се позиционира на 3-то място.

Популярността на даден език обаче не бива да е определящ фактор в нашата ориентация. Много често, най-популярните неща не са най-добрия избор. Ето защо сега ще направим сравнение в бързината на няколко езика, което също би ви помогнало в правлиния избор:



Само регистрирани потребители могат да публикуват коментари по темата


Коментари и мнения свързани с представения материал:
Коментар на: phplug.net 2008.10.01 21:45
Много компании се занимават с PHP поради единствената причина, че е безплатен и изискванията към хостинга му са доста рентабилни.
Коментар на: Илиан Павлов 2008.09.01 13:19
Хубав обзор на двете понятия. Според мен всеки трябва да избере това, което му е приятно, а не това, което е актуално на пазара. Доста мои познати взимат хубави пари, но не са щастливи, в това което правят и на пракитка се обезмисля всичко. Аз лично съм избрал PHP, защото е лесен и забавен език, а възможностите му на практика са неограничени.
Още актуална информация от пазара на работна ръка
2008.11.02 22:28 Заплащане
Екипът на expertsbg.com изготви специален доклад за нивата на заплащане в IT сектора у нас. Докладът е съставен на базата на информация ...
2008.04.02 10:18 Работа
Помня времената около 2004 г. Оставаха ми 2 години да завърша Технически Университет - София, специалност "Автоматика, информационна и управляваща ...
2008.03.02 20:57 Сертификати
Ако не сте от поколението пишещо "ш" с 6-ца и "ч" с 4-ка и желаете да научите нещо ново и да получите професионални и доказани знания, ...
Цялата информация »