반응형
데이터의 기능이 복잡해지면 객체로 만든다.
Before
public class ReplaceDataValueWithObject_before {
static public class Order {
private String customer;
public Order(String customer) {
this.customer = customer;
}
public String getCustomer() {
return this.customer;
}
public void setCustomer(String arg) {
this.customer = arg;
}
}
public static void main(String[] args) {
Order order = new Order("david");
System.out.println(order.getCustomer());
}
}
After
public class ReplaceDataValueWithObject_before {
static public class Order {
private Customer customer;
public Order(String customer) {
this.customer = new Customer(customer);
}
public String getCustomer() {
return this.customer.toString();
}
// public void setCustomer(String arg) {
// this.customer = arg;
// }
}
static class Customer {
String value;
Customer(String value) {
this.value = value;
}
public String toString() {
return value;
}
}
public static void main(String[] args) {
Order order = new Order("david");
System.out.println(order.getCustomer());
}
}
반응형
'Design Architecture > Refactoring' 카테고리의 다른 글
Replace Nested Conditional With Guard Clauses (0) | 2022.04.20 |
---|---|
Decompose Conditional (0) | 2022.04.20 |
Replace Type Code with Subclass (0) | 2022.04.20 |
Replace type Code with Class (0) | 2022.04.20 |
Encapsulate Collection (0) | 2022.04.20 |