C++ com Qt4. Tomaz Martins dos Santos Canabrava

Tamanho: px
Começar a partir da página:

Download "C++ com Qt4. Tomaz Martins dos Santos Canabrava"

Transcrição

1 C++ com Qt4 Tomaz Martins dos Santos Canabrava 12/01/2009

2 2

3 Conteúdo 1 Principio Introdução Para quem é esse livro? Instalando o compilador e o Qt Windows OS X Linux Instalando e Configurando IDE s Relembrando C Programadores Não Programadores Primeiro Programa em C Variaveis Tipos de dados Ponteiros e Vetores Referências Controle de Fluxo for while do..while if..else switch goto Operador?: recursão Funções e Retorno Orientacao a Objeto classes Herança e Polimorfismo Qt Básico História do Qt Tecnologias no Qt

4 4 CONTEÚDO WebKit Phonon SQL Internacionalização CSS Networking Scripts Iniciando nos tortuosos caminhos do Qt Meta Objects Sinais e Slots Programando: Controlando um botão Programando uma Calculadora Usando Criador de Interfaces

5 Capítulo 1 Principio 1.1 Introdução Comecei a escrever esse livro em um dia que percebi que além de não haver muito interesse em c++ nas universidades e faculdades que visito, a visão da linguagem é que é complicada, difícil de ser utilizada. um professor de certa instituição de ensino chegou a me dizer que C++ é uma linguagem morta, ninguém mais quer programar nisso. o futuro é Java., não pretendo fazer guerras de linguagem, mas eu pessoalmente só conheço 2 programas em java, eles são IDE s para programação em Java (...). Não irei ensinar a programar. não é meu intuito. irei levar o leitor a conhecer algumas sutilezas do c++ em uma visita rápida a linguagem utilizando as formas mais rápidas de aprendizado que conheço, mas sendo eu também um estudante poderei me enganar na abordagem, por favor, sejam pacientes. além de C++ obviamente estarei mostrando o Qt a partir do segundo capítulo do livro, e mostrando como a utilização do cute pode transformar a programação em algo muito mais simples de programar até do quê linguagens que são famosas por sua sintaxe concisa. sem nomes claro, *cof* java *cof*, Espero que no final do livro consiga se virar e aprender coisas que não ensino por si só, pois em alguns pontos não é necessário ensinar a pescar e sim fazer com que o pescador descubra que precisa criar uma rede, procurar ideias, sentar numa mesa e rabiscar num papel até que saia com algo que talvez sirva para pegar mais peixes que apenas uma vara com anzol. Tomaz Canabrava Para quem é esse livro? Pergunta bem comum em livros de programação, já que deve ser focado em um publico específico, este livro espera que a pessoa tenha alguma base em algoritmos e um bom poder de dedução, não irei mastigar as explicações a não ser que ache realmente necessário. Não é necessário o conhecimento prévio de nenhuma linguagem antes de começar a tentar estudar por este pequeno material, mas o caminho não será o mais fácil. O livro é indicado para pessoas com algum conhecimento 5

6 6 CAPÍTULO 1. PRINCIPIO de linguagens de programação querendo se aventurar pelos caminhos tortuosos do c++, e ir mais fundo ainda, aprendendo Qt (cute) - uma biblioteca condensada que resolve todos os seus problemas ( menos aqueles em que você mesmo tem que resolver, o que são muitos, como uma filha grávida. ). Espero que ao ler este livro, Você - querido leitor - consiga, a partir de um pensamento abstrato, dar vida a suas criações e deixar seus colegas de trabalho ou faculdade (ou até escola mesmo, sei lá se é um superdotado da vida) de boca aberta com programas de qualidade, e com botões que clicam*. *sim... eu fiquei com vontade de deixar meus colegas de faculdade de boca aberta no momento que consegui fazer meu primeiro botão clicante em c Instalando o compilador e o Qt. Figura 1.1: Qt Vai bem na parede. Tentarei explicar passo a passo como instalar e configurar o Qt 4.4+ e o GCC nas três plataformas mais usadas, Embora minha experiência pessoal seja apenas em Linux e OSX, o Windows também será levado em conta, pois ainda representa 92% dos desktops e eu seria um pouco ignorante ignora-lo. (cacofonia?) Windows Figura 1.2: Qt Vai bem também em janelas. Por favor, vá ao site do qt e pegue a versão opensource compilada com o MinGW. isso irá te tirar muita dor de cabeça. Figura 1.3: Site do Qt. O endeço caso não consiga ler é O arquivo de instalação do Qt possui aproximadamente 100 megas, além disso provavelmente irá baixar também o pacote mingw, verifique se possui mais de 1gb livre em disco pois a compactação do instalador é muito boa e irá usar muito espaço em disco para colocar tudo em seus devidos lugares.

7 1.2. INSTALANDO O COMPILADOR E O QT. 7 Figura 1.4: Lembre-se de escolher download opensource. Figura 1.5: Link selecionado e baixando o arquivo. Figura 1.6: Abrindo o Instalador Figura 1.7: Licença GPL2.0 Figura 1.8: Instalar o Compilador de C++? Até o instalador temrinar de abrir leva tempo, tenha paciência. *LEIA* A Licença. No meio da instalação ele irá te pedir para indicar em qual pasta está o MinGW - um pacote de compiladores da família GCC para Windows ( GNU Compiller Collection ), e caso não exista, te permite fazer o download e instalação por ali mesmo. é mais prático mandar instalar caso você não tenha certeza do que está acontecendo. Obs, Se você tem DevC++, CodeBlocks eles funcionam como deveriam, seu computador já possui MinGW. O Qt roda também sem problemas com o Visual Studio, mas isso não será tratado no livro, pois não tenho uma copia do mesmo. o problema é que ao término da instalação tudo deveria estar pronto para uso, mas não, agora temos que meter a mão nas variáveis de ambiente do Windows, coloque luvas. Figura 1.9: Propriedades do Windows vá em meu computador, propriedades, Figura 1.10: Variáveis de Ambiente

8 8 CAPÍTULO 1. PRINCIPIO depois em avançado, variáveis de ambiente. Figura 1.11: Editando o PATH Em variáveis do ambiente, procure por PATH, e adicione no final o local de instalação do Qt e do MinGW. isso é normalmente em c:/qt4.4.3/bin e c:/mingw/bin clique em Ok, e está feito. Pule pra o ultimo trecho deste capitulo, sim? OS X Figura 1.12: Qt Também vai bem em maçãs. Para trabalhar com programação no OSX, é necessário que você instale o Developer Tools. O pacote instalador encontra-se no Segundo CD do Tiger e no DVD do Leopard. Sistemas abaixo do Tiger não são suportados pelo Qt. Por favor, vá ao site do qt e pegue a versão opensource compilada para OSX. isso irá te tirar muita dor de cabeça. o download tem aproximadamente 100 megas, mas depois de instalado ocupa quase 1gb, verifique se tem espaço no disco. Figura 1.13: Site do Qt O endereço caso não consiga ler é O site do Qt tem muita coisa legal. Siga a setinha vermelha para ir a parte opensource do site. e escolha qt para aplicações, senão você acabará fazendo aplicativos para despositivos móveis. Escolha a versão para mac. - baixe o arquivo e lembre-se de onde salvou. no OSX a maioria das coisas são salvas no desktop.

9 1.2. INSTALANDO O COMPILADOR E O QT. 9 Figura 1.14: Parte Opensource do Site. Figura 1.15: Escolha Qt for Applications Figura 1.16: Escolha Qt for Applications Figura 1.17: Escolha o arquivo.dmg clique no download e espere terminar. Agora, monte o disco do Qt

10 10 CAPÍTULO 1. PRINCIPIO Figura 1.18: Escolha o arquivo.dmg Figura 1.19: Escolha o arquivo.dmg Figura 1.20: Iniciando a instalação. aguarde até o final da instalação. (a) (b) (c) Figura 1.21: Continuando a instalação. continue aguardadno. ao fim da instalação, seu Qt está pronto para uso.

11 1.2. INSTALANDO O COMPILADOR E O QT. 11 (a) (b) (c) Figura 1.22: Fim da instalação Linux A depender da sua distribuição linunx, a forma varia. irei colocar aqui apenas a forma para Distribuições baseadas em Debian como o Ubuntu, Kubuntu, Mint e gos. Existem Linux de todos os tamanhos, cores e sabores. Verifique com sua distribuição qual a melhor forma de instalar os pacotes do Qt. no debian o comando é sudo aptitude install libqt4-devel build-essentials. isso baixa, instala, configura para uso. não se precisa de fotos para um comando no terminal, né? Instalando e Configurando IDE s. Como eu acho que menos da metade de vocês teria vontade de utilizar uma linguagem de programação sem uma boa IDE, desde já retiro esse medo de vocês, e aconselho o uso de algumas, organizadas por ordem de prioridade: KDevelop QtCreator Eclipse Code::Blocks Todas as IDE s Listadas estão disponíveis para todas as plataformas, menos o KDevelop que ainda está em código beta e só deve ser utilizado caso você tenha paciência para aguentar os erros que ainda existem, e se possível ajudar no desenvolvimento do programa reportando erros e dando sugestões. O KDevelop está em primeiro em relação ao QtCreator por suporte a colorização inteligente de código, e suporte a CMake que falta nos outros. Ao se desenvolver para KDE é fundamental um suporte a CMake na IDE. Caso não precise do CMake, o QtCreator é a melhor IDE em benefícios.

12 12 CAPÍTULO 1. PRINCIPIO Eclipse KDevelop QtCreator Code::Blocks Agora que tudo já se acertou e as IDE s estão configuradas, Crie um arquivo de texto no seu bloco de notas preferido e escreva: #include <QAplicattion> int main(int argc, char *argv[])\{ QApplication app(argc, argv); QPushButton btn("ola Mundo"); btn.show(); return app.exec(); Figura 1.23: Variáveis de Ambiente Procure como faz para compilar na sua IDE preferida, e execute. Caso haja um botão escrito hello world na sua frente, onde você clica e nada acontece, e você achou essas menos de 10 linhas de código um atraso de vida pois o Python faz isso em menos, bem, usando C++ Puro e a API do windows para abrir uma janela em branco são 80 linhas, você deveria estar feliz.

13 Capítulo 2 Relembrando C Programadores Este livro dará uma introdução rápida ao C++ e depois pegará pesado com o uso do Qt, esteja ciente de que não irei explicar em minúcias o uso de for, while, switch. Jogarei as coisas com um exemplo mínimo e espero que você se vire para entender o que passo sem um passo a passo do que eu considerar trivial. Construtos de linguagem que só existem no c++ serão levados em consideração e explicados em detalhes, mas não confie que tudo será. A parte de C++ deste livro é mais uma forma rápida de aprender e pegar dicas do C++ que não são ensinadas em sala de aula. 2.2 Não Programadores Este livro não dará aula de programação, Se você tem duvidas quanto o uso de for, while, switch e similares é bem provável que não consiga acompanhar o livro. Ainda assim vale uma pena a leitura caso tenha força de vontade de aprender. Mas aconselho realmente o uso de um livro melhor para o ensino da linguagem. Já irei supor que sabe o que é uma estrutura ou classe, passando bem batido por eles. 2.3 Primeiro Programa em C++ Um programa minúsculo em c++, como padrão dos programas de livros da linguagem, Hello World. #include <iostream> int main(int argc, char *argv[]){ 13

14 14 CAPÍTULO 2. RELEMBRANDO C++ std::cout << "Hello World"; return 0; salve o arquivo como app1.cpp e compile / execute. isso depende da sua IDE. caso não esteja usando IDE, o comando para compilar é gcc -Wall -o app1 app1.cpp Explicação linha a linha: #include <iostream> #include é uma diretiva de pré processamento ( Acontece antes do código ser efetivamente compilado ) que serve para incluir o conteúdo de um arquivo dentro de outro. inclúimos o arquivo iostream que possui o comando std::cout para escrita na tela. int main(int argc, char *argv[]) É o ponto de entrada do programa. os dois parâmetros que recebe são a quantidade de parâmetros, e os parâmetros em si na hora de invocar o programa. por exemplo, ao se usar um comando ping , o argv recebe 2, e o argc recebe ping e std::cout << "Hello World"; algumas coisas... o comando é cout, e não std::cout. o std é o namespace onde o comando cout se encontra. um namespace é apenas uma forma de separação de variáveis em pacotes. Parecido com o package do java, só que mais poderoso. o comando :: é operador de escopo, ele indica de qual pacote o comando ou a variável pertence. std significa standard, é parte do pacote padrão do c++. o operador <<significa shift left, ou em bom português Empurre o valor dessa variável para dentro dessa outra. Então, ele empurra o nosso Oi Mundo para o comando que coordena a entrada de dados no monitor. Então ele aparece na tela, Mágico, não? return 0; sai da função e retorna 0 ao sistema operacional. zero significa normalmente uma saída sem erros. 2.4 Variaveis Os tipos de variáveis em c++ que são definidos na linguagem são apenas inteiros de tamanhos de bits diferentes. isso inclui o bool e o char. Como tudo para C e C++

15 2.4. VARIAVEIS 15 não passa de uma sequência de números binários que são interpretados de formas diferentes, um char é um numero, um int também. um double mais ainda. Nome Descrição Tamanho Range char Letra 1byte -128 até 127 int Inteiro Pequeno 2bytes int Inteiro. 4bytes bool Valor booleano 1byte true or false float Numero Real. 4bytes double Real mais preciso 8bytes [2] Tabela 2.1: Tipos de dados puros do C++ unsigned utiliza o bit mais significativo como numero, e não sinal. signned utiliza o bit mais significativo como sinal, e não numero. long dobra o tamanho da variavel. short utiliza a metade do tamanho da variável. não serve para ser usado em char, pois a menor quantidade de bits que o c++ manipula são 8 por vez Tipos de dados char int float double e todos os outros tipos são definidos a partir desses. para iniciar uma varável em C++, basta dizer o tipo e identificação. int main{ int i = 32; double f = 44; char c = 20; int z = a ; explicação Linha a linha: int i = 32; cria um int e atribui o valor 32 a ela.

16 16 CAPÍTULO 2. RELEMBRANDO C++ double f = 44; cria um double e atribui 44 a ela. char c = 20; cria um caractere e atribui o valor 20 a ele. como em C++ tudo é numero, 20 é um valor válido para char. int z = a ; cria um inteira e atribui o valor inteiro correspondente ao caractere a na tabela ASCII. 2.5 Ponteiros e Vetores Ponteiros são variáveis especiais que guardam inteiros que correspondem a endereços de memória de outras variáveis. Vetores são alocações de múltiplas variáveis de uma só vez, mas também são ponteiros-implícitos. int main{ int *ptrvetor = new int[10]; int vetor[10]; int *ptrtemporario = 0; ptrtemporario = vetor; ptrtemporario = ptrvetor; for (int i = 0; i < 10; ++i){ ptrvetor[i] = rand()\%10; vetor[i] = ptrvetor[i]+1; delete[] ptrvetor; o código acima mostra a forma de criar um vetor utilizando a forma de ponteiro e a forma padrão da linguagem. é importante notar que caso seja necessário definir o tamanho do vetor em tempo de execução do programa, a utilização em forma de ponteiro deverá ser utilizada. o ponteiro ptrtemporario foi criado apenas para mostrar que não há erros de compilação nem avisos ao se igualar um ponteiro a um ponteiro, e um vetor a um ponteiro, confirmando o que eu disse sobre serem ponteiros implícitos.

17 2.6. REFERÊNCIAS 17 delete[] apaga o conteudo do vetor alocado. é importante apagar as memórias alocadas já que o c++ não possui garbage-collection (ok, o java ganha nisso). ao se criar uma função recebe um ponteiro/vetor que não será modificado, é importante utilizar o modificador const na passagem do parâmetro. void naomodifica(const char* a){ ++(*a); tentando compilar esta função, o compilador irá parar com um erro: error: increment of read-only location. ( Erro: incremento em acesso somente-leitura ) portanto, em C e C++ deve-se utilizar o const ao passar parâmetros de ponteiros que não devem ser modificados, como uma string ( char ) em uma função que deve só contar as letras. como um vetor é um ponteiro, a construção abaixo que conta o numero de letras é válido. int strsize(char *str){ int size = 0; while( (*str)!= \0 ){ ++size; ++str; return size; 2.6 Referências São a terceira forma de variáveis do C++. no Java tudo são referências, no C temos variáveis ou Ponteiros. no C++ temos os três tipos. a importância da referência é grande. ela evita a duplicação de memória alocada com valores iguais, criando uma alias nova para uma variável antiga e manipulando a original pela alias. Em c, para se modificar o valor de uma variável por uma função, passa-se o ponteiro. irei criar a mesma função de descobrir as raízes de uma equação de segundo grau em C e em C++ para mostrar melhor as diferenças. Como uma equação de segundo grau tem dois resultados, não posso utilizar o return pois ele volta apenas um valor, utilizarei uma forma diferente então para obter os valores que preciso. em C usando ponteiros e em C++ usando referencias. em C

18 18 CAPÍTULO 2. RELEMBRANDO C++ void eqsegundograu(int a, int b, int c, double *r1, double *r2){ double delta = b * b - 4 * a * c; // calculo do delta. (*r1) = (-b + sqrt(delta)) / (2 * a); (*r2) = (-b - sqrt(delta)) / (2 * a); em C++ void eqsegundograu(int a, int b, int c, double& r1, double& r2){ double delta = b * b - 4 * a * c; // calculo do delta. r1 = (-b + sqrt(delta)) / (2 * a); r2 = (-b - sqrt(delta)) / (2 * a); visualmente, o código é bem semelhante, mas por trás o uso de referências alocou dois espaços a menos de memória que a versão em C. o r1 e r2 usados no C são variáveis locais. enquanto o r1 e o r2 utilizados no c++ são referências para variáveis fora do escopo da função. esse espaço de memória ( dois ints no caso do C ) não precisaram ser alocados, economizando espaço, processamento e facilitando a clareza de código.( ( variavel) X variavel. ) 2.7 Controle de Fluxo controle de fluxo do c++ é exatamente igual ao do C. as construções são for, while, do..while, if, else, switch..case,?:, goto, e recursão for for é uma iteração que começa em um determinado valor e vai avançando até outro valor pré-estabelecido e o calculo de como será o crescimento. portanto, para escrever os números pares de 0 a 10, temos for ( int i = 0; i <= 10; i += 2){ std::cout << i << " "; iniciamos uma várivel local ao for chamada i com o valor zero, o for irá rodar até que i seja 10. e somamos 2 a cada iteração do for. o resultado disso será podemos também escrever de 10 a zero invertendo o for.

19 2.7. CONTROLE DE FLUXO 19 for ( int i = 10; i >= 0; i -= 2){ std::cout << i << " "; completamente previsível. Mas o for não é sempre tão simples de usar. pois nenhum dos campos do for é obrigatório. for (;;) é uma construção válida no C e cria um loop infinito while o while cria um laço que se repete até que determinada ação seja falsa. char *a = "nabucodonosor"; while ( a!= \0 ){ std::cout << (*a); a++; escreverá nabucodonosor na tela. da mesma forma que o for(;;) cria um loop infinito, while (1) cria um loop infinito. as diferenças do for e do while são bem sutis, mas o while é geralmente mais rápido em tempo de execução, micronésimos de segundo mais rápido do..while as diferenças do do..while para o while são mínimas, apenas o do..while executa pelo menos uma vez, enquanto no while ele pode não ser executado. char *a = "\0\0"; do{ std::cout << (*a); while( a!= \0); irá escrever um while( a!= \0){ std::cout<< (*a); não irá escrever na tela. C++ te dá um poder de escolha, mas poderes vem acompanhados de grandes responsabilidades. use com cautela.

20 20 CAPÍTULO 2. RELEMBRANDO C if..else Provavelmente os controles de fluxo de programas mais utilizado, o if executa um trecho de código apenas uma vez caso algo seja verdadeiro, e o else executa apenas caso o if seja falso. int TheAnswer = rand(); if (TheAnswer == 42){ std::cout << "Nerd." else if (TheAnswer = 666){ std::cout << "Er... pode falar disso no livro?" else{ std::cout << "Um numero que nao tinha sido pensado antes." o if / else permite escadas de código, muitas vezes é bom pensar um pouco mais no código ao invés de aceitar a escada criada. códigos como if (teste1 ){ codigo... if (teste 2){ codigo... if (teste 3){ codigo... else{ return else{ return else{ return; podem ser reescritos com uma leitura melhor. if (!teste 1){ return

21 2.7. CONTROLE DE FLUXO 21 if (!teste 2){ return; if (!teste 3){ return; codigo 1 codigo 2 codigo switch em casos onde o if seria escrito da forma... if ( variavel == 1){ codigo... else if (variavel == 2){ codigo... else if(variavel == 3){ codigo... else if( variavel == 4){ codigo... else{ codigo... o switch deverá ser usado. switch(variavel){ case 1: codigo... break; case 2: codigo... break; case 3: codigo... break; case 4: codigo... break; default: codigo... break;

22 22 CAPÍTULO 2. RELEMBRANDO C++ ele funciona como um if mais sexy. o default é executado caso nenhum case seja. É importante lembrar de usar breaks caso queira sair da instrução de comando goto não utilize, simples assim Operador?: O Operador Ternário?: existe no C, Java, C++, C# e em tantas outras linguagens, mas independente da existência, o numero de professores que passa esse conhecimento aos alunos é tão pequeno que eu me sinto na obrigação de explicar. o?: é uma ATRIBUIÇÃO LOGICA e não um Controle de fluxo. o que eu estou tentando dizer com isso é: bool resposta; char opcao; std::cout << "Voce sabe o que e um operador ternario? s/n" << std ::endl; cin >> opcao; if (opcao == s ) { entendeu = true; else { entendeu = false; A Forma utilizada acima embora funcione está errada. representa em mais código asm criado pelo compilador, tornando o programa maior em espaço em disco, maior em utilização de memória, menos eficiente. Você pode rebater dizendo que a memória hoje em dia é virtualmente infinita e que o atraso gerado por um if tão pequeno seria ínfimo. Não precisa se preocupar com isso. é... essa falta de preocupação com a qualidade do código faz com que existam programas de torrent de 20 megas que tem menos funções e trabalham pior que o µtorrent[1] que tem 800kb, mas enfim, é seu código. a forma como eu escreveria o código acima é bool entendeu;

23 2.7. CONTROLE DE FLUXO 23 char opcao; std::cout << "Voce sabe o que e um operador ternario? s/n" << std ::endl; cin >> opcao; resposta = (opcao == s )? true : false; Alguns professores dizem que é de legibilidade ruim. eu não consigo ver uma legibilidade pior do quê ++a ou a++. é Obvio que qualquer programador que se preze sabe o quê significa tais construtos assim como a diferença de um ++ no inicio ou no fim, o? : te permite escrever atribuições lógicas em menos linhas de código, e se bem usado facilita o entendimento do programa. Aos professores que não gostam, que evitam falar por gerar duvida, aqui deixo minha sutíl espetada recursão A recursão em c++ é obtida ao chamar uma função dentro dela mesma, normalmente aproveitando o valor de retorno. int somatorio(int n){ if (n!= 1){ return n + somatorio( n-1 ); return 1; a cada chamada da função, o numero passado será diminuido de 1, e somado com o anterior Funções e Retorno Funções são blocos de código que tem um valor associado ( mesmo que esse valor seja a ausência dele. ) é definido da mesma forma que uma varivável, adicionando o corpo da função no fim, ex.: int delta(int a, int b, int c){ return pow(b,2) - 4*a*c; isso gera uma função delta, das equações de segundo grau. dentro dela chamamos a função pow que eleva um numero a um expoente. o resultado da conta é

24 24 CAPÍTULO 2. RELEMBRANDO C++ retornado, e para o valor ser aproveitado precisa que alguém, como uma variável armazene o valor. 2.8 Orientacao a Objeto classes Classes em c++ são declaradas com a palavra reservada class os atributos podem ser public, private ou protected, e o c++ permite herança múltipla ( use com moderação ). Irei criar aqui em baixo uma classe de figuras geométricas e duas que herdam dela, Triângulo e Circulo. arquivo figurageometrica.h #ifndef FIGURAGEOMETRICA_H #define FIGURAGEOMETRICA_H class FiguraGeometrica{ public: FiguraGeometrica(); virtual FiguraGeometrica(); virtual double area() = 0; ; #endif arquivo triangulo.h #ifndef TRIANGULO_H #define TRIANGULO_H #include "figurageometrica.h" class Triangulo : public FiguraGeometrica{ public: Triangulo(double base, double altura); virtual Triangulo(); double area(); private: double m_base;

25 2.8. ORIENTACAO A OBJETO 25 ; double m_altura; #endif arquivo circulo.h #ifndef CIRCULO_H #define CIRCULO_H #include "figurageometrica.h" class Circulo : public FiguraGeometrica{ public: Circulo(double raio); virtual Circulo(); double area(); private: double m_raio; ; #endif Explicação Linha a Linha: Essa sequência de directivas de pré-compilação são necessárias em arquivos cabeçalho pois impedem que o arquivo seja processado mais de uma vez pelo compilador, gerando código duplicado e gerando erros de compilação. #ifndef FIGURAGEOMETRICA_H Essa directiva significa If Not Defined - Se não estiver definido. se FIGURAGE- OMETRICA H não estiver definido o código abaixo será executado. E sempre que o arquivo for adicionado ao código pela primeira vez, ele não estará definido, logo, o código do arquivo será executado. #define FIGURAGEOMETRICA_H Como o FIGURAGEOMETRICA H não estava definido, agora definimo-lo, impedindo que dupla insersão desse arquivo gere código duplicado. #endif

26 26 CAPÍTULO 2. RELEMBRANDO C++ Essa linha no fim do arquivo termina o #if iniciado pelo #ifndef. class FiguraGeometrica{ define uma nova classe chamada FiguraGeométrica. public: Abaixo dessa linha todos os atributos e métodos farão parte do escopo publico. FiguraGeometrica(); A declaração do construtor da classe é um método sem tipo que tem o mesmo nome da classe. logo, isso é a declaração do construtor. virtual FiguraGeometrica(); O indica que é o destrutor da classe. destrutores são necessários em linguagens sem garbage collector para que o programa saiba o que fazer quando a memória alocada por esta estrutura de dados precisar reintegrar o a memória livre. Um destrutor não recebe parâmetros, nunca. O virtual na frente do método indica que ele é abstrato, ou seja, classes que herdam dessa podem criar métodos com o mesmo nome e esse método novo tomará o lugar do antigo. virtual double area() = 0; Quando um método virtual é igualado a zero, a classe que o declarou não irá criar um código para ele. mas as classes que herdam dela precisarão criar. não se pode criar um objeto de uma classe que possua um método virtual = 0, sendo utilizada apenas por herança. caso uma classe possua apenas métodos puramente virtuais ( virtual = 0), a classe comporta-se como uma interface do java, mas como o C++ possui herança multípla, não é muito utilizado. ; as classes terminam com um ponto-e-virgula. favor não esquecer. #endif Já explicado anteriormente Herança e Polimorfismo Continuando as explicações linha a linha da seção anterior, analizarei um código com herança e polimorfismo.

27 2.8. ORIENTACAO A OBJETO 27 class Triangulo : public FiguraGeometrica{ Cria uma nova classe chamada Triangulo estende FiguraGeometrica. tudo que FiguraGeometrica tem, triângulo também tem, afinal, são ambos figuras geométricas. só que uma com certeza é um triângulo, a outra não se sabe. Triangulo(double base, double altura); virtual Triangulo(); Construtor e Destrutor. o construtor do triângulo recebe dois parâmetros, base e altura, que é tudo que um triângulo precisa saber. o destrutor do triângulo é virtual pois pode ser que alguém queira estender essa classe, e para isso é necessário que o destrutor esteja exposto na vtable. vtable é uma tabela de métodos virtuais que podem ser chamados. são mais lentos do quê chamar um método diretamente, mas a diferença de velocidade é tão pequena que no fim das contas, não é levada em conta. ( cacofonia de novo?) private: tudo abaixo disso é considerado privativo da classe double m_base; double m_altura; isso apenas declara duas variáveis de classe chamada de m base e m altura. Porquê não só base e altura como declarei no construtor? é padrão dos programadores de c++ declararem as variáveis de classe com um sufixo m ou. isso ajuda na leitura do código a saber em que se está mexendo. ; termina a classe. não irei explicar o arquivo de circulo pois ele não tem nada de novo. arquivo figurageometrica.cpp #include "figurageometrica.h" FiguraGeometrica::FiguraGeometrica(){ FiguraGeometrica:: FiguraGeometrica(){ arquivo triangulo.cpp

28 28 CAPÍTULO 2. RELEMBRANDO C++ #include "triangulo.h" Triangulo::Triangulo(double base, double altura) : FiguraGeometrica(){ m_base = base; m_altura = altura; Triangulo:: Triangulo(){ double Triangulo::area(){ return (m_base * m_altura) /2; Por preguiça,e apenas isso, não irei colocar o arquivo do circulo. é bem similar ao triângulo. Explicação linha-a-linha. FiguraGeometrica::FiguraGeometrica(){ FiguraGeometrica:: FiguraGeometrica(){ duas linhas de vez, mas vai. o :: indica de qual classe é o método que estamos criando a declaração. nesse caso, criei apenas um construtor vazio e um destrutor vazio de FiguraGeometrica. porquê não declarei nada de área, se eu tinha declarado ela na classe? área é virtual pura, não pode ser declarada na classe base, e sim declarada nas classes que estendem a mesma. Triangulo::Triangulo(double base, double altura) : FiguraGeometrica(){ m_base = base; m_altura = altura; cria o construtor de triangulo e inicializa as variaveis m base e m altura. o : FiguraGeometrica() invoca o construtor do mesmo, que sabemos ser vazio. caso triângulo fosse na verdade uma espada mágica de RGP e fosse um filho direto de Espada, ItemMagico e ItemAmaldicoado, a construção do construtor com os seus 3 antepassados diretos seria: EspadaMagica::EspadaMagica() : Espada(), ItemMagico()

29 2.8. ORIENTACAO A OBJETO 29, ItemAmaldicoado(){ cada pai é separado por uma virgula do filho. ( eu não entendo porquê herança múltipla dá nó na cabeça de estudantes de java... ) double Triangulo::area(){ return (m_base * m_altura) /2; Aqui enfim declarando a função area, que teve a assinatura exposta em Figura- Geometrica.h mas não havia sido declarada lá. ao se criar um novo objeto como... FiguraGeometrica *h1 = new Triangulo( 3, 4); h1->area(); a área chamada será a do triângulo. ao se criar um... FiguraGeometrica *h2 = new Circulo(3); h2 -> area(); a área chamada será a do Circulo. e ao se criar um... FiguraGeometrica *h3 = new FiguraGeometrica(); h3 -> area(); o compilador acusará um erro pois no se pode criar objetos que tenham membros puramente virtuais.

30 30 CAPÍTULO 2. RELEMBRANDO C++

31 Capítulo 3 Qt Básico 3.1 História do Qt O Qt (pronunciado cute - fofinho por seus criadores) é um framework de desenvolvimento de aplicativos multi-plataforma muito usado para desenvolver programas gráficos ( que no caso é conhecido como um Widget Toolkit ) e também utilizado por desenvolvedores de programas console e servidores. um bom exemplo de aplicativos feitos em Qt são Google Earth, Skype, Adobe Photoshop Album, Opera, e é claro, KDE. Foi criado por Haarvard Nord e Eirik Chambe-Eng em 1991, o nome foi inspirado no Xt, X - toolkit, uma outra biblioteca para criação e interfaces gráficas, mas essa não é muitiplataforma e usa o padrão gráfico Motif, conhecido por ser funcional e feio. o Q foi escolhido por ser uma letra que era bonitinha (juro) no Emacs do cidadão, e o t vem obviamente de toolkit. Figura 3.1: Exemplo de janela criada com Motif. o Qt foi escolhido para o inicio da criação do KDE, um os 2 maiores sistemas de desktop para linux / Unix ( e atualmente na versão 4.2, experimental em Mac e Windows também). mas na epoca ( 1996 ) o qt era licenciado em 2 formas: comercial - para pessoas e empresas que pretendessem ganhar dinheiro com software, e gratuita com código fechado - para pessoas que não se importavam em criar códigos e nada cobrar por eles. 31

32 32 CAPÍTULO 3. QT BÁSICO Tulip Um conjunto de classes template. Interview Arquitetura Model View. Arthur Scribe Mainwindow Classes de pintura e manipulação e imagem. Renderizador de texto Unicode com uma api publica para manipulações em baixo nivel. Uma janela principal com eventos e layouts pré definidos. Tabela 3.1: Novas tecnologias com o Qt 4 com o aumento do numero de usuarios do kde e a visão de futuro que ele iria ser um dos principais desktops linux pessoas começaram a se organizar, criaram o Free Qt Foundation que tinha vida com o único propósito de manter o Qt aberto caso a trolltech entrasse em colapso ou parassem de criar versões abertas do Qt. Figura 3.2: KDE 1.0 feito em cima do Qt A história foi seguindo seu curso, e em 2000 o Qt mudou o esquema e licenciamento aberto para GLP, que garantiria que seu código fosse aberto, e dava mais liberdades para a modificação de sua engine. o problema foi que o GLP existia apenas para linux. como o Qt era multiplataforma os programadores de mac e windows não foram beneficiados por esse movimento, outras bibliotecas abertas como o GTK estavam sendo portadas para funcionar com o Windows e já funcionavam no mac utilizando o servidor x. o Qt ganhava criticas no lado do linux por ser controlado por uma empresa, pelo lado do windows por não ser aberto, e assim foi até o lançamento do Qt 4 em junho de 2005 que o Qt foi realmente lançado como cóigo aberto para Windows / OSX e Linux no mesmo tempo. E se antes o Qt era apenas uma Biblioteca Toolkit Gráfica (muito poderosa, mas ainda assim monolítica) o Qt 4 trazia mudanças conceituais grandes em sua estrutura. Além disso, também lançaram uma musica e um vídeo comemorativos.

33 3.2. TECNOLOGIAS NO QT 33 A Trolltech continuou criando versões com diversas melhorias ( mas bem menores do que foi a transição do Qt 3 para o 4) até 2007, quando foi adquirida pela Nokia. a Nokia pegou o Qt em um momento crucial. como era multiplataforma desde o princípio, foi adaptado para dispositivos portáteis e roda em diversos computadores de bolso atuais. Além disso, a versão mais recente do Qt foi relicenciada mais uma vez, de GLP para LGLP. a diferença embora seja só de uma letra é muito grande, pois permite que criem-se aplicativos comerciais que utilizam a biblioteca gratuita do toolkit sem pagar. Isso só foi possível pois a nokia não tem tanta necessidade de ganhar dinheiro com o Qt. Seu capital vem dos dispositivos portáteis, nada mais justo que uma boa ferramenta ( e gratuita ) para desenvolvedores programarem em sua plataforma paga. Figura 3.3: KDE 1.0 feito em cima do Qt O Qt provou ser uma ferramenta estável, robusta e sólida no desktop. provavelmente será a mesma coisa nos pequenos portáteis. 3.2 Tecnologias no Qt Além das tecnologias agregadas ao Qt explicadas na tabela anterior, existem muitas outras coisas que fazem dela um diferencial entre outros toolkits. Todos são escritos por profissionais, você não verá um código Qt com erros básicos como uso de arrays onde se deveriam usar arvores. o Qt é um Monstro Tecnológico, e como todo monstro precisa ser domado antes de sair passeando com ele por ai com uma coleirinha WebKit Engine de renderização HTML embutida no Qt. Webkit é uma engine de renderização de HTML. Completa e 100% compativel com o W3C, foi criada a partir de um fork do KHTML para o navegador Safari da apple, mas como parte do contrato GLP do KHTML, o Webkit precisava continuar sendo código aberto, logo várias empresas como o Google, a Nokia e o Gtk Foundation se interessaram pelo crescente desenvolvimento do WebKit, por ser uma

34 34 CAPÍTULO 3. QT BÁSICO Figura 3.4: Arora, navegador feito em Qt utilizando Webkit biblioteca de integração fácil ( mais facil que o Gecko ) e ter empresas de peso bancando o desenvolvimento. Com o webkit você pode ter um navegador completo com apenas 5 linhas de código no seu programa, com tudo que um navegador de porte precisa Phonon Engine de Multimidia embutida no Qt. Figura 3.5: Multimidia fácil o Phonon foi desenvolvido inicialmente pelo KDE que passava por dificuldades com seu sistema original de som, o arts. Precisava-se de um sistema de som Multiplataforma que conseguisse se conectar a parte baixo nível de som sem que o programador se preocupasse com isso. no linux existem várias formas de se tocar um arquivo de video ou musica, usando o xine, gstreamer, alsa direto ( que seria loucura ). Antes do phonon para cada programa no linux era necessário escrever uma parte pra se comunicar com o xine, como você não poderia saber se o usuário teria xine, gstreamer ou alsa, também teria que escrever uma parte para gstreamer, e outra para alsa. imagina o trabalho que isso dava para cada desenvolvedor. Com o phonon ele usa o que estiver dispoível. só tem xine? não tem problema, o phonon detecta e usa. só tem gstreamer? não tem problema, ele faz a mesma coisa. se o xine ou gstreamer modificarem a forma de conexão a única coisa a fazer é atualizar o phonon, e não todos os programas que ligam-se nele. Além disso, funciona também no Windows e OSX. pra quê utilizar uma biblioteca que não é multiplataforma se pode-se utilizar uma que é?

Algoritmos em Javascript

Algoritmos em Javascript Algoritmos em Javascript Sumário Algoritmos 1 O que é um programa? 1 Entrada e Saída de Dados 3 Programando 4 O que é necessário para programar 4 em JavaScript? Variáveis 5 Tipos de Variáveis 6 Arrays

Leia mais

INFORMÁTICA APLICADA AULA 02 LINGUAGEM DE PROGRAMAÇÃO C++

INFORMÁTICA APLICADA AULA 02 LINGUAGEM DE PROGRAMAÇÃO C++ UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: Bacharelado em Ciências e Tecnologia INFORMÁTICA APLICADA AULA 02 LINGUAGEM DE PROGRAMAÇÃO C++ Profª ª Danielle Casillo COMPILADORES Toda linguagem de programação

Leia mais

Resumo da Matéria de Linguagem de Programação. Linguagem C

Resumo da Matéria de Linguagem de Programação. Linguagem C Resumo da Matéria de Linguagem de Programação Linguagem C Vitor H. Migoto de Gouvêa 2011 Sumário Como instalar um programa para executar o C...3 Sintaxe inicial da Linguagem de Programação C...4 Variáveis

Leia mais

Principais classes e conceitos básicos de Qt. Danilo Freire de Souza Santos

Principais classes e conceitos básicos de Qt. Danilo Freire de Souza Santos Começandoa programarcom Qt Principais classes e conceitos básicos de Qt Danilo Freire de Souza Santos Roteiro Hello World Projetos em Qt Signals e Slots Modelo de Objetos Hello World Começando do zero

Leia mais

Linguagens de Programação

Linguagens de Programação Linguagens de Programação Prof. Miguel Elias Mitre Campista http://www.gta.ufrj.br/~miguel Parte V Interface Gráfica usando Qt4 História do Qt Publicado para uso em maio de 1995 Desenvolvido por Haavard

Leia mais

Básico, Ferramentas e o Primeiro Programa em Qt

Básico, Ferramentas e o Primeiro Programa em Qt Conteúdo 1 Básico, Ferramentas e o Primeiro Programa em Qt 3 1.1 Primeiro Programa.......................... 3 1.1.1 Compilando o programa................... 4 1.2 Layouts................................

Leia mais

Fundamentos de Programação II. Introdução à linguagem de programação C++

Fundamentos de Programação II. Introdução à linguagem de programação C++ Fundamentos de Programação II Introdução à linguagem de programação C++ Prof. Rafael Henrique D. Zottesso Material cedido por Prof. Msc. Everton Fernando Baro Agenda IDE HelloWorld Variáveis Operadores

Leia mais

Orientação a Objetos Programação em C++

Orientação a Objetos Programação em C++ OO - Engenharia de Computação/Eletrônica Orientação a Objetos Programação em C++ Slides 17: Programação Visual ou Orientada a Objetos Gráficos (Formulários, Botões, Caixas de Texto etc) - Exemplificado

Leia mais

Programação para Dispositivos Móveis Aula 1. Prof. William Yamamoto

Programação para Dispositivos Móveis Aula 1. Prof. William Yamamoto Programação para Dispositivos Móveis Aula 1 Prof. William Yamamoto Visual Studio É uma ferramenta de desenvolvimento completa que atende praticamente a todas as plataformas de desenvolvimento, como: Web

Leia mais

Curso de Linguagem C

Curso de Linguagem C Curso de Linguagem C 1 Aula 1 - INTRODUÇÃO...4 AULA 2 - Primeiros Passos...5 O C é "Case Sensitive"...5 Dois Primeiros Programas...6 Introdução às Funções...7 Introdução Básica às Entradas e Saídas...

Leia mais

Microsoft Visual Studio Express 2012 for Windows Desktop

Microsoft Visual Studio Express 2012 for Windows Desktop Microsoft Visual Studio Express 2012 for Windows Desktop Apresentação da ferramenta Professor: Danilo Giacobo Página pessoal: www.danilogiacobo.eti.br E-mail: danilogiacobo@gmail.com 1 Introdução Visual

Leia mais

2. O AMBIENTE DE PROGRAMAÇÃO EM C

2. O AMBIENTE DE PROGRAMAÇÃO EM C 2. O AMBIENTE DE PROGRAMAÇÃO EM C Este capítulo trata de colocar a linguagem C para funcionar em um ambiente de programação, concentrando-se no compilador GNU Compiler Collection (gcc). Mas qualquer outro

Leia mais

Para testar seu primeiro código utilizando PHP, abra um editor de texto (bloco de notas no Windows) e digite o código abaixo:

Para testar seu primeiro código utilizando PHP, abra um editor de texto (bloco de notas no Windows) e digite o código abaixo: Disciplina: Tópicos Especiais em TI PHP Este material foi produzido com base nos livros e documentos citados abaixo, que possuem direitos autorais sobre o conteúdo. Favor adquiri-los para dar continuidade

Leia mais

Linguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery

Linguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery Linguagem de Programação JAVA Técnico em Informática Professora Michelle Nery Agenda Regras paravariáveis Identificadores Válidos Convenção de Nomenclatura Palavras-chaves em Java Tipos de Variáveis em

Leia mais

INTRODUÇÃO AO C++ SISTEMAS DE INFORMAÇÃO DR. EDNALDO B. PIZZOLATO

INTRODUÇÃO AO C++ SISTEMAS DE INFORMAÇÃO DR. EDNALDO B. PIZZOLATO INTRODUÇÃO AO C++ SISTEMAS DE INFORMAÇÃO DR. EDNALDO B. PIZZOLATO Tópicos Estrutura Básica B de Programas C e C++ Tipos de Dados Variáveis Strings Entrada e Saída de Dados no C e C++ INTRODUÇÃO O C++ aceita

Leia mais

Manual do Usuário. Sistema Financeiro e Caixa

Manual do Usuário. Sistema Financeiro e Caixa Manual do Usuário Sistema Financeiro e Caixa - Lançamento de receitas, despesas, gastos, depósitos. - Contas a pagar e receber. - Emissão de cheque e Autorização de pagamentos/recibos. - Controla um ou

Leia mais

2 Orientação a objetos na prática

2 Orientação a objetos na prática 2 Orientação a objetos na prática Aula 04 Sumário Capítulo 1 Introdução e conceitos básicos 1.4 Orientação a Objetos 1.4.1 Classe 1.4.2 Objetos 1.4.3 Métodos e atributos 1.4.4 Encapsulamento 1.4.5 Métodos

Leia mais

Programação de Computadores - I. Profª Beatriz Profº Israel

Programação de Computadores - I. Profª Beatriz Profº Israel Programação de Computadores - I Profª Beatriz Profº Israel As 52 Palavras Reservadas O que são palavras reservadas São palavras que já existem na linguagem Java, e tem sua função já definida. NÃO podem

Leia mais

Na disciplina de Cálculo Numérico, vamos trabalhar com a linguagem C++ e o compilador que vamos usar é o Dev C++.

Na disciplina de Cálculo Numérico, vamos trabalhar com a linguagem C++ e o compilador que vamos usar é o Dev C++. Data: 14/8 Página 1 de 9 Primeiros passos Introdução Na disciplina de Cálculo Numérico, vamos trabalhar com a linguagem C++ e o compilador que vamos usar é o Dev C++. No tutorial anterior, mostramos como

Leia mais

Capítulo 7 O Gerenciador de Arquivos

Capítulo 7 O Gerenciador de Arquivos Capítulo 7 O Gerenciador de Arquivos Neste capítulo nós iremos examinar as características da interface do gerenciador de arquivos Konqueror. Através dele realizaremos as principais operações com arquivos

Leia mais

Aula 1. // exemplo1.cpp /* Incluímos a biblioteca C++ padrão de entrada e saída */ #include

Aula 1. // exemplo1.cpp /* Incluímos a biblioteca C++ padrão de entrada e saída */ #include <iostream> Aula 1 C é uma linguagem de programação estruturada desenvolvida por Dennis Ritchie nos laboratórios Bell entre 1969 e 1972; Algumas características: É case-sensitive, ou seja, o compilador difere letras

Leia mais

3. INTRODUÇÃO À LINGUAGEM C 3.1. CONCEITOS BÁSICOS. Lógica de Programação

3. INTRODUÇÃO À LINGUAGEM C 3.1. CONCEITOS BÁSICOS. Lógica de Programação Lógica de Programação 3. INTRODUÇÃO À LINGUAGEM C Caro Aluno Vamos iniciar o terceiro capítulo da nossa disciplina. Agora vamos começar a aplicar os conceitos vistos nos capítulos anteriores em uma linguagem

Leia mais

Conceitos de Linguagens de Programação

Conceitos de Linguagens de Programação Conceitos de Linguagens de Programação Aula 07 Nomes, Vinculações, Escopos e Tipos de Dados Edirlei Soares de Lima Introdução Linguagens de programação imperativas são abstrações

Leia mais

Aula Prática 1: Introdução ao Ambiente de Programação Dev-C++

Aula Prática 1: Introdução ao Ambiente de Programação Dev-C++ Aula Prática 1: Introdução ao Ambiente de Programação Dev-C++ 1. Introdução Em nossa primeira aula prática de programação em linguagem C iremos escrever e testar programas de computador básicos. Mas antes,

Leia mais

APOSTILA PHP PARTE 1

APOSTILA PHP PARTE 1 APOSTILA PHP PARTE 1 1. Introdução O que é PHP? PHP significa: PHP Hypertext Preprocessor. Realmente, o produto foi originalmente chamado de Personal Home Page Tools ; mas como se expandiu em escopo, um

Leia mais

PHP() é uma linguagem de integração de servidor que permite a criação de paginas dinâmicas. Como todas

PHP() é uma linguagem de integração de servidor que permite a criação de paginas dinâmicas. Como todas O que é PHP? Acrônimo de PHP: Hipertext Language PostProcessor Inicialmente escrita para o desenvolvimento de aplicações Web Facilidade para iniciantes e recursos poderosos para programadores profissionais

Leia mais

Lógica de Programação

Lógica de Programação Lógica de Programação Unidade 4 Ambiente de desenvolvimento Java QI ESCOLAS E FACULDADES Curso Técnico em Informática SUMÁRIO A LINGUAGEM JAVA... 3 JVM, JRE, JDK... 3 BYTECODE... 3 PREPARANDO O AMBIENTE

Leia mais

4 Criação de macros e introdução à linguagem VBA

4 Criação de macros e introdução à linguagem VBA 4 Criação de macros e introdução à linguagem VBA Vinicius A. de Souza va.vinicius@gmail.com São José dos Campos, 2011. 1 Sumário Tópicos em Microsoft Excel 2007 Introdução à criação de macros...3 Gravação

Leia mais

Sumário. Capítulo 1 O que é o PHP?... 19. Capítulo 2 Instalação do PHP... 23. Capítulo 3 Noções básicas de programação... 25

Sumário. Capítulo 1 O que é o PHP?... 19. Capítulo 2 Instalação do PHP... 23. Capítulo 3 Noções básicas de programação... 25 9 Sobre o autor... 8 Introdução... 15 Capítulo 1 O que é o PHP?... 19 Características do PHP...20 Gratuito e com código aberto...20 Embutido no HTML...20 Baseado no servidor...21 Bancos de dados...22 Portabilidade...22

Leia mais

Tutorial: Instalando Linux Educacional em uma maquina virtual

Tutorial: Instalando Linux Educacional em uma maquina virtual Maria Augusta Sakis Tutorial: Instalando Linux Educacional em uma Máquina Virtual Máquinas virtuais são muito úteis no dia-a-dia, permitindo ao usuário rodar outros sistemas operacionais dentro de uma

Leia mais

Programação em C++: Introdução

Programação em C++: Introdução Programação em C++: Introdução J. Barbosa J. Tavares Visualização Científica Conceitos básicos de programação Algoritmo Conjunto finito de regras sobre as quais se pode dar execução a um dado processo

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Programação Introdução a Linguagem C Construções Básicas Programa em C #include int main ( ) { Palavras Reservadas } float celsius ; float farenheit ; celsius = 30; farenheit = 9.0/5

Leia mais

Dominando Action Script 3

Dominando Action Script 3 Dominando Action Script 3 Segunda Edição (2014) Daniel Schmitz Esse livro está à venda em http://leanpub.com/dominandoactionscript3 Essa versão foi publicada em 2014-05-02 This is a Leanpub book. Leanpub

Leia mais

Manual. Configuração do. Samba. Compartilhamento e Servidor Samba Linux. Produzido por: Sergio Graças Desenvolvedor do Projeto GNU/Linux VRlivre

Manual. Configuração do. Samba. Compartilhamento e Servidor Samba Linux. Produzido por: Sergio Graças Desenvolvedor do Projeto GNU/Linux VRlivre Manual Configuração do Samba Compartilhamento e Servidor Samba Linux Produzido por: Sergio Graças Desenvolvedor do Projeto GNU/Linux VRlivre Manual Configuração do Samba Compartilhamento e Servidor Samba

Leia mais

Para que o NSBASIC funcione corretamente em seu computador, você deve garantir que o mesmo tenha as seguintes características:

Para que o NSBASIC funcione corretamente em seu computador, você deve garantir que o mesmo tenha as seguintes características: Cerne Tecnologia www.cerne-tec.com.br Conhecendo o NSBASIC para Palm Vitor Amadeu Vitor@cerne-tec.com.br 1. Introdução Iremos neste artigo abordar a programação em BASIC para o Palm OS. Para isso, precisaremos

Leia mais

WWW.cerne-tec.com.br. Comunicação USB com o PIC Vitor Amadeu Souza Parte II vitor@cerne-tec.com.br

WWW.cerne-tec.com.br. Comunicação USB com o PIC Vitor Amadeu Souza Parte II vitor@cerne-tec.com.br 1 Comunicação USB com o PIC Vitor Amadeu Souza Parte II vitor@cerne-tec.com.br Continuando com o artigo apresentado na edição passada de comunicação USB com o PIC, continuaremos nesta edição o estudo do

Leia mais

Centro de Computação - Unicamp Gerência de Atendimento ao Cliente (e-mail:apoio@turing.unicamp.br) Sumário

Centro de Computação - Unicamp Gerência de Atendimento ao Cliente (e-mail:apoio@turing.unicamp.br) Sumário Sumário Conceitos Microsoft Access 97... 01 Inicialização do Access... 02 Convertendo um Banco de Dados... 03 Criando uma Tabela... 06 Estrutura da Tabela... 07 Propriedades do Campo... 08 Chave Primária...

Leia mais

DCC 003 Algoritmos e Estruturas de Dados I Tutorial de instalação do GCC e do TextPad

DCC 003 Algoritmos e Estruturas de Dados I Tutorial de instalação do GCC e do TextPad DCC 003 Algoritmos e Estruturas de Dados I Tutorial de instalação do GCC e do TextPad Semestre: 2012-2 Professor: Daniel Fernandes Macedo Introdução Durante as aulas práticas, iremos utilizar nos laboratórios

Leia mais

Aula 1 - Introdução e configuração de ambiente de desenvolvimento

Aula 1 - Introdução e configuração de ambiente de desenvolvimento Aula 1 - Introdução e configuração de ambiente de desenvolvimento Olá, seja bem-vindo à primeira aula do curso para desenvolvedor de Android, neste curso você irá aprender a criar aplicativos para dispositivos

Leia mais

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA INFORMÁTICA APLICADA

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA INFORMÁTICA APLICADA Responda 1) Quem desenvolveu a linguagem C? Quando? 2) Existe alguma norma sobre a sintaxe da linguagem C? 3) Quais são os tipos básicos de dados disponíveis na linguagem C? 4) Quais são as principais

Leia mais

ITENS FUNDAMENTAIS. Profª Angélica da Silva Nunes

ITENS FUNDAMENTAIS. Profª Angélica da Silva Nunes ITENS FUNDAMENTAIS Profª Angélica da Silva Nunes CONCEITOS BÁSICOS Hardware - é a parte física do computador, tais como: teclado, monitor de vídeo, etc. Software - são os programas e aplicativos que permitem

Leia mais

Linguagem de Programação I

Linguagem de Programação I Linguagem de Programação I Carlos Eduardo Batista Centro de Informática - UFPB bidu@ci.ufpb.br Introdução ao Qt O ambiente Qt Creator QML API C++ Interfaces gráficas usando Qt 2 É um framework para aplicações

Leia mais

Algoritmos e Programação Estruturada

Algoritmos e Programação Estruturada Algoritmos e Programação Estruturada Virgínia M. Cardoso Linguagem C Criada por Dennis M. Ritchie e Ken Thompson no Laboratório Bell em 1972. A Linguagem C foi baseada na Linguagem B criada por Thompson.

Leia mais

É o UniNorte facilitando a vida de nossos docentes e discentes.

É o UniNorte facilitando a vida de nossos docentes e discentes. ACESSO REMOTO Através do Acesso Remoto o aluno ou professor poderá utilizar em qualquer computador que tenha acesso a internet todos os programas, recursos de rede e arquivos acadêmicos utilizados nos

Leia mais

Edwar Saliba Júnior. Dicas, Comandos e Exemplos Comparativos entre Linguagem Algorítmica e Linguagem C

Edwar Saliba Júnior. Dicas, Comandos e Exemplos Comparativos entre Linguagem Algorítmica e Linguagem C Edwar Saliba Júnior Dicas, Comandos e Exemplos Comparativos entre Linguagem Algorítmica e Linguagem C Belo Horizonte 2010 Sumário 1 Nota:... 2 2 Comandos e Palavras Reservadas:... 3 3 Dicas... 4 3.1 Strings

Leia mais

Curso Adonai QUESTÕES Disciplina Linguagem JAVA

Curso Adonai QUESTÕES Disciplina Linguagem JAVA 1) Qual será o valor da string c, caso o programa rode com a seguinte linha de comando? > java Teste um dois tres public class Teste { public static void main(string[] args) { String a = args[0]; String

Leia mais

Manual de instalação, configuração e utilização do Assinador Betha

Manual de instalação, configuração e utilização do Assinador Betha Manual de instalação, configuração e utilização do Assinador Betha Versão 1.5 Histórico de revisões Revisão Data Descrição da alteração 1.0 18/09/2015 Criação deste manual 1.1 22/09/2015 Incluído novas

Leia mais

Linguagem C. Programação Estruturada. Fundamentos da Linguagem. Prof. Luis Nícolas de Amorim Trigo nicolas.trigo@ifsertao-pe.edu.

Linguagem C. Programação Estruturada. Fundamentos da Linguagem. Prof. Luis Nícolas de Amorim Trigo nicolas.trigo@ifsertao-pe.edu. Programação Estruturada Linguagem C Fundamentos da Linguagem Prof. Luis Nícolas de Amorim Trigo nicolas.trigo@ifsertao-pe.edu.br Sumário Estrutura Básica Bibliotecas Básicas Tipos de Dados Básicos Variáveis/Declaração

Leia mais

SENAI São Lourenço do Oeste. Introdução à Informática. Adinan Southier Soares

SENAI São Lourenço do Oeste. Introdução à Informática. Adinan Southier Soares SENAI São Lourenço do Oeste Introdução à Informática Adinan Southier Soares Informações Gerais Objetivos: Introduzir os conceitos básicos da Informática e instruir os alunos com ferramentas computacionais

Leia mais

Componentes da linguagem C++

Componentes da linguagem C++ Componentes da linguagem C++ C++ é uma linguagem de programação orientada a objetos (OO) que oferece suporte às características OO, além de permitir você realizar outras tarefas, similarmente a outras

Leia mais

Manual de Instalação e Configuração do SQL Express

Manual de Instalação e Configuração do SQL Express Manual de Instalação e Configuração do SQL Express Data alteração: 19/07/11 Pré Requisitos: Acesse o seguinte endereço e faça o download gratuito do SQL SRVER EXPRESS, conforme a sua plataforma x32 ou

Leia mais

CURSO BÁSICO DE INFORMÁTICA. Microsoft Windows XP

CURSO BÁSICO DE INFORMÁTICA. Microsoft Windows XP CURSO BÁSICO DE INFORMÁTICA Microsoft Windows XP William S. Rodrigues APRESENTAÇÃO WINDOWS XP PROFISSIONAL O Windows XP, desenvolvido pela Microsoft, é o Sistema Operacional mais conhecido e utilizado

Leia mais

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE ALAGOAS CURSO TECNICO EM INFORMATICA DISCIPLINA:

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE ALAGOAS CURSO TECNICO EM INFORMATICA DISCIPLINA: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE ALAGOAS CURSO TECNICO EM INFORMATICA DISCIPLINA: PROGRAMAÇÃO ORIENTADA A OBJETOS PROFESSOR: REINALDO GOMES ASSUNTO: REVISÃO DA INTRODUÇÃO A ORIENTAÇÃO

Leia mais

Introdução ao Scilab

Introdução ao Scilab Programação de Computadores 1 Capítulo 1 Introdução ao Scilab José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2014.2 1/35 1 MATLAB e Scilab 2 O ambiente Scilab 2/35

Leia mais

Apresentação. Rio de Janeiro, 19 de fevereiro de 2002 Waldemar Celes

Apresentação. Rio de Janeiro, 19 de fevereiro de 2002 Waldemar Celes Apresentação A disciplina de Estruturas de Dados (ED) está sendo ministrada em sua nova versão desde o segundo semestre de 1998. Trata-se da segunda disciplina de informática oferecida no curso de Engenharia

Leia mais

PROGRAMANDO ANDROID NA IDE ECLIPSE GABRIEL NUNES, JEAN CARVALHO TURMA TI7

PROGRAMANDO ANDROID NA IDE ECLIPSE GABRIEL NUNES, JEAN CARVALHO TURMA TI7 Serviço Nacional de Aprendizagem Comercial do Rio Grande do Sul Informação e Comunicação: Habilitação Técnica de Nível Médio Técnico em Informática Programação Android na IDE Eclipse PROGRAMANDO ANDROID

Leia mais

MANUAL DE FTP. Instalando, Configurando e Utilizando FTP

MANUAL DE FTP. Instalando, Configurando e Utilizando FTP MANUAL DE FTP Instalando, Configurando e Utilizando FTP Este manual destina-se auxiliar os clientes e fornecedores da Log&Print na instalação, configuração e utilização de FTP O que é FTP? E o que é um

Leia mais

Informática - Básico. Paulo Serrano GTTEC/CCUEC-Unicamp

Informática - Básico. Paulo Serrano GTTEC/CCUEC-Unicamp Informática - Básico Paulo Serrano GTTEC/CCUEC-Unicamp Índice Apresentação...06 Quais são as características do Windows?...07 Instalando o Windows...08 Aspectos Básicos...09 O que há na tela do Windows...10

Leia mais

Eclipse com c++11 e boost Etapa 1- Download da IDE Eclipse c++ e configuração do MinGW

Eclipse com c++11 e boost Etapa 1- Download da IDE Eclipse c++ e configuração do MinGW Eclipse com c++11 e boost Etapa 1- Download da IDE Eclipse c++ e configuração do MinGW Primeiro passo: download Primeiramente devemos baixar o eclipse para c++, sugiro a ultima versão o Mars M4 https://eclipse.org/downloads/packages/release/mars/m4

Leia mais

Manual de Utilização

Manual de Utilização Se ainda tiver dúvidas entre em contato com a equipe de atendimento: Por telefone: 0800 642 3090 Por e-mail atendimento@oisolucoespraempresas.com.br Introdução... 3 1. O que é o programa Oi Backup Empresarial?...

Leia mais

FileMaker 13. Guia de ODBC e JDBC

FileMaker 13. Guia de ODBC e JDBC FileMaker 13 Guia de ODBC e JDBC 2004 2013 FileMaker Inc. Todos os direitos reservados. FileMaker Inc. 5201 Patrick Henry Drive Santa Clara, Califórnia 95054 FileMaker e Bento são marcas comerciais da

Leia mais

Tecnólogo em Análise e Desenvolvimento de Sistemas

Tecnólogo em Análise e Desenvolvimento de Sistemas Tecnólogo em Análise e Desenvolvimento de Sistemas O conteúdo deste documento tem como objetivos geral introduzir conceitos mínimos sobre sistemas operacionais e máquinas virtuais para posteriormente utilizar

Leia mais

Receita de bolo para instalar MinGW-GCC e Netbeans em Windows

Receita de bolo para instalar MinGW-GCC e Netbeans em Windows Receita de bolo para instalar MinGW-GCC e Netbeans em Windows Hae Yong Kim 13/08/2014 Este documento explica como fiz para instalar compilador MinGW-GCC e ambiente de desenvolvimento Netbeans em Windows.

Leia mais

Estratégia para fazer cópias de segurança ( backup ) em nuvem

Estratégia para fazer cópias de segurança ( backup ) em nuvem 1 de 20 Estratégia para fazer cópias de segurança ( backup ) em nuvem Resolvi documentar uma solução que encontrei para fazer minhas cópias de segurança. Utilizo um software gratuito chamado Cobian Backup

Leia mais

UNIVERSIDADE FEDERAL DE GOIÁS CERCOMP (CENTRO DE RECURSOS COMPUTACIONAIS) TUTORIAL DE USO DO WEBMAIL - UFG

UNIVERSIDADE FEDERAL DE GOIÁS CERCOMP (CENTRO DE RECURSOS COMPUTACIONAIS) TUTORIAL DE USO DO WEBMAIL - UFG UNIVERSIDADE FEDERAL DE GOIÁS CERCOMP (CENTRO DE RECURSOS COMPUTACIONAIS) TUTORIAL DE USO DO WEBMAIL - UFG Página 1 de 26 Sumário Introdução...3 Layout do Webmail...4 Zimbra: Nível Intermediário...5 Fazer

Leia mais

Gerador Menu. AVISO: A biblioteca só funciona corretamente com as versões 2.6 ou superiores ou 3.0 ou superiores.

Gerador Menu. AVISO: A biblioteca só funciona corretamente com as versões 2.6 ou superiores ou 3.0 ou superiores. Gerador Menu 1.0 Sobre este pacote Sistema gerador de menu para prompt de comando. 1.1 Sobre AVISO: A biblioteca só funciona corretamente com as versões 2.6 ou superiores ou 3.0 ou superiores. Resumidamente,

Leia mais

Computação II Orientação a Objetos

Computação II Orientação a Objetos Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Introdução Esse não é um curso de Java! O objetivo é aprender os conceitos da programação orientada a objetos,

Leia mais

O que um Servidor Samba faz?

O que um Servidor Samba faz? O que é o Samba? O Samba é um "software servidor" para Linux (e outros sistemas baseados em Unix) que permite o gerenciamento e compartilhamento de recursos em redes formadas por computadores com o Windows

Leia mais

Resumo da Introdução de Prática de Programação com C. A Linguagem C

Resumo da Introdução de Prática de Programação com C. A Linguagem C Resumo da Introdução de Prática de Programação com C A Linguagem C O C nasceu na década de 70. Seu inventor, Dennis Ritchie, implementou-o pela primeira vez usando um DEC PDP-11 rodando o sistema operacional

Leia mais

XXIV SEMANA MATEMÁTICA

XXIV SEMANA MATEMÁTICA XXIV SEMANA ACADÊMICA DA MATEMÁTICA Minicurso: Produção de Páginas Web para Professores de Matemática Projeto de Extensão: Uma Articulação entre a Matemática e a Informática como Instrumento para a Cidadania

Leia mais

Laboratório de Programação - Exercícios 12, 13 e 14

Laboratório de Programação - Exercícios 12, 13 e 14 Laboratório de Programação - Exercícios 12, 13 e 14 If, switch e funções João Araujo Ribeiro jaraujo@uerj.br Universidade do Estado do Rio de Janeiro Departamento de Engenharia de Sistemas e Computação

Leia mais

Construtor Iron Web. Manual do Usuário. Iron Web Todos os direitos reservados

Construtor Iron Web. Manual do Usuário. Iron Web Todos os direitos reservados Construtor Iron Web Manual do Usuário Iron Web Todos os direitos reservados A distribuição ou cópia deste documento, ou trabalho derivado deste é proibida, requerendo, para isso, autorização por escrito

Leia mais

AULA 1 PHP O QUE É APACHE FRIENDS

AULA 1 PHP O QUE É APACHE FRIENDS O QUE É PHP Se você já programa PHP, aconselho que pule para o capítulo 7 desse livro. Pois até esse capitulo iremos abordar algoritmos em PHP até a construção de uma classe com seus métodos e atributos

Leia mais

JavaScript 2.0X 1.0 3.0X 1.1 4.0 4.05 1.2 4.06 4.61 1.3 5.0 1.4 6.0 1.5

JavaScript 2.0X 1.0 3.0X 1.1 4.0 4.05 1.2 4.06 4.61 1.3 5.0 1.4 6.0 1.5 JavaScript Diego R. Frank, Leonardo Seibt FIT Faculdades de Informática de Taquara Fundação Educacional Encosta Inferior do Nordeste Av. Oscar Martins Rangel, 4500 Taquara RS Brasil difrank@terra.com.br,

Leia mais

Lazarus pelo SVN Linux/Windows

Lazarus pelo SVN Linux/Windows Lazarus pelo SVN Linux/Windows Sei que não faltam artigos sobre como obter e compilar o Lazarus e o FPC pelo SVN, mas sei também que nunca é de mais divulgar um pouco mais e talvez escrever algo diferente.

Leia mais

Manual do Teclado de Satisfação Local Versão 1.4.1

Manual do Teclado de Satisfação Local Versão 1.4.1 Manual do Teclado de Satisfação Local Versão 1.4.1 26 de agosto de 2015 Departamento de Engenharia de Produto (DENP) SEAT Sistemas Eletrônicos de Atendimento 1. Introdução O Teclado de Satisfação é uma

Leia mais

Para continuar, baixe o linux-vm aqui: http://www.gdhpress.com.br/downloads/linux-vm.zip

Para continuar, baixe o linux-vm aqui: http://www.gdhpress.com.br/downloads/linux-vm.zip Se, assim como a maioria, você possui um único PC ou notebook, uma opção para testar as distribuições Linux sem precisar mexer no particionamento do HD e instalar o sistema em dualboot, é simplesmente

Leia mais

Tutorial de Computação Programação Gráfica em Python para MEC1100 v2010.11

Tutorial de Computação Programação Gráfica em Python para MEC1100 v2010.11 Tutorial de Computação Programação Gráfica em Python para MEC1100 v2010.11 Linha de Equipamentos MEC Desenvolvidos por: Maxwell Bohr Instrumentação Eletrônica Ltda. Rua Porto Alegre, 212 Londrina PR Brasil

Leia mais

Introdução a conceitos e a prática de programação

Introdução a conceitos e a prática de programação Instituto de Informática - UFG Disciplina: Introdução à Computação Introdução a conceitos e a prática de programação Autores: Marcelo Akira e Anderson Soares Fevereiro de 2011 Alguns direitos autorais

Leia mais

Conhecendo o Visual FoxPro 8.0 Parte 3

Conhecendo o Visual FoxPro 8.0 Parte 3 AULA Conhecendo o Visual FoxPro 8.0 Parte 3 Continuando nossa saga pelas ferramentas do Visual FoxPro 8.0, hoje vamos conhecer mais algumas. A Ferramenta Class Designer A Class Designer é a ferramenta

Leia mais

Manual do Usuário Android Neocontrol

Manual do Usuário Android Neocontrol Manual do Usuário Android Neocontrol Sumário 1.Licença e Direitos Autorais...3 2.Sobre o produto...4 3. Instalando, Atualizando e executando o Android Neocontrol em seu aparelho...5 3.1. Instalando o aplicativo...5

Leia mais

Conhecendo o Sistema Operacional

Conhecendo o Sistema Operacional Prefeitura de Volta Redonda Secretaria Municipal de Educação NTM Núcleo de Tecnologia Educacional Municipal Projeto de Informática Aplicada à Educação de Volta Redonda - VRlivre Conhecendo o Sistema Operacional

Leia mais

Usando o Outlook MP Geral

Usando o Outlook MP Geral Usando o Outlook MP Geral Este guia descreve o uso do Outlook MP. Este guia é baseado no uso do Outlook MP em um PC executando o Windows 7. O Outlook MP pode ser usado em qualquer tipo de computador e

Leia mais

Apostila Básica de Lógica e Programação para Game Maker por Giosepe Luiz 1

Apostila Básica de Lógica e Programação para Game Maker por Giosepe Luiz 1 Apostila Básica de Lógica e Programação para Game Maker por Giosepe Luiz 1 Sumário 1. Introdução a Lógica... 03 2. Verdadeiro e Falso... 03 3. Conectivo E e OU... 03 4. Negação... 04 5. Introdução a Programação...

Leia mais

Desenvolvendo Aplicações Web com NetBeans

Desenvolvendo Aplicações Web com NetBeans Desenvolvendo Aplicações Web com NetBeans Aula 3 Cap. 4 Trabalhando com Banco de Dados Prof.: Marcelo Ferreira Ortega Introdução O trabalho com banco de dados utilizando o NetBeans se desenvolveu ao longo

Leia mais

Esta apresentação ensinará os conceitos de Orientação a Objetos com C++, do mais básico para o mais avançado. É suposto que o aluno já tenha

Esta apresentação ensinará os conceitos de Orientação a Objetos com C++, do mais básico para o mais avançado. É suposto que o aluno já tenha Esta apresentação ensinará os conceitos de Orientação a Objetos com C++, do mais básico para o mais avançado. É suposto que o aluno já tenha conhecimento avançado de C. Exemplo em C: Faça um programa que

Leia mais

Guia de Atualização do Windows XP para Windows 7

Guia de Atualização do Windows XP para Windows 7 Guia de Atualização do Windows XP para Windows 7 Conteúdo Etapa 1: Saiba se o computador está pronto para o Windows 7... 3 Baixar e instalar o Windows 7 Upgrade Advisor... 3 Abra e execute o Windows 7

Leia mais

GUIA DE INSTALAÇÃO NETDEEP SECURE COM VIRTUAL BOX

GUIA DE INSTALAÇÃO NETDEEP SECURE COM VIRTUAL BOX GUIA DE INSTALAÇÃO NETDEEP SECURE COM VIRTUAL BOX NETDEEP SECURE COM VIRTUAL BOX 1- Visão Geral Neste manual você aprenderá a instalar e fazer a configuração inicial do seu firewall Netdeep Secure em um

Leia mais

Em uma linguagem de programação como C e Pascal, temos a seguinte situação quando vamos compor um programa:

Em uma linguagem de programação como C e Pascal, temos a seguinte situação quando vamos compor um programa: 1 1. Introdução Este manual se propõe a dar uma visão inicial do Java e apresentar os primeiros passos para sua instalação, configuração e usabilidade pelo prompt de comando do Windows. O ideal é que este

Leia mais

SUMÁRIO 1. AULA 7 INTRODUÇÃO À REDES PONTO A PONTO = PARTE 1:... 2

SUMÁRIO 1. AULA 7 INTRODUÇÃO À REDES PONTO A PONTO = PARTE 1:... 2 SUMÁRIO 1. AULA 7 INTRODUÇÃO À REDES PONTO A PONTO = PARTE 1:... 2 1.1 Introdução... 2 1.2 Montando Redes Ponto-a-Ponto... 3 1.2.1 Parte lógica... 3 1.2.2 Escolhendo o sistema operacional... 3 1.2.3 Instalação

Leia mais

É uma das linguagens de programação que fazem parte da Plataforma.NET (em inglês: dotnet) criada pela Microsoft (Microsoft.NET).

É uma das linguagens de programação que fazem parte da Plataforma.NET (em inglês: dotnet) criada pela Microsoft (Microsoft.NET). C ( C-Sharp ) LPI 1. A Plataforma.NET (em inglês: dotnet) Visão Geral C é uma linguagem de programação. É uma das linguagens de programação que fazem parte da Plataforma.NET (em inglês: dotnet) criada

Leia mais

Pilhas. Profa Morganna Diniz

Pilhas. Profa Morganna Diniz Pilhas Profa Morganna Diniz Pilhas Geralmente pilhas são úteis em situações em que dados devem ser recuperados em ordem inversa a do armazenamento É uma estrutura de dados linear que permite acesso por

Leia mais

Curso Java Starter. www.t2ti.com 1

Curso Java Starter. www.t2ti.com 1 1 Apresentação O Curso Java Starter foi projetado com o objetivo de ajudar àquelas pessoas que têm uma base de lógica de programação e desejam entrar no mercado de trabalho sabendo Java, A estrutura do

Leia mais

Java - Introdução. Professor: Vilson Heck Junior. vilson.junior@ifsc.edu.br

Java - Introdução. Professor: Vilson Heck Junior. vilson.junior@ifsc.edu.br Java - Introdução Professor: Vilson Heck Junior vilson.junior@ifsc.edu.br Agenda O que é Java? Sun / Oracle. IDE - NetBeans. Linguagem Java; Maquina Virtual; Atividade Prática. Identificando Elementos

Leia mais

Manual do Cantor. Alexander Rieder Tradução: Marcus Gama

Manual do Cantor. Alexander Rieder Tradução: Marcus Gama Alexander Rieder Tradução: Marcus Gama 2 Conteúdo 1 Introdução 5 2 Usando o Cantor 6 2.1 Recursos do Cantor..................................... 6 2.2 As infraestruturas do Cantor...............................

Leia mais

Programando em C++ Histórico da Linguagem C

Programando em C++ Histórico da Linguagem C Programando em C++ Joaquim Quinteiro Uchôa joukim@comp.ufla.br DCC-UFLA, 2002 Programando em C++ p.1/38 Histórico da Linguagem C Linguagem C: 1972 - Laboratório Bells, por Dennis Ritchie, a partir da linguagem

Leia mais

Universidade Federal do Rio de Janeiro NCE/PGTIAE. Tutorial SweetHome3D

Universidade Federal do Rio de Janeiro NCE/PGTIAE. Tutorial SweetHome3D Universidade Federal do Rio de Janeiro NCE/PGTIAE Tutorial SweetHome3D Trabalho apresentado ao Prof. Carlo na Disciplina de Software Livre no curso Pós Graduação em Tecnologia da Informação Aplicada a

Leia mais

Conteúdo. 1 Introdução 5. 2 Pré-configuração 6. 3 Configurar a Interface do Usuário 7. 4 Configurar as opções internas 9

Conteúdo. 1 Introdução 5. 2 Pré-configuração 6. 3 Configurar a Interface do Usuário 7. 4 Configurar as opções internas 9 Esta documentação foi convertida a partir da página do K3b da Base de Usuários do KDE em 20/01/2011. Atualizada para a versão 2.0 pela equipe de documentação do KDE Tradução: Marcus Gama Tradução: André

Leia mais

Manual de Apoio ao Treinamento. Expresso

Manual de Apoio ao Treinamento. Expresso Manual de Apoio ao Treinamento Expresso 1 EXPRESSO MAIL É dividido em algumas partes principais como: Caixa de Entrada: local onde ficam as mensagens recebidas. O número em vermelho entre parênteses refere-se

Leia mais