본문 바로가기

부트캠프

[멋쟁이사자] 백엔드 - 13일차 회고록

728x90

13일차

학습 목표

  1. 자바의 유틸 패키지(java.util)를 활용하여 다양한 컬렉션 프레임워크와 유틸리티 기능을 효과적으로 사용할 수 있다.
  2. 람다식을 이해하고 이를 활용하여 코드의 간결성과 가독성을 높이며 함수형 프로그래밍을 구현할 수 있다.
  3. 스트림 API를 활용하여 데이터를 효율적으로 변환, 필터링, 집계 및 병렬 처리를 할 수 있으며, 성능을 최적화할 수 있다.
  4. 스트림의 중간 연산(Intermediate Operations)과 최종 연산(Terminal Operations)의 개념을 이해하고, 다양한 연산(map, filter, sorted, reduce, collect 등)을 활용하여 데이터를 효과적으로 처리할 수 있다.

자바의 유틸 패키지

유틸 패키지에는 많은 기능들이 있다.

인터페이스와 유틸리티 기능들은 아래 블로그에 정리해뒀다.

https://lold2424.tistory.com/184

 

[JAVA] java.util 패키지

java.util이란?java.util package에는 이름 그대로 유틸리티와 관련된 인터페이스와 클래스들이 있고, 컬렉션 프레임워크 역시 포함한다.컬렉션 프레임워크는 이미 다뤘었기 때문에, 이번에는 유틸리

lold2424.tistory.com

람다식

사실 람다식을 별로 좋아하는편은 아니다.

예전에는 람다식을 사용하면 코드 길이도 짧아지고 가독성도 좋아지는것 같아 자주 사용했는데 이게 프로젝트를 진행하다 보면 코드 분량이 방대해진다.

그러면 결국 옛날에 짜둔 람다식 코드를 풀어 헤쳐야 할때가 많은데 너무 길거나 중첩된 람다식을 보면 오히려 가독성이 떨어진다고 느꼈다.

그래서 람다식을 사용하기 보다는 메서드를 참조하거나 분리하는 형태로 복잡한 연산들을 처리했었다.

물론 간단한 연산은 람다식을 사용하는것에 긍정적으로 생각하고 있기는하다.

하지만, 람다식을 자주 사용하지 않아 오랜만에 람다식을 사용하니 기억도 잘 안나고해서 당분간은 람다식을 위주로 코드를 짜야겠다는 필요성을 느낀것 같다.

내가 람다식을 사용하지는 않더라도 협업하는 타 개발자가 사용하면 내가 바로 보고 이해할 수 있는 수준은 되어야 한다고 생각하기 때문이다.

우선 람다식에 대한 정리는 아래 블로그에 정리는 해뒀다만, 아직 코드를 더 풀어봐야 할 것 같다.

https://lold2424.tistory.com/185

 

[JAVA] 람다식(Lambda)

람다함수란?람다식(lambda expression)은 일부 프로그래밍 언어에서 사용되는 개념으로, 익명 함수(匿名函數, Anonymous functions)를 지칭하는 용어이다. 별도의 명칭을 지정해 정의해 주는 일반 함수와

lold2424.tistory.com

Stream

스트림의 경우 람다식과 연계되는 경우가 많다.

스트림을 사용하면 코드를 필요한 기능만 간결하게 짤 수 있었던 경우가 많았다.

하지만, 너무 과도한 스트림과 람다식을 사용하면 시간이 지나고 다시 코드를 보면 내가 뭘 생각하고 짠거지 하고 코드를 들여다보는데 시간을 좀 쓰게 됐었다.

적절한 Stream 사용은 코드의 가독성을 향상시키고, 편리하기 때문에 적극적으로 사용하는 중이다.

아래는 학습 내용 + 본인이 사용하면서 정리한 내용들을 정리해뒀다.

https://lold2424.tistory.com/186

 

[JAVA] Stream API

Stream이란?Stream(스트림)은 Java 8에서 도입된 연속적인 데이터 흐름을 처리하는 API다.기존의 컬렉션을 반복문 없이 선언적(Declarative) 방식으로 변환, 필터링, 집계할 수 있도록 도와준다.스트림은

lold2424.tistory.com

728x90