Web-aula 1
Relacionamento, trabalho, lazer, consumo e educação na era da Tecnologia.1
Prezado aluno, seja bem-vindo à nossa UNIDADE I! Na Web I, vamos falar sobre trabalho, lazer, consumo e educação na era da Tecnologia.
Vamos começar observando a charge abaixo.
Aproveite para refletir sobre as vantagens e as desvantagens do impacto da tecnologia na vida moderna.
Evolução Tecnológica |
A
evolução tecnológica foi uma conseqüência da necessidade de suprir as
limitações humanas. O processamento da informação levou ao surgimento do
computador eletrônico, o qual deu início à era da informática, a partir
de 1945. Com a mecanização as tarefas que cabiam no cérebro humano
passaram para a máquina.
Na
história da humanidade vivenciamos a cada dia e a cada instante,
grandes avanços científicos e tecnológicos, as transformações indicam
que estamos vivendo em um tempo muito especial da história humana, as
influências das tecnologias permeiam, nossa vida diária. Portanto, não
se encontra restrito às fábricas, hospitais, lojas, escolas, mas na vida
cotidiana. Uma época de abertura, de evolução e de novas conquistas em
termos do conhecimento humano.
Lazer |
O
entretenimento, dentro da sociedade, tem sido possibilitado pelos
avanços tecnológicos, entre os quais se destaca a Internet, o cinema, os
vídeos domésticos ou DVDs, a televisão aberta, a TV por assinatura, a
televisão digital, a música, os esportes, o vídeo e os PC games,
principalmente para o segmento de público jovem. Os impactos econômicos
do desenvolvimento do setor de entretenimento devem ser observados
quando se analisa a sociedade contemporânea.
Pode ser proporcionado pelas diversas opções de jogos e entretenimento existentes no mercado: filmes, músicas, etc.
Para refletir: Você já parou para pensar como seria sua vida sem televisão, sem rádio, telefone ou internet? |
Consumo |
As
novas tecnologias têm produzido efeitos significativos na forma de vida
das pessoas também na forma como elas realizam suas compras. Podemos
fazer uma compra sem sair de casa a qualquer hora do dia ou da noite e,
em qualquer dia da semana. A grande “questão” hoje é realizar este
processo de forma segura.
Trabalho |
A
tecnologia da informação, como ferramenta estratégica, se acentua ainda
mais a cada dia, tornando-se uma alavanca de inovação e gerenciamento
para as empresas, em um mercado de trabalho, onde, a concorrência
acirrada entre empresas, tornou a tecnologia, o grande diferencial
competitivo para sobreviver a este ambiente dinâmico.
Relacionamentos |
Você
pode imaginar como as pessoas se relacionavam até pouco tempo atrás sem
celular, rádio, msn, icq, skype, e-mail, orkut, dentre outros?
Namorar, falar com a família e amigos tomou novas dimensões nos dias de hoje.
Os
recursos tecnológicos da sociedade pós-moderna mudaram para sempre a
nossa concepção de tempo e espaço. Hoje, podemos trocar informações com
pessoas em qualquer lugar do mundo, quase que instantaneamente, desde
que tenhamos computadores “plugados” na grande rede mundial, a Internet.
Texto, som, imagem trafegam pela rede a velocidades nunca.
Com
tantos recursos tecnológicos desenvolvidos para facilitar a comunicação
entre as pessoas não podemos ficar isolados. Mas precisamos estar
atentos, pois não podemos igualar a emoção de uma experiência de uma
simulação do vôo de ultraleve com a do vôo na realidade, com o vento
batendo no rosto e o gostoso cheiro do mar.
Os
recursos tecnológicos são instrumentos culturais da nossa época e
devemos fazer a apropriação deles. Mas não podemos deixar de estar com
as pessoas, não podemos deixar de tocar-lhes, não podemos deixar de
falar-lhes, não podemos deixar de ouvir as suas confidências, não
podemos deixar de fazer com que acreditem que a vida é bela.
Links: Leia um artigo comunicação não é tecnologia é relacionamento. Disponível em: http://www.scribd.com/doc/196087/Artigo-Comunicacao-nao-e-tecnologia-e-relacionamento |
Educação |
As
constantes mudanças e as novas tecnologias têm causado grandes
transformações em curtos períodos de tempo, produzindo efeitos
significativos na forma de vida das pessoas. Essas tecnologias também
têm afetado aos processos tradicionais de ensino e aprendizagem.
Auxiliando
em pesquisas; na forma de preparar aulas, palestras, estudos; afetando
profundamente os processos de geração, organização e difusão do
conhecimento; Suporte e apoio na comunidade acadêmica; Acesso rápido à
informação em tempo real.
O
ensino a distância é uma modalidade educacional que utiliza esses
recursos tecnológicos. No entanto, esses recursos por si só, não são
suficientes para você adquirir conhecimento.
A
Educação a Distância é uma modalidade educacional sistematizada que
realiza este processo utilizado a Tecnologia da informação.
Referências |
IDOETA, Ivan Valeije; CAPUANO, Francisco Gabriel. Elementos de eletrônica digital. 32. ed. São Paulo: Érica, 2001. 528p.
ANGELONI, M. T. (Coord.). Organizações do conhecimento: infra-estrutura, pessoas e tecnologias. São Paulo: Saraiva, 2005. 215p.
OLIVEIRA, Fátima Bayma de (Org.). Tecnologia da informação e da comunicação: desafios e propostas estratégicas para o desenvolvimento de negócios. São Paulo: Pearson, 2006. 256p
Web-aula 2
PROJETO DE IMPLANTAÇÃO DE UM PLANO PILOTO DE GERENCIAMENTO
Muitas
vezes, as organizações encontram a melhor maneira de iniciar um projeto
piloto envolvendo um ou mais departamentos antes de expandir o sistema
por toda a empresa. Muitas empresas iniciam com Departamentos de
Documentação ou com formação de uma comissão com representantes dos
vários setores da organização, para uma maior discussão e aceitação, mas
o GED pode ser implementado num departamento especifico e
gradativamente abranger a organização como um todo.
Projetos
pilotos permitem às organizações desenvolver e testar completamente os
procedimentos de imagens antes de comprometer-se com uma solução
empresarial (LASERFICHE, 2002).
A
implantação de um sistema GED requer um amplo estudo das condições
ambientais da organização, seus departamentos, suas áreas de atuação.
Com base nos achados na literatura consultada, entende-se que se deve
partir de um plano inicial – plano piloto – de gerenciamento para que as
informações sejam protegidas e compartilhadas de forma segura.
Projeto de implantação do sistema GED |
Para
a implantação de um sistema GED numa organização, vários passos devem
ser seguidos, alterando-se ou alternando-se conforme o tipo de empresa,
mas, na essência, os critérios básicos são os mesmos.
Avaliação
das condições ambientais para implantação do sistema GED De acordo com
Laserfiche (2002), A escolha por um sistema GED consiste em um número
significativo de questões que podem ser consideradas:
•
Quantos documentos devem ser armazenados, considerando tanto o número
de documentos existentes como os documentos adicionados manualmente?
Essa informação determina quanto espaço de armazenamento é necessário, a configuração de hardware e o custo do sistema;
•
Quantos usuários irão utilizar o sistema ao mesmo tempo? Isso determina
os custos de softwares preliminares e o tamanho do servidor;
•
Quais departamentos irão utilizar o sistema e a que o público terá
acesso? Isso determina quais características de especificação e níveis
de segurança que serão necessários;
•
Quais os problemas sérios devem, absolutamente, ser resolvidos e quais
itens devem ser encaminhados para especificar características e níveis
de segurança necessários.
•
Qual a necessidade de uma solução padrão ou customizada? Isso determina
o número de consultores, instalações, treinos, configurações e suporte
que serão necessários;
•
Que tipo de rede está sendo atualmente utilizada? Esse tipo de rede
será mantido? Isso determina restrições, configurações de sistemas e
atualizações de estações de trabalho.
Instalação |
O
primeiro passo de uma instalação deve ser a inspeção do local pela
comissão de implantação do (GED), para determinar o equipamento
necessário e os problemas de conectividade de redes. Instalar hardware
envolve em desempacotar, conectar e configurar todos os componentes como
instalação de sistemas operacionais e drivers. Isso também
inclui testar os equipamentos para assegurar a funcionalidade adequada
do hardware e a conectividade da rede (LASERFICHE, 2002).
Depois
de testar o hardware, a instalação de software consiste em instalar o
sistema GED no servidor e nas estações clientes e testá-lo.
Treinamento |
O
programa de treinamento deve direcionar diferentes níveis de usuários e
diferentes preocupações. Requer ensinar aos usuários finais os
mecanismos do sistema. Esse treino deve ser no local de trabalho. Cada
grupo de usuários deve receber instruções necessárias para assegurar
conforto com o novo sistema GED. O tempo de treinamento necessário irá
depender do nível dos usuários em utilizar os aplicativos. O sistema GED
facilita o uso das novas mudanças para procedimentos existentes
fornecendo uma operação amigável e poucas mudanças nos procedimentos. É
aconselhado montar grupos com até 10 usuários e que os participantes não
sejam interrompidos durante o treinamento (LASERFICHE, 2002).
Administração do sistema |
Para
assegurar que o sistema GED funcione satisfatoriamente é importante
treinar alguns indivíduos como administrar o sistema. O treinamento no
próprio ambiente de trabalho é o mais recomendado porque aumenta a
familiaridade com detalhes específicos do sistema GED (LASERFICHE,
2002).
Implementação de consultoria |
Envolve
aqueles que são responsáveis por gerenciamento de registros e
documentos, e que desenvolvem estratégias para traduzir os documentos
existentes em papel para sistema eletrônico. Os gerentes de atividades
como registros de documentos necessitam entender a diferença dessa
atividade entre papel e eletrônico, decisões de retenções de tempos,
armazenamento e metodologias de trabalho devem ser definidas antes de
iniciar o trabalho. A duração do treinamento depende da complexidade do
sistema (LASERFICHE, 2002).
Benefícios do GED |
Milhões
de organizações ao redor do mundo utilizam GED todos os dias ao invés
de sistemas de papéis. GED oferece um grande número de benefícios em
relação a papel e microfilmes (LASERFICHE, 2002):
•
Recuperação Rápida — permite que você encontre documentos rapidamente
sem deixar a sua mesa de trabalho. Papel e microfilme são lentos porque
os usuários devem ir até os arquivos e acessá-los manualmente;
•
Indexação Flexível — pode indexar documentos em várias diferentes
maneiras simultaneamente. Por outro lado, indexar papel e microfilme em
mais de uma maneira é inoportuno, caro e consome tempo;
•
Busca em texto – Texto Completo - GED pode recuperar arquivos por
qualquer palavra no documento, recurso impossível com papel e
microfilme;
•
Sem perda de arquivos - documentos escaneados mantêm-se nas suas pastas
quando são visualizados. Nenhum é perdido ou não localizado. Ainda
mais, modelos de índice e buscas no texto completo podem localizar
documentos se eles foram acidentalmente movimentados. Perdas de
documentos são caras e consomem tempo para repô-los;
•
Arquivo Digital - o risco de perda ou danificação de papel para
documento eletrônico é reduzido com um sistema GED. Mantendo as versões
de arquivos em sistemas GED, evita o manuseio dos documentos em papel
que sofrem desgaste;
•
Compartilhar arquivos facilmente — sistemas de GED fazem o
compartilhamento facilitado de documentos entre colegas de trabalho e
clientes pela mesma rede de computadores, por um CD ou pela WEB.
Documentos de papel normalmente requerem uma fotocópia para serem
compartilhados e microfilmes requerem conversão para papel;
•
Melhora de Segurança - GED pode prover melhor e mais flexibilidade de
controle sobre documentos. Controles de segurança nas pastas, documento
individual, nível de palavras e/ou para diferentes grupos ou indivíduos.
Em contraste, todos os documentos de papéis arquivados em um armário
possuem o mesmo nível de segurança;
•
Economia Espaço - GED irá ajudar a recuperar valioso espaço físico no
escritório e arquivo permanente, reduzindo drasticamente as pilhas de
papéis;
•
Recuperação de desastres - GED provê um fácil caminho para fazer um
backup dos documentos que podem ser localizados fora do departamento.
Papéis são caros e fazer cópia de documentos é também uma maneira cara,
sendo vulneráveis a incêndios, enchentes e roubos.Associando Tecnologia ao GED
A
bibliografia disponível mostra que o GED não é uma tecnologia e sim um
sistema que faz uso de tecnologias para solucionar os problemas de
gerenciamento de documentos. Essas novas tecnologias podem ser
subdivididas em quatro, sendo essas as mais importantes porque formaram,
originalmente, a essência do GED.
Mas,
com a constante evolução, surgiram novas necessidades do mercado e a
integração entre os sistemas de informações das organizações,
possibilitando que outras tecnologias fossem criadas (CENADEM, 2002).
Knowledge Management – KM |
Engloba ferramentas para o gerenciamento do conhecimento (knowledge management)
nas organizações. Esta tecnologia é formada por produtos híbridos das
demais tecnologias citadas neste capítulo, principalmente aquelas que
são âncoras do GED: Document Imaging, Document Management e Workflow.
Consiste de mecanismos para organização da documentação e de processos,
permitindo a formulação de uma grande base de conhecimento nas
organizações. Combina a digitalização de documentos com sistemas de
informação, criando uma potente ferramenta de suporte para as
organizações (CENADEM, 2002).
É bastante utilizado em processos de Call Center , Help Desk
e suporte a equipes de produção nas mais variadas áreas. Por exemplo,
um provedor de serviços que possui suporte on-line utiliza-se de uma Knowledge Base, com informações sobre como dar suporte a seus clientes, principais problemas relatados e possíveis soluções.
Formas de Processamento |
Esta
tecnologia trata da captura de dados de formulários impressos. É
empregada juntamente com recursos de OCR e ICR. Consiste-se em
ferramentas que oferecem recursos para reconhecimento de caracteres em
regiões determinadas de um formulário, transpondo para um banco de dados
ou identificando alguma marca em um formulário, direcionando-o para uma
operação específica no sistema. Esses caracteres podem estar impressos
ou manuscritos, dependendo do tipo de documento processado.
Tais
recursos são bastante empregados em empresas com equipes de vendas
diretas que preenchem formulários de pedidos; na apuração de resultados
de pesquisas; no processamento de passagens aéreas etc.
Gerenciamento do Conteúdo |
É uma tecnologia que surgiu do Knowledge Management.
Engloba ferramentas capazes de combinar todo o conteúdo de informações
da organização canalizadas em uma única visão, ou seja, todas as
informações referentes a determinado assunto podem ser buscadas
diretamente de uma só vez. Por exemplo, pesquisando-se determinado
cliente, têm-se e-mails referentes a negociações efetuadas, pedidos e
notas fiscais de venda dos produtos.
Para utilizar uma ferramenta de Content Management
a organização deve estar culturalmente organizada, utilizando os
conceitos de centralização e controle de fluxo das informações, evitando
redundâncias ou deficiências de dados (CENADEM, 2002).
Workflow |
Workflow
pode ser definido com um conjunto de tarefas para o controle do fluxo
de processos de forma ordenada na organização. Corresponde às
ferramentas que gerenciam o fluxo dos documentos, disponibilizando
critérios para o controle desse fluxo, ou seja, oferecendo recursos de
inclusão, aprovação ou rejeição de informações no documento. Existem
basicamente dois tipos de workflow (KOCH, 1998):
Com o software de workflow,
os usuários podem elaborar programas (scripts) que detalham para onde
cada documento deve seguir numa organização, mapeiam e controlam todos
os documentos que entram no sistema. Os scripts podem especificar em
quais estações de trabalho a imagem de um documento deve aparecer e que
outras imagens devem estar junto com ela na tela, em todas as categorias
de documentos.
Segundo
Avedon (2002), após a implantação da tecnologia, o próximo passo é
mudar os procedimentos que já estão enraizados há décadas para que os
funcionários comecem a se adaptar ao sistema. Nesse caso, entra o
conceito de organização e métodos dos procedimentos de automação, o Workflow, pois não adianta substituir papel por disco óptico e continuar a manter processos antigos de organização e métodos.
As ferramentas de workflow
de produção possuem interfaces gráficas para o desenvolvimento da
aplicação, em que o fluxo é definido através do uso de ícones.
Possuem, ainda, o papel de automatizar a disponibilização das ferramentas necessárias para a execução das diversas atividades.
Captura de imagens |
A tecnologia Document Imaging
trata da digitalização e armazenamento de documentos. Engloba as
ferramentas de escaneamento, captura e armazenamento de documentos,
tendo como objetivo principal a sua recuperação através de índices
pré-definidos ou índices textuais, que são gerados a partir de OCR ou
drivers de impressão virtual, descrito em (CDIA MANUAL, 2000).
Chama-se
de digitalização ou escaneamento o processo de converter imagens em
papel para arquivos no computador. Os documentos são preparados e
submetidos ao scanner que os “fotografa” gerando um arquivo imagem do
documento em papel. O arquivo gerado pode conter a imagem de uma única
folha de papel ou ser um arquivo com várias imagens.
Cada
produto de gerenciamento de imagem possui suas características de como
administrar esses detalhes. Dependendo da necessidade, utiliza-se um
tipo de arquivo para guardar as imagens. Atualmente, o padrão mais
utilizado para as imagens comerciais é o TIFF com um fator de
compactação em 200 dpi preto e branco.
O
tipo do arquivo deve ser escolhido de acordo com o que se quer fazer,
mas geralmente os produtos de gerenciamento de documentos se encarregam
desta missão organizando ou convertendo os arquivos quando necessário.
A Tarefa |
Você
está sendo convidado a refletir neste momento sobre os aspectos
relacionados a tecnologias de GED. Então, responda: 1) Qual a função da
tecnologia Workflow? 2) Cite duas vantagens (benefícios) em se implementar uma solução de GED. 3) O que é Document Imaging?
Conclusão |
Esta leitura tem como objetivo conhecer tecnologias de Gestão Eletrônica de Documentos e os benefícios em sua implementação..
Parabéns a todos que chegaram até aqui!
Boa sorte e sucesso na carreira e no curso!!!
Pesquisando |
Você pode assistir a diversos vídeos inerentes a GED no Youtube.
Referências |
BALDAM, Roquemar. Gerenciamentos eletrônico de documentos. São Paulo: Érica, 2004.
MORENO, Nádina Aparecida. Gestão em arquivologia. Londrina: EDUEL, 2008
Web-aula 1
Conceitos - programação modular1
Programação Modular
Subrotinas |
No
geral, problemas complexos exigem algoritmos complexos, mas sempre é
possível dividir um problema grande em problemas menores. Desta forma,
cada parte menor tem um algoritmo mais simples e é este trecho menor é
chamado de subrotina. Uma subrotina é na verdade, um programa, e sendo
um programa poderá efetuar diversas operações computacionais (entrada,
processamento e saída) e deverá ser tratado como foram os programas
projetados até este momento. As subrotinas são utilizadas na divisão de
algoritmos complexos, permitindo assim, possuir a modularização de um
determinado problema considerado grande e de difícil solução.
Ao
se trabalhar com esta técnica, pode-se deparar com a necessidade de se
dividir uma subrotina em outras tantas quantas forem necessárias,
buscando uma solução mais simples de uma parte do problema maior. O
processo de dividir subrotinas em outras é denominado Método de
Refinamento Sucessivo.
Procedimentos |
Um
procedimento é um bloco de programa, contendo início e fim e será
identificado por um nome, através do qual será referenciado em qualquer
parte do programa principal ou do programa que chama a rotina. Quando
uma subrotina é chamada por um programa, ela é executada e ao seu
término o controle de processamento retorna automaticamente para a
primeira linha de instrução após a linha que efetuou a chamada da
subrotina.
A
melhor maneira de se entender como trabalhar com subrotinas é fazer a
sua aplicação em um programa mais complexo. Para tanto, imagine o
seguinte problema:Exemplos:
Um programa de calculadora que
apresenta um menu de seleções no programa principal. Este menu deverá
dar ao usuário a possibilidade de escolher uma entre quatro operações
aritméticas. Escolhida a opção desejada, deverá ser solicitada a entrada
de dois números, e processada a operação, o resultado deverá ser
exibido. Note que este programa deverá ser um conjunto de 5 rotinas, uma
principal e 4 secundárias. A rotina principal efetuará o controle sobre
as 4 rotinas secundárias, que por sua vez pedirão a leitura de dois
valores, farão a operação e apresentarão o resultado obtido. Observe
agora a codificação:
ALGORITMO "calculadora" VAR Opcao : inteiro
Obs.:
Observe que cada subrotina possui suas próprias variáveis, estas porém
só podem ser acessadas dentro de cada procedimento, neste caso são
chamadas de variáveis locais. A variável opção é uma variável global que
pode ser acessada em qualquer local do programa, tanto nos
procedimentos quanto no programa principal.
Funções |
Uma
função também é um bloco de programa como são os procedimentos,
contendo início e fim e sendo identificado por um nome através do qual
também será referenciada em qualquer parte do programa principal. Uma
subrotina de função é na verdade muito parecida com uma subrotina de
procedimento. A sintaxe em português estruturado será também idêntica ao
exemplo anterior. Observe a seguir, o código em português estruturado
de uma função.
A
sua principal diferença entre a função e a subrotina (procedimentos)
está no fato de que uma função retorna um determinado valor, que é
retornado no próprio nome da função. Quando se diz valor, devem ser
levados em consideração os valores numéricos, lógicos ou literais
(caracteres).Utilização de Funções
Criaremos uma função que eleva ao cubo um determinado número inserido pelo usuário. Observe o Programa:
Observe que neste caso o parâmetro formal foi a variável "N", enquanto o parâmetro real foi a variável "I".
Subrotinas – Conceitos
Parâmetros Formais são declarados através de variáveis juntamente com a identificação do nome da subrotina, os quais serão tratados da mesma forma que são tratados as variáveis globais ou locais.
Parâmetros Reais é uma lista de argumento podendo ser valores constantes ou variáveis que são passados no memento que efetua a chamada da subrotina (exemplo: soma(10, 20, X, Y).
No
caso da passagem de parâmetro for por referência não poderão ser
passados valores como exemplificado 10 e 20, visto que não possuem
endereço de memória.
Passagem de parâmetro por referência
caracteriza-se pela ocorrência da alteração do valor do parâmetro real
quando o parâmetro formal é manipulado dentro da subrotina. Desta
forma, qualquer modificação feita no parâmetro formal implica em
alteração no parâmetro real correspondente. A alteração é efetuada e
devolvida para a rotina chamadora.
Passagem de parâmetro por valor
caracteriza-se pela não alteração do valor do parâmetro real quando o
parâmetro formal é manipulado dentro da sub-rorina. Assim sendo, o valor
passado pelo parâmetro real é copiado para o parâmetro formal, que no
caso assume o papel da variável local da subrotina. Dessa forma,
qualquer modificação que ocorra na variável local da subrotina não
afetará o valor do parâmetro real correspondente, ou seja, o
processamento é executado somente dentro da rotina, ficando o resultado
obtido “preso” dentro da rotina.
Variável global é declarada no início de um programa, podendo ser utilizada por qualquer subrotina subordinada.
Variável local
é declarada dentro de uma subrotina e é somente válida dentro da
subrotina à qual está declarada; ou seja, depois que a subrotina é
finalizada a variável local se torna inacessível.
Passagem de parâmetros por VALOR
EXEMPLO:
O código abaixo mostra um exemplo de um algoritmo que realiza a leitura
de dois números reais e chama um procedimento que mostra a soma dos
números lidos.
OBSERVAÇÃO:
• Os parâmetros formais (X e Y) e reais (A e B) devem ser do mesmo tipo;
•
A passagem de parâmetro é por valor através dos parâmetros reais (A e
B) é passado uma cópia para os parâmetros formais (X e Y);
• A e B são variáveis locais ao procedimento.
Passagem de parâmetros por REFERÊNCIA
Web-aula 2
Programação de Computadores
Programação de Computadores |
Programação
é o processo de escrita, teste e manutenção de um programa de
computador. O programa é escrito em uma linguagem de programação, embora
seja possível, com alguma dificuldade, escrevê-lo directamente em
linguagem de máquina.
Uma linguagem de programação (poderá consultar uma lista de linguagens de programação no link:http://pt.wikipedia.org/wiki/Anexo:Lista_de_linguagens_de_programa%C3%A7%C3%A3o é
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.
Uma
das principais metas das linguagens de programação é permitir que
programadores tenham uma maior produtividade, permitindo expressar suas
intenções mais facilmente do que quando comparado com a linguagem que um
computador entende nativamente (código de máquina). Assim, linguagens
de programação são projetadas para adotar uma sintaxe de nível mais
alto, que pode ser mais facilmente entendida por programadores humanos.
Linguagens de programação são ferramentas importantes para que
programadores e engenheiros de software possam escrever programas mais organizados e com maior rapidez.
Interpretação e compilação
As linguagens de programação podem, grosso modo, classificar-se em duas categorias: a) as linguagens interpretadas, b) as linguagens compiladas.
Linguagens compiladas e interpretadas |
Linguagens
de programação são frequentemente classificadas como compiladas ou
interpretadas. Nas compiladas, o texto (ou código-fonte) do programa é
lido por um programa chamado compilador, que cria um arquivo binário,
executável diretamente pelo hardware da plataforma-alvo. Ou
seja, O compilador lê o programa e o traduz completamente antes que o
programa comece a rodar. Neste caso, o programa escrito em linguagem de
alto nível é chamado de código fonte e o programa traduzido é chamado de código objeto
ou executável. Uma vez que um programa é compilado, você pode
executá-lo repetidamente, sem que precise de nova tradução. Exemplos
deste tipo de linguagem são C ou Fortran. A imagens abaixoa apresentam o
processo de compilação.
Em contrapartida, programas escritos em linguagens interpretadas não são convertidos
em um arquivo executável. Eles são executados utilizando outro
programa, o interpretador, que lê o código-fonte e o interpreta
diretamente, durante a sua execução. Ou seja, o interpretador lê um
programa escrito em linguagem de alto nível e o executa. Ele processa o
programa um pouco de cada vez, alternadamente: ora lendo algumas linhas,
ora realizando computações. Exemplos de linguagem interpretada incluem o
BASIC tradicional, Perl e Python.
Compilador Versus Interpretador
Um
programa compilado geralmente executa mais rapidamente que um programa
interpretado. A vantagem do interpretador é que ele não necessita passar
por um estágio de compilação durante a qual as instruções de máquina
são geradas. Este processo pode consumir muito tempo se o programa é
longo. O interpretador, por outro lado, pode executar imediatamente os
programas de alto-nível.
O quadro abaixo apresenta comparativo entre as linguagem compiladas e interpretadas.
Sistemas de Interpretação Híbridos |
Alguns
sistemas de implementação de linguagem são um meio-termo entre os
compiladores e os interpretadores puros; eles traduzem programas em
linguagem de alto nível para uma linguagem intermediária projetada para
permitir fácil interpretação. Esse método é mais rápido do que a
interpretação pura porque as instruções da linguagem fonte são
decodificadas somente uma vez. Essas implementações são chamadas de
sistemas de implementação híbridos.
Poderá consultar uma abordagem mais completa sobre compiladores no link:
Paradigmas de linguagens de programação
Em
programação, os paradigmas começaram a ser introduzidos e chamados como
tais a partir de 1975. Nessa época, já era evidente a existência de um
paradigma básico de programação, o imperativo, que era representado por
linguagens como Fortran, Algol e Pascal. Em contraposição, LISP e
linguagens derivadas davam suporte a um outro paradigma, o funcional,
cujos programas eram expressos através de composições de funções. Na
década de 80 surgiu um novo paradigma, o lógico, baseado no
reconhecimento de Prolog e outras linguagens baseadas em lógica. Também
nesta época surgiram as linguagens orientadas a objeto.
A
figura abaixo sumariza a história desta evolução das linguagens de
programação que deu origem a diferentes linguagens de diferentes
paradigmas de programa (como pode observar na figura várias linguagens
surgiram como evolução de outra linguagem). Quando uma linguagem
pertence ao mesmo paradigma elas possuem basicamente estruturas
semelhantes.
Obs: os artigo dispoinível em : http://fit.faccat.br/~guto/artigos/Artigo_Paradigmas_de_Programacao.pdf e http://www.inf.unisinos.br/~barbosa/grefe/atividades/at1/joao_1.pdf descrevem os paradigmas de programação apresentados na figura acima (Orientado a objeto, Imperativo, funcional e lógico).
Descrição de algumas das linguagens apresentadas na figura anterior:
•
Fortran é a precursora de todas as linguagens imperativas modernas.
Linguagem oficial dos antigos mainframes da IBM. Ainda muito usada em
supercomputadores, como o CRAY, por físicos e engenheiros.
•
Algol apresentou o primeiro esboço interessante de uma linguagem de
programação moderna, incluindo conceitos como estruturas de blocos e
procedimentos. Não saiu dos limites da academia.
•
Cobol foi criada para o desenvolvimento de aplicações comerciais. Foi
desbancada pelo surgimento dos sistemas gerenciadores de bancos de
dados. Ainda existem muitos sistemas desenvolvidos nesta linguagem em
fase de manutenção.
• Simula é precursora das linguagens orientadas a objetos. Smalltalk é certamente a única linguagem orientada a objetos pura.
•
Pascal é a linguagem mais popular de todas as descendentes de Algol.
Simples, sistemática e com implementações eficientes foi o carro-chefe
da Borland por muitos anos. É uma das linguagens mais recomendadas para
ensino de programação. De Pascal surgiram muitas outras linguagens como
Modula-2 e Delphi, que passou a incorporar orientação a objetos e
definição/manipulação de dados (SQL).
•
C é ainda hoje uma das linguagens mais utilizadas, principalmente no
ambiente Unix para o qual foi desenvolvida. Sua marca maior é a
eficiência, porém construções de baixo nível tornam seus programas
difíceis de serem lidos e depurados. A partir de C, surgiram as
linguagens C++ e Java, as quais incorporaram o paradigma de orientação a
objetos, porém a segunda eliminou o uso explícito de apontadores e deu
ênfase a programação distribuída na Internet, fator primordial de seu
sucesso.
•
Em outra linha de desenvolvimento, inicialmente voltado para aplicações
de inteligência artificial, sugiram as linguagens funcionais e lógicas.
Lisp – linguagem funcional – foi a precursora. A linguagem Prolog é
largamente utilizada ainda hoje para o desenvolvimento de aplicações
cognitivas (novo nome para inteligência artificial). As linguagens
funcionais têm ML como representante de maior sucesso. Vale ressaltar
também Haskell e Miranda – uma linguagem funcional pura.
Nenhum comentário:
Postar um comentário