분류 전체보기(313)
-
[Data Structures & Algorithms in Java 6th] Ch.8 - Trees
Tree Structure - Github 코드 - Trees data structure is much faster than liner data structures, such as arrays or linked lists. - non liner data structure is much more richer than simple "before" and "after" data structure. - The relationships in trees are hierarchical. - Formal Tree Definition(Look for keywords) . internal/external : with or without child nodes. . edge : a pair of parent, child no..
2021.04.29 -
[Data Structures & Algorithms in Java 6th] Ch.1 - Java Prmier
자료구조, 알고리즘 교재를 공부하며 정리한 내용입니다. 원서 특성 상 원문을 최대한 살렸습니다. 교재 정보는 글 제목에 있는 책 제목을 구글에 검색하시면 바로 나옵니다. 자세한 정보는 글 맨 아래 [출처]를 확인하시면 됩니다. 챕터 1은 전체를 다루지 못했고 바로 [챕터 8 Tree]로 넘어가 자료구조 공부를 선행하기로 순서를 변경했습니다. 1.2 Classes and Objects - Identifier is the name of class, method or variables in Java. - Method is a block of codes that can be called to perform. . accessor method : returns information to caller without ..
2021.04.29 -
[mosh youtube] Docker Tutorial - (1) Docker Action
앱 런칭 단계에 있는 스타트업의 서버 API 개발 포지션 면접을 보면서 Docker에 대해 공부해보았습니다. 반드시 Docker를 써야되진 않지만 일전에 배포했던 앱 서비스가 Docker를 사용했다 말씀하셔서 mosh youtube로 Docker Tutorial 강좌를 들어봤습니다. 저는 토이 프로젝트에서 배포할 때 AWS EC2(Virtual Machine) 인스턴스를 썼는데, Docker의 장점으로는 가볍고 빠르단 장점이 있다고 합니다. 우선 host OS를 그대로 쓸 수 있기 때문에 OS를 다시 받을 필요가 없기 때문에 하드웨어 리소스(CPU, memory 할당... 등)도 VM보다 적게 필요됩니다. (강의내용은 영문으로 작성했습니다.) Intro - Docker is building, runnin..
2021.04.25 -
(6) 1부 화폐예제 - 11,12장 드디어, 더하기
Github 코드보기 11장 모든 악의 근원 하위 클래스 기능을 모두 상위 클래스로 이관해줍니다. 과정에서 코드 의미를 변경하지 않고 하위 클래스에 대한 참조를 상위 클래스에 대한 참조로 변경할 수 있습니다. Money.franc() 변경 12장 드디어, 더하기 서로 다른 통화를 더하는 기능 테스트를 위해 Money 객체와 외부 프로토콜은 같으면서 내부 구조는 두 Money의 합을 나타내는 새로운 객체(imposter)를 만들고자 합니다. Expression은 연산의 결과, Bank는 환율을 적용해 단일통화로 축약하는 객체입니다. 인터페이스가 더 가볍기 때문에 Expression은 인터페이스로 생성해줬습니다. 1 2 3 4 5 6 7 8 @Test public void testSimpleAddition(..
2021.04.09 -
(5) 1부 화폐예제 - 9, 10장 흥미로운 시간
Github 코드보기 9장 우리가 사는 시간 TDD를 하는 동안 일종의 조율을 계속 해줘야 합니다. 보폭이 좁다면 넓히고 너무 크다면 줄이세요. - currency 생성자를 Dollar, Franc 클래스에 동일하게 구현하고 상위 클래스에도 구현해줬습니다. 하던 일을 중단하고 다른 일을 하는 상태에서 그 일을 또 중단하지는 않습니다. 그리고 중단할 때는 짧은 중단이 있을 때만 이루어집니다. 10장 흥미로운 시간 - 디버깅을 위해 toString() 메서드를 만들어 사용할 수 있습니다. - times() 메서드를 상위 클래스에서 구현했습니다. - equals() 메서드를 class가 아닌 currency() 비교로 변경해줬습니다. 1 2 3 4 5 6 7 8 9 public boolean equals(Ob..
2021.04.06 -
(4) 1부 화폐예제 - 7,8장 객체 만들기
Github 코드보기 7장 사과와 오렌지(같지 않은 둘) 동치성 테스트는 클래스 객체 비교를 통해 같지 않은 지까지 확인해야 합니다. - getclass() 를 사용했습니다. 1 2 3 4 5 public boolean equals(Object object) { Money money = (Money) object; return amount == money.amount && getClass().equals(money.getClass()); } Colored by Color Scripter cs equals() 동치성 비교가 객체 인스턴스 파라미터에 다른 값을 넣어도 같다고 떴습니다. - Dollar, Franc 클래스 필드를 없애고 Money것을 사용하게 했습니다. - Dollar, Franc 클래스 생성..
2021.03.30