![]() |
|
|
Planilha de Dimensionamento de Tubulações
Hidráulicas Água Fria e Água Quente CompletaNossa planilha automática de dimensionamento de tubulações de água fria e quente é uma ferramenta desenvolvida para auxiliar engenheiros e projetistas no cálculo rápido e preciso das redes hidráulicas de edificaçoes. Por meio da inserçao de dados como vazao, diâmetro da tubulaçao, comprimento da rede, material do tubo e coeficientes hidráulicos, a planilha realiza automaticamente os cálculos necessários para verificar velocidade da água, perda de carga e dimensionamento adequado das tubulaçoes. |
||
Você está aqui: Cards de Cards de Hidrologia |
||
|
||
|
|
||
Java ::: Dicas & Truques ::: Programação Orientada a Objetos |
Programação orientada a objetos em Java - Como criar e usar interfaces em seus programas JavaQuantidade de visualizações: 12466 vezes |
|
Muitos estudantes de Java torcem o nariz quando nós, professores e instrutores, tocamos no assunto de interfaces. Definitivamente este não é um tópico fácil de entender ao primeiro contato. Comecemos com uma analogia simples. É sabido que é cada vez maior o número de softwares sendo desenvolvidos em equipes, ou seja, o projeto do software é desmembrado e suas funcionalidades são implementadas por grupos diferentes de programadores. Quando estamos desenvolvendo software em grupos de programadores, é comum desenvolvermos partes que dependem do trabalho de um outro grupo. E, nem sempre podemos esperar que uma parte da qual dependemos fique pronta para só então progredirmos. Para isso, um contrato entre os grupos de programadores é firmado. E este contrato é o que chamamos de interface. Suponhamos que em um determinado momento meu grupo está desenvolvendo código que depende da parte de impressão, sendo desenvolvida por outro grupo. Todos se reúnem e decidimos quais funcionalidades a classe de impressão terá e quais métodos públicos serão disponibilizados. Feito isso, uma interface contendo a assinatura destes métodos é disponibilizada para todos e o desenvolvimento continua. Mais tarde, quando a classe de impressão estiver sendo desenvolvida, ela poderá implementar a interface anteriormente disponibilizada e tudo está resolvido. Sendo assim, uma interface na linguagem de programação Java é um tipo referência, similar a uma classe. A diferença é que uma interface pode conter apenas constantes e assinaturas e métodos. Não há a implementação dos corpos dos métodos. Além disso, interfaces não podem ser instanciadas usando new. Veja o que acontece quando tentamos fazer isso (lembre-se de que List é interface):
import java.util.*;
public class Estudos{
public static void main(String args[]){
// cria um objeto da interface List
List lista = new List();
}
}
Ao tentarmos compilar este código teremos a seguinte mensagem de erro:
Estudos.java:6: java.util.List is abstract;
cannot be instantiated
List lista = new List();
^
1 error
Interfaces devem ser implementadas por classes ou extendidas por outras interfaces. Agora, um detalhe interessante. Se você verificar a API do Java, verá que a interface List é implementada pelas classes AbstractList, ArrayList, LinkedList e Vector. Desta forma, o código anterior pode ser modificado para:
import java.util.*;
public class Estudos{
public static void main(String args[]){
// cria um objeto da interface List
List lista = new ArrayList();
}
}
Este código compila normalmente e fortalece nossa discussão a respeito da interface de impressão. O sistema inteiro pode fazer referências a uma interface e, para que ele funcione da forma esperada, só precisamos fornecer a classe que implementa a interface no momento de instanciar os objetos. Isso demonstra que o nome de uma interface pode ser usado em qualquer lugar no qual um tipo da classe que a implementa seja necessário. Vamos ver agora como criar uma interface chamada Pessoa. Veja:
public interface Pessoa{
public void setNome(String nome);
public String getNome();
}
Salve esta interface como Pessoa.java e a compile. Pronto! Esta interface já pode ser usada no sistema, contanto que todos do grupo tenham concordado com as assinaturas dos métodos. Agora observe uma classe Cliente que implementa esta interface:
public class Cliente implements Pessoa{
private String nome;
private int idade;
public void setNome(String nome){
this.nome = nome;
}
public String getNome(){
return this.nome;
}
}
Salve este código como Cliente.java e o compile. O primeiro detalhe a observar é o uso da palavra-chave implements para mostrar que a classe implementa a interface Pessoa. Note também que a classe fornece implementação para todos os métodos da interface. Não seguir esta regra geraria o seguinte erro de compilação:
Cliente.java:1: Cliente is not abstract and
does not override abstract method getNome() in
Pessoa
public class Cliente implements Pessoa{
^
1 error
Em resumo, uma interface define um protocolo de comunicação entre dois objetos e pode conter, além das assinaturas dos métodos, constantes. Neste caso todas estas constantes serão implicitamente public, static e final. Mesmo que estes modificadores sejam omitidos. |
Java ::: Dicas & Truques ::: Matemática e Estatística |
Como testar se um número é par ou ímpar em JavaQuantidade de visualizações: 46072 vezes |
|
Boa parte das listas de exercícios de Java básico contém um enunciado pedindo para o seu programa ler um número inteiro e informar se o mesmo é par ou ímpar. Esse teste é feito usando-se o operador de módulo (%) da linguagem Java. Este operador retorna o resultado de uma divisão por inteiros, ou seja, se dividirmos 5 por 2, o resultado da divisão inteira será dois e o resto 1, indicando que o número informado não é par. Veja o código completo para um exemplo:
package arquivodecodigos;
import java.util.*;
public class Estudos{
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.print("Informe um valor inteiro: ");
int num = input.nextInt();
if(num % 2 == 0){
System.out.print("Você informou um numero par");
}
else{
System.out.print("Você informou um numero impar");
}
System.exit(0);
}
}
Ao executarmos este código Java nós teremos o seguinte resultado: Informe um valor inteiro: 5 Você informou um numero impar |
C++ ::: Fundamentos da Linguagem ::: Estruturas de Controle |
C++ para iniciantes - Como usar a instrução switch em C++Quantidade de visualizações: 10962 vezes |
A instrução switch é usada quando queremos testar várias possibilidades de fluxo de código mas não queremos usar vários else if. Desta forma, cada possibilidade é testada em um bloco case. Veja um exemplo:
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
int valor = 4;
switch(valor){
case 0:
cout << "Valor e igual a 0" << endl;
break;
case 1:
cout << "Valor e igual a 1" << endl;
break;
case 2:
cout << "Valor é igual a 2" << endl;
break;
default:
cout << "Nenhuma das anteriores" << endl;
}
system("PAUSE");
return EXIT_SUCCESS;
}
Veja que, se nenhuma das condições testadas em um bloco case for satisfatória, a parte default da instrução switch será executada. A variável fornecida para uma instrução switch pode ser de qualquer tipo integral, ou de um tipo criado pelo usuário mas que pode ser convertido para um tipo integral (mesmo que seja uma conversão forçada - cast). |
Java ::: Dicas & Truques ::: Strings e Caracteres |
Apostila Java para iniciantes - Como concatenar strings em Java usando o operador "+"Quantidade de visualizações: 4 vezes |
|
Strings, ou seja, palavras, frases e textos, são concatenadas em Java usando-se o operador de adição "+". Lembre-se: concatenar significa juntar, agrupar, mesclar, etc. Veja um exemplo completo no trecho de código a seguir:
public class Estudos{
public static void main(String[] args){
String s1 = "Bom dia, ";
String s2 = "meu caro amigo!";
String s3 = s1 + s2;
System.out.println(s3);
System.exit(0);
}
}
Ao executar este código Java nós teremos o seguinte resultado: Bom dia, meu caro amigo! |
JavaScript ::: Web APIs (APIs Web) ::: MediaDevices Interface (Interface MediaDevices) |
HTML5 + JavaScript - Como usar a interface MediaDevices em seus códigos JavaScriptQuantidade de visualizações: 2143 vezes |
|
A interface MediaDevices é um daqueles objetos que vemos com frequencia em códigos JavaScript e não entendemos muito bem o seu funcionamento. Nesta dica vou decifrá-la. O objetivo da interface MediaDevices é fornecer acesso aos dispositivos de entrada de mídia conectadas e às quais o navegador tem acesso, a saber, câmeras, microfone e compartilhamento de tela. É por meio dessa interface que acessamos tais dispositivos. A interface MediaDevices está disponível como um objeto do objeto navigator. Veja como testar sua existência e suporte no seu navegador web:
<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>A interface MediaDevices</title>
</head>
<body>
<script type="text/javascript">
// o browser suporta o MediaDevices?
if(navigator.mediaDevices){
window.alert("O navegador suporta o MediaDevices");
}
else{
window.alert("O navegador não suporta o MediaDevices");
}
</script>
</body>
</html>
Note que mediaDevices é um objeto Singleton do objeto navigator, ou seja, só há uma instância desse objeto disponível no contexto de execução de códigos no navegador. Há também a preocupação em relação à segurança. Alguns navegador podem restringir o acesso a este objeto se você não estiver em um ambiente HTTPS ou localhost. |
Desafios, Exercícios e Algoritmos Resolvidos de JavaScript |
Veja mais Dicas e truques de JavaScript |
Dicas e truques de outras linguagens |
|
C++ - Como definir a cor de fundo para um Edit Control em tempo de execução usando C++ e a API do Windows C++ Builder - Como habilitar ou desabilitar um TEdit usando a função EnableWindow() da API do Windows usando C++ Builder |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |



