SlideShare ist ein Scribd-Unternehmen logo
1 von 13
Downloaden Sie, um offline zu lesen
GERADOR DE PROGRAMAS .NET E JAVA




                                               USANDO O IZCODE
                                       PARA GERAR SOFTWARE RAPIDAMENTE




 SUMÁRIO
  INTRODUÇÃO ............................................................................................................................................................ 2
  O QUE É O izCODE?................................................................................................................................................... 2
  COMO FUNCIONA O izCODE? ................................................................................................................................... 2
  DIFERENTES TIPOS DE GERADORES DE CÓDIGO ...................................................................................................... 2
     Os mapeadores objeto-relacional ........................................................................................................................ 3
     As meta linguagens ............................................................................................................................................... 3
     Conclusão.............................................................................................................................................................. 4
  A ABORDAGEM izCODE ............................................................................................................................................ 4
     Flexibilidade, velocidade, qualidade, reuso e repetição ...................................................................................... 4
  COMO É COMPOSTO O izCODE? .............................................................................................................................. 5
     Pré-requisitos........................................................................................................................................................ 5
  EXPLORANDO O SOFTWARE CLIENTE ....................................................................................................................... 5
     Importando uma base de dados ........................................................................................................................... 5
     Editando os dados das tabelas e campos ............................................................................................................. 7
     editando as telas a serem geradas ....................................................................................................................... 9
     Gerando o código desejado ................................................................................................................................10
     aguardando a geração de código .......................................................................................................................12




                                                                                                                                                        Página 1 de 13
                                                                                                                                                       www.izcode.com
GERADOR DE PROGRAMAS .NET E JAVA

 INTRODUÇÃO

 Este documento demonstra de forma sucinta como utilizar a ferramenta IZCode para aumentar a eficiência dos
 projetos de desenvolvimento de Software. Para esta demonstração, usaremos como plataforma destino, o
 Microsoft Dot Net 3.5, com a linguagem C#, e a plataforma WEB.

 A escolha do projeto a ser usado como demonstrativo, seguiu o critério de popularidade. Desta forma, como
 existem muitos trabalhos similares que utilizam o projeto padrão da Microsoft, o NorthWind, nós também
 resolvemos utilizá-lo. Portanto, será mais fácil para o leitor comparar os resultados obtidos ao utilizar o IZCode e
 outros mecanismos.



 O QUE É O IZCODE?

 O IZCode é um gerador automático de software que acelera o desenvolvimento de softwares em todas as suas
 etapas. Telas, banco de dados, documentação e etc.



 COMO FUNCIONA O IZCODE?

 O IZCode é um gerador de sistemas comerciais de propósito especifico. Isto significa que ele é muito eficiente em
 gerar sistemas comerciais e se limita a isto. Com esta aparente limitação, o IZCode ficou livre para gerar de forma
 realmente simples softwares em questões de minutos, ao invés de meses.

 A geração de software através IZCode, parte do princípio que todo software comercial segue um padrão pré-
 determinado de codificação, design de tela e funcionalidades. Sendo que a variação do padrão de um software
 produzido em relação ao outro é inferior a 10% de todo esforço empreendido.

 Isto acontece porque a implementação das regras de negócio resultam em menos de 1% do código total
 desenvolvido e cerca de 10% do tempo de implementação. Os outros 90% do tempo de implementação e 99% do
 código, seguem um padrão que os analistas de sistemas chamam de CRUD, que significa (CREATE, RETRIEVE,
 UPDATE , DELETE ). Ou CRIAÇÃO, RECUPERAÇÃO, ATUALIZAÇÃO e DELEÇÃO.



 DIFERENTES TIPOS DE GERADORES DE CÓDIGO

 Existem muitos programas que se propõe a gerar software a partir de bases de dados e em geral, podemos
 classificá-los em duas categorias distintas:




                                                                                                      Página 2 de 13
                                                                                                     www.izcode.com
GERADOR DE PROGRAMAS .NET E JAVA

 OS MAPEADORES OBJETO-RELACIONAL

 Estes softwares se dedicam a transpor um objeto relacional presente em um banco de dados a um objeto em
 uma linguagem de programação.

   VANTAGENS                                               DESVANTAGENS

    Gratuitos                                                Não geram documentação
                                                              Não geram telas
                                                              Não geram serviços
                                                              Difíceis de parametrizar
                                                              Pouco Flexíveis




AS META LINGUAGENS

Outra categoria de geradores de código são os geradores que utilizam meta-linguagens. A idéia por traz deles é a de
usar uma linguagem de programação para gerar outra linguagem de programação. Seu principal problema é
justamente este. Normalmente queremos um gerador de código que minimize nossa tarefa de programação e não
que aumente a complexidade do projeto. Introduzindo outra linguagem ou tecnologia, dificulta e atrasar o código
gerado. Sem contar que estará sujeito a erros da mesma forma que na utilização de uma programação convencional.

 VANTAGENS                                             DESVANTAGENS

  Muito Flexíveis                                      Não geram documentação
  Geram CRUD                                           Não geram serviços
  Geram Telas                                          Exigem o aprendizado de uma nova linguagem
                                                        Sujeito a BUGS
                                                        Difícil manutenção
                                                        Exige alto nível de especialização do
                                                         programador
                                                        Cria um vinculo muito forte com o programador
                                                        Custo elevado de mão de obra e de criação de
                                                         um modelo que atenda as necessidades da
                                                         empresa.
                                                        Tempo de desenvolvimento desvia o foco dos
                                                         negócios da empresa.




                                                                                                    Página 3 de 13
                                                                                                   www.izcode.com
GERADOR DE PROGRAMAS .NET E JAVA


 CONCLUSÃO

 Concluímos que apesar de oferecer benefícios menores e serem menos flexíveis, a adoção de softwares de
 mapeamento objeto-relacional apresentam riscos menores na condução de projetos de desenvolvimento de
 software. As meta-linguagens, por serem demasiadamente complexas, apresentam um alto custo de licença por
 máquina, e geram código de difícil manutenção e re-uso.



 A ABORDAGEM IZCODE

 O IZCode veio justamente suprir a necessidade de um gerador de software comercial que traga o maior número de
 benefícios na geração de código, com o menor número e problemas possíveis.

 Nossa abordagem é a de usar uma meta-linguagem em conjunto com um mapeador objeto-relacional
 encapsulados em templates. De forma que o usuário final, projetista ou gerente de projeto, escolha entre os
 vários modelos existentes como o software gerado deverá ser. O mesmo software pode ser gerado para dois ou
 mais templates, ou seja, podemos querer um software que rode para Web, Mobile, Desktop e Linux. Tudo de uma
 vez só.

 Portanto, obtemos o melhor dos dois mundos: a praticidade dos mapeadores objeto-relacional, com a
 flexibilidade das meta-linguagens. Assim, evitamos também os problemas de cada um, pois a meta-linguagem
 utilizada pelo IZCode é completamente encapsulada. Escondida do usuário final. Dessa forma, não precisa se
 preocupar com nada além do seu próprio código e negócio.



 FLEXIBILIDADE, VELOCIDADE, QUALIDADE, REUSO E REPETIÇÃO

 Por ser baseado em uma poderosa meta-linguagem, o IZCode é completamente flexível e adaptável à sua
 realidade. É possível adaptá-lo para gerar códigos de acordo com a necessidade da sua empresa, seguindo os
 padrões de codificação especificados por você. Sem ter de dispor de tempo e mão de obra para aprender uma
 nova e complicada meta-linguagem.

 Com esta abordagem, sua equipe de T.I. ganhará em velocidade e qualidade na produção de software e permitirá
 que o desenvolvimento de projetos diversos fiquem menos dependente dos programadores e analistas de
 sistemas, uma vez que código gerado sempre será uma repetição de uma experiência prévia bem sucedida.




                                                                                                Página 4 de 13
                                                                                               www.izcode.com
GERADOR DE PROGRAMAS .NET E JAVA

 COMO É COMPOSTO O IZCODE?

 O IZCode está dividido em duas partes básicas:
         Um software cliente, que pode ser baixado livremente na internet e é responsável pela configuração,
         edição e definição de diretrizes de como o software gerado deve ser.
         Um software factory, que é um serviço na forma de um WebService. Responsável por ler o arquivo
         gerado pelo Cliente, processando-o, e gerando o código requisitado.



 PRÉ-REQUISITOS
 Abaixo seguem os pré-requisitos de funcionamento do software cliente do IZCode.

     Sistema operacional Microsoft © Windows XP, Vista, Windows 7 ou superior
     Adobe Reader (Essencial para o funcionamento e para ler os textos gerados pelo software)
     Acesso a internet (para a comunicação com o servidor que fará toda a engenharia de código)



 EXPLORANDO O SOFTWARE CLIENTE

 Abaixo colocamos as principais telas do software cliente. Você poderá fazer um download do software
 gratuitamente através do site: www.izcode.com



 IMPORTANDO UMA BASE DE DADOS

 Abaixo podemos ver a tela onde é importada uma base de dados. A importação será feita a partir de um banco de
 dados MS-SQL Server.




                         Passo 1 - Escolhendo o tipo de banco de dados




                                                                                                 Página 5 de 13
                                                                                                www.izcode.com
