| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 02/03/2010 11:21:18
|
vitor lima
JavaBaby
![[Avatar]](/images/avatar/7d2bb55bb8d4a35025b15eb652920f3d.jpg)
Membro desde: 14/04/2009 09:16:59
Mensagens: 92
Offline
|
Estava discutindo com alguns colegas quando alguns deles me disseram que usar um asterisco em um import deixa seu programa pesado.
Por exemplo:
import java.io.*;
Eles estavam argumentando que você estará importando tudo o que está no acote io (o que é verdade) e que isto pode sobrecarregar a classe.
Mas a veu ver, o compilador deve dar um jeito nisso facilmente.
Já que basta para ele, na fase de pré-compilamento, mudar o nome das classes usadas pelo nome completo delas, podendo assim eliminar as importações...
Como eu não tinha nenhuma referência bibliografica, preferi não insistir muito na minha opinião.
Por isso, agora estou vindo aqui pedir a opinião de vocês sobre isso.
Abraço.
This message was edited 1 time. Last update was at 02/03/2010 11:22:04
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 02/03/2010 11:27:46
|
Marky.Vasconcelos
Moderador
![[Avatar]](/images/avatar/04940fadf3702cbd84b7a48161037c4f.png)
Membro desde: 11/04/2007 18:18:20
Mensagens: 5847
Localização: São Paulo/SP
Offline
|
Realmente o compilador substitui o nome das classes pelo correto
e em bytecode fica normalmente tipo
Ljava/io/File(Nao lembro se é exatamente assim mas é parecido) em todo ocorrencia de File
|
Facebook @MarkyHitchhiker +Mark WP: MarkyTech's
Projects:
Android Roadmap - Aprenda Android do inicio (Java é o unico pre-requisito)
Towel ( ObjectTableModel & Swing & Utils )
Tower Defense Game - Java2D [Open-Source] [How-to-play]
Ponto V! - Desenvolvimento de jogos para indies, curiosos e profissionais
DefaultTableModel?! PARE! Não faça isso! Faça melhor!
Dicas: Faça perguntas inteligentes! ; MigLayout ; GridBagLayout (Joke)
Develop games is fantastic, with words you can make worlds!!!
DON'T PANIC!
MarkyHitchhiker's Blog! |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 02/03/2010 11:28:42
|
lauronolasco
JavaEvangelist
![[Avatar]](/images/avatar/43e9cf78aafcad8469415b24f9e13fea.jpg)
Membro desde: 30/11/2007 19:19:59
Mensagens: 409
Localização: Vitória da Conquista - BA
Offline
|
tambem nao tenho referencia bibliografica...
mas acredito que não faça diferença de desempenho... imagine se vc declara os jars que fazem parte do seu classpath no MANIFEST...
declarar que faz parte do classpath não quer dizer necessariamente que vai ser usado..
mas é só uma opnião...
use o profile do jdk pra averiguar...
|
"Conhecimento nunca é demais!" |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 02/03/2010 11:43:01
|
Luiz Aguiar
Moderador
![[Avatar]](/images/avatar/843a4d7fb5b1641b0bb8e3c2b2e75231.jpg)
Membro desde: 23/01/2005 00:05:55
Mensagens: 3840
Localização: São Paulo
Offline
|
É mais uma boa prática, se vc importar mais de 4 classes do mesmo pacote, ai ai invés de ter um monte de linha de import vc usa o * .
[]s
|
-
Blog de Tecnologia
GitHub
@AguiarLuiz
Recicla SP na App Store!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 02/03/2010 11:48:51
|
vitor lima
JavaBaby
![[Avatar]](/images/avatar/7d2bb55bb8d4a35025b15eb652920f3d.jpg)
Membro desde: 14/04/2009 09:16:59
Mensagens: 92
Offline
|
O que eu penso é que o compilador faz algo como transformar um código como
em
antes de compilar.
Afinal, dá-se tanta importância aos compiladores, muitos dos que eu já estudei verificam até as suas expressões booleanas na fase de pré-compilamento, se o compilador Java não conseguir fazer essa simples substituição ...
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 02/03/2010 11:58:54
|
rodpuc
Java Ninja
![[Avatar]](/images/avatar/631ceaa1abe4dcc8659f7477bbe1f4bf.png)
Membro desde: 17/08/2006 14:55:20
Mensagens: 299
Offline
|
Quando vc usa o * o compilador não importa tudo q vc precisa, mas apenas oq vc usa, e isso de maneira alguma vai deixar o seu programa mais pesado.
Ainda assim o recomendado é colocar o nome completo de cada classe utilizada.
|
|
|
 |
|
|