프로그래머스 데브코스

프로그래머스 데브코스

프로그래머스 데브코스 12일차 - 테코톡 발표 & EC2 spot Instance 구매 옵션

클라우드와 AWS에 대해서 학습을 하였다. 그 과정에서 EC2 의 구매옵션에 대해서도 다루게 되었는데 종량제 방식인 On-demand 옵션, Reserved 옵션, Spot Instance에 대해서 배우게 되었다. 하지만 여기서 기존의 알고 있던 Spot Instance를 잘 못 알고 있었기에 다루게 되었다. Spot Instance Spot Instance 방식은 사전 약정없이 사용 할 수 있는 EC2 Instance 이다. 위의 사진처럼 스팟 인스턴스는 사용자 제시 가격(입찰가격)을 정해놓고 저렴할 때 이용하는 방식이다. 일반적으로 On-Demand 방식 대비 80 ~ 90%의 저렴한 가격으로 구매를 할 수 있다. 하지만 여기서 내가 잘 못(?) 이라기 보다 얕게 알고 있던 개념으로 Spot Inst..

프로그래머스 데브코스

프로그래머스 데브코스 11일차 - 싱글톤 패턴

화요일 날 진행했던, 팩토리 패턴과 싱글톤 패턴 발표자료 중 싱글톤 패턴의 발표 자료이다! 싱글톤 패턴 : 애플리케이션에 단 하나의 유일한 객체를 만들기 위한 패턴 싱글톤을 사용해야 하는 이유 위 처럼 각 각 독립된 기능을 수행하는 클래스를 클라이언트 각각이 클래스를 생성해서 사용하게 되면, 메모리 누수가 발생하게 됩니다. 물론 새롭게 생성된 객체들이 GC 를 통해서 자동으로 비워지기는 할 테지만 잦은 GC는 Stop the World 를 발생시켜 프로그램 사용에 있어서 느려짐을 겪을 수 있습니다. 또한, 만약 해당 클래스를 생성하는데 발생하는 리소스가 많다면 이는 더 심하게 발생할 것입니다. 따라서, 싱글톤은 한 번 생성하고 돌려쓰는 용도로 사용을 하는 방식이고 싱글톤 방식을 채택한다면 다음과 같아집니..

프로그래머스 데브코스

프로그래머스 데브코스 10일차 - 팩토리 패턴

매일 매일 적었어야 했는데..! 발표에 과제에 너무나도 치였다..! 몰아적는건 좋지 않지만 그래도 했던 기록은 남기고자 한다. 다음 날 있을 디자인 패턴 스터디의 발표 자료를 준비했다! 해당 발표 자료를 올리고자 한다. 기본적으로 간단한 팩토리는 패턴으로 사용하지 않고 관용구로 사용한다고 하는데, 팩토리 메서드 패턴과 추상 팩토리 패턴의 기본적인 틀은 Simple Factory를 따라가는 것 같아서 위와 같이 표현을 했다. Simple Factory 자체는 프로그래밍에서 자주 쓰이는 관용구이고, 디자인 패턴은 아닙니다. 하지만 같은 개념을 확장한 Factory Method와 Abstract Factory는 패턴입니다. 팩토리 : 주로 객체 생성을 처리하는 클래스를 의미합니다. 팩토리 패턴은 왜 사용하는가..

프로그래머스 데브코스

프로그래머스 데브코스 9일차 - Static Inner 클래스를 사용해야 하는 이유, Optional orElse, orElseGet의 차이

static 클래스 및 변수 메소드등이 메모리에 적재되는 시점과 Static Inner 클래스를 사용해야하는 이유 여러 책에서 static 클래스가 메모리에 적재되는 시점은 클래스 로더를 통해서 Application이 실행 될 때 메모리에 올라가는 것으로 이해하는 경우가 많다. 하지만 이 경우는 final 키워드를 사용하여 Constant Pool 에서 관리되는 경우에 해당하고, 실제 static 키워드를 사용한 inner 클래스는 일반적인 클래스와 동일하게 생성자 혹은 블럭을 통해 생성되거나 static 변수 혹은 메서드등이 사용되는 시점에 최초로 메모리에 적재되는 것이다. (JDK8 이전에는 사용되지 않는 static 변수 혹은 메서드, 컬렉션 등이 GC 대상에 포함되지 않아 memory leak가 ..

프로그래머스 데브코스

프로그래머스 데브코스 7일차 - 롬복 트러블 슈팅, Enum 최적화

앞으로는 전체적인 트러블 슈팅과 코드 리뷰를 받으면서 그 날 겪었던 문제 사항들에 대해서 적고, 지식과 이론과 관련된 부분은 추가적으로 좀 더 깊게 정리해서 날을 잡아서 정리하고자 한다. 해야할게 많기도 하고 블로그 포스팅에 너무 많은 리소스를 쏟게 되면 그 만큼 학습량이 줄어든다는 부분도 있기 때문이다. 단, 당일 회고가 아닌 나의 발전을 확인하는 회고는 주 1회 일요일날 작성하는게 좋을 것 같다.Lombok오늘 팀원에게 다음과 같은 오류가 발생했다.error: constructor Numbers in class Numbers cannot be applied to given types; Numbers nums = new Numbers(Stream.generate(() -> faker.number().r..

프로그래머스 데브코스

프로그래머스 데브코스 6일차 - 전략패턴

오늘은 Pre팀과 각자 스프링에 사용되는 디자인 패턴들을 공부하고 발표하는 시간을 가졌다. 옛날에 발표를 녹음했던 거에 비해서 상당히 말도 천천히 말을 할 수 있게 되었음을 알 수 있었다. 발표 이후에 피드백으로 발표 자료에 대한 피드백이 상당히 많이 들어왔는데, 글로 쓰는 형식에 익숙해져 있다보니 글에 대한 가독성이 떨어지는 것 같다는 피드백을 받았다. 발표 자료란 어떤 형식으로 이루어져야 하는가에 대한 생각을 하게 될 수 있는 유익한 시간이었다. 추가적으로 아래는 금일 발표를 진행했던 전략 패턴에 대한 소개이다. 소개 안녕하세요 ! 객체지향의 꽃처럼 보이는 이번 전략 패턴을 소개하게 된 문종운이라고 합니다. 😄 개요 헤드 퍼스트 디자인 패턴 책에서도 전략 패턴을 제일 처음 단원으로 구성을 해두었습니다..

프로그래머스 데브코스

프로그래머스 데브코스 5일차

오늘은 공부한 내용에 대한 정리보다 오늘 있었던 뿌듯한 일을 정리하고자 한다. 자바를 공부하면서 어려운 부분 중 하나는 스트림과 람다에 대한 이해였다. 스트림과 람다는 다루어도 실력이 크게 늘지가 않았다. 이러한 어려움을 겪은 경험을 토대로 같이 데브코스를 진행하고 있는 동기들이 조금이나마 도움이 되었으면 하는 마음으로 스트림 학습 테스트를 만들게 되었다. 스트림에서 사용되는 생성 및 중간 연산자, 최종 연산자들에 대해서 정리를 해두었고, 실제 데이터를 몇 개 두어 직접 새로운 것도 만들어보고 테스트 할 수 있도록 환경을 구성하였다. 이러한 부분은 공부를 할 때 항상 큰 도움을 받는 망나니개발자 블로그 에서 많은 감명을 받았다. 해당 내용에 대해서 슬랙에 공유를 하였고, 많은 분들이 좋아해주셨다! 이러한..

프로그래머스 데브코스

프로그래머스 데브코스 4일차 - 인터페이스

인터페이스에 대해서 개념적으로 알고 있던 내용들이 몇 가지 있었다. 항상 무엇인가 기능에 대해서 생겼을 때 이게 왜 생긴걸까? 에 대해서 고민을 하는 편인데, 단순히 책에서 나온 내용만을 가지고 아 그냥 단순히 이러한 이유 때문에 나온거구나 하고 말았다. 하지만 실제로 인터페이스에 존재가 어떻게 생기게 되었는지에 대해서 많은 부분을 알 수 있었다. Interface의 특징 인터페이스는 여러가지 기능을 가지고 있다. 1. 구현의 강제력 - 자바 8 이전에는 무조건적인 구현의 강제력이 있었다. 즉, 인터페이스에 선언된 추상 메서드를 구현하는 구성 클래스는 해당 메서드를 무조건적으로 구현을 해야하는 것이다. 2. 다형성을 제공 - 다형성을 제공해준다는 특징이 있다. 하지만 이 다형성이라는 특성은 단순히 인터페..

Bombo_
'프로그래머스 데브코스' 태그의 글 목록 (2 Page)