Baixe o app para aproveitar ainda mais
Prévia do material em texto
Aula 01: Abordagem Inicial Por que linguagens de programação? As linguagens de programação exercem um papel preponderante no processo de desenvolvimento de software, pois possibilitam aos profissionais da área o exercício de uma atividade fundamental: a programação. Ou seja, as linguagens de programação permitem a escrita dos programas, que serão integrados para compor o software. Os principais objetivos de uma linguagem de programação são: Tornar mais produtivo o trabalho dos programadores, ou seja, desenvolver e manter softwares. Propiciar ao programador desenvolver o software atendendo a padrões de qualidade pré-estabelecidos, sendo que as principais propriedades desejadas de um software são: confiabilidade, manutenibilidade (capacidade de ser mantido) e eficiência. Propiciar ao programador escrever programas que atendam as expectativas e requisitos de seus usuários A influência das linguagens de programação nas metodologias e técnicas de programação Nas décadas de 40 e 50, nos primórdios da computação, a linguagem dominante era a binária (composta por sequencia de 1’s e 0’s) ou de linguagem máquina e a programação era feita pensando em como determinado processador funcionava. O tipo de problema que a computação se destinava a resolver era simples e limita-se a cálculos complexos, não demandando nenhuma técnica de programação. O programa era uma sequencia de conjunto de bits, conforme o tamanho da palavra do processador. E cada sequencia de bits representava uma instrução do programa. Cada processador tem seu respectivo conjunto de instruções, que representa o chamado Set de Instruções do Processador. Veja o exemplo de um programa em código máquina: A1 01 10 03 06 01 12 A3 01 14 Trata-se da representação hexadecimal de um programa que soma os valores de duas casas da memória e armazena o resultado em uma terceira casa. É óbvio que este tipo de escrita é dificilmente legível por nós, humanos.No quadro, abaixo, temos um exemplo de uma instrução em código de maquina escrita em hexadecimal, de forma a diminuir a quantidade de dígitos. A influência das linguagens de programação no Processo de desenvolvimento de Sistemas As linguagens de programação influenciam e sofrem influência do processo de desenvolvimento. Vejamos cada uma das etapas: Concepção do Sistema Nessa etapa o software é concebido, ou seja são expostas as ideias iniciais a cerca de seus objetivos e é verificada a viabilidade de seu desenvolvimento. Nessa etapa o conhecimento de linguagens influencia no estudo de viabilidade técnica. Respondendo se será ou não possível o desenvolvimento do sistema (no tempo demandado). Analise de requisitos Nessa etapa, em linhas gerais, são identificados o ambiente de funcionamento, os requisitos e funcionalidades do sistema. Aqui deve ser escolhida a técnica de análise de sistemas a ser seguida: análise estruturada, análise essencial ou análise orientada a objeto. Essa escolha influenciará de sobremaneira o conjunto de linguagens de programação que poderá ser escolhido. Projeto de software Nessa fase é definida a divisão arquitetônica do sistema, e a especificação de cada unidade, além do banco de dados e a linguagem de programação (dentre o conjunto possível, conforme decisão tomada na fase anterior) que serão usados para escrever os programas. A linguagem escolhida deve ser compatível com o método de análise e projeto selecionados. Por exemplo para projetos hierárquicos, a linguagem C pode ser a mais indicada, porem para projetos orientado a objetos JAVA poderia ser a linguagem mais apropriada. Implementação Nessa etapa ocorre a escrita dos programas na linguagem selecionada. Logo a importância dessa é indiscutível Testes Aqui são realizados os mais variados testes para verificar se o sistema atende as exigências das especificações de requisitos (análise) e de projeto. Aqui as linguagens também podem ajudar muito na: Depuração de erros: muitas linguagens possuem ambiente de desenvolvimento amigável que permite depurar erros de forma fácil e interativa. Manutenção As linguagens que oferecem recursos de modularização, tipagem forte (critica de atribuição de dados) além de outros recursos, permitem escrever programas que são mais fáceis de serem mantidos, permitindo que alterações em um modulo não interfiram nos demais, se as técnicas de acoplamento e coesão tiverem sido respeitadas. Conclusão As linguagens de programação influenciam e sofrem influência das fases do processo de desenvolvimento de software, independente do processo (Em cascata clássico, em cascata com retroalimentação, interativo – incremental, prototipação, dentre outros) que será utilizado. O conceito de paradigma Consultando o Minidicionário Aurélio, 7ª edição, temos a seguinte descrição para o vocábulo paradigma: sm (substantivo masculino). Modelo, padrão. O Dicionário Didático SM (Ensino fundamental) define o termo paradigma como: substantivo masculino. Modelo ou exemplo. Ex.: O ministro propôs um novo paradigma nacional de transporte, mais urbano e adequado ao meio ambiente. Trazendo a ideia para o contexto das linguagens de programação, temos que paradigma é o conjunto de características que servem para categorizar um grupo de linguagens com características semelhantes e que apoiem o desenvolvimento de sistemas com determinadas características. Ou seja um paradigma agrupa linguagens com características semelhantes, que são usadas para o desenvolvimento de sistemas que aproveitem essas características. Por que entender os paradigmas das linguagens de programação O entendimento das características das categorias de linguagens é fundamental para entender o estado da arte e compreender o que cada linguagem pode prover e para que tipos de problemas devemos usar cada uma. Os paradigmas de linguagens de programação Existem muitas classificações de paradigmas sendo a mais comum a que divide nos paradigmas Imperativo, Funcional, Lógico e Orientado a Objetos, conforme ilustrado pela figura 3 (Paradigmas de Linguagem de programação). Procure explorar todos os links existentes nas URLs abaixo relacionadas. Todos os sites abaixo foram acessados em 12/11/2011: http://nusseagora.blog.br/paradigmas-de-programacao-estilos-diferentes-de-escrever-o-mesmo-texto/ http://pt.wikipedia.org/wiki/Paradigma_de_programa%C3%A7%C3%A3o http://walterdominguez.com/contextoconteudo/tema/analise%20de%20sistemas/analise%20de%20sistemas.html http://dsgomes-tec-info.blogspot.com/2011/10/paradigmas-de-analise-de-sistemas.html
Compartilhar