Mais acessados

Mostrando postagens com marcador Visual Studio. Mostrar todas as postagens
Mostrando postagens com marcador Visual Studio. Mostrar todas as postagens

terça-feira, 8 de abril de 2014

O que o fim do Windows XP significa para nós desenvolvedores?

Hoje é o dia de despedida do notável Windows XP. Depois de 12 anos por aí a Microsoft finalmente encerrou as atualizações e explica em O que significa o fim do suporte ao Windows XP? o que os usuários do sistema devem fazer neste momento.

Windows XP

Neste breve texto vou abordar o que acho interessante com o término do suporte ao XP. São coisas muito boas, pelo menos para nós desenvolvedores.

O que significa para os desenvolvedores de apps Windows?


Com a manutenção do Windows XP a maioria das empresas deixaram de migrar seus setores de desenvolvimento. Eu mesmo, por exemplo, trabalhei em um grande projeto de software ERP que era usado em massa por empresas que possuíam a versão XP. De acordo com o gráfico da StatCounter é possível ver que há ainda uma parcela considerável de Windows XP no Brasil.

Uso de Sistemas Operacionais no Brasil

Resultado: grande parte do desenvolvimento e dos desenvolvedores ficou parado no Framework .NET 4.0, devido a falta de suporte, como pode ser visto aqui: .NET Framework System Requirements

A maioria nem mesmo usa o WPF ou tira proveito dos avanços feitos com a implementação de MVVM. Estão no Windows Forms, executando queries em plain SQL com ADO.NET e fazendo bind de campos diretamente para DataSets.

Com a atualização para as versões mais novas do sistema operacional a empresa pode migrar seu toolbox de desenvolvimento também, colocando seus desenvolvedores de volta na década certa!

O que significa para os desenvolvedores de apps Web?


Para quem desenvolve para Web o fim do Windows XP é mais feliz ainda. Com ele morre a versão do Internet Explorer 8 e os workarounds de JavaScript para entregar um projeto. Até o ano passado era possível encontrar várias empresas que necessitavam suportar o IE 8, devido ao legado do XP - "pain, pain, pain" =(!

Da mesma forma que para os aplicativos Windows, a empresa agora pode ficar mais a vontade para migrar para novas tecnologias Microsoft que ofereçam o MVC, SignalR e felicidade para seus colaboradores que vão poder voltar aos trilhos da tecnologia.

Convençam seus gestores a migrarem seus softwares! Será um custo recuperado facilmente com a produtividade oferecida pelas novas tecnologias Microsoft presentes no Visual Studio.

Boa semana para todos! Nunca vou me esquecer daquele papel de parede com céu azul Adeus Windows Xp!


segunda-feira, 30 de setembro de 2013

ASP.NET MVC - Novidades do ASP.NET MVC 5

São muitas as novidades que virão com o ASP.NET MVC 5 no Visual Studio 2013. Houve uma mudança visual com novo CSS e templates de Scaffold, incorporação do Claims Security, além  da nova camada middleware OWIN. No Visual Studio 2013, a tela para criação do projeto ficou mais inflada, com várias opções de escolha para autenticação e algumas outras perfumarias.

Novo wizard para criar Web App

A tela para criação de projetos ficou um pouco diferente. Agora é possível selecionar WebForms, MVC e Web API, o que adicionará suporte ao que for selecionado. Parece que a Microsoft finalmente resolveu deixar claro que WebForms pode conviver na mesma aplicação que o MVC.


Novo Wizard para criação de Web Apps

Foi adicionado também um novo botão, em que é possível selecionar o tipo de autenticação que a aplicação irá usar.




Dentre as formas de Autenticação estão: Nenhuma, Individual, Windows e para Organizações. Esta última está diretamente ligada a outra novidade que foi adicionada, o Claim Security, que falarei mais tarde.


Novo wizard Scaffold e Bootstrap

Foi criado uma entrada de menu Scaffold para criação de Views/Controllers. Eu particularmente achei que este deviria ficar no menu principal, mas adicionaram como sub item do menu Add.

Menu Scaffold
O processo foi centralizado em um único local, parecido com um wizard de criação de projetos e soluções. Na primeira tela você seleciona o item que deseja, Controller, View, Web API.
Wizard para seleção de item de Scaffold
A próxima tela é bem parecida com as antigas, em que adiciona-se nome do arquivo, modelo, etc, sendo mais um rearranjo de layout, como por exemplo a tela de Views da figura seguinte.


Wizard criação de View
O CSS padrão agora é o Bootstrap. Uma coisa que achei estranha é que a versão do Bootstrap que vem com o template ser a 2.3.1, sendo que a de mercado já é a 3.0.0. Dado que estamos em RC, acho provável que a nova  seja adicionada ao MVC 5 Final- pelo menos espero que sim :).


CSS padrão agora é Bootstrap
Outra coisa importante é que os templates para Scaffold de View criam essas com layout todo baseado no Bootstrap, ficou muito bom!


Segurança com Claims

A segurança para o seu aplicativo agora pode ser ampliada usando Claims. Com isso é possível criar várias formas de autenticação, como os próprios profissionais do ASP.NET Team comentam, ".. é possível criar um Framework de autorização dirigido a qualquer coisa que você saiba que está associado a identidade de uma requisição que estiver sendo efetuada...".


A maior mudança está no arquivo AccountController.cs, como por exemplo, o método de login abaixo, que agora busca IdentityResult, em vez de usuários diretamente como no MVC 4:

[HttpPost]
[AllowAnonymous]
[ValidateAntiForgeryToken]
public async Task Login(LoginViewModel model, string returnUrl)
{
    if (ModelState.IsValid)
    {
        // Validate the password
        IdentityResult result = await IdentityManager.Authentication.CheckPasswordAndSignInAsync(AuthenticationManager, model.UserName, model.Password, model.RememberMe);
        if (result.Success)
        {
            return RedirectToLocal(returnUrl);
        }
        else
        {
            AddErrors(result);
        }
    }

    // If we got this far, something failed, redisplay form
    return View(model);
}

Para saber mais sobre essa novidade sugiro os artigos abaixo:


    OWIN

    O OWIN Open Web Interface for .NET (OWIN) é uma camada intermediária que separa a sua aplicação do Web Server. Com isto é possível migrar facilmente um aplicativo do IIS para um serviço Windows, por exemplo.

    Você notará dois novos arquivos na soluçao, ambos com o prefixo Startup. Estes são os arquivos de configuração do OWIN.

    Arquivos de configuração do OWIN
    Para saber mais sobre o OWIN:

    Entity Framework 6

    O Entity Framework vem em uma nova versão com várias novidades, principalmente melhoria de performace e novos recursos na parte de Migrations - acho excelente esse recurso. No projeto em si a única mudança visível é adição de uma classe IdentityModels.cs.

    O Entity traz agora um contexto próprio para tratar as classes personalizadas de usuário que serão usadas com o Claims Security:


    public class ApplicationUser : User
    {  
    }
    
    public class ApplicationDbContext : IdentityDbContextWithCustomUser
    {
    }
    

    Para saber mais sobre o Entity Framework 6:

    No próximo post vou cobrir mais a fundo as novidades para Web API 2. Espero que tenham gostado! Boa semana para todos!