3/4/2015 prof. msc george cabral [email protected] bacharelado em sistema de informação ambientes...
TRANSCRIPT
11/04/2311/04/23
Prof. Msc George CabralProf. Msc George [email protected]
Bacharelado em Sistema de Informação
Ambientes de Desenvolvimento Ambientes de Desenvolvimento de Softwarede Software
11/04/2311/04/23
Tópicos AbordadosTópicos Abordados
Definição de Ambiente de Desenvolvimento
Instalação
Plataformas
IDE’s
Políticas de Segurança
11/04/2311/04/23
11/04/2311/04/23
Ambiente de Desenvolvimento de Ambiente de Desenvolvimento de SoftwareSoftware
11/04/2311/04/23
Ambientes de desenvolvimento de software são ambientes que se propõem a disponibilizar ferramentas de apoio ao longo de todo o processo de desenvolvimento do software.
Compostos, basicamente, por editor de código fonte, compilador, depurador (debugger) e bibliotecas auxiliares.
Exemplos: Eclipse, Matlab, NetBeans, Jcreator, Delphi, etc.
MotivaçõesMotivações
Crise do Software - dificuldades no desenvolvimento de software frente ao rápido crescimento da demanda, da complexidade dos problemas a serem resolvidos e da inexistência de técnicas para o desenvolvimento de sistemas.
Conseqüências da crise : ◦Projetos estourando o orçamento;◦Estouro no prazo de entrega;◦Softwares de baixa qualidade;◦Software muitas vezes não atingiam os
requisitos;
MotivaçõesMotivações
Solucionando a crise do software:◦Uso de melhores métodos (estrutural,
orientação a objetos ?) e ferramentas;◦Mudança de paradigma sobre o que é
desenvolver software e como deve ser feito.
Ambientes de Desenvolvimento de Software – ADS◦Qualidade do produto;◦Aumento na produtividade;◦Cumprimento dos prazos;◦Redução na alocação de recursos.
Ferramentas CASEFerramentas CASE
Computer-Aided Software Engeneering - Engenharia de Software Auxiliada por Computador. Ferramentas para o auxílio em uma ou várias etapas do ciclo de desenvolvimento de software.
Exemplos:
11/04/2311/04/23
Ambiente de Desenvolvimento de Ambiente de Desenvolvimento de softwaresoftwareLinguagem C (estruturada,
variáveis)http://www.bloodshed.net/
devcpp.html
11/04/2311/04/23
11/04/2311/04/23
Ambiente de Desenvolvimento de Ambiente de Desenvolvimento de SoftwareSoftware
11/04/2311/04/23
11/04/2311/04/23
Ambiente de Desenvolvimento de Ambiente de Desenvolvimento de SoftwareSoftware
11/04/2311/04/23
11/04/2311/04/23
Ambiente de Desenvolvimento de Ambiente de Desenvolvimento de SoftwareSoftware
11/04/2311/04/23
11/04/2311/04/23
Ambiente de Desenvolvimento de Ambiente de Desenvolvimento de SoftwareSoftwareLinguagem Python (interpretada e orientada a
objeto)http://python.org/
11/04/2311/04/23
11/04/2311/04/23
Ambiente de Desenvolvimento de Ambiente de Desenvolvimento de SoftwareSoftware
11/04/2311/04/23
11/04/2311/04/23
Ambiente de Desenvolvimento de Ambiente de Desenvolvimento de SoftwareSoftware
11/04/2311/04/23
11/04/2311/04/23
Plataforma da Linguagem PythonPlataforma da Linguagem Python
Implementação do Python em:◦CPython – Linguagem C
◦IronPython – C#, na plataforma . NET
◦Jython – Linguagem Java
11/04/2311/04/23
11/04/2311/04/23
Ambiente de Desenvolvimento de Ambiente de Desenvolvimento de SoftwareSoftwareJSDK (Java Software Development
Kit)
Ferramentas para desenvolvimento de aplicações Java usam o JSDK como base:◦ Eclipse◦ Netbeans◦ Borland JBuilder◦ …
11/04/2311/04/23
11/04/2311/04/23
Linguagem JavaLinguagem Java
Dois componentes:◦A linguagem de programação Java◦A plataforma Java
Java Virtual Machine – JVM (Máquina Virtual Java)
Java Applicaton Programming Interface (API Java)
11/04/2311/04/23
11/04/2311/04/23
JavaJava
11/04/2311/04/23
11/04/2311/04/23
Plataforma JavaPlataforma Java
11/04/2311/04/23
11/04/2311/04/23
Java Virtual MachineJava Virtual Machine
Assegura a independência das aplicações entre diferentes plataformas
Traduz comandos Java para a linguagem da máquina nativa
11/04/2311/04/23
11/04/2311/04/23
BytecodesBytecodes
Instruções de código de máquina específicas para a máquina virtual Java
Código intermediárioA JVM transforma os bytecodes em
instruções da máquina que está executando o programa
11/04/2311/04/23
11/04/2311/04/23
Compilador e InterpretadorCompilador e Interpretador
11/04/2311/04/23
11/04/2311/04/23
IDE´sIDE´s
Ferramentas via linha de comando;Usam-se as IDE’s que fornecem uma
interface gráfica para o uso dessas ferramentas;
Automatiza o trabalho:◦Compilação ◦Debug ◦Execução ◦Empacotamento de uma aplicação;
Aumento da produtividade
11/04/2311/04/23
11/04/2311/04/23
Exemplo de IDEsExemplo de IDEs
O Eclipse:◦é um IDEs OpenSource;◦Editor visual ◦Instalada JVM (Java Virtual Machine) ;◦Não é instalado. Descompacte o arquivo;◦Workspace;
www.eclipse.org
11/04/2311/04/23
11/04/2311/04/23
Exemplo de IDEsExemplo de IDEs
11/04/2311/04/23
11/04/2311/04/23
Exemplo de IDEsExemplo de IDEs
11/04/2311/04/23
11/04/2311/04/23
Exemplo de IDEsExemplo de IDEs
11/04/2311/04/23
11/04/2311/04/23
Exemplo de IDEsExemplo de IDEs
11/04/2311/04/23
11/04/2311/04/23
Exemplo de IDEsExemplo de IDEs
11/04/2311/04/23
11/04/2311/04/23
Exemplo de IDEsExemplo de IDEs
11/04/2311/04/23
EclipseEclipse
Várias distribuições para finalidades específicas.
11/04/2311/04/23
Exemplo IDE´s Exemplo IDE´s
Matlab◦cálculo com matrizes;◦Precisa de Licença◦Fácil e rápida manipulação de uma
grande quantidade de informações;◦Bibliotecas auxiliares (“Toolboxes”)
11/04/2311/04/23
11/04/2311/04/23
Exemplo IDEsExemplo IDEs
11/04/2311/04/23
11/04/2311/04/23
Lições AprendidasLições AprendidasAmbiente de Desenvolvimento de
Software◦Definição◦Tipos
Linguagem C Linguagem Python Linguagem Java
Plataformas
Ambiente de Desenvolvimento Integrado◦Matlab◦Eclipse
11/04/2311/04/23
11/04/2311/04/23
Dúvidas ?
11/04/2311/04/23
11/04/2311/04/23
BibliografiaBibliografia
DEITEL, H. M., DEITEL, P. J. Java: Como Programar. 6ª Ed. Porto Alegre: Bookman, 2005.
“A Guide to Developing Computing Policy Documents”, Barbara L. Dijker
http://www.eclipse.org/ http://www.inf.pucrs.br/~flash/cbp/
instala_devc/http://www.guj.com.brhttp://www.bloodshed.net/devcpp.html
11/04/2311/04/23