Skip to content

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 cont…

Topics

Resources

Stars

3 stars

Watchers

1 watching

Forks

Latest commit

 

History

21 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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 cont…

Topics

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages