SlideShare uma empresa Scribd logo
1 de 14
Projeto
O escopo do projeto foi o desenvolvimento um
pequeno sistema de agendamento e gerenciamento
de cartões, que ao longo de 3 fases foi sendo
refatorado e melhorado.
● A primeira fase foi desenvolver este projeto com
os meus conceitos até aquele momento.
● A segunda fase foi a refatoração do projeto
aplicando os conceitos aprendidos depois de ter
estudado os vídeos do Uncle Bob.
● A terceira fase foi o desenvolvimento de uma API
com algum Framework, onde eu embutiria o core,
do sistema de gerenciamento de cartões, agora
disponibilizando os seus métodos via URL.
Pois bem depois de todas estas fazes,
aprendi inúmeros, conceitos, tecnologias,
métodos etc.
Para o desenvolvimento da API escolhi em
consenso com a equipe de Dev o Silex como
Framework para API, e o Angular como Client.
Silex
Framework PHP baseado em rotas, ótimo para
desenvolvimento de API's devido a seu desempenho,
facilidade, flexibilidade o qual dispõe de diversos
componentes, assim estendo as opções que este
oferece. Como componentes de documentação,
autenticação, log etc...
Angular
Framework JavaScript que funciona como uma
extensão do documento html, adicionando novas
funcionalidades em forma de atributos e tags, seu intuito
é facilitar o desenvolvimento de aplicações client-side
contando com inúmeras funções e altamente
recomendável para o consumo de API's.
Tecnologias
Silex – microframework
Symfony Components
PDO
MySql
Github – projects (gitignore, Silex cors, ...)
Angular
Bower
Composer
PSR-0 Autoload
PHPunit
Swagger
Conceitos desenvolvidos
MVC
Single One Resposability
Dependency Injection
Code Standards
SPA
Fontes de conhecimento
Equipe Personare
Vídeos Uncle Bob
CodeSchol
Egghead
Fóruns
Tutoriais
Documentações
Estrutura do projeto
Links
● Angular Cliente:
http://enviroment-deler.rhcloud.com/client
● Documentação Swagger
http://enviroment-deler.rhcloud.com/doc
● Projetos GitHub
https://github.com/Delermando/systemAgendaV1
https://github.com/Delermando/systemAgendaV2
https://github.com/Delermando/systemAgendaV3

Mais conteúdo relacionado

Mais procurados

Cya grunt.js, hello gulp.js
Cya grunt.js, hello gulp.jsCya grunt.js, hello gulp.js
Cya grunt.js, hello gulp.jsMichael Douglas
 
C# 6.0 .net coders
C# 6.0   .net codersC# 6.0   .net coders
C# 6.0 .net codersRenato Groff
 
Criar um sistema com asp net
Criar um sistema com asp netCriar um sistema com asp net
Criar um sistema com asp netAnderson Wernek
 
Laravel 5: Entenda o ambiente e a estrutura MVC
 Laravel 5: Entenda o ambiente e a estrutura MVC Laravel 5: Entenda o ambiente e a estrutura MVC
Laravel 5: Entenda o ambiente e a estrutura MVCMichael Douglas
 
C# 6.0 - Interopmix 2015
C# 6.0 - Interopmix 2015C# 6.0 - Interopmix 2015
C# 6.0 - Interopmix 2015Renato Groff
 
Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]
Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]
Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]Tiago Hillebrandt
 
A Evolução do Front end
A Evolução do Front endA Evolução do Front end
A Evolução do Front endDouglas Matoso
 
40 php orientado a objetos
40 php orientado a objetos40 php orientado a objetos
40 php orientado a objetosFrancisco Santos
 
Usando Git na Unity - Gaming For All 2021
Usando Git na Unity - Gaming For All 2021Usando Git na Unity - Gaming For All 2021
Usando Git na Unity - Gaming For All 2021Erik Cruz
 
DevPira Festival 21 - .NET6 Uma nova forma de construir apis MinimalAPIs
DevPira Festival 21 - .NET6 Uma nova forma de construir apis MinimalAPIsDevPira Festival 21 - .NET6 Uma nova forma de construir apis MinimalAPIs
DevPira Festival 21 - .NET6 Uma nova forma de construir apis MinimalAPIsJúnior Porfirio
 
Testes com javascript
Testes com javascriptTestes com javascript
Testes com javascriptLaís Lima
 
Testando uma aplicação AngularJS utilizando o Karma
Testando uma aplicação AngularJS utilizando o KarmaTestando uma aplicação AngularJS utilizando o Karma
Testando uma aplicação AngularJS utilizando o KarmaHenrique Limas
 
Django - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonDjango - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonIgor Sobreira
 
Desenvolvimento web: PHP orientado a objetos
Desenvolvimento web: PHP orientado a objetosDesenvolvimento web: PHP orientado a objetos
Desenvolvimento web: PHP orientado a objetosLucas Vegi
 
Composer dependency manager - TDC - POA 2017
Composer   dependency manager - TDC - POA 2017Composer   dependency manager - TDC - POA 2017
Composer dependency manager - TDC - POA 2017Vitor Mattos
 

Mais procurados (20)

Cya grunt.js, hello gulp.js
Cya grunt.js, hello gulp.jsCya grunt.js, hello gulp.js
Cya grunt.js, hello gulp.js
 
Jugvale
JugvaleJugvale
Jugvale
 
C# 6.0 .net coders
C# 6.0   .net codersC# 6.0   .net coders
C# 6.0 .net coders
 
JEE nas nuvens: uma introdução ao openshift
JEE nas nuvens:  uma introdução ao openshiftJEE nas nuvens:  uma introdução ao openshift
JEE nas nuvens: uma introdução ao openshift
 
Criar um sistema com asp net
Criar um sistema com asp netCriar um sistema com asp net
Criar um sistema com asp net
 
Laravel 5: Entenda o ambiente e a estrutura MVC
 Laravel 5: Entenda o ambiente e a estrutura MVC Laravel 5: Entenda o ambiente e a estrutura MVC
Laravel 5: Entenda o ambiente e a estrutura MVC
 
Escalando apps com React e Type Script e SOLID
Escalando apps com React e Type Script e SOLIDEscalando apps com React e Type Script e SOLID
Escalando apps com React e Type Script e SOLID
 
C# 6.0 - Interopmix 2015
C# 6.0 - Interopmix 2015C# 6.0 - Interopmix 2015
C# 6.0 - Interopmix 2015
 
Linguagem c
Linguagem cLinguagem c
Linguagem c
 
Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]
Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]
Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]
 
Django - Muito além do básico
Django - Muito além do básicoDjango - Muito além do básico
Django - Muito além do básico
 
A Evolução do Front end
A Evolução do Front endA Evolução do Front end
A Evolução do Front end
 
40 php orientado a objetos
40 php orientado a objetos40 php orientado a objetos
40 php orientado a objetos
 
Usando Git na Unity - Gaming For All 2021
Usando Git na Unity - Gaming For All 2021Usando Git na Unity - Gaming For All 2021
Usando Git na Unity - Gaming For All 2021
 
DevPira Festival 21 - .NET6 Uma nova forma de construir apis MinimalAPIs
DevPira Festival 21 - .NET6 Uma nova forma de construir apis MinimalAPIsDevPira Festival 21 - .NET6 Uma nova forma de construir apis MinimalAPIs
DevPira Festival 21 - .NET6 Uma nova forma de construir apis MinimalAPIs
 
Testes com javascript
Testes com javascriptTestes com javascript
Testes com javascript
 
Testando uma aplicação AngularJS utilizando o Karma
Testando uma aplicação AngularJS utilizando o KarmaTestando uma aplicação AngularJS utilizando o Karma
Testando uma aplicação AngularJS utilizando o Karma
 
Django - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonDjango - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com Python
 
Desenvolvimento web: PHP orientado a objetos
Desenvolvimento web: PHP orientado a objetosDesenvolvimento web: PHP orientado a objetos
Desenvolvimento web: PHP orientado a objetos
 
Composer dependency manager - TDC - POA 2017
Composer   dependency manager - TDC - POA 2017Composer   dependency manager - TDC - POA 2017
Composer dependency manager - TDC - POA 2017
 

Semelhante a Construindo uma API, Client e Documentação usando Silex, Angular e Swagger

Projeto Indiana
Projeto IndianaProjeto Indiana
Projeto Indianahellequin
 
Guião demotécnica
Guião demotécnicaGuião demotécnica
Guião demotécnicaSilvio Dias
 
Guiao demotecnica
Guiao demotecnicaGuiao demotecnica
Guiao demotecnicaSilvio Dias
 
Infoeste 2014 - Desenvolvimento de um CMS com Codeigniter Framework(PHP)
Infoeste 2014 - Desenvolvimento de um CMS com Codeigniter Framework(PHP)Infoeste 2014 - Desenvolvimento de um CMS com Codeigniter Framework(PHP)
Infoeste 2014 - Desenvolvimento de um CMS com Codeigniter Framework(PHP)Rafael Oliveira
 
Python, Google App Engine e Webapp-CE
Python, Google App Engine e Webapp-CE Python, Google App Engine e Webapp-CE
Python, Google App Engine e Webapp-CE Renzo Nuccitelli
 
Google App Engine e Python
Google App Engine e PythonGoogle App Engine e Python
Google App Engine e PythonPeslPinguim
 
Desenvolvimento de Aplicações com Visual Studio
Desenvolvimento de Aplicações com Visual StudioDesenvolvimento de Aplicações com Visual Studio
Desenvolvimento de Aplicações com Visual StudioGeovani Ferreira Gonçalves
 
T@rget trust asp.net avançado
T@rget trust   asp.net avançadoT@rget trust   asp.net avançado
T@rget trust asp.net avançadoTargettrust
 
Autenticação Visual - EspWeb 2010
Autenticação Visual - EspWeb 2010Autenticação Visual - EspWeb 2010
Autenticação Visual - EspWeb 2010ribhonorato
 
SATADS 2019 - Desenvolvimento com recursos da AWS
SATADS 2019 - Desenvolvimento com recursos da AWSSATADS 2019 - Desenvolvimento com recursos da AWS
SATADS 2019 - Desenvolvimento com recursos da AWSAnderson Contreira
 
Projeto e Desenvolvimento de Software
Projeto e Desenvolvimento de SoftwareProjeto e Desenvolvimento de Software
Projeto e Desenvolvimento de SoftwareAragon Vieira
 
Development of structural applications using web based technologies
Development of structural applications using web based technologiesDevelopment of structural applications using web based technologies
Development of structural applications using web based technologiesRui Barros
 
01 - Introdução a programação para internet v1.1
01 - Introdução a programação para internet v1.101 - Introdução a programação para internet v1.1
01 - Introdução a programação para internet v1.1César Augusto Pessôa
 
Slide 02 introdução ao code igniter, utilização do bootstrap
Slide 02   introdução ao code igniter, utilização do bootstrap Slide 02   introdução ao code igniter, utilização do bootstrap
Slide 02 introdução ao code igniter, utilização do bootstrap Raniere de Lima
 
Criando Aplicações .NET com o TheWebMind
Criando Aplicações .NET com o TheWebMindCriando Aplicações .NET com o TheWebMind
Criando Aplicações .NET com o TheWebMindJaydson Gomes
 
[MTC 2021] As 8 melhores práticas e formas de simplificar e estruturar todos...
[MTC 2021] As 8 melhores práticas e formas de simplificar e estruturar todos...[MTC 2021] As 8 melhores práticas e formas de simplificar e estruturar todos...
[MTC 2021] As 8 melhores práticas e formas de simplificar e estruturar todos...minastestingconference
 

Semelhante a Construindo uma API, Client e Documentação usando Silex, Angular e Swagger (20)

Projeto Indiana
Projeto IndianaProjeto Indiana
Projeto Indiana
 
Intro aspnet webapi
Intro aspnet webapiIntro aspnet webapi
Intro aspnet webapi
 
Guião demotécnica
Guião demotécnicaGuião demotécnica
Guião demotécnica
 
Guiao demotecnica
Guiao demotecnicaGuiao demotecnica
Guiao demotecnica
 
Infoeste 2014 - Desenvolvimento de um CMS com Codeigniter Framework(PHP)
Infoeste 2014 - Desenvolvimento de um CMS com Codeigniter Framework(PHP)Infoeste 2014 - Desenvolvimento de um CMS com Codeigniter Framework(PHP)
Infoeste 2014 - Desenvolvimento de um CMS com Codeigniter Framework(PHP)
 
Python, Google App Engine e Webapp-CE
Python, Google App Engine e Webapp-CE Python, Google App Engine e Webapp-CE
Python, Google App Engine e Webapp-CE
 
Google App Engine e Python
Google App Engine e PythonGoogle App Engine e Python
Google App Engine e Python
 
Desenvolvimento de Aplicações com Visual Studio
Desenvolvimento de Aplicações com Visual StudioDesenvolvimento de Aplicações com Visual Studio
Desenvolvimento de Aplicações com Visual Studio
 
T@rget trust asp.net avançado
T@rget trust   asp.net avançadoT@rget trust   asp.net avançado
T@rget trust asp.net avançado
 
SAPO Campus - P3
SAPO Campus - P3SAPO Campus - P3
SAPO Campus - P3
 
Autenticacao visual
Autenticacao visualAutenticacao visual
Autenticacao visual
 
Autenticação Visual - EspWeb 2010
Autenticação Visual - EspWeb 2010Autenticação Visual - EspWeb 2010
Autenticação Visual - EspWeb 2010
 
Autenticacao visual
Autenticacao visualAutenticacao visual
Autenticacao visual
 
SATADS 2019 - Desenvolvimento com recursos da AWS
SATADS 2019 - Desenvolvimento com recursos da AWSSATADS 2019 - Desenvolvimento com recursos da AWS
SATADS 2019 - Desenvolvimento com recursos da AWS
 
Projeto e Desenvolvimento de Software
Projeto e Desenvolvimento de SoftwareProjeto e Desenvolvimento de Software
Projeto e Desenvolvimento de Software
 
Development of structural applications using web based technologies
Development of structural applications using web based technologiesDevelopment of structural applications using web based technologies
Development of structural applications using web based technologies
 
01 - Introdução a programação para internet v1.1
01 - Introdução a programação para internet v1.101 - Introdução a programação para internet v1.1
01 - Introdução a programação para internet v1.1
 
Slide 02 introdução ao code igniter, utilização do bootstrap
Slide 02   introdução ao code igniter, utilização do bootstrap Slide 02   introdução ao code igniter, utilização do bootstrap
Slide 02 introdução ao code igniter, utilização do bootstrap
 
Criando Aplicações .NET com o TheWebMind
Criando Aplicações .NET com o TheWebMindCriando Aplicações .NET com o TheWebMind
Criando Aplicações .NET com o TheWebMind
 
[MTC 2021] As 8 melhores práticas e formas de simplificar e estruturar todos...
[MTC 2021] As 8 melhores práticas e formas de simplificar e estruturar todos...[MTC 2021] As 8 melhores práticas e formas de simplificar e estruturar todos...
[MTC 2021] As 8 melhores práticas e formas de simplificar e estruturar todos...
 

Construindo uma API, Client e Documentação usando Silex, Angular e Swagger

  • 1.
  • 2.
  • 3.
  • 4. Projeto O escopo do projeto foi o desenvolvimento um pequeno sistema de agendamento e gerenciamento de cartões, que ao longo de 3 fases foi sendo refatorado e melhorado. ● A primeira fase foi desenvolver este projeto com os meus conceitos até aquele momento. ● A segunda fase foi a refatoração do projeto aplicando os conceitos aprendidos depois de ter estudado os vídeos do Uncle Bob. ● A terceira fase foi o desenvolvimento de uma API com algum Framework, onde eu embutiria o core, do sistema de gerenciamento de cartões, agora disponibilizando os seus métodos via URL.
  • 5. Pois bem depois de todas estas fazes, aprendi inúmeros, conceitos, tecnologias, métodos etc. Para o desenvolvimento da API escolhi em consenso com a equipe de Dev o Silex como Framework para API, e o Angular como Client.
  • 6.
  • 7. Silex Framework PHP baseado em rotas, ótimo para desenvolvimento de API's devido a seu desempenho, facilidade, flexibilidade o qual dispõe de diversos componentes, assim estendo as opções que este oferece. Como componentes de documentação, autenticação, log etc... Angular Framework JavaScript que funciona como uma extensão do documento html, adicionando novas funcionalidades em forma de atributos e tags, seu intuito é facilitar o desenvolvimento de aplicações client-side contando com inúmeras funções e altamente recomendável para o consumo de API's.
  • 8. Tecnologias Silex – microframework Symfony Components PDO MySql Github – projects (gitignore, Silex cors, ...) Angular Bower Composer PSR-0 Autoload PHPunit Swagger
  • 9. Conceitos desenvolvidos MVC Single One Resposability Dependency Injection Code Standards SPA
  • 10. Fontes de conhecimento Equipe Personare Vídeos Uncle Bob CodeSchol Egghead Fóruns Tutoriais Documentações
  • 12.
  • 13.
  • 14. Links ● Angular Cliente: http://enviroment-deler.rhcloud.com/client ● Documentação Swagger http://enviroment-deler.rhcloud.com/doc ● Projetos GitHub https://github.com/Delermando/systemAgendaV1 https://github.com/Delermando/systemAgendaV2 https://github.com/Delermando/systemAgendaV3