trabalho lp

7
Questão - 1 Linguagem de Programação II: Richardson John Silva Moraes Faculdade do Maranhão - FACAM, Imperatriz, MA A Microsoft. NET Framework é uma estrutura de software para desenvolvimento e execução de aplicações no cliente Windows e servidores de sistemas operacionais. Ele fornece recursos e funcionalidades que são projetados especificamente para a criação e execução de aplicações na plataforma Windows, mas também suporta conectividade com os sistemas não-Windows. A plataforma Microsoft .NET é composta por cinco componentes principais: o Sistema Operacional Windows, Servidores Windows Enterprise, NET Framework, NET Building Block Services e Visual Studio.NET. Os três principais componentes do NET Framework. São o Common Language Runtime (CLR), Framework e ASP.NET. Java "Java" que refere-se a um conjunto de programas e padrões criados originalmente pela Sun Microsystems, e agora propriedade da Oracle Corporation. Quando as pessoas se referem a "Java" eles são geralmente falando de um dos seguintes procedimentos: A plataforma Java, que inclui o Java Development Kit (JDK), que inclui o compilador Java e outras utilidades, e Java Runtime Environment (JRE), que inclui a Máquina Virtual Java (JVM). O Java Class Libraries, um grande corpo de código reutilizável que contém a maioria das interfaces de programação de aplicativos (APIs) e funções que seriam fornecidos pelo sistema operacional. A linguagem de programação Java, com o qual os desenvolvedores podem escrever aplicações, compõe um compilador Java, parte do Java Development Kit (JDK) que traduz o código escrito pelo desenvolvedor em plataforma independente Java "bytecode". A Java Virtual Machine (JVM) traduz Java bytecode em instruções compreensíveis para o sistema operacional[1]. NET e Java ambos apresentam algumas semelhanças, ambos visam simplificar o desenvolvimento de aplicações, fornecendo um conjunto de componentes e serviços modulares padronizados. Por ter componentes e serviços padrão à sua disposição, os desenvolvedores podem se concentrar nas necessidades dos negócios ("lógica de negócios"), em vez de programar serviços mais fundamentais. Usando ferramentas visuais que simplificam o desenvolvimento de aplicativos é um tipo de programação que é muitas vezes chamado de Rapid Application Development (RAD). Apesar de ambos apresentarem semelhanças em alguns aspectos, há muitas diferenças entre os trabalhos internos dessas estruturas e, também, certos aspectos das línguas que vêm com eles. É importante enfatizar que são apenas diferenças e não, necessariamente, vantagens ou desvantagens de uma única plataforma sobre a outra: Windows vs Multi- plataforma:.. Embora existam implementações de código aberto do NET Framework da Microsoft para criar aplicações multi- plataforma, a Microsoft NET é direcionada principalmente para o sistema operacional Windows. Java, por outro lado, baseia-se na ideia de que o mesmo software deve funcionar em muitos tipos diferentes de computadores, aparelhos eletrônicos e outros dispositivos em uma rede. A grande promessa do Java é que ele permite que os aplicativos rodem em diferentes tipos de computadores sem ter que ser reescrito em aplicativos Java executados em "máquinas virtuais" que foram escritos para cada plataforma. Propriedade Open source: .NET Framework é um

Upload: richardson-silva

Post on 11-Feb-2016

214 views

Category:

Documents


0 download

DESCRIPTION

Estudo sobre Linguagem de Programação;

TRANSCRIPT

Page 1: Trabalho LP

Questão - 1Linguagem de Programação II: Richardson John Silva Moraes

Faculdade do Maranhão - FACAM, Imperatriz, MA

A Microsoft. NET Framework é uma estrutura de software para desenvolvimento e execução de aplicações no cliente Windows e servidores de sistemas operacionais. Ele fornece recursos e funcionalidades que são projetados especificamente para a criação e execução de aplicações na plataforma Windows, mas também suporta conectividade com os sistemas não-Windows. A plataforma Microsoft .NET é composta por cinco componentes principais: o Sistema Operacional Windows, Servidores Windows Enterprise, NET Framework, NET Building Block Services e Visual Studio.NET. Os três principais componentes do NET Framework. São o Common Language Runtime (CLR), Framework e ASP.NET. Java "Java" que refere-se a um conjunto de programas e padrões criados originalmente pela Sun Microsystems, e agora propriedade da Oracle Corporation. Quando as pessoas se referem a "Java" eles são geralmente falando de um dos seguintes procedimentos: A plataforma Java, que inclui o Java Development Kit (JDK), que inclui o compilador Java e outras utilidades, e Java Runtime Environment (JRE), que inclui a Máquina Virtual Java (JVM). O Java Class Libraries, um grande corpo de código reutilizável que contém a maioria das interfaces de programação de aplicativos (APIs) e funções que seriam fornecidos pelo sistema operacional. A linguagem de programação Java, com o qual os desenvolvedores podem escrever aplicações, compõe um compilador Java, parte do Java Development Kit (JDK) que traduz o código escrito pelo desenvolvedor em plataforma independente Java "bytecode". A Java Virtual Machine (JVM) traduz Java bytecode em instruções compreensíveis para o sistema operacional[1].

NET e Java ambos apresentam algumas semelhanças, ambos visam simplificar o desenvolvimento de aplicações, fornecendo um conjunto de componentes e serviços modulares padronizados. Por ter componentes e serviços padrão à sua disposição, os

desenvolvedores podem se concentrar nas necessidades dos negócios ("lógica de negócios"), em vez de programar serviços mais fundamentais. Usando ferramentas visuais que simplificam o desenvolvimento de aplicativos é um tipo de programação que é muitas vezes chamado de Rapid Application Development (RAD).

Apesar de ambos apresentarem semelhanças em alguns aspectos, há muitas diferenças entre os trabalhos internos dessas estruturas e, também, certos aspectos das línguas que vêm com eles. É importante enfatizar que são apenas diferenças e não, necessariamente, vantagens ou desvantagens de uma única plataforma sobre a outra:

Windows vs Multi-plataforma:.. Embora existam implementações de código aberto do NET Framework da Microsoft para criar aplicações multi-plataforma, a Microsoft NET é direcionada principalmente para o sistema operacional Windows. Java, por outro lado, baseia-se na ideia de que o mesmo software deve funcionar em muitos tipos diferentes de computadores, aparelhos eletrônicos e outros dispositivos em uma rede. A grande promessa do Java é que ele permite que os aplicativos rodem em diferentes tipos de computadores sem ter que ser reescrito em aplicativos Java executados em "máquinas virtuais" que foram escritos para cada plataforma.

Propriedade Open source: .NET Framework é um produto gratuito que é desenvolvido pela Microsoft e integrado ao sistema operacional Windows. Ele não depende de fornecedores de terceiros para fornecer uma implementação, embora seja altamente extensível e muitas adições de terceiros estão disponíveis.

Embora Java é fornecido por um número de fornecedores, a maioria dos usuários só poderão encontrar Oracle JDK e JRE (O Open JDK é uma versão aberta open source) encontrada em algumas distribuições Linux e outros sistemas operacionais de código aberto. IBM e HP ambos fornecer suas próprias implementações para seus sistemas

Unix. Um dos pontos fortes do Java é que uma grande variedade de ferramentas, produtos e aplicativos estão disponíveis a partir de vários fornecedores. A concorrência entre os fornecedores de Java EE impulsiona a inovação, enquanto os padrões estritos da compatibilidade ajudar a manter a qualidade.

Além disso, para. NET, uma IDE de desenvolvimento padrão (ambiente de desenvolvimento integrado) está disponível com o Microsoft Visual Studio. Esta ferramenta inclui todas as coisas que um desenvolvedor precisa para desenvolver, depurar, construir e implantar qualquer tipo de aplicação direcionada para a NET..

Para Java, há quatro principais IDEs, Eclipse, IntelliJ IDEA, Oracle NetBeans e Oracle JDeveloper. Ao invés de ficar submisso a um único ambiente, em uma única plataforma (Windows), você é livre para escolher o produto que melhor se adapte às suas necessidades, em vários pontos diferentes e ainda pode optar por usar o Mac OS X, Linux, ou praticamente qualquer outra plataforma para a qual existe um JDK para fazer o seu trabalho de desenvolvimento. No entanto, não há uma ferramenta padrão que está disponível[2-3].

