Skip to content

Instantly share code, notes, and snippets.

@ValentinaServile
Last active August 29, 2015 14:04
Show Gist options
  • Save ValentinaServile/3b6fe13180e49ff9ea40 to your computer and use it in GitHub Desktop.
Save ValentinaServile/3b6fe13180e49ff9ea40 to your computer and use it in GitHub Desktop.
Agile Skills [IT]

Skill essenziali per gli sviluppatori agili

Rimuovere la duplicazione

Esercizio 1

Old

class Organization {
	String id;
	String eName; //English name
	String cName; //Chinese name
	String telCountryCode;
	String telAreaCode;
	String telLocalNumber;
	String faxCountryCode;
	String faxAreaCode;
	String faxLocalNumber;
	String contactPersonEFirstName; //First name and last name in English
	String contactPersonELastName;
	String contactPersonCFirstName; //First name and last name in Chinese
	String contactPersonCLastName;
	String contactPersonTelCountryCode;
	String contactPersonTelAreaCode;
	String contactPersonTelNumber;
	String contactPersonFaxCountryCode;
	String contactPersonFaxAreaCode;
	String contactPersonFaxLocalNumber;
	String contactPersonMobileCountryCode;
	String contactPersonMobileAreaCode;
	String contactPersonMobileLocalNumber;
	...
}

New

class Organization {
	String id;
	String eName; //English name
	String cName; //Chinese name
	Contact contact;
	Person contactPerson;
	TelNumber fax;
	TelNumber tel;
}

class Person {
	String EFirstName; //First name and last name in English
	String ELastName;
	String CFirstName; //First name and last name in Chinese
	String CLastName;
	TelNumber tel;
	TelNumber fax;
	TelNumber mobile; 
}

class TelNumber{
	String TelCountryCode;
	String TelAreaCode;
	String LocalNumber;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment