Return 0

Maio 16, 2008

Wiki de Tutoriais

Arquivado em: Diversos — Etiquetas HTML:, — computeiro @ 6:20 pm

Bem, pessoal. A web 2.0 está aí. A febre da colaboração na web também. Se existe uma enciclopédia colaborativa, por que não um acervo de tutoriais colaborativos?

Esta é a idéia do pessoal do Meshplex. Ele ainda está engatinhando, mas com o tempo com certeza estará bastante vasto, com várias opções de idiomas, assim como é a Wikipédia hoje. Uma pena que seja preciso se cadastrar para editar.



Já há tutoriais de Ruby, Java, C#, entre outros. Vale a pena dar uma olhada:

http://www.meshplex.org/

return 0

Maio 14, 2008

Código fonte do Windows Vista revelado pela Microsoft

Arquivado em: Microsoft — Etiquetas HTML:, — computeiro @ 11:40 am

A Microsoft maior empresa de software do mundo, tornou público o código fonte do Windows Vista:

Se esse código fonte não for do Windows Vista, o usuário que criou a imagem fez uma análise bem profunda do Windows Vista, não acham?

return 1

Maio 13, 2008

Phun - Playground Físico 2D

Arquivado em: Diversos — Etiquetas HTML:, , — computeiro @ 10:33 am

Phun é uma Tese de Mestrado de Emil Ernerfeldt, estudante de Ciência da Computação da Universidade de Umeå, Suécia, sob a supervisão de Kenneth Bodin no laboratório VRLab. A solução é baseada no trabalho de Claude Lacoursière.

Phun é uma espécie de playground onde as pessoas devem demonstrar sua criatividade. Ele pode ser usado como uma poderosa ferramenta educacional para o aprendizado de conceitos físicos como restituição e fricção.

Phun foi codificado em C++ usando OpenGL, GLEW, SDL (para gerenciamento de janelas), SDL_image (para leitura de imagens) e boost, incluindo boost_filesystem. O programa inteiro foi feito por Emil Ernerfeldt, incluindo o motor físico e a interface de usuário.

Mais informações em:

http://phun.cs.umu.se/wiki

O programa pode ser baixado (GNU/Linux, MacOS e Windows) em:

http://phun.cs.umu.se/wiki/Download

return 0

Maio 11, 2008

Print [1]

Arquivado em: Diversos, gnu/linux — Etiquetas HTML: — computeiro @ 11:23 pm

“Gates é um homem de negócios e seu objetivo é ganhar dinheiro. Não importa quanto dinheiro ele ganha das pessoas, nunca está satisfeito. o objetivo dele junto aos políticos é conseguir a restrição de leis para que possa ganhar ainda mais dinheiro. Torvalds é um programador, um hacker. Embora ele prefira ganhar dinheiro a estar quebrado, acredito que ele goste mais de programar do que de dinheiro. Ele não está interessado em questões políticas e tenta evitá-las. Eu sou um programador e estou preocupado com questões políticas. Eu também preferiria ganhar dinheiro a estar quebrado, também prefiro programar à ganhar dinheiro, mas o que realmente quero é vencer a batalha pela liberdade e cooperação, uma batalha contra a dominação.”

(Richard Stallman)

Maio 8, 2008

Limpar a Tela em Java

Arquivado em: Java — Etiquetas HTML: — computeiro @ 2:36 pm

Todos sabemos que além do famoso System.out.println() em Java, temos também o System.out.printf(), que funciona exatamente como o printf de C: \

public class LimpaTela
{
    public static void main(String[] args)
    {
        int n = 0;

        while(n++ < 11)
        {
            System.out.printf("%s\n%s\n%s\n%s\n",
                              "Teste Limpa Tela!",
                              "Teste Limpa Tela!",
                              "Teste Limpa Tela!",
                              "Teste Limpa Tela!");

            try 
            {
                Thread.sleep(2000); //funcao para dar uma pequena pausa
            }
            catch (InterruptedException e) { }

            System.out.printf("\33[2J"); //isto aqui limpa a tela
        }
    }
}

Há várias outras funcionalidades do printf, você pode conferi-las em (estão em C, mas se aplicam em Java usando System.out.printf() ):

http://br.geocities.com/sdiasneto/c_int/printf.htm

http://br.geocities.com/sdiasneto/c_int/index.htm

return 0

Maio 7, 2008