Ambas as plataformas oferecem tecnologias que permitem que um desenvolvedor qualificado para construir aplicações empresariais de qualidade. No entanto, uma tecnologia raramente é escolhida baseada apenas no desempenho. Portanto, a escolha da plataforma depende da situação e necessidades da aplicação que será desenvolvida.

Referências1. FACAM, Linguagem de programação II, São

Luis, 2012;2. ,NET vs Java, How to Make Your Pick,

Seguetech. Disponível em:< http://www.seguetech.com/blog/2013/06/03/dotnet-vs-java-how-to-pick>. Acesso em: 19/07/2014.

3. FrameWork .Net, Tecnologia. Microsof .NET. Wikipédia. Disponível em: http://pt.wikipedia.org/wiki/Microsof_NET. Acessado em: 20/07/2014.

Page 2: Trabalho LP

Questão - 2Linguagem de Programação II: Richardson John Silva Moraes

Faculdade do Maranhão, Imperatriz, MA

Cliente/servidor é a relação estabelecida entre dois programas de computador em que um programa, o cliente, faz uma solicitação de serviço de outro programa, o servidor, que atende a solicitação. Embora a ideia de cliente/servidor podem ser utilizados pelos programas dentro de um único computador, é uma ideia mais importante numa rede.

Em uma rede, o modelo cliente/servidor fornece uma maneira conveniente para interligar os programas que são distribuídos de forma eficiente em diferentes locais. Operações de computador, utilizando o modelo cliente/servidor são muito comuns. Por exemplo, para verificar a sua conta bancária a partir de seu computador, um programa cliente em seu computador envia o seu pedido para um programa de servidor no banco. Esse programa pode, por sua vez encaminhar o pedido para o seu próprio programa cliente que envia uma solicitação para um servidor de banco de dados, em outro computador do banco, para recuperar sua conta. O saldo é devolvido ao cliente os dados do banco, que por sua vez serve de volta para o cliente no seu computador pessoal, que exibe as informações para você [1 - 2].

O modelo cliente/servidor tornou-se uma das idéias centrais de computação em rede. A maioria dos aplicativos de negócios que está sendo escrita hoje usa o modelo cliente/servidor. O mesmo acontece com o principal programa, o TCP/IP da Internet. Em marketing, o termo tem sido usado para distinguir a computação distribuída por computadores menores dispersos da computação centralizada "monolítico" de computadores mainframe. Mas esta distinção praticamente desapareceu como mainframes e suas aplicações também

se voltaram para o modelo cliente/servidor e tornar-se parte de uma rede de computação.

No modelo cliente/servidor de costume, um servidor, às vezes chamado de daemon, é ativado e aguarda solicitações do cliente. Normalmente, vários programas cliente compartilham os serviços de um programa de servidor comum. Ambos os programas cliente e programas de servidor são muitas vezes parte de um programa maior ou aplicação. Em relação à Internet, o seu browser é um programa cliente que solicita serviços (o envio de páginas da Web ou arquivos) de um servidor Web (que tecnicamente é chamado de Protocolo de Transporte de Hipertexto ou servidor HTTP) em outro computador em algum lugar na Internet. Da mesma forma, o seu computador com o TCP / IP instalado permite fazer pedidos de clientes para arquivos de Transferência de Arquivo

(FTP) servidores em outros computadores na Internet Protocol[3].

Veja a figura abaixo.

Um diagrama de rede de computadores (incluindo dispositivos móveis) de clientes comunicando com um servidor através da Internet. Tanto os clientes como o servidor são os nós (pontos de comunicação) na rede. A organização dos nós de uma rede designa-se por topologia de rede. Esta abordagem parece ser difundida hoje e serve para as situações mais importantes que surgem na web. Podemos imaginar

esse tipo de arquitetura, como mostrado na figura: vários clientes estão conectados a um servidor que fornece um serviço como necessário.

Outros modelos de relacionamento de programa incluiu master/slave, com um programa que está sendo responsável por todos os outros programas e redes peer-to-peer, com qualquer um dos dois programas capazes de iniciar uma transação [4].

Entretanto, a rede de computadores pode se tornar um gargalo de desempenho ou a confiabilidade: se a rede falhar, todos os servidores se tornar inacessível. Se os clientes produzem um alto tráfego de rede, então todos clientes irão sofrer com longos tempos de resposta[5].

