본문 바로가기

Java22

Java - Functional Interface의 예시 (모던 자바 인 액션 참고) 지난 시간에는 Functional Interface에 대해서 알아보았다. Functional Interface는 Java에서 동작 파라미터화의 대표적인 예시로 메서드를 파라미터로 전달하는 것이다. (자바에서는 객체에 메서드를 담아서 전달) 요구사항에 유연하게 대처할 수 있게 코드 간 의존성을 줄여 엔지니어링 공수를 줄일 수도 있다. 자세한 내용은 이전 포스팅을 참고하면 된다. https://today-devstart.tistory.com/28 Java - Functional Interface란? (모던 자바 인 액션 참고) Functional Interface Java로 코딩을 하다보면 Functional Interface를 자주 접할 수 있다. 안드로이드 앱개발을 해봤다면 버튼의 클릭 이벤트를 구현하는.. 2022. 8. 20.
Java - Functional Interface란? (모던 자바 인 액션 참고) Functional Interface Java로 코딩을 하다보면 Functional Interface를 자주 접할 수 있다. 안드로이드 앱개발을 해봤다면 버튼의 클릭 이벤트를 구현하는게 바로 Functional Interaface를 사용한 부분이다. 사실 본인이 개념적으로 Functional Interface를 사용하는지 모르고 사용하는 경우도 많다.(내가 그랬다) Predicate 인터페이스가 가장 대표적인 Functional Interface인데, 하나의 메소드만 가지고 있다는 것이 특징이다. 그러면 예시를 통해 Functional Interacer가 무엇인지 알아보도록 하자. 상황 개발자인 우리가 어부에게 수확량을 관리할 수 있는 프로그램을 만들어 준다고 가정하자. 데이터베이스에 물고기의 크기, 길.. 2022. 8. 19.
Spring - @RestController와 @Controller의 차이 오늘은 Spring에서 @RestController와 @Controller의 차이에 대해서 알아보고자 한다. @RestController는 많이 사용하지만 @Controller를 거의 사용하지 않게 된 이유는 백엔드와 프론트엔드를 나눠서 개발하게 되었기 때문이다. 전통적인 Spring MVC에서는 @Controller를 사용해서 화면을 전달했었다. 하지만 Restful Api 서버에서는 화면을 전달할 필요가 없기 때문에 @RestController만 사용하게 되었다. 두 어노테이션을 대체 어떤 차이가 있는 것일까? @Controller - View Spring MVC에서는 @Controller는 View를 반환하는 역할을 주로 한다. Spring MVC는 서버 사이드 랜더링이기 때문에 서버가 완성된 ht.. 2022. 8. 11.
Java - Stream에 대해서 Stream이란? Intellij 같은 IDE에서 Java를 사용하다보면 자동완성으로 stream을 자주 볼 수 있다. Stream은 컬렉션들을 iterating 해주는 기능인데 for문을 사용하지 않고 직관적으로 흐름에 따라서 코드를 작성할 수 있다. Stream에서 제공해주는 메소드들이 많이 있기 때문에 잘 활용한다면 복잡한 로직도 읽기 쉽게 코딩할 수 있다. 특징 1. Stream은 데이터를 변경하지 않는다. 데이터를 단순히 읽어서 그 데이터를 가지고 새로운 배열을 만들어낸다. 다시 말하면 원본 데이터는 수정되지 않는다. 2. Stream은 한 번 열렸다가 닫히면 사라진다. 1번의 특징처럼 원본 데이터는 변경되지 않고 한 번 iterate 되고 따로 새로운 컬렉션을 리턴하지 않으면 그대로 사라져 재.. 2022. 8. 9.