Translate

4 de abril de 2010

w3c padrões web guia de referência

Guia de referência CSS
Arquivo em formato de livro - Download do guia em formato PDF 10,7 MB
Guia de referência XHTML
Arquivo em formato de livro - Download do guia em formato PDF 12,2 MB
Boas práticas em Web Móvel
Referências às Boas Práticas em Web Móvel, em forma de cartelas com os assuntos agrupados por temas. - Download da cartela em formato PDF 11,6 MB

Institucional

Conduzindo a Web ao seu potencial máximo - PDF 4,1 MB
Folder institucional sobre a missão, objetivos e definições sobre o W3C.
Banner institucional de 100 x 215 cm do W3C.br - PDF 1,1 MB

Vídeos

Vídeo de Tim Berners-Lee para o lançamento do escritório Brasil do W3C - 06 de junho de 2008
Vídeos do Seminário W3C "Tecnologias Móveis: seu papel na Promoção do Desenvolvimento Social" - 04 e 05 de junho de 2008

Fotos

Fotos do Seminário W3C "Tecnologias Móveis: seu papel na Promoção do Desenvolvimento Social" - 04 e 05 de junho de 2008

Palestras e apresentações

Veja as apresentações feitas pela equipe W3C Brasil e o calendário de próximas palestras
Apresentações feitas no Seminário W3C "Tecnologias Móveis: seu papel na Promoção do Desenvolvimento Social" - 04 e 05 de junho de 2008

Traduções de documentos para o português

Melhorando o acesso ao governo com o melhor uso da web - PDF 1,37MB
Traduções para o português de documentos W3C
10-01-2007: Cerca de 60 documentos do W3C já estão em Português graças ao trabalho voluntário de muitos interessados na disseminação da cultura de padrões para o desenvolvimento Web. São as famosas recomendações, documentos e FAQs que estão disponíveis. Conheças os documetos traduzidos para o Português e os tradurores aqui.
Fonte original: http://www.w3c.br/divulgacao/#1

31 de março de 2010

Cakephp desenvolvimento rápido em php


CakePHP é gratuito, de código aberto, um framework em PHP para desenvolvimento ágil. É uma estrutura fundamental para programadores criarem aplicações web. Nosso principal objetivo é permitir que você trabalhe em uma estrutura que possa programar de forma rápida e sem a perda de flexibilidade.
CakePHP joga fora a monotonia do desenvolvimento web. Nós oferecemos todas as ferramentas que você precisa para começar programando o que realmente deseja: a lógica específica da sua aplicação. Em vez de reinventar a roda cada vez que se constrói um novo projeto, pegue uma cópia do CakePHP e comece a construir sua carruagem real da sua aplicação.
CakePHP tem uma equipe de desenvolvedores e uma grande comunidade, trazendo grande valor ao projeto. Além de manter você fora do reinvento da roda, usando CakePHP significa que o núcleo da sua aplicação é bem testado e constantemente aperfeiçoado.
Abaixo segue uma pequena lista dos recursos que você poderá desfrutar no CakePHP:
  • Ativo e com comunidade amigável;
  • Licença flexível;
  • Compatibilidade com PHP 4 e PHP 5;
  • Integrando funcionalidade CRUD (Create, Read, Update and Delete, ou Criar, Ler, Atualizar e Excluir) para interagir com o banco de dados;
  • Aplicações scaffolding;
  • Geração de código;
  • Arquitetura MVC (Model, View, Controller, ou Modelo, Visões, Controlador);
  • Requisições ao expedidor com clareza, URLs personalizáveis e rotas;
  • Validações internas;
  • Templates rápidos e flexíveis (Sintaxe PHP e com ajudantes);
  • Ajudantes para usar AJAX, JavaScript, HTML, formulários e outros nas visões;
  • Componentes de E-mail, Cookie, Segurança, Sessões, Manipulação de Requisições e outros;
  • Lista de controle de acessos flexível;
  • Limpeza de dados;
  • Flexibilidade com cache;
  • Internacionalização;
  • Funciona em qualquer subdiretório do seu website, com poucas configurações no Apache.

