Visão geral do ASP.NET

ASP.NET é uma estrutura da Web gratuita para a criação de ótimos sites e aplicativos Web usando HTML, CSS e JavaScript. Você também pode criar APIs Web e usar tecnologias em tempo real, como Web Sockets.

ASP.NET Core é uma alternativa à ASP.NET. Consulte as diretrizes sobre como escolher entre ASP.NET e ASP.NET Core.

Introdução

Instale o Visual Studio Community Edition, um IDE gratuito para ASP.NET no Windows.

Sites e aplicativos Web

ASP.NET oferece três estruturas para criar aplicativos Web: Web Forms, ASP.NET MVC e Páginas da Web do ASP.NET. Todas as três estruturas são estáveis e maduras, e você pode criar ótimos aplicativos Web com qualquer uma delas. Não importa qual estrutura você escolher, você obterá todos os benefícios e recursos de ASP.NET em todos os lugares.

Cada estrutura tem como destino um estilo de desenvolvimento diferente. A escolha depende de uma combinação de seus ativos de programação (conhecimento, habilidades e experiência de desenvolvimento), do tipo de aplicativo que você está criando e da abordagem de desenvolvimento com a qual você está familiarizado.

Veja abaixo uma visão geral de cada uma das estruturas e algumas ideias de como escolher entre elas. Se você preferir uma introdução em vídeo, consulte Criando sites com ASP.NET e O que são ferramentas da Web?

Estrutura Se você tiver experiência em Estilo de desenvolvimento Experiência
Web Forms Win Forms, WPF, .NET Desenvolvimento rápido usando uma biblioteca avançada de controles que encapsulam a marcação HTML Nível Médio, RAD Avançado
MVC Ruby on Rails, .NET Controle total sobre marcação HTML, código e marcação separados e testes fáceis de escrever. A melhor opção para SPA (aplicativos móveis e de página única). Nível Médio, Avançado
Páginas da Web ASP clássico, PHP Marcação HTML e seu código juntos no mesmo arquivo Novo, Mid-Level

Web Forms

Com ASP.NET Web Forms, você pode criar sites dinâmicos usando um modelo conhecido controlado por eventos e arrastar e soltar. Uma superfície de design e muitos controles e componentes lhe permitem compilar rapidamente sites sofisticados, poderosos baseados em UI com acesso de dados.

Saiba mais sobre Web Forms

MVC

O ASP.NET MVC fornece uma maneira eficiente e com base em padrões de compilar sites da Web dinâmicos que habilitam uma separação limpa de preocupações e que fornece a você total controle sobre a marcação de desenvolvimento ágil e divertido. O ASP.NET MVC inclui muitos recursos que habilitam rapidamente o desenvolvimento amigável a TDD para criar aplicativos sofisticados que usam os últimos padrões da Web.

Saiba mais sobre o MVC

Páginas da Web do ASP.NET

Páginas da Web do ASP.NET e a sintaxe Razor fornecem uma maneira rápida, acessível e leve de combinar código do servidor com HTML para criar conteúdo dinâmico da Web. Conecte-se a bancos de dados, adicione vídeo, vincule-se a sites de redes sociais e inclua muitos outros recursos que ajudam você a criar sites bonitos que estejam em conformidade com os padrões da Web mais recentes.

Saiba mais sobre páginas da Web

Observações sobre Web Forms, MVC e Páginas da Web

Todas as três estruturas ASP.NET são baseadas no .NET Framework e compartilham a funcionalidade principal do .NET e do ASP.NET. Por exemplo, todas as três estruturas oferecem um modelo de segurança de logon baseado em associação, e todas as três compartilham as mesmas instalações para gerenciar solicitações, lidar com sessões e assim por diante fazem parte da funcionalidade de ASP.NET principal.

Além disso, as três estruturas não são totalmente independentes e escolher uma não impede o uso de outra. Como as estruturas podem coexistir no mesmo aplicativo Web, não é incomum ver componentes individuais de aplicativos escritos usando estruturas diferentes. Por exemplo, partes voltadas para o cliente de um aplicativo podem ser desenvolvidas no MVC para otimizar a marcação, enquanto o acesso a dados e partes administrativas são desenvolvidos em Web Forms para aproveitar os controles de dados e o acesso a dados simples.

APIs da Web

O ASP.NET Web API é uma estrutura que facilita o desenvolvimento de serviços HTTP que alcançam uma ampla variedade de clientes, incluindo navegadores e dispositivos móveis. O ASP.NET Web API é uma plataforma ideal para o desenvolvimento de aplicativos RESTful no .NET Framework.

Saiba mais sobre API Web

Tecnologias em tempo real

ASP.NET SignalR é uma nova biblioteca para desenvolvedores ASP.NET que facilita o desenvolvimento de funcionalidades da Web em tempo real. O SignalR permite a comunicação bidirecional entre o servidor e o cliente. Os servidores podem enviar conteúdo por push para clientes conectados instantaneamente à medida que ele se torna disponível. O SignalR dá suporte a Web Sockets e volta para outras técnicas compatíveis para navegadores mais antigos. O SignalR inclui APIs para gerenciamento de conexões (por exemplo, eventos de conexão e desconexão), conexões de agrupamento e autorização.

Saiba mais sobre o SignalR

Aplicativos e sites móveis

ASP.NET pode capacitar aplicativos móveis nativos com um back-end de API Web, bem como sites móveis usando estruturas de design responsivas, como o Twitter Bootstrap. Se você estiver criando um aplicativo móvel nativo, será fácil criar uma API Web baseada em JSON para lidar com acesso a dados, autenticação e notificações por push para seu aplicativo. Se você estiver criando um site móvel responsivo, poderá usar qualquer estrutura CSS ou sistema de grade aberta de sua preferência ou selecionar um sistema móvel avançado como jQuery Mobile ou Sencha e ótimos aplicativos móveis com PhoneGap.

Saiba mais sobre o aplicativo móvel e o desenvolvimento de sites

Aplicativos de página única

ASP.NET SPA (Aplicativo de Página Única) ajuda você a criar aplicativos que incluem interações significativas do lado do cliente usando HTML 5, CSS 3 e JavaScript. O Visual Studio inclui um modelo para criar aplicativos de página única usando knockout.js e ASP.NET Web API. Além do modelo spa interno, os modelos spa criados pela comunidade também estão disponíveis para download.

Saiba mais sobre o desenvolvimento de aplicativos de página única

WebHooks

WebHooks é um padrão HTTP leve que fornece um modelo pub/sub simples para conectar APIs Web e serviços SaaS. Quando um evento ocorre em um serviço, uma notificação é enviada na forma de uma solicitação HTTP POST para assinantes registrados. A solicitação POST contém informações sobre o evento, o que possibilita que o receptor atue adequadamente.

WebHooks são expostos por um grande número de serviços, incluindo Dropbox, GitHub, Instagram, MailChimp, PayPal, Slack, Trello e muito mais. Por exemplo, um WebHook pode indicar que um arquivo foi alterado no Dropbox ou que uma alteração de código foi confirmada no GitHub ou que um pagamento foi iniciado no PayPal ou um cartão foi criado no Trello.

Saiba mais sobre WebHooks