Gostaria de acrescentar meus 2 c... enum no C eh algo bastante interessante: e nao tem nada a ver com Enumeration, como os colegas falaram. Eh como em alguns metodos do Swing - como o setDefaultCloseOperation(int mode) -, de APIs do J2EE - como alguns do JavaMail, q pedem por Flags.Flag - ou ainda do J2ME - como aqueles q definem o tipo de uma javax.microedition.lcdui.List (IMPLICIT, EXPLICIT, MULTIPLE eu acho :-)) - nota: espero q com este exemplo nas tres plataformas tenha conseguido todo mundo ver uma aplicacao pratica pra enum... :-)
Seria muito bom se nos pudessemos definir um "dominio discreto" para esses metodos de uma forma pratica, como: enum ListMode { IMPLICIT, EXPLICIT, MULTIPLE }; e declarar metodos como: setListMode(ListMode mode) q usassem somente essas constantes q poderiam nao ser, na realidade, objetos "pesados". Ha solucoes equivalentes, como foi falado - o exemplo de Flags.Flag do JavaMail eh uma boa demonstracao de como implementar isto em Java - mas nao com tanta praticidade e rapidez. Os templates as vezes fazem falta tb, mas a adicao de generics ao 1.4 jah estah resolvendo isso, assim como as assertions. Anyway, as principais vantagens do "nosso" Java sobre o C#: - +5 anos de estrada - modelo REALMENTE aberto de especificacao - modelo consistente de seguranca - so a Microsoft acha inseguro... :-) - internacionalizacao e localization - base de desenvolvedores em maior numero - nao vale dizer q quem sabe C++ sabe C# pq senao eu digo q sabe Java tb... - codigo fonte disponivel - apoio de grandes vendors, como Oracle, Borland, IBM, Nokia, Motorola e centenas de campeoes da Fortune - apoio leal dos javaneses - esta eh dificil de bater :-) A plataforma da Microsoft tem lah suas vantagens, como o conceito de propriedade built-in, mas embora esteja brincando com o beta, a API ainda eh bem inconsistente e a learning curve eh muito alta pro pessoal de VB e C/++ - os mesmos q jah tentam faz tempo migrar pro Java e acham complicado... Mesmo q a maioria mude pro .NET e quase aniquile o Java - o q eh muito, + muito dificil mesmo -, eu vou ficar feliz qdo daki a 5 anos as empresas tiverem seus sistemas legados em J2EE e ninguem mais conheca a linguagem pra fazer a migracao e precisar me contratar por 5 vezes mais por hora do q eu ganho hj... hehe! Long life to Java! ------------------------------------------------------------------------- Michael Nascimento Santos Sun Certified Programmer for the Java 2 Platform Analista de Sistemas - Consultor Moderador SouJava - www.soujava.org.br ----- Original Message ----- From: "Jorge Martins" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Tuesday, October 02, 2001 4:47 PM Subject: RE: [java-list] VEJAM ESSA - C# Acho este artigo muito fraco e tendencioso. Mas a crítica dele a java não ter enum não é absurda. Java não possui enum para tipificação como C. O Enumeration em java é apenas uma classe para coleção de objetos. Não serve como tipificação de parâmetros. Isto é um opção de design do java que concentra seus conceitos em classe. O que o autor deste artigo não sabe, não falou ou simplesmente não compreendeu é que há uma solução muito mais sofisticada e eficiente para esta questão que o conceito de enum. Para quem quiser saber a solução basta procurar pelo livro Effective Java Programming Language Guide, Item 21: Replace enum constructs with classes no Site da Sun. É apresentado um pattern interessantíssimo para substituição dos enums do C. Aliás, este livro parece ser imperdível, pelos capítulos que li diretamente no site. abraços Jorge -----Original Message----- From: Giovani Salvador [mailto:[EMAIL PROTECTED]] Sent: terça-feira, 2 de outubro de 2001 10:20 To: [EMAIL PROTECTED] Subject: [java-list] VEJAM ESSA - C# Pessoal, o link abaixo contém uma "comparação" ridícula entre C# e Java. O autor do artigo, além de demostrar falta total de conhecimento em java em alguns ítens, puxa completamente a corda para o lado eternamente proprietário Microsoft. O comparativo é bom para ver como esse sujeito tem total desconhecimento sobre java. Alguns exemplos: Fala que java não possui Enum (o que é o objeto enumeration então???) e não possui propriedades. É de doer, bom para dar umas risadas. http://www.microsoft.com/brasil/msdn/colunas/falandoc/col_falandoc_2.asp ************************************************** Giovani Salvador http://pagina.de/siglas (Siglas de informática) PROCERGS - Cia. de Processamento de Dados do Estado do Rio Grande do Sul Setor TSI - Tecnologia para Sistemas de Informação ICQ #44904309 ************************************************** ------------------------------ LISTA SOUJAVA ---------------------------- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm para sair da lista: envie email para [EMAIL PROTECTED] ------------------------------------------------------------------------- ------------------------------ LISTA SOUJAVA ---------------------------- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm para sair da lista: envie email para [EMAIL PROTECTED] ------------------------------------------------------------------------- ------------------------------ LISTA SOUJAVA ---------------------------- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm para sair da lista: envie email para [EMAIL PROTECTED] -------------------------------------------------------------------------