Oct 15 2009

ArrayList em Java e C#


Esse post não tem a mínima intenção de fazer uma análise aprofundada das duas plataformas. Pode ser considerado um brincadeira com ambas as linguagens. Não quero chegar a nenhuma conclusão com este post. A idéia surgiu já que estou empolgado depois que comecei a ler o livro Head First C#.

As regras são as seguintes: Criar uma classe pessoa (Person) tendo apenas o nome como atributo e uma classe pessoas (People) que contendo um ArrayList que agregue pessoas. A classe People deve conter um método para listar todas as pessoas.

Para melhor visualização do problema utilizei uma avançada ferramenta de UML. Veja foto abaixo:

Diagrama UML

Classe Person

//Classe Person em Java
public class Person {

	String name;

	public Person(String name){
		this.setName(name);
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

}
//classe Person em C#
namespace ConsoleApplication1 {
    class Person {
        private string name;

        public Person(string name) {
            this.setName(name);
        }

        public string getName() {
            return this.name;
        }

        public void setName(string name){
            this.name = name;
        }

    }
}

Classe People

//Classe People em Java
import java.util.ArrayList;
import java.util.List;

public class People {

	List people = new ArrayList();

	public void addPerson(String name){
		Person p = new Person(name);
		people.add(p);
	}

	public void listPeople(){
		for(Person p : people){
			System.out.println(p.getName());
		}
	}
}
//Classe People em C#
using System;
using System.Collections;

namespace ConsoleApplication1 {
    class People {
        ArrayList people = new ArrayList();

        public void addPerson(string name){
            Person p = new Person(name);
            people.Add(p);
        }

        public void listPeople() {
            foreach (Person p in people) {
                Console.WriteLine(p.getName());
            }
        }
    }
}

Classe Main

//Classe Main em Java
public class Main {

	public static void main(String[] args) {
		People p = new People();
		p.addPerson("Rodrigo");
        p.addPerson("José");
        p.addPerson("João");
        p.listPeople();
	}

}
//Classe Main em C#
namespace ConsoleApplication1 {
    class MainClass {
        static void Main(string[] args) {
            People p = new People();
            p.addPerson("Rodrigo");
            p.addPerson("José");
            p.addPerson("João");
            p.listPeople();
            Console.ReadKey();
        }
    }
}

Garanto-lhes que o resultado foi o mesmo em ambas as plataformas. Algo parecido com a imagem abaixo:

Resultado Final

Resultado Final

Comments (1)

Tags: , ,

Relacionados



May 04 2009

[updated] Iniciando uma biblioteca técnica…


Java the UML way

Java the UML way

Depois de mais de nove meses vivendo no América é que me dei conta de que os livros técnicos que são bastante caros no Brasil aqui são acessíveis. Decidi então iniciar uma coleção de livros de programação.

Lembro me da época da faculdade em que sempre queria o livro Java – Como programar do Deitel, mas por ser muito caro acabava renovando inúmeras vezes o empréstimo na biblioteca da Furb.

Head First Design Patterns

Head First Design Patterns

No final de semana fui até a Fry’s e optei pelos dois primeiros títulos. Java the UML Way, que fala sobre o desenvolvimento Java utilizando-se de elementos UML, e A C# Application from Inspiration to Implementation, que exemplifica o desenvolvimento uma aplicação C# do inicio ao fim. O primeiro me custou catorze dólares enquanto o segundo que já é uma edição mais antiga saiu por míseros 3,99. Séries mais famosas com a Head First, acho que Use a cabeça no Brasil e The Bible custam cerca de trinta dólares o exemplar.

Update: Acabou de chegar o Head First Design Patterns da Amazon. Custou 33 pilas americanos…

A C# Application from Inspiration to Implementation

A C# Application from Inspiration to Implementation

Vale lembrar que livros não pagam taxa alguma de importação e uma boa dica é adquiri-los na Amazon.

Comments (2)

Tags: ,

Relacionados