![]() |
|
|
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 |
||
|
||
|
|
||
JavaScript ::: Dicas & Truques ::: Validação de Formulários |
Validação de formulários em JavaScript - Como validar um formulário contendo usuário e senha em JavaScriptQuantidade de visualizações: 34868 vezes |
|
A validação de formulários em JavaScript é uma das primeiras técnicas que devemos aprender, pois ela avita a perda de tempo que ocorre com a validação somente do lado do servidor (não se esqueça: as duas são necessárias). Ao validar no navegador, o usuário já vai as devidas correções sem ter que esperar o processamento de seus dados para, só então, ser comunicado de que alguma informação está incorreta. Assim, nesta dica, mostrarei como podemos validar um nome de usuário e senha em JavaScript. Deixei o exemplo bem mais, mas você pode melhorá-lo, adicionando até expressões regulares para ampliar as situações que podem ocorrer. O código abaixo vai gerar o seguinte formulário HTML: ![]() E agora o código completo para o exemplo:
<html>
<head>
<title>Estudando JavaScript</title>
<style type="text/css">
input {margin-bottom: 3px; margin-top: 3px}
</style>
<script language="JavaScript">
function validar(){
// só permitirá o envio se os dados forem fornecidos
if(document.login.nome.value == ""){
alert("Forneça o nome do usuário");
document.login.nome.focus();
return false;
}
else if(document.login.senha.value == ""){
alert("Forneça a senha do usuário");
document.login.senha.focus();
return false;
}
else{
return true;
}
}
</script>
</head>
<body>
<form name="login" action="gravar.php" method="post"
onsubmit="return validar()">
Usuário:<br>
<input type="text" id="nome" name="nome"><br>
Senha:<br>
<input type="password" id="senha" name="senha"><br>
<input type="submit" value="Entrar!">
</form>
</body>
</html>
|
R ::: Dicas de Estudo e Anotações ::: Variáveis e Constantes |
Como usar a função class() da linguagem R para verificar o tipo de dados de uma variávelQuantidade de visualizações: 1607 vezes |
|
Na linguagem R nós não precisamos informar o tipo de dados de uma variável no momento de sua declaração e, consequentemente, atribuição de seu valor inicial. No entanto, a linguagem permite que as variáveis, no decorrer da execução do programa, assumam outros tipos de dados. Dessa forma, em várias situações nós podemos precisar verificar qual o tipo de dados armazenado em um variável em um determinado momento, talvez, com o propósito de não assumir riscos durante um cálculo envolvendo inteiros e decimais. A função class() da linguagem R recebe o nome de uma variável e nos informa o seu tipo de dados. Veja um exemplo de seu uso: > x <- 10 [ENTER] > class(x) [ENTER] [1] "numeric" > x <- "Java" [ENTER] > class(x) [ENTER] [1] "character" > x <- TRUE [ENTER] > class(x) [ENTER] [1] "logical" > x <- 5L [ENTER] > class(x) [ENTER] [1] "integer" > Execute estas linhas na janela de comandos do R ou em um script e veja como a variável x assumiu, no decorrer da execução, os tipos numeric, character, logical e integer. |
Java ::: Dicas & Truques ::: Imagens e Processamento de Imagens |
Como carregar uma imagem em um BufferedImage do Java usando o método read() da classe ImageIOQuantidade de visualizações: 12735 vezes |
|
O método read() da classe ImageIO possui várias assinaturas. Entre elas há uma que aceita um objeto File representando o caminho e nome da imagem a ser carregada. Este método retorna um BufferedImage e atira uma exceção IOException se a imagem não puder ser carregada. O exemplo abaixo mostra como carregar uma imagem JPG em um BufferedImage usando ImageIO.read():
import java.awt.*;
import java.io.*;
import java.awt.image.*;
import java.awt.event.*;
import javax.swing.*;
import javax.imageio.*;
public class Estudos extends JFrame{
private BufferedImage imagem;
public Estudos() {
super("Estudos Java");
Container c = getContentPane();
c.setLayout(new FlowLayout());
JButton btn = new JButton("Carregar Imagem");
btn.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e){
imagem = null;
try{
imagem = ImageIO.read(
new File("imagens/fundo.jpg"));
}
catch(IOException exc){
JOptionPane.showMessageDialog(null,
"Erro ao carregar a imagem: " +
exc.getMessage());
}
if(imagem != null)
JOptionPane.showMessageDialog(null,
"Imagem carregada com sucesso.");
}
}
);
c.add(btn);
setSize(400, 300);
setVisible(true);
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
|
C# ::: Dicas & Truques ::: Programação Orientada a Objetos |
Como criar sua primeira classe em C# - Programação Orientada a Objetos em C#Quantidade de visualizações: 35348 vezes |
|
O estudo da programação orientada a objeto em C# passa obrigatoriamente pela criação de sua primeira classe. E esta não é uma tarefa fácil para os iniciantes. Esta dica o guiará passo-a-passo pelas caminhos iniciais. Esta dica assume que você já sabe criar uma aplicação console ou Windows Forms no Visual C# 2005 ou 2008. Sendo assim, crie uma nova aplicação console e vamos criar o esqueleto da classe. Em Visual C# 2005 ou 2008, a forma mais comum de adicionar uma classe ao seu projeto é clicando com o botão direito no namespace do projeto (o primeiro filho do solution explorer) e escolhendo a opção Add -> Class. Em seguida dê o nome "Pessoa.cs" para a classe e clique o botão Add. Imediatamente o código inicial para a classe será exibido, contendo o namespace e alguns using padrões. Agora faça sua classe Pessoa parecida com o código abaixo (não altere nada em relação ao namespace):
class Pessoa{
// varíáveis privadas para o nome
// e idade da pessoa
private string nome;
private int idade;
// método que permite definir o nome
// da pessoa
public void setNome(string nome){
this.nome = nome;
}
// método que permite definir a idade
// da pessoa
public void setIdade(int idade){
this.idade = idade;
}
// método que permite obter o nome
// da pessoa
public string getNome(){
return this.nome;
}
// método que permite obter a idade
// da pessoa
public int getIdade(){
return this.idade;
}
}
Hora de testar a classe. Volte à classe principal da aplicação (aquela que contém o método Main) e faça as seguintes alterações:
static void Main(string[] args){
// Cria uma instância da classe Pessoa
Pessoa p = new Pessoa();
// Define um nome e idade para a pessoa
p.setNome("Osmar J. Silva");
p.setIdade(37);
// Obtém o nome e idade da pessoa
string nome = p.getNome();
int idade = p.getIdade();
Console.WriteLine("Nome: " + nome + " - Idade: " +
idade);
Console.WriteLine("\n\nPressione uma tecla para sair...");
Console.ReadKey();
}
Funcionou? Agora tente refazer todo o processo, desta vez usando Windows Forms. |
Java ::: Pacote java.lang ::: StringBuffer |
Curso completo de Java - Como usar a classe StringBuffer da linguagem JavaQuantidade de visualizações: 9776 vezes |
|
A classe StringBuffer, no pacote java.lang, representa uma sequencia de caracteres mutável e segura em relação a threads. Um objeto StringBuffer é parecido com uma String, com a diferença que um StringBuffer pode ser modificado in-place, ou seja, modificações em seu conteúdo não geram uma nova cópia, como acontece com objetos da classe String. Veja a posição desta classe na hierarquia de classes Java: java.lang.Object java.lang.StringBuffer A qualquer momento um StringBuffer contém uma sequencia de caracteres em particular, mas o tamanho e o conteúdo da sequencia pode ser alterado por meio de certas chamadas de métodos. Objetos StringBuffer são seguros para acesso em um ambiente de múltiplas threads. Os métodos são sincronizados (synchronized) onde necessário de forma a garantir que todas as operações em uma instância em particular se comportem como se estivessem em ordem serial, ou seja, sejam consistentes com a ordem das chamadas de métodos feitas por cada uma das threads envolvidas. As operações principais de um StringBuffer são os métodos append() e insert(), que são sobrecarregados para aceitar dados de qualquer tipo. Cada um destes métodos converte a informação fornecida em string e então acrescenta ou insere os caracteres desta string no string buffer. O método append() sempre adiciona os caracteres no final do buffer. O método insert(), por sua vez, adiciona os caracteres em um determinado ponto. Por exemplo, se z se refere a um objeto string buffer cujo conteúdo é "start", então a chamada de método z.append("le") faria com que o string buffer tivesse agora ""startle"", enquanto z.insert(4, "le") alteraria o conteúdo do string buffer para "starlet". Em geral, se sb se refere a uma instância de StringBuffer, então sb.append(x) tem o mesmo efeito que sb.insert(sb.length(), x). Sempre que uma operação ocorre envolvendo uma sequencia de fonte (por exemplo, adicionar ou inserir a partir de uma outra sequencia), esta classe sincroniza somente o string buffer no qual a operação está sendo feita. Todo string buffer possui uma capacidade (capacity). Enquanto o comprimento da sequencia de caracteres contida no string buffer não exceder a capacidade do mesmo, não há necessidade de alocar uma nova matriz interna de buffer. Se o buffer interno for sobrecarregado, ele será automaticamente expandido. A partir do Java 5, esta classe foi suplementada com uma classe equivalente criada para o uso em ambiente de thread única: StringBuilder. A classe StringBuilder deve ser usada em vez de StringBuffer, uma vez que ela suporta as mesmas operações mas é mais rápida por não executar sincronização. |
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





