데브콘 활동 후기

[Review] 2024-07-13 K-DEVCON DEAJEON 스터디 후기

dev-jonghoonpark 2024. 7. 29. 09:16
📢 notice.

K-DEVCON Daejeon 브랜치는 대전, 세종을 중심으로 운영 중인 개발자 커뮤니티이며 온라인으로 IT 지식과 개발에 관련된 토론을 나누고,
오프라인 정기 스터디 모임(격주 토요일, 유료)이 진행되고 있습니다. IT업계에 종사하고 있거나 IT를 공부하고 있다면 누구나 함께할 수 있습니다. 자세한 내용은 아래 링크를 참고해 주세요.


K-DEVCON Daejeon
K-DEVCON Daejeon 정기 스터디 모임 신청 문의

 

안녕하세요 K-DEVCON(k-devcon.com) 입니다.

 

지난 월 13일(토) K-DEVCON 대전 챕터에서는 20번째 오프라인 스터디가 진행되었습니다.

 

이번 스터디에서 진행된 내용은 다음과 같았습니다.

 

종훈님
자바에서 람다와 스트림을 다루는 방법에 대해서 알아봅니다
참고 하면 좋을 자료 : 자바의 정석 (ch. 14)

준선님
자바에서 열거형(Enum) 과 애너테이션(annotation)을 다루는 방법에 대해서 알아봅니다
참고 하면 좋을 자료 : 자바의 정석 (ch. 12)

영록님
LLM API 사용해서 어플리케이션 만들어보기

 

 


 

Java - 람다와 스트림

개인적으로 정말 관심있는 기능이였습니다.

제가 학교 다닐때에는 나온지 얼마 되지 않아서 제대로 가르쳐 주지 않았던 기능이였거든요.

하지만 점점 많은 사람들이 사용하고 있는 기능이라, 저도 최근에는 가능하면 람다와 스트림을 활용해서 코드를 작성해보려고 노력하고 있습니다.

 

람다

람다 라는 말은 람다 대수 (Lambda Calculus) 에서 유래되었습니다. 복잡하지만 요약해보자면 수식을 어떻게 추상화 할 수 있을것인가 에 대한 내용이 되겠습니다.

자바는 람다의 도입으로 객체지향 언어인 동시에 함수형 언어가 되었습니다.

 

명령형 프로그래밍 언어와 함수형 프로그래밍 언어는 다음과 같이 설명할 수 있습니다.

 

명령형 프로그래밍 언어
프로그래밍의 상태와 상태를 변경시키는 구문의 관점에서 연산을 설명
프로그램의 상태의 값에 따라 부작용이 생길 수 있다. (side effect)
같은 코드라도 실행되는 프로그램의 상태에 따라 다른 결과값을 낼 수 있다.

 

함수형 프로그래밍 언어

결과값은 그 함수에 입력된 인수에만 의존한다.
인수 x에 같은 값을 넣고 함수 f를 호출하면 항상 f(x)라는 결과가 나온다.
부작용을 제거하여 프로그램의 동작을 이해하고 예측하기가 훨씬 쉽게 한다.

 

자바에서는 람다를 이용하여 함수를 간단한 식(Expression)으로 표현할 수 있게 되었습니다. 

스트림

스트림(stream)은 자바에 있는 다양한 데이터 소르를 표준화된 방법으로 다룰 수 있도록 설계되었습니다.

 

기준의 For Loop를 통한 처리와 비교를 해보자면
For Loop 가 성능은 좋은 반면에 Stream 은 이해하기 좋고 재사용성이 좋은 코드를 작성할 수 있는 것이 특징입니다.

스트림은 데이터 소스를 변경하지 않으며, 지연된 연산을 지원합니다. 그리고 작업을 병렬로도 처리할 수 있도록 설계되어 있습니다.

 

 

Java - Enum과 Annotation

 

Enum은 서로 관련된 상수를 편리하게 선언하고 관리할 수 있도록 돕는 클래스 입니다. 이를 통해서 열거 패턴을 사용하면서도 타입 안정성을 가질 수 있습니다.

Annotation은 주석처럼 프로그래밍 언어에 영향을 미치지 않으면서도 다른 프로그램에게 유용한 정보를 제공하기 위해서 사용됩니다.

 

이번 시간을 통해서 Enum, Annotation 의 구조와 사용방법 그리고 예시에 대해서 알아보았습니다.
준선님께서는 항상 이론적인 내용을 탄탄하게 정리해 와 주셔서 들으면서 디테일한 부분까지 알아볼 수 있어서 좋은것 같습니다.

LLM API 사용해서 어플리케이션 만들어보기

 

최근에 스터디 회원분 중 한 분이신 영록님께서 회사에서 발표를 하셨다고 하셨는데, 그 내용이 재밌어 보여서 스터디 내에서도 공유해주실 수 있을지 요청을 드렸고 흔쾌히 승낙을 해주셔서 이번 스터디에서 발표를 해주셨습니다.

 

영록님은 최근에 AWS Summit 2024 에 참여하셨는데요, 최근 많은 빅테크 회사들이 집중하고 있는 분야는 아무래도 생성형 AI 라고 할 수 있고, 그에따라 이번 Summit 2024 도 생성형 AI에 대한 이야기가 많이 나왔었다고 합니다.

 

영록님은 AI Model의 API 을 이용하여 어플리케이션을 만드는 방법에 대해서 소개를 해주셨고, 그중 RAG(검색증강생성) 기술 에 대해서 소개를 해주셨습니다. RAG라는 기술은 LLM 분야에서 핫한 기술인데요 실제적 코드와 함께 설명을 진행해주셨습니다.

회원분들이 RAG 기술에 대해 이해해볼 수 있는 시간이였습니다.

 

 

AWS Summit 2024 발표중 일부

 

K-DEVCON 대전 스터디에 참여하고 싶으신 분들은 언제든지 환영합니다.

 

저희는 단순히 진도를 나가는데 목적을 두는 것이 아니라 해당 주제에 대해 서로 공부해 온 것을 기반으로 이야기 하면서 스터디를 진행하고 있습니다. 모르는 부분은 질문하고, 자기가 알던 내용과 다르면 얼마든지 의견을 제시해도 좋습니다. 같이 더 좋은 것을 얻어가기 위해 함께 노력하고 있습니다.

 

서로서로 현업에서 있었던 일이나, 최근 있었던 이슈들에 대해서도 이야기 하고 있습니다.

 

오늘도 다들 파이팅입니다!