Referências:
Manual do CakePHP http://book.cakephp.org/pt
Página oficial em português http://www.cakephp.com.br/

17 de fevereiro de 2010

Estudando Java

Links para estudar a linguagem de programação Java:

http://www.java2s.com/Tutorial/Java/CatalogJava.htm
javanotes
Documentação da Java 6 da SUN


Java interface visual:
Java Swing tutorial
Training Java 3d
Training GUI Swing1 shortcourse
Tutorial uiswing
Tutorial uiswing components dialog
Demos SwingSet
OpenSwing framework = novos pacotes gráficos


Em português:
Curso de Java UFCQ
Curso de Java UFSCAR
tutoriais java
Apostilas avancadas de Java UNISINOS
Livro pensando em Java
Guia de aplicativos gráficos com Java e JavaFX
Criando um aplicativo gráfico com NetBeans
Grupo de usuarios Java
Tutorial Java 3 Orientacao a Objetos
Licao Componentes De Texto Swing
george disciplinas programacao com Java
Wiki instalando o Java no linux


Se seu inglês não está bom use o tradutor do google.
Contribua com sua dica no comentário.

Estudando Python

Links para estudar a linguagem de programação Python:

Zetcode Python Tutorial
Livro ThinkCSpy (Tradução)
Python-GTK Grafic User Interface
Python-GTK tutorial
Python Glade Grafic User tutorial

Em português:
Curso Python na prática
Python Brasil
IDEs Python
Documentacao Python
Tradução do livro ThinkCSpy
Artigo o fantástico mundo do python
Exemplos de códigos Python

Se seu inglês não está bom use o tradutor do Google
Contribua: coloque sua dica no comentário.

3 de fevereiro de 2010

Programando em C++ no linux

Para programar em C no linux podemos usar qualquer editor de texto como o Gedit, salvar o arquivo como "nome.c" , e para compilar basta dar o comando no terminal:
gcc nome.c
Se não tiver erros vai ser gerado um arquivo "a.out", que é o executável. E para executá-lo no terminal:
./a.out

Não esqueça de colocar o terminal na pasta onde está seu arquivo com o comando:
cd "/home/usuario/minhapasta/"

Uma IDE ajuda muito na programação, completando código, organizando projetos e mostrando os erros, recomendo o Geany e o Eclipse CDT.

Referências:
Editor Geany
Programação gráfica em C++ com Eclipse CDT

29 de janeiro de 2010

Turbine seu Eclipse com plugins

Adicione novas habilidades ao Eclipse, basta ir em Help > install new software, e adicione o site do plugin.

Listas de plugins:
http://eclipse-plugins.2y.net/eclipse/index.jsp
http://www.eclipseplugincentral.com/

Seleções:
C++ IDE: http://download.eclipse.org/tools/cdt/releases/galileo
RSS Reader: http://morphine.sourceforge.net/presence/projects/rss/index.html
ByeCycle - Analisador de código: http://priki.org/svn/byecycle/trunk/updatesite
Subclipse - Para Subversion: http://subclipse.tigris.org/update
EclipseME - Mobile sites: http://eclipseme.org/updates/ 

Referência:
http://javafree.uol.com.br/topic-7238-Eclipse-Plugins-Instalacao-via-Update-Sites.html

Subversion - Controle de versões

Antes de alterar seu programa, para adicionar uma nova funcionalidade ou alguma correção, é importante ter uma cópia do código, caso precisemos recuperar a versão anterior.
O controle de versão é formado pela área de trabalho e o repositório das versões.
As principais operações realizadas são:
  • commit = envia o pacote da área de trabalho para o repositório (backup), cada commit gera uma nova versão;
  • update = atualiza a área de trabalho com as modificações do repositório.