GERADOR DE PROGRAMAS .NET E JAVA




               Passo 2 - Escolhendo o servidor e a base de dados




               Passo 3 - Selecionando as tabelas a serem importadas




                                                                       Página 6 de 13
                                                                      www.izcode.com
GERADOR DE PROGRAMAS .NET E JAVA

 EDITANDO OS DADOS DAS TABELAS E CAMPOS

 Após importar a base de dados, para obtermos um software de melhor qualidade, devemos editar o maior
 número de informações possíveis.




                     Passo 1 - Escreva um pouco de informação sobre cada tabela




                     Passo 2 - Selecione detalhes sobre cada campo, e sua forma de exibição




                                                                                               Página 7 de 13
                                                                                              www.izcode.com
GERADOR DE PROGRAMAS .NET E JAVA




               Passo 2 - Campos de foreing-keys são automaticamente preenchidos




               Passo 3 - Preencha ou importe seus dicionários de dados




                                                                                   Página 8 de 13
                                                                                  www.izcode.com
GERADOR DE PROGRAMAS .NET E JAVA




                  Passo 4 - As stored-procedures existentes também são importadas




 EDITANDO AS TELAS A SEREM GERADAS




                  Passo 1 - Escreva um titulo para cada tela e informe seu modo de funcionamento




                                                                                                    Página 9 de 13
                                                                                                   www.izcode.com
GERADOR DE PROGRAMAS .NET E JAVA

 GERANDO O CÓDIGO DESEJADO




                 Passo 1 - Escolha a plataforma destino




                 Passo 2 - Escolha o modelo de geração de código




                                                                    Página 10 de 13
                                                                   www.izcode.com
GERADOR DE PROGRAMAS .NET E JAVA




                Passo 3 - Escolha as funcionalidades do código a ser gerado




                Passo 4 - Revise os avisos e erros antes de gerar o código




                                                                               Página 11 de 13
                                                                              www.izcode.com
GERADOR DE PROGRAMAS .NET E JAVA

 AGUARDANDO A GERAÇÃO DE CÓDIGO




                           Passo 1 - Assim que seu código estiver gerado, o botão "Explorar Código" será habilitado.




  Passo 2 - Navegue pelo código gerado.




                                                                                                                        Página 12 de 13
                                                                                                                       www.izcode.com
GERADOR DE PROGRAMAS .NET E JAVA




      Calculadora de Economia.




                                    Página 13 de 13
                                   www.izcode.com

Weitere ähnliche Inhalte

Was ist angesagt?

Dispositivos Móveis - BlackBerry
Dispositivos Móveis - BlackBerryDispositivos Móveis - BlackBerry
Dispositivos Móveis - BlackBerryValdir Junior
 
Programa Acadêmico Embarcadero Gratuíto
Programa Acadêmico Embarcadero GratuítoPrograma Acadêmico Embarcadero Gratuíto
Programa Acadêmico Embarcadero GratuítoFernando Rizzato
 
Introdução a Plataforma Java EE
Introdução a Plataforma Java EEIntrodução a Plataforma Java EE
Introdução a Plataforma Java EEEder Magalhães
 
Projeto integrado ii – ads back end - web - mobile -devops
Projeto integrado ii – ads   back end - web - mobile -devopsProjeto integrado ii – ads   back end - web - mobile -devops
Projeto integrado ii – ads back end - web - mobile -devopsZairaLessa
 
Apostila delphi rad studio 2007
Apostila delphi   rad studio 2007Apostila delphi   rad studio 2007
Apostila delphi rad studio 2007Guilherme Bruno
 
