Java (31) 썸네일형 리스트형 2장. 객체지향 프로그래밍 아래는 조영호 저자의『오브젝트』 1장 “객체, 설계” 내용을 정리한 글입니다.진정한 객체지향 패러다임으로의 전환은 클래스가 아니라 객체에 초점을 맞출 때에만 얻을 수 있다.어떤 클래스를 만들지 고민하기 전에, 어떤 객체들이 필요한지 먼저 고민하라.객체를 독립된 존재가 아니라, 기능을 구현하기 위해 협력하는 공동체의 일원으로 보아야 한다.1. 도메인이란?문제를 해결하기 위해 사용자가 프로그램을 사용하는 분야 2. 예제 UMLpublic class Screening { private Movie movie; private int sequence; private LocalDateTime whenScreened; public Screening(Movie movie, int sequence, .. 1장. 객체, 설계 아래는 조영호 저자의『오브젝트』 1장 “객체, 설계” 내용을 정리한 글입니다. 1. 티켓 판매 어플리케이션 구현하기※ 요구사항“무료 입장 이벤트가 열린 극장”- 이벤트 당첨자에게는 초대장(Invitation)이 주어지고,- 초대장이 있으면 무료로 바로 입장,- 초대장이 없으면 돈을 내고 티켓(Ticket)을 구매한 뒤 입장한다.1-1. Invitation 클래스/** * 이벤트 당첨자에게 발송되는 초대장 */public class Invitation { private LocalDateTime when;} 1-2. Ticket 클래스/** * 공연을 관람하기 원하는 모든 사람들이 가지고 있는 티켓 */public class Ticket { private Long fee; public Lon.. Practical Testing: 실용적인 테스트 가이드 💡 본 게시글은 박우빈님의 'Practical Testing: 실용적인 테스트 가이드' 강의를 공부하고, 이에 대해 정리한 내용입니다.들어가며 소프트웨어 개발자로서 경력을 쌓아가는 과정에서, 코드의 품질과 유지보수성에 대해 많은 고민을 하게 되었습니다. 개발 초기에는 주어진 시간 안에 기능을 완성하는 것이 중요했기 때문에 테스트의 중요성을 간과하고, 기능 구현에만 집중하였습니다. 하지만 프로젝트가 복잡해지고 규모가 커지면서, 기능 구현 후에 발생하는 예기치 않은 버그와 문제들이 점점 더 빈번해졌습니다. 이러한 경험을 통해 테스트 코드의 필요성을 절감하게 되었습니다. 그래서 저는 좀 더 체계적인 테스트 코드 작성과 TDD(Test Driven Development)에 대해 구체적으로 학습하고 싶었습니다... 1. 고품질의 코드란 무엇인가 보호되어 있는 글입니다. 02. 디버깅 기법으로 앱 로직 이해하기 💡 본 게시글은 라우렌치우 스필커 저자의 '자바 잘 읽는 법' 교재를 공부하고, 이에 대해 정리한 내용입니다.들어가며 매일 코드를 작성하면서도 능숙하게 문제를 해결하는 선배 개발자를 볼 때마다 부러움을 느낍니다. 코드 리뷰를 받을 때마다 항상 많은 것을 배우지만, 동시에 더 빨리 성장하고 싶은 마음이 간절합니다. 그러던 중 신입 개발자들이 디버깅을 하지 않고 대부분 출력문을 이용해 검증한다는 말을 듣고 뜨끔했습니다. 저 역시 대부분 검증을 출력으로 진행했기 때문입니다. 그래서 디버깅이 왜 필요한지, 그리고 그 사용 방법을 정리해보고자 합니다.※ 디버거란?원하는 코드 라인에서 실행을 잠깐 멈추고 각 커맨드를 수동 실행하며 데이터가 어떻게 바뀌는지 확인할 수 있는 도구1) 코드 분석만으로는 불충분한 경우 .. 01. 애플리케이션의 문제점 찾기 💡 본 게시글은 라우렌치우 스필커 저자의 '자바 잘 읽는 법' 교재를 공부하고, 이에 대해 정리한 내용입니다.들어가며 일반적으로 소프트웨어 개발자는 새로운 기능을 구현하거나 에러를 조치하기 위해 코딩하는 것 보다 소프트웨어의 작동 방식을 이해하는 데 더 많은 시간을 씁니다. 개발자는 생산성을 높이기 위해 효율적인 조사 기법을 연마할 필요가 있고, 이를 통해 코드를 효율적으로 이해해야 합니다. 1) 애플리케이션을 더 쉽게 이해하는 방법 소프트웨어의 에러를 해결하기 위해서는 코드를 자세히 살펴봐야 합니다. 이 교재에서 필자는 코드 조사를 소프트웨어 기능의 특정한 동작을 분석하는 프로세스라고 정의합니다. 코드 조사는 소프트웨어의 문제를 찾아내는 것뿐만 아니라, 구조가 복잡한 요즘 애플리케이션의 작동 방식을.. 19. GC 튜닝을 항상 할 필요는 없다. 💡 본 게시글은 이상민 저자의 '자바 성능 튜닝 이야기' 교재를 공부하고, 이에 대해 정리한 내용입니다. 들어가며 자바의 GC 튜닝은 반드시 필요한 상황에서만 진행하는 것이 바람직합니다. 그렇다고 WAS를 실행할 때 아무런 옵션 없이 실행해도 되는 것은 아닙니다. 기본적인 메모리 크기를 지정하는 등의 설정은 필요합니다. 그러나 사용량이 많지 않은 시스템에서는 이 정도의 설정으로 충분하며, 추가적인 튜닝은 굳이 필요하지 않을 수 있습니다. 1) GC 튜닝을 꼭 해야 할까? 결론부터 말하자면, Java 기반의 모든 서비스에서 GC 튜닝을 해야 하는 것은 아닙니다. 다만, 아래와 같은 설정들이 기본적으로 이루어져 있어야 합니다: 메모리 크기를 -Xms 옵션과 -Xmx 옵션으로 지정하였다. -server 옵션이.. 18. GC가 어떻게 수행되는지 확인하기 💡 본 게시글은 이상민 저자의 '자바 성능 튜닝 이야기' 교재를 공부하고, 이에 대해 정리한 내용입니다. 들어가며 GC의 수행 과정을 분석하려면, 관련 도구를 사용해야 합니다. 여러가지 방법이 있지만, 'jstat'이라는 명령어를 사용하여 실시간으로 확인하거나 'verbosegc' 옵션을 사용하여 로그를 생성할 수 있습니다. 'verbosegc' 옵션을 사용하려면, 이를 자바 실행 옵션에 추가한 후, JVM을 재시작해야 합니다. 1) jps를 이용한 자바 인스턴스 확인 'jps'는 현재 시스템에서 실행 중인 JVM의 목록을 보여주는 도구입니다. 이는 JDK의 bin 디렉터리에 위치해 있습니다. 'jps'의 사용법은 매우 간단하며, 커맨드 프롬프트나 유닉스의 터미널에서 다음과 같은 옵션으로 실행하면 됩니다.. 이전 1 2 3 4 다음