본문 바로가기

Java30

[모던 자바 인 액션] 동작 파라미터화 본 포스팅은 모던 자바 인 액션을 읽고 내용을 제 나름대로 정리한 것입니다. 자세한 내용은 반드시 해당 책에서 확인하시길 바랍니다. 객체 지향 패러다임이 각광을 받는 가장 큰 이유는 변화에 유연한 대응이 가능하다는 것이다. 요구 사항 변화에 유연하게 대응하도록 설계하는 것은 소프트웨어 유지 보수에 있어 매우 중요하다. 동작 파라미터화를 이용하면 자주 바뀌는 요구사항에 대해 효과적으로 대응할 수 있다. 이번 포스팅에서는 동작 파라미터화가 어떻게 변화에 유연하게 대응할 수 있는지를 살펴보고 Java 8의 람다 표현식이 동작 파라미터화 코드를 간단하게 표현할 수 있음을 확인한다. 모던 자바 인 액션 2장의 내용을 참고하였다. 동작 파라미터화는 메서드의 동작을 파라미터화해서 코드 블록의 실행을 나중으로 미루는 .. 2021. 7. 8.
[Java] 더블 디스패치(Double Dispatch) 6주차 스터디에서 메서드 디스패치에 대해 공부했다. 메서드 디스패치에는 동적 메서드 디스패치와 정적 메서드 디스패치가 있다. 그리고 메서드 디스패치를 활용한 더블 디스패치라는 기법이 있다. 더블 디스패치는 메서드 디스패치를 두 번 사용하여 유연성을 높이는 것인데, Visitor pattern에서 사용되는 기법이다. 여러 자료를 찾아보다가 토비님이 더블 디스패치에 대해 설명해주신 영상을 봤는데 한번에 와닿지는 않아서 포스팅으로 정리하면서 확실히 익혀보고자한다. 토비님의 영상은 여기! https://www.youtube.com/watch?v=s-tXAHub6vg&t=2732s 요구 사항 및 구현 자 우선 SNS 플랫폼에 맞게 포스팅을 뿌리는 서비스를 개발한다고 생각해보자. SNS라는 도메인과 Post라는 서.. 2021. 7. 8.
[Java Study 15주차] 람다식 목표 자바의 람다식에 대해 학습하세요. 학습할 것 (필수) 람다식 사용법 함수형 인터페이스 Variable Capture 메소드, 생성자 레퍼런스 람다식 사용법 람다식이란? 람다식(Lambda Expression)은 간단히 말하면 메서드를 하나의 식(expression)으로 표현한 것이다. 식에 대한 개념은 아래 포스팅에 정리해뒀다. wisdom-and-record.tistory.com/65 [Java] Statement와 Expression 람다식을 공부하다가 식(expression)과 문(statement)에 대한 이해가 부족한 것 같아서 포스팅으로 정리합니다. 아래의 글을 많이 참조했습니다. 오류 정정 및 피드백 댓글로 주시면 감사하겠습니다. w wisdom-and-record.tistory.com.. 2021. 2. 28.
[Java] Statement와 Expression 람다식을 공부하다가 식(expression)과 문(statement)에 대한 이해가 부족한 것 같아서 포스팅으로 정리합니다. 아래의 글을 많이 참조했습니다. 오류 정정 및 피드백 댓글로 주시면 감사하겠습니다. www.oreilly.com/library/view/learning-java/1565927184/ch04s04.html Learning Java Statements and Expressions Although the method declaration syntax of Java is quite different from that of C++, Java statement and expression syntax is like that of C. Again, the intention … - Selectio.. 2021. 2. 28.
[Java Study 14주차] 제네릭스(Generics) 본 포스팅은 백기선님이 진행하시는 자바 스터디 를 진행하며 혼자 공부하고 이해한 내용을 바탕으로 정리한 글입니다. 오류나 지적 사항이 있다면 댓글로 알려주시면 감사하겠습니다. 해당 메서드의 인자로 들어오는 리스트의 요소는 어떤 특징을 가진 타입이어야 할까요? public static 2021. 2. 23.
[Java] JDBC 기본 코드의 이해 JDBC를 이용하는 작업의 일반적인 순서는 다음과 같다. DB 연결을 위한 Connection을 가져온다. SQL을 담은 Statement(또는 PreparedStatement)를 만든다. 만들어진 Statement를 실행한다. 조회의 경우 SQL 쿼리의 실행 결과를 ResultSet으로 받아서 정보를 저장할 오브젝트에 옮겨준다. 작업 중에 생성된 Connection, Statement, ResultSet의 리소스를 닫아준다. JDBC API가 만들어내는 예외를 처리하거나 메서드 밖으로 던진다. JDK 1.6부터는 getConnection을 수행할 때 드라이버를 자동으로 로드하기 때문에 Class.forName을 통한 클래스 로드 작업을 하지 않아도 된다. 쿼리를 실행하면 서버 쪽에서는 결과 집합이 생성.. 2021. 2. 21.