sexta-feira, 5 de julho de 2013

Artigo - A Linguagem SQL

O pior erro, se falando em ignorância, é pregar ou acreditar em um determinado assunto sem verificar a sua origem e veracidade.

Quem está inserido no meio da informática com certeza já ouviu falar em SQL (Structured Query Language), tendo pelo menos a ideia de que o termo está relacionado a bancos de dados.

O termo é muito conhecido como uma linguagem de comunicação entre SGDB (Sistema Gerenciador de Banco de Dados) e softwares de apoio, porém nem todos os profissionais atuantes da área sabem que a linguagem é dividida em alguns grupos, sendo eles:
  • DML - Linguagem de Manipulação de Dados;
  • DDL - Linguagem  de Definição de Dados;
  • DCL - Linguagem de Controle de Dados;
  • DTL - Linguagem de Transação de Dados;
  • DQL - Linguagem de Consulta de Dados;
 Nesta postagem iremos abordar os grupos em vermelho: DML, DDL e DQL.

OBS.: Em outro momento, entraremos mais afundo na utilização da linguagem.

DDL - Linguagem de Definição de Dados

Os comandos dispostos neste grupo são utilizados para criar o banco de dados e seus elementos (tabelas, triggers, O banco de dados, views, etc...), pois antes de operar algo, este algo necessita existir.

O comando mais comum utilizado aqui é o CREATE.

Exemplo:

CREATE TABLE cliente (
           codigo integer not null primary key auto_increment,
           nome varchar(50)
);

DML - Linguagem de Manipulação de Dados

Nesta sessão, classificam-se os comandos para a manipulação de dados dentro das tabelas já criadas (com a DDL), sendo aqui possível inserir, alterar e excluir dados dentro de uma tabela.

Os comandos mais comuns são: INSERT, UPDATE E DELETE.

O INSERT é utilizado para inserir dados em tabelas.

Exemplo:

INSERT INTO cliente (codigo, nome) VALUES ('1', 'David');


O UPDATE é usado para alterar determinado(s) registro(s) em uma tabela.

Exemplo:

UPDATE cliente SET nome='Alfredo' WHERE codigo='1';


Já o comando DELETE, como ele sugere, é utilizado para excluir registros em uma tabela.

Exemplo:

DELETE FROM cliente WHERE codigo='1';


DQL - Linguagem de Consulta de Dados

Aqui utiliza-se comandos para a consulta/seleção de registros dentro de tabelas, não alterando o conteúdo das relações, servindo somente para a coleta de dados já inseridos.
O comando mais comum é o SELECT.

Exemplo:

SELECT nome FROM cliente WHERE codigo='1';


É muito vasto o conjunto de possibilidades que existe no universo SQL, e eu espero ter clareado conceitos e dúvidas escrevendo este post.

Esta postagem foi destinada à definições, e não ao uso da linguagem em si, porém em um momento mais oportuno, este será nosso foco.

Ass.: David de Almeida Bezerra Jr

Notícia - Oracle anuncia primeiro banco de dados para a Nuvem!

Quando o trabalho é dividido entre vários, a conquista é alcançada de forma mais rápida e dispendiosa.

 A Computação em Nuvem (Cloud Computing) se difundiu bastante (se formos olhar desde o final dos anos 90 até os dias atuais), trazendo diversos serviços e benefícios para empresas e indivíduos.

Muitas empresas criaram e amadureceram projetos baseados na Cloud Computing, que é uma tecnologia que funciona sobre a Internet (normalmente), buscando deixar o serviço acessível em qualquer lugar do mundo, com tanto que tenha uma conexão com a grande rede.

Muitos confundem bastante o conceito de Nuvem, mas para construirmos um raciocínio correto sobre o assunto, primeiro é preciso entender que esta tecnologia, além de disponibilizar o serviço em qualquer lugar que tenha Internet, independente da plataforma (Windows, Linux, Mobile, etc...), ainda tem-se a saber que ela trabalha de forma distribuída, quebrando o trabalho em partes e distribuindo para servidores específicos. Assim o carga é processada com menos perda e mais rapidez.

A postagem abaixo foi tirada do site TiBahia:

"
Empresa anuncia que o primeiro banco de dados desenvolvido para a nuvem já está disponível para todo o mercado

Salvador, 03 de julho de 2013 - Ao adotar a nuvem, as empresas buscam tecnologias capazes de transformar os negócios e melhorar a eficácia e a agilidade operacional. O Oracle Database 12c é um banco de dados de última geração, desenvolvido para atender a essas necessidades, fornecendo uma nova arquitetura multitenant  em uma plataforma rápida, escalável, confiável e segura. Ao ingressar na nuvem com o Oracle Database 12c, os clientes conseguem melhorar a qualidade e o desempenho dos aplicativos, reduzir o tempo com a gestão de armazenamento e obter máxima disponibilidade, além de simplificar a consolidação de vários bancos de dados.
A mais recente versão do banco de dados número um do mundo, o Oracle Database 12c, está disponível para download no site da Oracle Technology Network (OTN).
O Oracle Database 12c apresenta uma nova arquitetura multitenant, que simplifica o processo de consolidação de bancos de dados na nuvem, permitindo que os clientes gerenciem vários bancos de dados como um só, sem alterar seus aplicativos.
Por ser a base do Oracle Public Cloud Services, o Oracle Database 12c oferece excelentes benefícios às empresas que estão implementando nuvens privadas de bancos de dados e aos fornecedores de software como serviço (SaaS, na sigla em inglês), que procuram o poder do Oracle Database em modelo multitenant seguro.
O Oracle Database 12c, otimizado no SPARC e nos processadores Intel® Xeon®, é uma versão completa que traz 500 recursos inéditos e é o resultado de 2.500 pessoas-ano (ou seja, 5,2 milhões de horas) de desenvolvimento e 1,2 milhões de horas de testes, além de um extenso programa beta com parceiros e clientes da Oracle.
A nova versão do banco de dados número um para a nuvem, o Oracle Database 12c, foi também desenvolvido em conjunto com o servidor recordista mundial da Oracle: o SPARC T5.
O webcast de lançamento do Oracle Database 12c será apresentado por Andy Mendelsohn, vice-presidente sênior de Tecnologia de Servidores de Bancos de Dados da Oracle, e Tom Kyte, arquiteto da Oracle, e está programado para o dia 10 de julho de 2013, às 13h (horário de Brasília).
Nova arquitetura multitenant para consolidação de bancos de dados na nuvem
O Oracle Database 12c vence os principais desafios dos clientes que estão consolidando bancos de dados em um modelo de nuvem privada, proporcionando eficiência superior, custos de gestão expressivamente menores, ao mesmo tempo que mantém a autonomia de cada banco de dados. 
O Oracle Multitenant é um novo recurso do Oracle Database 12c e permite que cada banco de dados conectado dentro na nova arquitetura multitenant funcione como um Oracle Database padrão para os aplicativos já instalados, que poderão rodar sem alterações.
Comportando a multitenant na camada de bancos de dados, ao invés de ser nos aplicativos, o Oracle Multitenant faz com que todos os aplicativos de ISV (provedores independentes de software, em português) executados no Oracle Database fiquem prontos para SaaS.
O Oracle Multitenant gerencia diversos bancos de dados como um só e aumenta a utilização de recursos do servidor, assim como reduz o tempo e os esforços exigidos nas atualizações, backups e recuperação de bancos de dados, entre outras inúmeras facilidades.
A arquitetura multitenant oferece clonagem e provisionamento praticamente instantâneos dos bancos de dados, sendo a plataforma ideal para desenvolvimento e testes de bancos de dados nas nuvens. 
O Oracle Multitenant funciona com todos os recursos do Oracle Database, como Real Application Clusters, Partitioning, Data Guard, Compression, Automatic Storage Management, Real Application Testing, Transparent Data Encryption, Database Vault, entre outros.
Otimização automática de dados
·         Para ajudar os clientes a gerenciar mais dados com maior eficiência, reduzir os custos de armazenamento e melhorar o desempenho, o Oracle Database 12c traz novos recursos de otimização automática de dados.
·         Um Heat Map monitora a atividade de leitura/gravação do banco de dados, possibilitando que os administradores identifiquem facilmente os dados hot (muito ativos), warm (somente leitura) e cold (raramente lidos) armazenados nas tabelas e partições.
·         Por meio de compactação inteligente e armazenamento em camadas, os administradores de bancos de dados (DBAs) poderão definir facilmente as políticas gerenciadas dos servidores para automatizar a compactação e a colocação de dados de OLTP, Data Warehouse e arquivamento em camadas, com base na atividade e no tempo de existência dos dados.
Segurança em camadas
·         O Oracle Database 12c inclui mais inovações de segurança que as versões anteriores, ajudando os clientes a enfrentar as crescentes ameaças e cumprir as regulamentações cada vez mais exigentes em termos de privacidade dos dados.
·         Os novos recursos de edição permitem que as empresas protejam dados confidenciais, como números de cartões de crédito, sem ter de fazer alterações nos aplicativos que os exibem, pois são editados de maneira simultânea a execução, baseados em políticas pré-definidas e nas informações da sessão da conta.
·         O Oracle Database 12c também inclui o novo Run-Time Privilege Analysis, que permite identificar as funções e os privilégios que realmente estão sendo usados, ajudando a revogar privilégios desnecessários e aplicar o mínimo deles com a segurança de que as operações da empresa não serão prejudicadas.
Disponibilidade máxima para nuvens de bancos de dados
·         O Oracle Database 12c apresenta diversos recursos de alta disponibilidade, bem como aprimoramentos às tecnologias existentes, que viabilizam o acesso contínuo aos dados empresariais.
·         O Global Data Services oferece balanceamento de carga e failover para configurações de bancos de dados distribuídos em âmbito global.
·         O Data Guard Far Sync estende a proteção de standby a qualquer distância com zero perda de dados – sem limitações em decorrência de latência.
·         O Application Continuity complementa o Oracle Real Application Clusters e mascara as falhas dos aplicativos dos usuários finais, reproduzindo de forma automática as transações que apresentaram falhas.
Eficiência na gestão de bancos de dados
·         A integração perfeita com o Oracle Enterprise Manager 12c Cloud Control auxilia os administradores a implementar e gerenciar, com total facilidade, a nova funcionalidade do Oracle Database 12c, que inclui novidades como a arquitetura multitenant e a edição de dados.
·         Os abrangentes recursos de testes do Oracle Real Application Testing podem ajudar os clientes a validar estratégias de atualização e consolidação por meio de testes simultâneos e colocação do sistema em cargas de produção reais.
Simplificação das análises de Big Data
·         O Oracle Database 12c aprimora os recursos MapReduce residentes no banco de dados para Big Data por intermédio da correspondência de padrões de SQL, que viabiliza a descoberta imediata e escalável de sequências de eventos empresariais, como transações financeiras, logs de rede e de sequência de cliques (clickstream).
·         Os analistas de dados podem analisar as informações empresariais e Big Data com maior eficácia, devido aos novos algoritmos preditivos residentes no banco de dados e à integração ainda maior da linguagem R de código aberto com o Oracle Database 12c.

"

Fonte: TiBahia

Ass.: David de Almeida Bezerra Jr

quinta-feira, 4 de julho de 2013

Programação - Java Básico 03 - Olá mundo! - O primeiro programa!

Para tudo há um começo, e por mais inútil que seja o início, nada existiria sem ele.

Vimos no post passado como preparar o nosso ambiente de desenvolvimento JAVA (caso não tenha visto, clique aqui) e, graças a isso, é que agora conseguiremos começar a realmente escrever código. Vamos lá!

Neste primeiro contato com a linguagem, será explicada a estrutura básica de um programa em JAVA, não aprofundando muito (ainda) em determinados elementos.

Como foi falado em posts passados, a linguagem JAVA trabalha com classes, sendo que tudo é uma classe ou está dentro de uma.

Praticamente falando, uma classe é um arquivo.
Veja a imagem abaixo:
O arquivo HelloWorld.java é o Código-Fonte escrito na linguam JAVA (o que nós iremos escrever logo logo), enquanto que o HelloWorld.class é a nossa Classe JAVA gerada a partir da compilação do arquivo HelloWorld.java.

Um programa em JAVA somente pode ser iniciado através de uma classe que contenha o método Main, que segue um padrão bem simples de escrita (veremos o que são métodos nas postagens seguintes).

Observe o código abaixo:

public class NomeDaClasse {
           public static void main(String[] args){

           }
}


Este é o primeiro código que se escreve ao desenvolver um programa em JAVA, pois a partir dessas linhas é que cria-se a Classe principal e o método Main, aquele que faz com que o aplicativo seja inicializável.

O termo "public class NomeDaClasse" é quem cria e define o nome da classe.

Perceba que códigos pertencentes a um mesmo bloco ficam dentro de chaves({}), e a cada chave, parêntese ou cochete aberto, é necessário um outro para fechá-lo.

Bem, chega de papo e vamos escrever o nosso primeiro programa!

Olá Mundo!

Primeiro de tudo, abra o Eclipse.

Se é a primeira vez que você abre, ele pedirá para que informe a pasta onde será o espaço de trabalho (aonde os projetos e códigos-fonte ficarão).

Se preferir, deixe como está.

Após o carregamento, feche a aba que aparece aberta e direcione-se até o menu File > New > Java Project.
Na janela que se mostra agora, digite OlaMundo no campo Project name.
OBS.: Digite exatamente do jeito que está, sem acentos ou separações.
Pressione o botão Finish, e então o nosso projeto está criado, porém sem classes nem finalidade, logo, não pode ser compilado (transformado em programa).

Precisamos criar a nossa classe principal (aquela que contém o método Main), para isso, na barra lateral esquerda (Package Explorer), clique do lado do projeto OlaMundo para expandir as pastas, e em seguida, clique com o botão direito do mouse na pasta src.

No menu que abriu, vá até New > Class.
Digite OlaMundo no campo Name e clique em Finish.

Logo, percebemos que a Classe foi criada já com código escrito, pois é isso que as ferramentas de desenvolvimento buscam, agilizar o processo de codificação, gerando código automático.
Para estudo, aconselho que apague todo este código e escreva todo do zero, pois ajudará no processo de aprendizado.

Na parte do centro da IDE, digitaremos o seguinte código, que fará parte da classe OlaMundo:

public class OlaMundo {
         public static void main (String[] args){

         }
}

O JAVA é uma linguagem Case Sensitive (aquela que diferencia letras maiúsculas de letras minúsculas), logo digite tudo do jeito que está aí em cima, respeitando maiúsculas e minúsculas.

Pronto! Criamos o alicerce da nossa classe!
OBS.: O Eclipse consegue gerar todo esse código automaticamente (inclusive o método Main), mas por questão de aprendizado (falo novamente ^^), é preferível digitar todo o conteúdo.

Agora, clique com o botão direito em cima da classe OlaMundo (no Package Explorer ou no Editor) e direcione-se até Run As > Java Application.

Perceba que nada acontece, porém o programa foi gerado.

Nada acontece porque o aplicativo não foi programado para fazer nada.
Vamos dar uma finalidade para ele! Digite, em seu código, a linha em vermelho abaixo:

public class OlaMundo {
         public static void main (String[] args){
                      System.out.println("Olá Mundo!");
         }
}

Agora execute do mesmo jeito que fizemos anteriormente.
Perceba que o programa escreveu no console "Olá Mundo!".
Isto aconteceu porque na linha System.out.println("Olá Mundo!"); programamos a aplicação para imprimir na tela a string (texto) que está entre parênteses.

String é um tipo de dados, e dados são valores armazenados que os programas utilizam para guardar resultados ou realizar operações.

Bem, isso é tudo, e no próximo post veremos mais sobre tipos de dados, variáveis e operações com valores.

Ass.: David de Almeida Bezerra Jr

quarta-feira, 3 de julho de 2013

Programação - Java Básico 02 - Instalando o Ambiente de Desenvolvimento

Mesmo uma linguagem de programação compilada-interpretada precisa de um ambiente de desenvolvimento!

Seguindo a nossa série de posts sobre a linguagem JAVA, esta é a segunda parte desta onda, sendo que será abordado a preparação do seu ambiente de desenvolvimento JAVA. Chega de papo! Mãos "na obra"!

JRE e JDK

Como vimos no post passado, programas precisam de um Compilador, para serem gerados, e de um Launcher, para serem executados (veja o post anterior). O Compilador da linguagem JAVA é o JDK (Java Development Kit), e o Launcher (Máquina Virtual) é o JRE (Java Runtime Environment). Ambos são baixáveis no site do Java. Acessem e baixem nos links abaixo:


Faça os downloads e instale as versões corretas para o seu Sistema Operacional (Windows, Linux, etc...).

IDE (Integrated Development Environment)

Agora precisamos de um Editor para começarmos a criar os nossos programinhas, e dentre muitos, o meu preferido é o Eclipse.

Sinta-se a vontade para explorar novas IDEs.

O Eclipse não é só uma ferramenta para JAVA, mas também para outras linguagens, logo baixe a versão correta. Eu indico a Eclipse IDE for Java Developers.


Baixe e descompacte, de preferência, em uma pasta dentro do diretório do usuário. Exemplo (No Windows - C:\Users\David\eclipse; No Linux - /home/david/eclipse).

Pronto! Agora nosso ambiente de desenvolvimento JAVA  já está pronto! Para testar se está tudo OK, execute o programa eclipse, dentro da pasta extraída.

No próximo passo, iremos gerar o nosso primeiro programa em JAVA!

Qualquer dúvida ou problemas encontrados, deixem nos comentários!

Ass.: David de Almeida Bezerra Jr 