Para quem trabalha em equipe, ter um controle das versões é indispensável, uma ferramenta muito utilizada para isso é o Subversion (linha de comando), RapidSVN(interface gráfica do SubVersion), e seu similar TortoiseSVN para Windows.
O SubVersion cria backups de pastas(projetos) e qualquer arquivo com controle de versões, sendo que, para cada nova versão cria cópias dos arquivos atualizados e links para os repetidos, evitando assim a duplicidade de arquivos.

Antes de ver como utilizar a ferramenta, vamos ver alguns conceitos  importantes:
  • Repositório: Local onde o(s) projeto(s) será(ão) armazenado(s).
  • Trunk: Diretório onde se encontrará o projeto em fase de desenvolvimento (Dia a dia). O desenvolvimento do projeto começa aqui dentro.
  • Branch: Diretório destinado às fases de testes. Vamos supor o seguinte cenário, enquanto a Equipe A trabalha no desenvolvimento de novas funcionalidades da versão 1.0 do projeto, a Equipe B já inicia alguns testes para adicionar na versão 2.0 do projeto. Este projeto é de grande importância. Tudo o que for feito como forma de testar algo, sem comprometer o projeto como um todo, deverá ser colocado dentro deste diretório.
  • Tags: Diretório destinado às atualizações do projeto. Sempre que novas funcionalidades são adicionadas ao projeto e/ou bugs são corrigidos novas versões surgem dentro do diretório TAGS. Apenas os arquivos alterados são copiados para esta pasta, e links apontam para os demais.
O Subversion armazena todos os dados versionados em um repositório central. Os diretórios Trunk, Branch e Tags são uma convenção para organização do seu projeto, ou seja, podem ter outros nomes ou podem nem existir.
Para começar na prática, crie um novo repositório:
$ svnadmin create /caminho/do/repositorio
$ ls /caminho/do/repositorio
conf/ dav/ db/ format hooks/ locks/ README.txt
Este comando cria um novo diretório em /caminho/do/repositorio que contém um repositório do Subversion. Este diretório contém (entre outras coisas) um conjunto de arquivos de base de dados.

O repositório apenas gerencia arquivos e diretórios, então é intuitivo interpretar diretórios específicos como “projetos”, tenha em mente que estamos apenas falando sobre algum dado diretório (ou conjunto de diretórios) dentro do repositório.

Comece organizando seus dados dentro de um único diretório chamado meuprojeto (ou qualquer outro nome de sua preferência). A estrutura da árvore de seu projeto deve conter três diretórios internos chamados de branches, tags, e trunk. O diretório trunk deve conter todos os seus dados, enquanto que os diretórios branches e tags são vazios.

Em seguida importe os dados para dentro do repositório com o comando svn import:
$ svn import /tmp/meuprojeto file:///caminho/do/repositorio/meuprojeto -m
Adding               /tmp/meuprojeto/branches
Adding               /tmp/meuprojeto/tags
Adding               /tmp/meuprojeto/trunk
Adding               /tmp/meuprojeto/trunk/foo.c
Adding               /tmp/meuprojeto/trunk/bar.c
Adding               /tmp/meuprojeto/trunk/Makefile
...
Committed revision 1.

Agora o repositório contém esta árvore de dados. Como mencionado anteriormente, você não verá seus dados ao listar diretamente o conteúdo do repositório; os dados estão todos armazenados dentro de uma base de dados. Mas o sistema de arquivos imaginário do repositório agora contém um diretório
de alto nível chamado meuprojeto, que por sua vez contém seus dados.

