반응형

전공 서적 4

태태개발일지 - 펙토리패턴 & 싱글톤 패턴

팩토리 팬턴정의:객체를 생성하는 일을 맡는 별도의 "팩토리" 역할을 하는 클래스를 두어서, 객체를 직접 만들지 않고 필요한 곳에서 팩토리 클래스를 통해 필요한 객체를 생성하도록 하는 디자인 패턴. ex) 미국에 피자가게가 있다고 가정하자, 만약 피자를 만들려면 아래와 같이 만들어야 할 것이다.public class PizzaStroe{ public static Pizza createPizza(String type){ if(type = "뉴욕 치즈 피자"){ NWCheesePizza nyPizza = new NWCheesePizza(); return nyPizza; }else if(type = "시카고 치즈 피자"){ CHChee..

태태개발일지 - 디자인패턴

전략 패턴정의:객체들이 할 수 있는 행위 각각에 대해 전략 클래스를 생성하고, 유사한 행위들을 캡슐화 하는 인터페이스를 정의하여,객체의 행위를 동적으로 바꾸고 싶은 경우 직접 행위를 수정하지 않고 전략을 바꿔주기만 함으로써 행위를 유연하게 확장하는 방법을 말합니다. 이 책에선 오리로 예시를 든다.public Class Duck{ public quck(){}; public fly(){};}  이렇게 되면 Duck을 상속받는 class 들은 무조건 fly와 quck을 날아야하기 때문에, 장난감 오리는 날지도 못하고, 꽉 하지도 못하는 데 상속을 통해 그 기능을 가져야한다. 여기서 전략 패턴이 필요하다.  그래서 이러한 행동을 클래스로 정의하는 것이 전략 패턴이다. interface Fly{ public fl..

태태개발일지(클린코드)

출근을 하고나서 약 2주간 체력손실로 블로그 작성과 1일1 커밋, 코테문제풀기를 잘 지키지 못했다. 하지만 어제부터 Js 강의를 듣고, 여러가지 교육 프로그램에 등록을 했다. 출근길에 클린코드를 읽으면서 왔다. 내용을 요약해 보자면 이렇다. 1. 우리가 정답은 아니다 그러므로 다른 사람의 클린코드에 대해서 배웠으면 좋겠다. 하지만 우리가 생각했을 때 우리가 정의하는 클린코드는 우리에게선 정답이다. 2. 클린 코드란 가독성이 좋은 코드로, 나아닌 다른사람이 읽었을 때도 좋은 코드라고 느껴진다면 그것이 좋은 코드이다. 3. 클린코드는 중복을 줄이고, 하나의 클레스나 메서드가 가지는 책임들을 단 한가지로 줄이는 것이다. -> 여기서 파생된는것( 메서드가 다양한 기능을 가지고 있을 때는 한가지 메인 기능을 표현..

태태개발일지(Clean Code)

어느 순간 오래 지난 내 코드를 보면서도 분석 시간이 많이 필요하다는 것을 느끼고, 미래에 내가 봤을 때도 쉽게 이해 할 수 있는 코드를 짜야겠다는 생각에 Clean코드를 간단하게 정리 해 보았다. 의미 있는 이름 변수, 함수, 인수, 클래스 ,패키지명에도 이름을 붙인다. 첫 번 째 규칙: 의도를 분명하게 밝히자. '의도가 분명한 이름을 짓자' ex) int kong=100 보다는 Vegitable kong = new Vegitable(100); 으로 클래스를 정의하는 것이 더 의미가 분명하다. // 이름으로 의도가 파악되지 않는 이름 int d; // 경과 시간(단위: 날짜) // 이름으로 의도가 올바르게 파악되는 이름 int elapsedTimeInDay; 두 번째 규칙: 그릇된 정보를 피하라. 여러..

반응형