JAVA
-
TDD 17장. Money 회고 요약 및 정리JAVA 2022. 6. 27. 01:21
17장. Money 회고 요약 및 정리 메타포 어떤 메타포를 선택하느냐 → 완전 다른 방식의 설계 내가 지금까지 작성한 모든 프로그램을 20번씩 다시 작성해 본다면 어떨까?매번 새로운 통찰을 얻고 놀라움을 경험할 것인가? 더 신중을 기해서 모든 통찰을 세 번 안에 다 얻어낼 방법이 있을까? 아니면 한번에? 왜 자신이 짠 코드를 다시 짜면 더 잘 짤 수 있다고 이야기 하는지 더 와 닿는 부분이다. JUnit 사용도 실행 버튼을 정확히 125번 눌렀다. … 보통 일분에 한 번 정도 테스트를 실행했다. TestCode가 없었다면 과연 몇번이나 테스트를 할 수 있었을까? TestCode만 있다면 테스트를 수행하는 건 너무나도 간단하기 때문에 수 없이 많은 테스트를 할 수 있게 한다. TestCode는 개발자의 ..
-
primitive type vs wrapper classJAVA 2021. 10. 31. 00:49
Java 에서는 8가지 Primitive Data type 을 제공 합니다. 그리고 Primitive Type에 대한 Wrapper Class 를 제공하는데요. 여기에 대한 차이에 대해서 한번 알아봅시다! 그리고 어떤 경우에 primitive Type을 써야 하고 Wrapper Class 를 사용해야 하는지 알아봐요! 😀 Primitive Type과 Wrapper Class에 대한 Default Value 확인 (Sample Code) public class Main { byte primitiveTypeByte; short primitiveTypeShort; int primitiveTypeInt; long primitiveTypeLong; float primitiveTypeFloat; double pri..
-
Builder PatternJAVA 2021. 6. 3. 14:42
간략히 설명해서 Builder Pattern을 쓰는 이유는 아래와 같은 코드가 있다고 가정하고 이야기 해보자. new User("junseok", null, null); new User("", "junseok", "email"); new User(null, null, "email"); 지금은 매개변수가 3개 뿐이지만 만약 10개가 넘는 생성자 호출이 있다고 하면 코드만 봐서는 어떤 필드에 값이 들어가는건지 알 수 없고 상당히 추한 모습의 코드가 만들어질 것이다. 위의 방법으로 추한 코드 모습을 만들고 싶지 않은 경우에는 모든 경우의 수를 충족하도록 매개변수를 받는 생성자를 추가해야 한다. 상당한 낭비. new User("junseok"); new User("junseok", "email"); new Us..
-
메서드 추출(Extract Method)JAVA 2021. 5. 18. 13:08
장황한 메서드에는 너무 많은 정보와 복잡한 로직으로 얽혀 있습니다. 어떤 코드를 그룹으로 묶어도 되겠다고 판단될 땐 그 코드를 빼내어 목적을 잘 나타내는 직관적 이름의 메서드로 만들자 메서드 추출을 해야할 때 메서드가 너무 길때 코드에 주석을 달아야만 의도를 이해할 수 있을때 한 클래스의 두메서드 안에 같은 코드가 들어 있는 경우 한 클래스의 두 하위클래스에 같은 코드가 들어 있는 경우 메서드 추출에서 가장 힘든 작업 지역변수를 처리하는 것 방법 기능을 나타내는 이름의 새 메서드 생성 기존 메서드에서 빼낸 코드를 새로 생성한 메서드로 복사 빼낸 코드에서 기존 메서드의 모든 지역변수 참조를 찾는다. 그것들을 새로 생성한 메서드의 지역변수나 매개변수로 사용하게 된다. 빼낸 코드 안에서만 사용되는 임시변수가 ..