Busca avançada

NopCommerce: como criar um e-commerce do zero

sexta-feira, 13 de novembro de 2020 por Eduardo Aguiar
NopCommerce: como criar um e-commerce do zero

Desenvolver um e-commerce do zero pode ser uma tarefa gigantesca e até dolorosa, dependendo dos requisitos do cliente.

O que poucos desenvolvedores conhecem aqui no Brasil é o NopCommerce, um projeto open source de e-commerce desenvolvido em .NET Core MVC.  

Ele já existe há muito tempo, e em suas primeiras versões foi desenvolvido usando WebForms. Atualmente, na versão 4.30, ele evoluiu bastante.  

Uma das novidades da versão 4.30 é que você pode utilizar como banco de dados em SqlServer ou MySQL.

Eu tenho explicado os fundamentos do NopCommerce com algumas vídeo aulas disponíveis no meu canal How 2 Develop. 

Caso você ainda não conheça o NopCommerce, recomendo ver as aulas na minha playlist do Youtube Aulas NopCommerce.  

Vamos conhecer a ferramenta e aprender a criar um e-commerce do zero?


Baixando e instalando o NopCommerce

Baixe ou clone o projeto do NopCommerce no Github na sua máquina. Em seguida, abra no Visual Studio e execute.

Importante: você deve ter uma instância do SqlServer ou do MySql em execução para poder fazer a instalação do NopCommerce.

Execute o projeto e você verá a seguinte tela da instalação do NopCommerce (figura 1):

(figura 1)


Note que a parte em vermelho é onde configuramos o administrador do sistema. Informe o e-mail (não é enviado um e-mail para a validação do usuário na instalação) e defina uma senha.

Se você marcar a opção “Criar dados de exemplo”, teremos alguns produtos que estarão disponíveis na loja quando terminar a instalação.

Em azul, temos as informações de banco de dados. Pode ser configurado o Sql Server ou o MySQL.

(figura 2)


Na figura 2 note que você pode informar o servidor, nome do banco de dados, usuário e senha do banco.

No caso do Sql Server, se usar a autenticação integrada com o Windows, o usuário e senha não serão necessários.  

Se for usar MySQL, eu acho mais fácil informar a connection string.

Em seguida clique em Instalar. E tudo estará pronto.

Agora você pode ver o resultado do projeto em funcionamento conforme a figura 3.

(figura 3)


Conhecendo o Projeto

Se você é curioso e empolgado como eu, já deve ter navegado na Solution Explorer e visto um pouco do NopCommerce.  

Toda a arquitetura é bastante interessante. Note que ele é bem dividido. Cada biblioteca tem uma função específica. Veja a figura 4.

(figura 4)


A parte em vermelho tenho chamado de “motor” ou “coração” do NopCommerce.  

Ali temos as bibliotecas da pasta Libraries da Solução (em vermelho na figura 4). A essência dele está aí nestes 3 projetos. Vamos falar de cada um.

O Nop.Core tem entidades, classes para cache, container de injeção de dependência...Não se assuste! Ele não usa o padrão do .NET Core, pois o NopCommerce é um legado que começou com WebForms. E muitas outras implementações que servirão de base e apoio para as outras bibliotecas.

O Nop.Data é a camada de acesso a dados. Na versão 4.3 foi implementada uma novidadea: agora podemos usar o MySQL. Foi também tirado o EntityFrameworkCore e colocado Linq2Db como ORM com o objetivo de melhorar a performance.

O Nop.Services é a camada na qual encontramos as regras de negócio. É aqui que se encontra o comportamento do nosso e-commerce.

Mas ainda temos mais a pasta Presentation da Solução (em azul, na figura 4).  

Aí está a “lataria” ou a “pele”, e os “músculos” do NopCommerce. Temos 2 projetos, vamos falar de cada um:

O Nop.Web é um projeto MVC padrão. No NopCommerce vamos ver em um outro artigo como modificar a aparência dele, e é nesse projeto que iremos mexer.

O Nop.Web.Framework trabalha como um “auxiliar” do Nop.Web. Ele tem algumas classes bases para Controllers, ViewComponents e possui algumas classes bem interessantes para o gerenciamento de temas.

A pasta Tests (seta verde na figura 4 – não é o Green do Red, Green e Refactor) são os projetos testes unitário do NopCommerce.

A pasta Plugins (seta vermelha da figura 4) são plugins desenvolvidos para aumentar as funcionalidades do NopCommerce, facilitando a customização da ferramenta.  

Se você expandir esta pasta, verá vários.  

Em seguida, vou explicar cada tipo de Plugin do NopCommerce e como você poderá desenvolver o seu.


Conclusão

Espero que você tenha entendido um pouco sobre os fundamentos do NopCommerce, e tenha uma base para criar seu e-commerce do zero.

Caso queira, tenho conteúdos mais detalhadamente explicados nas minhas vídeo aulas em meu canal.  

Te recomendo acompanhar os vídeos para ampliar seu conhecimento da ferramenta. Em breve publicarei mais conteúdo sobre o assunto.

Ficou com alguma dúvida em alguns desses processos de personalização no NopCommerce? Deixa aqui nos comentários pra gente.  

Até a próxima!

Compartilhar