Buscar

Visão geral das linguagens de programação web

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 57 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 57 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 57 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Ambiente para 
Desenvolvimento Web
Unidade 4
Visão geral das linguagens 
de programação web 
Diretor Executivo
DAVID LIRA STEPHEN BARROS
Gerente Editorial
CRISTIANE SILVEIRA CESAR DE OLIVEIRA
Projeto Gráfico
TIAGO DA ROCHA
Autoria
HENRIQUE SENA
LEANDRO C. CARDOSO
AUTORIA
Henrique Sena 
Sou formado em Desenvolvimento de Software e em Sistemas para 
internet. Iniciei minha carreira profissional utilizando e desenvolvendo 
aplicações em plataformas open-source voltadas para educação a 
distância. Não demorou muito para ter minhas primeiras experiências 
como professor em cursos presenciais, atividade na qual fiquei muito 
satisfeito com os resultados obtidos. Sou analista de websites e consultor 
de EAD, com mais de 12 anos de carreira, administro sistemas educacionais 
para ensino a distância e sou professor de cursos técnicos presenciais. 
Passei por empresas como a UNINASSAU, Faculdade Joaquim Nabuco, 
Porto Digital, Ogilvy & Mather, Lunes Comunicação e Ricardo Alexandre 
Cursos On-line. Sou apaixonado pelo que faço e adoro transmitir minha 
experiência de vida àqueles que estão iniciando em suas profissões. 
Por isso fui convidado pela Editora Telesapiens a integrar seu elenco de 
autores independentes. Conte comigo!
Leandro C. Cardoso 
Possuo graduação em Comunicação Social com habilitação em 
Design Digital e mestrado em Tecnologias da Inteligência e Design Digital 
pela PUC-SP, com experiência em direção de arte e criação na área com 
mais de 20 anos. Passei por empresas como a Laureate International 
Universities – FMU, FIAM-FAAM, Universidade Anhembi Morumbi e o 
Centro Paula Souza (FATEC-ETEC). Na Laureate EAD atuei como analista 
de Desenvolvimento Pedagógico Sênior e como coordenador de Curso 
Técnico de Comunicação Visual no Centro Paula Souza. Fui revisor técnico 
e validador de Curso EAD para Clientes Laureate International Universities, 
DeVry Brasil, UNEF, FAESF, Faculdade Positivo, Uninter, Platos Soluções 
Educacionais S.A. (Kroton – Universidade Anhaguera). Sou autor de mais 
de 10 livros didáticos e um dos organizadores da Maratona de Criação 
e Design do Curso de Comunicação Visual da ETEC Albert Einstein. Sou 
apaixonado pelo que faço e adoro transmitir minha experiência de vida 
àqueles que estão iniciando em suas profissões. Por isso fui convidado 
pela Editora Telesapiens a integrar seu elenco de autores independentes. 
Estou muito feliz em poder ajudar você nesta fase de muito estudo e 
trabalho. Conte comigo!
ICONOGRÁFICOS
Olá. Esses ícones irão aparecer em sua trilha de aprendizagem toda vez 
que:
OBJETIVO:
para o início do 
desenvolvimento de 
uma nova compe-
tência;
DEFINIÇÃO:
houver necessidade 
de se apresentar um 
novo conceito;
NOTA:
quando forem 
necessários obser-
vações ou comple-
mentações para o 
seu conhecimento;
IMPORTANTE:
as observações 
escritas tiveram que 
ser priorizadas para 
você;
EXPLICANDO ME-
LHOR:algo precisa 
ser melhor explicado 
ou detalhado;
VOCÊ SABIA?
curiosidades e 
indagações lúdicas 
sobre o tema em 
estudo, se forem 
necessárias;
SAIBA MAIS:textos, 
referências biblio-
gráficas e links para 
aprofundamento do 
seu conhecimento;
REFLITA:
se houver a neces-
sidade de chamar a 
atenção sobre algo 
a ser refletido ou dis-
cutido sobre;
ACESSE:se for pre-
ciso acessar um ou 
mais sites para fazer 
download, assistir 
vídeos, ler textos, 
ouvir podcast;
RESUMINDO:
quando for preciso 
se fazer um resumo 
acumulativo das últi-
mas abordagens;
ATIVIDADES:quando 
alguma atividade de 
autoaprendizagem 
for aplicada;
TESTANDO:
quando o desen-
volvimento de uma 
competência for 
concluído e questões 
forem explicadas;
SUMÁRIO
PHP .................................................................................................................... 12
Hypertext Preprocessor .............................................................................................................. 12
Como exibir o código PHP ........................................................................................................ 18
Noções de máquinas virtuais .................................................................26
Máquinas virtuais .............................................................................................................................26
Utilidades das máquinas virtuais .........................................................................................28
Noções de Java ............................................................................................34
Primeiros passos em JAVA .......................................................................................................34
A arquitetura de aplicação ...................................................................................................... 39
O API da Java ..................................................................................................................................... 40
C#.net ............................................................................................................... 47
Sobre a linguagem .........................................................................................................................47
Características da linguagem ................................................................................................ 49
9
UNIDADE
04
Ambiente para Desenvolvimento Web
10
INTRODUÇÃO
Você sabia que, com o conhecimento nas linguagens PHP, JAVA, 
C# e máquinas virtuais, habilita um profissional para criar os primeiros 
projetos no ambiente de desenvolvimento para web? Isso mesmo. Por 
ser as linguagens mais usadas entre os desenvolvedores web PHP 
(Hypertext Preprocesso), Java e C#, além também do uso de máquinas 
virtuais durante o desenvolvimento de um sistema para a web. Dessa 
forma, é importante conhecer como exibir o código PHP (Hypertext 
Preprocesso), noções dos primeiros passos em Java, sua arquitetura 
de aplicação e o API da Java. Entendeu? Ao longo desta unidade letiva 
você vai mergulhar neste universo!
Ambiente para Desenvolvimento Web
11
OBJETIVOS
Olá. Seja muito bem-vindo à Unidade 4. Nosso objetivo é auxiliar 
você no desenvolvimento das seguintes competências profissionais até o 
término desta etapa de estudos:
1. Interpretar os conceitos básicos sobre a linguagem de 
programação para Internet PHP (Hypertext Preprocessor) e suas 
diversas aplicações, aspectos e bibliotecas.
2. Comprender o funcionamento das máquinas virtuais, suas 
principais funcionalidades e utilidades para programadores e 
usuários.
3. Reconhecer os principais fundamentos da linguagem Java, 
entendendo as regras de sintaxe e o paradigma de programação 
orientada a objetos (OOP).
4. Discernir sobre a potencialidade e características da linguagem de 
programação C#.
Ambiente para Desenvolvimento Web
12
PHP
OBJETIVO:
Ao término deste capítulo, você será capaz de compreender 
os conceitos básicos sobre a linguagem de programação 
para Internet PHP ou Hypertext Preprocessor, e as diversas 
aplicações, conhecendo seus principais aspectos e 
bibliotecas. Isto será fundamental para o exercício de 
sua profissão. E então? Motivado para desenvolver esta 
competência? Então vamos lá. Avante!
Hypertext Preprocessor
Para iniciarmos o aprendizado nessa linguagem de programação, 
precisamos primeiro entender o que é o PHP, um acrônimo que significa 
Hypertext Preprocessor. Corresponde a uma linguagem de script de código 
aberto ou open source, como é bastante comum entre os programadores, 
é muito utilizada especialmente para o desenvolvimento na internet 
(MILETTO; BERTAGNOLLI, 2014).
 • Acrônimo: palavra formada pela inicial ou por mais de uma letra 
de cada um dos segmentos sucessivos de uma locução, ou pela 
maioria dessas partes. 
 • Preprocessor: pré-processador.
 • Hypertext: significa hipertexto, um termo que remete a um texto, 
no qual são agregados outros conjuntos de informação naforma 
de blocos de textos, palavras, imagens ou sons, cujo acesso se dá 
por meio de referências específicas, no meio digital, denominadas 
hiperligacões (SENA, 2017).
Ambiente para Desenvolvimento Web
13
Figura 1 – PHP é uma linguagem de script de código aberto ou open source, 
utilizada especialmente para o desenvolvimento na internet
Fonte: Freeeeeepik
Vamos começar com um exemplo de código escrito, utilizando a 
linguagem de PHP:
<!DOCTYPE HTML>
<html>
<head>
<title>Exemplo</title>
</head>
<body>
<?php
echo “Olá, eu sou um script PHP!”;
?>
</body>
/html>
Ambiente para Desenvolvimento Web
14
Como o PHP apenas funciona no lado do servidor, você só poderá 
ver os resultados do seu script se estiver em um ambiente de host, para 
uma melhor compreensão de nossos exemplos é recomendado que você 
realize o download de algum aplicativo de host. Um aplicativo que pode 
ser utilizado é o Xampp, mas você pode escolher qualquer outro que seja 
semelhante e tenha a mesma finalidade, para isso você basta pesquisar 
programas open source.
ACESSE:
Você pode encontrar o link para download do Xampp no 
endereço clicando aqui.
Utilizando o Xampp como exemplo, depois de baixar e instalar, 
ative-o em seu diretório principal de execução, você pode inserir o arquivo 
com o script que você criou na pasta “HTDOCS”. Em geral, para acessar o 
serviço iniciado, você precisa abrir o navegador e digitar http://localhost, 
podendo seguir as instruções do próprio aplicativo instalado.
Figura 2 – O PHP apenas funciona no lado do servidor e só poderá ver os resultados do seu 
script se estiver em um ambiente de host
Fonte: Freepik
Ambiente para Desenvolvimento Web
https://www.apachefriends.org/pt_br/index.html
15
Como devemos escrever o código PHP, a linguagem é delimitada 
pelas instruções de processamento (tags) de início e fim <?php ?>.
Exemplo:
<?php 
 echo “Olá mundo!”;
 ?> FIM
Vamos aprender como declarando uma variável em PHP, que 
começa com o sinal $, seguido do nome da variável:
Exemplo:
<?php
$txt = “Olá Mundo!”;
$x = 5;
$y = 10.5;
?>
Logo após a execução das afirmações acima, a variável $txt irá 
internalizar o valor “Olá Mundo!”. A variável $x vai conter o valor 5, e a 
variável $y vai conter o valor de 10,5.
IMPORTANTE:
Quando você atribui um valor de texto a uma variável, 
colocar aspas em torno do valor, ao contrário de outras 
linguagens de programação, PHP não tem comando para 
declarar uma variável, ele é criado o primeiro momento que 
você atribuir um valor a ela.
Uma variável pode ter um nome curto (como x e y) ou um nome 
mais descritivo (idade, nome, total, volume), veja a seguir regras para 
variáveis PHP:
 • Uma variável começa com o sinal $, seguido do nome da variável.
 • Um nome de variável deve começar com uma letra ou o caractere 
sublinhado.
Ambiente para Desenvolvimento Web
16
 • Um nome de variável não pode começar com um número.
 • Um nome da variável pode conter apenas caracteres e sublinhados 
alfanuméricos (AZ, 0-9, e _).
 • Os nomes das variáveis são case-sensitive ($ idade e $ AGE são 
duas variáveis diferentes).
Agora, vamos conhecer as variáveis de saída, a declaração echo do 
PHP é frequentemente usado para dados de saída para a tela.
Figura 3 – Uma variável PHP pode ter um nome curto ou um nome mais descritivo
Fonte: Freepik
O exemplo a seguir mostrará como texto de saída e uma variável:
Exemplo:
<?php
$txt = “google.com”;
echo “Eu uso o $txt!”;
?>
Agora, vamos falar um pouco sobre os detalhes da linguagem PHP, 
no qual é fracamente tipada, ou seja, o PHP não se importa com o tipo de 
dados contido em uma variável, permite que o programador não tenha de 
executar conversões de tipos (cast). O PHP converte automaticamente a 
variável para o tipo de dados corretos, dependendo do seu valor, já em 
outras linguagens como C, C++ e Java, o programador deve declarar o 
nome e o tipo da variável antes de usá-lo.
Ambiente para Desenvolvimento Web
17
Figura 4 – Em outras linguagens, que não seja PHP como C, C++ e Java, 
o programador deve declarar o nome e o tipo da variável antes de usá-lo
Fonte: Freepik
Tipos de variáveis em PHP:
 • boolean.
 • integer.
 • float (número de ponto flutuante, ou também double).
 • string.
Três tipos compostos:
 • array.
 • object.
 • callable.
E, finalmente, dois tipos especiais:
 • resource.
 • NULL.
As variáveis PHP Âmbito podem ser declaradas em qualquer lugar 
do script, o âmbito de uma variável é a parte do script em que a variável 
pode ser referenciada/usada, sendo que PHP tem três escopos de 
variáveis diferentes, Local, Global e Estático.
Ambiente para Desenvolvimento Web
18
Como exibir o código PHP
No PHP existem duas maneiras básicas para obter uma saída: echo 
e print. Iniciaremos utilizando o echo em quase todos os exemplos para 
visualizarmos o que estamos criando em nossos códigos PHP. O echo 
simplesmente imprime declarações PHP, sendo echo e print similares, 
ambos são usados para dados de saída para a tela. As diferenças são 
pequenas: echo não tem valor de retorno, enquanto print tem um valor de 
retorno de 1 para que ele possa ser usado em expressões, e echo pode levar 
vários parâmetros (embora tal uso é raro). Enquanto print pode levar um 
argumento, echo é ligeiramente mais rápido do que de print, a declaração 
echo pode ser usada com ou sem parênteses: echo ou echo () exibição de 
texto. O exemplo a seguir mostra como saída de texto com o comando 
echo, nesse comando podemos incluir marcação HTML (LAWSON, 2012).
Exemplo:
<?php
echo “<h2>PHP é diversão!</h2>”;
echo “Olá, Mundo!<br>”;
echo “Estou prestes a aprender PHP!<br>”;
echo “Este “,” string “,” was “,” made “,” com vários parâmetros.”;
?>
A declaração de print pode ser usado com ou sem parênteses: print 
ou print (). Assim, no exemplo a seguir podemos ver como texto de saída 
com o comando de print, note que ele também pode conter marcações 
em HTML. Exemplo:
<?php
print “<h2>PHP é bom!</h2>”;
print “Olá, Mundo!<br>”;
print “Estou prestes a aprender PHP!”;
?>
Vejamos mais um exemplo.
Ambiente para Desenvolvimento Web
19
 <?php
 $txt1 = “Aprender PHP”;
 $txt2 = “google.com”;
 $x = 5;
 $y = 4;
 print “<h2>” . $txt1 . “</h2>”;
 print “Estude PHP em “ . $txt2 . “<br>”;
Vamos aprender um pouco mais sobre os diversos tipos de variáveis 
que podem armazenar dados de diferentes tipos, pois podem fazer coisas 
variadas. PHP suporta os seguintes tipos de dados:
 • String.
 • Integer.
 • Float (números de ponto flutuante - também chamado duplo).
 • Boolean.
 • Array.
 • Object.
 • NULL.
 • Resource.
Uma string é uma sequência de caracteres, como “Olá, mundo!”.
A cadeia pode ser qualquer texto dentro de aspas. Você pode usar 
aspas simples ou duplas:
<?php 
$x = “Hello world!”;
$y = ‘Hello world!’;
echo $x;
echo “<br>”; 
echo $y;
?>
Ambiente para Desenvolvimento Web
20
Regras para números inteiros:
 • Um inteiro deve ter pelo menos um dígito.
 • Um inteiro não deve ter um ponto decimal.
 • Um inteiro pode ser positivo ou negativo.
 • Inteiros podem ser especificados em três formatos: decimal (10 
baseado-), hexadecimal (16-base - prefixado com 0x) ou octal (8-
base - o prefixo 0).
No seguinte exemplo, $ x é um número inteiro, a função PHP var_
dump () retorna o tipo de dados e o valor.
Exemplo:
<?php 
$x = 5985;
var_dump($x);
Um float ou flutuador (número de ponto flutuante) é um número 
com um ponto decimal ou um número na forma exponencial. No exemplo 
a seguir, $ x é um float. A função PHP var_dump () retorna o tipo de dados 
e o valor:
Exemplo:
<?php 
$x = 10.365;
var_dump($x);
?>
Um valor booleano representa dois estados possíveis: verdadeiro 
ou falso.
$x = true;
$y = false;
Ambiente para Desenvolvimento Web
21
Booleans são muitas vezes utilizados em testes de condicional, 
uma matriz armazena vários valores em uma única variável, no exemplo a 
seguir $ carros é umamatriz. A função PHP var_dump () retorna o tipo de 
dados e o valor:
Exemplo:
<?php 
$cars = array(“Volvo”,”BMW”,”Toyota”);
var_dump($cars);
?>
Um objeto é um tipo de dados que armazena os dados e 
informações sobre como processar os dados, em PHP, um objeto deve 
ser declarado explicitamente. Primeiro, devemos declarar uma classe de 
objeto, para isso usamos a palavra-chave classe, uma estrutura que pode 
conter propriedades e métodos:
Exemplo:
<?php
class Car {
function Car() {
$this->model = “VW”;
}
}
// Criando objeto 
$herbie = new Car();
// Vendo as propriedades do objeto
echo $herbie->model;
?>
Null é um tipo de dados especial que pode ter apenas um valor, uma 
variável do tipo de dados NULL não tem nenhum valor atribuído a ele.
Ambiente para Desenvolvimento Web
22
Exemplo:
<?php
$x = “Olá, mundo”;
$x = null;
var_dump($x);
?>
O tipo de recurso especial não é um tipo de dados real, é o 
armazenamento de uma referência às funções e aos recursos externos 
para PHP, um exemplo comum de usar o tipo de dados de recursos é 
uma chamada de banco de dados. Agora, aprofundaremos um pouco 
mais nosso conhecimento sobre os principais tipos de compostos, 
conheceremos o Array.
DEFINIÇÃO:
Array é uma matriz, ou simplesmente uma variável especial, 
que pode conter mais de um valor de cada vez.
Por exemplo, caso tenha uma lista de itens (a lista de nomes de 
carro, por exemplo), armazenando os carros em variáveis individuais da 
seguinte forma:
 • $cars1 = “Volvo”.
 • $cars2 = “BMW”.
 • $cars3 = “Toyota”.
No entanto, o que se quer é percorrer os carros e encontrar um 
específico, correto? E se você não tiver 3 carros, mas sim 300? A solução 
é criar uma matriz! Ela pode conter muitos valores sob um único nome, e 
você pode acessar os valores por referência a um número de índice.
Para criar uma matriz em PHP, a função de matriz () é usada para 
criar uma matriz: array(), em PHP, existem três tipos de matrizes:
 • Matrizes indexadas - Arrays com um índice numérico.
Ambiente para Desenvolvimento Web
23
 • Arrays associativos - Arrays com chaves nomeadas.
 • As matrizes multidimensionais – matrizes contendo uma ou mais 
matrizes.
Existem duas maneiras de criar as matrizes indexadas, o índice 
pode ser atribuído automaticamente (índice sempre começa em 0), 
como este: $cars = array(“Volvo”, “BMW”, “Toyota”). Com o nosso próximo 
exemplo, você será capaz de criar uma matriz indexada chamada $ 
carros, atribuindo três elementos a ele, e em seguida, imprimir um texto 
contendo os valores da seguinte matriz.
Exemplo:
<?php
$cars = array(“Volvo”, “BMW”, “Toyota”);
echo “I like “ . $cars[0] . “, “ . $cars[1] . “ and “ . $cars[2] . “.”;
?>
Esses são os exemplos iniciais que você deve aprender para criar 
aplicações básicas em PHP, conheceremos um pouco mais sobre funções 
em PHP, o verdadeiro poder dele vem de suas funções, pois podemos 
ter mais de 1000 funções embutidas. Como por exemplo PHP User 
Defined Functions ou funções definidas pelo usuário, além das funções 
PHP, podemos criar nossas próprias funções, uma função é um bloco 
de instruções que podem ser usados repetidamente em um programa. 
A função não será executada imediatamente quando uma página é 
carregada, mas por uma chamada para a função, cuja sintaxe é:
 • Sintaxe
function functionName() {
code to be executed;
}
O nome que você deve definir para uma função pode começar com 
uma letra ou sublinhado (não um número), geralmente, se dá a uma função, 
um nome que reflete o que ela irá realizar. No exemplo a seguir, criamos 
Ambiente para Desenvolvimento Web
24
uma função chamada “writeMsg ()”, a chave de abertura encaracolado ({) 
indica o início do código de função e a chave de fechamento (}) indica o 
fim da função. A função de saídas “Olá, mundo!” para chamar a função, 
basta escrever o nome declarado. Exemplo:
<?php
function writeMsg() {
echo “Olá, mundo!”;
}
writeMsg(); // call the function
?>
Informações podem ser passadas para funções por meio de 
argumentos, que são como uma variável, são especificados após o 
nome da função, dentro dos parênteses. Você pode adicionar quantos 
argumentos quiser, basta separá-los com uma vírgula. Exemplo:
<?php
function familyName($fname) {
echo “$fname Refsnes.<br>”;
}
familyName(“Jani”);
familyName(“Hege”);
familyName(“Stale”);
familyName(“Kai Jim”);
familyName(“Borge”);
?>
O exemplo tem uma função com um argumento ($ fname). A função 
familyName () é chamada, também pode passar ao longo de um nome 
(por exemplo, Jani), e o nome é usado dentro da função, que geram vários 
diferentes nomes, mas um sobrenome igual.
Ambiente para Desenvolvimento Web
25
RESUMINDO:
E, então? Gostou do que lhe mostramos? Aprendeu 
mesmo tudinho? Agora, só para termos certeza de que 
você realmente entendeu o tema de estudo deste capítulo, 
vamos resumir tudo o que vimos. Você deve ter aprendido 
que realizando um comparativo rápido com outras 
linguagens de programação, o código PHP é executado 
no servidor, sendo enviado para o cliente apenas o HTML 
(HyperText Markup Language) ou Linguagem de Marcação 
de Hipertexto) limpo, puro de PHP. Dessa maneira, é possível 
interagir com bancos de dados e aplicações existentes no 
servidor com a vantagem de não expor o código fonte (a 
lógica) para o cliente. Com o PHP, é possível coletar dados, 
criar páginas dinamicamente, enviar e receber cookies com 
informações, gerar relatórios e mais uma infinidade de 
aplicações.
Ambiente para Desenvolvimento Web
26
Noções de máquinas virtuais
OBJETIVO:
Ao término deste capítulo, você será capaz de entender 
o que são máquinas virtuais, por meio das suas principais 
funcionalidades e por que que são úteis para a profissão 
de programador e, até como elas são utilizadas por 
pessoas que não desejam programar e só querem uma 
segunda opção. Isto será fundamental para o exercício de 
sua profissão. E então? Motivado para desenvolver esta 
competência? Então, vamos lá. Avante!
Máquinas virtuais
Ao contrário das máquinas que estamos habituados a ver em 
nossas casas, nos cafés, em instituições de ensino, as máquinas virtuais 
não possuem uma representação física. Na verdade, para uma máquina 
virtual existir, será necessário que uma máquina física, a “hóspede”, mas 
não é como se essa máquina virtual fosse se materializar.
DEFINIÇÃO:
Uma máquina virtual é um software programado para 
representar todas as funcionalidades de uma máquina 
física. Uma máquina virtual é uma “duplicata” de uma 
máquina real, ela possui um sistema operacional a parte, 
assim como suas próprias funcionalidades. É como se 
existe um computador dentro de outro computador.
Para facilitar o entendimento, imagine que você tem um computador 
real, um desktop que possui um sistema operacional Windows, e você 
deseja testar o Linux sem utilizar o dual boot para isso, como você irá 
fazer? Simples, basta instalar uma máquina virtual que tenha como sistema 
operacional o Linux, essa máquina estará inserida dentro da máquina real, 
mas será independente desta.
Ambiente para Desenvolvimento Web
27
SAIBA MAIS:
Mais informações e esclarecimento de dúvidas sobre o que 
é uma máquina virtual? Acesse essa definição dada pela 
Microsoft clicando aqui.
Quando está rodando, a máquina virtual demanda uma quantidade X 
de memória RAM, o que deve ser levado em consideração no momento de 
emular, você deverá observar se seu computador possui uma boa memória. 
Também é importante que o computador tenha suporte para dois sistemas 
distintos rodando ao mesmo tempo, caso ele não suporte, você poderá 
perder dados e ocasionar diversas falhas em ambos os sistemas.
Figura 5 – Na execução da máquina virtual, a demanda 
de memória RAM deve ser levada em consideração
Fonte: Freepik
Não compreendeu o seu funcionamento? Vamos explicar melhor. 
Imagine que você possui um computador antigo com 16 GB de memória 
RAM, e o sistema operacional de sua máquinaseja Windows, esse sistema 
ocupa 1 GB de sua memória ao ser rodado, mas, digamos que você deseja 
rodar o Linux nesta mesma máquina, como você irá fazer? Você deve baixar 
um programa de emular, e esse programa irá rodar o Linux, enganando 
o sistema, achando que é o principal, mas na verdade funciona apenas 
virtualmente, pegando apenas 500 MB da memória RAM.
Ambiente para Desenvolvimento Web
https://azure.microsoft.com/pt-br/overview/what-is-a-virtual-machine/
28
Utilidades das máquinas virtuais
As máquinas virtuais são consideradas excelentes aliadas dos 
programadores e interessados, sendo quase que indispensáveis para um 
resultado bom e ágil de seu trabalho.
Figura 6 – As máquinas virtuais são ótimas ferramentas para programadores sendo 
praticamente indispensáveis para um resultado bom e ágil de seu trabalho
Fonte: Freepik
As máquinas podem servir para:
 • Para uso educacional, as máquinas são boas ferramentas para 
ensinar o básico do sistema sem que corrompa o sistema principal, 
garantindo assim a segurança. 
 • Ainda para uso educacional, essa ferramenta pode ser utilizada 
para dar exemplos de screenshots mais reais e precisos.
 • O programador pode utilizar a máquina para testar uma 
nova distribuição de um sistema livre, por exemplo, sem que 
comprometa o sistema operacional principal.
 • A máquina virtual possibilita a facilidade de programação em 
diferentes sistemas operacionais, criando assim uma gama maior 
de possibilidades para o profissional da programação.
 • Essas máquinas oferecem um reset mais rápido e com menos 
perca de arquivos, caso seja inesperado, já que os arquivos em 
regra estarão alocados na máquina principal.
Ambiente para Desenvolvimento Web
29
 • Testar o mesmo programa em diferentes sistemas operacionais 
a fim de avaliar o seu desempenho e possíveis aparecimentos de 
bugs.
 • Máquinas virtuais são muito mais compactas que máquinas 
físicas, já que não possuem, de fato, forma física, elas podem ser 
transferidas e copiadas de acordo com a vontade e necessidade 
de quem esteja usando.
 • Sendo uma ferramenta bem mais simples que particionar o disco, 
essas máquinas permitem criar diversas funcionalidades dentro 
de um mesmo computador.
Observou alguns dos pontos falados acima? Viu que as máquinas 
são grandes aliadas da segurança de seu computador? A máquina virtual, 
em diferentes possibilidades, pode salvaguardar o seu computador e 
seus dados, não compreendeu? Entenderemos melhor a seguir: imagine 
que você trabalhe com testes de segurança e precisa testar um vírus que 
possui pouca informação, você preferiria fazer esse teste em uma máquina 
real ou em uma virtual? Por meio de certos aplicativos, é possível “isolar” 
a máquina virtual, tornando-a “segura” para testar vírus, mas lembre-se 
existem vírus que conseguem vasculhar toda uma rede de computadores, 
por isso, fique atento antes de realizar qualquer teste!
Figura 7 – A máquina virtual possibilita a facilidade 
de programação em diferentes sistemas operacionais
Fonte: Freepik
Ambiente para Desenvolvimento Web
30
Vimos que essas máquinas são criadas para que possamos rodar 
diferentes aplicativos ao mesmo tempo, e um grande benefício desta 
máquina é a otimização de segurança desses aplicativos em cada sistema 
operacional.
SAIBA MAIS:
Para saber mais sobre máquinas e segurança, acesse a 
matéria do G1 clicando aqui.
A segurança pode ser, para você, um fator decisivo na escolha 
de que máquina virtual e ainda, se vai usar uma máquina virtual, por 
isso, pesquise mais sobre o assunto, e lembre-se, qualquer ambiente é 
seguro se usado com cautela, lembre-se de sempre observar o que está 
instalando em ambas as máquinas assim como sua procedência.
SAIBA MAIS:
Para saber mais sobre a segurança nas máquinas virtuais, 
acesse o artigo Hypervisor: Segurança em ambientes 
virtualizados clicando aqui.
Agora que já compreendemos um pouco sobre as máquinas virtuais, 
conheceremos alguns exemplos também chamados de emuladores, 
lembre-se, não existe a melhor máquina virtual, existe o programa o ideal 
para cada projeto e também o que você tem mais familiaridade no uso.
Figura 8 – As máquinas virtuais também são chamadas de emuladores
Fonte: Freepik
Ambiente para Desenvolvimento Web
http://g1.globo.com/Noticias/Tecnologia/0,,MUL1252543-6174,00-SAIBA+O+QUE+SAO+MAQUINAS+VIRTUAIS+E+COMO+ELAS+AJUDAM+NA+SEGURANCA+DO+PC.html
http://www.devmedia.com.br/hypervisor-seguranca-em-ambientes-virtualizados/30993
31
Na computação, um emulador é um software que reproduz as 
funções de um determinado ambiente, a fim de permitir a execução de 
outros softwares sobre ele. Pode ser pela transcrição de instruções de 
um processador alvo para o processador no qual ele está rodando, ou 
pela interpretação de chamadas para simular o comportamento de um 
hardware específico. Um exemplo é a VirtualBox, rodando em Windows, 
Linux e no sistema operacional da Apple, é um software completamente 
grátis e roda em máquinas mais simples, sem que precise de uma 
configuração específica para isso. Criado pela Oracle, esse programa 
permite que você baixe e rode diferentes tipos de sistemas operacionais 
dentro de outros sistemas, por exemplo, é possível que você instale o 
Android em sua máquina virtual e ele rode normalmente, mesmo sendo 
um sistema operacional para smartphone, esse sistema não irá afetar em 
nada o sistema operacional que está instalado em sua máquina.
ACESSE:
Para fazer o download desse programa e começar a 
descobrir suas facilidades, clique aqui.
É um programa de fácil download e instalação, sendo intuitivo para 
o usuário e podendo ser instalado por meio do instalador padrão do seu 
sistema operacional. Após a instalação, é possível fazer o download de 
extensões, basta saber qual é a sua necessidade.
SAIBA MAIS:
Para entender melhor como se instala esse programa, 
acesse o tutorial criado pelo site Techtudo, clicando aqui.
Já a Windows Virtual PC, e atualmente Azure Virtual Machines, 
limitado apenas ao sistema operacional Windows, o Windows Virtual PC 
é um software desenvolvido pela Microsoft e gratuito, mas, como visto, é 
limitado, ele é leve e bem intuitivo e roda diversos PCS virtuais ao mesmo 
tempo, sendo possível rodar diversas aplicações em cada um, o que é um 
atrativo para quem usa essa ferramenta.
Ambiente para Desenvolvimento Web
https://www.virtualbox.org/
http://www.techtudo.com.br/dicas-e-tutoriais/noticia/2013/03/descubra-como-instalar-o-virtualbox-e-seu-pacote-de-extensoes-e-facil.html
32
Nas suas versões anteriores, denominada como Windows Virtual 
PC, os requisitos básicos para que o programa rode são:
 • Processador: para que o Virtual PC rode corretamente os 
processadores básicos são: Intel®, AMD® e VIA® que têm 
capacidade de rodar a virtualização assistida por hardware, tendo 
a necessidade de a configuração ser ativada no BIOS.
 • Memória: o mínimo recomendável para rodar a máquina virtual é 
2 GB de memória.
 • Requisito do disco rígido: o espaço mínimo recomendado para o 
Virtual PC é de 20 MB no disco rígido para a instalação do mesmo.
SAIBA MAIS:
Para mais informações sobre o funcionamento das versões 
atuais, acesse aqui. QEMU como o Virtual PC é limitado 
apenas para Windows, o QEMU tem a mesma limitação 
para Linux, e possui todos os benefícios que esse sistema 
operacional livre oferece, sendo uma ferramenta que 
funciona conforme o sistema e dá uma certa liberdade de 
acesso para o usuário que a utiliza. Por ser um software livre 
e gratuito, ele pode ser considerado um dos “queridinhos” 
dos programadores, tendo opções de emular todo um 
sistema operacional diferente, quanto apenas um usuário. 
Para mais informações desse programa, basta acessar 
aqui. É importante salientar que os sistemas operacionais 
se atualizam constantemente, desta maneira, é essencial 
sempre estar atualizados das opções das máquinas virtuais. 
Nos quais, apenas foram exemplificadas,os recursos 
podem ser descontinuados ou mesmo otimizados nas 
atualizações, é importante sempre buscar informações nos 
sites dos desenvolvedores. Por fim, é importante considerar 
que o hipervisor é o assistente que cuida de todas as 
máquinas virtuais, também considerado como monitor de 
máquinas virtuais. Além de que, os projetos de sistemas 
operacionais admitem várias e diferentes organizações de 
estrutura internas, nos quais encontram-se monolíticas, 
modelo cliente-servidor e máquinas virtuais.
Ambiente para Desenvolvimento Web
https://azure.microsoft.com/pt-br/free/virtual-machines/
https://www.qemu.org/
https://www.qemu.org/
33
RESUMINDO:
E então? Gostou do que lhe mostramos? Aprendeu mesmo 
tudinho? Agora, só para termos certeza de que você 
realmente entendeu o tema de estudo deste capítulo, vamos 
resumir tudo o que vimos. Você deve ter aprendido que 
máquinas virtuais são grandes aliadas dos programadores 
e as pessoas que desejam ter uma segunda opção de 
sistema operacional e de configuração. As máquinas 
conseguem auxiliar os projetos dos programadores, 
desta maneira, é importante conhecer quais são as suas 
principais características, observando assim suas principais 
funcionalidades no ambiente web. Esses arquivos se 
comportam como um segundo computador, independente 
da configuração do “computador principal”, são ferramentas 
que são utilizadas, em sua maioria, por programadores, 
o que não é impeditivo de pessoas que desejam por 
inúmeros motivos, instalarem e configurarem uma.
Ambiente para Desenvolvimento Web
34
Noções de Java
OBJETIVO:
Ao término deste capítulo, você será capaz de 
compreender os principais fundamentos de linguagem 
Java. Você entenderá regras de sintaxe e paradigma de 
programação que se baseia no conceito de OOP, recursos 
que a linguagem Java suporta. Isto será fundamental 
para o exercício de sua profissão. E, então? Motivado para 
desenvolver esta competência? Vamos lá. Avante!
Primeiros passos em JAVA
A tecnologia Java se destaca por ser um verdadeiro “canivete suíço”, 
permitindo o desenvolvimento de aplicações web, mobile e desktop. O Java 
também incorpora tecnologias para permitir processamento distribuído 
e integração com outros sistemas Java ou de outras tecnologias. Para 
acompanhar este conteúdo, primeiro é importante que você instale e 
configure um ambiente de desenvolvimento que pode ser efetuado o 
download no site oficial da Oracle. Normalmente, consiste na versão atual 
do JDK em Oracle e o Eclipse IDE for Java Developers, no site também está 
disponível as instruções para instalação da versão sempre atualizada.
Figura 9 – A tecnologia Java permite o 
desenvolvimento de aplicações web, mobile e desktop
Fonte: Freepik
Ambiente para Desenvolvimento Web
35
De acordo com as atualizações, existe uma configuração do sistema 
recomendada, para exemplificar em versões anteriores era necessário:
 • Um sistema que suporte Java SE 8 com pelo menos 2 GB de 
memória, Java 8 é suportado em Linux®, Windows®, Solaris® e 
Mac OS X. 
 • Pelo menos 200MB de espaço em disco para instalar os 