Angular, React ou Vue? Comparando os favoritos do JS reativo
Angular, React ou Vue? Comparando os favoritos do JS reativoAngular, React ou Vue? Comparando os favoritos do JS reativo
Angular, React ou Vue? Comparando os favoritos do JS reativoGDGFoz
 
Integração contínua - Rumo à automação e ao DEVOPS
Integração contínua - Rumo à automação e ao DEVOPSIntegração contínua - Rumo à automação e ao DEVOPS
Integração contínua - Rumo à automação e ao DEVOPSFabiano Souza
 

Was ist angesagt? (12)

Dispositivos Móveis - BlackBerry
Dispositivos Móveis - BlackBerryDispositivos Móveis - BlackBerry
Dispositivos Móveis - BlackBerry
 
Programa Acadêmico Embarcadero Gratuíto
Programa Acadêmico Embarcadero GratuítoPrograma Acadêmico Embarcadero Gratuíto
Programa Acadêmico Embarcadero Gratuíto
 
Oficina Sesc Android - V1
Oficina Sesc Android - V1Oficina Sesc Android - V1
Oficina Sesc Android - V1
 
Delphi aplicado by jurandir pellin
Delphi aplicado by jurandir pellinDelphi aplicado by jurandir pellin
Delphi aplicado by jurandir pellin
 
Interplan java basico_modulo1
Interplan java basico_modulo1Interplan java basico_modulo1
Interplan java basico_modulo1
 
Introdução a Plataforma Java EE
Introdução a Plataforma Java EEIntrodução a Plataforma Java EE
Introdução a Plataforma Java EE
 
Projeto integrado ii – ads back end - web - mobile -devops
Projeto integrado ii – ads   back end - web - mobile -devopsProjeto integrado ii – ads   back end - web - mobile -devops
Projeto integrado ii – ads back end - web - mobile -devops
 
Apostila delphi rad studio 2007
Apostila delphi   rad studio 2007Apostila delphi   rad studio 2007
Apostila delphi rad studio 2007
 
Angular, React ou Vue? Comparando os favoritos do JS reativo
Angular, React ou Vue? Comparando os favoritos do JS reativoAngular, React ou Vue? Comparando os favoritos do JS reativo
Angular, React ou Vue? Comparando os favoritos do JS reativo
 
Código Limpo
Código LimpoCódigo Limpo
Código Limpo
 
Netbeans
NetbeansNetbeans
Netbeans
 
Integração contínua - Rumo à automação e ao DEVOPS
Integração contínua - Rumo à automação e ao DEVOPSIntegração contínua - Rumo à automação e ao DEVOPS
Integração contínua - Rumo à automação e ao DEVOPS
 

Andere mochten auch

Apresentacao IzCode Web
Apresentacao IzCode  WebApresentacao IzCode  Web
Apresentacao IzCode Webjoaopauloaos
 
Arquitetura de Software Baseada em Componentes: Um Estudo de Caso para o Cont...
Arquitetura de Software Baseada em Componentes: Um Estudo de Caso para o Cont...Arquitetura de Software Baseada em Componentes: Um Estudo de Caso para o Cont...
Arquitetura de Software Baseada em Componentes: Um Estudo de Caso para o Cont...Anderson Kanegae Soares Rocha
 
Engenharia de Software Baseada em Componentes
Engenharia de Software Baseada em ComponentesEngenharia de Software Baseada em Componentes
Engenharia de Software Baseada em Componenteselliando dias
 
TCC - Engenharia de Software Baseada em Componentes
TCC - Engenharia de Software Baseada em ComponentesTCC - Engenharia de Software Baseada em Componentes
TCC - Engenharia de Software Baseada em ComponentesJuliano Tiago Rinaldi
 
What's Next in Growth? 2016
What's Next in Growth? 2016What's Next in Growth? 2016
What's Next in Growth? 2016Andrew Chen
 
The Outcome Economy
The Outcome EconomyThe Outcome Economy
The Outcome EconomyHelge Tennø
 
32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your Business32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your BusinessBarry Feldman
 

Andere mochten auch (7)

Apresentacao IzCode Web
Apresentacao IzCode  WebApresentacao IzCode  Web
Apresentacao IzCode Web
 
Arquitetura de Software Baseada em Componentes: Um Estudo de Caso para o Cont...
Arquitetura de Software Baseada em Componentes: Um Estudo de Caso para o Cont...Arquitetura de Software Baseada em Componentes: Um Estudo de Caso para o Cont...
Arquitetura de Software Baseada em Componentes: Um Estudo de Caso para o Cont...
 
