asp net или php

Cравнение PHP и ASP.NET MVC: что лучше

asp net или php

Андрей Батурин

Распространенность двух технологий

За последние годы доля ASP.NET снизилась на 1-2 процента, но эта технология все равно остается второй по популярности во всем интернете. PHP — и вовсе лидер рынка.

asp net или php

Для примера можно посмотреть на крупнейшие порталы. Так, на технологии ASP.NET работают сайты Microsoft, MSN, Dell, Exchanger и другие.

А на PHP — Facebook, Вконтакте, YouTube, Wikipedia и т.д.

Но здесь важно уточнить, что мы не можем знать, почему та или иная компания в свое время выбрала конкретную технологию, но мы точно знаем, что сейчас даже при желании никто бы не смог перейти на другую, так как такой переход для больших компании обошелся бы слишком дорого.

А теперь давайте разберемся, в чем сходство и отличие PHP и ASP.NET и для каких случаев какой вариант лучше подходит.

Различия между PHP и ASP.NET MVC

Для начала небольшое уточнение: в этой статье мы будем рассматривать не “голый” ASP.NET, а ASP.NET MVC — потому что MVC дает этой технологии много важных дополнительных возможностей.

MVC — это шаблон проектирования, который в том или ином виде может быть применен во множестве языков программирования. Он нужен, чтобы разделить логику сайта на три составляющие: модель, представление и контроллер. Благодаря MVC работать над логикой сайта проще: можно менять одну его часть, оставляя остальные неизменными.

Итак, в чем же разница между PHP и ASP.NET MVC.

Как выполняется

Способ — интерпретация. Каждый раз, обращаясь к скрипту, PHP запускается, а потом закрывается, выполнив действие. Благодаря этому в небольших сайтов сборка мусора не понадобится.

ASP.NET

Способ — компиляция. Сайт на ASP.NET — это приложение. Оно запускает новый поток каждый раз, как к нему обращаются. Здесь предусмотрена сборка мусора.

Насколько простой/сложный

Начать писать на PHP — легко. Если у вас уже есть минимальная база на HTML и CSS, можно первый простой сайт написать за день-два.

ASP.NET

Компактность

Код на PHP занимает мало место, с помощью этого языка вы легко создадите простой сайт с небольшим объемом кода.

ASP.NET

В умелых руках код будет еще компактнее, если использовать MVC. Просто открываете разметку, вставляете туда фрагмент на C#, который и выведет нужную информацию.

Масштаб сайтов

PHP лучше всего подходит для маленьких сайтов, так поддерживать код и проводить отладку здесь сложнее.

ASP.NET

ASP.NET MVC полностью раскрывается при работе над большими проектами. Если на малых сайтах он работает чуть медленнее, чем PHP, то на больших скорость не снижается даже при высокой нагрузке.

Типизация

Есть в обоих вариантах.

Распространенность

PHP — популярный язык, им пользуются много разработчиков, которые создали большое сообщество и всегда готовы поделиться опытом.

ASP.NET

Сообщество пользователей ASP.NET сильно уступает в размерах, но зато здесь довольно ясная и подробная документации и много профессиональной литературы.

Уровень дохода

PHP-разработчики получают неплохо, если работают в крупных городах или на фрилансе. В провинции их услуги менее востребованы, следовательно — доход ниже.

ASP.NET

Доход разработчиков, использующих ASP.NET, немного выше, потому что они, как правило, более опытные и квалифицированные.

Улучшение

PHP быстро развивается и с каждой версией становится все удобнее.

ASP.NET

ASP.NET тоже не отстает в развитии, но его развитие более упорядочено и построено на планах Microsoft. Уже произошел переход на open source и кроссплатформенность. Такие улучшения могут добавить очки популярности этой технологии.

Коллекции

В этом языке разработчикам доступны только массивы. Но их плюс в том, что в них совмещены преимущества и других типов коллекций. Новичкам это упрощает работу, но усложняет ее тем, кому приходится читать чужой код.

ASP.NET

Здесь же большое разнообразие коллекций с многими возможностями: есть и словари, карты и очереди и т.д. Работать с такими коллекциями удобно.

Многопоточность

Здесь ее нет, поскольку в PHP при каждом обращении запускается новый экземпляр скрипта, и все работает и без многопоточности.

ASP.NET

В ASP.NET вы можете легко работать в режиме многопоточности, выполняя разные задачи.

Что же выбрать разработчику?

asp net или php

Выбор технологии для backend’а зависит от конкретных задач и опыта разработчика. О задачах мы писали выше, поэтому здесь хочется проговорить различия по опыту.

Для новичка

Для разработчика с небольшим опытом лучше всего подойдет PHP. На этом языке написать простой сайт можно довольно быстро — так вы сразу увидите результат. В освоении этот язык тоже значительно проще.

К плюсам можно отнести и мощность этого языка. В нем доступны базы данных, объектно-ориентированное программирование, работа с файлами и изображениями и т.д. PHP может стать отличным плацдармом для дальнейшего развития и, возможно, перехода на более сложные технологии.

Из минусов этого языка — для него маловато учебных пособий и профессиональной литературы. В основном, знания придется получать из интернета, форумов и общения с опытными коллегами.

Источник

PHP vs ASP.net. Кто кого?

Автор Cherrygarden, дата публикации 10.07.2012 |

Среди программистов разворачиваются многочисленные дебаты по поводу того, какой язык программирования лучше: PHP или ASP. В основном все статьи и обзоры по этому вопросу сводятся к воспеванию одного или другого языка и являются выражением сугубо личного мнения конкретного коддера. К тому же, прогресс не стоит на месте, и разработчики ежедневно работают над усовершенствованием языков программирования.

asp net или phpА как же новичку, не искушенному, решить для себя, какой язык программирования выбрать для себя. В этой статье попробую дать ответ. Точнее говоря, сравню некоторые показатели языков, выявлю их достоинства и недостатки, что в итоге поможет нам определиться с окончательным решением. Итак, начнем.

1. Масштабируемость и простота обслуживания

Эти два показателя абсолютно не зависят от того, какой язык вы выберите. Масштабируемость и простота обслуживания веб-приложений зависит в первую очередь от:

Что же касается времени для написания программы на языке, то работа с ASP занимает в два раза больше времени, чем в PHP.

2. Производительность и скорость

Сегодня языки программирования в основном имеют очень современную платформу и выбор одного или другого языка никак не повлияет на скорость работы большинства сайтов в интернете. Однако если языку программирования предстоит выполнить огромные и сложные задачи, как для сайтов Google, Yandex и других поисковиков, то программисты используют много разных языков, где каждый выполняет свою отдельную миссию.

Чтобы понять, какой язык лучше для вашего сайта, давайте разберем три основных сценария развития событий.

Первый сценарий. Общий

Одна из основных задач любого веб-приложения является обеспечение доступа и обработка запросов к базе данных и вывод результатов на веб-серевер, а затем в браузер. На данном этапе, скорость языка программирования никак не влияет на скорость работы сайта. На его скорость влияет только сервер базы данных, веб-сервер, веб-браузер клиента и его пропускная способность.

Сегодня большинство серверов баз данных, таких как MySQL (в настоящее время принадлежит Oracle), PostgreSQL, MSSQL (Microsoft SQL Server) и Oracle, сражаются за превосходство в скорости и производительности. Мы постоянно наблюдаем рост производительности и новых возможностей серверов баз – данных в новых версиях. Поэтому если программист использует язык структурированных запросов SQL, то его сайт будет иметь большую производительность.

MySQL используется Google, Facebook, YouTube, Yahoo, которые получают огромную аудиторию по всему миру. Поэтому я бы не стал ставить под сомнение способность сервера баз данных MySQL.

Проведя несколько своих исследований на нескольких сайтах онлайн-статистики, по состоянию на момент написания статьи, связи и интерфейсов между PHP и MySQL работает быстрее, чем ASP.net и MSSQL, но это едва заметно.

Второй сценарий. Распространенный

Еще одной основной задачей веб-приложения является получение доступа к файловой системе, для того, Чтобы найти изображение и отправить его на веб-сервер. И снова, язык программирования играет здесь ничтожную роль. В основном имеет значение только работа Операционной Системы и файловой системы, которые не связаны с работой языка программирования.

На основании тех же исследований, я выяснил, что ОС Linux и ext4 (файловая система) работает лучше (IO), чем ОС Windows и NTFS (файловая система).

Третий сценарий. Редкий

ASP.net, как правило, написаны на C #. Вообще говоря, на момент написания статьи, C # быстрее, чем язык программирования PHP. (Это может измениться, так как каждый язык программирования будет обновляться и совершенствоваться, чтобы бороться за более высокую скорость.) Так что, если необходимо запустить 2000000 циклов выполнения расчетов, ASP.net выигрывает у PHP. Тем не менее, это очень необычный сценарий, так как обычный цикл использует 100 расчетов, а не 2000000.

3. Стоимость

PHP, MySQL, PostgreSQL, веб-сервер Apache и операционная система Linux являются бесплатными, как и все их обновления. Кроме того, отсутствуют дополнительные платы на лицензии на другой физический сервер в качестве резервного при необходимости работать с несколькими серверами для балансировки нагрузки и кластеризации серверов.

LAMP (Linux, Apache, MySQL и PHP) является более популярным набором среди хостинговых компаний, и его популярность приводит к снижению ежемесячных расходов на хостинг c LAMP по сравнению с Windows хостингом.

4. Поддержка и ресурсы

Так как, PHP является языком с открытым исходным кодом, это позволяет огромному количеству дружественных разработчиков и программистов вносить в него изменения для усовершенствования и устранения неполадок, а также позволяет обеспечить поддержку платформы.

5. Редакторы и инструменты

PHP и MySQL не зависят от редакторов, так как к ним имеют доступ обширное число разработчиков. Рзработчики PHP в основном используют такие текстовые редакторы как VI, VIM, Notepad ++.

В то время как большинство ASP программистов используют Microsoft Visual Studio для внесения каких-либо изменений.

VI и VIM очень продвинутые и независимые редакторы (программы) и программисты активно изучают и используют их возможности в полной мере. Это позволяет им писать очень сложные программы быстро и эффективно. Когда речь идет о необходимости использования и интеграции других основных языковых платформ, таких как JavaScript, Ajax, JQuery и т.д., лучше использовать PHP программистов, потому что они знакомы с открытой средой источника и ручного кодирования при использовании VI и VIM редакторов.

6. Независимость платформы

ASP.net построен для работы только на платформе Windows.

7. Сайты, работающие на языках программирования PHP и ASP.net

Сайт

Дата

Платформа

Язык Программирование

Google.com

Ноябрь 1998

Linux

C, Java, C ++, PHP и MySQL

Facebook.com

Февраль 2004

Linux

PHP, MySQL и C ++

YouTube.com,

Февраль 2005

Linux

C, Java и MySQL

Yahoo.com

Linux

C ++, C, Java, PHP и MySQL

MSN.com (принадлежит Microsoft)

ОС Windows

ASP.net

Live.com (принадлежит Microsoft)

ОС Windows

ASP.net

Wikipedia.org

Linux

PHP и MySQL

Amazon.com

Linux и Solaris

C ++, Java, J2EE

WordPress.com

Linux

PHP и MySQL

Вывод

Моё мнение, наверное, вам уже, очевидно, и понятно. Оно читается между строк. Конечно, я отдаю предпочтение языку PHP. Мне он кажется намного проще, шустрее и что самое главное он бесплатный. Вот три главные причины, почему я выбираю его. Однако со мной не согласятся любители ASP и будут закидывать меня помидорами. Ну что ж, это их правда. ASP много лет жил живет и будет жить, ведь это кому-то нужно. Значит не так уж он и плох.

На закуску видео, из которого вы узнаете один из способов избежать пробок:

А на чьей вы стороне в этой битве?

Популярные обзоры хостинга

Если Вы ищете хостинг для своего сайта, то перед Вами популярные обзоры американского хостинга.

Поделитесь статьей с друзьями или сохраните в закладки

asp net или php asp net или php asp net или php asp net или php asp net или php asp net или php asp net или php asp net или php asp net или php asp net или php asp net или php asp net или php asp net или php asp net или php

asp net или php

Добро пожаловать!
Вы ищете хороший хостинг? Впервые заказываете хостинг для сайтов? Тогда здесь идеальное место, чтобы почитать хостинг обзоры и руководства на основе моего личного опыта. Устраивайтесь поудобней и начинайте просматривать сайт, и я уверен, Вы получите удовольствие! Узнать больше о сайте.

Disclosure: I receive compensation from web hosting companies. Данная строчка требование Федеральной Торговой Комиссии США.

asp net или phpiPage Обзор
asp net или phpBluehost Обзор
asp net или phpFatCow Обзор
asp net или phpHostgator Обзор
asp net или phpHostmonster Обзор
asp net или phpWebhostingpad Обзор

Можете прочитать все Обзоры Хостинга или посмотреть Видео Обзор

Источник

Что выбрать: ASP.NET или PHP

ASP.NET и PHP — две самые популярные технологии среди backend-разработчиков. Разбираем, чем они отличаются и какую лучше выбрать новичку.

Несмотря на то что на PHP написано 79% всех сайтов в интернете, есть и другие технологии, которые хорошо подходят для написания серверной части веб-приложений: Python, Java, Ruby, Node.JS.

В этой статье мы разобрали отличия PHP и его основного конкурента — ASP.NET, доля которого среди сайтов составляет 11,2%.

asp net или php

asp net или php

Пишет о разработке сайтов, в свободное время создает игры. Мечтает открыть свою студию и выпускать ламповые RPG.

Чем отличаются
PHP и ASP.NET

PHP — это скриптовый интерпретируемый язык, созданный специально для разработки серверной части сайтов. На нём написаны такие сайты, как:

Вот основные отличия этих технологий:

PHPASP.NET
Способ выполненияИнтерпретируется. При каждом обращении к скрипту он запускается, а после выполнения — закрывается. Поэтому на небольших проектах можно обойтись без сборки мусора.Компилируется. Сайт представляет собой приложение, которое создаёт новый поток при каждом обращении. Есть встроенная сборка мусора.

Также стоит отметить значительные различия в синтаксисе. Например, вот как в PHP выводится текст:

Источник

В чем преимущества PHP перед ASP.NET?

Прошу. Не отправляйте в Google т.к. ответа на вопрос свой на нашел.
1. По идее PHP интерпретируемый язык, а значит он должен проигрывать компилируемому. Вопрос. В каких задачах проявляется разница? Если сделать два аналогичных портала на PHP и ASP.NET, то какой из них будет быстрее (и в каких операциях)?
2. Какой из этих языков легче учится? Объясните почему (доков и по тому и по другому дофига)
3. Решение на каком из этих языков проще поддерживать?
4. А что касательно скорости разработки?
5. Какое из решений будет более безопасно? Объясните почему?
6. Если сайт делать с прицелом на облака, то PHP как себя там будет вести? Есть какие-то концептуальные проблемы?

Идеологические моменты не интересуют. Интересует лишь практическая сторона. Прошу опишите простыми словами т.к. я не понимаю на каком из этих языков, а главное _почему_ сайт будет к примеру меньше нагружать сервер?

asp net или php

1а. ASP это компилированный язык в котором компоненты обернуты некоторым фреймворком(которые тоже скомпилированы) и которые вызывает напрямую функции ОС. Скорость исполнения зависит от скорости обращения машинного кода к такому же коду компонентов, которые через кодовые функции фреймворка обрабатывается понятными процессору кодами функций операционной системы. Причем при компиляции полученный код может оптимизироваться. При этом не стоит забывать, что организации сервера необходимо установить ОС, фрейм ворк (и часто не один), дополнительные библиотеки и сервер. Что уже само по себе не дешевое решение при выигрыше в скорости исполнения кода.

1б. PHP это скриптовый язык. Это означает, что ему необходим некоторый интерпретатор всего того, что там в этих скриптах написано. Скорость исполнения зависит от размера скриптов, скорости «перевода» текста скриптов в некоторые куски программного кода, который уже невозможно никак оптимизировать, и которые потому обращаются к функциям ОС. Правда некоторые хитрые личности умудрились сделать этокие компиляторы в так называемый байт-код. В основном этот код можно слегка оптимизировать. но чаще только на полном исключении оставленных комметариев и символов отсутпов. Хотя нужно признать, с каждым годом этот скритовый язык все быстрее в том числе из-за вожможности ОС быстрее читать данные из файлов. Цепочка выполнения не сложная: сервер, скрипт, интерпретатор, ОС. Даже в неумелых руках можно запустить с легкого пинка. И под любой ОС.

2а. ASP требует некоторого обязательного компилятора, некоторых способов отладки получаемого кода, некоторых знаний особенности ОС и фреймворка. Это, нужно заметить, не простая задача. Тем более нет возможности вести нормальную разработку в каком-либо совсем примитивном текстовом редакторе. Но можно.

ПС: Выводы можно дополнить самому. Я описал самые явные различия в технологиях. Много конечно не указал: например работа с объектами имеет некоторые существенные различия. Проприетарность, возможность взлома, возможность отладки, количества IDE под каждую технологию.

Источник

Что лучше выбрать для обчения asp.net или php?

Всем доброго времени суток!
У меня такая проблема. Сейчас стою на пути выбора двух платформ для своего обучения.
Из багажа знаний, есть неплохие знания в C#(теория). И так получилось, что я хочу начать заниматься вебом. По началу начал разбираться, что сейчас популярно и выбирать. В итоге пришёл к 2м платформам
1)Asp.net mvc
2)Php

Первая платформа выбрана, по тем параметрам, что внутренняя часть пишется на самом C#, с которым я уже работал. Да и писали, что она вроде как не слишком дрявая ко взлому. Но очень малое количество уроков и проектов которые можно посмотреть, сильно пугает.

Вторая же платформа выбрана тем, что по ней много уроков и проектов которые можно пощупать. Да и вроде как обновления частенько выходят. Но в тоже время на хабре писали, что она довольно сильно восприимчива ко взлому.

Прошу помочь знающих людей в совете, в какую сторону ступать.
Я еще масленок в вебе и мог напутать, что-то и выше написанного.
Спасибо за внимание!)

И не соглашусь, что мало литературы по ASP.NET MVC. Ее полно. Даже есть неплохие русскоязычные ресурсы, такие как Professorweb и metanit.

asp net или php

asp net или php

Первая платформа выбрана, по тем параметрам, что внутренняя часть пишется на самом C#, с которым я уже работал.

Расскажу Вам историю о себе в двух словах: работал сис. админом и системным программистом (ассемблер, С++), лет N-цать назад ушел в веб, когда ещё DialUp-модемы были. Ни C++ ни Ассемблер в вебе преимущественно не использую и не собирался изначально, не смотря на то, что знал их.

Да и писали, что она вроде как не слишком дрявая ко взлому.

Дрявые бывают мысли у тех, кто делает подобные умозаключения. Времена PHP-3 давно прошли, а некоторые всё никак не успокоятся.

И так, ещё раз, дырявыми бывают программы, а не языки.

Но очень малое количество уроков и проектов которые можно посмотреть, сильно пугает.

Это связано с тем, что за пределами корпоративной среды, очень мало кого интересует дырявый windows (с не слишком дырявым ASP, как мы выяснили ранее) :)))

Вторая же платформа выбрана тем, что по ней много уроков и проектов которые можно пощупать.

Да и вроде как обновления частенько выходят.

Я не буду это комментировать.

Но в тоже время на хабре писали, что она довольно сильно восприимчива ко взлому.

И это тоже (комментировать не буду) :)))

Прошу помочь знающих людей в совете, в какую сторону ступать.

А дальше. решать исключительно Вам 🙂

И так, ещё раз, дырявыми бывают программы, а не языки

asp net или php

Ни C++ ни Ассемблер в вебе преимущественно не использую и не собирался изначально, не смотря на то, что знал их.

asp net или php

Но что в наше время есть программа?

И много эксплойтов нацеливаются на стандартные реализации стандартных методов стандартных библиотек. Если пишешь на голом asm, разумеется, всё зависит от вас. Если ипользуешь чей-то код (пусть даже и код от создателя самого языка), уже есть нюансы.

Ну. да, но это немного не так работает, как Вы описываете. Или точнее говоря, это не с той стороны начинается, начинать нужно с железа (для начала) и операционных систем, на которых «это» может работать. но, это уж очень долгая история и мы пока опустим этот вопрос.

И если опасные zero-day дырки в стандартной библиотеке закроют в течение нескольких часов или дней, то для CMS это уже не факт.

Если уж рассматривать с точки зрения безопасности, то я бы предпочёл ASP.Net

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *