Baixe o app para aproveitar ainda mais
Prévia do material em texto
MATERIAL EXCLUSIVO PD CONCEITOS DE SOFTWARE NOÇÕES BASICAS PARA CONCURSOS. Conceitos de Software 1.SOFTWARE Software, logiciário ou programa de computador é uma sequência de instruções a serem seguidas e/ou executadas, na manipulação, redirecionamento ou modificação de um dado/informação ou acontecimento. Software também é o nome dado ao comportamento exibido por essa sequência de instruções quando executada em um computador ou máquina semelhante. Tecnicamente, Software também é o nome dado ao conjunto de produtos desenvolvidos durante o Processo de Software, o que inclui não só o programa de computador propriamente dito, mas também manuais, especificações, planos de teste, etc. 2.1 TIPOS DE PROGRAMAS DE COMPUTADOR Qualquer computador moderno tem uma variedade de programas que fazem diversas tarefas. Eles podem ser classificados em duas grandes categorias: SOFTWARE DE SISTEMA: que incluiu o firmware (O BIOS dos computadores pessoais, por exemplo), drivers de dispositivos, o sistema operacional e tipicamente uma interface gráfica que, em conjunto, permitem ao usuário interagir com o computador e seus periféricos. SOFTWARE APLICATIVO: que permite ao usuário fazer uma ou mais tarefas específicas. Aplicativos podem ter uma abrangência de uso de larga escala, muitas vezes em âmbito mundial; nestes casos, os programas tendem a ser mais robustos e mais padronizados. Programas escritos para um pequeno mercado têm um nível de padronização menor. UTILITÁRIOS: são programas utilizados para suprir deficiências dos sistemas operacionais. Sua utilização normalmente depende de licenças pagas, no caso da plataforma windows, mas existem vários utilitários livres. Podemos incluir nos utilitários programas para: compactação de dados, aumento de desempenho de máquinas, overclock, limpeza de discos rígidos, acesso à internet, partilha de conexões, etc. UMA LINGUAGEM DE PROGRAMAÇÃO: é um método padronizado para expressar instruções para um computador. É um conjunto de regras sintáticas e semânticas usadas para definir um programa de computador. Uma linguagem permite que um programador especifique precisamente sobre quais dados um computador vai atuar, como estes dados serão armazenados ou transmitidos e quais ações devem ser tomadas sob várias circunstâncias. O conjunto de palavras (tokens), compostos de acordo com essas regras, constituem o código fonte de um software. Esse código fonte é depois traduzido para código de máquina, que é executado pelo processador. 2.2 QUANTO AO GRAU DE CLASSIFICAÇÃO O computador só entende uma linguagem conhecida como código binário ou código máquina, consistente em zeros e uns. Ou seja, só utiliza 0 e 1 para codificar qualquer ação. As linguagens mais próximas à arquitetura hardware se denominam linguagens de baixo nível e as que se encontram mais próximas aos programadores e usuários se denominam linguagens de alto nível. LINGUAGENS DE BAIXO NÍVEL São linguagens totalmente dependentes da máquina, ou seja, que o programa que se realiza com este tipo de linguagem não pode ser migrado ou utilizado em outras máquinas. Ao estar praticamente desenhado a medida do hardware, aproveitam ao máximo as características do mesmo. Dentro deste grupo se encontram: A linguagem máquina: esta linguagem ordena à máquina as operações fundamentais para seu funcionamento. Consiste na combinação de 0's e 1's para formar as ordens entendíveis pelo hardware da máquina. Esta linguagem é muito mais rápida que as linguagens de alto nível. A desvantagem é que são bastante difíceis de manejar e usar, além de ter códigos fonte enormes onde encontrar uma falha é quase impossível. A Linguagem Assembler é um derivado da linguagem máquina e está formada por abreviaturas de letras e números chamados mnemotécnicos. Com o aparecimento desta linguagem se criaram os programas tradutores para poder passar os programas escritos em linguagem assembler a linguagem máquina. Como vantagem com respeito ao código máquina é que os códigos fontes eram mais curtos e os programas criados ocupavam menos memória. As desvantagens desta linguagem continuam sendo praticamente as mesmas que as da linguagem assembler, acrescentando a dificuldade de ter que aprender uma nova linguagem difícil de provar e manter. LINGUAGEM DE ALTO NÍVEL São aquelas que se encontram mais próximas à linguagem natural que à linguagem máquina. Trata-se de linguagens independentes da arquitetura do computador. Sendo assim, à princípio, um programa http://www.criarweb.com/artigos/685.php## http://www.criarweb.com/artigos/685.php## http://www.criarweb.com/artigos/685.php## http://www.criarweb.com/artigos/685.php## escrito em uma linguagem de alto nível, pode ser migrado de uma máquina a outra sem nenhum tipo de problema. Estas linguagens permitem ao programador se esquecer completamente do funcionamento interno da máquina/s para a que está desenhando o programa. Somente necessita de um tradutor que entenda o código fonte como as características da máquina. Costumam usar tipos de dados para a programação e existem linguagens de propósito geral (qualquer tipo de aplicação) e de propósito específico (como FORTRAN para trabalhos científicos). 2.3 QUANTO A SUA DISTRIBUIÇÃO LICENÇAS Todo o software é publicado sob uma licença. Essa licença define (e até restringe) qual a forma que se pode utilizar o software (números de licenças, modificações,etc). Exemplos de licenças: LICENÇA DE SOFTWARE LIVRE: Todo e qualquer programa de computador cuja licença de direito de autor conceda ao utilizados as seguintes 4 liberdades... 1) A liberdade de executar o programa, para qualquer propósito (liberdade no. 0) 2) A liberdade de estudar como o programa funciona, e adaptá-lo para as suas necessidades (liberdade no. 1). Acesso ao código-fonte é um pré-requisito para esta liberdade. 3) A liberdade de redistribuir cópias de modo que você possa ajudar ao seu próximo (liberdade no. 2). 4) A liberdade de aperfeiçoar o programa, e liberar os seus aperfeiçoamentos, de modo que toda a comunidade se beneficie (liberdade no. 3). Acesso ao código-fonte é um pré-requisito para esta liberdade. SOFTWARE FREEWARE É qualquer programa de computador cuja utilização não implica no pagamento de licenças de uso ou royalties. Apesar de ser chamado de free (do inglês livre), este software não é necessariamente software livre, pode não ter código aberto e pode acompanhar licenças restritivas, limitando o uso comercial, a redistribuição não autorizada, a modificação não autorizada ou outros tipos de restrições. O freeware diferencia-se do shareware em que o usuário deve pagar para acessar a funcionalidade completa ou tem um tempo limitado de uso gratuito. SHAREWARE/DEMO: é um programa de computador disponibilizado gratuitamente, porém com algum tipo de limitação. Sharewares geralente possuem funcionalidades limitadas e/ou tempo de uso gratuito do software limitado, após o fim do qual o usuário é requisitado a pagar para acessar a funcionalidade completa ou poder continuar utilizando o programa. Um shareware está protegido por direitos autorais. Esse tipo de distribuição tem como objetivo comum divulgar o software, como os usuários podem testá-lo antes da aquisição. Por um determinado tempo TRIAL ou com alguma limitação nas funcionalidades do sistema: Exemplos: NORTON ANTI VIRUS MICROSOFT OFFICE KYPERSKY ANTI-VIRUS CONVERSORES DE MÚSICAS E PDF’S, etc. SISTEMA OPERACIONAL OU BÁSICO: Um sistema operativo (português europeu) ou sistema operacional (português brasileiro)é um programa ou um conjunto de programas cuja função é servir de interface entre um computador e o usuário. Um sistema operacional possui as seguintes funções: 1) gerenciamento de processos; 2) gerenciamentode memória; 3) sistema de arquivos; 4) entrada e saída de dados. Exemplo: Windows, Linux, OS/2 , UNIX Por enquanto é isso galera, continuação no próximo material. Prof. Washington
Compartilhar