Portanto, Cliente/Servidor é um modelo bastante usado atualmente com aplicação nos mais diversos serviços oferencidos onde cliente e servidor interagem, estabelecendo uma relação que pode ser estreita ou ampla, dependendo da aplicação.

Referências1. MENDES, Antônio. Arquitetura de Software:

desenvolvimento orientado para arquitetura. Editora Campus. Rio de Janeiro - RJ, 2002.

2. BROOKSHEA, J. Glenn. Ciencia da Computação: Uma Visão Abrangente. Editora ARTMED* EDITORA S.A. São Paulo, 2003. Silberschatz et al. (2001), Ramakrishnan e Gehrke (2002), Garcia-Molina et al. (1999, 2001) e Abiteboul et al. (1995);

3. INTERNET, Grupo de Redes da Universidade Federal do Rio Grande do Sul – Sistemas Cliente/Servidor.[http://penta.ufrgs.br/redes296/cliente_ser/tutorial.htm]

4. INTERNET, Cliente/Servidor. [http://pt.wikipedia.org/wiki/Cliente-servidor]

5. HIRAMA, Kechi. Engenharia de Software: Qualidade e Produtividade com Teconologia. Elsevier Editora Ltda.. Rio de Janeiro – RJ, 2012.

Page 3: Trabalho LP

Questão - 3Linguagem de Programação II: Richardson John Silva Moraes

Faculdade do Maranhão - FACAM, Imperatriz, MA

A Microsoft. NET Framework é uma estrutura de software para desenvolvimento e execução de aplicações no cliente Windows e servidores de sistemas operacionais. Ele fornece recursos e funcionalidades que são projetados especificamente para a criação e execução de aplicações na plataforma Windows, mas também suporta conectividade com os sistemas não-Windows. A plataforma Microsoft .NET é composta por cinco componentes principais: o Sistema Operacional Windows, Servidores Windows Enterprise, NET Framework, NET Building Block Services e Visual Studio.NET. Os três principais componentes do NET Framework. São o Common Language Runtime (CLR), Framework e ASP.NET. Java "Java" que refere-se a um conjunto de programas e padrões criados originalmente pela Sun Microsystems, e agora propriedade da Oracle Corporation. Quando as pessoas se referem a "Java" eles são geralmente falando de um dos seguintes procedimentos: A plataforma Java, que inclui o Java Development Kit (JDK), que inclui o compilador Java e outras utilidades, e Java Runtime Environment (JRE), que inclui a Máquina Virtual Java (JVM). O Java Class Libraries, um grande corpo de código reutilizável que contém a maioria das interfaces de programação de aplicativos (APIs) e funções que seriam fornecidos pelo sistema operacional. A linguagem de programação Java, com o qual os desenvolvedores podem escrever aplicações, compõe um compilador Java, parte do Java Development Kit (JDK) que traduz o código escrito pelo desenvolvedor em plataforma independente Java "bytecode". A Java Virtual Machine (JVM) traduz Java bytecode em instruções compreensíveis para o sistema operacional[1].

NET e Java ambos apresentam algumas semelhanças, ambos visam simplificar o desenvolvimento de aplicações, fornecendo um conjunto de componentes e serviços modulares padronizados. Por ter componentes e

serviços padrão à sua disposição, os desenvolvedores podem se concentrar nas necessidades dos negócios ("lógica de negócios"), em vez de programar serviços mais fundamentais. Usando ferramentas visuais que simplificam o desenvolvimento de aplicativos é um tipo de programação que é muitas vezes chamado de Rapid Application Development (RAD).

Apesar de ambos apresentarem semelhanças em alguns aspectos, há muitas diferenças entre os trabalhos internos dessas estruturas e, também, certos aspectos das línguas que vêm com eles. É importante enfatizar que são apenas diferenças e não, necessariamente, vantagens ou desvantagens de uma única plataforma sobre a outra:

Windows vs Multi-plataforma:.. Embora existam implementações de código aberto do NET Framework da Microsoft para criar aplicações multi-plataforma, a Microsoft NET é direcionada principalmente para o sistema operacional Windows. Java, por outro lado, baseia-se na ideia de que o mesmo software deve funcionar em muitos tipos diferentes de computadores, aparelhos eletrônicos e outros dispositivos em uma rede. A grande promessa do Java é que ele permite que os aplicativos rodem em diferentes tipos de computadores sem ter que ser reescrito em aplicativos Java executados em "máquinas virtuais" que foram escritos para cada plataforma.

Propriedade Open source: .NET Framework é um produto gratuito que é desenvolvido pela Microsoft e integrado ao sistema operacional Windows. Ele não depende de fornecedores de terceiros para fornecer uma implementação, embora seja altamente extensível e muitas adições de terceiros estão disponíveis.

Embora Java é fornecido por um número de fornecedores, a maioria dos usuários só poderão encontrar Oracle JDK e JRE (O Open JDK é uma versão aberta open source) encontrada em algumas distribuições Linux e outros sistemas operacionais de código aberto.

IBM e HP ambos fornecer suas próprias implementações para seus sistemas Unix. Um dos pontos fortes do Java é que uma grande variedade de ferramentas, produtos e aplicativos estão disponíveis a partir de vários fornecedores. A concorrência entre os fornecedores de Java EE impulsiona a inovação, enquanto os padrões estritos da compatibilidade ajudar a manter a qualidade.

Além disso, para. NET, uma IDE de desenvolvimento padrão (ambiente de desenvolvimento integrado) está disponível com o Microsoft Visual Studio. Esta ferramenta inclui todas as coisas que um desenvolvedor precisa para desenvolver, depurar, construir e implantar qualquer tipo de aplicação direcionada para a NET..

Para Java, há quatro principais IDEs, Eclipse, IntelliJ IDEA, Oracle NetBeans e Oracle JDeveloper. Ao invés de ficar submisso a um único ambiente, em uma única plataforma (Windows), você é livre para escolher o produto que melhor se adapte às suas necessidades, em vários pontos diferentes e ainda pode optar por usar o Mac OS X, Linux, ou praticamente qualquer outra plataforma para a qual existe um JDK para fazer o seu trabalho de desenvolvimento. No entanto, não há uma ferramenta padrão que está disponível[2-3].

Ambas as plataformas oferecem tecnologias que permitem que um desenvolvedor qualificado para construir aplicações empresariais de qualidade. No entanto, uma tecnologia raramente é escolhida baseada apenas no desempenho. Portanto, a escolha da plataforma depende da situação e necessidades da aplicação que será desenvolvida.

Referências4. FACAM, Linguagem de programação II, São

Luis, 2012;5. ,NET vs Java, How to Make Your Pick,

Seguetech. Disponível em:< http://www.seguetech.com/blog/2013/06/03/dotnet-vs-java-how-to-pick>. Acesso em: 19/07/2014.

6. FrameWork .Net, Tecnologia. Microsof .NET. Wikipédia. Disponível em:

Page 4: Trabalho LP

http://pt.wikipedia.org/wiki/Microsof_NET. Acessado em: 20/07/2014.

Questão - 4Linguagem de Programação II: Richardson John Silva Moraes

Faculdade do Maranhão - FACAM, Imperatriz, MA

O que é um banco de dados?Um banco de dados é uma estrutura

de dados que armazena informações organizadas. A maioria dos bancos de dados contêm várias tabelas, cada uma dessas tabelas teriam vários campos diferentes. Por exemplo, um banco de dados da empresa podem incluir tabelas de produtos, funcionários e registros financeiros. Cada um destes quadros que têm diferentes campos que são relevantes para as informações armazenadas na tabela. Quase todos os sites de e-commerce usa bancos de dados para armazenar estoque de produtos e informações do cliente. Estes sites utilizam um sistema de gerenciamento de banco de dados (ou SGBDs), como o Microsoft Access, FileMaker Pro, ou MySQL como o "back-end" para o site. Ao armazenar dados de sites em um banco de dados, os dados podem ser facilmente pesquisados, ordenados e atualizados. Esta flexibilidade é importante para sites de comércio eletrônico e outros tipos de sites dinâmicos. Bancos de dados iniciais eram relativamente "flat", que significa que eles eram limitados à linhas e colunas simples, como uma planilha. No entanto, bancos de dados relacionais de hoje permitem aos usuários acessar, atualizar e procurar informações com base na relação de dados armazenados em tabelas diferentes. Bancos de dados relacionais também pode executar consultas que envolvem vários bancos de dados. Enquanto bancos de dados iniciais só poderia armazenar textos ou dados numéricos, bancos de dados modernos também permitem que os usuários armazenem outros tipos de dados, como clipes de som, imagens e vídeos[1].

Entretanto, os Bancos de Dados, há poucas décadas atrás, eram utilizados apenas por grandes instituições. O seu uso era restrito aos grandes negócios, onde simplesmente seria impossível a operação de certas indústrias ou empresas. Com a popularização e barateamento da plataforma IBM/PC, logo surgiram programas aplicativos

para algum tipo de armazenamento de dados. Antes desses equipamentos e softwares tornarem-se acessíveis, muitas vezes eram utilizadas fichas cadastrais para armazenar dados de clientes em pequenos e médios negócios (essas fichas e armários de fichários são ainda hoje utilizados em alguns locais). Atualmente os bancos de dados estão por toda parte, desde a farmácia da esquina até a lojinha do posto de gasolina.

Um banco de dados normalmente agrupa informações utilizadas para um mesmo fim. Um banco de dados é usualmente mantido e acessado por meio de um software conhecido como Sistema Gerenciador de Banco de Dados (SGBD).

Sistema de Gerenciamento de Banco de Dados são um conjunto de programas que fazem uma gestão autônoma da informação, de acordo com um modelo preestabelecido e adaptado à empresa ou qualquer outro órgão que os utilizem [2].

Banco de Dados e Sistema Gerenciador de Banco de Dados.

Como já foi mencionado, Banco de Dados é uma coleção de dados inter-relacionados e logicamente coerente, representando informações sobre um domínio específico. Uma das vantagens do Banco de Dados é permitir a centralização dos dados deixando a consulta de dados mais rápida e eficiente. Além disso, evita a redundância ou a duplicidade descontrolada de dados. Dos diversos tipos de bancos de dados há cinco principais, entre eles, os bancos de dados Hierárquicos que representam os dados formando uma estrutura de árvore configurando como uma hierarquia de registro de dados. Há também, o Banco de Dados De Rede que organiza os dados como registros vinculados uns com os outros, agrupando conjuntos de dados comuns, entre outros.

Já o SGBD é um software com recursos específicos para facilitar o processo de definição, construção, manipulação e o gerenciamento das

informações dos bancos de dados e o desenvolvimento de programas aplicativos [3].

Exemplos de Banco de Dados:Agenda Telefônica Atlas Geográfico Cadastro de Fornecedores Lista de Pedidos; Fichas do acervo

de uma biblioteca; Exemplos de SGBD: Oracle; PostgreSQL; SQL Server;

MySQL; HSQLDB; Paradox; FireBird/A linguagem SQLA SQL é a linguagem padrão para se

lidar com bancos de dados relacionais, e é aceita por quase todos os produtos existentes no mercado. A SQL foi desenvolvida originalmente na IBM Research no início da década de 1970. Ela foi implementada pela primeira vez em grande escala em um protótipo da IBM chamado System R, e reimplementada depois disso em numerosos produtos comerciais da IBM e de muitos outros fornecedores.

para o padrão atual; a ratificação era esperada para o final de 1999. Em sua forma original, a SQL pretendia ser especificamente uma “sublinguagem de dados”. Porém, com a incorporação do recurso de Módulos Armazenados Persistentes (PSM — Persistent Stored Modules) ao padrão no final de 1996, a SQL se tornou completa em termos computacionais que combinar com alguma linguagem hospedeira distinta para se desenvolver uma aplicação completa[4].

Portanto, Tudo que se diz respeito a informação, principalmente quando se trata de muita informação, deve está dentro de um banco de dados. Devido a estes fatores, ter conhecimentos sobre banco de dados é muito importante, principalmente para uma empresa, cujo banco de dados é o coração do sistema, por isso tem que funcionar rapidamente e com segurança.

Referências7. RAMEZ Elmasri, SHAMKANT Navathe; The

Benjamin Fundamentals of Database Systems; CummingsPublishing Company; 1989;

Page 5: Trabalho LP

8. DATE, C. J. Introdução a sistemas de bancos de dados. Rio de Janeiro: Campus, 2000.

9. ALVES, W.P. Fundamentos de Bancos de Dados. Editora Érica, 2004.

10. Oliveira, Celso Henrique Poderoso de . SQL Curso Prático. Editora Novatec. São Paulo, 2002.