이펙티브 자바 Effective Java 2/E국내도서저자 : 조슈아 블로크(Joshua Bloch) / 이병준역출판 : 인사이트 2014.09.01상세보기 정적 팩터리나 생성자는 선택적 인자가 많은 상황에서 잘 적응하지 못한다. 1. 점층적 생성자 패턴(telescoping constructor pattern) 보통 프로그래머들은 이런 상황에 점층적 생성자 패턴을 적용한다. public class NutritionFacts { private final int servingSize; private final int servings; private final int calories; private final int fat; public NutritionFacts(int servingSize, int ser..
이펙티브 자바 Effective Java 2/E국내도서저자 : 조슈아 블로크(Joshua Bloch) / 이병준역출판 : 인사이트 2014.09.01상세보기 Boolean 클래스의 예 public static Boolean valueOf(boolean b) { return b ? Boolean.TRUE : Boolean.FALSE; } 1. 생성자와 달리 정적 팩터리 메서드에는 이름이 있다. 정적 팩터리는 이름을 잘 짓기만 한다면 사용하기도 쉽고, 클라이언트 코드의 가독성도 높아진다. 같은 시그니처를 갖는 생성자를 여러 개 정의할 필요가 있을 때는 그 생성자들을 정적 팩터리 메서드로 바꾸고, 메서드 이름을 보면 차이가 명확히 드러나도록 작명 2. 생성자와는 달리 호출할 때마다 새로운 객체를 생성할 필요가..
구글 클라우드 플랫폼 (Google Gloud Platform, 이하 GCP)에서 어플리케이션 에러 로그 관리 등을 쉽게 해주는 클라우드 모니터링 도구인 Stackdriver가 있습니다. 구글이 2014년도에 스택드라이버를 인수하여 2015년도 부터 GCP에 탑재하였습니다. Stackdriver의 설치부터 로깅을 전송하는 부분까지 차례대로 살펴보겠습니다. 테스트 환경은 다음과 같습니다. Google Compute Engine (Linux / Ubuntu 16.04 LTS) Java / Spring / Spring Boot Maven 1. 로깅 에이전트 설치 스택드라이버 로깅 에이전트(Stackdriver Logging Agent)는 GCP의 VM 인스턴스에 설치되어 응용프로그램으로 부터 로깅을 스트리밍 ..
Spring Security 에서 현재 인증된(로그인한) 사용자의 정보를 가져오는 방법 에 대해 살펴볼 것 입니다. 스프링의 다양한 메카니즘을 통해 현재 로그인 중인 사용자의 정보를 가져올 수 있는데, 대표적인 몇 가지를 살펴보겠습니다. 1. Bean 에서 사용자 정보 얻기 가장 간단한 방법은 전역에 선언된 SecurityContextHolder을 이용하여 가져오는 방법입니다. Object principal = SecurityContextHolder.getContext().getAuthentication().getPrincipal(); UserDetails userDetails = (UserDetails)principal; String username = principal.getUsername(); St..
인사이드 자바스크립트국내도서저자 : 고현준,송형주출판 : 한빛미디어 2014.01.02상세보기 자바스크립트의 데이터 타입 기본타입 : 숫자(Number), 문자열(String), 불린값(Boolean), undefined, null 참조타입 : 객체(Object) - 배열(Array), 함수(Function), 정규표현식 자바스크립트에서는 모든 숫자를 64비트 부동 소수점 형태로 저장한다. var intNum = 10; var floatNum = 0.1; console.log(typeof intNum); // number console.log(typeof floatNum); // number 문자열은 문자 배열처럼 인덱스를 이용해서 접근할 수 있다. 한 번 생성된 문자열은 읽기만 가능하지 수정은 불가능하..
해외 직구 등 영문 사이트를 이용할 때 매우 유용한 크롬 확장입니다.글자 드래그로 손쉽게 네이버 인공지능 번역기인 파파고의 번역을 볼 수 있습니다.네이버 사전 기능도 포함되어 있어 한 단어만 드래그할 경우 단어 뜻도 확인할 수 있습니다. 네이버 파파고가 궁금하시다면 아래 링크를 통해 확인하 실 수 있습니다.네이버 파파고 공식 블로그 파파고 번역 크롬 확장앱 다운로드(위의 확장앱 다운로드 링크에서 상세기능을 확인하실 수 있습니다.) 크롬 확장앱을 설치한 후 웹에서 번역하고자 하는 글자를 드래그하여 볼 수 있습니다.글자를 드래그하면 파파고 버튼이 생기는데요~ 그 버튼을 누르면 됩니다. 파파고 번역 크롬 확장앱 다운로드 우측 상단의 파파고 버튼을 누르면 번역하고 싶은 글자를 입력하여 번역결과를 볼 수 있습니다..
개별파일 원복git checkout -- : 워킹트리의 수정된 파일을 index에 있는 것으로 원복git checkout HEAD -- : 워킹트리의 수정된 파일을 HEAD에 있는 것으로 원복(이 경우 --는 생략가능)git checkout FETCH_HEAD -- : 워킹트리의 수정된 파일의 내용을 FETCH_HEAD에 있는 것으로 원복? merge?(이 경우 --는 생략가능) index 추가 취소git reset -- : 해당 파일을 index에 추가한 것을 취소(unstage). 워킹트리의 변경내용은 보존됨. (--mixed 가 default)git reset HEAD : 위와 동일 commit 취소git reset HEAD^ : 최종 커밋을 취소. 워킹트리는 보존됨. (커밋은 했으나 push하지 ..
이 글은 4 JavaScript Design Patterns You Should Know를 번역한 글입니다. 모든 개발자는 유지 보수 가능하고 읽기 쉽고 재사용 가능한 코드를 작성하려고 노력합니다. 응용 프로그램이 커질수록 코드 구조화가 중요 해집니다. 디자인 패턴은 이러한 문제를 해결하는 데 중요한 역할을하며 공통된 환경에 대한 조직 구조를 제공합니다. JavaScript 웹 개발자는 응용 프로그램을 만들 때 무의식적으로도 디자인 패턴과 자주 상호 작용합니다. 비록 특정한 상황에서 사용되는 다양한 디자인 패턴들도 있지만, 일반적으로 JavaScript 개발자들이 많이 쓰는 몇몇의 패턴들이 있습니다. 이번 포스트에서 프로그래밍 스킬을 향상시키기 위해 이러한 일반적인 패턴들에 대해 이야기하고, JavaSc..
- Total
- Today
- Yesterday
- 프로그래밍
- 한화에어로스페이스
- 현대차
- 자료구조
- Rails
- 주식투자
- HBM
- OpenStack
- codecademy
- 알고리즘
- Java
- 반도체관련주
- CSS
- install
- 삼성전자
- ruby
- rabbitmq
- ubuntu
- Message Queue
- html
- 한미반도체
- javascript
- 웹프로그래밍
- 이펙티브 자바
- 이수페타시스
- ruby on rails
- 투자전략
- SK하이닉스
- 흥구석유
- 국제유가
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | |||||
| 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| 17 | 18 | 19 | 20 | 21 | 22 | 23 |
| 24 | 25 | 26 | 27 | 28 | 29 | 30 |
| 31 |
