Погружение в. NET веб-разработки

Многие люди думают, PHP, Ruby на Rails и Python и Django при выборе языка для создания нового веб-сайта или при выборе язык, чтобы учиться, чтобы получить это захватывающая новая работа.. NET, однако, кажется, чтобы занять место несколько в стороне от этой детской площадке спокойные дети.It’ Всегда в последнюю очередь выбрал для игровых видов спорта, он кричал: “Wassup!” На вечеринках и после 2000 года, и это было просто оставили в cold.

I’ м не один из этих людей.В самом деле, I’ м вполне поклонник NET и нашли его большой развиваться с тех пор, отходя от PHP в первые дни моей карьеры..Имея большой инструмент, большое сообщество и широкая применимость (мобильный, Xbox, настольных и Web) it’ с мощным и fun.

Let’ будем честными, все же.I’ м, наверное, уже играя devil’ с адвокатом.Таким образом, let’ Посмотрим, смогу ли я убедить вас, опытный, не .NET разработчика, чтобы попробовать его out.

Если you’. Повторно уже NET разработчик, вы можете все еще найти что-то новое в примере кода, поэтому я призываю вас принять look.

.? NET

Let’ S быть ясно, на что мы подразумеваем под NET, в отличие от IIS (которая является сервер Windows Web), C # (один из NET языков.) И . ASP Classic (предыдущее интерпретировать ASP от спиныв день).Во-первых, решение стать. NET разработчик не обязательно является выбор языка.Хотя большинство разработчиков там работать с C # и большинство рабочих мест для C #, вы можете также код с помощью NET Framework в Visual Basic (VB), F #, . IronRuby IronPython и другие, пользуясьте же библиотеки базы.Правда, оплачиваемая работа для ASP.NET в основном осуществляется с C # и VB.. Для забавы, хотя и показать, как много вариантов у вас есть при разработке на платформе NET, приведенном ниже примере кода будет включать в себя некоторые из самых загадочных методов визуализации веб-страницы с помощью NET.

Итак, “. NET”, мы имеем в виду Common Language Runtime (CLR) (и / или среду выполнения динамического языка для Утюг * языков), который является по существу виртуальной машины, что на различных языках сопровождается базыбиблиотеки классов может работать на.Рамки затем построен на вершине, что для Windows, Xbox, мобильные и Web.

Что это значит

. Зная, что сеть выполнения, мы можем сделать вывод, что он по сути не привязан к конкретной платформе.Конечно, Microsoft CLR является наиболее распространенным, но Mono является открытой реализацией, которая работает на Mac и Linux.Проект Mono также дает нам mod_mono (Apache), monotouch (iPhone) и monodroid (Android) в качестве альтернативных платформ, на которых запустить наш C #code.

Чтобы отличать его дальше, в отличие от сценариев, интерпретируется по запросу языков, таких как классический ASP и PHP, C # является compiled.Это означает, что don’ т придется беспокоиться о включении файлов или после именования папок и структур для обеспечения загрузки авто классом, и вы не должны полагаться на модули или дополнения обеспечить такие вещи, как RAM-кэширование.В самом деле, интеграция углубляется, позволяющий писать модули для IIS (который сам веб-сервер) в C #

. Таким образом, если вы потратите время, чтобы справиться с NET, вы можете воспользоваться этими вспомогательными benefits.Может быть, сделать игру для ОС Windows или Xbox использованием XNA, или сделать приложение для Windows 7 телефон или поверхности.Не сказать, что каждая. NET разработчик делает эти вещи, но, зная, C # и шире. NET мире, вы можете очень легко прыгать по экосистеме пытаясь их все используя те же инструменты и основные языки и все округления вас хорошокак developer.

. Чтобы посмотреть примеры NET в дикой природе, посмотрите на Стек Overflow Wired.co.uk GoDaddy, аспекты Sims и Единство 3.It’ ы не только для крупных предприятий B2Bs или люди, которые по-прежнему работает IE 6.И вы можете работать с коммерческими продуктами за рамки просто EPiServer и Kentico.Моно проектов, упомянутых выше, с открытым исходным кодом;., И поэтому тоже являются множество приложений (например, Umbraco) и библиотек (часто с помощью NuGet менеджер пакетов)

Прежде чем мы перейдем слишком много в рекламе территория, let’ S быть реалистами.Много негативных мнений о. NET там.Некоторые из них являются мифами, некоторые проблемы, которые были решены, а некоторые являются подлинными проблемами, которые you’ придется балансировать против pros.

Tools

Большинство людей слышали о Visual Studio.It’ с довольно удивительным.Да, вы действительно должны заплатить за это, но вы также можете получить бесплатно version.В самом деле, вы можете получить его довольно легко с помощью Web Platform Installer, которая также установить веб-сервер IIS Express и SQL Server Express, базы данных, если это необходимо.(“Экспресс” означает “мелкие” и “свободный” в мире Microsoft.)