Veja que o diretório /tmp/meuprojeto original não é alterado; o Subversion sequer tem conhecimento dele. (De fato, você pode até excluir esse diretório se quiser.) Para começar a manipular os dados do repositório, você precisa criar uma nova “cópia de trabalho” dos dados, que são uma espécie de espaço de trabalho particular. Solicite que o Subversion lhe entregue (“check out”) uma cópia de trabalho do diretório meuprojeto/trunk no repositório:
$ svn checkout file:///caminho/do/repositorio/meuprojeto/trunk meuprojeto
A meuprojeto/foo.c
A meuprojeto/bar.c
A meuprojeto/Makefile
...
Checked out revision 1.
Agora você tem uma cópia pessoal de uma parte do repositório em um novo diretório chamado meuprojeto. Você pode alterar os arquivos em sua cópia de trabalho e então submeter essas alterações de volta para o repositório.
• Entre em sua cópia de trabalho e modifique o conteúdo de algum arquivo.
• Execute svn diff para ver uma saída unificada de suas alterações.
• Execute svn commit para submeter a nova versão de seu arquivo ao repositório.
• Execute svn update para deixar sua cópia de trabalho “atualizada” com o repositório.
Para conhecer todas as coisas que você pode fazer com sua cópia de trabalho, leia Capítulo 2 do livro do Subversion, uso básico.


Referências:
conceitos_basicos_controle_versao_centralizado_e_distribuido
Controle de versão com Subversion no Eclipse no Windows
Subclipse - plugin do Subversion no Eclipse 
Livro do Subversion 
Tutorial resumido do Subversion
Criando um servidor de versões com Visual SVN Server 
Hospedando projetos no Google-code

10 de novembro de 2009

Java API - documentação

A API é uma biblioteca (coleção de classes) que desempenha as funções básicas de uma linguagem de programação, ela é essencial para implementar as funcionalidades que desejamos para nossa aplicação.

A biblioteca de classes (API java) está organizada em pacotes, por exemplo:
  • javax.swing - janelas para criar a interface de usuário com menus;
  • java.util - classes utilitárias;
  • java.math - cálculos matemáticos;
  • java.io - interações de entrada e saída;
Podemos introduzir nossas próprias classes e pacotes, criando nossa própria biblioteca reutilizando nossas funções em outros programas.

Para utilizar a API basta fazer o download da ultima versão, e mostrar o caminho de onde foi salvo para o IDE (editor de programas), assim podemos acessar as classes da biblioteca usando o comando import no início do código:
import java.util.arraylist;
import javax.swing.*;
public class minha {

A melhor maneira de conhecer todo o potencial de uma linguagem de programação é ler a documentação de sua API, que em java está disponível no seu site oficial (em inglês):
http://java.sun.com/javase/6/docs/api/

Introdução à C. da Computação com Java e Orientação a Objetos

O livro evoluiu da experiência dos autores no ensino da disciplina de Introdução à Ciência da Computação ministrado no Instituto de Matemática e Estatística da Universidade de São Paulo. Suas características principais são um estilo informal e o uso, desde a primeira aula, de conceitos de Orientação a Objetos.

Este livro já foi adotado como livro-texto da disciplina introdutória de Computação para alunos do Bacharelado em Ciência da Computação, Bacharelado em Matemática, Licenciatura em Matemática, Bacharelado em Sistemas de Informação, Bacharelado em Física e Licenciatura em Física da USP.

Para baixar o livro clique em IntroCCcomJavaeOO.pdf

Alguns exemplos de código-fonte em Java podem ser encontrados em nossa pasta de Exemplos.
Professores: os arquivos para a produção do Teatro de Objetos estão disponíveis neste site.

Referência:
http://introjava.incubadora.fapesp.br/portal

5 de novembro de 2009

TIOBE - ranking das linguagens mais usadas

O índice da comunidade de programação TIOBE dá uma indicação da popularidade das linguagens de programação. O ranking (índice) é atualizado mensalmente e é baseado na qualificação de engenheiros no mundo inteiro, cursos e fornecedores. Google, MSN, Yahoo!, Wikipedia e YouTube são utilizados para calcular os votos. Observe que o índice TIOBE não é sobre a melhor linguagem de programação ou a línguagem em que a maioria das linhas de código têm sido escrito, mas é para verificar a popularidade das linguagens de programação.

O índice pode ser usado para verificar se suas habilidades de programação são ainda actualizados ou para tomar uma decisão estratégica sobre a linguagem de programação deve ser adotada quando começar a construir um novo sistema de software. A definição do índice TIOBE pode ser encontrada aqui.

http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html