Programação - Java Básico 01 - O que é a Linguagem JAVA

A linguagem JAVA é uma das mais usadas hoje em dia, nos garantindo inúmeras possibilidades.

Este é o primeiro de muitos outros posts voltado à área de programação, e como primeira linguagem, foi escolhido o JAVA, que é uma das mais difundidas entre os programadores da atualidade.

Neste primeiro momento estaremos conhecendo um pouco sobre a linguagem de programação a ser estudada, abordando sobre Launcher, CompiladorEditor perante a linguagem JAVA.

Mas o que são launchers, compiladores e editores?

Launcher

Bem, um launcher é aquele programa, ou conjunto de programas que executam os programas. Isso mesmo, para que um programa seja executado, ele precisa ser chamado por outro.

No JAVA, se quisermos abrir um programa "na mão", precisamos abrir um terminal (No Microsoft  Windows, Menu Iniciar > Executar, digita CMD e tecle Enter) , digitar "java NomedaClasse.class" ou "java -jar NomeDoPrograma.jar".

Esta linguagem trabalha com Orientação a Objetos, sendo que tudo gerado nela se transforma em classe ou está dentro de uma.

Uma Linguagem Orientada a Objetos tenta tratar o código de uma forma mais humana, possibilitando abstrair um objeto da vida real para dentro do código-fonte. 

Exemplo:

Banco

Se fôssemos criar uma classe para este objeto, precisaríamos capturar atributos (Nada de programação ainda), então:

Classe Banco {
      Atributo cor=marrom;
      Atributo material=madeira;
      Atributo tipo=tamburete;
}

Veremos mais a frente o que é classe, objeto e como tratá-los.

Compilador

É o programa, ou o conjunto de programas, que transforma o código-fonte escrito na linguagem de programação para a linguagem de máquina (o programa em si).

A linguagem JAVA não é como as tradicionais, que gera um programa binário que é executado pelo launcher padrão do sistema operacional (linguagem compilada), nem mesmo funciona como scripts de linguagens interpretadas.

Na verdade, esta linguagem é uma híbrida, pois primeiro o programa é compilado, porém são gerados bytecodes, que são interpretados pelo Launcher padrão do JAVA, que nós chamamos de Máquina Virtual JAVA (JVM).

Editor

Também chamados de IDE, é o ambiente onde criamos o código-fonte.

Existem IDEs chamadas ferramentas RAD (Rapid Application Development), que nos ajudam a programar de uma forma muito mais rápida, e inclusive iremos utilizar uma dessas ferramentas para trabalhar.

Em nosso próximo post estaremos instalando o nosso ambiente de desenvolvimento.

Ass.: David de Almeida Bezerra Jr

Artigo - De volta a ativa!

  
Olá a todos que visitam este humilde diário de informações!

Venho hoje até vocês para informar a retomada das atividades do blog, pois uma poderosa fonte de informações como esta não pode parar, não é verdade?

Estaremos criando uma nova categoria de Posts, que é ela a "Programação".

Dentro deste novo universo estaremos postando dicas básicas e avançadas sobre desenvolvimento de softwares e banco de dados.

Então, posso garantir aos senhores e senhoras que o nosso Diário da Informática ficará muito mais interessante daqui para frente.

Até a próxima!

Ass.: David de Almeida Bezerra Jr

domingo, 2 de setembro de 2012

Artigo - Ideias, o caminho do sucesso!

Hoje em dia(e acho que sempre) o ser humano estuda intensamente em média 1/3 da sua vida para que possa conseguir um bom trabalho em uma empresa de respeito. Mas será que o objetivo final realmente vale a pena?

Tanto profissionais bem formados quanto aqueles com nenhuma formação, normalmente trabalham 8(oito) horas por dia e 5-6 dias por semana, e às vezes até mais. Levando em conta o salário, muitos cargos valem e muito a pena, porém já se falando do proveito da vida do indivíduo nós não podemos dizer o mesmo.

Sigam o raciocínio: um profissional bem formado sai de casa às 8h e vai ao trabalho. Sai para o horário de almoço às 12h. Retorna às 14h. Volta outra casa às 18h morrendo de cansaço, não tendo nem energia para dar atenção a esposa ou aos filhos. Como um indivíduo pode aproveitar a vida deste jeito?

Uma boa opção, como sugere o título da postagem, é a confecção de uma ideia lucrativa, como a produção de um site de alguma coisa.

Fica a dica para quem deseja ter mais tempo para a sua própria vida e mais dinheiro no bolso.

David de Almeida Bezerra Jr.