componentes de software e exemplos.
A linguagem Java é usada para desenvolver aplicativos para uma 
ampla variedade de ambientes, de dispositivos consumidores a sistemas 
corporativos heterogêneos.
Figura 10 – A linguagem Java é usada para desenvolver 
aplicativos para uma ampla variedade de ambiente
Fonte: Freepik
Quando você programa na plataforma Java, escreve seu código-
fonte em arquivos .Java e depois os compila. O compilador verifica seu 
código nas regras de sintaxe da linguagem e depois grava bytecodeem 
arquivos .class. Bytecode é um conjunto de instruções destinadas a 
executar em uma Java virtual machine (JVM). Ao incluir esse nível de 
abstração, o compilador Java difere-se de outros compiladores de 
linguagem, que escrevem instruções adequadas para o chipset de CPU 
no qual o programa é executado.
Ambiente para Desenvolvimento Web
36
Figura 11 – Na programação na plataforma Java, é escrito 
o código-fonte em arquivos Java e depois os compila
Fonte: Freepik
No tempo de execução, a JVM lê e interpreta arquivos .class e 
executa as instruções do programa na plataforma de hardware nativa 
para qual a JVM foi escrita, a JVM interpreta o bytecode como uma CPU 
interpretaria instruções de linguagem assembly. A diferença é que a JVM 
é uma parte do software escrita especificamente para uma determinada 
plataforma. A JVM é o núcleo do princípio “gravação única, execução 
em qualquer local” da linguagem Java. Seu código pode executar em 
qualquer chipset para o qual a implementação da JVM adequada está 
disponível. JVMs estão disponíveis para principais plataformas, como Linux 
e Windows, e subconjuntos de linguagem Java foram implementados nas 
JVMs para telefones celulares e chips hobbyist.
Ao fazer o download de um Java Development Kit (JDK), você 
obtém, além do compilador e de outras ferramentas, uma biblioteca de 
classe completa de utilitários de pré-construção que o ajuda a realizar 
tarefas de desenvolvimento de aplicativo mais comuns. O Java Runtime 
Environment (JRE), também conhecido como o tempo de execução Java 
inclui a JVM, bibliotecas de códigos e componentes necessários para 
executar programas que são escritos na linguagem Java. O JRE está 
Ambiente para Desenvolvimento Web
37
disponível para diversas plataformas. É possível redistribuir livremente o 
JRE com seus aplicativos, de acordo com os termos da licença do JRE, 
para fornecer aos usuários do aplicativo uma plataforma na qual possam 
executar seu software. O JRE está incluído no JDK. O Java possui como 
principais características:
 • Flexibilidade, o Java é multiplataforma, isto é, os aplicativos 
desenvolvidos nela, uma vez compilados, podem executar sem 
alterações em um grande número de sistemas operacionais 
(write once, run anywere). Outro ponto importante é a adoção 
do padrão Unicode para mapeamento de caracteres, unificando 
e aumentando a tabela de caracteres disponíveis e evitando 
distorções exibidos em diferentes plataformas.
 • Linguagem Tipada, possui uma estrutura bem definida, com 
declarações claras de tipos dos dados manipulados. Essa 
característica, por mais que pareça à primeira vista avessa à 
flexibilidade, na verdade vem para garantir uma melhor legibilidade 
e segurança de código implementado.
Tipos podem ser primitivos:
 • Numéricos.
 • byte, short, char, int, long, float, double.
 • Representação independentes da plataforma.
 • boleano (true / false).
 • boolean.
 • Representação da plataforma é irrelevante.
 • Tipos podem ser referência.
 • Referência a objetos.
 • Orientação a objetos.
A orientação a objetos (ou simplesmente OO) contribui para a 
organização, ela é capaz de representar os problemas complexos dos 
sistemas, sendo melhor do que abordagens puramente procedurais. Para 
Ambiente para Desenvolvimento Web
38
muitos profissionais, a OO é a vilã na curva de aprendizagem do Java. No 
entanto, uma vez absorvidos, os conceitos básicos de objetos, a criação e 
manutenção de softwares OO se tornam uma tarefa simples e produtiva.
O Java também tem como característica a simplicidade, que talvez 
a característica mais polêmica em Java. Para adeptos de linguagens script 
como PHP, ASP, Ruby ou JavaScript, ou programadores experientes em 
linguagens nos quais o forte são seus ambientes visuais, como Delphi 
ou Visual Basic, a programação em Java pode não parecer tão simples. 
Contudo, para programadores vindos de linguagens como C/C++, 
certamente o Java se mostra uma ferramenta simples, sem deixar muito em 
poder e flexibilidade. Por exemplo, não há manipulação direta de ponteiros 
em Java, mas todos os objetos em Java são, no fundo, ponteiros para 
estruturas em memória. O Java é adequado para projetos com equipes de 
médio e grande porte, devido ao seu foco na simplificação da manutenção.
Figura 12 – O Java é indicado para projetosde médio e grande 
porte, justamente pelo foco na simplificação da manutenção
Fonte: Freepik
Vale ressaltar que a flexibilidade é, na maioria dos casos, antagônica 
à simplicidade. Por exemplo, aplicativos com vários requisitos como 
suporte a diferentes interfaces de usuário, recursos de internacionalização 
de interfaces, capazes de rodar em diferentes plataformas. Devendo se 
comunicar com sistemas legados em outras tecnologias etc., certamente 
são mais complexos do que softwares sem nenhuma preocupação com 
requisitos como esses.
Ambiente para Desenvolvimento Web
39
A arquitetura de aplicação
Ao contrário de plataformas como C, C++ ou Delphi, os programas 
Java não são compilados para o sistema operacional destino. Ao invés 
disso, os programas Java são compilados para um formato intermediário 
chamado bytecode, que são lidos por uma máquina virtual (Java Virtual 
Machine, ou simplesmente JVM). Em Java, o sistema operacional não 
interpreta diretamente o código binário gerado pelo compilador, mas 
chama a JVM para que o faça. É desta maneira que o Java alcança uma 
de suas mais importantes características: a execução multiplataforma.
O lado ruim dessa abordagem é a necessidade da preexistência da 
JVM para poder rodar qualquer programa Java. No entanto, diversos SOs 
– Sistemas Operacionais hoje em dia (a maioria das distribuições Linux, por 
exemplo) já oferecem e sugerem automaticamente a instalação da JVM 
em seus próprios processos de instalação. A própria Microsoft chegou a 
participar da implementação de uma máquina virtual para o Windows, no 
entanto iniciativas para trazer recursos extras, voltados apenas a ambientes 
Windows foram encarados negativamente. Devido a não padronização com 
as regras sugeridas pela Sun, o que acabaria com a premissa básica da 
multiplicidade de plataforma de Java. Após diversas tentativas de fazer a 
Microsoft voltar atrás em seus interesses, a Sun conseguiu processá-la em 
tribunais americanos. A polêmica JVM da Microsoft foi então descontinuada 
e não mais disponibilizada em versões mais recentes do Windows, credita-
se a este fato as origens da tecnologia .NET.
A presença de uma máquina virtual Java (JVM) instalada na 
plataforma destino é essencial para a execução de programas. O primeiro 
passo é chamar o lançador “Java” (ou “Java.exe”, no caso do Windows) 
passando como parâmetro o bytecode da classe que contém o método 
principal (main). A partir daí, uma instância da máquina virtual é criada para 
a execução do programa, entre as várias atribuições da máquina virtual 
durante a execução de um programa, destacam-se: 
 • Carga de classes em memória, a máquina virtual é responsável por 
procurar e carregar as classes necessárias em tempo de execução. 
Caso uma classe necessária não possa ser localizada, um erro é 
levantado (NoClassDefinitionFound).
Ambiente para Desenvolvimento Web
40
 • Verificação da integridade do bytecode das classes, eventualmente 
a máquina virtual efetua verificações de integridade no bytecode 
encontrado.
 • Interpretador de comandos, a VM extrai do bytecode comandos 
que serão traduzidos em tempo de execução para a comandos 
nativos da plataforma. Por isso, Java é considerada uma linguagem 
interpretada.
 • Gerenciamento de memória, a máquina virtual atende às 
solicitações de alocação de memória na criação de objetos e 
variáveis de tipos primitivos. A remoção desses elementos em 
memória também é efetuada pela VM.
 • Gerenciamento de threads (processos light), aplicativos Java 
suportam processamento paralelo, ou multithreaded. Também 
é atribuição da VM a gerência desses processos internos e 
agendamento de execução pela CPU.
Em relação ao hotspot, ou seja a máquina virtual da Sun, o Java é 
distribuído com uma máquina virtual da própria Sun, chamada de hotspot. 
O nome deve-se por esta máquina otimizar a execução de programas 
(identificando códigos muito executados e fazendo uma espécie de cache 
deles). Existem várias outras máquinas virtuais disponíveis no mercado, 
cada máquina virtual utiliza recursos internos específicos buscando a 
execução de programas mais eficiente possível. Também é importante 
considerar que a notação @Path é usada para indicar que uma classe é 
um Web Service JAX-RS.
O API da Java
O aprendizado da API do Java é muito importante, pois o Java possui 
uma API extensa. São encontradas tecnologias para criação de interface 
de usuário, realização de cálculos matemáticos, integrações com outros 
sistemas, entrada e saída de dados para arquivos ou por rede, gerenciamento 
de coleções de dados, utilidades gerais, entre outras. Além da API do Java, 
o desenvolvedor pode recorrer a bibliotecas (APIs e framewors) elaboradas 
por terceiros para incorporar outros recursos ao programa.
Ambiente para Desenvolvimento Web
41
Na base da imagem, você pode ver exemplos de sistemas 
operacionais onde aplicações Java deverão rodar. Acima deles há a 
máquina virtual, a JVM da Sun, disponível em qualquer download do Java 
SE é patenteada sob a marca hostpot. Apesar de uso gratuito, sua licença 
sempre foi motivo de muita polêmica com o mundo open source, free 
soft. Há outras JVMs disponíveis no mercado, mas provavelmente todo 
programador Java aprendeu utilizando a JVM. Ela possui duas maneiras 
de executar o seu programa, essas maneiras diferem no mecanismo de 
compilação just-in-time. Não trataremos deste assunto.
Acima da camada da JVM, há várias camadas da API (bibliotecas) 
disponibilizada no download, a camada marrom trata das bibliotecas em 
geral disponíveis. As bibliotecas em roxo são chamadas de integração 
(Integration libraries) porque dão suporte a programas Java que precisarão 
de implementações de terceiros. Por exemplo, a biblioteca JDBC (Java 
Database Conectivity) provê acesso homogêneo a diversos bancos de 
dados, no qual ela requer a API particular do banco (driver) para poder 
trabalhar. A última camada de API é responsável pelas diversas maneiras 
de interagir com o usuário, componentes gráficos (Swing), manipulação 
de eventos relatados pelo sistema operacional (AWT), execução de sons 
(Sound) são exemplos dessas interações.
Acima das bibliotecas, em verde, há as ferramentas úteis para 
distribuir e executar programas Java, por exemplo, o Java Plug-in trata 
da instalação da JVM em diversos browsers como IE (Edige) e Firefox. A 
JVM, as bibliotecas e as ferramentas de distribuição Java fazem parte do 
ambiente de execução Java (JRE – Java Runtime Environment), plataforma 
mínima necessária para rodar qualquer programa Java. Em outras palavras, 
para executar seu programa Java, a máquina do cliente precisa ter pelo 
menos a JRE instalada. As outras ferramentas, dispostas na faixa amarela, 
são úteis exclusivamente ao desenvolvedor, entre elas, temos:
 • O compilador (Javac). 
 • O executável que irá carregar a JVM (Java).
 • Uma ferramenta de geração de documentação baseada em 
comentários nos códigos (Javadoc), empacotador útil para criar 
“executáveis” (jar). 
Ambiente para Desenvolvimento Web
42
Tudo isso com as regras de sintaxe da linguagem (seguidas pelo 
compilador e máquina virtual) compõem o Java Development Kit (JDK), é o 
kit de ferramentas disponíveis para se desenvolver em Java. As ferramentas 
são o compilador, uma implementação da especificação mais atual da 
JVM, além de bibliotecas (classes), códigos-fontes dessas bibliotecas, 
exemplos, documentações e uma série de outras ferramentas.
A primeira versão disponibilizada do JDK, em 1996, trazia apenas 
211 classes em suas bibliotecas, e logo foi percebido que ela ainda estava 
imatura para suprir as necessidades do programador. Para se ter uma 
ideia, não havia suporte, nem sequer as rotinas básicas de impressão, ela 
foi logo substituída pela versão 1.1, com mais do dobro da quantidade de 
classes. Em 1998, foi lançada a versão 1.2 do JDK, com inúmeras melhorias 
e novas funcionalidades, trêsdias após o lançamento, o departamento 
de marketing da Sun mudou o nome do JDK para Java 2 Standard Edition 
Software.
Development Toolkit Version 1.2, o que deu início a confusão de siglas 
e versões em Java, a partir daí, surgiram siglas como J2SDK, J2SE SDK, 
entre outras não oficiais. A ideia de chamar a linguagem de Java 2, dizem 
alguns, foi devida à vontade de diferenciar Java da JavaScript da Netscape 
(confusão que até hoje muita gente ainda faz). A outra explicação se dá à 
divisão do JDK em três grandes projetos com o número dois soando com 
um “to” (para):
 • Micro Edition: especificações da edição voltada a dispositivos 
com poucos recursos de memória. Ficou claro que enquanto 
o JDK evolui, sua API foi se tornando maior, mais elaborada e, 
consequentemente, menos aplicável a esse mundo. A ideia da 
Micro Edition é definir especificações e criar tecnologias e APIs 
mais preocupadas com ambientes pequenos e recursos escassos.
 • Standard Edition: Foi onde o JDK anterior, revisto, melhorado 
e ampliado se encaixou. Novos recursos como a API de 
componentes desktop gráficos Swing (disponível em download 
extra no JDK 1.1) foram incorporados. A plataforma Standard foi 
focada em desenvolvimento de sistemas desktop, standalone ou 
mesmo capazes de se comunicar com outros recursos na rede e 
Ambiente para Desenvolvimento Web
43
até mesmo outras aplicações Java remotas, por meio de sockets 
ou das chamadas Java RMI (Remote Method Invocation), uma 
versão simplificada, Java nas pontas, de componentes distribuídos 
ao estilo CORBA.
 • Enterprise Edition: edição voltada a servidores de aplicações 
