Você está aqui: Principal » Lista Completa de Tutoriais

Sobre este Tutorial

Autor: Mauricio Pereira Borges Junior
Data: 25-10-2006
Categoria: Programação
Assunto: C# - BÁSICO
Visitas:
E-mail: mauricio@ascompras.com
Site: http://www.mauriciojunior.org/
Avaliação: ( voto)
1 2 3 4 5
Comentários: Ler / Escrever

Nova forma de utilizar cache utilizando Visual Studio.NET 2005

 

 

Bom, meu objetivo é mostrar como criar de uma nova forma cache de acesso a dados com pool de conexões. Com o uso da internet e as facilidades que a mesma atribui a todos que a utilizam, surgiu outra preocupação com softwares e sites dinâmicos, acesso a banco de dados, número de pessoas que acessam sistemas pela internet. A rapidez das informações mostradas ao cliente conta muito para que haja confiança e credibilidade pela parte do usuário.

 

Imagine uma pessoa acessando ao site que automaticamente busca a informação do banco de dados, não importa qual banco. Um cliente acessando o banco de dados é bem tranqüilo, agora imagine 10.000 clientes ao mesmo tempo acessando o mesmo site de notícias ou de venda de produtos. Se o software desenvolvido não foi preparado para essa quantidade de pessoas acessando ao mesmo momento, pode ocorrer um risco de travar ou elevar o nível de processamento e memória do servidor, ou seja, caso não tratado de uma forma correta, pool de conexões ou aproveitamento de conexão já criada, pode demorar por demais mostrar ao usuário ou cliente a notícia ou produto. Quem perde é você dono do site ou empreendimento de vendas, nos dias de hoje os usuários já não têm muita paciência para esperar muito tempo, isso é um erro muito grave junto aos jovens, crianças e adultos; não saber esperar 30 segundos, 10 segundos, o que seja.

 

Referências necessárias:

 

- Framework 2.0;

- Visual Studio .NET 2005;

- Sql Express 2005;

- Linguagem C#.NET;

- Imagine que um projeto do tipo WEB já esteja criado.

 

A criação de cache e pool de conexão para a versão 2005 da IDE Visual Studio .NET está mais robusta e eficaz do que a versão anterior. O arquivo web.config já está preparado para a funcionalidade. O primeiro de tudo é criar e configurar o caching. Referência 1.1.

 

Arquivo WEB.CONFIG

 

<connectionStrings>

    <add name="SiteDB" connectionString="Data Source=.\SQLEXPRESS;

      Integrated Security=True; User Instance=True;

      AttachDBFilename=|DataDirectory|\AspNetDB.mdf;"

      providerName="System.Data.SqlClient"/>

</connectionStrings>

 

<system.web>

    <caching>

      <sqlCacheDependency enabled="true" pollTime="10000">

        <databases>

          <add name="siteDB" connectionStringName="SiteDB" pollTime="2000"/>

        </databases>

      </sqlCacheDependency>

    </caching>

</system.web>

 

Referência: 1.1

 

Explicação:

 

A primeira tag <connectionStrings> é a nova forma utilizada para conexão com banco de dados sql express 2005. O nome do banco de dados criado é ASPNETDB.mdf. O nome “SiteDB” é para referenciá-lo dentro do código C#.NET a string de conexão.

 

<caching>

      <sqlCacheDependency enabled="true" pollTime="10000">

        <databases>

          <add name="siteDB" connectionStringName="SiteDB" pollTime="2000"/>

        </databases>

      </sqlCacheDependency>

    </caching>

 

Referência: 1.2

 

A tag está localizada dentro da <system.web> logo após do fecho </connectionStrings>. Habilito o sqlCacheDependecy com o pollTime igual a 10000. Abri uma outra tag chamada <databases> onde defino qual a conexão do banco de dados utilizar com um pollTime específico a ele.

 

<add name="siteDB" connectionStringName="SiteDB" pollTime="2000"/>

 

Referência: 1.3

 

Na referência 1.3, adicionei um nome “siteDB” minúsculo onde indico a connectionStringName referenciada na string de conexão anteriormente, ou seja, a que está dentro da <connectionStrings>. O atributo connectionStringName possui o mesmo nome da connectionString, isso significa que foi referenciado qual o pool escolhido para determinado banco de dados. Essa nova funcionalidade é legal porque posso referencia ou colocar quantos bancos de dados quiser para dentro da aplicação. Grave bem o atributo name adicionado de forma minúscula, usarei em breve dentro do código para fazer o caching.

 

Depois de configurado no web.config vou direto para o banco de dados definir tabela e campos. Referência 1.4.

 

Referência: 1.4

 

No banco de dados defini apenas dois campos como na figura de referência 1.4. Não esqueça de colocar o campo ID como auto-incremento. O campo CustomerName é do tipo nvarchar e do tamanho de 100 caracteres, ou seja, serve apenas para colocar o nome.

 

Este banco foi criado utilizando a IDE Visual Studio.NET 2005 pela aba SOLUTION EXPLORER. (Referência 1.5)

 

Referência: 1.5

 

Depois de criado o banco de dados, populei alguns dados.

 

Codificando código na classe

 

Cliquei com o botão direito do mouse em cima do projeto e adicionei um novo item cujo o “template” é o “Class”. Coloquei o nome de CustomerDetails.cs que ficou dentro da pasta APP_CODE. Dentro da classe adicionei apenas Get e Set dos campos criados no banco de dados, ou seja, mapeamento do banco de dados. Referência 1.6

 

using System;

using System.Data;

using System.Configuration;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Web.UI.HtmlControls;

 

/// <summary>

/// Summary description for CustomerDetails

/// </summary>

public class CustomerDetails

{

      public CustomerDetails()

      {

            //

            // TODO: Add constructor logic here

            //

      }

    private int _id;

    private string _customerName;

    public string CustomerName

    {

        get { return _customerName; }

        set { _customerName = value; }

    }

    public int Id

    {

        get { return _id; }

        set { _id = value; }

    }

}

 

Referência: 1.6

 

Note que declarei as variáveis, uma do tipo int e outra do tipo string. Para gerar o Get e Set automático, utilize o atalho CRTL + R e CRTL + E posicionado o mouse em cima da variável. Caso contrário utilize o menu refactory / encapsulate field...

 

Referência: 1.7

 

A referência 1.7 mostra o local correto onde ficou a classe criada apenas com o Get e Set dos campos. Depois de montado e configurado corretamente, criei a página “Default.aspx” para mostrar os resultados.

 

Aviso antes que não utilizarei o padrão MVC porque iria aumentar muito este artigo falando apenas de MVC, cujo não é o nosso objetivo, mas sim mostrar como funciona o novo sistema utilizando cache e sqldependency.

 

Dentro da página “Default.aspx”, adicionei o componente GridView com dois campos BoundField. Estes dois campos foram declarados com o mesmo nome da classe “CustomerDetails.cs”. Referência 1.8

 

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

 

<html xmlns="http://www.w3.org/1999/xhtml" >

<head runat="server">

    <title>CACHE</title>

</head>

<body>

    <form id="form1" runat="server">

    <div>

        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false">

            <Columns>

                <asp:BoundField DataField="id" />

                <asp:BoundField DataField="customerName" />

            </Columns>

        </asp:GridView>

    </div>

    </form>

</body>

</html>

 

Referência: 1.8

 

Dentro da classe “Default.aspx.cs” é onde está o segredo para o cache. No Page_Load preencho o componente GridView chamando um método. Referência 1.9.

 

protected void Page_Load(object sender, EventArgs e)

    {

        this.GridView1.DataSource = GetDados();

        this.GridView1.DataBind();

    }

 

Referência: 1.9

 

GetDados() é um método que retorna um List<CustomerDetails> utilizando genérics. Antes de criar o método, importe as seguintes classes. Referência 1.10.

 

//importes

using System.Web.Caching;

using System.Data.SqlClient;

using System.Collections.Generic;

 

Referência: 1.10

 

O método GetDados não recebe parâmetros porém retorna uma lista de dados. Utilizarei SqlDataReader para buscar os dados e preencher a lista.

 

private List<CustomerDetails> GetDados()

    {

        List<CustomerDetails> customers = null;

        if (Cache["Customers"] != null)

        {

            customers = (List<CustomerDetails>)Cache["Customers"];

        }

        else

        {

            using (SqlConnection cn = new SqlConnection(System.Configuration.ConfigurationManager.
ConnectionStrings["SiteDB"].ConnectionString))

            {

                try

                {

                    SqlCommand cmd = new SqlCommand("Select id, CustomerName from Customers", cn);

                    cn.Open();

                    List<CustomerDetails> list = new List<CustomerDetails>();

                    customers = FillDados(cmd, list);

 

System.Web.Caching.SqlCacheDependencyAdmin.EnableNotifications(System.

Configuration.ConfigurationManager.ConnectionStrings["SiteDB"].

ConnectionString);

 

SqlCacheDependencyAdmin.EnableTableForNotifications(System.Configuration.

ConfigurationManager.ConnectionStrings["SiteDB"].ConnectionString,

"Customers");

 

SqlCacheDependency dep = new SqlCacheDependency("siteDB", "Customers");

                    Cache.Insert("Customers", customers, dep);

                }

                catch (DatabaseNotEnabledForNotificationException ex)

                {

                    throw ex;

                }

            }

        }

        return customers;

    }

 

Referência: 1.11

 

Explicação:

 

Antes de tudo, a análise da assinatura do método é muito importante para o resto do entendimento. Referência 1.12.

 

private List<CustomerDetails> GetDados()

 

Referência: 1.12

 

É do tipo privado, não recebe dados e retorna um List<CustomerDetails> cujo é a classe criada anteriormente.

 

List<CustomerDetails> customers = null;

        if (Cache["Customers"] != null)

        {

            customers = (List<CustomerDetails>)Cache["Customers"];

        }

 

Referência: 1.13

 

O próximo passo foi declarar uma lista chamada customers igualando ao valor null. Em seguida adicionei uma condição perguntando se o “Cache[“Customers”]” é diferente de null, caso for, a lista “customers” declarada acima receber um cache de dados do Cache[“Customers”].

 

Caso não tiver preenchido será necessário ir ao banco de dados utilizando a string de conexão do web.config, fazer um select, buscar os dados e preencher a lista de dados. Referência 1.14

 

else

        {

            using (SqlConnection cn = new

SqlConnection(System.Configuration.ConfigurationManager.

ConnectionStrings["SiteDB"].ConnectionString))

            {

                try

                {

                    SqlCommand cmd = new SqlCommand("Select id, CustomerName from Customers", cn);

                    cn.Open();

                    List<CustomerDetails> list = new List<CustomerDetails>();

                    customers = FillDados(cmd, list);

 

System.Web.Caching.SqlCacheDependencyAdmin.EnableNotifications

(System.Configuration.ConfigurationManager.ConnectionStrings["SiteDB"].

ConnectionString);

 

SqlCacheDependencyAdmin.EnableTableForNotifications(System.

Configuration.ConfigurationManager.ConnectionStrings["SiteDB"].

ConnectionString, "Customers");

 

SqlCacheDependency dep = new SqlCacheDependency("siteDB", "Customers");

                    Cache.Insert("Customers", customers, dep);

                }

                catch (DatabaseNotEnabledForNotificationException ex)

                {

                    throw ex;

                }

            }

        }

 

Referência: 1.14

 

No else, a primeira linha é buscar a conection string. Referência 1.15

 

using (SqlConnection cn = new

SqlConnection(System.Configuration.ConfigurationManager.

ConnectionStrings["SiteDB"].ConnectionString))

 

Referência: 1.15

 

Lembre-se que dentro do web.config existe o nome [SiteDB] cujo é a conectionstring adicionada logo no começo deste artigo. Passando para as próximas linhas do código, adicionei try e catch onde faz select no banco de dados, executa datareader, preenche os dados e faz o cache. Referência 1.16

 

try

                {

                    SqlCommand cmd = new SqlCommand("Select id, CustomerName from Customers", cn);

                    cn.Open();

                    List<CustomerDetails> list = new List<CustomerDetails>();

                    customers = FillDados(cmd, list);

 

System.Web.Caching.SqlCacheDependencyAdmin.EnableNotifications(System.

Configuration.ConfigurationManager.ConnectionStrings["SiteDB"].

ConnectionString);

 

SqlCacheDependencyAdmin.EnableTableForNotifications(System.

Configuration.ConfigurationManager.ConnectionStrings["SiteDB"].

ConnectionString, "Customers");

 

SqlCacheDependency dep = new SqlCacheDependency("siteDB", "Customers");

                    Cache.Insert("Customers", customers, dep);

                }

                catch (DatabaseNotEnabledForNotificationException ex)

                {

                    throw ex;

                }

 

Referência: 1.16

 

Explicação:

 

Logo após o try adicionei um SqlCommand com um select dos campos, abri o banco de dados com o comando Open() e criei uma nova variável list do tipo List<CustomerDetails>. Referência 1.17.

 

SqlCommand cmd = new SqlCommand("Select id, CustomerName from Customers", cn);

cn.Open();

List<CustomerDetails> list = new List<CustomerDetails>();

 

Referência: 1.17

 

Dentro deste método, acabei acessando outro para buscar e executar o SqlDataReader adicionando na lista todo o resultado. Este método chama “FillDados”.

 

customers = FillDados(cmd, list);

 

Referência: 1.18

 

Note que este novo método recebe como entrada SqlCommand e a lista de dados. A lista customers recebe o resultado do método. Antes de terminar o método “GetDados”, mostrarei o método FillDados. Referência 1.19.

 

private List<CustomerDetails> FillDados(SqlCommand cmd, List<CustomerDetails> list)

    {

        using (SqlDataReader dataReader = cmd.ExecuteReader())

        {

            while (dataReader.Read())

            {

                CustomerDetails coll = new CustomerDetails();

                coll.Id = (int)dataReader["id"];

                coll.CustomerName=(String)dataReader["CustomerName"];

                list.Add(coll);

            }

         return list;

        }

    }

 

Referência: 1.19

 

Explicação:

 

Adicionei a variável dataReader executando o comando cmd.ExecuteReader(). Enquanto estiver dados crio uma variável “coll” do tipo CustomerDetails e atribuo os campos Id igual ao resultado do Reader[“id”]. Da mesma forma faço com o CustomerName; adiciono o dataReader[“CustomerName”] e ao final pego a lista criada e adiciono com o Add(coll) passando a variável coll.

 

Ao final preciso retornar uma lista, esta lista deve ser do tipo List<CustomerDetails> cujo tenho o list. Referência 1.20.

 

return list;

 

Referência: 1.20

 

Após retornar a list do método “FillDados” preciso habilitar o cache pelo sqlCacheDependencyAdmin cujo deixo ativo o banco de dados para cache. Preciso habilitar a tabela do banco de dados utilizando o EnableTableForNotifications. No final insiro o cache utilizando o método Cache.Insert. Referência 1.21

 

customers = FillDados(cmd, list);

//habilita o cache para o banco de dados para o uso do cache

System.Web.Caching.SqlCacheDependencyAdmin.EnableNotifications(System.

Configuration.ConfigurationManager.ConnectionStrings["SiteDB"].

ConnectionString);

//habilita a tabela do banco de dados para o uso do cache

SqlCacheDependencyAdmin.EnableTableForNotifications(System.

Configuration.ConfigurationManager.ConnectionStrings["SiteDB"].

ConnectionString, "Customers");

SqlCacheDependency dep = new SqlCacheDependency("siteDB","Customers");

 

//inserir o cache

Cache.Insert("Customers", customers, dep);

 

Referência: 1.21

 

Explicação:

 

Note que a linha que habilita o SqlCacheDependencyAdmin serve para autorizar que determinado banco de dados possa utilizar cache. Tenho que passar como parâmetro a conectionString dentro do web.config.

 

SqlCacheDependency dep = new SqlCacheDependency("siteDB","Customers");

 

Referência: 1.22

 

Na referência 1.22 é onde indico o nome da tag informada dentro do web.config e o nome da tabela cujo desejo fazer o cache. Logo após basta utilizar o cache.Insert passando a variável criada do tipo SqlCacheDependecy.

 

Cache.Insert("Customers", customers, dep);

 

Referência: 1.23

 

Com este método, coloco a chave como parâmetro, a lista de dados e a variável cache. Vejamos o funcionamento do sistema.

 

Cliquei F5 para iniciar o sistema.

 

Referência: 1.24

 

Pela primeira vez, o cache ainda não foi feito, portanto o mesmo utiliza o select com todo o procedimento. Coloquei um breakpoint junto ao método PAGE_LOAD. Referência 1.25.

 

Referência: 1.25

 

Apertei F5 no browser e notei que não passou nem mesmo pelo breakpoint que coloquei, ou seja, foi criado um cache cujo nem mesmo precisou acessar o método para retornar os dados.

 

Bom, espero que tenham gostado. Fico por aqui e qualquer problema favor entrar em contato pelo e-mail: mauricio@aspneti.com ou mauricio@ascompras.com.

 

Mauricio Junior

 

www.aspneti.com

www.mauriciojunior.org

 

 

LISTA DE TODOS OS TUTORIAIS DISPONÍVEIS

 

LIVROS CAMPEÕES DE VENDA NO SITE

Cursos Online com Certificado e Suporte à Dúvidas

CURSOS ONLINE COM CERTIFICADO - INDICADOS POR JÚLIO BATTISTI
EM PARCERIA COM CURSOS 24 HORAS
AdministraÇÃo
  • Administração Contábil e Financeira
  • Administração de Empresas
  • Administração do Tempo
  • Aprenda a Falar em Público
  • Chefia e Liderança
  • Departamento Pessoal
  • Empreendedorismo
  • Gestão da Qualidade
  • Gestão de Compras
  • Gestão de Projetos
  • Gestão Escolar
  • Gestão Hoteleira
  • Gestão Pública
  • Logística
  • Matemática Financeira HP 12C
  • Planejamento Estratégico
  • Qualidade de Vida no Trabalho
  • COMUNICAÇÃO E MARKETING
  • Administração de Empresas
  • Aprenda a Falar em Público
  • Comércio Exterior
  • Empreendedorismo
  • Escrita e Redação
  • Etiqueta Social e Empresarial
  • Jornalismo Online
  • Marketing Pessoal
  • Marketing Social
  • Planejamento Estratégico
  • Produção de Eventos
  • Propaganda e Marketing
  • Sucesso Profissional
  • Técnicas de Vendas
  • Telemarketing
  • CONCURSOS PÚBLICOS
  • Conhecimentos Bancários
  • Gestão Pública
  • Memorização e Leitura Dinâmica
  • Noções Gerais de Direito
  • Raciocínio Lógico
  • CONTABILIDADE E ECONOMIA
  • Administração Contábil e Financeira
  • Administração de Empresas
  • Bolsa de Valores
  • Comércio Exterior
  • Conhecimentos Bancários
  • Contabilidade Básica
  • Finanças Pessoais
  • Matemática Financeira HP 12C
  • DIREITO
  • Assistente Social
  • Departamento Pessoal
  • Gestão Pública
  • Noções Gerais de Direito
  • GESTÃO E LIDERANÇA
  • Administração de Empresas
  • Administração do Tempo
  • Aprenda a Falar em Público
  • Chefia e Liderança
  • Empreendedorismo
  • Etiqueta Social e Empresarial
  • Gestão de Compras
  • Gestão de Projetos
  • Gestão Escolar
  • Gestão Hoteleira
  • Gestão Pública
  • Marketing Pessoal
  • Memorização e Leitura Dinâmica
  • Negociação
  • Propaganda e Marketing
  • Recolocação Profissional
  • Secretariado Executivo
  • Sucesso Profissional
  • INFORMÁTICA
  • Access 2007
  • ASP
  • AutoCad 2D
  • AutoCad 3D
  • CorelDraw
  • Excel 2007
  • Flash
  • Linux
  • MS Project 2007
  • Photoshop
  • PowerPoint 2007
  • Raciocínio Lógico
  • Redes e Noções de Hardware
  • Segurança na Internet
  • Webmaster
  • Windows 7
  • Word 2007
  • Word e Excel
  • MEIO AMBIENTE
  • Educação Ambiental
  • Guia de Turismo
  • Marketing Social
  • Reciclagem e Energias Renováveis
  • PEDAGOGIA
  • Bullying
  • Distúrbios de Aprendizagem
  • Educação Ambiental
  • Educação de Jovens e Adultos
  • Educação Especial
  • Educação Infantil
  • Escrita e Redação
  • Gestão Escolar
  • Saúde Emocional do Educador
  • ProfissionalizanteS
  • Administração de Empresas
  • Assistente Social
  • Comércio Exterior
  • Departamento Pessoal
  • Educação de Jovens e Adultos
  • Educação Infantil
  • Enfermagem
  • Fotografia Digital
  • Gestão da Qualidade
  • Gestão de Compras
  • Guia de Gastronomia
  • Guia de Turismo
  • Jornalismo Online
  • Logística
  • Produção de Eventos
  • Recepcionista de Hotel
  • Recrutamento e Seleção
  • Secretariado Executivo
  • Segurança do Trabalho
  • Técnicas de Vendas
  • Telemarketing
  • Webmaster
  • RECURSOS HUMANOS
  • Administração de Empresas
  • Departamento Pessoal
  • Gestão Pública
  • Qualidade de Vida no Trabalho
  • Recrutamento e Seleção
  • SAÚDE
  • Assistente Social
  • Bullying
  • Enfermagem
  • Primeiros Socorros
  • Saúde Emocional do Educador
  • Segurança do Trabalho
  • TURISMO E HOTELARIA
  • Gestão Hoteleira
  • Guia de Gastronomia
  • Guia de Turismo
  • Recepcionista de Hotel
  • CURSOS ONLINE COM CERTIFICADO - INDICADOS POR JÚLIO BATTISTI
    EM PARCERIA COM BRAVA CURSOS
    INFORMÁTICA
  • Curso de Digitação
  • Formatando e Instalando Computador
  • Excel para Iniciantes
  • Curso Compre no Ebay
  • Informática Educativa
  • Curso de Linux
  • Segurança na Internet
  • Montagem e Manutenção de Computadores
  • Curso Remoção de Vírus
  • Curso Ubuntu
  • Instalação Linux - Ubuntu
  • AdministraÇÃo
  • Gestão de Projetos e Empreendedorismo
  • Benefícios da Previdência
  • Curso HP 12C
  • Matemática Financeira
  • Curso Análise Salarial
  • Processo de Elaboração de Questionário
  • Excelência no Atendimento ao Cliente
  • Logística do Transporte
  • Licitações e Contratos Administrativos
  • Profissionalizante
  • Adestramento Canino
  • Como fazer pesquisa Científica e Monografia
  • Curso de Corte e Costura
  • Supervisor de Telemarketing
  • Balconista de Padaria
  • Curso Educação Infantil
  • Recepcionista e Secretaria
  • Velas Artesanais
  • Relações Interpessoais
  • Curso de Arbitragem
  • Bullying e Cyberbullying
  • Capacitação de Tutores em EAD
  • EstÉtica
  • Curso de Massoterapia
  • Curso de Depilação
  • Drenagem Linfática
  • Curso de Maquiagem
  • Limpeza Turbinada de Pele
  • Alisamento e Relaxamento Capilar
  • Curso de Etiqueta
  • SPA de Vinhoterapia na Estética Facial
  • Curso de Shantala
  • Introdução à Colorimetria Capilar
  • Pessoal
  • Curso de Caligrafia
  • Memorização
  • Chefia e Liderança
  • Curso Falar em Público
  • Curso Bases Neurológicas
  • Leitura Dinâmica
  • Planejamento de Projeto Pessoal
  • Reforma Ortográfica
  • Como Passar em Concursos Públicos
  • Direção Defensiva
  • Administração do Tempo
  • Curso de Redação
  • Curso de Meditação
  • Como Passar no Vestibular
  • Atualização Gramatical
  • NegÓCIOS
  • Relações Humanas e Ética Profissional
  • Marketing e Vendas Diretas
  • Persuasão em Vendas
  • Entretenimento
  • Curso de Mágica
  •  
    SaÚde
  • Primeiros Socorros
  • Curso de Fitoterapia
  • Curso de Aromaterapia
  • Medicina Alternativa
  • Plantas Medicinais
  • Técnicas básicas de Enfermagem
  • O Trabalho do Agente Comunitário de Saúde
  • Ergonomia - Postura Correta em Frente ao Computador
  • Ética Profissional - Ênfase em Radiologia
  • Adolescência: Visão Saúde do Assunto
  • Meio Ambiente
  • Curso Gestão Ambiental
  • Jardinagem e Paisagismo
  • Curso de Reciclagem
  • Curso de Bonsai
  • MÚsica
  • Curso de Violão
  •  
    NutriÇÃo
  • Higiene e Manipulação de Alimentos
  • Congelamento de Alimentos
  • Culinária Básica
  • Culinária Intermediária
  • RelaÇÕes Humanas
  • Curso Gestão de Pessoas
  • Departamento Pessoal
  • Desenvolvimento Pessoal Empresarial
  • Curso de Telemarketing
  • Curso Dinâmica em Grupo
  • Rescisão Contrato de Trabalho
  • Folha de Pagamento na Prática
  • Atendimento ao Cliente
  • Adm. da Empregada Doméstica
  • Curso de Homolognet
  • Recursos Humanos - Férias
  • Recursos Humanos - 13° Salário
  • Registro de Empregados
  • Web Master
  • Curso de HTML
  • Curso de WordPress
  • Curso de HTML5
  • Designer GrÁfico
  • Curso de Corel Draw
  • Efeitos Especiais com InDesign CS5
  • Efeitos Tipográficos com InDesign CS5
  • CURSO EM FORMATO DE VÍDEO-AULA
    EXEMPLOS PRÁTICOS PASSO A PASSO COM SOM E IMAGEM
    Clique no curso para informações detalhadas
    Curso Duração Informações
    ACCESS
    Vídeo Aula: Access 2007 - Consultas - Curso Completo e Prático 4:30h Clique aqui
    Vídeo Aula: Access 2007 - Curso Básico e Prático 5:30h Clique aqui
    Vídeo Aula: Access 2007 - Curso Intermediário - Passo a Passo 5:00h Clique aqui
    Vídeo Aula: Access 2007 Avançado Macros e Programação VBA 11:30h Clique aqui
    Vídeo Aula: Access 2010 - Básico + Intermediário 3:00h Clique aqui
    Vídeo Aula: Access 2010 - Curso Avançado - Passo a Passo 02:00h Clique aqui
    Vídeo Aula: Aprenda Access 2007 - Curso Prático 1:30h Clique aqui
    Vídeo Aula: Formulários e Macros no Access 2007 - Curso Prático 6:00h Clique aqui
    Vídeo-Aula - Access 2007 - Curso Básico 2:01h Clique aqui
    Vídeo-aula - Access 2007 - Tudo Sobre Consultas 2:30h Clique aqui
    Vídeo-Aula - Curso Avançado de Access 2003 2:48h Clique aqui
    Vídeo-Aula - Curso Básico de Access 2003 2:49h Clique aqui
    EXCEL
    Vídeo-aula - Curso de Macros e Programação VBA no Excel - Básico e In... 13:02h Clique aqui
    Vídeo-Aula: Excel 2007 - Curso Avançado 6:00h Clique aqui
    Vídeo-Aula: Excel 2007 Avançado - Passo a Passo 7:30h Clique aqui
    Vídeo Aula: Aprenda Excel 2007 - Avançado 1:30h Clique aqui
    Vídeo Aula: Aprenda Excel 2007 - Curso Básico 1:30h Clique aqui
    Vídeo Aula: Aprenda Excel 2007 - Intermediário 1:30h Clique aqui
    Vídeo Aula: Criando Formulários no Excel - Usando Programação VBA - Pa... 3:30h Clique aqui
    Vídeo Aula: Excel 2010 - Básico e Intermediário 7:36h Clique aqui
    Vídeo aula: Excel 2010 - Dashboards - Curso Completo 2:49h Clique aqui
    Vídeo Aula: Formatação Condicional no Excel 2007 2:00h Clique aqui
    Vídeo Aula: Funções de Pesquisa no Excel 2007 2:00h Clique aqui
    Vídeo Aula: Gráficos no Excel 2007 e Excel 2010 - Curso Completo 3:33h Clique aqui
    Vídeo Aula: Macros e Programação VBA no Excel 2007 - Básico + Intermed... 11:00h Clique aqui
    Vídeo Aula: Macros e Programação VBA no Excel 2007 Curso Avançado 4:00h Clique aqui
    Vídeo Aula: Programação VBA no Excel 2010 - Básico e Intermediário 02:30h Clique aqui
    Vídeo Aula: Tabelas Dinâmicas no Excel 2007 - Curso Completo 2:30h Clique aqui
    Vídeo Aula: Trabalhando com Datas e Horas no Excel 2007 2:20h Clique aqui
    Vídeo Aula: Tudo Sobre Funções de Texto no Excel 2007 2:00h Clique aqui
    Vídeo-Aula - Criando um Cadastro de Clientes com o VBA no Excel 2003 2:14h Clique aqui
    Vídeo-aula - Criando uma Agenda no Excel 0:40h Clique aqui
    Vídeo-aula - Curso de Macros e Programação VBA no Excel - Avançado 11:27h Clique aqui
    Vídeo-aula - Excel 2003 - Curso Básico 3:03h Clique aqui
    Vídeo-Aula - Excel 2007 - Dashboards - Curso Completo 1:30h Clique aqui
    Vídeo-Aula - Tabelas Dinâmicas Avançadas no Excel 2003 2:00h Clique aqui
    Vídeo-aula - Tudo Sobre Funções Matriciais no Excel 2:30h Clique aqui
    Vídeo-Aula - Tudo Sobre Gráficos no Excel 2003 9:00h Clique aqui
    Vídeo-aula interativa: Tudo Sobre Tabelas Dinâmicas no Excel 2003 2:30h Clique aqui
    Vídeo-Aula: Excel 2003 Avançado em 120 Lições 14:00h Clique aqui
    Vídeo-aula: Excel 2007/2010 Básico + Intermediário em 26 Lições 3:00h Clique aqui
    WORD
    Vídeo Aula: Aprenda Word 2007 - Curso Prático 1:30h Clique aqui
    Vídeo-Aula - Curso Básico de Word 2003 2:14h Clique aqui
    Vídeo-aula - Word 2003 Avançado 1:34h Clique aqui
    Vídeo-aula - Word 2003 Básico 2:14h Clique aqui
    Vídeo-Aula - Word 2007 - Curso Básico 2:23h Clique aqui
    Vídeo-Aula: Word 2007 - Curso Básico Passo a Passo 02:00h Clique aqui
    POWERPOINT
    Vídeo Aula: Aprenda PowerPoint 2007 - Curso Prático 1:30h Clique aqui
    Vídeo-Aula - Curso Básico de PowerPoint 2003 2:22h Clique aqui
    WINDOWS
    Vídeo Aula: Aprenda Windows 7 - Curso Prático 1:30h Clique aqui
    Vídeo-Aula - Curso Básico de Windows XP 2:36h Clique aqui
    Vídeo-Aula - Windows 7 - Formatação, Instalação e Configuração 3:40h Clique aqui
    Vídeo-Aula - Windows Server 2003 e Active Directory - Instalação e Adm... 27:00h Clique aqui
    Vídeo-Aula - Windows XP - Formatação e Instalação 3:47h Clique aqui
    Vídeo-Aula - Windows XP Básico + Intermediário + Dicas Práticas 8:00h Clique aqui
    Vídeo-Aula: GPOs no Windows Server 2003 - Curso Completo 4:00h Clique aqui
    Vídeo-Aula: Windows 7 - Curso Prático 5:00h Clique aqui
    Vídeo-Aula: Windows Server 2003 - DNS DHCP WINS e TCP/IP 5:00h Clique aqui
    Windows Server 2003 - Terminal Services e Active Directory 2:30h Clique aqui
    REDES E TCP/IP
    Aprenda Redes para Casas e Escritórios 1:30h Clique aqui
    PROGRAMAÇÃO
    Vídeo-Aula: Programação Delphi - Básico + Intermediário 30:00h Clique aqui
    Vídeo Aula: Criando um Sistema de Controle de Estoque Completo com Del... 11:19h Clique aqui
    Vídeo Aula: Programação C++ - Básico e Intermediário 6:00h Clique aqui
    Vídeo Aula: Programação Java - Módulo III 5:30h Clique aqui
    Vídeo Aula: Programação Orientada à Objetos com Java 9:00h Clique aqui
    Vídeo-Aula - CALCULADORA HP 12C - Curso Prático em 80 Lições 02:30h Clique aqui
    Vídeo-Aula - CALCULADORAS HP 50G - 49G/G+ - 48 GII 1:30h Clique aqui
    Vídeo-Aula - Curso Completo de Lógica de Programação 22:15h Clique aqui
    Vídeo-Aula - Curso Completo de PHP + HTML + CSS 27:35h Clique aqui
    Vídeo-Aula - Lógica de Programação com VB.NET 14:00h Clique aqui
    Vídeo-Aula - Programação C - Curso Básico e Intermediário 12:00h Clique aqui
    Vídeo-Aula - Programação Web com ASP.NET 3.5 e VB.NET - Básico 19:00h Clique aqui
    Vídeo-Aula - VB.NET 2010- Curso Avançado 37:00h Clique aqui
    Vídeo-Aula - VB.NET 2010- Curso Básico e Prático 22:00h Clique aqui
    Vídeo-Aula: Curso de Java e Lógica de Programação com Java 8:00h Clique aqui
    Vídeo-aula: Programação PHP - Passo a Passo em 151 Lições 2:00h Clique aqui
    Vídeo-aula: Programação Visual C Sharp 2010 - Passo a Passo - Curso Bá... 37:00h Clique aqui
    Vídeo-Aula: Programação Web com ASP.NET 4.0 e C# - Curso Avançado 22:00h Clique aqui
    Vídeo-Aula: Programação Web com ASP.NET 4.0 e C# - Curso Básico 20:00h Clique aqui
    Vídeo-aula: Visual C# 2010- Curso Avançado e Prático 32:00h Clique aqui
    CONCURSOS PÚBLICOS
    130 Questões de Matemática para Concursos Públicos - Resolvidas e Come... 6:00h Clique aqui
    Vídeo Aula: Aprenda Matemática na Prática - Geometria Espacial 6:00h Clique aqui
    Vídeo Aula: Aprenda Matemática na Prática - Logaritmos 03:00h Clique aqui
    Vídeo Aula: Aprenda Matemática na Prática - Números Complexos 1:00h Clique aqui
    Vídeo Aula: Derivadas I: Regras de Derivação e Exercícios Resolvidos -... 4:00h Clique aqui
    Vídeo Aula: Física 1 - Ensino Médio 1:30h Clique aqui
    Vídeo Aula: Física 2 - Ensino Médio 1:30h Clique aqui
    Vídeo Aula: Física 3 - Ensino Médio 1:30h Clique aqui
    Vídeo Aula: Matemática 1 - Ensino Médio 1:30h Clique aqui
    Vídeo Aula: Matemática 2 - Ensino Médio 1:30h Clique aqui
    Vídeo Aula: Matemática 3 - Ensino Médio 1:30h Clique aqui
    Vídeo Aula: Progressão Aritmética - PA mais Progressão Geométrica - PG... 4:00h Clique aqui
    Vídeo-aula - Análise Combinatória - Teoria e Prática 6:00h Clique aqui
    Vídeo-aula - Conjuntos - Teoria e Prática 5:00h Clique aqui
    Vídeo-aula - Excel Para Concursos Públicos - Simulados e Provas Coment... 2:00h Clique aqui
    Vídeo-aula - Matemática Financeira - Teoria e Prática 9:10h Clique aqui
    Vídeo-Aula - Raciocínio Lógico - Curso Completo e Prático 12:00h Clique aqui
    Vídeo-aula - Série Concursos: Inglês ESAF - Simulados e Provas Comenta... 2:00h Clique aqui
    Vídeo-Aula: Concordância Nominal e Concordância Verbal 0h Clique aqui
    Vídeo-Aula: Contabilidade Para Iniciantes - Curso Básico e Didático 05:00h Clique aqui
    Vídeo-Aula: Crase - 100 Questões Resolvidas e Comentadas 3:30h Clique aqui
    Vídeo-Aula: Matemática do 1º Ano do 2º Grau - Curso Completo 27:00h Clique aqui
    Vídeo-Aula: Matemática do 1º Grau - Curso Completo 30:00h Clique aqui
    Vídeo-Aula: Matemática do 2º Ano do 2º Grau - Curso Completo 23:00h Clique aqui
    Vídeo-Aula: Matemática do 3º Ano do 2º Grau - Curso Completo 10:00h Clique aqui
    Vídeo-Aula: Raciocínio Lógico - 100 Questões Resolvidas e Comentadas 08:00h Clique aqui
    Vídeo-Aula: Trigonometria - Teoria e Prática - Completo 6:00h Clique aqui
    BANCO DE DADOS
    Vídeo-Aula - Dominando o ORACLE - Curso Prático 12:00h Clique aqui
    Vídeo-Aula - Linguagem SQL e Banco de Dados - Teoria e Prática 08:00h Clique aqui
    Vídeo-Aula - MySQL - Curso Completo e Prático 12:00h Clique aqui
    Vídeo-aula - SQL Server 2005 - Reporting Services 2:30h Clique aqui
    Vídeo-Aula: Dominando o SQL Server 2005 - Curso Completo 5:00h Clique aqui
    Vídeo-Aula: Firebird e Linguagem SQL - Curso Completo 12:00h Clique aqui
    WEBDESIGN
    Criando um Site Completo e Profissional com Fireworks, Flash, Dreamwe... 5:00h Clique aqui
    Criando um Site ou Blog Dinâmico, Completo e Profissional, facilmente,... 6h Clique aqui
    Vídeo-Aula - Criação de Sites - Curso Básico 3:00h Clique aqui
    Vídeo-Aula - Criando uma Loja Virtual com PHP e MySQL - Curso Completo... 19:00h Clique aqui
    Vídeo-Aula - Flash MX - Curso Básico 2:26h Clique aqui
    Vídeo-Aula - HTML - Curso Prático 2:40h Clique aqui
    Vídeo-Aula: Como Criar um Portal Profissional e Dinâmico, com o WordPr... 7:40h Clique aqui
    Vídeo-Aula: Criando uma Loja Virtual Completa com o Magento 5:33h Clique aqui
    INTERNET
    Vídeo-Aula - Curso de Microinformática Prática 4:35h Clique aqui
    Vídeo-aula - Curso Prático de Internet 0:40h Clique aqui
    Vídeo-aula - Curso Prático de Outlook Express 0:55h Clique aqui
    Vídeo-Aula: Tudo Sobre Rede Sociais - Facebook, Twitter, Orkut e MSN ... 3:00h Clique aqui
    CAD
    Vídeo-Aula - Curso de Autocad 2D 4:00h Clique aqui
    Vídeo-Aula - Curso de Autocad 3D 3:45h Clique aqui
    VÍDEO E ÁUDIO
    DVD: Conversão de Formatos Digitais: Áudio e Vídeo 1:26h Clique aqui
    Sony Vegas 8 PRO - Edição de Vídeo e Multimídia para Web 5:00h Clique aqui
    Vídeo-Aula - Curso de Teoria Musical 1:00h Clique aqui
    PROGRAMAS GRÁFICOS
    Vídeo-Aula - Adobe Illustrator CS4 - Curso Completo 3:00h Clique aqui
    Vídeo-Aula - Adobe InDesignr CS4 - Curso Completo 3:00h Clique aqui
    Vídeo-Aula - Corel Draw X4 - Curso Completo 5:00h Clique aqui
    Vídeo-Aula - Criando Efeitos Digitais com o Photoshop CS4 e com o Illu... 5:00h Clique aqui
    Vídeo-Aula - Curso de CorelDraw X4 - Módulo I 3:00h Clique aqui
    Vídeo-Aula - Curso Profissional Photoshop 4:20h Clique aqui
    ADMINISTRAÇÃO E NEGÓCIOS
    DVD - Curso de Oratória - Falando em Público sem Medo 2:36h Clique aqui
    VÍDEO AULAS DE HARDWARE E MONTAGEM DE PCS
    DVD: Hardware - Curso Básico 0:58h Clique aqui
    Vídeo Aula: Aprenda Hardware e Montagem de Microcomputadores 1:30h Clique aqui

    © Júlio Battisti, 2001 - 2010. Todos os direitos reservados.
    É expressamente proibida a reprodução total ou parcial do conteúdo deste site e dos textos disponíveis, seja através de mídia eletrônica, impressa, ou qualquer outra forma de distribuição. Os infratores serão indiciados e punidos com base na lei nº 9.610 de 19/02/1998. Este tutorial só pode ser publicado no site www.juliobattisti.com.br e no site do Autor do tutorial. Nenhum outro site tem permissão para copiar e publicar este tutorial, mesmo que sejam mantidas todas as referências ao autor e ao site www.juliobattisti.com.br. Não é permitida a publicação deste tutorial em nenhum outro site.