eng
fr
CV version java
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class Curriculum {

    private static String nom = "BERTHELON";
    private static String prenom = "Franck";
    private static Date naissance = new Date(10, 07, 1985);
    private static String nationalite = "Français";
    private static String mail = "postmaster@answeris42.fr";
    private static boolean permisB = true;
    
    public class Annee {
	private String annees;
	private String intitule;
	private String adresse;
	
	public Annee(String annees, String intitule, String adresse) {
	    this.annees = annees;
	    this.intitule = intitule;
	    this.adresse = adresse;
	}
	
	public String toString() {
	    return annees.toString()+" : "+intitule+"\n    "+adresse+"\n";
	}
    }
    
    private List<Annee> cursus = new ArrayList<Annee>();
    
    public class Competence {
	private String titre;
	private List<String> details;
	
	public Competence(String titre) {
	    this.titre = titre;
	}
	
	public void ajouterDetails(List<String> details) {
	    this.details = details;
	}
	
	public String toString() {
	    String res = titre.toString()+" : ";
	    if (details != null) {
		for (String c : details)
		    res+=c+", ";
	    }
	    return res+"\n";
	}
    }
    
    private List<Competence> competencesInformatique = new ArrayList<Competence>();    
    private List<String> experienceProfessionnelle = new ArrayList<String>();
    private String langue;
    private List<String> hobies = new ArrayList<String>();
    
    public Curriculum() {
	
	/** *********************************************************** */
	/* Cursus */
	/** *********************************************************** */
	
	cursus.add(new Annee("2007-2008", "Master 1 informatique",
	          "Faculté des Sciences Valrose, 06100 Nice"));
	cursus.add(new Annee("2006-2007",
		  "Obtention de la licence d'informatique",
		  "Faculté des Sciences Valrose, 06100 Nice"));
	cursus.add(new Annee("2004-2006",
		  "Obtention du DUT informatique option Genie Informatique",
		  "IUT Napoleon III, 06300 Nice"));
	cursus.add(new Annee("2003", "Obtention du Baccalauréat Scientifique",
		  "Lycée Masséna, 06300 Nice"));
	
	/** *********************************************************** */
	/* Compétences informatique */
	/** *********************************************************** */
	
	/* Ajout des langages orientées objet */
	Competence cmp = new Competence("Programmation Orientée Objet");
	List<String> detailsCompetences = new ArrayList<String>();
	detailsCompetences.add("C++");
	detailsCompetences.add("java");
	detailsCompetences.add("VB.net");
	detailsCompetences.add("C#.net");	
	cmp.ajouterDetails(detailsCompetences);
	this.competencesInformatique.add(cmp);
	
	/* Ajout des langages impératifs */
	cmp = new Competence("Programmation Impérative");
	detailsCompetences = new ArrayList<String>();
	detailsCompetences.add("C");
	detailsCompetences.add("Pascal");
	cmp.ajouterDetails(detailsCompetences);
	this.competencesInformatique.add(cmp);
	
	/* Ajout des langages fonctionnelles */
	cmp = new Competence("Programmation Fonctionnelle");
	detailsCompetences = new ArrayList<String>();
	detailsCompetences.add("Scheme");
	detailsCompetences.add("Caml");
	detailsCompetences.add("Hop");
	cmp.ajouterDetails(detailsCompetences);
	this.competencesInformatique.add(cmp);
	
	/* Ajout des langages divers */
	cmp = new Competence("Programmation Diverse");
	detailsCompetences = new ArrayList<String>();
	detailsCompetences.add("Icon");
	cmp.ajouterDetails(detailsCompetences);
	this.competencesInformatique.add(cmp);
	
	/* Ajout des langages systeme et competence specifiques */
	cmp = new Competence("Programmation Système");
	detailsCompetences = new ArrayList<String>();
	detailsCompetences.add("Windows");
	detailsCompetences.add("Linux shell et noyau(VFS)");
	cmp.ajouterDetails(detailsCompetences);
	this.competencesInformatique.add(cmp);
	
	/* Ajout des competence en base de données */
	cmp = new Competence("Base de donnée");
	detailsCompetences = new ArrayList<String>();
	detailsCompetences.add("MySQL");
	detailsCompetences.add("Oracle");
	detailsCompetences.add("Notions de data mining");
	cmp.ajouterDetails(detailsCompetences);
	this.competencesInformatique.add(cmp);
	
	/* Ajout des competence en coneption */
	cmp = new Competence("Analyse et conception");
	detailsCompetences = new ArrayList<String>();
	detailsCompetences.add("Objet UML");
	detailsCompetences.add("Classique Merise");
	cmp.ajouterDetails(detailsCompetences);
	this.competencesInformatique.add(cmp);
	
	/* Ajout des competence en compilation */
	cmp = new Competence("Compilation");
	detailsCompetences = new ArrayList<String>();
	detailsCompetences.add("Flex et Bison");
	detailsCompetences.add("Connaissances des principales grammaires");
	cmp.ajouterDetails(detailsCompetences);
	this.competencesInformatique.add(cmp);
	
	/* Ajout des competence en administration Réseau */
	cmp = new Competence("Administration Réseau");
	this.competencesInformatique.add(cmp);
	
	/** *********************************************************** */
	/* Expérience professionnelle */
	/** *********************************************************** */
	
	this.experienceProfessionnelle
		.add("Tutorat C2i pour des étudiants de L1 et L2 de toutes 
			filières");
	this.experienceProfessionnelle
		.add("TER au sein du projet Tetard dans le but de réaliser
			la partie logiciel d'un robot subaquatique dans un 
			environnement Microsoft Robotics (C# + web service)");
	this.experienceProfessionnelle
		.add("2 mois de stage a l'INRIA au sein du projet MIMOSA dans
			le but de réaliser un binding de l'API DBus pour 
			le langage web HOP basé sur Scheme");
	this.experienceProfessionnelle
		.add("11 semaines de stage dans le service informatique de 
			la société Rhom and Haas dans le but 
			d'améliorer une interface graphique existante dans un 
			environnement VB.net");
	this.experienceProfessionnelle
		.add("Cours particulier d'informatique depuis 2002");
	this.experienceProfessionnelle
		.add("Manutentionnaires aux Galeries Lafayette");
	
	/** *********************************************************** */
	/* Langues */
	/** *********************************************************** */
	
	this.langue = "Anglais scolaire";
	
	/** *********************************************************** */
	/* Hobies */
	/** *********************************************************** */
	
	this.hobies.add("Musique Rock");
	this.hobies.add("Cinéma classique");
	this.hobies.add("Littérature de science fiction et heroic fantasy");
	this.hobies.add("Squash");
    }
    
    public String toString() {
	String res = nom+" "+prenom+"\n"+naissance+"\n"+nationalite+"\n"+mail+"\n";
	if (permisB)
	res += "Titulaire du permisB\n";
	
	res+="\n";
	
	for (Annee a : this.cursus)
	res +=a.toString();
	
	res +="\n";
	
	for (Competence c : competencesInformatique)
	res += c.toString();
	
	res+="\n"+langue+"\n\n";
	
	for (String s : hobies)
	res+=s+"\n";
	
	return res;
    }
    
    public static void main (String[] argv) {
	Curriculum cv = new Curriculum();
	System.out.println(cv);
    }
}