Page tree
Skip to end of metadata
Go to start of metadata


대규모트래픽 분산처리를 위한 자바 서버개발 시즌3 - 윤석진

1. introduce spring cloud
2. Message driven spring cloud stream with rabbitmq
3. API Gateway with spring cloud gateway
4. discovery pattern with eureka
5. API Client with ribbon / Feign Client
6. monitoring with micrometer
7. spring cloud config 



이펙티브 자바 3/E 효과적으로 읽기 - 강대권, 박재성(주니어), 한용규, 조이수, 이수훈

자바 6까지 다루던 이펙티브 자바 2판이 자바 7, 8, 9를 다루기 위해 3판으로 다시 돌아왔습니다.
그동안 객체 지향에 치중하던 자바에 새로 도입된 함수형 프로그래밍 요소도 자세히 알아봅니다.

  • 이펙티브 자바 Effective Java 3/E(http://www.yes24.com/24/Goods/65551284)를 읽으며 스터디를 진행합니다.
  • 자바 8, 9에서 새로 다룬 내용이 과연 무엇인지 비교 정리합니다.
  • 기존 2판에서 다루던 내용보다 3판에서 새로 다루는 내용에 많은 시간을 편성합니다.
  • 2명 씩 조를 나누고 돌아가면서 각 주차의 주제에 대해 공부 후 발표하는 식으로 진행합니다.
  • Java Enum 활용기(http://woowabros.github.io/tools/2017/07/10/java-enum-uses.html)와 같은 사례들을 찾아보고 정리하면 더 좋습니다.
  • 아래의 유튜브를 참고하며 진행합니다.


1주차 : 1장 들어가기, 2장 객체 생성과 파괴 읽기
2주차 : 3장 모든 객체의 공통 메서드 읽기, 4장 클래스와 인터페이스 읽기
3주차 : 5장 제네릭 읽기, 6장 열거 타입과 애너테이션 읽기
4주차 : 7장 람다와 스트림 읽기
5주차 : 중간 세미나
6주차 : 8장 메서드, 9장 일반적인 프로그래밍 원칙 읽기
7주차 : 10장 예외, 11장 동시성 읽기
8주차 : 12장 직렬화 읽기
9주차 : 회고


개발 실무 디자인 패턴 - 제한재, 홍광필

목표

OOP 개발 패턴을 실습을 통해 확실히 이해하여 실무에 즉각 활용할 수 있도록 한다.
 - 개발자간의 의사소통 원할
 - 재사용 및 유지보수성 증가

커리큘럼

1~3 GoF 디자인패턴 이론

  각 패턴의 목적과 활용방법에 대한 지식을 습득하고 실무 서비스로직에 적용 중인 패턴을 공유한다.

  1주차 - 생성 패턴

패턴명in JDKin Practice
Abstract Factoryjavax.xml.xpath.XPathFactory
Builderjava.lang.StringBuilder
Factory Method java.util.Calendar
Prototypejava.lang.Object#clone()
Singletonjava.lang.Runtime#getRuntime()


  2주차 - 구조 패턴 

패턴명in JDKin Practice
Adapterjava.util.Arrays#asList()
Bridgejava.util.Collections#newSetFromMap()
Compositejava.awt.Component
Decoratorjava.util.Collections#synchronizedXXX()
Facadejavax.faces.context.ExternalContext
Flyweightjava.lang.Integer#valueOf(int)
Proxyjava.lang.reflect.Proxy


  3주차 - 행위 패턴

패턴명in JDKin Practice
Chain of Responsibilityjava.util.logging.Logger#log()
Commandjava.lang.Runnable
Interpreterjava.util.Pattern
Iteratorjava.util.Iterator
Mediatorjava.util.concurrent.Executor#execute()
Mementojava.util.Date
Observerjava.util.EventListener
Statejavax.faces.lifecycle.Lifecycle#execute()
Strategyjava.util.Comparator#compare()

쿠폰

- 100원 할인

- 10% 할인

Template Method java.util.AbstractList
Visitorjava.nio.file.FileVisitor


4~6 기본 & 자주쓰는 디자인 패턴 특화 실습

  https://github.com/iluwatar/java-design-patterns

  난이도 Beginner 인 패턴들을 위주로 각 패턴에 특화된 요구사항을 정의하고 패턴을 적용하여 구현해보는 실습을 진행합니다.

  • Factory Method
  • Prototype
  • Singleton
  • Adapter
  • Decorator
  • Facade
  • Proxy
  • Template Method
  • Iterator
  • Observer
  • Strategy
  • State
  • Chain of Responsibility


7~9 디자인 패턴 실습

  이론으로 학습한 패턴을 실제로 어플리케이션에 구현하는 작업을 합니다. 구현할 대상은 간단한 주가 데이터 크롤러 및 거래 알고리즘 및 시뮬레이터 입니다. 스터디 리더의 언어와 같은 언어로 같이 프로젝트에 참여할 수도 있고, 새로 객체 지향을 배워본 언어에 개인적으로 적용하고 코드리뷰를 함께 할 수 있습니다. (파이썬, 자바 예정)

  7주차 - 요구사항 정의 및 데이터 크롤링

  • 만들고자 하는 어플리케이션의 요구사항과 변경사항을 나열합니다. 
  • finance.naver.com 에서 KOSPI 데이터를 크롤링 하는 간단한 프로그램입니다.
  • 크롤러에 대한 failover 기능을 구현하기 위해 naver 에서 실패시 finance.daum.net 에서 가져올 수 있어야 합니다.
  • 기타 스터디에서 새로운 요구사항이 구현될 수 있습니다.

  8주차 - 알고리즘에 기반하여 ETF 트레이딩을 구현하고 계좌 수익률 구현

  • 크롤링한 간단한 데이터를 기반으로 트레이딩 알고리즘을 작성하고 그에 따른 수익률을 추적할 수 있어야 합니다. (트레이딩 알고리즘은 요구사항으로 간단하게 정의되어있습니다)
  • 알고리즘은 다양하게 구현될 수 있으며 알고리즘은 언제든지 교체될 수 있어야 합니다.
  • 프로그램은 실시간으로 동작하는 모듈이라고 가정하고 작성합니다.

  9주차 - 알고리즘 시뮬레이터 구현

  • 실시간으로 동작하는 모듈로 가정하고 작성된 프로그램에서 과거의 데이터를 기반으로 시뮬레이터를 구현합니다.



Elastic Search & Kafka - 천정대, 이시훈, 강은지

elastic search

1주차 : 일래스틱 스택 소개, 시작하기
2주차 : 유사도 검색
3주차 : 일래스틱서치 분석
5주차 : 데이터 분석
6주차 : 로그스태시를 활용한 데이터 파이프라인 구축
7주차 : 키바나를 활용한 데이터 시각화
8주차 : 일래스틱 엑스팩
9주차 : 일래스틱 스택 운영 환경에 적용하기

Elastic과 함께

참고도서, 구글링을 통해서 얻은 정보를 잘 정리해서 발표!! 검색하면 90%

1주차 : ElasticSearch 소개 및 설치
2주차 : Elastic 제품군 알아보기 & 사용하기
3주차 : ElasticSearch 개념 소개 [ Index, Mapping, search... ]
4주차 : ElastisSearch Query 심화1
5주차 : ElastisSearch Query 심화2
6주차 : Log 데이터를 활용한 기본 아키텍처 구현 및 실습
7주차 : Log 데이터를 활용한 심화 아키텍처 구현 및 실습
8주차 : 팀 사용기 + 활용방법 / 머신러닝을 활용한 이상징후 탐지

여유시간이 있을경우 진행하면 좋은 내용들
- 클러스터, 보안, 형태소분석

공식 문서 : https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html
참고 도서 : http://book.naver.com/bookdb/book_detail.nhn?bid=8769630
번역글 : https://iju707.gitbooks.io/elasticsearch/content/


spring과 함께 kafka 탐험하기

# 학습 목표
- Kafka 의 기본 구조 이해
- Spring 에서 Kafka 잘 사용하는 방법 익히기

# 참고 자료
https://kafka.apache.org/
https://spring.io/projects/spring-kafka

# 주차별 진행 내용
1. Kafka 개요 파악 - https://kafka.apache.org/intro
2. Kafka 설치 및 구성 - https://kafka.apache.org/quickstart
3. Kafka producer
4. Kafka consumer
5. Kafka 내부 매커니즘
6. Spring-kafka 사용해보기 - https://spring.io/projects/spring-kafka
7. Kafka use case 탐구 - https://kafka.apache.org/uses
8. Kafka 관리
9. Kafka 모니터링


클라우드 네이티브 자바 - 김윤희

클라우드가 기본인 시대에 필요한 스프링 기술들을 습득해보자!

클라우드 네이티브 자바 책을 기본으로 진도를 나가고 스터디원은 주차별 맡은 분량을 발표한다.

1 클라우드 네이티브 애플리케이션 & 스프링부트
2 12요소 애플리케이션 설정 & 테스트 & 애플리케이션 마이그레이션
3 REST API
4 라우팅 & 엣지서비스
5 데이터관리 & 메시징
6 배치 처리와 태스크 & 데이터 통합
7 관측가능한시스템
8 서비스 브로커 & 지속적 전달


도메인 주도 설계 구현 책 읽기 스터디 - 황영주

개요
- DDD에 대해 이해하고 실무에서 구현 할 수 있는 방법에 대해 익혀보자.

주차별 진행 내용
- 총 15장인 책을 주차별로 2장씩 읽고, 의견 공유

진행방법
- 다같이 미리 읽어 오고, 주차별 진행자를 정해 해당 주차의 주제에 대해 공유하고 토론한다

  • No labels