corporativas. Consiste na definição de serviços, ou seja, 
aplicações rodando em background em uma ou mais máquinas, 
aguardando para responder a conexões em portas específicas e 
fornecer serviços determinados, como por exemplo, o serviço web 
(HTTP). Como a imagem sugere, o ambiente Enterprise requer as 
bibliotecas Standard para funcionar.
A versão 1.3 apesar de aumentar consideravelmente o volume 
de classes da API Standard, não trouxe nada de significativo a ponto de 
chamar a linguagem de Java 3. Apenas o número da versão da edição 
Standard passou para 1.3 e a linguagem ainda ficou como Java 2. Com a 
versão 1.4 não foi diferente. Houve avanços não só na API, mas na sintaxe 
da linguagem como a possibilidade de criação de classes no corpo de 
outras classes (classes internas ou aninhadas), mas a linguagem continuou 
Java 2, JDK 1.4.
A versão 5.0 foi a primeira versão desde o JDK 1.1 que atualizou a 
linguagem Java de maneira significativa. Até mesmo a versão 1.2, que 
originou o termo Java 2 e subdividiu os rumos da API em Micro, Standard 
e Enterprise, não trouxe mudanças fortes de sintaxe.
Com o seu lançamento, acabou a era Java 2. A comunidade Java 
percebeu que os dois complicaram mais do que ajudaram. A partir de 
então, a linguagem é apenas Java, vai evoluir no primeiro dígito (5.0, 6.0, 
7.0, etc.) e contar com updates, ex: Java SE 6.0 Update 1. O codinome do 
projeto Java Standard Edition 5.0 (JSE 5.0) foi Tiger para mostrar o foco na 
força da comunidade Java e na tecnologia em geral. Apesar da mudança, 
a versão técnica do JDK ainda ficou em 1.5, 1.6, etc. Algo ainda confuso, 
mas entenda apenas que JSE 1.5 e 5.0 falam da mesma coisa.
A versão 6.0 veio focada na velocidade de aplicações Java, tema 
em que ela conquistou certa má fama, daí seu codinome Mustang, não 
Ambiente para Desenvolvimento Web
44
trouxe mudanças significativas na linguagem, nem mesmo na API. Desde 
o lançamento da versão 5.0, que a comunidade Java vem trabalhando na 
especificação da JSE 7.0 (Dolphin), algo ainda vago para podermos tecer 
alguma opinião. Vale frisar que em Java, as tecnologias são definidas em 
especificações, diversas empresas participam do JCP (Java Community 
Process – www.jcp.org), definindo e debatendo os rumos dos inúmeros 
subprojetos sobre a tecnologia Java. Antes que você procure baixar a Java 
Enterprise Edition, por acreditar que ela é uma versão mais elaborada do 
que a Standard, entenda que são coisas totalmente distintas. A Enterprise 
define temas como Servlets (que são ferramentas utilizadas para fornecer 
aos desenvolvedores uma solução Java permitindo criar aplicações web), 
JSP, EJBs e diversas outras tecnologias que não devem ser seu foco, no 
momento, dessa maneira é sempre importante estar atento às versões e 
às documentações no site oficial. 
É importante salientar que em alguns casos a descompilação é 
algo não desejável pelo desenvolvedor, por expor detalhes internos 
do programa e abrir margem para alterações maliciosas. Evitar a 
descompilação não é possível, mas pode-se utilizar ferramentas 
chamadas ofuscadores de códigos, que “embaralham” o código original 
antes da compilação, resultando num código praticamente incompreensível 
quando descompilado.
É importante testar a instalação e configuração, vamos ressaltar 
mais uma vez que é recomendado verificar as versões mais recentes e 
a indicação do fornecedor de procedimentos de testes e configuração, 
iremos exemplificar o “Java version”, que trará a versão da máquina 
virtual encontrada ou uma mensagem de erro caso o executável Java 
não tenha sido encontrado. O executável Javac chama o compilador, 
como não informamos que código compilar, ele descarregou as opções 
de chamada para nos ajudar. Caso eles não forem encontrados, volte à 
etapa anterior para verificar o que foi configurado errado. No Windows, 
encerre o prompt e inicie outro após efetuar qualquer ajuste nas variáveis 
de ambiente. No Linux, isso vai depender de que local você escreveu as 
linhas que configuram o ambiente. Experimente executar as configurações 
diretamente no prompt e testar se tudo funcionou corretamente, só 
depois de funcionar, adicione essas linhas.
Ambiente para Desenvolvimento Web
45
Na situação de ambientes de desenvolvimento integrado, apesar 
de ser possível desenvolver qualquer programa Java apenas com o JDK, 
na prática, é altamente recomendado o uso de IDEs apropriadas para 
ganho de produtividade. Existem várias IDEs compatíveis com o Java no 
mercado, muitas delas gratuitas e de código aberto, e praticamente todas 
elas trazem recursos como geração automática de código, interface 
amigável, assistentes para configuração de projetos e recursos, recursos de 
“autocompletar”, macros de comandos, ferramentas de arrastar e soltar etc.
Um programa Java desenvolvido numa IDE pode ser opcionalmente 
compilado e executado diretamente pelo JDK, por se tratar de código 100% 
Java. É possível também mesclar diferentes IDEs no desenvolvimento de 
um mesmo projeto. Praticamente todas as IDEs são orientadas a projeto, 
ou seja, o primeiro elemento a ser criado é o projeto, ou a coleção de 
recursos (códigos-fonte, bytecode, imagens, arquivos de configurações, 
bibliotecas etc.) relativos a um projeto específico. É o conceito de projeto 
que facilita a compilação e execução do programa como um todo.
Em Java, não há vida fora das classes, as instruções devem ser 
agrupadas em métodos (operações), ao chamar um método todas estas 
instruções serão executadas em sequência. Métodos são operações 
agrupadas para serem executadas no momento de chamada, o método 
main será chamado pela VM ao executar o programa. Sua declaração 
(assinatura) será detalhada adiante, a assinatura de qualquer método deve 
ser sucedida por parênteses, mesmo que não venham com nada dentro. 
O corpo do método é tudo o que vier entre suas chaves. Chaves delimitam 
blocos de código. No interior de métodos, é possível inserir comentários 
em linha (linhas iniciadas por //) e comentários em bloco (uma ou mais 
linhas entre os sinais /* e */). Ainda no corpo dos métodos, normalmente, 
escrevemos chamadas a outros métodos que serão executadas na ordem 
linear em que forem escritas.
O println é um método do objeto out, atributo de System, uma classefornecida na JRE que representa a própria VM, por meio dela é possível 
interagir com o console de onde o programa foi chamado (out é o objeto 
de saída, println, escrever uma linha na saída), ou mesmo interromper a 
execução do programa (System.exit(0)). Ao final de tudo, é chamado o 
Ambiente para Desenvolvimento Web
46
método em Java, deve-se escrever o ponto-e-vírgula, sob pena do código 
nem ser compilado. Acima de algumas declarações, é possível inserir 
comentários de blocos, neste caso, com mais um asterisco no sinal de 
abertura (/**) e um novo asterisco por linha. Esses blocos especiais serão 
lidos por um programa fornecido no JDK (Javadoc) a fim de gerar manuais 
HTML. É importante revisar que o HTML e XML, identificam elementos 
em uma página e utilizam sintaxes similares, mas o HTML descreve 
a aparência e as ações em uma página na rede e XML descreve o que 
cada trecho de dados é ou representa, descrevendo assim o conteúdo 
do documento.
RESUMINDO:
E então? Gostou do que lhe mostramos? Aprendeu mesmo 
tudinho? Agora, só para termos certeza de que você 
realmente entendeu o tema de estudo deste capítulo, 
vamos resumir tudo o que vimos. Você deve ter aprendido 
que a tecnologia Java foi desenvolvida pela empresa Sun 
Microsystems em 1995, como um recurso a ser incorporado 
no Netscape Navigator, navegador de internet líder de 
mercado naquela época. O Java procurava endereçar um 
problema complexo: permitir que aplicações, uma vez 
compiladas, pudessem executar em diferentes plataformas 
em todo mundo. Em 2008, a tecnologia Java já estava 
presente em uma grande variedade de dispositivos, de 
smartcards a servidores, passando por telefones celulares 
e computadores pessoais (e não se limitando a estes). 
Contando com o suporte de uma comunidade de mais 
de 6 milhões de desenvolvedores, na época e atualmente 
continuado sendo uma ferramenta bastante importante e 
utilizada.
Ambiente para Desenvolvimento Web
47
C#.net
OBJETIVO:
Ao término deste capítulo, você será capaz de 
compreender os principais conceitos relativos à linguagem 
de programação C#, bem como suas principais utilidades 
e funcionalidades, vendo um passo-a-passo básico 
introdutório a essa linguagem. Observando como essa 
linguagem pode ser utilizada no dia a dia do programador 
web. Isto será fundamental para o exercício de sua profissão. 
E então? Motivado para desenvolver esta competência? 
Vamos lá. Avante!
Sobre a linguagem
A C# é uma das linguagens de programação voltadas para objetos, 
que busca conectar diversos códigos as funções do hardware, servindo 
de ponte do software e da parte física. Essa linguagem foi criada para 
funcionar e ser um mecanismo utilizado pela plataforma criada também 
pela Microsoft chamada .NET, não sabe o que é essa plataforma? Vamos 
conhecer mais sobre ela.
Considerado um framework parecido com o Java, a plataforma .NET 
funciona como um enorme encontro de ferramentas, segundo a própria 
Microsoft ela funciona como um integrador de blocos de programação, 
oferecendo assim diversas aplicações para o desenvolvimento completo.
O framework .NET vem para unir diversas linguagens, incluindo a 
C#, e podemos citar como alguns de seus diferenciais e características:
 • Sendo um framework considerado amplo, o .NET dispõe de 
compatibilidade para diversos tipos de programação diferentes e 
integra muito bem as linguagens criadas pela Microsoft. 
 • Ele funciona como um excelente gerenciador de tarefas e 
aplicações diversas, basta ser programado para tal.
 • Ele é ótimo em executar aplicações.
Ambiente para Desenvolvimento Web
48
 • Possui uma aplicação voltada para o desenvolvimento para web, 
a chamada ASP.NET, o que auxilia muito o desenvolvedor que 
deseja ser mais preciso em suas aplicações ou trabalhar com uma 
ferramenta própria. 
 • A ferramenta voltada para web oferece uma compatibilidade para 
as maiores linguagens de programação, como o HTML e o CSS. 
 • Ele funciona em qualquer dispositivo desde que este esteja 
previamente configurado para receber esse framework (DUCKETT, 
2016).
Entendeu agora como funciona o framework .NET? Então, podemos 
partir para a linguagem que foi escrita em conjunto e para funcionar neste 
framework, a C#.
VOCÊ SABIA?
Ficou curioso ou teve dificuldades para pronunciar o nome 
desta linguagem? Ela não é chamada de “C jogo da velha”, 
sua pronúncia sairá como um “C Xarpe”, agora você poderá 
pronunciar esse nome com segurança e confiança.
Já vimos que essa linguagem foi criada pela Microsoft, e funciona 
orientada a objetos, mas, você sabe por que ela é considerada uma 
linguagem ampla? A empresa que a desenvolveu, afim de dar uma maior 
credibilidade e torná-la mais segura, pleito para que ela passasse pela 
padronização formal.
Padronização criada por uma associação voltada à padronização de 
sistemas, a chamada ECMA, e, além dessa padronização ela conta com 
o certificado de qualidade ISO, que já abordamos em outro módulo de 
conhecimento. E quais foram as versões que o C#? Em resumo, são as 
identificadas nas figuras a seguir, lembrando que já pode existir versões 
atuais.
Ambiente para Desenvolvimento Web
49
Figura 13 – A linguagem C# foi escrita em conjunto para funcionar no framework .NET
Fonte: Freepik
Figura 14 – As versões que o C# lembrando que já pode existir versões atuais
C# 1.0 C# 2.0 C# 3.0
C# 4.0 C# 5.0 C# 6.0
C# 7.0 C# 8.0
Fonte: Sena (2017, p. 15)
Em cada versão liberada pela Microsoft, os bugs de sistema eram 
resolvidos e novas funcionalidades eram inseridas, além da eficiência ser 
cada vez mais ampliada, graças ao constante trabalho da empresa.
Características da linguagem 
Em cada versão liberada pela Microsoft, os bugs de sistema eram 
resolvidos e novas funcionalidades eram inseridas, além da eficiência 
ser cada vez mais ampliada, graças ao constante trabalho da empresa. 
Já vimos o processo de criação da linguagem, vamos ver agora um 
pouco mais sobre suas características e outras informações que podem 
ser relevantes para aqueles que desejam seguir na programação para 
web. A linguagem C# foi criada se baseando em diversas linguagens, 
Ambiente para Desenvolvimento Web
50
como Java e C++, essa inspiração veio desde a maneira de sua criação 
até pelo fato dela ser feita com a junção dos principais pontos positivos 
dessas mesmas linguagens, assim se tornando uma linguagem atrativa 
para os desenvolvedores que desejam migrar para .NET. Criando um tipo 
de Frankenstein moderno, a Microsoft conseguiu chamar atenção dos 
programadores graças ao poder dessa linguagem de unir todos os pontos 
positivos das outras.
Sua forma de construção é bem simples, tendo semelhanças com 
as linguagens C e, mais uma vez, a linguagem básica Java, ela procurou 
simplificar a complexidade da linguagem C++, assim tendo uma vasta 
gama de recursos disponíveis para a utilização do desenvolvedor. C# 
é uma linguagem orientada a objetos (outro exemplo é a Smalltalk), 
sendo assim ela tem suporte a conceitos como polimorfismo, herança 
encapsulamento (por exemplo HttpSessionState), suas variáveis e 
métodos são encapsulados dentro de uma classe, além disso C# é 
bastante utilizado na codificação do .NET e foi a primeira linguagem da 
família C/C++ orientada a componentes. As principais características da 
sua sintaxe são o suporte, a DLL’s, é case sensitiva, é fortemente tipada, 
assim como o Java, suas classes implementar várias interfaces. Fica de 
responsabilidade do .NET Framework fazer a gerência de memória 
Figura 15 – A construção do C# é similar com as linguagens C e a linguagem 
básica Java procurando simplificar a complexidade da linguagem C++
Fonte: Freepik
Ambiente para Desenvolvimento Web
51
Viu algumas de suas características? Para melhor visualizar vamos 
tipifica-las:
 • Linguagem simples e de fácil manuseio de profissionais ou 
estudantes que estejam criando por essa linguagem.
 • Melhoria de bugs de outras linguagens.• Tem características positivas de diversas linguagens, sendo a 
melhor em diversos pontos quanto a programação.
 • Por ser orientada a objetos, ela consegue cumprir com diversos 
objetivos comuns, sem precisa utilizar diferentes linguagens.
 • É considerada completa e robusta, com poucos bugs e “fechada”, 
isto quer dizer, é fluída e não possui uma confusão de informações.
 • É padronizada.
 • É considerada uma linguagem durável, que permite ao 
programador ter uma “paz” por maior tempo quando o assunto é 
durabilidade da página ou da aplicação criada.
Agora que já vimos os conceitos e as características básicas, 
veremos como criar nosso primeiro código.
SAIBA MAIS:
Para conhecer mais sobre essa linguagem, o site da 
Microsoft dispõe de diversas informações sobre ela, acesse 
clicando aqui.
Por ser uma linguagem criada pela Microsoft, é aconselhado que 
utilizemos um editor de texto como o Visual Studio, mas se você não 
se sentir confortável com esse, poderá criar em outro. Como em toda 
programação, é preciso que sejam cumpridos alguns passos básicos 
para criarmos o primeiro código, veremos esses passos abaixo, utilizando 
Visual Studio, como exemplo:
 • Escolha e se familiarize minimamente com algum editor de texto, 
essa linguagem exige um conhecimento mínimo de editores.
Ambiente para Desenvolvimento Web
https://docs.microsoft.com/pt-br/dotnet/csharp/programming-guide/index
52
 • Após familiarizado, crie um novo arquivo, no Visual Studio o 
caminho é: Arquivo > Novo > Projeto.
 • Para organizar melhor o seu código, nomeie-o.
 • No Visual Studio irá aparecer uma nova página chamada Program.
cs, essa é uma página básica, criada automaticamente.
 • Após abrir essa página, você deverá trocar o código que aparecer, 
a própria página da Microsoft aconselha a substituir pelo seguinte 
código:
// A Hello World! program in C#.
using System;
namespace HelloWorld
{
class Hello 
{
static void Main() 
{
Console.WriteLine(“Hello World!”);
// Keep the console window open in debug mode.
Console.WriteLine(“Press any key to exit.”);
Console.ReadKey();
}
}
}
Após mudar o código, para que ele seja executado pela máquina, 
basta clicar em F5, lembrando que é apenas um exemplo, de acordo com 
a atualização do programa Visual Studio, ou da própria linguagem, podem 
acontecer alterações. Para melhor aprendizado, é importante verificar 
alguns exemplos de códigos, com a linguagem C#, você consegue criar 
grupos de interação, veremos um exemplo de como é essa programação. 
Ambiente para Desenvolvimento Web
53
// Bind to the domain that this user is currently connected to.
DirectoryEntry dom = new DirectoryEntry();
// Find the container (in this case, the Consulting organizational unit) that you 
// wish to add the new group to.
DirectoryEntry ou = dom.Children.Find(“OU=Consulting”);
// Add the new group Practice Managers.
DirectoryEntry group = ou.Children.Add(“CN=Practice Managers”, “group”);
// Set the samAccountName for the new group.
group.Properties[“samAccountName”].Value = “pracmans”;
// Commit the new group to the directory.
group.CommitChanges();
Percebeu como essa linguagem pode ser simples em alguns 
aspectos e complicada em outros, tenha bastante atenção quando for 
manuseá-la. Ela oferece diversas maneiras de programação para um 
mesmo fim, por exemplo, o comando anterior pode ser executado, 
também, dessa maneira: 
// Bind to the domain that this user is currently connected to.
DirectoryEntry dom = new DirectoryEntry();
// Find the container (in this case, the Consulting organizational unit) that you
// wish to add the Full Time Employees distribution list to.
DirectoryEntry ou = dom.Children.Find(“OU=Consulting”);
// Add the Full Time Employees distribution list.
DirectoryEntry dl = ou.Children.Add(“CN=Full Time Employees”, “group”);
// Set the group type to global.
dl.Properties[“groupType”].Value = ActiveDs.ADS_GROUP_TYPE_ENUM.
ADS_GROUP_TYPE_GLOBAL_GROUP;
// Commit the new group to the directory.
dl.CommitChanges();
Ambiente para Desenvolvimento Web
54
É importante conhecer os elementos de um programa C#, vimos 
que para programarmos, cada linguagem possui seus próprios termos e 
significados, na C# não é diferente.
Figura 16 – A linguagem C# também possui seus próprios termos e significados 
Fonte: Wikimedia Commons
No C# também existem parâmetros que devem ser seguidos, 
elementos básicos que a programação deve conter, no caso do C# esses 
elementos são:
 • Namespace: considerada o arquivo que se recorre para buscar 
algo, como uma biblioteca, o Namespace é fundamental para a 
criação de qualquer código em C#, essa biblioteca delimita alguns 
fatores que serão usados em sua programação. 
 • Classe: sendo um dos fatores limitados pela Namespace, a classe 
funciona como um depósito de informações, em que os dados 
são inseridos.
 • Main: considerada como um espelho de outras linguagens 
de programação, esse arquivo é considerado básico para a 
programação.
 • Declaração: a declaração funciona como, em geral, toda a 
programação, e é por onde as informações são anexadas ao arquivo.
Ambiente para Desenvolvimento Web
55
Pontos que devem ser observados, nesta linguagem, são as 
chamadas palavras-chave, que funcionam como um link, veja a seguir 
algumas palavras. ADD, usada para acessar um arquivo personalizado; 
GROUP, corresponde a um valor atribuído ao grupo, essa palavra significa 
uma cláusula; SELECT, utilizada, basicamente, para realizar consultas no 
código; VALUE, é utilizado como referência e deve ser atribuído a uma 
propriedade, e pode conter diversos números e ASYNC, é um modificador, 
que funciona como assíncrono. Também é importante considerar que 
a classe DefaultModelBinder é responsável por converter os dados 
provenientes de requisições HTTP em objetos “.Net” requeridos como 
parâmetros de Actions Methods. E os três modelos de desenvolvimento 
suportados pela ASP.Net são Web Pages, MVC e Web Forms.
RESUMINDO:
E então? Gostou do que lhe mostramos? Aprendeu mesmo 
tudinho? Agora, só para termos certeza de que você 
realmente entendeu o tema de estudo deste capítulo, 
vamos resumir tudo o que vimos. Você deve ter aprendido 
que no Ambiente para Desenvolvimento Web é importante 
o conhecimento sobre a linguagem de programação 
C#.net. Isso pode ser útil para o programador, dessa 
maneira, é importante saber como podemos utilizá-la 
para a programação voltada à internet. Tendo sido criada 
pela Microsoft, essa linguagem vem para ser eficiente e 
simples, de maneira a facilitar ainda mais o trabalho do 
desenvolvedor web.
Ambiente para Desenvolvimento Web
56
REFERÊNCIAS
DUCKETT, J. HTML e CSS Projete e Construa Websites. Rio de 
Janeiro: Alta Books, 2016.
LAWSON, B.; SHARP, R. Introdução ao HTML 5. Rio de Janeiro: Alta 
Books, 2012.
MILETTO, M.; BERTAGNOLLI, C. Desenvolvimento de Software II: 
Introdução ao Desenvolvimento Web com HTML, CSS, JavaScript e PHP. 
Porto Alegre: Bookman, 2014.
SENA, H. Ambiente para Desenvolvimento Web: Arquitetura Web. 
Recife: Uninassau, 2017. 
Ambiente para Desenvolvimento Web
	_x5ng43pd8kjl
	_dssb8ovzblej
	_as6luqfigxk8
	_hdvhsq58kudg
	_GoBack
	PHP
	Hypertext Preprocessor
	Como exibir o código PHP
	Noções de máquinas virtuais
	Máquinas virtuais
	Utilidades das máquinas virtuais
	Noções de Java
	Primeiros passos em JAVA
	A arquitetura de aplicação
	O API da Java
	C#.net
	Sobre a linguagem
	Características da linguagem

Continue navegando