Instruções If e Else em C, C++ e Java

Arquivado em: C/C++, Java — Etiquetas HTML:, , , , — computeiro @ 7:45 pm

Bastante requisitada por programadores iniciantes e/ou programadores provenientes de outra linguagem, a maneira de se construir um bloco de instruções if/else é bastante trivial e exatamente igual em C, C++ e Java. Aqui vai um exemplo:

Em C:

# include <stdio.h>

int main(int argc, char** argv)
{
    int x = 0;
    int y = 1;

    if(x > y)
        printf("%d eh maior que %d\n", x, y);
    else
        printf("%d nao eh maior que %d\n", x, y);

    x = y--;

    if(x > y)
        printf("%d eh maior que %d\n", x, y);
    else
        printf("%d nao eh maior que %d\n", x, y);

    return 0;
}

Em C++:

# include <iostream>

using namespace std;

int main(int argc, char** argv)
{
    int x = 0;
    int y = 1;

    if(x > y)
        cout << x << " eh maior que " << y << endl;
    else
        cout << x << " nao eh maior que " << y << endl;

    x = y--;

    if(x > y)
        cout << x << " eh maior que " << y << endl;
    else
        cout << x << " nao eh maior que " << y << endl;

    return 0;
}

Em Java:

public class IfElse
{
    public static void main(String args[])
    {
        int x = 0;
        int y = 1;

        if(x > y)
            System.out.println(x + " eh maior que " + y);
        else
            System.out.println(x + " nao eh maior que " + y);

        x = y--;

        if(x > y)
            System.out.println(x + " eh maior que " + y);
        else
            System.out.println(x + " nao eh maior que " + y);
    }
}

O velho problema das chaves nos if/else aninhados:

Sabemos que ao usar apenas uma instrução dentro de um if ou de um else, as chaves são opcionais. Mais de uma instrução, no entanto, torna obrigatório o uso das chaves. Vejamos um problema comum com o uso das chaves em if/else aninhados:

# include <stdio.h>

int main(int argc, char** argv)
{
    int x = 5;

    if(x == 5)
        x = 4;
        if(x == 3)
            x = 2;
    else
        x = 0;

    //imprima x

    if(x == 5)
        x = 4;
        if(x == 3)
            x = 2;
    else
        x = 1;

    //imprima x

    return 0;
}

O que ocorrerá com o valor de x neste código? Teste-o e tire suas conclusões. A dica que eu posso dar é que pode ser resolvido fazendo isto:

# include <stdio.h>

int main(int argc, char** argv)
{
    int x = 5;

    if(x == 5)
    {
        x = 4;
        if(x == 3)
            x = 2;
    }else
        x = 0;

    //imprima x

    if(x == 5)
    {
        x = 4;
        if(x == 3)
            x = 2;
    }else
        x = 1;

    //imprima x

    return 0;
}

Teste os dois códigos e perceba que uma instrução else sempre pertence a o último if, no caso deste if/else conter apenas uma instrução. Uma dica: para evitar problemas, sempre use chaves em if/else, não importa se ele tiverem mais de uma instrução ou apenas uma.

return 0

Maio 6, 2008

Google Developer Day Brasil

Arquivado em: Google — Etiquetas HTML:, — computeiro @ 11:02 pm

O Google Developer Day Brasil, em sua segunda edição, acontecerá no dia 27 de junho.

O evento mundial do Google traz seminários e palestras com engenheiros do Google sobre vários temas e tecnologias da empresa, como Google Maps, OpenSocial, Android, Google Gears e Google Web Toolkit. É uma oportunidade e tanto para debater sobre o que pode ser feito com as ferramentas do Google, e sua integração com aplicações de terceiros.

Em 2007 o evento atraiu mais de 500 desenvolvedores e programadores de Internet por aqui. Em vários outros locais do mundo também tem, como Mountain View, Londres Paris, Madri, Hamburgo, Tóquio, Sidney, Beijing e Moscou.

Dessa vez não será simultâneo, em cada lugar será num dia diferente - dando oportunidade de se dedicar melhor a cada país.

A inscrição é gratuita, mas as vagas são limitadas. Portanto, vale a pena correr e fazer logo.

Para a inscrição e mais informações sobre a edição brasileira:

http://code.google.com/intl/pt-BR/events/developerday/2008/home.html

return 0

Posts antigos »

Blog no WordPress.com.