Если вы хотите полной версии, но don’ т хотите платить, то рассмотреть вопрос о применении к Microsoft BizSpark (или, если you’ Re студентов, DreamSpark).Вы получите доступ к стеку Microsoft бесплатно в течение трех лет (после чего, ваш бизнес будет процветающим иВы можете заплатить за это, иначе it’ не так, и вы будете платить $ 100 выхода fee graduate).Но, честно говоря, вы, вероятно won’ T это нужно, особенно в первые дни, или если you’ Re hobbyist.

Конечно, все эти Windows, инструменты.Если you’ повторно не на Windows, то вы можете выбрать для Mono Develop.

Можно даже пойти пополам: работа VS качестве IDE, кодирования в C #, но подключение к MySQL или Postgres базы данных.Ничто не мешает вам, и поддержка.Это будет даже спасти Вас от необходимости учитывать затраты на производство SQL Server licenses.

Серверы и Hosting

Microsoft налога возвращается, чтобы укусить нас здесь.Но это doesn’ T составляет огромную разницу в стоимости.Например, для VPS с поставщиком Великобритании хостинг Memset, окна Windows, составляет £ 4 за месяц более чем Linux один.И веб-сайт Microsoft списки другие hosts.Конечно, вы могли бы пойти с Linux хостинга, получить себе VPS и настроить mod_mono для вашего website.

Что будет больно ваш кошелек лицензирования стандартного издания SQL Server.При этом, you’ Придется Баланс плюсов и cons из тесной интеграции с остальной частью экосистемы Microsoft.Вы можете, например, пойти с половиной и половиной подход к экономии затрат, если вы aren’ T, имеющих право на лицензирование скидки или если вы не в восторге от ограничений поставить на SQL Express (такие, как количество процессоров, оперативной памяти., и т.д.)

Краткие Interlude

? Моно действительно выбор

Mono была вокруг в течение долгого времени, но Microsoft doesn’ T поддерживают его таким же образом, что она поддерживает свою собственную платформу.Кроме того, она, как правило, немного позади C # события выходят из Microsoft, потому что команда должна наверстать упущенное.Этот сайт Mono перечислены области compatibility между ними.Как вы можете видеть, сумма покрытия large.

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

Актуальные кодирования

Это то, где мы действительно войти в некоторые из мифов, окружающих NET..По моему опыту, многие веб-разработчики имеют очень негативное восприятие этого:

  • Bloated разметки,
  • Отсутствие контроля над идентификатором,
  • Большая база 64-закодированном виде элементов,
  • Одна из форм чтобы управлять ими всеми,
  • Нечетным парадигмы, которая отражает Windows, development.

Тем не менее, многие из этих вопросов на самом деле относится к ASP.NET Web forms, который, хотя и присоединился совсем недавно в ASP.NET MVC (и тем более в последнее время Web API в MVC4), никогда не былТолько платформа для обслуживания веб-странициспользование библиотеки ASP.NET базу.Не только там мини-рамки там, но вы можете использовать “Веб-формы” и просто осуществить некоторые из ваших HTML вывода и шаблоны по-другому, например, с XSLT.Или Вы могли даже держаться с веб-формами, но использование библиотек, таких как адаптеры CSS контроля, или ограничивать себя ретрансляторы, в отличие от сетки представлений и т.д. В самом деле, с относительно недавних дополнения к WebForms, мы видим усилияДля решения этих разметки concerns.

Это не может много значить для вас, если вы haven’ T использовали эти системы, и я don’ т хотим, чтобы попасть в это слишком много.Раздутой разметки был признак чрезмерной зависимости от “ controls” , где окончательный HTML было фактически скрыта от разработчика, и дополнительные услуги, такие как viewstate были добавлены, чтобы замаскировать без гражданства характера в Интернете.Сама парадигма была довольно сильно отличается от “нормального развития Web,” с очень рабочего стола в стиле событием подход: серверные button_click события и т.д. Это было полезно для разработчиков Windows, которые мигрируют, но это часто делают веб-разработчиков, включая меня, balk.

. Демо ниже, использует ASP.NET MVC проекта, но учтите, что некоторые из этих старых предубеждений против использования стека Microsoft может быть более узким неприязнь к старым формам Web, а не C # или NET generally.

Наконец, Example

Вместо того, чтобы покровительствовать вам шаг за шагом руководство по установке средств с помощью графического интерфейса (установщик веб-платформы), I’ ве создан типовой проект, который можно получить доступ через GitHub.Существует нет доступа к данным (эта тема может охватывать целый ряд статей).Цель состоит в том, чтобы дать вам вкус страниц ASP.NET, чтобы показать, что мы предлагаем, и предоставляют возможность взглянуть на макет код и инструменты, которые вы можете попробовать вещи для yourself.

Оборудование Up Your развития Machine

Самый простой способ получить на руки следующие:

Comments are closed.