Skip to content

Projeto Conceito para implementar uma aplicação web usando a linguagem goLang. Tendo o seguinte contexto: A pouco tempo a empresa Acme Corporation iniciou suas vendas online e carece de uma plataforma robusta para as vendas. Para que as vendas online tenham sucesso a Acme necessita de um novo serviço web que disponibilize funcionalidades de con…

License

Notifications You must be signed in to change notification settings

pssilva/go-lang-acme-corp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

goLang Acme Corp

Projeto Conceito para implementar uma aplicação web usando a linguagem goLang. Tendo o seguinte contexto: A pouco tempo a empresa Acme Corporation iniciou suas vendas online e carece de uma plataforma robusta para as vendas. Para que as vendas online tenham sucesso a Acme necessita de um novo serviço web que disponibilize funcionalidades de controle do estoque.

Objetivos Principais:

  • Criar uma sistema usando linguagem GoLang (Biblioteca padrão, sem framework);
  • Criar um sistema web e Restful API;
  • Projetar Sistemas usando Arquiterura Microservices;
  • Implantação Contínua (Continuous Deployment);

Adquirir Proficiências em Habilidades

1 - Experiência em implementar usando a linguagem GoLang;

GoLang

2 - Experiência em sistemas de banco de dados NoSQL (Cassandra, MongoDB, etc.);

Experiência em sistemas de banco de dados NoSQL

3 - Experiência em sistemas de containerização (e.g. Docker);

Experiência em sistemas de containerização Docker

4 - Experiência em sistemas Linux e shell scripting;

Experiência em sistemas Linux e shell scripting

5 - Experiência em projetos utilizando micro serviços (Microservices) e computação distribuída;

Microservices

Como usar:

Considerando que o seu ambinete SDK já esteja preparado.

  1. Clonar: git https://github.com/pssilva/go-lang-acme-corp.git;

  2. Acessar: cd go-lang-acme-corp;

  3. Definir Path: export GO_PATH=$(pwd);

  4. Instalar Theme: cd $GO_PATH/src/main/staticweb/public/theme/AdminLTE2.3.7;

  5. Import Database MongoDB:
    Considerando que no seu ambiente já tenha o MondoDB instalado e configurado.
    $ chmod u+x $GO_PATH/doc-repo/databases/mongo-import-mongostore-db.sh;
    $ cd $GO_PATH && ./doc-repo/databases/mongo-import-mongostore-db.sh;

  6. Install Package: cd $GO_PATH && go install -v -gcflags "-N -l" main/staticweb;

  7. Run Server: go run $GO_PATH/src/main/staticweb/*.go;

  8. acessar o link: localhost:8080;

Temas

O projeto será adaptado para os seguintes temas (themes):

  1. AdminLTE;

AdminLTE: localhost:8080 ou http://localhost:8080/admin-lte "AdminLTE Presentation"

  1. Gentelella Allela;

Gentelella Allela: [Trabalho em progresso] Gentelella Admin Template

Todo List

  1. Gerar Relatórios;
  2. Enviar E-mails;
  3. Autenticação OAuth2;
  4. Implementar RESTful APIs;
  5. Automatizar geração de CRUDs;
  6. Integração com Logstash;
  7. Gerenciar Logstash com Elasticsearch;

Referência

[Shiju Varghese: 2015], Apress. Web Development with Go: Building Scalable Web Apps and RESTful Services
[Caleb Doxsey: 2016], O’Reilly Media, Inc. Introducing Go: Build Reliable, Scalable Programs
[Ivo Balbaert: 2012], iUniverse, Inc. Bloomington. The Way to Go: A Thorough Introduction to the Go Programming Language
[Kristina Chodorow: 2013], O’Reilly Media, Inc. MongoDB: The Definitive Guide: Second Edition
[Shantanu Tushar, Sarath Lakshman: 2015], Wiley Authenticity Guarantee. Linux Command Line and Shell Scripting Bible: 3rd Edition - The Comprehensive, Tutorial Resource
[Richard Blum, Christine Bresnahan: 2013], Packt Publishing Ltd. Linux Shell Scripting Cookbook: Over 110 practical recipes to solve real-world shell problems, guaranteed to make you wonder how you ever lived without them
[Vaughn Vernon: 2013], Addison-Wesley Professional; Edição: 1,Implementing Domain-Driven Design: Designing Fine-Grained Systems
[Sam Newman: 2015], O’Reilly Media, Inc., Building Microservices: Designing Fine-Grained Systems
[Christian Posta: 2016], O’Reilly Media, Inc., Microservices for Java Developers: A Hands-on Introduction to Frameworks and Containers

About

Projeto Conceito para implementar uma aplicação web usando a linguagem goLang. Tendo o seguinte contexto: A pouco tempo a empresa Acme Corporation iniciou suas vendas online e carece de uma plataforma robusta para as vendas. Para que as vendas online tenham sucesso a Acme necessita de um novo serviço web que disponibilize funcionalidades de con…

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published