Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Keanu

Como Criar executável com o NetBeans??

Recommended Posts

Eu Tô precisando saber como criar um .exe com a ferramenta NetBeans 5.5 pra uma apresentação na Facul.

Por favor se alguém souber me ajude, beleza?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, em Java não tem como tu criar um .exe, nem no netbeans nem em qualquer outra IDE. Tu pode criar um .jar que é o executável do Java, com a opção "Build Main Project", ou F11. Seleciona a classe que tem o método main e tá criado o .jar que vai ficar dentro da pasta do projeto, na pasta dist.

Existem programas que conseguem transformar um .jar em .exe mas nunca testei, nunca precisei de um .exe em java...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Falou tudo.

É por isso que Java é uma linguagem portável e "cabe" em tudo quanto é lugar.

"cabe" porque ela consome bastante, mas se você tem recursos de memória e processador você usa java pra o que você precisar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bote fé que Java é bem pesado.

Compare compilar um algoritmo em Java e outro em C pra você ver a velocidade. A luz do pc pisca 1 vez em C e fica piscando algum bocado de tempo quando gera um bytecode e um .class em Java.

Recursos ali eu quis dizer pelo fato de que em C/C++ e Assembly a alocação dinâmica de memória é muito mais utilziada do que em Java. Tá certo que Java possui o GarbageCollector, mas isso impede até um certo ponto o desenvolvedor de manipular o hardware porque é tudo feito pela própria JVM. Ela é portável porque depois que tu instala a JVM o Java roda ali do jeito previsto, e "carrega" o software do lado pro outro, contanto que tenha a JVM junto.

É só repararmos na diferença da compilação: faça uma calculadora em java e uma em C pra você ver qual das duas compila mais rápido.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Na calculadora em C coloque algumas opções de otimização pra ver como C compila rápido...

Pra compila o Java é tranquilo, ele é pesado na hora de executar porque alem de carregar o programa tem que carregar a JVM, e a JVM ainda tem o trabalho de compilar/intepretar o bytecode.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sem funções de otimização C compila muito mais rápido que Java.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não cheguei a testar com algum fonte grande o bastante para comparar o tempo de compilação, mas tenho quase certeza que o Java compila mais rápido, o compilador C tem que fazer muito mais trabalho pela porrada de headers que qualquer programa C tem, e compilar para algum set de instruções real, principalmente um complexo que nem o x86, é muito mais trabalhoso do que compilar para um bytecode nem o do Java.

E de qualquer jeito, que diferença isso faz?

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • Autor do tópico
  • beleza

    valeu SleepWalker eu vou dar uma pesquisada nesses prog pra tranformar .jar em .exe

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Eu só estava respondendo o que o RED ICE duvidou de mim.

    E nem a pau que Java compila mais rápido que C.

    Tenho certeza absoluta disso.

    O que um compilador de C faz? Transforma o código em C pra um em Assembly que passa pelo Assembler, que monta o código em linguagem de máquina e faz o executável.

    O que um compilador de Java faz? Transforma o código em Java para vários bytecodeSSSSS e armazena eles no arquivo .class. O carregador de classe lê o .class e coloca os bytecodeSS na MP, depois é feita uma verificação se cada bytecode não extravasa a segurança e ainda depois deve ser executado pela JVM.

    O que eu quero dizer é que uma Máquina Virtual (tanto JVM quando VMWare e outros) rodam não tão rapidamente como um S.O. normal, porque requerem muito mais do hardware. Esse é o "pesado" do Java: ter os bytecodes executados pela JVM e não diretamente pelo hardware (ao contrário de C, Pascal, C++).

    E também não estou falando mal de Java, até pelo contrário: prefiro programar em Java do que em C, apesar de ter uma grande afinidade com C. O reuso de classes já prontas fazem com que o software seja terminado em tempo muito mais rápido do que termos que criar cada vez coisas novas com o C. O melhor de C/C++ é a manipulação direta do hardware (alocação dinâmica, ponteiros), que faz com que o sistema rode muito melhor em computadores precários.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    O que um compilador de C faz? Transforma o código em C pra um em Assembly que passa pelo Assembler, que monta o código em linguagem de máquina e faz o executável.

    O que um compilador de Java faz? Transforma o código em Java para vários bytecodeSSSSS e armazena eles no arquivo .class. O carregador de classe lê o .class e coloca os bytecodeSS na MP, depois é feita uma verificação se cada bytecode não extravasa a segurança e ainda depois deve ser executado pela JVM.

    Calma ae...

    O que um compilador de Java faz? Transforma o código em Java para vários bytecodeSSSSS e armazena eles no arquivo .class.

    Acabo, criou o .class e ja terminou a compilação, o resto só sera realizado na hora de executar o código, lembra como funciona o Java? O compilador pega o fonte e gera o byte code (o .class), depois na hora de executar o JVM pega esse .class e faz o que bem entender.

    Concordo que ele demora bem mais pra executar, mas a compilação é mais rapida.

    Transformar um fonte em código nativo é mais complicado do que no bytecode do Java (que alias, foi feito para ser simples), e isso influi o tempo de compilação, quem ja tentou fazer um compilador sabe muito bem do que eu estou falando.

    E um pouco da minha experiência, não tenho o Java na empresa, mas tenho o Visual C# e o Visual C++, com um fonte muito grande e sem otimização o C++ pode demorar varios minutos para compilar, o C# só alguns segundos, a mecanica de compilação do Java é semelhante a do C#, a menos que o javac seja uma @#$%! o tempo de compilação deve ser semelhante.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Cara, pegue um fonte que faz as mesmas coisas de Java e C ou C++ ou Pascal.

    Aqui no meu PC, nos da faculdade, nos dos meus amigos e no da minha mãe acontece a mesma coisa:

    C compila em menos de 3 segundos.

    Java demora mais de 5 segundos.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Desculpem... não estava duvidando... e sim perguntando...

    é que eu não entendo muito e em java só tinha testado aqueles programinhas que vem anexados em páginas html...

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    :P

    Não tem problema... as vezes é bom duvidar porque a gente duvida de si mesmos, e isso faz com que pesquisemos e obtenhamos certeza total do assunto.

    :P

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    Cara, pegue um fonte que faz as mesmas coisas de Java e C ou C++ ou Pascal.

    Aqui no meu PC, nos da faculdade, nos dos meus amigos e no da minha mãe acontece a mesma coisa:

    C compila em menos de 3 segundos.

    Java demora mais de 5 segundos.

    vou instala o JDK e o gcc aqui no fim de semana pra confirmar se o javac demora tanto pra compilar, no trabalho fiz um teste com o Visual C++ e C# ambos 2005, o programa só calculava o determinante de uma matrix 8x8, mas sem loops, o que da pouco mais de 40 mil linhas, tudo na função main, usei um script para gerar o fonte. O C# demorou menos de 2 segundos para compilar, o C++ sem otimizações demorou 20 segundos, com todas as otimizações eu esperei 20 minutos, mas como tinha que sair não fiquei para ver o resultado.

    O .class que o Java gera é muito parecido com o .exe que o C# gera, não tem porque demorar mais, esse resultado que você disse ai ficou muito estranho, e tambem testar o gcc só pra ter certeza que não é o você++ que é lerdo mesmo.

    A maquina onde trabalho é um Athlon XP 2000+.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Em Java a demora é muito maior nas seguintes configurações:

    - 20 clientes magros e um servidor com processador Intel Xeon 3.0 (acho que é) com 4 GB de RAM.

    - AMD Durom 950 Mhz, 256 RAM DIMM, 80 GB de HD.

    - Intel Celeron 2.66 Ghz, 512 DDR

    - Intel Celeron 2.66 Ghz, 1024 DDR

    - Athlon XP 2.0 (1250Ghz) com 128 DIMM

    - E mais um notebook Centrino (Não sei de mais nada, só o processador).

    TODOS usando gcc e javac.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Sem querer causar mais polêmica, fiz o teste como tinha dito antes, fiquei bem decepcionado com o javac, o processador aqui é um Athlon 64 3200+, bem melhor que o anterior, testei o J# e levou entre 3 e 4 segundos, achei um pouco estranho ser mais lento que o C# mas até tudo bem, porque alem de ler a biblioteca do .Net tem que ler a do Java*, com o javac foi só digitar javac teste.java e depois de 2 segundos... OutOfMemory...

    Fiquei bem decepcionado com isso, apesar de não ser comum um metodo com 40 mil linhas as demais ferramentas não tiveram problema.

    *Ou alguma coisa parecida com isso que a Microsoft criou para os fontes terem alguma compatibilidade.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Um método com 40 mil linhas de código???

    Nossa... isso em Orientação a Objetos?

    Nunca tinha visto isso, nem mesmo em códigos de interface com o NetBeans. Se foi em C# peço desculpas. Mas sempre achei que fosse melhor os métodos em OO não passarem de uma página. Isso em OO não em Java. Se estou errado infezlimente meu professor me ensinou errado :/

    Ps.: Não estou duvidando de você EduardoS, só falei que achei estranho.

    Abraço.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    Um método com 40 mil linhas de código???

    Nossa... isso em Orientação a Objetos?

    Nunca tinha visto isso, nem mesmo em códigos de interface com o NetBeans. Se foi em C# peço desculpas. Mas sempre achei que fosse melhor os métodos em OO não passarem de uma página. Isso em OO não em Java. Se estou errado infezlimente meu professor me ensinou errado :/

    Ps.: Não estou duvidando de você EduardoS, só falei que achei estranho.

    Abraço.

    :lol: Não conheço nenhum código real com um método de 40 mil linhas, em nenhuma linguagem, mas como precisava de um fonte grande e que pudesse ser facilmente usado para testar o tempo de compilação de um compilador C, C# e Java (e tava com preguiça de trabalhar em soluções mais adequadas), fiz um script para gerar esse código ai (veja posts anteriores).

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    A bom, ainda bem... senão eu estaria aprendendo errado!

    Um fonte só com 40 mil linhas de código já é meio inviável de fazer (acho que o melhor seria fazer em mais de um arquivo, dividindo em "sessões", pra faciliar a manutenção e a legibilidade).

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Com certeza, 40 mil linhas só pra teste mesmo, o maior arquivo fonte real que eu ja vi tinha 10 mil linhas, o que eu ja precisei mexer tinha 5 mil e xinguei até a bisavó do cara, mas tambem tem aqueles que fazem #include "metodo1parte1.h"/#include "metodo1parte2.h"/#include "metodo1parte3.h"/... só para não deixar cada arquivo muito grande, o que é ainda pior.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Crie uma conta ou entre para comentar

    Você precisar ser um membro para fazer um comentário






    Sobre o Clube do Hardware

    No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

    Direitos autorais

    Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

    ×