domingo, 26 de agosto de 2012

Software



Software, logiciário ou suporte lógico é 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 seqüência de instruções quando executada em um computador ou máquina semelhante além de um produto desenvolvido pela Engenharia de software, e inclui não só o programa de computador propriamente dito, mas também manuais e especificações. Para fins contábeis e financeiros, o Software é considerado um bem de capital.[1]

Este produto passa por várias etapas como: análise econômica, análise de requisitos, especificação, codificação, teste, documentação, Treinamento, manutenção e implantação nos ambientes.[2]

*Software como programa de computador

Um programa de computador é composto por uma sequência de instruções, que é interpretada e executada por um processador ou por uma máquina virtual. Em um programa correto e funcional, essa sequência segue padrões específicos que resultam em um comportamento desejado.[3]

O termo software foi criado na década de 1940 e é um trocadilho com o termo hardware. Hardware, em inglês, significa ferramenta física. Software seria tudo o que faz o computador funcionar excetuando-se a parte física dele.

Um programa pode ser executado por qualquer dispositivo capaz de interpretar e executar as instruções de que é formado.

Quando um software está representado como instruções que podem ser executadas diretamente por um processador dizemos que está escrito em linguagem de máquina. A execução de um software também pode ser intermediada por um programa interpretador, responsável por interpretar e executar cada uma de suas instruções. Uma categoria especial e notável de interpretadores são as máquinas virtuais, como a Máquina virtual Java (JVM), que simulam um computador inteiro, real ou imaginado.

O dispositivo mais conhecido que dispõe de um processador é o computador. Atualmente, com o barateamento dos microprocessadores, existem outras máquinas programáveis, como telefone celular, máquinas de automação industrial, calculadora, etc.

*A construção de um programa de computador

Um programa é um conjunto de instruções para o processador (linguagem de máquina). Entretanto, pode-se utilizar linguagens de programação, que traduza comandos em instruções para o processador.

Normalmente, programas de computador são escritos em linguagens de programação, pois estas foram projetadas para aproximar-se das linguagens usadas por seres humanos. Raramente a linguagem de máquina é usada para desenvolver um programa. Atualmente existe uma quantidade muito grande de linguagens de programação, dentre elas as mais populares no momento são Java, Visual Basic, C, C++, PHP, dentre outras.[4]

Alguns programas feitos para usos específicos, como por exemplo software embarcado ou software embutido, ainda são feitos em linguagem de máquina para aumentar a velocidade ou diminuir o espaço consumido. Em todo caso, a melhoria dos processadores dedicados também vem diminuindo essa prática, sendo a C uma linguagem típica para esse tipo de projeto. Essa prática, porém, vem caindo em desuso, principalmente devido à grande complexidade dos processadores atuais, dos sistemas operacionais e dos problemas tratados. Muito raramente, realmente apenas em casos excepcionais, é utilizado o código de máquina, a representação numérica utilizada diretamente pelo processador.[5]

O Programa é inicialmente "carregado" na memória principal.[6] Após carregar o programa, o computador encontra o 'Entry Point' ou ponto inicial de entrada do programa que carregou e lê as instruções sucessivamente byte por byte. As instruções do programa são passadas para o sistema ou processador onde são traduzidas da linguagens de programação para a linguagem de máquina, sendo em seguida executadas ou diretamente para o hardware, que recebe as instruções na forma de linguagem de máquina.

*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:[7]

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.

Ainda é possível usar a categoria Software embutido ou Software embarcado, indicando software destinado a funcionar dentro de uma máquina que não é um computador de uso geral e normalmente com um destino muito específico.

Atualmente temos um novo tipo de software. O software como serviço, que é um tipo de software armazenado num computador que se acessa pela internet, não sendo necessário instala-lo no computador do usuário. Geralmente esse tipo de software é gratuito e tem as mesmas funcionalidades das versões armazenadas localmente.


Outra classificação possível em 3 tipos é:

Software de sistema : Seu objetivo é separar usuário e programador de detalhes do computador específico que está sendo usado. O software do sistema lhe dá ao usuário interfaces de alto nível e ferramentas que permitem a manutenção do sistema. Inclui, entre outros:
Sistemas operacionais
Drivers
ferramentas de diagnóstico
ferramentas de Correçao e Optimizaçao
Servidores

Software de programação: O conjunto de ferramentas que permitem ao programador desenvolver programas de computador usando diferentes alternativas e linguagens de programação, de forma prática. Inclui, entre outros:
Editores de texto
Compiladores
Intérpretes
[linker|linkers]
[depurador|Depuradores]]
Ambientes de Desenvolvimento Integrado : Agrupamento das ferramentas anteriores, geralmente em um ambiente visual, de modo que o programador não precisa digitar vários comandos para a compilação, interpretação, depuração, etc. Geralmente equipados com uma interface de usuário gráfica avançada .

Software aplicativo: é aquele que permite aos usuários executar uma ou mais tarefas específicas, em qualquer campo de atividade que pode ser automatizado especialmente no campo dos negócios. Inclui, entre outros:
Aplicações de controle e sistemas de automação industrial.
aplicações de informática para o escritório.
Software educacional.
Software de negócios.
Banco de dados.
Telecomunicações.
video Games.
Software médico.
Software de calculo numérico e simbólico.

*Licenças

A maioria do software é publicado sob uma licença de software. Essa licença define e até restringe qual a forma que se pode utilizar o software definido números de licenças, modificações entre outros. Exemplos de licenças:

GNU General Public License
Licença BSD
Licença Apache
Licença comercial
Licença de software
Licença de software livre
Software livre
Freeware
Shareware
Demo
Trial

*Ver também

Liberação de software
Fabricantes de software.



Fonte: Wikipédia

Nenhum comentário:

Postar um comentário