본문 바로가기

Java

(31)
06. static 재대로 사용하기 보호되어 있는 글입니다.
05. 지금까지 사용하던 for 루프를 더 빠르게 사용할 수 있다고? 💡 본 게시글은 이상민 저자의 '자바 성능 튜닝 이야기' 교재를 공부하고, 이에 대해 정리한 내용입니다. 들어가며 최근 코딩테스트를 준비하면서, 코드가 빠르게 동작하게 하는 것이 얼마나 중요한지를 알게 되었습니다. 코딩테스트에선 문제를 맞추는 것뿐만 아니라, 코드가 빠르고 효율적으로 동작해야 하기 때문입니다. 이때, '조건문'이 코드 속도에 많은 영향을 미친다는 걸 깨달았습니다. 예를 들어, 데이터를 분류하거나 선택하는 문제에서 조건문을 많이 써야 했는데 이 조건문의 성능이 좋지 않으면, 전체 코드의 속도가 느려지기 때문이였습니다. 또한, 한번에 여러 가지 일을 처리하는 문제에서도 조건문의 중요성을 느꼈습니다. 이런 문제에서는 조건문이 빠르게 동작해야 전체적인 일처리 속도가 빨라졌습니다. 이러한 경험을 ..
04. 어떤 객체에 데이터를 담아야 하는지... 💡 본 게시글은 이상민 저자의 '자바 성능 튜닝 이야기' 교재를 공부하고, 이에 대해 정리한 내용입니다. 들어가며 최근에 저는 웹사이트의 공연 정보를 크롤링하여 사용자들에게 공연 정보를 제공하고, 공연을 예매할 수 있는 애플리케이션 개발을 진행하였습니다. 이 프로젝트에서는 웹사이트에서 크롤링한 공연 정보를 사용자에게 효율적으로 전달하기 위해 Transfer Object 객체를 활용하였습니다. Transfer Object 객체는 공연의 제목, 장소, 날짜, 가격 등 다양한 정보를 하나의 객체로 묶어, 데이터의 일관성을 유지하면서도 효율적인 데이터 전송을 가능하게 했습니다. 이 Transfer Object 객체를 구현하면서, 저는 Collection과 Map 인터페이스를 상속받는 객체들이 주로 사용되는 것을..
03. 왜 자꾸 String을 쓰지 말라는 걸까? 💡 본 게시글은 이상민 저자의 '자바 성능 튜닝 이야기' 교재를 공부하고, 이에 대해 정리한 내용입니다. 들어가며 제가 코딩 테스트를 준비하던 중에, 'String을 어떻게 하면 효율적으로 사용할 수 있을까' 고민을 하게 된 적이 있습니다. 해당 문제에는 문자열을 조작하는 문제가 포함되어 있었고, 처음에는 String만으로 문제를 해결하려고 했습니다. 그러나 예상치 못하게 많은 실행 시간과 메모리를 소비하는 것이 발견되었습니다. 특히 문자열을 변경해야 할 때 성능 저하가 두드러졌습니다. 이런 경험을 통해 'String을 사용하면 왜 성능이 떨어질까?'라는 의문이 생겼습니다. 1) String 클래스의 잘못된 사용 사례 웹 기반 시스템 개발에서는 데이터베이스(DB)로부터 데이터를 가져와 화면에 표시하는 작..
02. 내가 만든 프로그램의 속도를 알고 싶다. 💡 본 게시글은 이상민 저자의 '자바 성능 튜닝 이야기' 교재를 공부하고, 이에 대해 정리한 내용입니다. 들어가며 저는 개발 작업을 진행하면서, 제가 설계한 백엔드 시스템의 성능에 대한 의문이 종종 들곤 했습니다. 사용자의 요청이 급증하는 상황에서 서버 응답 시간이 어떻게 변화하며, 특정 데이터베이스 쿼리가 시스템에 미치는 영향은 어떤지 등이 궁금했습니다. 특히 새로운 기능 추가나 기존 코드 최적화 시에 이런 의문은 더욱 커지곤 했습니다. 성능 분석은 단지 시스템 응답 속도를 측정하는 것을 넘어, 시스템 전체에서 어떤 부분이 전체 성능에 가장 크게 영향을 주는지 파악하는 것이 더 중요합니다. 그래서 이 교재에서는 시스템 성능 저하 시 가장 중요한 단계를 '병목 지점 찾기'로 강조하고 있습니다. 병목 지점..
01. 디자인 패턴은 꼭 써야한다 - (2) J2EE 디자인 패턴 💡 본 게시글은 이상민 저자의 '자바 성능 튜닝 이야기' 교재를 공부하고, 이에 대해 정리한 내용입니다. 01. 디자인 패턴은 꼭 써야한다 - (1) MVC 모델 💡 본 게시글은 이상민 저자의 '자바 성능 튜닝 이야기' 교재를 공부하고, 이에 대해 정리한 내용입니다. '자바 성능 튜닝이야기' 책을 읽게 된 이유 저는 Java를 공부하는 학생으로서, 최근 팀 프 soo99.tistory.com 2) J2EE 디자인 패턴이란? 이제, J2EE 디자인 패턴이 무엇인지 간략하게 살펴보고자 합니다. 첨부된 그림은 사용자의 요청이 처리되는 과정을 순서대로 보여줍니다. 상단부터 하단으로 이어지는 이 구조는 세 가지 주요 티어로 구성되어 있습니다. - 상단 티어 : 프레젠테이션 티어로, 사용자 인터페이스와 직접 관련된..
01. 디자인 패턴은 꼭 써야한다 - (1) MVC 모델 💡 본 게시글은 이상민 저자의 '자바 성능 튜닝 이야기' 교재를 공부하고, 이에 대해 정리한 내용입니다. '자바 성능 튜닝이야기' 책을 읽게 된 이유 저는 Java를 공부하는 학생으로서, 최근 팀 프로젝트에 백엔드로서 참여하게 되었습니다. 프로젝트 초기에 저희 팀은 주로 기능 구현에 중점을 두었습니다. 당시에는 성능 최적화보다는 기능적 완성도에 더 많은 관심을 기울였고, 성능 관련 문제는 크게 고려하지 않았습니다. 그러나 프로젝트가 진행됨에 따라, 애플리케이션의 반응 시간이 느려지고, 메모리 사용량이 증가하는 등의 여러 성능 저하 문제들이 눈에 띄기 시작했습니다. 이러한 문제들은 애플리케이션에 대해 직접적인 영향을 미치고, 애플리케이션의 전반적인 품질을 저하시켰습니다. 이는 저희 팀에게 중요한 깨달음을 ..