Engenharia de Software Baseada em Componentes
Engenharia de Software Baseada em ComponentesEngenharia de Software Baseada em Componentes
Engenharia de Software Baseada em Componentes
 
TCC - Engenharia de Software Baseada em Componentes
TCC - Engenharia de Software Baseada em ComponentesTCC - Engenharia de Software Baseada em Componentes
TCC - Engenharia de Software Baseada em Componentes
 
What's Next in Growth? 2016
What's Next in Growth? 2016What's Next in Growth? 2016
What's Next in Growth? 2016
 
The Outcome Economy
The Outcome EconomyThe Outcome Economy
The Outcome Economy
 
32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your Business32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your Business
 

Ähnlich wie izCode Argumento Técnico

259 Club ServiceNow LowCode
259 Club ServiceNow LowCode259 Club ServiceNow LowCode
259 Club ServiceNow LowCodeTiago Macul
 
Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016Ramon Durães
 
TDC2018SP | Trilha Arq .Net - 12-factor apps: Boas praticas na construcao de ...
TDC2018SP | Trilha Arq .Net - 12-factor apps: Boas praticas na construcao de ...TDC2018SP | Trilha Arq .Net - 12-factor apps: Boas praticas na construcao de ...
TDC2018SP | Trilha Arq .Net - 12-factor apps: Boas praticas na construcao de ...tdc-globalcode
 
12 Factor App TDC São Paulo 2018
12 Factor App TDC São Paulo 201812 Factor App TDC São Paulo 2018
12 Factor App TDC São Paulo 2018Graziella Bonizi
 
Composição e Integração de Sistemas em 2013
Composição e Integração de Sistemas em 2013Composição e Integração de Sistemas em 2013
Composição e Integração de Sistemas em 2013Leandro Silva
 
Arquitetura de Microservicos
Arquitetura de MicroservicosArquitetura de Microservicos
Arquitetura de MicroservicosNorberto Enomoto
 
Apostila de Fundamentos Java
Apostila de Fundamentos JavaApostila de Fundamentos Java
Apostila de Fundamentos JavaMarcio Marinho
 
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
 
ARQUITETURA DISTRIBUÍDA DE SOFTWARE PARA AMBIENTE DE DESENVOLVIMENTO DISTRIBUÍDO
ARQUITETURA DISTRIBUÍDA DE SOFTWARE PARA AMBIENTE DE DESENVOLVIMENTO DISTRIBUÍDOARQUITETURA DISTRIBUÍDA DE SOFTWARE PARA AMBIENTE DE DESENVOLVIMENTO DISTRIBUÍDO
ARQUITETURA DISTRIBUÍDA DE SOFTWARE PARA AMBIENTE DE DESENVOLVIMENTO DISTRIBUÍDOEstevão Hess
 
Artigo Automação de testes funcionais com Demoiselle Behave
Artigo Automação de testes funcionais com Demoiselle BehaveArtigo Automação de testes funcionais com Demoiselle Behave
Artigo Automação de testes funcionais com Demoiselle BehaveJulian Cesar
 
Desenvolvimento web com software livre
Desenvolvimento web com software livreDesenvolvimento web com software livre
Desenvolvimento web com software livreRuan Carvalho
 
Desenvolvimento web com Software Livre
Desenvolvimento web com Software LivreDesenvolvimento web com Software Livre
Desenvolvimento web com Software LivreRuan Carvalho
 
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...iMasters
 

Ähnlich wie izCode Argumento Técnico (20)

259 Club ServiceNow LowCode
259 Club ServiceNow LowCode259 Club ServiceNow LowCode
259 Club ServiceNow LowCode
 
Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016
 
InfraGUIBuilder
InfraGUIBuilderInfraGUIBuilder
InfraGUIBuilder
 
#{GCODE}
#{GCODE}#{GCODE}
#{GCODE}
 
Cursos
CursosCursos
Cursos
 
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
 
TDC2018SP | Trilha Arq .Net - 12-factor apps: Boas praticas na construcao de ...
TDC2018SP | Trilha Arq .Net - 12-factor apps: Boas praticas na construcao de ...TDC2018SP | Trilha Arq .Net - 12-factor apps: Boas praticas na construcao de ...
TDC2018SP | Trilha Arq .Net - 12-factor apps: Boas praticas na construcao de ...
 
12 Factor App TDC São Paulo 2018
12 Factor App TDC São Paulo 201812 Factor App TDC São Paulo 2018
12 Factor App TDC São Paulo 2018
 
Composição e Integração de Sistemas em 2013
Composição e Integração de Sistemas em 2013Composição e Integração de Sistemas em 2013
Composição e Integração de Sistemas em 2013
 
Arquitetura de Microservicos
Arquitetura de MicroservicosArquitetura de Microservicos
Arquitetura de Microservicos
 
Domain-Driven Design
Domain-Driven DesignDomain-Driven Design
Domain-Driven Design
 
Apostila de Fundamentos Java
Apostila de Fundamentos JavaApostila de Fundamentos Java
Apostila de Fundamentos Java
 
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
 
Low code
Low codeLow code
Low code
 
ARQUITETURA DISTRIBUÍDA DE SOFTWARE PARA AMBIENTE DE DESENVOLVIMENTO DISTRIBUÍDO
ARQUITETURA DISTRIBUÍDA DE SOFTWARE PARA AMBIENTE DE DESENVOLVIMENTO DISTRIBUÍDOARQUITETURA DISTRIBUÍDA DE SOFTWARE PARA AMBIENTE DE DESENVOLVIMENTO DISTRIBUÍDO
ARQUITETURA DISTRIBUÍDA DE SOFTWARE PARA AMBIENTE DE DESENVOLVIMENTO DISTRIBUÍDO
 
Artigo Automação de testes funcionais com Demoiselle Behave
Artigo Automação de testes funcionais com Demoiselle BehaveArtigo Automação de testes funcionais com Demoiselle Behave
Artigo Automação de testes funcionais com Demoiselle Behave
 
Desenvolvimento web com software livre
Desenvolvimento web com software livreDesenvolvimento web com software livre
Desenvolvimento web com software livre
 
Desenvolvimento web com Software Livre
Desenvolvimento web com Software LivreDesenvolvimento web com Software Livre
Desenvolvimento web com Software Livre
 
Subm_SamuelPereira_FINAL
Subm_SamuelPereira_FINALSubm_SamuelPereira_FINAL
Subm_SamuelPereira_FINAL
 
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
 

izCode Argumento Técnico

  • 1. GERADOR DE PROGRAMAS .NET E JAVA USANDO O IZCODE PARA GERAR SOFTWARE RAPIDAMENTE SUMÁRIO INTRODUÇÃO ............................................................................................................................................................ 2 O QUE É O izCODE?................................................................................................................................................... 2 COMO FUNCIONA O izCODE? ................................................................................................................................... 2 DIFERENTES TIPOS DE GERADORES DE CÓDIGO ...................................................................................................... 2 Os mapeadores objeto-relacional ........................................................................................................................ 3 As meta linguagens ............................................................................................................................................... 3 Conclusão.............................................................................................................................................................. 4 A ABORDAGEM izCODE ............................................................................................................................................ 4 Flexibilidade, velocidade, qualidade, reuso e repetição ...................................................................................... 4 COMO É COMPOSTO O izCODE? .............................................................................................................................. 5 Pré-requisitos........................................................................................................................................................ 5 EXPLORANDO O SOFTWARE CLIENTE ....................................................................................................................... 5 Importando uma base de dados ........................................................................................................................... 5 Editando os dados das tabelas e campos ............................................................................................................. 7 editando as telas a serem geradas ....................................................................................................................... 9 Gerando o código desejado ................................................................................................................................10 aguardando a geração de código .......................................................................................................................12 Página 1 de 13 www.izcode.com
  • 2. GERADOR DE PROGRAMAS .NET E JAVA INTRODUÇÃO Este documento demonstra de forma sucinta como utilizar a ferramenta IZCode para aumentar a eficiência dos projetos de desenvolvimento de Software. Para esta demonstração, usaremos como plataforma destino, o Microsoft Dot Net 3.5, com a linguagem C#, e a plataforma WEB. A escolha do projeto a ser usado como demonstrativo, seguiu o critério de popularidade. Desta forma, como existem muitos trabalhos similares que utilizam o projeto padrão da Microsoft, o NorthWind, nós também resolvemos utilizá-lo. Portanto, será mais fácil para o leitor comparar os resultados obtidos ao utilizar o IZCode e outros mecanismos. O QUE É O IZCODE? O IZCode é um gerador automático de software que acelera o desenvolvimento de softwares em todas as suas etapas. Telas, banco de dados, documentação e etc. COMO FUNCIONA O IZCODE? O IZCode é um gerador de sistemas comerciais de propósito especifico. Isto significa que ele é muito eficiente em gerar sistemas comerciais e se limita a isto. Com esta aparente limitação, o IZCode ficou livre para gerar de forma realmente simples softwares em questões de minutos, ao invés de meses. A geração de software através IZCode, parte do princípio que todo software comercial segue um padrão pré- determinado de codificação, design de tela e funcionalidades. Sendo que a variação do padrão de um software produzido em relação ao outro é inferior a 10% de todo esforço empreendido. Isto acontece porque a implementação das regras de negócio resultam em menos de 1% do código total desenvolvido e cerca de 10% do tempo de implementação. Os outros 90% do tempo de implementação e 99% do código, seguem um padrão que os analistas de sistemas chamam de CRUD, que significa (CREATE, RETRIEVE, UPDATE , DELETE ). Ou CRIAÇÃO, RECUPERAÇÃO, ATUALIZAÇÃO e DELEÇÃO. DIFERENTES TIPOS DE GERADORES DE CÓDIGO Existem muitos programas que se propõe a gerar software a partir de bases de dados e em geral, podemos classificá-los em duas categorias distintas: Página 2 de 13 www.izcode.com
  • 3. GERADOR DE PROGRAMAS .NET E JAVA OS MAPEADORES OBJETO-RELACIONAL Estes softwares se dedicam a transpor um objeto relacional presente em um banco de dados a um objeto em uma linguagem de programação. VANTAGENS DESVANTAGENS  Gratuitos  Não geram documentação  Não geram telas  Não geram serviços  Difíceis de parametrizar  Pouco Flexíveis AS META LINGUAGENS Outra categoria de geradores de código são os geradores que utilizam meta-linguagens. A idéia por traz deles é a de usar uma linguagem de programação para gerar outra linguagem de programação. Seu principal problema é justamente este. Normalmente queremos um gerador de código que minimize nossa tarefa de programação e não que aumente a complexidade do projeto. Introduzindo outra linguagem ou tecnologia, dificulta e atrasar o código gerado. Sem contar que estará sujeito a erros da mesma forma que na utilização de uma programação convencional. VANTAGENS DESVANTAGENS  Muito Flexíveis  Não geram documentação  Geram CRUD  Não geram serviços  Geram Telas  Exigem o aprendizado de uma nova linguagem  Sujeito a BUGS  Difícil manutenção  Exige alto nível de especialização do programador  Cria um vinculo muito forte com o programador  Custo elevado de mão de obra e de criação de um modelo que atenda as necessidades da empresa.  Tempo de desenvolvimento desvia o foco dos negócios da empresa. Página 3 de 13 www.izcode.com
  • 4. GERADOR DE PROGRAMAS .NET E JAVA CONCLUSÃO Concluímos que apesar de oferecer benefícios menores e serem menos flexíveis, a adoção de softwares de mapeamento objeto-relacional apresentam riscos menores na condução de projetos de desenvolvimento de software. As meta-linguagens, por serem demasiadamente complexas, apresentam um alto custo de licença por máquina, e geram código de difícil manutenção e re-uso. A ABORDAGEM IZCODE O IZCode veio justamente suprir a necessidade de um gerador de software comercial que traga o maior número de benefícios na geração de código, com o menor número e problemas possíveis. Nossa abordagem é a de usar uma meta-linguagem em conjunto com um mapeador objeto-relacional encapsulados em templates. De forma que o usuário final, projetista ou gerente de projeto, escolha entre os vários modelos existentes como o software gerado deverá ser. O mesmo software pode ser gerado para dois ou mais templates, ou seja, podemos querer um software que rode para Web, Mobile, Desktop e Linux. Tudo de uma vez só. Portanto, obtemos o melhor dos dois mundos: a praticidade dos mapeadores objeto-relacional, com a flexibilidade das meta-linguagens. Assim, evitamos também os problemas de cada um, pois a meta-linguagem utilizada pelo IZCode é completamente encapsulada. Escondida do usuário final. Dessa forma, não precisa se preocupar com nada além do seu próprio código e negócio. FLEXIBILIDADE, VELOCIDADE, QUALIDADE, REUSO E REPETIÇÃO Por ser baseado em uma poderosa meta-linguagem, o IZCode é completamente flexível e adaptável à sua realidade. É possível adaptá-lo para gerar códigos de acordo com a necessidade da sua empresa, seguindo os padrões de codificação especificados por você. Sem ter de dispor de tempo e mão de obra para aprender uma nova e complicada meta-linguagem. Com esta abordagem, sua equipe de T.I. ganhará em velocidade e qualidade na produção de software e permitirá que o desenvolvimento de projetos diversos fiquem menos dependente dos programadores e analistas de sistemas, uma vez que código gerado sempre será uma repetição de uma experiência prévia bem sucedida. Página 4 de 13 www.izcode.com
  • 5. GERADOR DE PROGRAMAS .NET E JAVA COMO É COMPOSTO O IZCODE? O IZCode está dividido em duas partes básicas: Um software cliente, que pode ser baixado livremente na internet e é responsável pela configuração, edição e definição de diretrizes de como o software gerado deve ser. Um software factory, que é um serviço na forma de um WebService. Responsável por ler o arquivo gerado pelo Cliente, processando-o, e gerando o código requisitado. PRÉ-REQUISITOS Abaixo seguem os pré-requisitos de funcionamento do software cliente do IZCode.  Sistema operacional Microsoft © Windows XP, Vista, Windows 7 ou superior  Adobe Reader (Essencial para o funcionamento e para ler os textos gerados pelo software)  Acesso a internet (para a comunicação com o servidor que fará toda a engenharia de código) EXPLORANDO O SOFTWARE CLIENTE Abaixo colocamos as principais telas do software cliente. Você poderá fazer um download do software gratuitamente através do site: www.izcode.com IMPORTANDO UMA BASE DE DADOS Abaixo podemos ver a tela onde é importada uma base de dados. A importação será feita a partir de um banco de dados MS-SQL Server. Passo 1 - Escolhendo o tipo de banco de dados Página 5 de 13 www.izcode.com
  • 6. GERADOR DE PROGRAMAS .NET E JAVA Passo 2 - Escolhendo o servidor e a base de dados Passo 3 - Selecionando as tabelas a serem importadas Página 6 de 13 www.izcode.com
  • 7. GERADOR DE PROGRAMAS .NET E JAVA EDITANDO OS DADOS DAS TABELAS E CAMPOS Após importar a base de dados, para obtermos um software de melhor qualidade, devemos editar o maior número de informações possíveis. Passo 1 - Escreva um pouco de informação sobre cada tabela Passo 2 - Selecione detalhes sobre cada campo, e sua forma de exibição Página 7 de 13 www.izcode.com
  • 8. GERADOR DE PROGRAMAS .NET E JAVA Passo 2 - Campos de foreing-keys são automaticamente preenchidos Passo 3 - Preencha ou importe seus dicionários de dados Página 8 de 13 www.izcode.com
  • 9. GERADOR DE PROGRAMAS .NET E JAVA Passo 4 - As stored-procedures existentes também são importadas EDITANDO AS TELAS A SEREM GERADAS Passo 1 - Escreva um titulo para cada tela e informe seu modo de funcionamento Página 9 de 13 www.izcode.com
  • 10. GERADOR DE PROGRAMAS .NET E JAVA GERANDO O CÓDIGO DESEJADO Passo 1 - Escolha a plataforma destino Passo 2 - Escolha o modelo de geração de código Página 10 de 13 www.izcode.com
  • 11. GERADOR DE PROGRAMAS .NET E JAVA Passo 3 - Escolha as funcionalidades do código a ser gerado Passo 4 - Revise os avisos e erros antes de gerar o código Página 11 de 13 www.izcode.com
  • 12. GERADOR DE PROGRAMAS .NET E JAVA AGUARDANDO A GERAÇÃO DE CÓDIGO Passo 1 - Assim que seu código estiver gerado, o botão "Explorar Código" será habilitado. Passo 2 - Navegue pelo código gerado. Página 12 de 13 www.izcode.com
  • 13. GERADOR DE PROGRAMAS .NET E JAVA Calculadora de Economia. Página 13 de 13 www.izcode.com