![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cSBhqR/btqxSPFnL9e/HinzQXDA5SRs5dcgsovZgk/img.png)
React 개발 중에 나타난 Warning이다. Warning이라 큰 문제는 없지만 console에 자꾸 나타나는 것은 언젠가는 바로 잡아야 한다. DocumentTitle.js 31 라인 div와 DocumentTitle.js 30 라인 p 태그의 문제라고 친절히 알려준다. 태그의 문제가 있다. 퍼블리셔가 작업한 HTML을 그대로 가져와 Component를 구성하였는데 React의 꼼꼼함에 걸린 셈이다. ... p 태그는 인라인 요소만 포함 할 수 있다. div 태그는 블럭 요소이므로 p 태그 안에 div 태그를 넣는 것은 부적절하다는 의미이다. 원인은 생각보다 간단하다. React는 태그에 대해 엄격한 성격을 가지고 있다. 태그를 열고 닫고를 정확히 해야 하며 또한 성격에 맞게 제대로 사용해야 한다.
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/275sV/btqxMtjJSVt/TF3C3jmEG20OjapY4894R0/img.png)
https://www.iconfinder.com/ 3,650,000+ free and premium vector icons. SVG, PNG, AI, CSH and PNG format. Iconfinder is the leading search engine and market place for vector icons in SVG, PNG, CSH and AI format. www.iconfinder.com 아이콘을 무료로 다운로드할 수 있는 사이트이다. 디자이너 또는 퍼블리셔가 아니라면 아이콘을 프로그래머가 필요할 일은 없다. 하지만 예외사항은 늘 있는 법이다. 가끔이지만 그럴 때 이용하는 사이트이다. 퀄리티 있는 아이콘이야 무료는 아니지만 무료 아이콘으로도 충분히 만족스러운 결과를 낸다. 사이트에 접속..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/biAYFo/btqxJlE2e4m/nnrmP07zlilj56mjJkvq50/img.jpg)
2014년 회고 2014년에는 운영 업무 위주로 프로젝트가 진행되었다. 지금도 많은 곳에 빅데이터가 사용되지만 2014년 당시에는 대기업 위주 또는 선구적인 기업에서 빅데이터 프로젝트가 진행되었다. 진행했던 프로젝트는 통신사 가입자의 빅데이터 분석 및 운영 업무였는데 간단한 관리자 화면과 관련 API를 고치면서 주 업무는 Hadoop 운영이었다. 50여 대의 데이터 노드를 관리하였다. 데이터 노드들이 죽기도 하고 또는 새로운 데이터 노드를 추가하기도 하고 데이터 문제로 replication까지 운영 업무를 하면서 하둡의 기본지식과 설정 방법들을 알게 되었다. 하둡과 더불어 모니터링에 필요한 nagios, ganglia를 사용하였으며, Tajo, Hive, Pig와 같은 에코시스템을 사용하여 개발이 진행되..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bXXway/btqxIFYiqjQ/gjcQpb6STqGla1hgQH7zDK/img.png)
1. 라운지 라운지에 가면 편안한 의자에서 다리까지 뻗고 쉴 수 있으며 핸드폰 충전도 가능한다. 누구나 사용할 수 있는 라운지는 출국장을 지나 면세점 쪽으로 가면 2층에 많다. 카드사, 항공사에서 제공하는 VIP라운지가 아니더라도 편안하게 쉴 수 있다. 2. 독일 맥주 '에딩거' 스팟 더운 여름에 비행기 기다리며 갈증이 난다면 9, 10번 게이트 사이에 있는 스낵바를 가면 독일항공이 제공하는 신선한 '에딩거' 생맥을 먹을 수 있다. 3. 무료 사워시설 아침 또는 새벽 보딩 시간에 맞춰 공항에 가느라 미처 샤워를 하지 못했다면 무료 샤워시설을 추천한다. 위치는 환승편의시설 4층, 서편과 탑승동 중앙이다. AM 7:00 ~ PM 10:00 4. 수화물 보관소 공항에 수화물 보관소가 있다는 것은 다들 알고 계..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cJwETj/btqxGxldC8x/iXyTrdafZHLcsQIh7EfHpk/img.png)
String에서 Boolean으로 변환하는 방법을 알아보도록 하자. 별생각 없이 형 변환을 하다가는 오류를 범할 수 있다. API response로 Boolean 타입의 객체가 오면 문제가 되지 않지만 String 타입의 'true', 'false'로 response를 받는 경우도 종종 있다. 간단하게 if 문 구성을 String 비교로 해도 되지만 Boolean의 의미가 퇴색되어 버린다고 할까 뭔가 부족한 느낌이다. 다른 방법으로 Boolean 함수를 생각할 수 있지만 이 또한 문제가 있다. 아래 코드로 간단하게 확인해 보자. Boolean(null); //false Boolean(undefined); //false Boolean(NaN); //false Boolean(''); //false Boole..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/yb8h4/btqxDuB9De8/I6F4dvUBTofnMx46accEBK/img.png)
MyBatis를 사용하다 보면 간혹 헷갈리는 부분이다. resultType, resultMap을 상황에 따라 적절하게 사용해야 한다. 우선 MyBatis 공식 사이트에서 정의하고 있는 부분을 살펴보자. resultType - 이 구문에 의해 리턴되는 기대타입의 패키지 경로를 포함한 전체 클래스명이나 별칭, collection인 경우 collection 타입 자체가 아닌 collection이 포함된 타입이 될 수 있다. resultMap - 외부 resultMap의 참조명 결과맵은 MyBatis의 가장 강력한 기능이다. 이렇게 설명하고 있다. 확 와닿지 않는 문구이지 않는가? 다시 정리해보자. resultType - 클래스명 전체 또는 Alias를 입력해야 한다. VO, DTO등의 객체를 담을 수 있는 클..
아울렛 이란? 백화점이나 제조업체에서 판매하고 남은 재고상품이나 비인기상품, 하자상품 등을 정상가의 절반 이하의 매우 싼 가격으로 판매하는 것 의류에서 구두, 가구 등 품목을 다양화해 현재 수도권을 중심으로 많이 모여 있다. 1. 옷 들어오는 날짜 알아둬서 우선선택권을 갖자! 아울렛은 보통 옷 주문이 화요일날 들어가서 옷을 목, 금요일날 많이 받는다. 그래서 금요일엔 옷 DP 하고 주말에 몰린 손님들에게 많이 판매를 한다. 이쁜 옷을 제일 먼저 GET 하고 싶으면 금요일 오전 오후를 노려보자. 2. 이월상품만 파는 줄 알았는데 신상품도 들어온다? 백화점이나 직영매장에서 안 팔리는 신상품들은 균일가로 아울렛으로 들어온다. 3. 계절에 앞서 사면 더 싸다. 백화점에서 한창 시즌 옷을 판매하고 있을 때 아울렛..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cKVenN/btqxygKtyu1/KbrXh4V4CCd3HFk1HkCkxK/img.jpg)
계승을 위한 설계와 문서를 갖추지 않은 '이질적(foreign)' 클래스의 하위 클래스를 만들 때 생기는 문제점을 설명하고 있다. 그렇다면 계승을 위한 설계와 문서를 갖춘다는 것은 어떤 의미일까? 상속을 위한 문서에는 재정의 가능 메서드를 내부적으로 어떻게 사용하는지(self-use) 반드시 문서에 남기라는 것이다. public이나 protected로 선언된 모든 메서드와 생성자에 대해, 어떤 재정의 가능 메서드를 어떤 순서로 호출되는지, 그리고 호출 결과가 추후 어떤 영향을 미치는지 문서로 남기라는 것이다. 클래스 내부 동작에 개입할 수 있는 훅(hooks)을 신중하게 고른 protected 메서드 형태로 제공해야 한다. protected 멤버 개수는 가능한 줄여야 한다. 너무 적으면 상속해서 쓰기에 ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/ZHEze/btqxyLiXdos/PE9AcW9DbLkPW3Zp1VyKSk/img.jpg)
계승은 코드 재사용을 돕는 강력한 도구지만, 항상 최선이라고는 할 수 없다. 계승은 상위 클래스와 하위 클래스 구현을 같은 프로그래머가 통제하는 단일 패키지 안에서 사용하면 안전하다. 이번 절에서 다루는 문제는 '인터페이스 계승' 에는 적용되지 않는다. 어떤 클래스가 다른 인터페이스를 'implement' 하거나, 어떤 인터페이스가 다른 인터페이스를 'extends' 하는 경우에는 해당되지 않는다. 메서드 호출과 달리, 계승은 캡슐화(encapsulation) 원칙을 위반한다. 상위 클래스의 구현은 릴리즈가 거듭될수록 변경되는데 하위 클래스는 수정된 적이 없어도 망가질 수 있다. public class InstrumentedHashSet extends HashSet { private int addCoun..
- spring
- 회고
- 경력관리
- 소프트웨어공학
- 자바
- 리액트 16
- React
- Tomcat
- 자바스크립트
- 프로그래머
- Maven
- Java
- 오라클 내장 함수
- 제주도 여행
- effective java
- Eclipse
- 리액트
- 정렬 알고리즘
- 성능분석
- SQL
- 개발환경
- 제주도 3박4일 일정
- 이직
- javascript
- 리눅스 명령어
- sort algorithm
- Linux 명령어
- 프로그래머스
- 오라클
- Collection
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |