<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[김정환블로그 RSS Feed]]></title><description><![CDATA[주로 웹 기술에 대해 이야기 합니다]]></description><link>http://github.com/dylang/node-rss</link><generator>GatsbyJS</generator><lastBuildDate>Sun, 21 Sep 2025 22:47:03 GMT</lastBuildDate><item><title><![CDATA[그라데이션 테두리]]></title><description><![CDATA[AI 기술을 서비스에 적용하면서 이 같은 스타일의 UI 요소를 자주 접한다. 단색이 아닌 그라데이션으로 테두리을 그리는 방식인데, 마치 AI…]]></description><link>https://jeonghwan-kim.github.io/2025/09/22/gradient-border</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2025/09/22/gradient-border</guid><pubDate>Mon, 22 Sep 2025 00:00:00 GMT</pubDate></item><item><title><![CDATA[보여주기식]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/2025/09/12/yoga-lesson-for-programmers</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2025/09/12/yoga-lesson-for-programmers</guid><pubDate>Fri, 12 Sep 2025 00:00:00 GMT</pubDate></item><item><title><![CDATA[리액트 쿼리 실무팁]]></title><description><![CDATA[TanStack Query는 서버 상태를 클라이언트에서 효율적으로 다루는 도구다. 처음 접할 때는 useQuery() 정도만 사용해도 충분해 보였고, 실제로 기본 기능만으로도 꽤 많은 일을 할 수 있었다. 실무에서 다양한 API…]]></description><link>https://jeonghwan-kim.github.io/2025/05/18/react-query-tips</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2025/05/18/react-query-tips</guid><pubDate>Sun, 18 May 2025 00:00:00 GMT</pubDate></item><item><title><![CDATA[리액트 쿼리, 내부는 이렇게 움직인다]]></title><description><![CDATA[이전 글(리액트 쿼리, 늦게 시작했지만 더 확실한 서버 상태 관리)에 이어 리액트 쿼리 구조와 동작 원리를 분석해 보았다. useQuery()를 시작으로 QueryClient…]]></description><link>https://jeonghwan-kim.github.io/2025/05/11/how-react-query-works</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2025/05/11/how-react-query-works</guid><pubDate>Sun, 11 May 2025 00:00:00 GMT</pubDate></item><item><title><![CDATA[리액트 쿼리(TanStack Query), 늦게 시작했지만 더 확실한 서버 상태 관리]]></title><description><![CDATA[마침내 리액트 쿼리(React Query…]]></description><link>https://jeonghwan-kim.github.io/2025/04/26/react-query</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2025/04/26/react-query</guid><pubDate>Sat, 26 Apr 2025 00:00:00 GMT</pubDate></item><item><title><![CDATA[코드 리뷰: 협업으로 배우고 성장하기]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/2025/01/20/code-review</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2025/01/20/code-review</guid><pubDate>Mon, 20 Jan 2025 00:00:00 GMT</pubDate></item><item><title><![CDATA[모듈 페더레이션 구조와 동작 원리]]></title><description><![CDATA[import 함수는 실행 환경에 따라 전달받은 인자를 해석하여 해당 자원을 불러온다. 예를 들어 Node.js 환경에서는 파일을, 브라우져 환경에서는 HTTP…]]></description><link>https://jeonghwan-kim.github.io/2025/01/07/module-federation</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2025/01/07/module-federation</guid><pubDate>Tue, 07 Jan 2025 00:00:00 GMT</pubDate></item><item><title><![CDATA[리액트 lazy]]></title><description><![CDATA[웹 애플리케이션의 초기 로딩 속도를 개선하는 핵심 전략 중 하나는 필요한 코드만을 적절한 시점에 로드하는 것이다. Reac.lazy는 이러한 코드 분할(Code Spliiting)을 효과적으로 구현할 수 있게
도와주는 도구다. 이 글에서는 React…]]></description><link>https://jeonghwan-kim.github.io/2024/12/18/react-lazy</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2024/12/18/react-lazy</guid><pubDate>Wed, 18 Dec 2024 00:00:00 GMT</pubDate></item><item><title><![CDATA[모듈 페더레이션 타입 힌트와 로깅]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/2024/12/08/module-federation-logging</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2024/12/08/module-federation-logging</guid><pubDate>Sun, 08 Dec 2024 00:00:00 GMT</pubDate></item><item><title><![CDATA[[HTTP] 6편. 성능]]></title><description><![CDATA[6편 소개 브라우져가 웹 페이지를 렌더링할 때 발생하는 HTTP 요청을 효율적으로 제어하는 다양한 기법 16장. 렌더링 최적화: 외부 리소스의 로드 시점을 제어해 웹 성능을 최적화하는 기술 17장. 캐시: 서버와 브라우저가 HTTP…]]></description><link>https://jeonghwan-kim.github.io/2024/07/12/lecture-http-part6</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2024/07/12/lecture-http-part6</guid><pubDate>Fri, 12 Jul 2024 00:01:00 GMT</pubDate></item><item><title><![CDATA[[HTTP] 5편. 보안]]></title><description><![CDATA[5편 소개 브라우져 보안과 함께 HTTP 통신을 더 안전하게 만드는 TLS 13장. 브라우져 보안: XSS(크로스 사이트 스크립팅)와 같은 공격 기법과 이를 방지하기 위한 브라우저 보안 정책 14장. CORS…]]></description><link>https://jeonghwan-kim.github.io/2024/07/11/lecture-http-part5</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2024/07/11/lecture-http-part5</guid><pubDate>Thu, 11 Jul 2024 00:01:00 GMT</pubDate></item><item><title><![CDATA[[HTTP] 4편. 추가 프로토콜]]></title><description><![CDATA[4편 소개 HTTP의 비연결성을 극복하는 다양한 기술 9장. 폴링: 클라이언트가 주기적으로 서버에 요청을 보내서 새로운 데이터를 확인하는 방법 10장. 롱 폴링: 폴링 보다 호율적인 통신 기법 11장. SSE…]]></description><link>https://jeonghwan-kim.github.io/2024/07/10/lecture-http-part4</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2024/07/10/lecture-http-part4</guid><pubDate>Wed, 10 Jul 2024 00:01:00 GMT</pubDate></item><item><title><![CDATA[[HTTP] 3편. AJAX]]></title><description><![CDATA[3편 소개 직접 만들 수 있는 HTTP 요청 6장. AJAX 요청과 응답: fetch 함수로 AJAX 요청과 응답을 다루는 법에 대해 7장. AJAX 진행율과 취소: AJAX 진행율을 계산하는 방법과 요청을 취소하는 방법에 대해 8장. AJAX…]]></description><link>https://jeonghwan-kim.github.io/2024/07/09/lecture-http-part3</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2024/07/09/lecture-http-part3</guid><pubDate>Tue, 09 Jul 2024 00:01:00 GMT</pubDate></item><item><title><![CDATA[[HTTP] 2편. 브라우져]]></title><description><![CDATA[2편 소개 웹 브라우져가 HTTP를 어떻게 사용하는지 이해할수 있습니다. 3장. 컨텐츠 협상: 웹브라우져가 서버와 데이터를 주고 받을 때 최적의 형태로 만들기 위한 매커니즘을 이해하실 수 있습니다.…]]></description><link>https://jeonghwan-kim.github.io/2024/07/08/lecture-http-part2</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2024/07/08/lecture-http-part2</guid><pubDate>Mon, 08 Jul 2024 00:01:00 GMT</pubDate></item><item><title><![CDATA[[HTTP] 1편. HTTP 기본]]></title><description><![CDATA[1편 소개 1장. HTTP 시작: 웹의 탄생 배경과 역사에 대해 알 수 있습니다. 2장. HTTP 메시지: HTTP의 주요 요소에 대해 배우실 수 있습니다. 1장. HTTP 시작 1.1 문서 배포 웹 어플리케이션의 동작 원리와 HTTP의 역할 HTTP…]]></description><link>https://jeonghwan-kim.github.io/2024/07/07/lecture-http-part1</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2024/07/07/lecture-http-part1</guid><pubDate>Sun, 07 Jul 2024 00:01:00 GMT</pubDate></item><item><title><![CDATA[리액트19 베타]]></title><description><![CDATA[마침내 npm에서 리액트 19 베타를 사용할 수 있다. 관련한 문서에서는 액션이라는 새로운 개념과 파생된 리액트 훅을 소개한다. 그동안 사용했던 API…]]></description><link>https://jeonghwan-kim.github.io/2024/05/11/react19-beta</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2024/05/11/react19-beta</guid><pubDate>Sat, 11 May 2024 00:00:00 GMT</pubDate></item><item><title><![CDATA[컨텐츠 협상]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/2024/05/04/content-negotiation</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2024/05/04/content-negotiation</guid><pubDate>Sat, 04 May 2024 00:00:00 GMT</pubDate></item><item><title><![CDATA[HTTP 쿠키]]></title><description><![CDATA[서론 유닉스 환경에서 개발할 때 받은 데이터를 그대로 다시 보내는 것을 매직 쿠키라고 한다. 지금으로부터 3…]]></description><link>https://jeonghwan-kim.github.io/2024/03/04/http-cookie</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2024/03/04/http-cookie</guid><pubDate>Mon, 04 Mar 2024 00:00:00 GMT</pubDate></item><item><title><![CDATA[HTTP 캐싱]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/2024/02/08/http-caching</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2024/02/08/http-caching</guid><pubDate>Thu, 08 Feb 2024 00:00:00 GMT</pubDate></item><item><title><![CDATA[자바스크립트 http 클라이언트 라이브러리 비교]]></title><description><![CDATA[브라우저는 http 요청을 위해 xhr과 fetch…]]></description><link>https://jeonghwan-kim.github.io/2024/01/10/js-http-lib</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2024/01/10/js-http-lib</guid><pubDate>Wed, 10 Jan 2024 00:00:00 GMT</pubDate></item><item><title><![CDATA[Fetch 진행율]]></title><description><![CDATA[Ajax 기법을 사용하면서 진행율을 표시해 보진 않았다. 업로드 혹은 다운로드할 때 시간이 걸리기 때문에 UI로 표시할 필요는 있다. 스핀이나 프로그래스 바로 진행 여부를 나타낸 정도다. 정확한 수치로 진행율을 표시하는 방법이 있을까? fetch…]]></description><link>https://jeonghwan-kim.github.io/2023/12/31/fetch-progress</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/12/31/fetch-progress</guid><pubDate>Sun, 31 Dec 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[Fetch]]></title><description><![CDATA[서버가 HTTP API로 자원을 제공하면 브라우져는 AJAX 기법으로 자원을 얻는다. 실무에서는 axios나 superagent 같은 전용 라이브러리를 사용했다. 모두 브라우저가 제공하는 XMLHttpRequst 객체, 혹은 fetch…]]></description><link>https://jeonghwan-kim.github.io/2023/12/27/fetch</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/12/27/fetch</guid><pubDate>Wed, 27 Dec 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[CORS]]></title><description><![CDATA[브라우져에서 다른 출처에 있는 리소스를 사용할 수 있는 규칙이 교차 출처 리소스 공유, CORS…]]></description><link>https://jeonghwan-kim.github.io/2023/12/12/cors</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/12/12/cors</guid><pubDate>Tue, 12 Dec 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[cURL]]></title><description><![CDATA[네트웍 요청을 다룰 때 주로 cURL이나 포스트맨을 사용한다. 비교적 간편한 전자를 기본으로 쓰면서 팀에서 협업할 때는 후자를 이용하는 편이다. 1998년에 출시한 이 도구는 벌써 2…]]></description><link>https://jeonghwan-kim.github.io/2023/12/03/curl</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/12/03/curl</guid><pubDate>Sun, 03 Dec 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[esbuild]]></title><description><![CDATA[웹팩과 비슷한 도구들이 많다. esbuild, swc, vite…]]></description><link>https://jeonghwan-kim.github.io/2023/11/16/esbuild</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/11/16/esbuild</guid><pubDate>Thu, 16 Nov 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[pnpm]]></title><description><![CDATA[처음 들었을 때 "p"가 무슨 뜻일지 궁금했다. 홈페이지에서 바로 찾을 수 없었고 인터넷에 검색해도 잘 나오지 않았다. performant npm '승진, 성능 기준에 맞는' 이런 뜻인데 '고성능 npm…]]></description><link>https://jeonghwan-kim.github.io/2023/10/20/pnpm</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/10/20/pnpm</guid><pubDate>Fri, 20 Oct 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 4편 최종정리]]></title><description><![CDATA[마침내 마지막 4편을 정리할 시간이다. 1장. 레프 훅 랜더링과 무관하게 지속할 수 있는 값을 제공 상태 훅과 비슷하지만 리랜더징 하지않음 Dialog, OrderForm 활용…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part4-ch5</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part4-ch5</guid><pubDate>Sat, 24 Jun 2023 00:04:05 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 4.4 메모이제이션 훅]]></title><description><![CDATA[메모이제이션. 캐시로 성능을 높이는 프로그래밍 기법이다. 이번에는 메모이제이션에 대해 알아본 뒤 리액트의 useMemo와 useCallback을 살펴볼 것이다. 각 훅을 직접 만들어 구조를 파악하고 리액트 성능 개선 방법을 이해한다. 메모이제이션 n…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part4-ch4</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part4-ch4</guid><pubDate>Sat, 24 Jun 2023 00:04:04 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 4.3 리듀서 훅]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part4-ch3</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part4-ch3</guid><pubDate>Sat, 24 Jun 2023 00:04:03 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 4.2 제어 폼]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part4-ch2</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part4-ch2</guid><pubDate>Sat, 24 Jun 2023 00:04:02 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 4.1 레프 훅]]></title><description><![CDATA[3편에서 학습한 기본 훅을 이용해 어플리케이션을 함수 컴포넌트로 다시 만들었다. 일부 남은 것이 있는데 레프 객체를 사용하는 부분이다. Dialog: 레프 객체로 앨리먼트에 접근, 버튼 포커스 OrderForm…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part4-ch1</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part4-ch1</guid><pubDate>Sat, 24 Jun 2023 00:04:01 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 4편 추가훅]]></title><description><![CDATA[목차 레프 훅 제어 폼 리듀서 훅 메모이제이션 훅 최종정리]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part4</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part4</guid><pubDate>Sat, 24 Jun 2023 00:04:00 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 3편 최종정리]]></title><description><![CDATA[마침내 3편 내용을 정리할 시간이다. 1장. 클래스/함수형 컴포넌트 새로운 프로젝트 소개 클래스와 함수 비교: 상태 관리, 고정 값 클래스와 함수: 리액트 컴포넌트 리액트 훅: 함수 컴포넌트에 UI 역할을 제공…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part3-ch7</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part3-ch7</guid><pubDate>Sat, 24 Jun 2023 00:03:07 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 3.6 훅 활용 2]]></title><description><![CDATA[기본 훅 세 개를 모두 파악했다. useState, useEffect, useContext로 어플리케이션을 함수 컴포넌트와 훅으로 다시 만들자. MyRouter: Router 2편에서 만든 라우터의 역할은 다음과 같다. routerContext…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part3-ch6</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part3-ch6</guid><pubDate>Sat, 24 Jun 2023 00:03:06 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 3.5 컨택스트 훅]]></title><description><![CDATA[useContext…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part3-ch5</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part3-ch5</guid><pubDate>Sat, 24 Jun 2023 00:03:05 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 3.4 훅 활용 1]]></title><description><![CDATA[리액트 useState와 useEffect를 사용할 차례다. 예제 프로그램을 함수 컴포넌트와 훅으로 다시 만들어 보자. 메뉴 목록 페이지 공통 컴포넌트부터 정리하자. src/components/Page.jsx DialogContainer…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part3-ch4</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part3-ch4</guid><pubDate>Sat, 24 Jun 2023 00:03:04 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 3.3 부수효과 훅]]></title><description><![CDATA[useEffect 훅을 만들고 리액트가 함수 컴포넌트에서 부수 효과를 어떻게 관리하는지 이해한다. 순수 함수와 컴포넌트 순수함수는 두 가지 특징을 가진다(참고: 위키피디아 Pure function…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part3-ch3</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part3-ch3</guid><pubDate>Sat, 24 Jun 2023 00:03:03 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 3.2 상태 훅]]></title><description><![CDATA[useState 훅을 만들고 리액트가 함수 컴포넌트에서 상태를 관리하는 방식을 이해할 것이다. 문제 제기 이름을 입력할 수 있는 NameField 컴포넌트를 만들어 보자. 변수 name에 할당한 문자열을 input의 value…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part3-ch2</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part3-ch2</guid><pubDate>Sat, 24 Jun 2023 00:03:02 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 3.1 클래스/함수 컴포넌트]]></title><description><![CDATA[클래스와 함수에 대해 짚고 리액트 클래스 컴포넌트와 함수 컴포넌트에 대해 알아본다. 함수 컴포넌트와 훅을 사용하는 것이 어떤 의미인지도 고찰해 보자. 새로운 프로젝트: 2-hook…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part3-ch1</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part3-ch1</guid><pubDate>Sat, 24 Jun 2023 00:03:01 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 3편 기본훅]]></title><description><![CDATA[목차 클래스/함수 컴포넌트 상태 훅 부수효과 훅 훅 활용 1 컨택스트 훅 훅 활용 2 최종정리]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part3</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part3</guid><pubDate>Sat, 24 Jun 2023 00:03:00 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 2편 최종정리]]></title><description><![CDATA[마침내 2편 내용을 정리할 시간이다. 1장. 컨택스트 프롭 드릴링 현상을 리액트 컨택스트로 해결 MyReact로 컨택스트 직접 구현 이벤트 에미터 패턴으로 멀리 떨어진 객체간에 메세지 교류 createContext…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part2-ch6</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part2-ch6</guid><pubDate>Sat, 24 Jun 2023 00:02:06 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 2.5 다이얼로그 2]]></title><description><![CDATA[Dialog 문제 사실 Dialog에는 버그가 있다. 부모 스타일의 영향을 받아 빈 공간이 조금 생긴다.  원인은 중첩된 돔 구조로 인해 부모 엘리먼트의 스타일 영향을 다이얼로그가 받기 때문이다. .Dialog…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part2-ch5</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part2-ch5</guid><pubDate>Sat, 24 Jun 2023 00:02:05 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 2.4 다이얼로그 1]]></title><description><![CDATA[나머지 다이얼로그 관련 요구사항들이다. 0.4 API 호출시 로딩 메세지를 다이얼로그로 표시한다. (다이얼로그) 0.5 예외 처리용 메세지를 다이얼로그로 표시한다. (다이얼로그) 2.…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part2-ch4</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part2-ch4</guid><pubDate>Sat, 24 Jun 2023 00:02:04 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 2.3 라우터 2]]></title><description><![CDATA[주소창 주소 변경하기 라우터 숙제 컴포넌트 렌더링: 요청한 주소에 해당하는 컴포넌트 렌더링 주소 변경: 요청한 주소를 브라우져 주소창에 표시 Link…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part2-ch3</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part2-ch3</guid><pubDate>Sat, 24 Jun 2023 00:02:03 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 2.2 라우터 1]]></title><description><![CDATA[리액트 컨택스트의 첫 번째 활용으로 라우터를 만들어 보겠다. 요구사항 중 네비게이션 기능을 구현할 목적이다. 배경 요구사항 0.2 네비게이션바: 메뉴목록, 주문내역 화면을 이동할 수 있다. (UI, 라우팅) 0.…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part2-ch2</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part2-ch2</guid><pubDate>Sat, 24 Jun 2023 00:02:02 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 2.1 컨택스트]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part2-ch1</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part2-ch1</guid><pubDate>Sat, 24 Jun 2023 00:02:01 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 2편 고급주제]]></title><description><![CDATA[목차 컨택스트 라우터 1 라우터 2 다이얼로그 1 다이얼로그 2 최종정리]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2</guid><pubDate>Sat, 24 Jun 2023 00:02:00 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 1편 최종정리]]></title><description><![CDATA[1장. 준비 1부 강의 요약. 여기서 다루지 않은 고급 주제와 훅이 이 수업의 주요 내용 실습 어플리케이션 미리 보기. 배달 어플리케이션의 주요 화면 세 개 실습 환경 이해. 개발 도구, 웹팩, 바벨, 워크스페이스 설정…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part1-ch5</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part1-ch5</guid><pubDate>Sat, 24 Jun 2023 00:01:05 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 1.4 장바구니 화면]]></title><description><![CDATA[마지막 장바구니 화면이다. 요구사항 2.1 "장바구니" 제목을 상단에 표시한다. (UI) 2.2 제목 좌측에 뒤로 가기 버튼을 표시한다. (UI) 2.3 선택한 상품 정보를 중앙에 표시한다. (UI) 2.…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part1-ch4</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part1-ch4</guid><pubDate>Sat, 24 Jun 2023 00:01:04 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 1.3 주문내역 화면]]></title><description><![CDATA[주문내역 화면이다. 이전 장에서 만든 컴포넌트를 재사용하고 없는 것은 새로 만든다. 요구사항 3.1 "주문내역" 제목을 상단에 표시한다. (UI) 3.2 주문내역 정보를 불러와 중앙에 표시한다. (UI) 3.3 네비게이션바가 하단에 위치한다. (UI…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part1-ch3</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part1-ch3</guid><pubDate>Sat, 24 Jun 2023 00:01:03 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 1.2 상품목록 화면]]></title><description><![CDATA[1부에서 학습한 리액트 지식을 이용해 상품목록 화면부터 만들어 보자. 요구사항 1.1 "메뉴목록" 제목을 상단에 표시한다. (UI) 1.2 주문할 수 있는 상품 목록을 중앙에 표시한다. (UI) 1.4 네비게이션바가 하단에 위치한다. (UI…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part1-ch2</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part1-ch2</guid><pubDate>Sat, 24 Jun 2023 00:01:02 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 1.1 준비]]></title><description><![CDATA[리액트 1부 수업을 요약한 뒤 2부 내용을 소개한다. 실습 어플리케이션과 개발 환경을 미리 살펴본다. 1부 수업 요약…]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part1-ch1</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part1-ch1</guid><pubDate>Sat, 24 Jun 2023 00:01:01 GMT</pubDate></item><item><title><![CDATA[[리액트 2부] 1편 리액트로 사고하기]]></title><description><![CDATA[목차 준비 상품목록 화면 주문내역 화면 장바구니 화면 최종정리]]></description><link>https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part1</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/24/lecture-react-season2-part1</guid><pubDate>Sat, 24 Jun 2023 00:01:00 GMT</pubDate></item><item><title><![CDATA[리플렉트 메타데이터]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/2023/06/20/reflect-metadata</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/06/20/reflect-metadata</guid><pubDate>Tue, 20 Jun 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[리액트 useMemo와 useCallback은 어떤 모습일까?]]></title><description><![CDATA[메모이제이션. 캐시로 성능을 높이는 프로그래밍 기법이다. 이번에는 메모이제이션에 대해 알아본 뒤 리액트의 useMemo와 useCallback…]]></description><link>https://jeonghwan-kim.github.io/2023/04/17/usememo-usecallback</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2023/04/17/usememo-usecallback</guid><pubDate>Mon, 17 Apr 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[재귀타입]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/dev/2023/04/07/recursive-type</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2023/04/07/recursive-type</guid><pubDate>Fri, 07 Apr 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[리액트 useReducer는 어떤 모습일까?]]></title><description><![CDATA[지난 useContext 이후 1년만에 쓰는 글이다. 공부하는 흐름을 한 번 놓치니깐 시간이 훌쩍 지나 버렸다. 한 두 번 빠지지기 시작해 이제는 잊어버린 헬스장 이용권 같다. 이번에는 useReducer 대해 알아보자. useState…]]></description><link>https://jeonghwan-kim.github.io/dev/2023/03/29/use-reducer.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2023/03/29/use-reducer.html</guid><pubDate>Wed, 29 Mar 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[스톰프(Stomp)]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/2022/10/31/stomp</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2022/10/31/stomp</guid><pubDate>Mon, 31 Oct 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[리덕스]]></title><description><![CDATA[리덕스 코드를 읽었다. 5년 정도 사용한 것 같은데 어떻게 만들었는지는 모르고 있었다. 메뉴얼 문서에서 읽은 정보로 얕게 아는 정도였다. 자세한 구조에 대해서는 궁금하지 않았던 모양이다. 이렇게 호기심이 부족해서는 실력이 늘지 않는다. 10년동안…]]></description><link>https://jeonghwan-kim.github.io/2022/10/12/redux</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2022/10/12/redux</guid><pubDate>Wed, 12 Oct 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[객체 간에 메세지를 전달하는 다양한 방법]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/2022/09/19/how-to-send-messages</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2022/09/19/how-to-send-messages</guid><pubDate>Mon, 19 Sep 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[웹팩 빌드시 이전 결과물을 삭제하는 옵션]]></title><description><![CDATA[메뉴얼을 보고 안 것은 아니다. 번들 결과물을 삭제하는 옵션이 생겼다는 말을 동료로부터 들었다. 웹팩 기본 기능만으로는 빌드할 때마다 결과물이 차곡차곡 쌓이기만 했지 지울 수 없었다. clean-webpack-plugin…]]></description><link>https://jeonghwan-kim.github.io/2022/08/21/webpack-output-clean</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2022/08/21/webpack-output-clean</guid><pubDate>Sun, 21 Aug 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[특별육아휴직]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/2022/08/06/special-parental-leave</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2022/08/06/special-parental-leave</guid><pubDate>Sat, 06 Aug 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[NPM 워크스페이스와 모노레포]]></title><description><![CDATA[모노레포 솔루션은 lerna, yarn 등 여러가지가 있다. 이유는 모르지만 최근 lerna…]]></description><link>https://jeonghwan-kim.github.io/2022/07/31/npm-workspace</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2022/07/31/npm-workspace</guid><pubDate>Sun, 31 Jul 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[리액트 Portal]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/2022/06/02/react-portal</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2022/06/02/react-portal</guid><pubDate>Thu, 02 Jun 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[리액트 Ref]]></title><description><![CDATA[컴포넌트 상태와 프롭에 따라 리액트 엘리먼트를 동기화하는 것이 리액트로 UI…]]></description><link>https://jeonghwan-kim.github.io/2022/05/31/react-ref</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2022/05/31/react-ref</guid><pubDate>Tue, 31 May 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[리액트 고차 컴포넌트(HOC)]]></title><description><![CDATA[훅을 주로 사용하는 지금에 비하면 비교적 철 지난 주제인 것 같다. 리액트 컴포넌트 로직을 재사용하기 위한 방법으로 고차 컴포넌트(High Order Component)를 사용한다. 써드 파티 라이브러리에서도 이 형태의 API…]]></description><link>https://jeonghwan-kim.github.io/2022/05/28/react-high-order-component</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2022/05/28/react-high-order-component</guid><pubDate>Sat, 28 May 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[리액트 StrictMode]]></title><description><![CDATA[거의 사용해 보지 못했다. create-react-app에서 잠깐 봤는데 이걸로 프로젝트를 해본 경험이 없으니 정말 거의 사용한 적이 없었다. React의 Strict…]]></description><link>https://jeonghwan-kim.github.io/2022/05/20/react-strict-mode</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2022/05/20/react-strict-mode</guid><pubDate>Fri, 20 May 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[리액트 라우터 만들기 ]]></title><description><![CDATA[요즘 react-router를 거의 만져보지 못했다. 회사에서 담당한 제품이 사용하지 않은 이유가 크다. 오랜 만에 봤더니 버전 6가지 나왔더라. 예전에…]]></description><link>https://jeonghwan-kim.github.io/dev/2022/05/06/react-router.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2022/05/06/react-router.html</guid><pubDate>Fri, 06 May 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[리액트 useContext는 어떤 모습일까?]]></title><description><![CDATA[지난 시간에 이어 useContext…]]></description><link>https://jeonghwan-kim.github.io/dev/2022/04/28/use-context.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2022/04/28/use-context.html</guid><pubDate>Thu, 28 Apr 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[리액트 useEffect는 어떤 모습일까?]]></title><description><![CDATA[지난 시간에 이어 useEffect를 직접 만들어 보자.  순수함수 순수함수란 무엇일까? 두 가지 특징이 있다. (참고: 위키피디아 Pure function) 입력이 같으면 결과도 같다. (the function return values are…]]></description><link>https://jeonghwan-kim.github.io/dev/2022/04/24/use-effect.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2022/04/24/use-effect.html</guid><pubDate>Sun, 24 Apr 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[리액트 useState는 어떤 모습일까?]]></title><description><![CDATA[함수는 값을 반환한다. 리액트 앨리먼트를 반환하는 함수를 리액트에서는 함수 컴포넌트(Function Component…]]></description><link>https://jeonghwan-kim.github.io/dev/2022/04/11/use-state.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2022/04/11/use-state.html</guid><pubDate>Mon, 11 Apr 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[리액트로 폼(Form) 다루기]]></title><description><![CDATA[폼 다루는 방법에 대해 얘기해 보자. 브라우져는 폼을 다루기 위한 내장 API를 가지고 있다.
이걸 이용하면 빠르게 폼을 만들수 있는데 이전에 한 번 정리했다. HTML5 폼 검증에 대해 정리해 보자 브라우저의 내장 API…]]></description><link>https://jeonghwan-kim.github.io/dev/2022/03/29/react-form-and-formik.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2022/03/29/react-form-and-formik.html</guid><pubDate>Tue, 29 Mar 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[최근에 발견한 인텔리제이 기능과 플러그인]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/dev/2021/10/29/return-to-intellij.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2021/10/29/return-to-intellij.html</guid><pubDate>Fri, 29 Oct 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[블로그 댓글 서비스 교체: Disqus → Utterances 데이터 이관 ]]></title><description><![CDATA[이전글 (블로그 댓글 서비스 교체: Utterances)에서 댓글 서비스를 교체했다.
광고가 달린 disqus 서비스에서 깃헙 기반의 utterance로 바꾼 것이 작업 내용이다. 하지만 그 동안 작성된 댓글은 여전히 disqus…]]></description><link>https://jeonghwan-kim.github.io/dev/2021/08/31/disqus-to-utterances.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2021/08/31/disqus-to-utterances.html</guid><pubDate>Tue, 31 Aug 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[블로그 댓글 서비스 교체: Utterances]]></title><description><![CDATA[언제부터인가 블로그 하단에 광고가 붙기 시작했다.
구글 애드샌스를 사용하는것도 아닌데 이상하다.
마치 자가용에 택시 광고판을 붙이고 다니는 것 같아서 얼른 떼어버리고 싶었다. 원인은 댓글 서비스로 사용하는 디스커스(Disqus…]]></description><link>https://jeonghwan-kim.github.io/dev/2021/08/26/utterances.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2021/08/26/utterances.html</guid><pubDate>Thu, 26 Aug 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[한성 키보드를 매직 키보드와 유사하게 사용하기]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/think/2021/08/23/customizing-keyboard.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/think/2021/08/23/customizing-keyboard.html</guid><pubDate>Mon, 23 Aug 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[프론트엔드 테스트할 기회가 생겼다]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/dev/2021/08/09/testing-frontend.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2021/08/09/testing-frontend.html</guid><pubDate>Mon, 09 Aug 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[디자인시스템과 라이브 방송]]></title><description><![CDATA[지난 달 사내 DR…]]></description><link>https://jeonghwan-kim.github.io/think/2021/07/19/design-system-and-streaming.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/think/2021/07/19/design-system-and-streaming.html</guid><pubDate>Mon, 19 Jul 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[CSS 변수와 웹사이트 테마]]></title><description><![CDATA[맥OS에 다크 테마가 나온 후 웹 사이트에도 다크 테마 버전이 적용된 걸 심심찮게 보았다. 나는 맥OS…]]></description><link>https://jeonghwan-kim.github.io/dev/2021/05/17/css-variable.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2021/05/17/css-variable.html</guid><pubDate>Mon, 17 May 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[리액트 컨텍스트]]></title><description><![CDATA[리액트 안내서에 나온 컨택스트는 읽어보기만 했지 실제로 사용해 본적은 한 번도 없었다.
상태관리 솔루션으로 리덕스(Redux)나 모빅스(Mobx)를 사용해서 그런걸까?
문서에는 UI…]]></description><link>https://jeonghwan-kim.github.io/dev/2021/05/05/react-context.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2021/05/05/react-context.html</guid><pubDate>Wed, 05 May 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[나의 첫 무접점 키보드 ]]></title><description><![CDATA[항상 컴퓨터로 일하는 사람들은 누구나 한 번 키보드에 욕심을 부려 보았을 것이다.
노트북에 내장된 것으로는 아쉬워서 외장 키보드를 연결해 사용하는데 그 가격만이 천차만별이다. 처음 해피해킹을 보았을 때 단순한 디자인에 매료되서 너무 갖고 싶었다.
3…]]></description><link>https://jeonghwan-kim.github.io/think/2021/04/29/my-first-capacitive-keyboard.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/think/2021/04/29/my-first-capacitive-keyboard.html</guid><pubDate>Thu, 29 Apr 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[[리액트 1부] 만들면서 학습하는 리액트: 사용편2(컴포넌트편)]]></title><description><![CDATA[리액트 컴포넌트 소개 컴포넌트를 사용하는 이유 사용 편에서 우리는 이미 컴포넌트를 사용하고 있었다. 어플리케이션 자체를 의미하는 App…]]></description><link>https://jeonghwan-kim.github.io/series/2021/04/15/lecture-react-component.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2021/04/15/lecture-react-component.html</guid><pubDate>Thu, 15 Apr 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[[리액트 1부] 만들면서 학습하는 리액트: 사용편1]]></title><description><![CDATA[준비편에서는 순수 자바스크립트로 검색 화면을 만들었다. 이 때 사용한 요구사항을 리액트 버전으로 만들어 보는 것이 이번편의 내용이다. 요구사항에 대해서는 이미 익숙하기 때문에 리액트의 특성과 장점에 대해 집중하자. 검색 폼 구현하기 1 Input…]]></description><link>https://jeonghwan-kim.github.io/series/2021/04/12/lecture-react-usage.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2021/04/12/lecture-react-usage.html</guid><pubDate>Mon, 12 Apr 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[[리액트 1부] 만들면서 학습하는 리액트: 소개편]]></title><description><![CDATA[React.js 소개 데이터와 화면을 연결하는 방법 리액트나 뷰 같은 UI 라이브러리의 가장 큰 특징은 화면에 출력되는 유저 인터페이스를 상태로 관리할 수 있다는 점이다. 브라우저는 돔(DOM…]]></description><link>https://jeonghwan-kim.github.io/series/2021/04/08/lecture-react-intro.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2021/04/08/lecture-react-intro.html</guid><pubDate>Thu, 08 Apr 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[[리액트 1부] 만들면서 학습하는 리액트: 준비편]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/series/2021/04/05/lecture-react-ready.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2021/04/05/lecture-react-ready.html</guid><pubDate>Mon, 05 Apr 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[AWS 람다 초기 응답 속도 개선하기]]></title><description><![CDATA[AWS…]]></description><link>https://jeonghwan-kim.github.io/dev/2021/04/01/aws-lambda-cold-start.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2021/04/01/aws-lambda-cold-start.html</guid><pubDate>Thu, 01 Apr 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[AWS 람다 용량 관리]]></title><description><![CDATA[AWS 람다는 작은 코드 조각을 실행시켜주는 함수다.
별다른 서버 설정이 거의 필요 없고 웹 대시보드에 코드만 올리면 바로 실행되어 결과를 확인할 수 있는 AWS…]]></description><link>https://jeonghwan-kim.github.io/dev/2021/03/29/lambda-limits.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2021/03/29/lambda-limits.html</guid><pubDate>Mon, 29 Mar 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[어플리케이션 다국어 기능과 번역가와 협업 방법]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/dev/2021/03/22/i18n.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2021/03/22/i18n.html</guid><pubDate>Mon, 22 Mar 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[유니온 타입과 타입 가드]]></title><description><![CDATA[타입스크립트를 사용하면서 편리한 점은 코딩할 때 매우 정확하게 자동완성 된다는 점이다.
코드 편집기에 연동된 타입스크립트 컴파일러가 실시간으로 코드를 분석해서 타입을 추적해준 덕분이다.
타입스크립트 피처링의 멋진 개발 환경이다. 타입가드(Type…]]></description><link>https://jeonghwan-kim.github.io/dev/2021/03/18/type-guard.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2021/03/18/type-guard.html</guid><pubDate>Thu, 18 Mar 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[babel-loader와 ts-loader의 빌드 결과가 다른 현상]]></title><description><![CDATA[규모있는 자바스크립트 프로젝트의 개발 환경을 구성할 때 번들러를 사용한다. 파일간의 의존성을 분석해서 몇 개의 압축된 파일로 만들어 최적의 결과를 만들어낸다. 뿐만 아니라 웹팩 로더는 최신 ECMAScript…]]></description><link>https://jeonghwan-kim.github.io/dev/2021/03/08/babel-typescript.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2021/03/08/babel-typescript.html</guid><pubDate>Mon, 08 Mar 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[아, 전설적인 한 해였다]]></title><description><![CDATA[2020년 30개 포스팅을 발행했다. 매년 블로그에 50개 글을 쓰겠다고 계획을 세우는데 거의 달성해 본 적이 없었다.
이런 목표는 달성보다는 방향에 의미가 있는 것 같다. 마치 옛 뱃사람들의 북극성처럼 말이다. #재택근무 202…]]></description><link>https://jeonghwan-kim.github.io/think/2021/01/05/2020.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/think/2021/01/05/2020.html</guid><pubDate>Fri, 15 Jan 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[균형 감각]]></title><description><![CDATA[아버지와 자주 대화하는 편이다.
부자지간에 3…]]></description><link>https://jeonghwan-kim.github.io/think/2021/01/07/sense-of-balence.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/think/2021/01/07/sense-of-balence.html</guid><pubDate>Thu, 07 Jan 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[프론트엔드 개발자의 역할]]></title><description><![CDATA[예전에 인프런에 올린 Vue.js 강의가 지금 보니 수강평도 괜찮고 질문도 많아서 리뷰할 겸 전체 영상을 정주행 했다.
'퍼블리셔와 일한다'를 전제로 HTML/CSS…]]></description><link>https://jeonghwan-kim.github.io/think/2020/12/29/frontend-developer-roles.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/think/2020/12/29/frontend-developer-roles.html</guid><pubDate>Tue, 29 Dec 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA["당장 야금야금 부지런히 행복해야 돼"]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/think/2020/12/21/happy-now.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/think/2020/12/21/happy-now.html</guid><pubDate>Mon, 21 Dec 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[블로그에 글을 쓰는 이유]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/think/2020/11/14/the-reason-i-write.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/think/2020/11/14/the-reason-i-write.html</guid><pubDate>Sat, 14 Nov 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[서버리스 웹 애플리케이션 만들기]]></title><description><![CDATA[서버 운영에서 손을 뗀 지 4년 정도 된 것 같다.
호스팅 업체를 사용하다가 클라우드가 유행하면서 AWS로 옮겨 가상컴퓨팅머신(ec2)이나 이것저것 자동으로 만들어주는 앨라스틱 빈스톡(elastic beanstalk…]]></description><link>https://jeonghwan-kim.github.io/dev/2020/11/08/serverless-1.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2020/11/08/serverless-1.html</guid><pubDate>Sun, 08 Nov 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[업무 밀도]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/think/2020/11/01/work-density.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/think/2020/11/01/work-density.html</guid><pubDate>Sun, 01 Nov 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[styled-component로 리액트 컴포넌트 만들기]]></title><description><![CDATA[이번에 스타일드 컴포넌츠(styled-components)를 사용해 보고 기존 방식과의 차이점, 그리고 왜 이것이 더 나은지를 정리해 보고자 한다. 기존 방식의 문제점 기존에는 사스(sass…]]></description><link>https://jeonghwan-kim.github.io/dev/2020/10/25/styled-components.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2020/10/25/styled-components.html</guid><pubDate>Sun, 25 Oct 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[상태관리 라이브러리 mobx]]></title><description><![CDATA[일 년 정도 리액트, 리덕스 조합으로 사용해 봤다.
뷰(vue)나 모빅스(mobx…]]></description><link>https://jeonghwan-kim.github.io/dev/2020/10/10/mobx.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2020/10/10/mobx.html</guid><pubDate>Sat, 10 Oct 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[Gatsby.js 프리로딩과 프리패치]]></title><description><![CDATA[브라우져에서 웹 페이지 로딩 성능을 좌우하는 요소 중 하나가 리소스를 다운로드 하는것이다.
이미지, 폰트, 자바스크립트, 스타일시트 등 HTML…]]></description><link>https://jeonghwan-kim.github.io/dev/2020/08/21/gatsby-prefetch.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2020/08/21/gatsby-prefetch.html</guid><pubDate>Fri, 21 Aug 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[Gatsby.js 이미지 처리 방식]]></title><description><![CDATA[개츠비 문서를 봤을때 눈에 띄었던 것이 이미지 처리 방식이다.
화면 스크롤에 따라 이미지를 로딩하는 것(lazy load…]]></description><link>https://jeonghwan-kim.github.io/dev/2020/08/19/gatsby-image.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2020/08/19/gatsby-image.html</guid><pubDate>Wed, 19 Aug 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[react-helmet의 동작 방식]]></title><description><![CDATA[Gatsby.js 프로젝트를 보면서 react-helmet…]]></description><link>https://jeonghwan-kim.github.io/dev/2020/08/15/react-helmet.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2020/08/15/react-helmet.html</guid><pubDate>Sat, 15 Aug 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[Gatsby.js 훑어보기]]></title><description><![CDATA[뷰와 리액트를 사용한 이후 컴포넌트 기반으로 접근하는 것이 개발을 무척 단순하고 빠르게 만들었다.
이를 기반한 정적 사이트 생성기도 나왔는데 리액트의 개츠비(gatsby)와 뷰의 뷰프레스(vue-press…]]></description><link>https://jeonghwan-kim.github.io/dev/2020/07/30/gatsby.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2020/07/30/gatsby.html</guid><pubDate>Thu, 30 Jul 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[웹팩 개발 서버로 부족하다면 webpack-dev-middleware를 사용해 보자]]></title><description><![CDATA[이제 프론트엔드 개발에 웹팩은 항상 달고 다닌다.
ES6+ 뿐만 아니라 타입스크립트를 사용하려면 이것 없이는 쉽지 않다. 웹팩과 더불어 필수로 사용하는 것이 webpack-dev-server이다.
잼스택(JAM Stack…]]></description><link>https://jeonghwan-kim.github.io/dev/2020/07/18/webpack-dev-middleware.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2020/07/18/webpack-dev-middleware.html</guid><pubDate>Sat, 18 Jul 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[시퀄라이즈 Model 클래스 활용하기]]></title><description><![CDATA[시퀄라이즈로 모델링하는 방법을 한 번 정리한 적이 있는데 sequelize.define() 함수를 사용했었다.
시퀄라이즈 4 버전을 사용했는데 노드js…]]></description><link>https://jeonghwan-kim.github.io/dev/2020/07/06/sequelize-model.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2020/07/06/sequelize-model.html</guid><pubDate>Mon, 06 Jul 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[node-sass가 노드 버전에 의존적이 이유]]></title><description><![CDATA[스타일시트 전처리 언어인 sass를 사용하는데 노드 환경에서는 node-sass를 이용해 css 코드로 변환한다.
전처리 언어 중 less를 먼저 사용했는데 점차 sass를 사용하는 분위기였다.
c언어 구현체가 있는 sass…]]></description><link>https://jeonghwan-kim.github.io/dev/2020/06/27/node-sass.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2020/06/27/node-sass.html</guid><pubDate>Sat, 27 Jun 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[패스포트 동작 원리와 인증 구현]]></title><description><![CDATA[해외에 나가기 전 꼭 챙겨야 하는 것이 여권(passport…]]></description><link>https://jeonghwan-kim.github.io/dev/2020/06/20/passport.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2020/06/20/passport.html</guid><pubDate>Sat, 20 Jun 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[HTML5 폼 검증에 대해 정리해 보자]]></title><description><![CDATA[폼(Form…]]></description><link>https://jeonghwan-kim.github.io/dev/2020/06/08/html5-form-validation.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2020/06/08/html5-form-validation.html</guid><pubDate>Mon, 08 Jun 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[Node.js로 만든 API 테스트(supertest)]]></title><description><![CDATA[토이프로젝트를 하면서 테스트 코드를 어떻게 작성할까 고민이다.
보통은 1) 함수나 클래스 단위의 유닛 테스트나…]]></description><link>https://jeonghwan-kim.github.io/dev/2020/05/25/supertest.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2020/05/25/supertest.html</guid><pubDate>Mon, 25 May 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[파일명 컨벤션과 웹팩/노드 오류]]></title><description><![CDATA[내가 파일 이름을 만들때 사용했던 방식은 이런 순서대로 거쳐왔다. 스네이크 케이스(snake_case) → 케밥 케이스(cabab-case) → 카멜 케이스(camelCase) 가령 "foo bar…]]></description><link>https://jeonghwan-kim.github.io/dev/2020/05/18/filename.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2020/05/18/filename.html</guid><pubDate>Mon, 18 May 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[테스트 코드는 꼭 필요한가요?]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/think/2020/05/11/test.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/think/2020/05/11/test.html</guid><pubDate>Mon, 11 May 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[노드몬(nodemon) 사용시 포트 충돌 이슈]]></title><description><![CDATA[노드(Node.js)로 서버를 개발하다 보면 이따금씩 마주하는 현상이 있다. 요청 대기 상태로 만들기 위해 300…]]></description><link>https://jeonghwan-kim.github.io/dev/2020/04/30/nodemon-EADDRINUSE.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2020/04/30/nodemon-EADDRINUSE.html</guid><pubDate>Thu, 30 Apr 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[인터페이스만 사용하다가 클래스를 다시 보았다]]></title><description><![CDATA[만…]]></description><link>https://jeonghwan-kim.github.io/dev/2020/04/18/interface-to-class.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2020/04/18/interface-to-class.html</guid><pubDate>Sat, 18 Apr 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[알아두면 쓸데있는 VSCode 노하우]]></title><description><![CDATA[깃헙에서 만든 아톰 에디터를 즐겨 사용했던 적이 있다.
무척 가볍고 서브라임과 비슷한 UI를 가지고 있어서 단순한 모습이 무척 맘에 들었다.
그러나 가끔 발생하는 CPU 10…]]></description><link>https://jeonghwan-kim.github.io/dev/2020/04/05/vscode.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2020/04/05/vscode.html</guid><pubDate>Sun, 05 Apr 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[슬기로운 재택생활]]></title><description><![CDATA[오늘로써 재택 근무 2…]]></description><link>https://jeonghwan-kim.github.io/think/2020/03/30/remote-work.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/think/2020/03/30/remote-work.html</guid><pubDate>Mon, 30 Mar 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[오래된 아이맥, SSD 교체하기]]></title><description><![CDATA[2015년 후반에 만든 21.5인치 아이맥을 지금까지 사용하고 있으니 거의 5년이 다 되어간다.
구입 당시에 여러 옵션이 있었는데 그중에 하드 디스크 옵션에서 적잖게 망설였던 기억이 있다. HDD과 SSD…]]></description><link>https://jeonghwan-kim.github.io/think/2020/03/27/imac-ssd-replacement.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/think/2020/03/27/imac-ssd-replacement.html</guid><pubDate>Fri, 27 Mar 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[순환 참조]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/dev/2020/03/24/circular-dependancy.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2020/03/24/circular-dependancy.html</guid><pubDate>Tue, 24 Mar 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[리액트 라우터를 활용한 권한별 라우팅 제어]]></title><description><![CDATA[라우팅 로직을 만들때 매번 들어가는 것이 인증과 인가이다.
이 둘은 비슷하면서 엄연히 다른데 인증(Authentication)은 사용자를 식별하는 것이고,
인가(Authorization…]]></description><link>https://jeonghwan-kim.github.io/dev/2020/03/20/role-based-react-router.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2020/03/20/role-based-react-router.html</guid><pubDate>Fri, 20 Mar 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[플렉스(flex) 박스, 한 번 정리하고 가자]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/dev/2020/03/09/flex.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2020/03/09/flex.html</guid><pubDate>Mon, 09 Mar 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[깃(Git) 개념과 상황별 팁]]></title><description><![CDATA[git-usage 저장소가 어느새 스타 10…]]></description><link>https://jeonghwan-kim.github.io/dev/2020/02/10/git-usage.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2020/02/10/git-usage.html</guid><pubDate>Mon, 10 Feb 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[컴포넌트의 역할 분리]]></title><description><![CDATA[리액트로 프론트엔드 일을 하면서 지난 1년간 가장 많이 사용한 관련 기술이 리덕스다.
최근 Mobx…]]></description><link>https://jeonghwan-kim.github.io/dev/2020/01/28/component-design.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2020/01/28/component-design.html</guid><pubDate>Tue, 28 Jan 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[프론트엔드 개발환경의 이해: 웹팩(심화)]]></title><description><![CDATA[이전글 웹팩(기본편)에서는 웹팩의 개념과 간단한 사용법에 대해 살펴보았다.
웹팩은 프론트엔드 개발 서버를 제공하고, 몇 가지 방법으로 빌드 결과를 최적화 할 수 있는데 이번 글에서 자세히 살펴 보겠다. 1. 웹팩 개발 서버 1.…]]></description><link>https://jeonghwan-kim.github.io/series/2020/01/02/frontend-dev-env-webpack-intermediate.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2020/01/02/frontend-dev-env-webpack-intermediate.html</guid><pubDate>Thu, 02 Jan 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[프론트엔드 개발환경의 이해: 린트]]></title><description><![CDATA[1. 배경 오래된 스웨터의 보푸라기 같은 것을 린트(Lint…]]></description><link>https://jeonghwan-kim.github.io/series/2019/12/30/frontend-dev-env-lint.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2019/12/30/frontend-dev-env-lint.html</guid><pubDate>Mon, 30 Dec 2019 00:00:00 GMT</pubDate></item><item><title><![CDATA[프론트엔드 개발환경의 이해: Babel]]></title><description><![CDATA[1. 배경 1.…]]></description><link>https://jeonghwan-kim.github.io/series/2019/12/22/frontend-dev-env-babel.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2019/12/22/frontend-dev-env-babel.html</guid><pubDate>Sun, 22 Dec 2019 00:00:00 GMT</pubDate></item><item><title><![CDATA[프론트엔드 개발환경의 이해: 웹팩(기본)]]></title><description><![CDATA[1. 배경 먼저 모듈에 대해 이야기 해보자.
문법 수준에서 모듈을 지원하기 시작한 것은 ES2015부터다.
import/export…]]></description><link>https://jeonghwan-kim.github.io/series/2019/12/10/frontend-dev-env-webpack-basic.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2019/12/10/frontend-dev-env-webpack-basic.html</guid><pubDate>Tue, 10 Dec 2019 00:00:00 GMT</pubDate></item><item><title><![CDATA[프론트엔드 개발환경의 이해: NPM]]></title><description><![CDATA[몇 년 전부터 프론트엔드 개발자 채용 공고에 Node.js 기술이 우대 사항 항목으로로 추가 되었다.
Node.js…]]></description><link>https://jeonghwan-kim.github.io/series/2019/12/09/frontend-dev-env-npm.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2019/12/09/frontend-dev-env-npm.html</guid><pubDate>Mon, 09 Dec 2019 00:00:00 GMT</pubDate></item><item><title><![CDATA[IE의 ajax 캐시 이슈를 처리하는 방법]]></title><description><![CDATA[이번 프로젝트 QA 중에 IE1…]]></description><link>https://jeonghwan-kim.github.io/dev/2019/08/12/ie-cache.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2019/08/12/ie-cache.html</guid><pubDate>Mon, 12 Aug 2019 00:00:00 GMT</pubDate></item><item><title><![CDATA[리덕스 사가 사용하기 (타입스크립트 버전) - 2편]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/dev/2019/07/29/react-saga-ts-2.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2019/07/29/react-saga-ts-2.html</guid><pubDate>Mon, 29 Jul 2019 00:00:00 GMT</pubDate></item><item><title><![CDATA[리덕스 사가 사용하기 (타입스크립트 버전) - 1편]]></title><description><![CDATA[지난 글에서 정리한 것 처럼 리덕스는 다음 순서로 상태를 관리한다. 액션 객체 생성 스토어로 전달 리듀서가 액션 객체를 수신 액션 타입에 따라 전달받은 패이로드를 가지고 스토어 상태 변경 이러한 일련의 과정은 모두 동기적으로 일어난다.
가령 API…]]></description><link>https://jeonghwan-kim.github.io/dev/2019/07/22/react-saga-ts-1.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2019/07/22/react-saga-ts-1.html</guid><pubDate>Mon, 22 Jul 2019 00:00:00 GMT</pubDate></item><item><title><![CDATA[리액트 리덕스 사용하기 (타입스크립트 버전)]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/dev/2019/07/15/react-redux-ts.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2019/07/15/react-redux-ts.html</guid><pubDate>Mon, 15 Jul 2019 00:00:00 GMT</pubDate></item><item><title><![CDATA[리액트 라우터 사용하기 (타입스크립트 버전)]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/dev/2019/07/08/react-router-ts.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2019/07/08/react-router-ts.html</guid><pubDate>Mon, 08 Jul 2019 00:00:00 GMT</pubDate></item><item><title><![CDATA[리액트, 타입스크립트 시작하기]]></title><description><![CDATA[올해…]]></description><link>https://jeonghwan-kim.github.io/dev/2019/06/25/react-ts.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2019/06/25/react-ts.html</guid><pubDate>Tue, 25 Jun 2019 00:00:00 GMT</pubDate></item><item><title><![CDATA[러닝머신과 도로 위]]></title><description><![CDATA[밖에서 뛰기 좋은 날씨다. 겨울에는 헬스장에서 운동하지만 매년 돌아오는 봄에는 집 근처 공원에서 뛰는 것이 소소한 행복 중 하나다. 그런데 헬스장에서만큼 밖에서 뛰지 못한다는 것은 이상한 일이다. 러닝머신 위에서 30분 뛸 수 있는 것도 밖에서는 2…]]></description><link>https://jeonghwan-kim.github.io/think/2019/04/26/running-machine-load.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/think/2019/04/26/running-machine-load.html</guid><pubDate>Fri, 26 Apr 2019 00:00:00 GMT</pubDate></item><item><title><![CDATA[변화와 고통 그리고 집중]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/think/2019/04/15/change-pain-concentration.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/think/2019/04/15/change-pain-concentration.html</guid><pubDate>Mon, 15 Apr 2019 00:00:00 GMT</pubDate></item><item><title><![CDATA[Go로 투두 웹 어플리케이션 만들기]]></title><description><![CDATA[지금까지 Go 기본 패키지에 대해 정리했던 것을 기반으로 웹 어플리케이션을 만들어보는건 어떨까?
SPA 구조의 프론트엔드를 공부할 때 종종 둘러보는 TodoMVC를 이용하고,
Go…]]></description><link>https://jeonghwan-kim.github.io/dev/2019/02/18/go-todo-web-application.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2019/02/18/go-todo-web-application.html</guid><pubDate>Mon, 18 Feb 2019 00:00:00 GMT</pubDate></item><item><title><![CDATA[Go net/http 패키지]]></title><description><![CDATA[웹 어플리케이션을 개발하려고 Go 언어를 살펴보기 시작했다.
앞서 정리한 몇 가지 기본 패키지는 net/http 패키지를 사용하기 위한 준비 과정이라 생각하자.
이번에는 네트웍 프로그래밍을 위한 net/http 패키지 사용법을 정리해 보겠다. Get…]]></description><link>https://jeonghwan-kim.github.io/dev/2019/02/07/go-net-http.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2019/02/07/go-net-http.html</guid><pubDate>Thu, 07 Feb 2019 00:00:00 GMT</pubDate></item><item><title><![CDATA[Go encoding/json 패키지]]></title><description><![CDATA[소프트웨어는 바이트 단위로 데이터를 인식한다. 97이란 바이트 값을 정수로 보면 97이지만 문자로 보면 "a"다. 메모리 바이트는 해석하는 틀에 따라 달라지는데 이러한 변환을 '인코딩' 또는 '마샬링'이라고 한다. Go의 encoding…]]></description><link>https://jeonghwan-kim.github.io/dev/2019/01/18/go-encoding-json.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2019/01/18/go-encoding-json.html</guid><pubDate>Fri, 18 Jan 2019 00:00:00 GMT</pubDate></item><item><title><![CDATA[Go time 패키지]]></title><description><![CDATA[프로그래밍에서 시간은 꽤 빈번히 다루는 영역이다. 가령 디비에 저장된 시간을 타임존마다 다른 값으로 보여줘야 하는 경우다. 모든 언어단에서 이를 지원하지만 자바스크립트 경우 moment.js 따위의 써드파티 라이브러리를 더 애용하는 편이다. 반면 Go…]]></description><link>https://jeonghwan-kim.github.io/dev/2019/01/14/go-time.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2019/01/14/go-time.html</guid><pubDate>Mon, 14 Jan 2019 00:00:00 GMT</pubDate></item><item><title><![CDATA[Go fmt 패키지]]></title><description><![CDATA[Go 언어를 접하면서 가장 처음 사용하는 것이 fmt 패키지다. 기본적인 출력과 입력 포맷 관련한 기능을 제공하는데 이 글에서는 fmt에서 제공하는 함수와 타입의 사용법에 대해서 살펴보겠다. 템플릿 fmt…]]></description><link>https://jeonghwan-kim.github.io/dev/2019/01/08/go-fmt.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dev/2019/01/08/go-fmt.html</guid><pubDate>Tue, 08 Jan 2019 00:00:00 GMT</pubDate></item><item><title><![CDATA[기록]]></title><description><![CDATA[연말부터 서점 문구 코너에는 신년 다이어리가 브랜드마다 즐비하다. 아기자기한 디자인에서부터 고급스러움이 물씬 풍기는 가죽 커버까지 계획적으로 새해를 살겠다는 이들의 욕망을 한껏 부추긴다. 201…]]></description><link>https://jeonghwan-kim.github.io/think/2019/01/03/record.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/think/2019/01/03/record.html</guid><pubDate>Thu, 03 Jan 2019 00:00:00 GMT</pubDate></item><item><title><![CDATA[코드랩 시리즈를 마치고 느낀점]]></title><description><![CDATA[지난달 노드JS 강의는 난이도 조절 실패로 모두가 어려워했다. 종료시간은 다가오고 준비해온 것은 절반도 못해고. 초초하다. 결국에는 나중에 글로 정리해서 공유하겠다고 약속했다. 한 달이 지나서야 블로그에 정리해서 올렸다. 🌳[Node.js…]]></description><link>https://jeonghwan-kim.github.io/think/2018/12/22/codelab-review.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/think/2018/12/22/codelab-review.html</guid><pubDate>Sat, 22 Dec 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[[Node.js코드랩] 17. Express.js]]></title><description><![CDATA[🌳목표 지금까지 만들었던 웹 어플리케이션을 웹 프레임웍을 이용해서 다시 만들어 봅니다. Express.js로 다시 만들기 먼저 지난 시간까지 작성한 코드로 이동 하겠습니다. 우리가 가장 먼저 만들었던 debug 모듈을 기억하시나요?
이제는 NPM…]]></description><link>https://jeonghwan-kim.github.io/series/2018/12/17/node-web-17_expressjs.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2018/12/17/node-web-17_expressjs.html</guid><pubDate>Mon, 17 Dec 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[[Node.js코드랩] 18. 마무리]]></title><description><![CDATA[구성도 다시보기 지금까지 작성했던 모듈을 그림으로 다시 살펴 보겠습니다.
 모듈의 성격에 따라 총 4가지 섹션으로 구분합니다. Boostrap 이 섹션은 서버 어플리케이션을 구동하는 bin.js와 어플리케이션인 app.js로 구성됩니다. bin.js…]]></description><link>https://jeonghwan-kim.github.io/series/2018/12/17/node-web-18_summary.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2018/12/17/node-web-18_summary.html</guid><pubDate>Mon, 17 Dec 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[[Node.js코드랩] 16. body-parser]]></title><description><![CDATA[🌳목표 요청 바디 데이터를 처리하는 body-parser를 만듭니다.
그리고 이것을 이용해 포스트 생성 API 개발을 완료합니다. 스트림 데이터 지난 시간에 POST…]]></description><link>https://jeonghwan-kim.github.io/series/2018/12/16/node-web-16_body-parser.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2018/12/16/node-web-16_body-parser.html</guid><pubDate>Sun, 16 Dec 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[[Node.js코드랩] 15.라우터 Get, Post]]></title><description><![CDATA[🌳목표 메소드 이름으로 라우팅하는 기능을 구현합니다. POST…]]></description><link>https://jeonghwan-kim.github.io/series/2018/12/15/node-web-15_get_post.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2018/12/15/node-web-15_get_post.html</guid><pubDate>Sat, 15 Dec 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[[Node.js코드랩] 14. 요청 객체]]></title><description><![CDATA[🌳목표 Response 모듈을 만든 것처럼 익스프레스와 유사한 요청 객체인 Request…]]></description><link>https://jeonghwan-kim.github.io/series/2018/12/14/node-web-14_req.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2018/12/14/node-web-14_req.html</guid><pubDate>Fri, 14 Dec 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[[Node.js코드랩] 13. 응답 객체]]></title><description><![CDATA[🌳목표 익스프레스와 유사한 응답 객체인 Response 모듈을 만듭니다. Response 모듈 앞으로 웹 개발을 할 때 API는 자주 사용 될 것입니다.
단일 페이지 어플리케이션에서는 거의 모든 데이터를 API…]]></description><link>https://jeonghwan-kim.github.io/series/2018/12/13/node-web-13_res.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2018/12/13/node-web-13_res.html</guid><pubDate>Thu, 13 Dec 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[[Node.js코드랩] 12.포스트 조회 API]]></title><description><![CDATA[🌳목표 이전 시간에 구현한 라우터 기능을 이용해서 API를 하나 만들어 보겠습니다. 어떤 API죠? 먼저 실습을 위한 브랜치로 이동해 볼까요? 서버를 구동하고 브라우져로 접속해보세요.  "Loading…]]></description><link>https://jeonghwan-kim.github.io/series/2018/12/12/node-web-12_get-posts-api.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2018/12/12/node-web-12_get-posts-api.html</guid><pubDate>Wed, 12 Dec 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[[Node.js코드랩] 11.라우터 use]]></title><description><![CDATA[🌳목표 라우터 기능을 만들어 다양한 경로를 처리할 수 있습니다. 기존 라운팅의 한계 지금까지 우리가 만든 어플리케이션은 정적파일을 제외한 모든 요청을 index 미들웨어가 처리합니다. "GET /foo" 로 요청하더라도 index…]]></description><link>https://jeonghwan-kim.github.io/series/2018/12/11/node-web-11_router-use.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2018/12/11/node-web-11_router-use.html</guid><pubDate>Tue, 11 Dec 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[[Node.js코드랩] 10.커스텀 모듈 logger]]></title><description><![CDATA[🌳목표 요청이 오더라도 서버의 터미널에는 아무런 정보도 남아 있지 않습니다.
이번 시간에는 서버 로그를 기록하는 미들웨어인 logger를 만들어 보겠습니다.
익스프레스JS 진영의 morgan과 유사한 모듈입니다. 🐤실습 - Logger…]]></description><link>https://jeonghwan-kim.github.io/series/2018/12/10/node-web-10_logger.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2018/12/10/node-web-10_logger.html</guid><pubDate>Mon, 10 Dec 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[[Node.js코드랩] 9.미들웨어 활용]]></title><description><![CDATA[🌳목표 Middleware 모듈을 활용하여 serve-static의 문제를 해결합니다.
기존 코드도 미들웨어 형태로 개선합니다. Middleware로 Application.use…]]></description><link>https://jeonghwan-kim.github.io/series/2018/12/09/node-web-9_middleware2.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2018/12/09/node-web-9_middleware2.html</guid><pubDate>Sun, 09 Dec 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[[Node.js코드랩] 8.미들웨어]]></title><description><![CDATA[🌳목표 미들웨어 패턴을 구현하여 serve-static…]]></description><link>https://jeonghwan-kim.github.io/series/2018/12/08/node-web-8_middleware.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2018/12/08/node-web-8_middleware.html</guid><pubDate>Sat, 08 Dec 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[[Node.js코드랩] 7.커스텀 모듈 serve-static]]></title><description><![CDATA[🌳목표 이전 코드를 리팩토링하여 serve-static 모듈을 만듭니다 🐤실습 - serve-static 모듈 구현 이전 시간까지 했던 코드로 브랜치 이동하겠습니다. src/Application.js에 있는 정적파일 다루는 로직을 src/serve…]]></description><link>https://jeonghwan-kim.github.io/series/2018/12/07/node-web-7_serve-static.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2018/12/07/node-web-7_serve-static.html</guid><pubDate>Fri, 07 Dec 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[[Node.js코드랩] 6.정적 파일]]></title><description><![CDATA[🌳목표 서버에 자원 중에서 브라우져에 다운로드하여 화면을 그리는 파일을 정적파일이라고 합니다.
이번에 이 기능을 만들어 봅니다. 정적 파일이란? 미리 만들어둔 브랜치로 이동하겠습니다. public…]]></description><link>https://jeonghwan-kim.github.io/series/2018/12/06/node-web-6_static-files.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2018/12/06/node-web-6_static-files.html</guid><pubDate>Thu, 06 Dec 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[[Node.js코드랩] 5.커스텀 모듈 Debug]]></title><description><![CDATA[🌳목표 노드에서 꽤 많이 사용되는 debug 모듈을 직접 만들어 봅니다. Debug를 사용하는 이유 Debug 모듈은 노드에서 가장 많이 사용하는 디버깅 모듈입니다.
로그를 구조적으로 기록할 수 있다는 점에서 console.log…]]></description><link>https://jeonghwan-kim.github.io/series/2018/12/05/node-web-5_debug.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2018/12/05/node-web-5_debug.html</guid><pubDate>Wed, 05 Dec 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[[Node.js코드랩] 4.어플리케이션]]></title><description><![CDATA[🌳목표 우리가 만들었던 server.js는 http 모듈을 직접 가져다 사용한 것입니다.
모듈의 createServer() 함수와 listen…]]></description><link>https://jeonghwan-kim.github.io/series/2018/12/04/node-web-4_application.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2018/12/04/node-web-4_application.html</guid><pubDate>Tue, 04 Dec 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[[Node.js코드랩] 3.리팩토링]]></title><description><![CDATA[🌳목표 코드를 유연하고 읽기 쉽게 개선하는 것을 "리팩토링 한다"라고 말하는데요,
이번 글에서는 이전에 작성한 헬로월드 코드를 리팩토링 해 보겠습니다. server.js…]]></description><link>https://jeonghwan-kim.github.io/series/2018/12/03/node-web-3_refactoring.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2018/12/03/node-web-3_refactoring.html</guid><pubDate>Mon, 03 Dec 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[[Node.js코드랩] 2.기본 모듈 http]]></title><description><![CDATA[🌳목표 노드의 기본 모듈 중 네트웍 기능을 제공하는 http 모듈을 알아 봅니다.
헬로월드 코드로 http모듈을 이용한 서버 어플레케이션을 만드는 것이 목표입니다. 왜 http…]]></description><link>https://jeonghwan-kim.github.io/series/2018/12/02/node-web-2_http.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2018/12/02/node-web-2_http.html</guid><pubDate>Sun, 02 Dec 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[🌳[Node.js 코드랩] 소개 및 목차]]></title><description><![CDATA[소개 익스프레스JS(Express.js)는 노드에서 가장 많이 사용하는 웹 프레임웍 입니다. 이것을 이용해서 API…]]></description><link>https://jeonghwan-kim.github.io/series/2018/12/01/node-web-0_index.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2018/12/01/node-web-0_index.html</guid><pubDate>Sat, 01 Dec 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[[Node.js 코드랩] 1.오리엔테이션]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/series/2018/12/01/node-web-1_orientation.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/series/2018/12/01/node-web-1_orientation.html</guid><pubDate>Sat, 01 Dec 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[비오는 날, 집에서 일하기 좋은 날씨다]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/2018/11/08/remote-work.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2018/11/08/remote-work.html</guid><pubDate>Thu, 08 Nov 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[AWS를 슬랙으로 모니터링]]></title><description><![CDATA[여러 서비스를 AWS 기반으로 운영하면서 가장 많이 사용하는 컴퓨팅 서비스가 빈스톡(Elastic Beanstalk…]]></description><link>https://jeonghwan-kim.github.io/2018/10/21/aws-sns-to-slack.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2018/10/21/aws-sns-to-slack.html</guid><pubDate>Sun, 21 Oct 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[앤트 디자인 - 어드민 개발을 위한 프레임웍]]></title><description><![CDATA[dashboard…]]></description><link>https://jeonghwan-kim.github.io/2018/10/13/ant-design-101.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2018/10/13/ant-design-101.html</guid><pubDate>Sat, 13 Oct 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[리액트, 노드 백엔드 통합 후 CI 연동하기]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/2018/08/19/express-travis-beanstalk.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2018/08/19/express-travis-beanstalk.html</guid><pubDate>Sun, 19 Aug 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[React로 만든 프로젝트 톺아보기]]></title><description><![CDATA[최근 이직 후 리액트(React.js) 기반의 어드민 사이트를 만질수 있는 기회가 생겼다. AE(Account Executive…]]></description><link>https://jeonghwan-kim.github.io/2018/07/16/react-app-overview.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2018/07/16/react-app-overview.html</guid><pubDate>Mon, 16 Jul 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[VueJS 폼 검증]]></title><description><![CDATA[logo 웹 서비스를 개발할때 사용자 인터랙션이 가장 많은 부분이 폼 필드다.
단순한 로그인 화면부터 어드민의 복잡한 상품 등록 화면까지 폼은 사용자의 입력을 받아 서버로 전달하는 역할을 한다. 이 데이터가 API…]]></description><link>https://jeonghwan-kim.github.io/2018/05/31/vue-form-validation.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2018/05/31/vue-form-validation.html</guid><pubDate>Thu, 31 May 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[UI 컴포넌트 확장]]></title><description><![CDATA[brand image…]]></description><link>https://jeonghwan-kim.github.io/2018/05/12/extended-component.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2018/05/12/extended-component.html</guid><pubDate>Sat, 12 May 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[Vue-Router 살펴보기]]></title><description><![CDATA[뷰JS의 간단한 라우팅 단일 페이지 어플리케이션(SPA)에서 가장 먼저 처리해야 할 것이 바로 라우팅이다. 서버에서 라우팅은 URI에 따라 해당하는
정적파일을 내려주는 방식이다. 이를 브라우져에서 구현해야 하는것이 SPA…]]></description><link>https://jeonghwan-kim.github.io/2018/04/07/vue-router.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2018/04/07/vue-router.html</guid><pubDate>Sat, 07 Apr 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[Vuex, Vue-router, Axios를 이용한 SPA 인증 구현]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/2018/03/26/vue-authentication.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2018/03/26/vue-authentication.html</guid><pubDate>Mon, 26 Mar 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[jQuery 보다 먼저 알았으면 좋았을 것들]]></title><description><![CDATA[웹개발할 때 난 jquery 부터 사용하기 시작한것 같다. 라이브러리가 주는 편리함 넘어 어떻게 DOM API…]]></description><link>https://jeonghwan-kim.github.io/2018/01/25/before-jquery.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2018/01/25/before-jquery.html</guid><pubDate>Thu, 25 Jan 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[2017년을 보내며]]></title><description><![CDATA[작년 이맘때 회고의 글을 읽어봤다.
글 말미에 프론트엔드 개발자로 일해보겠다고 말했는데 이직을 염두해둔 말이었다. 나는 지난 201…]]></description><link>https://jeonghwan-kim.github.io/2018/01/01/review-2017.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2018/01/01/review-2017.html</guid><pubDate>Mon, 01 Jan 2018 00:00:00 GMT</pubDate></item><item><title><![CDATA[자바스크립트 this 바인딩 우선순위]]></title><description><![CDATA[자바스크립의 컨텍스트(this…]]></description><link>https://jeonghwan-kim.github.io/2017/10/22/js-context-binding.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2017/10/22/js-context-binding.html</guid><pubDate>Sun, 22 Oct 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[익스프레스 만들기 Day 4]]></title><description><![CDATA[이제 인증 기능을 만들어 보자. 쿠키, 세션, 로그인 순서로 진행하면 되겠다. 쿠키 먼저 쿠키부터 시작하자.
문서에 노드의 쿠키설정 방법을 찾았다. Set-Cookie…]]></description><link>https://jeonghwan-kim.github.io/2017/10/21/diy-express-day4.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2017/10/21/diy-express-day4.html</guid><pubDate>Sat, 21 Oct 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[익스프레스 만들기 Day 3]]></title><description><![CDATA[지금까지 만든 페이지가 포스트 조회, 생성임. 편집까지 만들어보자.
아니, 귀찮으니깐 삭제 기능부터 만들자. 삭제 기능 구현 조회 페이지의 각 포스트 하단에 삭제 버튼을 만들고 버튼을 클릭할때 호출할
DELETE /api/posts?id= API…]]></description><link>https://jeonghwan-kim.github.io/2017/10/06/diy-express-day3.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2017/10/06/diy-express-day3.html</guid><pubDate>Fri, 06 Oct 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[익스프레스 만들기 Day 2]]></title><description><![CDATA[미들웨어 구조를 만들고 났으니 기능을 추가하는 것 좀더 쉬울것 같다.
우선은 테스트 코드부터 정리하자. 기능만 우선 만들어 본다고 제대로 못했다. ... 오케이 supertest…]]></description><link>https://jeonghwan-kim.github.io/2017/10/05/diy-express-day2.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2017/10/05/diy-express-day2.html</guid><pubDate>Thu, 05 Oct 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[익스프레스 만들기 Day 1]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/2017/10/03/diy-express-day1.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2017/10/03/diy-express-day1.html</guid><pubDate>Tue, 03 Oct 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[프론트엔드 개발을 위한 Gulp]]></title><description><![CDATA[Gulp를 이용한 프론트엔드 개발 자동화에 대한 번역글입니다.
(원문: https://nystudio107.com/blog/a-gulp-workflow-for-frontend-development-automation) Gulp…]]></description><link>https://jeonghwan-kim.github.io/tool/2017/09/16/gulp-workflow-for-frentend-development.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/tool/2017/09/16/gulp-workflow-for-frentend-development.html</guid><pubDate>Sat, 16 Sep 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[에러 처리를 위한 익스프레스 가이드]]></title><description><![CDATA[원문: http://thecodebarbarian.com/80-20-guide-to-express-error-handling.html 익스프레스의 에러 처리 미들웨어는 HTTP…]]></description><link>https://jeonghwan-kim.github.io/node/2017/08/17/express-error-handling.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/node/2017/08/17/express-error-handling.html</guid><pubDate>Thu, 17 Aug 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[Node.js Stream 당신이 알아야할 모든 것 3편]]></title><description><![CDATA[원본: https://medium.freecodecamp.com/node-js-streams-everything-you-need-to-know-c9141306be93 이전글: (번역)Node.js Stream 당신이 알아야할 모든 것…]]></description><link>https://jeonghwan-kim.github.io/node/2017/08/12/node-stream-you-need-to-know-3.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/node/2017/08/12/node-stream-you-need-to-know-3.html</guid><pubDate>Sat, 12 Aug 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[Node.js Stream 당신이 알아야할 모든 것 2편]]></title><description><![CDATA[원본: https://medium.freecodecamp.com/node-js-streams-everything-you-need-to-know-c9141306be93 이전글: (번역)Node.js Stream 당신이 알아야할 모든 것…]]></description><link>https://jeonghwan-kim.github.io/node/2017/08/07/node-stream-you-need-to-know-2.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/node/2017/08/07/node-stream-you-need-to-know-2.html</guid><pubDate>Mon, 07 Aug 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[Node.js Stream 당신이 알아야할 모든 것 1편]]></title><description><![CDATA[원본: https://medium.freecodecamp.com/node-js-streams-everything-you-need-to-know-c9141306be93  노드js…]]></description><link>https://jeonghwan-kim.github.io/node/2017/07/03/node-stream-you-need-to-know.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/node/2017/07/03/node-stream-you-need-to-know.html</guid><pubDate>Mon, 03 Jul 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[웹팩의 file-loader와 url-loader]]></title><description><![CDATA[웹팩에서 이미지나 폰트같은 파일을 다루는데 file-loader와 url-loader를 많이 사용하는 것 같다. 뷰JS를 시작할 때 vue-cli를 이용해서 코드 스캐폴딩을 만들어 내는데 이 중 웹팩 설정파일에 보면 나온다. 파일을 처리하는 file…]]></description><link>https://jeonghwan-kim.github.io/js/2017/05/22/webpack-file-loader.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/js/2017/05/22/webpack-file-loader.html</guid><pubDate>Mon, 22 May 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[웹팩의 기본 개념]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/js/2017/05/15/webpack.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/js/2017/05/15/webpack.html</guid><pubDate>Mon, 15 May 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[흐름 기반 프로그래밍]]></title><description><![CDATA[이전글: (함수형JS…]]></description><link>https://jeonghwan-kim.github.io/js/2017/05/11/pipeline.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/js/2017/05/11/pipeline.html</guid><pubDate>Thu, 11 May 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[순수성, 불변성, 변경정책]]></title><description><![CDATA[이전글: (함수형JS) 함수로 함수 만들기…]]></description><link>https://jeonghwan-kim.github.io/js/2017/04/23/Purity-Immutability-and-Policies-for-Change.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/js/2017/04/23/Purity-Immutability-and-Policies-for-Change.html</guid><pubDate>Sun, 23 Apr 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[함수로 함수 만들기3 부분적용]]></title><description><![CDATA[이전글: (함수형JS) 함수로 함수 만들기2 커링  커링을 충분히 이해했다면( (함수형JS) 함수로 함수 만들기…]]></description><link>https://jeonghwan-kim.github.io/js/2017/04/21/partial-application.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/js/2017/04/21/partial-application.html</guid><pubDate>Fri, 21 Apr 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[Vue 글로벌 컴포넌트 테스트]]></title><description><![CDATA[뷰js의 장점 중 하나는 기존의 프로젝트에 점진적으로 적용할 수 있다는 점이다. 이것은 앵귤러나 리액트를 사용해 본 사람이라면 쉽게 납득할 수 있을 것이다. 앵귤러…]]></description><link>https://jeonghwan-kim.github.io/vue/2017/04/19/vue-component-test.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/vue/2017/04/19/vue-component-test.html</guid><pubDate>Wed, 19 Apr 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[함수로 함수 만들기2 커링]]></title><description><![CDATA[이전글: (함수형JS) 함수로 함수 만들기1 다형성  왜 커링을 사용하는가? 이 글에서는 함수로 함수 만들기 두 번째 시간으로 커링(currying…]]></description><link>https://jeonghwan-kim.github.io/js/2017/04/17/curry.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/js/2017/04/17/curry.html</guid><pubDate>Mon, 17 Apr 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[함수로 함수 만들기1 다형성]]></title><description><![CDATA[이전글: (함수형JS) 고차 함수  지난 글에서 고차함수를 다뤘다. 함수를 받고 다른 함수를 반환하는 고차함수를 이용하면 자바스크립트에서 다형성(polymorphism…]]></description><link>https://jeonghwan-kim.github.io/js/2017/04/10/function-by-function.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/js/2017/04/10/function-by-function.html</guid><pubDate>Mon, 10 Apr 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[고차 함수]]></title><description><![CDATA[함수형 프로그래밍을 설명하기에 앞서 프로그래밍에서는 일급 객체(First-class citizens…]]></description><link>https://jeonghwan-kim.github.io/js/2017/04/03/high-order-function-in-javascript.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/js/2017/04/03/high-order-function-in-javascript.html</guid><pubDate>Mon, 03 Apr 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[과연 Vue.js가 앵귤러나 리엑트보다 좋을까?]]></title><description><![CDATA[이 문서는 Vue.js Is Good, But Is It Better Than Angular Or React? 를 번역한 내용입니다. Vue.js…]]></description><link>https://jeonghwan-kim.github.io/vue/2017/03/29/is-vue-better-than-angular-react.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/vue/2017/03/29/is-vue-better-than-angular-react.html</guid><pubDate>Wed, 29 Mar 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[자스민으로 프론트엔드 테스트 코드 작성하기]]></title><description><![CDATA[노드에서는 모카로 테스트 코드를 작성했다. 문서도 깔끔하고 함수 사용하는 것도 간단해서 어렵지 않았다. 한편 프론트엔드에서는 테스트 러너로 자스민(Jasmine…]]></description><link>https://jeonghwan-kim.github.io/tool/2017/03/28/jasmine.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/tool/2017/03/28/jasmine.html</guid><pubDate>Tue, 28 Mar 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[Vue.js 살펴보기]]></title><description><![CDATA[첫인상 뷰js 문서를 읽어보면서 느낀것은 "쉬운데?" 앵귤러나 리엑트 문서와는 다르게 비교적 이해하기 쉬운 문서였다. 최신 유행하는 웹 프레임웍에 익숙해진 탓인지 비슷한 기술로 구현되어 있는 뷰js…]]></description><link>https://jeonghwan-kim.github.io/vue/2017/03/27/vue.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/vue/2017/03/27/vue.html</guid><pubDate>Mon, 27 Mar 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[Apex로 좀 더 편리한 람다 개발환경 만들기]]></title><description><![CDATA[웹사이트의 성능 측정을 위한 도구 중 구글의 PageSpeed 라는 툴이 있다. 웹사이트 주소를 입력하면 자바스크립트, CSS…]]></description><link>https://jeonghwan-kim.github.io/aws/2017/03/06/apex.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/aws/2017/03/06/apex.html</guid><pubDate>Mon, 06 Mar 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[의존성 주입]]></title><description><![CDATA[의존성 주입은 어떻게 사용하는가? 의존성 주입(Dependency Injection, DI)을 처음 접한 것은 앵귤러JS…]]></description><link>https://jeonghwan-kim.github.io/js/2017/02/17/dependency-injection.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/js/2017/02/17/dependency-injection.html</guid><pubDate>Fri, 17 Feb 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[시퀄라이즈에서 이모티콘 저장하기]]></title><description><![CDATA[utf8과 utf8mb4 프로젝트를 시작하고 처음 실서버에 배포할 때 겪는 실수가 있다. 데이터베이스 생성시 기본 문자셋인 latin…]]></description><link>https://jeonghwan-kim.github.io/node/2017/02/06/utf8mb4-in-sequelize.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/node/2017/02/06/utf8mb4-in-sequelize.html</guid><pubDate>Mon, 06 Feb 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[노드 개발자가 IO 작업을 시작하면 무슨일이 일어날까?]]></title><description><![CDATA[이 문서는 http://www.nearform.com/nodecrunch/developer-initiates-io-operation-wont-believe-happens-next…]]></description><link>https://jeonghwan-kim.github.io/node/2017/01/27/node-io-deep.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/node/2017/01/27/node-io-deep.html</guid><pubDate>Fri, 27 Jan 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[토이프로젝트_라이프트래커]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/toy_project/2017/01/17/life-tracker.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/toy_project/2017/01/17/life-tracker.html</guid><pubDate>Tue, 17 Jan 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[토이프로젝트_페이스북 분석기]]></title><description><![CDATA[4년전 페이스북 초창기에 몇가지 아이디어가 타임라인에 올라왔다. 페북 텍스트를 분석하면 사용자의 성향을 파악할수 있지 않을까요? 친구 관계를 점수로 매겨보는 건 어떨까요? 그래프 API를 이용해서 특정 유저의 페이스북 분석기를 만들었다. OAuth…]]></description><link>https://jeonghwan-kim.github.io/toy_project/2017/01/16/facebook-analysis.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/toy_project/2017/01/16/facebook-analysis.html</guid><pubDate>Mon, 16 Jan 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[함수형 프로그래머가 되고 싶다고? 파트6]]></title><description><![CDATA[이 문서는 https://medium.com/@cscalfani/so-you-want-to-be-a-functional-programmer-part-6-db502830403#.lmm1riwt…]]></description><link>https://jeonghwan-kim.github.io/etc/2017/01/16/so-you-want-to-be-a-functional-programmer-part-6.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/etc/2017/01/16/so-you-want-to-be-a-functional-programmer-part-6.html</guid><pubDate>Mon, 16 Jan 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[토이프로젝트_독서노트]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/toy_project/2017/01/09/reading-book.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/toy_project/2017/01/09/reading-book.html</guid><pubDate>Mon, 09 Jan 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[2016년을 보내며]]></title><description><![CDATA[시간이 지날수록 사람은 성장하기 마련이다. 지난 201…]]></description><link>https://jeonghwan-kim.github.io/etc/2017/01/02/review-2016.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/etc/2017/01/02/review-2016.html</guid><pubDate>Mon, 02 Jan 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[제너레이터와 프라미스를 이용한 비동기 처리]]></title><description><![CDATA[자바스크립트 개발에 있어 프론트엔드도 마찬가지겠지만 백엔드에도 비동기 로직이 많다. 어쩌면 대부분 비동기 작업일 수 있다. 디비를 읽고, 파일을 읽는 행위 자체가 서버의 기능인데 모두 논블락(non-block…]]></description><link>https://jeonghwan-kim.github.io/2016/12/15/coroutine.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/12/15/coroutine.html</guid><pubDate>Thu, 15 Dec 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[WebStorm에 Flow 기능 사용 후기]]></title><description><![CDATA[웹스톰 업데이트를 주기적으로 하는편인데 이번 버전에 flow라는 기능이 추가되었다. (2016.3 릴리즈노트) Flow는 페이스북에서 만든 코드 타입을 점검하는 툴인데 이것을 IDE…]]></description><link>https://jeonghwan-kim.github.io/2016/11/29/flow.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/11/29/flow.html</guid><pubDate>Tue, 29 Nov 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[Yeoman 제너레이터 만들기]]></title><description><![CDATA[작년까지만 하더라도 리엑트보다는 앵귤러가 더 인기였던것 같았다. 그래서 Angular, Nodejs, Express, MongoDB 조합의 MEAN…]]></description><link>https://jeonghwan-kim.github.io/2016/10/13/how-to-make-yeoman-generator.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/10/13/how-to-make-yeoman-generator.html</guid><pubDate>Thu, 13 Oct 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[아이맥, 커널 패닉에 빠지다]]></title><description><![CDATA[아이맥이 커널 패닉 상태에 빠졌다. 검은 화면에서 벗어나지 못하고 16진수로 표현한 메모리 주소만을 뿜어 내고 있다.  아이맥에 시에라(Sierra…]]></description><link>https://jeonghwan-kim.github.io/2016/09/27/imac-kernel-panic.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/09/27/imac-kernel-panic.html</guid><pubDate>Tue, 27 Sep 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[JSCON 2016 참관 후기]]></title><description><![CDATA[소셜과 블로그에 올라오는 파이콘 소식들을 접하면서 파이썬을 미리 공부하지 못한게 못내 아쉬웠다.
자바스크립트로 그런 비슷한게 있나 찾아봤는데 이미 2014년 부터 모임이 있었고 올해로 3년째 열리는 JSCON이라는 모임이 있었다. 이번 JSCON…]]></description><link>https://jeonghwan-kim.github.io/2016/09/03/jscon2016.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/09/03/jscon2016.html</guid><pubDate>Sat, 03 Sep 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[Angular2 Quickstart에서 사용하는 라이브러리는 왜 이렇게 많을까?]]></title><description><![CDATA[앵귤러2 공식 문서를 보기 시작했다. 퀵스타트를 하나씩 따라하고 있는데 아무래도 index.html…]]></description><link>https://jeonghwan-kim.github.io/2016/08/23/about-angular2-quickstart-libraries.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/08/23/about-angular2-quickstart-libraries.html</guid><pubDate>Tue, 23 Aug 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[앵귤러 개발자가 놓치기 쉬운 10가지 사실들]]></title><description><![CDATA[앵귤러를 처음 접한건 전문 개발자로서의 커리어를 시작한 순간부터였다. 웹 개발은 학교에서 APM…]]></description><link>https://jeonghwan-kim.github.io/2016/08/20/angular-facts-easy-to-miss.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/08/20/angular-facts-easy-to-miss.html</guid><pubDate>Sat, 20 Aug 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[Git Alias 사용법: 깃 단축키 설정하는 방법 ]]></title><description><![CDATA[깃(Git)은 코드를 관리하는데 더 없이 훌륭한 툴임이 틀림없다.
그러나 그만큼 많은 명령어를 가지고 있고 복잡한 옵션을 일일이 기억하는 것은 매우 어려운 일이다.
Bash등의 쉘이 Alias 기능을 지원하는 것처럼 깃도 Alias…]]></description><link>https://jeonghwan-kim.github.io/2016/08/16/git-alias.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/08/16/git-alias.html</guid><pubDate>Tue, 16 Aug 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[PYENV로 파이썬 버전 관리하기]]></title><description><![CDATA[지난 글에서 내 컴퓨터에 버전별로 노드를 설치하고 사용하는 방법에 대해 정리해 봤다.
그럼 파이썬은 어떤 툴이 있을까?
가끔 파이썬으로 만든 개발툴을 사용하다보면 상위버전이 나오는데 파이썬 v3를 사용해야 하는 경우가 있다.
한번은 파이썬을 v…]]></description><link>https://jeonghwan-kim.github.io/2016/08/11/pyenv.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/08/11/pyenv.html</guid><pubDate>Thu, 11 Aug 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[NVM으로 노드 버전 관리하기]]></title><description><![CDATA[기본적으로 노드는 LTS 버전인 v4를 설치해서 사용한다.
LTS…]]></description><link>https://jeonghwan-kim.github.io/2016/08/10/nvm.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/08/10/nvm.html</guid><pubDate>Wed, 10 Aug 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[Ionic으로 Hello world 시작하기]]></title><description><![CDATA[앵귤러를 사용한지 만 이년이 되었지만 아이오닉(ionic…]]></description><link>https://jeonghwan-kim.github.io/2016/08/03/ionic-hello-world.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/08/03/ionic-hello-world.html</guid><pubDate>Wed, 03 Aug 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[Istanbul로 코드 커버리지 측정하기]]></title><description><![CDATA[노드, 익스프레스로 모바일 API…]]></description><link>https://jeonghwan-kim.github.io/2016/07/28/istanbul.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/07/28/istanbul.html</guid><pubDate>Thu, 28 Jul 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[Babel로 ES6 코드 사용하기]]></title><description><![CDATA[바벨(Babel)을 처음 들은것이 작년이다.
ES6 초안이 나온 상황에서 미리 사용해 보고 싶은 이들위해 ES5용 코드로 변환해 주는 기능이다.
나는 머지않아 ES…]]></description><link>https://jeonghwan-kim.github.io/2016/07/19/babel.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/07/19/babel.html</guid><pubDate>Tue, 19 Jul 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[Sequelize Transaction 사용할때 주의할 점]]></title><description><![CDATA[노드에서 데이터베이스 ORM으로 Sequelize…]]></description><link>https://jeonghwan-kim.github.io/2016/07/13/sequelize-transaction.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/07/13/sequelize-transaction.html</guid><pubDate>Wed, 13 Jul 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[노드에서는 쿼리스트링 인코딩을 어떻게 처리할까?]]></title><description><![CDATA[디비가 없는 서버를 만들고 있다. 디비가 없다니 무슨말인가 싶을 것이다.
운영중인 웹서비스에 모바일 서비스를 추가하기위한 중계서버를 만들고 있다.
모바일 요청을 그대로 메인 서버로 전달하는 역할이다.
따라서 http 요청을 많이 하는데 url…]]></description><link>https://jeonghwan-kim.github.io/2016/06/29/querystring-body-in-express.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/06/29/querystring-body-in-express.html</guid><pubDate>Wed, 29 Jun 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[앵귤러로 Todo앱 만들기 13 - $http로 앵귤러 서비스 개선하기]]></title><description><![CDATA[이번엔는 서버와 통신하는 앵귤러 서비스 todoStorage를 수정할 차례다.
지난 포스트에서 언급했듯이 앵귤러 서비스는 백엔드 api와 http…]]></description><link>https://jeonghwan-kim.github.io/lectures/todomvc-angular/13/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/lectures/todomvc-angular/13/</guid><pubDate>Thu, 16 Jun 2016 09:00:13 GMT</pubDate></item><item><title><![CDATA[앵귤러로 Todo앱 만들기 12 - APIs]]></title><description><![CDATA[이번엔 서버의 두 번째 기능 API를 만들어 보자. API…]]></description><link>https://jeonghwan-kim.github.io/lectures/todomvc-angular/12/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/lectures/todomvc-angular/12/</guid><pubDate>Tue, 14 Jun 2016 09:00:12 GMT</pubDate></item><item><title><![CDATA[앵귤러로 Todo앱 만들기 11 - Static Files]]></title><description><![CDATA[사실 우리 싸이트의 홈페이지로 접속하면 angular로 만들었던 index.html 페이지가 로딩되는 것이 자연스럽니다.
결국은 서버에 있는 프론트엔드 코드들이 브라우져로 다운로드 되어야 하는데
이러한 파일들을 우리는 정적파일(Static Files…]]></description><link>https://jeonghwan-kim.github.io/lectures/todomvc-angular/11/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/lectures/todomvc-angular/11/</guid><pubDate>Tue, 14 Jun 2016 09:00:11 GMT</pubDate></item><item><title><![CDATA[앵귤러로 Todo앱 만들기 10 - Express.js로 웹서버 만들기]]></title><description><![CDATA[이제부터 서버를 만들어 보자.
서버 기능은 두 가지라고 앞서 얘기했다. (참고: 앵귤러로 Todo앱 만들기 1 - 노드 설치노드 설치) 정적파일 호스팅 API 기능 이것을 쉽게 구현할수 있는 것이 Express.js라고 하는 웹프레임워크다.
npm…]]></description><link>https://jeonghwan-kim.github.io/lectures/todomvc-angular/10/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/lectures/todomvc-angular/10/</guid><pubDate>Tue, 14 Jun 2016 09:00:10 GMT</pubDate></item><item><title><![CDATA[앵귤러로 Todo앱 만들기 9 - Service]]></title><description><![CDATA[다른 것도 디렉티브로 만들어 봤는지 모르겠다.
웬만하면 직접 해보는 것이 유익하다. 이번에는 컨트롤러를 쪼개 보자.
컨트롤러 스코프 변수에는 todos 변수가 있는데 이것은 투두 목록을 담고 있는 것이다.
그리고 remove(), add…]]></description><link>https://jeonghwan-kim.github.io/lectures/todomvc-angular/9/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/lectures/todomvc-angular/9/</guid><pubDate>Tue, 14 Jun 2016 09:00:09 GMT</pubDate></item><item><title><![CDATA[앵귤러로 Todo앱 만들기 8 - Directive]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/lectures/todomvc-angular/8/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/lectures/todomvc-angular/8/</guid><pubDate>Tue, 14 Jun 2016 09:00:08 GMT</pubDate></item><item><title><![CDATA[앵귤러로 Todo앱 만들기 7 - 투두 목록 필터링]]></title><description><![CDATA[우리가 ngRepeat 디렉티브를 이용해 todos 배열 데이터를 출력해 봤다.
이번에는 출력된 리스트를 필터링해 보겠다. 필터링할 수 있는 기준은 아래와 같다. completed: 완료된 투두 리스트 active: 미완료된 투두 리스트 all…]]></description><link>https://jeonghwan-kim.github.io/lectures/todomvc-angular/7/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/lectures/todomvc-angular/7/</guid><pubDate>Mon, 13 Jun 2016 09:00:07 GMT</pubDate></item><item><title><![CDATA[앵귤러로 Todo앱 만들기 6 - Bootstrap으로 꾸미기]]></title><description><![CDATA[여기서 잠깐.
이왕이면 좀더 이쁘게 만들어 보자.
가장 많이 사용하는 스타일시트 중 트위터 부트스트랩을 이용할 작성이다.
이전 포스트에서 앵귤러 라이브러리를 추가했던 과정이 기억나는가?
그렇다. NPM…]]></description><link>https://jeonghwan-kim.github.io/lectures/todomvc-angular/6/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/lectures/todomvc-angular/6/</guid><pubDate>Mon, 13 Jun 2016 09:00:06 GMT</pubDate></item><item><title><![CDATA[앵귤러로 Todo앱 만들기 5 - 새로운 투두 추가하기]]></title><description><![CDATA[이번에는 ngSubmit 디렉티브를 이용해 투두를 추가하는 방법에 대해 알아보자. 템플릿 작성 입력을 위해 텍스트 입력 필드와 추가 버튼을 만들자.
입력필드는 마찬가지로 ngModel 디렉티브로 양방향 데이터 바인딩을 설정했다.
<input type…]]></description><link>https://jeonghwan-kim.github.io/lectures/todomvc-angular/5/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/lectures/todomvc-angular/5/</guid><pubDate>Sun, 12 Jun 2016 09:00:05 GMT</pubDate></item><item><title><![CDATA[앵귤러로 Todo앱 만들기 4 - 투두 목록 출력하기]]></title><description><![CDATA[컨트롤러에 배열 데이터 만들기 우선 데이터가 있다고 가정하자.
우리 프로젝트에서 데이터는 투두 목록이다.
하나의 두투는 아이디(id), 타이틀(title), 그리고 완료여부(completed…]]></description><link>https://jeonghwan-kim.github.io/lectures/todomvc-angular/4/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/lectures/todomvc-angular/4/</guid><pubDate>Sun, 12 Jun 2016 09:00:04 GMT</pubDate></item><item><title><![CDATA[앵귤러로 Todo앱 만들기 3 - 컨트롤러]]></title><description><![CDATA[사실 앵귤러 로딩을 했다고 해서 우리의 코드가 그리고 웹문서에서 달라진 점은 거의 없다.
자바스크립트 파일 두 개가 더 다운로드 될 뿐이다.
앵귤러를 사용하려면 ngController…]]></description><link>https://jeonghwan-kim.github.io/lectures/todomvc-angular/3/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/lectures/todomvc-angular/3/</guid><pubDate>Sun, 12 Jun 2016 09:00:03 GMT</pubDate></item><item><title><![CDATA[앵귤러로 Todo앱 만들기 2 - 앵귤러 로딩]]></title><description><![CDATA[index.html 기본 html 파일부터 작성해 보자. index.html…]]></description><link>https://jeonghwan-kim.github.io/lectures/todomvc-angular/2/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/lectures/todomvc-angular/2/</guid><pubDate>Sun, 12 Jun 2016 09:00:02 GMT</pubDate></item><item><title><![CDATA[앵귤러로 Todo앱 만들기 1 - 노드설치]]></title><description><![CDATA[지금부터 Angular.js, Node.js를 이용해서 Todo앱을 만들어 보자.
본 시리즈는 총 2…]]></description><link>https://jeonghwan-kim.github.io/lectures/todomvc-angular/1/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/lectures/todomvc-angular/1/</guid><pubDate>Sun, 12 Jun 2016 09:00:01 GMT</pubDate></item><item><title><![CDATA[AWS Summit 2016 참관 후기]]></title><description><![CDATA[어제 삼성 코엑스에서 열린 AWS Summit 2016에 구경하러 갔다.
2년 전에 한번 왔었는데 그때에 비해 사람이 눈에띄가 많아졌다.
사전 등록만 6000명이라고 하니 AWS…]]></description><link>https://jeonghwan-kim.github.io/2016/05/17/aws-submit-2016.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/05/17/aws-submit-2016.html</guid><pubDate>Tue, 17 May 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[람다를 이용해 이미지 리사이징 서버 만들기]]></title><description><![CDATA[람다. 람다. 람다. 요즘 아마존웹서비스에 람다(Lambda)가 인기인가 보다.
특히 API게이트웨이와 연결하면 HTTP…]]></description><link>https://jeonghwan-kim.github.io/2016/05/13/image-resizing-with-lambda.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/05/13/image-resizing-with-lambda.html</guid><pubDate>Fri, 13 May 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[스웨거 문서 문법 체크하기]]></title><description><![CDATA[팀에 스웨거(swagger)를 도입한 이후 개발 패턴이 많이 변했다. 이전에는 API문서를 주로 깃헙 위키나 Apidoc으로 작성하고 포스트맨(Postman…]]></description><link>https://jeonghwan-kim.github.io/2016/05/13/swagger-parser.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/05/13/swagger-parser.html</guid><pubDate>Fri, 13 May 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[ECMAScript2015(ES6)로 Node.JS 코딩하기]]></title><description><![CDATA[Node.JS v4부터는 ES6를 지원하고 있다. 최근 아마존웹서비스(AWS)중 람다(Lambda)라는 서비스도 Node.js v4를 지원하기 시작했는데,
샘플코드를 보면 곳곳에 ES…]]></description><link>https://jeonghwan-kim.github.io/2016/04/28/es6.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/04/28/es6.html</guid><pubDate>Thu, 28 Apr 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[서버 개발자 입장에서 바라본 모바일 API 디자인]]></title><description><![CDATA[이 글은 지극히 서버 개발자 입장에서 생각한 모바일 API…]]></description><link>https://jeonghwan-kim.github.io/2016/03/29/mobile-rest-api.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/03/29/mobile-rest-api.html</guid><pubDate>Tue, 29 Mar 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[Promise.reject()에 에러 객체를 넘겨줘야하는 이유]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/2016/03/21/must-use-error-in-reject.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/03/21/must-use-error-in-reject.html</guid><pubDate>Mon, 21 Mar 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[Jekyll 커스터마이징 2 - 태그]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/2016/02/29/jekyll-tag.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/02/29/jekyll-tag.html</guid><pubDate>Mon, 29 Feb 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[Nock, Mocha로 HTTP 테스트하기]]></title><description><![CDATA[API…]]></description><link>https://jeonghwan-kim.github.io/2016/02/28/http-test-with-nock-mocha.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/02/28/http-test-with-nock-mocha.html</guid><pubDate>Sun, 28 Feb 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[서울에서 Elastic Beanstalk 사용하기]]></title><description><![CDATA[AWS 한국 리젼이 추가되면서 빈스톡도 서울에 설치해봤다. 프로젝트를 새로 만들고 깃 커밋을 작성한 뒤에
AWS…]]></description><link>https://jeonghwan-kim.github.io/2016/02/20/beanstalk-in-seoul.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/02/20/beanstalk-in-seoul.html</guid><pubDate>Sat, 20 Feb 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[워드프레스에서 지킬로 블로그 이동]]></title><description><![CDATA[이번 설 연휴에 뭘해 볼까하다가 블로그를 옮기기로 작심했다. 워드프레서스에 지킬(Jekyll…]]></description><link>https://jeonghwan-kim.github.io/2016/02/07/from-wordpress-to-jekyll.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/02/07/from-wordpress-to-jekyll.html</guid><pubDate>Sun, 07 Feb 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[Jekyll 커스터마이징 1 - 코멘트와 페이지네이션]]></title><description><![CDATA[지킬(Jekyll…]]></description><link>https://jeonghwan-kim.github.io/2016/02/07/jekyll-customizing.html</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2016/02/07/jekyll-customizing.html</guid><pubDate>Sun, 07 Feb 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[Sequelize Seed - 시드 데이터 관리하기]]></title><description><![CDATA[API 서버를 만들다 보면 테스트가 필요하다. 코드단에서 유닛테스트 따위를 말하는게 아니다.
서버 개발자가 만든 코드를 개발 서버에 배포한뒤 모바일 개발자가 API…]]></description><link>https://jeonghwan-kim.github.io/sequelize-seed-시드-데이터-관리하기/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/sequelize-seed-시드-데이터-관리하기/</guid><pubDate>Wed, 03 Feb 2016 12:02:53 GMT</pubDate></item><item><title><![CDATA[morgan-helper]]></title><description><![CDATA[Morgan으로 로깅하는데 POST Body도 함께 나오도록 했다.]]></description><link>https://jeonghwan-kim.github.io/morgan-helper/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/morgan-helper/</guid><pubDate>Mon, 01 Feb 2016 08:29:51 GMT</pubDate></item><item><title><![CDATA[lodash]]></title><description><![CDATA[자바스크립트 유틸리티 라이브러리로 underscore를 사용하다가 요즘은 거의 lodash로 옮겼다. 체감하지는 못하지만 성능이 좋다고 한다. 내가 살펴보는 대부분의 오픈소스도 undersocre에서 lodash로 옮기고 있는 분위기다. lodash…]]></description><link>https://jeonghwan-kim.github.io/lodash/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/lodash/</guid><pubDate>Sun, 31 Jan 2016 15:14:43 GMT</pubDate></item><item><title><![CDATA[AWS 서울 리전으로 블로그 이동]]></title><description><![CDATA[아마존웹서비스 서울 리전 출시전에는 지리적으로 한국과 가장 가까운 곳이 도쿄였다. 블로그를 도쿄에 EC…]]></description><link>https://jeonghwan-kim.github.io/aws-서울-리전으로-블로그-이동/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/aws-서울-리전으로-블로그-이동/</guid><pubDate>Sat, 30 Jan 2016 19:35:32 GMT</pubDate></item><item><title><![CDATA[Sequelize Modeling]]></title><description><![CDATA[글 순서가 반대로 되었다. 이왕 Sequelize ORM에 대해 정리할 것이라면 개발 순서에 따라 모델링부터 작성했으면 보기 좋았을 것 같다. 이번 글은 Sequelize로 테이블을 정의하는 방법(모델링)에 대해 알아보자  Definition…]]></description><link>https://jeonghwan-kim.github.io/sequelize-model/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/sequelize-model/</guid><pubDate>Tue, 26 Jan 2016 23:27:50 GMT</pubDate></item><item><title><![CDATA[Sequelize 마이그레이션]]></title><description><![CDATA[Sequelize ORM을 사용하면서 편리한 점은 마이그레이션 지원이다. 특히 운영중인 서비스의 데이터베이스를 변경할 때 편리하다. 개발 단계에서는 매번 sync({force: true…]]></description><link>https://jeonghwan-kim.github.io/sequelize-migration/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/sequelize-migration/</guid><pubDate>Thu, 14 Jan 2016 09:21:17 GMT</pubDate></item><item><title><![CDATA[Sequelize로 마이그레이션 시 외래키 추가하기]]></title><description><![CDATA[데이터베이스 ORM인 Sequelize는 마이그레이션 기능을 제공한다. 모델링을 마친 데이터베이스에 대해 변경 작업이 필요한 경우, 코드로 변경내용을 기술한 뒤 커맨드라인 명령어를 통해 마이그레이션을 진행할 수 있다. addColumn…]]></description><link>https://jeonghwan-kim.github.io/add-fk-on-sequelize-migration/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/add-fk-on-sequelize-migration/</guid><pubDate>Tue, 12 Jan 2016 22:17:40 GMT</pubDate></item><item><title><![CDATA[워드프레스 파일 업로드 시 파일명 처리]]></title><description><![CDATA[이번해 블로그 방향은 사진을 함께 첨부하는 것이다. Feedly 같은 곳에 썸네일과 함게 RSS…]]></description><link>https://jeonghwan-kim.github.io/naming-uploaded-file-on-wordpress/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/naming-uploaded-file-on-wordpress/</guid><pubDate>Mon, 11 Jan 2016 21:15:30 GMT</pubDate></item><item><title><![CDATA[NodeJS에서 가장 많이 사용하는 테스트 프레임웍, Mocha]]></title><description><![CDATA[서버와 웹프론트를 개발하면서 테스트는 항상 아쉽다. 프로젝트 초기에는 TDD…]]></description><link>https://jeonghwan-kim.github.io/mocha/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/mocha/</guid><pubDate>Tue, 05 Jan 2016 00:02:30 GMT</pubDate></item><item><title><![CDATA[boot2docker 업데이트 (v1.9)]]></title><description><![CDATA[Boot2docker를 OSX 환경에서 사용중이다. 도커 이미지를 빌드하기 위해 docker build…]]></description><link>https://jeonghwan-kim.github.io/boot2docker-업데이트-v1-9/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/boot2docker-업데이트-v1-9/</guid><pubDate>Sun, 03 Jan 2016 18:26:20 GMT</pubDate></item><item><title><![CDATA[2015 블로그 결산]]></title><description><![CDATA[2015년 마지막 날인 어제, 구독하는 블로그들을 읽다보니 2015년을 결산하는 포스팅이 자주 보였다. WhatILearn.com도 어드덧 운영한지 1년이 지났고, 올해 결산을 해보면 재미있을 것 같다. 총 90개 포스팅 10…]]></description><link>https://jeonghwan-kim.github.io/2015-블로그-결산</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/2015-블로그-결산</guid><pubDate>Fri, 01 Jan 2016 22:42:19 GMT</pubDate></item><item><title><![CDATA[ng-plualize 단수, 복수형 처리]]></title><description><![CDATA[제목 정하기가 쉽지 않다. 영어에는 단수, 복수에 대한 문법이 확연하게 드러난다. "an apple"과 "two apples". 그러나 한국어로는 사과가 몇개이든 그냥 뒤에 사과를 붙인다. 사과 2개라고 하지 사과들 2개라고 하지 않는다. ng…]]></description><link>https://jeonghwan-kim.github.io/ng-plualize-단수-복수형-처리/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/ng-plualize-단수-복수형-처리/</guid><pubDate>Mon, 21 Dec 2015 09:56:48 GMT</pubDate></item><item><title><![CDATA[Javascript Decorator Pattern]]></title><description><![CDATA[Ghost 소스를 보면서 데코레이터 패턴을 처음 보았다. 이전 포스트에 보면 http() 메쏘드 주석에 이것은 데코레이터 패턴이라고 되어있다. Decorator for API functions which are called via an HTTP…]]></description><link>https://jeonghwan-kim.github.io/javascript-decorator-pattern/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/javascript-decorator-pattern/</guid><pubDate>Sun, 13 Dec 2015 08:20:53 GMT</pubDate></item><item><title><![CDATA[Swagger-node로 express 시작하기]]></title><description><![CDATA[스웨거 개념을 잡느라 상당한 시간을 소요하고 있다. 이전 포스트에서는 기존프로젝트에 스웨거를 적용하는 방법에 대해 정리하였다. 이번에는 노드 익스프레스(Express.js…]]></description><link>https://jeonghwan-kim.github.io/swagger-node/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/swagger-node/</guid><pubDate>Fri, 11 Dec 2015 11:40:31 GMT</pubDate></item><item><title><![CDATA[mongodump 크론잡이 동작하지 않을 때]]></title><description><![CDATA[서비스 중인 몽고디비 백업을 위해 크론잡에 등록해 놓았다. mongodump로 덤프 뜨고 압축해서 S3로 매일 한번씩 백업하는 스크립트다. 스크립트 파일을 꼼꼼히 작성하고 커맨트창에서 실행해 보니 잘 동작한다. 약…]]></description><link>https://jeonghwan-kim.github.io/mongodump-is-not-working-on-cronjob/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/mongodump-is-not-working-on-cronjob/</guid><pubDate>Mon, 07 Dec 2015 20:55:16 GMT</pubDate></item><item><title><![CDATA[우분투에 Django-admin, mysql-python 설치]]></title><description><![CDATA[우분투에서 pip가 동작하지 않을 때 로컬에서 장고 프로젝트 테스트를 모두 마쳤다. 이를 우분투 실서버에 올려서 웹에 공개하는 일만 남았다. 장고 설치를 위해 pip…]]></description><link>https://jeonghwan-kim.github.io/우분투에-django-admin-mysql-python-설치/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/우분투에-django-admin-mysql-python-설치/</guid><pubDate>Thu, 03 Dec 2015 18:04:28 GMT</pubDate></item><item><title><![CDATA[gunicorn: 장고 어드민 프로덕션 서버에 구동하기]]></title><description><![CDATA[runserver로 장고 서버를 구동할수 있지만 운영서버에서는 사용하지 말아야한다. (참고) 백그라운드 프로세스로 구동할 수 있지만 성능이나 안전성 이슈가 있는가 보다. gunicon…]]></description><link>https://jeonghwan-kim.github.io/gunicorn-장고-어드민-프로덕션-서버에-구동하기/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/gunicorn-장고-어드민-프로덕션-서버에-구동하기/</guid><pubDate>Thu, 03 Dec 2015 17:12:21 GMT</pubDate></item><item><title><![CDATA[기존 데이터베이스에 장고 어드민 통합하기]]></title><description><![CDATA[운영중인 서비스의 MySql…]]></description><link>https://jeonghwan-kim.github.io/기존-mysql에-장고-어드민-붙이기/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/기존-mysql에-장고-어드민-붙이기/</guid><pubDate>Wed, 02 Dec 2015 20:19:58 GMT</pubDate></item><item><title><![CDATA[페이스북 토큰 권한 확인 주소]]></title><description><![CDATA[https://graph.facebook.com/me/permissions?access_token=]]></description><link>https://jeonghwan-kim.github.io/페이스북-토큰-권한-확인-주소/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/페이스북-토큰-권한-확인-주소/</guid><pubDate>Wed, 02 Dec 2015 14:46:07 GMT</pubDate></item><item><title><![CDATA[Ghost 라우팅 로직 분석]]></title><description><![CDATA[Php에서는 워드프레스, NodeJS에서는 Ghost를 많이 사용한다. 노드로 API 서버를 만드는 일이 많아 지다보니 다른 사람은 어떻게 구현하나 궁금한 점이 많다. 노드로 만든 CMS 오픈소스 중 가장 인기있는 프로젝트인 Ghost의 백엔드 API…]]></description><link>https://jeonghwan-kim.github.io/ghost-라우팅-로직-분석/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/ghost-라우팅-로직-분석/</guid><pubDate>Mon, 30 Nov 2015 22:40:51 GMT</pubDate></item><item><title><![CDATA[카카오 인증 테스트]]></title><description><![CDATA[카카오 API를 이용해서 인증하는 과정을 정리해보자. 카카오 로그인 페이지를 띄워서 사용자로부터 로그인 및 각 리소스의 접근 권한 동의를 얻은 다음 액세스 토큰을 얻는다. 이후에 사용하는 API…]]></description><link>https://jeonghwan-kim.github.io/카카오-인증-테스트/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/카카오-인증-테스트/</guid><pubDate>Sat, 28 Nov 2015 18:53:58 GMT</pubDate></item><item><title><![CDATA[Atom 플러그인: atom-sync]]></title><description><![CDATA[가끔은 리모트 서버에 접속해서 PHP 코드를 수정해야 하는 경우가 있다. 간단한 경우야 리눅스 서버에 설치된 VIM 에디터로 작업할수 있지만 파일간 이동이 잦거나하면 솔직히 답답하다. EditPlus, Coda 처럼 Atom…]]></description><link>https://jeonghwan-kim.github.io/atom-플러그인-atom-sync/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/atom-플러그인-atom-sync/</guid><pubDate>Wed, 25 Nov 2015 20:48:34 GMT</pubDate></item><item><title><![CDATA[기존 프로젝트와 Swagger-ui 연동하기]]></title><description><![CDATA[모바일 API를 개발하면서 클라이언트 개발자와 협업하기 위해 API 문서를 작성한다. 보통은 깃헙 위키를 사용하는데 쉽게 편집하고 공개할수 있는게 장점이 다. 한 때는 APIDOC을 사용하기도 했다. 코드에 주석으로 문서를 작성하면 html…]]></description><link>https://jeonghwan-kim.github.io/기존-프로젝트와-swagger-ui-연동하기/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/기존-프로젝트와-swagger-ui-연동하기/</guid><pubDate>Tue, 24 Nov 2015 20:33:24 GMT</pubDate></item><item><title><![CDATA[Atom 에디터 플러그인 정리]]></title><description><![CDATA[Atom…]]></description><link>https://jeonghwan-kim.github.io/atom-에디터-플러그인-정리/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/atom-에디터-플러그인-정리/</guid><pubDate>Wed, 11 Nov 2015 20:34:05 GMT</pubDate></item><item><title><![CDATA[karma에 리포터 추가하기]]></title><description><![CDATA[karma와 watch로 유닛테스트 코드 개발하기에 이어 karma에 리포터 추가 방법에 대해 알아보자. 리포터 설정 기본적으로 두 가지 방식의 리포터를 설정할수 있는데, dots와 progress다. 이를 karma.conf.js…]]></description><link>https://jeonghwan-kim.github.io/karma에-리포터-추가하기/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/karma에-리포터-추가하기/</guid><pubDate>Wed, 11 Nov 2015 19:44:34 GMT</pubDate></item><item><title><![CDATA[karma와 watch로 유닛테스트 코드 개발하기]]></title><description><![CDATA[Karma는 프로론트엔드 유닛테스를 위한 라이브러리다. Grunt와 함께 사용하는 방법에 대해 살펴보자. Grunt에서 사용할 Karma를 설치한다. Gruntfile.js Gruntfile을 작성한다. Gruntfile에서는 먼저 karma…]]></description><link>https://jeonghwan-kim.github.io/karma와-watch로-유닛테스트-코드-개발하기/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/karma와-watch로-유닛테스트-코드-개발하기/</guid><pubDate>Wed, 04 Nov 2015 10:49:41 GMT</pubDate></item><item><title><![CDATA[서버 구동시 버전 체크]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/서버-구동시-버전-체크/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/서버-구동시-버전-체크/</guid><pubDate>Fri, 30 Oct 2015 09:29:05 GMT</pubDate></item><item><title><![CDATA[앵귤러로 만든 spa 프로그램을 아마존웹서비스 s3에서 웹호스팅 하는 방법]]></title><description><![CDATA[앵귤러 코드 SPA를 위한 앵귤러 코드를 살펴보자. angular.config() 함수에서 $locationProvider.html5Mode()를 호출한다. 이렇게 설정하면 /, /about로 라우팅 할수 있다. 없는 페이지는 404.html…]]></description><link>https://jeonghwan-kim.github.io/앵귤러로-만든-spa-프로그램을-아마존웹서비스-s3에서-웹/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/앵귤러로-만든-spa-프로그램을-아마존웹서비스-s3에서-웹/</guid><pubDate>Tue, 27 Oct 2015 10:08:59 GMT</pubDate></item><item><title><![CDATA[도커에서 몽고디비 컨테이너 사용하기]]></title><description><![CDATA[몽고디비는 이를 사용하는 서버(API 서버등)와 별도로 구현한다.
도커를 사용하여 각각 별도의 컨테이너로 실행하여 서버를 구성할 수 있다. 몽고 서버 만들기 몽고 이미지 다운로드 hub.docker.com 에서 'mongo…]]></description><link>https://jeonghwan-kim.github.io/도커에서-몽고디비-컨테이너-사용하기/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/도커에서-몽고디비-컨테이너-사용하기/</guid><pubDate>Fri, 16 Oct 2015 17:33:59 GMT</pubDate></item><item><title><![CDATA[SimpleTest & php unit test]]></title><description><![CDATA[Php 유닛 테스트 라이브러 중 하나이다. PHPUnit과 SimpleTest 중 후자가 바로 사용하기 간단해 보임. 라이브러리 다운로드 simpletest…]]></description><link>https://jeonghwan-kim.github.io/simpletest-php-unit-test/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/simpletest-php-unit-test/</guid><pubDate>Tue, 13 Oct 2015 17:17:22 GMT</pubDate></item><item><title><![CDATA[git push 이벤트를 slack 채널로 보내기]]></title><description><![CDATA[회사에 슬랙을 도입하면서 모든 알람을 이곳에서 확인할 수 있다. 깃(Git) 훅을 이용해 서버를 재가동하는 구조라면 서버 재가동시마다 이벤트를 슬랙의 특정 채널로 보낼수 있다. 이번 글에서는 슬랙 API…]]></description><link>https://jeonghwan-kim.github.io/git-push-이벤트를-slack-채널로-보내기/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/git-push-이벤트를-slack-채널로-보내기/</guid><pubDate>Thu, 01 Oct 2015 19:59:03 GMT</pubDate></item><item><title><![CDATA[osx 노트 글꼴 변경]]></title><description><![CDATA[iOS9이 나오면서 노트 앱에도 큰 변화가 있었다. 점점 노트 어플리케이션으로서 다른 프로그램에 뒤지지 않을 기능을 갖춰 나가는 것 같다. 한 가지 아쉬운 점은 활자가 너무 작다. 좀 키우고 싶은데 메뉴에 없다. plist…]]></description><link>https://jeonghwan-kim.github.io/osx-노트-글꼴-변경/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/osx-노트-글꼴-변경/</guid><pubDate>Mon, 28 Sep 2015 15:48:23 GMT</pubDate></item><item><title><![CDATA[mysql 데이터베이스 삭제 에러]]></title><description><![CDATA[문제 mysql 테이블을 삭제할 경우 아래 오류 메세지를 보는 경우가 있다. osx에서 homebrew로 mysql을 설치한 환경이다. 이럴 경우 직접 테이블 폴더를 삭제하면 해결할 수 있다. 데이터 폴더 삭제 mysql 데몬을 실행할때 mysql…]]></description><link>https://jeonghwan-kim.github.io/mysql-데이터베이스-삭제-에러/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/mysql-데이터베이스-삭제-에러/</guid><pubDate>Sun, 27 Sep 2015 12:27:46 GMT</pubDate></item><item><title><![CDATA[원격로그인(SSH) 접속]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/원격로그인ssh-접속/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/원격로그인ssh-접속/</guid><pubDate>Wed, 23 Sep 2015 09:27:20 GMT</pubDate></item><item><title><![CDATA[도커 활용기]]></title><description><![CDATA[도커를 활용한 예제입니다.
우분투 서버에 노드를 설치하고 익스프레스 엔진으로 서버를 구현하는 방법에 대해 설명합니다.
우리는 포에버를 이용해 서버를 구동할 것입니다. 서버 구성은 아래와 같습니다. Ubuntu 14.04 Node.js 0.1…]]></description><link>https://jeonghwan-kim.github.io/docker-usage/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/docker-usage/</guid><pubDate>Sat, 19 Sep 2015 15:16:40 GMT</pubDate></item><item><title><![CDATA[Forever와 Docker]]></title><description><![CDATA[포에버(Forever)는 노드를 구동해주는 모듈이다. 이렇게 실행하면 (1) 노드 프로그램을 구동해 주고 (…]]></description><link>https://jeonghwan-kim.github.io/forever-and-docker/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/forever-and-docker/</guid><pubDate>Sat, 19 Sep 2015 14:12:03 GMT</pubDate></item><item><title><![CDATA[익스프레스 API 서버 테스트 코드 작성하기]]></title><description><![CDATA[익스프레스 테스트 코드 작성하기 이 글은 익스프레스에서 유닛 테스트 코드를 작성하는 방법에 대해서 기술합니다. 설치 Express.js 설치 Mocha.js, Should.js 설치 테스트 러너인 모카(Mocha.js…]]></description><link>https://jeonghwan-kim.github.io/익스프레스-api-서버-테스트-코드-작성하기/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/익스프레스-api-서버-테스트-코드-작성하기/</guid><pubDate>Tue, 15 Sep 2015 11:55:36 GMT</pubDate></item><item><title><![CDATA[안쓰는 iMac을 맥북 외장 모니터로 사용하자!]]></title><description><![CDATA[맥북에 아이맥을 연결해서 사용해 보자. 아이맥은 타겟 디스플레이 모드(TDM…]]></description><link>https://jeonghwan-kim.github.io/안쓰는-imac을-맥북-외장-모니터로-사용하자/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/안쓰는-imac을-맥북-외장-모니터로-사용하자/</guid><pubDate>Fri, 11 Sep 2015 21:56:33 GMT</pubDate></item><item><title><![CDATA[Agenda]]></title><description><![CDATA[특정 시간 혹은 주기로 어떤 작업을 처리해야 할때 리눅스의 크론(Cron)을 사용한다. 노드에서는 cron-node…]]></description><link>https://jeonghwan-kim.github.io/agenda/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/agenda/</guid><pubDate>Thu, 10 Sep 2015 23:03:16 GMT</pubDate></item><item><title><![CDATA[깃(git) 서버 만들기]]></title><description><![CDATA[깃헙만 사용하지말고 깃서버도 만들어서 사용해보자. 서버세팅 깃 설치: 깃 서버용 계정 추가: 깃 프로토콜을 ssh로 할거니깐 로컬의 ssh…]]></description><link>https://jeonghwan-kim.github.io/깃git-서버-만들기/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/깃git-서버-만들기/</guid><pubDate>Tue, 08 Sep 2015 20:12:06 GMT</pubDate></item><item><title><![CDATA[크론을 사용할때 서버 시간을 정확히 맞추자]]></title><description><![CDATA[일정한 주기로 서버에서 어떤 일을 처리할 때, 크론(Cron)을 사용한다. 모바일로 푸시노티피케이션을 주기적으로 보내야 할때, 혹은 실시간으로 처리하지 않고 쌓아둔 작업을 한번에 처리할 때 크론을 사용하면 좋다. 노드(Nodejs)에서는 node…]]></description><link>https://jeonghwan-kim.github.io/크론을-사용할때-서버-시간을-정확히-맞추자/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/크론을-사용할때-서버-시간을-정확히-맞추자/</guid><pubDate>Tue, 08 Sep 2015 20:10:54 GMT</pubDate></item><item><title><![CDATA[Docker + Git]]></title><description><![CDATA[도커랑 깃이랑 연동해서 사용해 보자. 그전에 빈스톡에서 개발한 경험을 되새겨 보자. 코딩 배포용 코드 빌드 빌드파일 커밋 빈스톡 커맨드라인으로 커밋 푸시 (eb push…]]></description><link>https://jeonghwan-kim.github.io/docker-git/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/docker-git/</guid><pubDate>Mon, 07 Sep 2015 10:55:26 GMT</pubDate></item><item><title><![CDATA[개발 절차에 도커 적용하기]]></title><description><![CDATA[저의 개발 순서는 이렇습니다. (1) 소스코드를 작성한다. Node.js로 서버를 띄우고 노드 이외에 필요한 라이브러리는 Homebrew로 설치합니다. 소스코드는 깃(Git)으로 버전관리 합니다. (…]]></description><link>https://jeonghwan-kim.github.io/개발-절차에-도커-적용하기/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/개발-절차에-도커-적용하기/</guid><pubDate>Wed, 02 Sep 2015 11:13:03 GMT</pubDate></item><item><title><![CDATA[카페24 SMS node 모듈]]></title><description><![CDATA[카페24 문자 발송 서비스를 노드(Node.JS)에서 구현한 모듈입니다. https://github.com/jeonghwan-kim/cafe24.sms.node]]></description><link>https://jeonghwan-kim.github.io/카페24-sms-node-모듈/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/카페24-sms-node-모듈/</guid><pubDate>Mon, 31 Aug 2015 14:16:34 GMT</pubDate></item><item><title><![CDATA[아톰 에디터 외모 변경하기]]></title><description><![CDATA[지난 주 발표를 하면서 아톰(Atom…]]></description><link>https://jeonghwan-kim.github.io/아톰-에디터-외모-변경하기/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/아톰-에디터-외모-변경하기/</guid><pubDate>Sun, 30 Aug 2015 11:28:05 GMT</pubDate></item><item><title><![CDATA[sequalize 쿼리]]></title><description><![CDATA[ORM을 써보기 시작했다. Sequeilize. 편리한 점이 한 두가지가 아니다.  (1) 무엇보다 쿼리를 주저리 주저리 입력하지 않아도 알아서 보내준다는 점이 편리하다. (…]]></description><link>https://jeonghwan-kim.github.io/sequalize-쿼리/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/sequalize-쿼리/</guid><pubDate>Sat, 22 Aug 2015 15:22:13 GMT</pubDate></item><item><title><![CDATA[$resource로 REST api 사용하기]]></title><description><![CDATA[REST API와 $resource 앵귤러에서 AJAX를 이용한 서버 통신은 $http 서비스를 사용한다. 제이쿼리의 ajax() 함수와 사용법이 유사하다. 그러나 REST API로 구현된 백엔드 서버의 자원을 사용한다면 $http…]]></description><link>https://jeonghwan-kim.github.io/resource로-rest-api-사용하기/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/resource로-rest-api-사용하기/</guid><pubDate>Thu, 13 Aug 2015 23:32:53 GMT</pubDate></item><item><title><![CDATA[$$postDigest()와 $timeout()]]></title><description><![CDATA[배경 앵귤러에서 뷰와 데이터를 연결하는 것이 스코프다. 데이터가 변경되는 것에 따라 뷰에 반영해야 하는데 Digest 싸이클을 통해 이뤄진다. Digest 싸이클을 통해 변경된 스코프 변수는 자동으로 뷰에 반영된다. 이것은 Digest…]]></description><link>https://jeonghwan-kim.github.io/postdigest와-timeout/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/postdigest와-timeout/</guid><pubDate>Wed, 12 Aug 2015 00:35:20 GMT</pubDate></item><item><title><![CDATA[Oh My Zsh로 터미널 꾸미기]]></title><description><![CDATA[주로 맥 기본 터미널을 사용한다. iTerms가 있지만 그래도 기본 터미널이 제공해 주는 기능으로도 충분하기 때문입니다. 터미널에 설치하여 터미널을 좀더 재밌게 사용할 수 있는 Oh My Zsh 를 소개한다. Curl로 간단히 설치: $ curl -L…]]></description><link>https://jeonghwan-kim.github.io/oh-my-zsh로-터미널-꾸미기/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/oh-my-zsh로-터미널-꾸미기/</guid><pubDate>Mon, 10 Aug 2015 14:41:05 GMT</pubDate></item><item><title><![CDATA[grunt open]]></title><description><![CDATA[Grunt, Gulp등 프로젝트 빌드툴을 사용하면 편리한 점이 한 두가지가 아니다. 브라우져를 자동으로 띄워주는grunt-open부터 살펴보자. 기능 grunt-open 은 웹개발시 개발 URL…]]></description><link>https://jeonghwan-kim.github.io/grunt-open/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/grunt-open/</guid><pubDate>Mon, 10 Aug 2015 09:38:30 GMT</pubDate></item><item><title><![CDATA[Express.js - 3. 템플릿(Jade)]]></title><description><![CDATA[익스프레스(Express.js)를 설치하고 라우팅 설정을 마쳤으면 웹페이지 서비스 방법에 대해 알아보자. 익스프레스는 템플릿 엔진을 이용해서 웹페이지를 생성하는데 제이드(Jade)가 대표적이다. 템플릿과 연결된 스타일시트는 기본적으로 CSS…]]></description><link>https://jeonghwan-kim.github.io/express-js-3-템플릿jade/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/express-js-3-템플릿jade/</guid><pubDate>Tue, 04 Aug 2015 21:00:46 GMT</pubDate></item><item><title><![CDATA[Express.js - 2. 라우팅]]></title><description><![CDATA[클라이언트가 서버로 접속할때는 특정한 URL를 통해 접속한다. 서버에서는 이 URL에 해당하는 자원을 클라이언트로 보내준다. 혹은 POST요청일 경우는 자원을 만들기도 한다. 이러한 클라이언트 요청을 위한 URL…]]></description><link>https://jeonghwan-kim.github.io/express-js-2-라우팅/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/express-js-2-라우팅/</guid><pubDate>Mon, 03 Aug 2015 09:56:22 GMT</pubDate></item><item><title><![CDATA[Express.js - 1. 설치와 구조]]></title><description><![CDATA[설치 노드 모듈로 작성된 익스프레스는 노드 관리 파일인 package.json에 express…]]></description><link>https://jeonghwan-kim.github.io/express-js-1-설치와-구조/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/express-js-1-설치와-구조/</guid><pubDate>Thu, 30 Jul 2015 22:12:40 GMT</pubDate></item><item><title><![CDATA[리눅스 데몬으로 노드 어플리케이션 관리하기]]></title><description><![CDATA[운영 서버에서 노드 어플리케이션은 forever 모듈로 관리한다. forever start app.js 기본적으로는 이러한 명령이지만 NODE_ENV, PORT등의 환경 변수를 설정한다거나 forever…]]></description><link>https://jeonghwan-kim.github.io/리눅스-데몬으로-노드-어플리케이션-관리하기/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/리눅스-데몬으로-노드-어플리케이션-관리하기/</guid><pubDate>Wed, 29 Jul 2015 23:04:12 GMT</pubDate></item><item><title><![CDATA[이미지 업로드 – 2. gm 모듈로 이미지 리사이징]]></title><description><![CDATA[Multer 모듈로 이미지 업로드에 성공했다면 서버에 업로드된 이미지 파일 경로을 알수 있다. 이번 글에는  gm 모듈을 사용하여 이미지 리사이징 하는 방법에 대해 알아본다. 설치 노드에서 많이 사용하는 이미지 프로세싱 라이브러리 중 하나인 gm…]]></description><link>https://jeonghwan-kim.github.io/이미지-업로드-2-gm-모듈로-이미지-리사이징/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/이미지-업로드-2-gm-모듈로-이미지-리사이징/</guid><pubDate>Mon, 27 Jul 2015 17:10:21 GMT</pubDate></item><item><title><![CDATA[이미지 업로드 - 1. multer 모듈로 파일 업로드]]></title><description><![CDATA[이미지 리사이징을 할 때 두 가지 방법을 고려할 수 있다. 1) 브라우져에서 크롭하여 다양한 이미지 크기를 생성한 뒤 서버에 보내는 방법.…]]></description><link>https://jeonghwan-kim.github.io/이미지-업로드-1-multer-모듈로-파일-업로드/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/이미지-업로드-1-multer-모듈로-파일-업로드/</guid><pubDate>Mon, 27 Jul 2015 17:09:22 GMT</pubDate></item><item><title><![CDATA[웹스톰 Dusk 테마]]></title><description><![CDATA[Xcode 사용하던 iOS 개발자가 항상 부러웠습니다. 그래서 웹스톰에서도 사용할 수 있는 Dusk 테마를 만들어 봤습니다. https://github.com/jeonghwan-kim/Dusk]]></description><link>https://jeonghwan-kim.github.io/dusk-theme-in-webstorm/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/dusk-theme-in-webstorm/</guid><pubDate>Sun, 26 Jul 2015 21:42:47 GMT</pubDate></item><item><title><![CDATA[ngForm 사용자 정의 밸리데이터 만들기]]></title><description><![CDATA[폼필드 중 이메일 입력은 type="email"로 선언한다. 앵귤러 폼에서도 이러한 이메일 입력폼에 대해 검증하고 그 결과를 앵귤러 폼 객체에 저장한다. 실제로 어떻게 동작하는지 살펴보자. ngForm…]]></description><link>https://jeonghwan-kim.github.io/ngform-사용자-정의-밸리데이터-만들기/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/ngform-사용자-정의-밸리데이터-만들기/</guid><pubDate>Fri, 24 Jul 2015 21:08:44 GMT</pubDate></item><item><title><![CDATA[ngForm 밸리데이터 활용]]></title><description><![CDATA[ngForm 클래스명 활용하기에서 앵귤러 폼에서 자동으로 붙여주는 클래스에 대해 확인해봤다. 그중 .ng-invalid, .ng-valid클래스가 붙는데 다음과 같은 경우에 발생한다. 인풋 필드의 타입이 type="number…]]></description><link>https://jeonghwan-kim.github.io/ngform-밸리데이터-활용/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/ngform-밸리데이터-활용/</guid><pubDate>Fri, 24 Jul 2015 09:10:27 GMT</pubDate></item><item><title><![CDATA[passport-google-oauth 구글 인증 모듈]]></title><description><![CDATA[(1) 웹 콘솔에 접속하여 프로젝트를 생성한다. (2) 생성된 프로젝트 상세 화면으로 이동한 뒤 사용자 인증 정보 메뉴로 이동한다. (3) 새 클라이언트 ID 만들기 버튼을 클릭하고 승인된 리디렉션 URI…]]></description><link>https://jeonghwan-kim.github.io/passport-google-oauth-구글-인증-모듈/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/passport-google-oauth-구글-인증-모듈/</guid><pubDate>Thu, 23 Jul 2015 21:50:03 GMT</pubDate></item><item><title><![CDATA[ngForm 클래스명 활용하기]]></title><description><![CDATA[앵귤러 폼을 구성하기 위해서는 (1) <form name="form"> 처럼 폼에 name 키 값을 설정해 주어야 한다. 이것은 컨트롤러에서 $scope.form으로 접근할 수 있다. (2) input 필드에 name과 ng-model…]]></description><link>https://jeonghwan-kim.github.io/ngform-클래스명-활용하기/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/ngform-클래스명-활용하기/</guid><pubDate>Tue, 21 Jul 2015 23:47:11 GMT</pubDate></item><item><title><![CDATA[Mi Band, Moves, Rocket Pocket]]></title><description><![CDATA[샤오미의 미밴드(Mi Band)를 한달간 사용해 봤다. 가장 궁금한 것은 이 가격에 얼마나 정확한 데이터를 뽑아낼수 있느냐이다. 현재 사용 중인 다른 서비스와 비교해 봤다. (1) 스마트폰으로 자동으로 이동거리 측정하는 무브스(Moves)와 (…]]></description><link>https://jeonghwan-kim.github.io/mi-band-moves-rocket-pocket/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/mi-band-moves-rocket-pocket/</guid><pubDate>Sun, 19 Jul 2015 19:25:06 GMT</pubDate></item><item><title><![CDATA[Socket.io를 이용한 실시간 웹 구현]]></title><description><![CDATA[TCP/IP 소켓프로그래밍이라는 도서가 생각나는가? 인터넷의 다른 컴퓨터와 연결할 수 있다는 사실에 몇번이고 다시 읽었던 책이다. 이러한 소켓을 웹 프로토콜에서도 사용할수 있다. 80번 포트를 그대로 사용하면서 http…]]></description><link>https://jeonghwan-kim.github.io/socket-io를-이용한-실시간-웹-구현/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/socket-io를-이용한-실시간-웹-구현/</guid><pubDate>Tue, 07 Jul 2015 22:14:13 GMT</pubDate></item><item><title><![CDATA[이니페이 모바일 결제 (계좌이체) 개발 후기]]></title><description><![CDATA[iconv('EUCKR', 'UTF8', 파라메터)]]></description><link>https://jeonghwan-kim.github.io/이니페이-모바일-결제-계좌이체-개발-후기/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/이니페이-모바일-결제-계좌이체-개발-후기/</guid><pubDate>Fri, 26 Jun 2015 09:14:45 GMT</pubDate></item><item><title><![CDATA[momentjs]]></title><description><![CDATA[자바스크립트에서는 날짜/시간을 다루기 위해 Date 객체를 사용합니다. 다양한 출력 함수를 지원하고 있지만 필요한 기능은 직접 만들어야 할때가 있습니다. '2016-06-19' 이라던지 '07:4…]]></description><link>https://jeonghwan-kim.github.io/momentjs/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/momentjs/</guid><pubDate>Fri, 19 Jun 2015 08:12:10 GMT</pubDate></item><item><title><![CDATA[이니페이 모바일 결제 (신용카드) 개발 후기]]></title><description><![CDATA[이니시스 모바일 결제 서비를 사용하게되어 시작함. 개발 문서도 샘플 소스도 제공하지만 한참이나 삽질을 거듭한 후 테스트 결제에 성공함.  대략적으로 작성된 개발 문서와…]]></description><link>https://jeonghwan-kim.github.io/이니페이-모바일-결제-신용카드-개발-후기/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/이니페이-모바일-결제-신용카드-개발-후기/</guid><pubDate>Thu, 18 Jun 2015 09:03:02 GMT</pubDate></item><item><title><![CDATA[Google Material Design]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/google-material-design/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/google-material-design/</guid><pubDate>Sun, 14 Jun 2015 15:20:29 GMT</pubDate></item><item><title><![CDATA[REST api에 OAuth2.0 구현]]></title><description><![CDATA[노드 익스프레스 엔진으로 api 서버를 구축할때 보통 인증부분은 패스포트(passport…]]></description><link>https://jeonghwan-kim.github.io/oauth2-0-in-rest-api/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/oauth2-0-in-rest-api/</guid><pubDate>Thu, 11 Jun 2015 15:31:20 GMT</pubDate></item><item><title><![CDATA[프론트에서 잡지 못한 예외를 서버에 리포팅하는 방법]]></title><description><![CDATA[ExceptionLogToServer 서비스를 정의한다. 전체코드]]></description><link>https://jeonghwan-kim.github.io/server-side-loggin-in-angular/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/server-side-loggin-in-angular/</guid><pubDate>Tue, 05 May 2015 23:45:45 GMT</pubDate></item><item><title><![CDATA[nginx를 이용하여 nodejs와 php 어플리케이션 함께 구동하기]]></title><description><![CDATA[기존에는 아파치 가상호스트 설정을 이용해 한 서버에서 여러개의 php 어플리케이션을 구동하였다. 그러나 Nodjs 어플리케이션을 함께 구동한다면 어떻게 해야할까? 우선 기존의 가상호스트 환경을 살펴보자.  PHP…]]></description><link>https://jeonghwan-kim.github.io/how-to-run-nodejs-and-php-by-using-nginx/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/how-to-run-nodejs-and-php-by-using-nginx/</guid><pubDate>Fri, 10 Apr 2015 10:04:00 GMT</pubDate></item><item><title><![CDATA[AngularJS 스터디 노트]]></title><link>https://jeonghwan-kim.github.io/angularjs-스터디-노트/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/angularjs-스터디-노트/</guid><pubDate>Thu, 02 Apr 2015 18:16:34 GMT</pubDate></item><item><title><![CDATA[ui-route로 라우팅 인증 구현]]></title><description><![CDATA[단일 페이지 웹 어플리케이션(SPA)을 지원하는 앵귤러의 핵심적인 모듈이 바로 "라우팅 모듈"입니다.
이것을 구현한 것이 ng-route와 ui-router 모듈이구요. ng-route는 앵귤러에서 기본으로 제공하는 모듈입니다. 힌편 angular…]]></description><link>https://jeonghwan-kim.github.io/ui-route로-라우팅-인증-구현/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/ui-route로-라우팅-인증-구현/</guid><pubDate>Wed, 01 Apr 2015 23:38:41 GMT</pubDate></item><item><title><![CDATA[워드프레스 커스텀 메뉴 추가하기]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/custom-menu-in-wordpress/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/custom-menu-in-wordpress/</guid><pubDate>Sat, 28 Mar 2015 15:43:26 GMT</pubDate></item><item><title><![CDATA[워드프레스 자식 테마 만들기]]></title><description><![CDATA[워드프레스에는 무료로 제공하는 멋진 테마들이 많다. 이러한 테마를 그대로 가져다 사용하면서 몇가지 수정하고 싶은 경우에는 자식 테마(Child Theme…]]></description><link>https://jeonghwan-kim.github.io/how-to-build-wordpress-child-theme/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/how-to-build-wordpress-child-theme/</guid><pubDate>Sat, 28 Mar 2015 15:07:50 GMT</pubDate></item><item><title><![CDATA[익스프레스 파일 업로드]]></title><description><![CDATA[노드 익스프레스에서 파일 업로드를 위해서는  multer 모듈을 로딩해야 한다. 로딩 후 리퀘스트 객체를 통해 업로드한 파일을 핸들링 할수 있다. (req.files) 만약 서버로부터 413 (Request Entry Too Large…]]></description><link>https://jeonghwan-kim.github.io/fileupload-in-expressjs/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/fileupload-in-expressjs/</guid><pubDate>Sat, 28 Mar 2015 14:13:12 GMT</pubDate></item><item><title><![CDATA[앵귤러 서비스에 템플릿 로딩]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/앵귤러-서비스에-템플릿-로딩/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/앵귤러-서비스에-템플릿-로딩/</guid><pubDate>Mon, 23 Mar 2015 20:28:13 GMT</pubDate></item><item><title><![CDATA[options 메쏘드에 대해]]></title><description><![CDATA[POST 메소드로 리모트 서버의 프로토콜을 호출하면 POST만 요청하지 않는다. 동일한 주소의 OPTIONS 메소드를 먼저 요청하고 200 응답을 확인 후 POST 메쏘드를 호출한다. 이것을 Preflighted request라고 한다. POST…]]></description><link>https://jeonghwan-kim.github.io/options-메쏘드에-대해/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/options-메쏘드에-대해/</guid><pubDate>Thu, 19 Mar 2015 23:14:17 GMT</pubDate></item><item><title><![CDATA[앵귤러 디렉티브 등]]></title><description><![CDATA[디렉티브 생성시 반환하는 객체 중 scope 속성에서 스코프 변수를 설정한다. 이 변수들은 디렉티브 호출측에서 설정한 스코프 변수에 대한 연결을 설정하는 것이다. '='는 양방향으로 ng-model처럼 동작하고 '@'는 단방향으로 ng-bind…]]></description><link>https://jeonghwan-kim.github.io앵귤러-디렉티브-등/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io앵귤러-디렉티브-등/</guid><pubDate>Wed, 18 Mar 2015 22:04:01 GMT</pubDate></item><item><title><![CDATA[워드프레스 플러그인 정리]]></title><description><![CDATA[워드프레스로 홈페이지 개발을 처음으로 진행했다. 5…]]></description><link>https://jeonghwan-kim.github.io/plugins-in-wordpress/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/plugins-in-wordpress/</guid><pubDate>Thu, 12 Mar 2015 20:32:16 GMT</pubDate></item><item><title><![CDATA[워드프레스와 제이쿼리 등]]></title><description><![CDATA[워드프레스에는 기본적으로 제이쿼리 라이브러리가 포함되어 있다. wp_enqueue_scripts 액션훅을 이용해 wp_enqueue_script( 'jquery' ) 함수로 로딩한다. 그럼에도 불구하고 $ 사용시 undefined…]]></description><link>https://jeonghwan-kim.github.io/wordpress-and-jquery/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/wordpress-and-jquery/</guid><pubDate>Wed, 11 Mar 2015 00:16:00 GMT</pubDate></item><item><title><![CDATA[몽고DB 인덱스 외]]></title><description><![CDATA[노드 몽고디비 모듈을 통해 디비 서버에 쿼리가 갑자기 느려졌다. 길게는 30초까지 걸린다. 아마존 ec2 인스턴스을 올려도 마찬가지다. 백업해둔 몽고 DB를 mongorestore로 복구할 때 인덱싱을 스킵한 것이 원인이다. 빈스톡에 log.io…]]></description><link>https://jeonghwan-kim.github.io/몽고db-인덱스-외/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/몽고db-인덱스-외/</guid><pubDate>Tue, 10 Mar 2015 00:10:10 GMT</pubDate></item><item><title><![CDATA[서버 다운타임 없이 빈스톡 갈아타기]]></title><description><![CDATA[Elastic Beanstalk에 워드프레스를 설치하여 운영중이다. 여기에서 제안하는 방법으로 Elasticache, CloudFront…]]></description><link>https://jeonghwan-kim.github.io/서버-다운타임-없이-빈스톡-갈아타기/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/서버-다운타임-없이-빈스톡-갈아타기/</guid><pubDate>Thu, 05 Mar 2015 20:47:38 GMT</pubDate></item><item><title><![CDATA[Hapi Api 서버 스캐폴드]]></title><description><![CDATA[Hapi 프레임웍을 이용해 Api 서버를 구현할 때 필요한 최소한의 기능은 이렇다. 예를들어 /users 라우팅시 아래와 같은 폴더 구조로 만들 수 있다. 이외에 데이터베이스 연결 모듈, 로깅 모듈 등 라우팅 이외의 모듈을 components…]]></description><link>https://jeonghwan-kim.github.io/hapi-api-server-scaffold/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/hapi-api-server-scaffold/</guid><pubDate>Sun, 22 Feb 2015 12:00:26 GMT</pubDate></item><item><title><![CDATA[Hapi 테스트 코드]]></title><description><![CDATA[…]]></description><link>https://jeonghwan-kim.github.io/hapi-test/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/hapi-test/</guid><pubDate>Thu, 19 Feb 2015 18:50:23 GMT</pubDate></item><item><title><![CDATA[워드프레스에 Grunt 설정하기]]></title><description><![CDATA[자바스크립트를 이용한 프로젝트에서는 Grunt를 이용해 프로젝트를 관리한다. 코드 검사, 압축, 배포 등 grunt의 자동화 기술은 과거 수작업이 많았던 웹 개발을 비교적 편리하게 해주는 유용한 툴이다. 자바스크립트 뿐만 아니라 php…]]></description><link>https://jeonghwan-kim.github.io/wordpress-and-grunt/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/wordpress-and-grunt/</guid><pubDate>Wed, 18 Feb 2015 21:35:59 GMT</pubDate></item><item><title><![CDATA[Hapi 인증]]></title><description><![CDATA[이번에는 Hapi Api 서버의 인증 기능을 구현해 보자. hapi-auth-cookie…]]></description><link>https://jeonghwan-kim.github.io/hapi-auth/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/hapi-auth/</guid><pubDate>Wed, 18 Feb 2015 20:41:16 GMT</pubDate></item><item><title><![CDATA[Hapi 로깅, Good]]></title><description><![CDATA[익스프레스에 winton 로깅 모듈이 있듯이 Hapi에서는 Good이라는 좋은 로깅 모듈이 있다. 이번 글에서는 Hapi 프레임웍에서의 로깅 방법에 대해 알아보자. Good 모듈로 로깅시 리포터 모듈을 함께 추가해야한다. Good 모듈은 hapi…]]></description><link>https://jeonghwan-kim.github.io/hapi-logging-good/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/hapi-logging-good/</guid><pubDate>Mon, 16 Feb 2015 10:23:33 GMT</pubDate></item><item><title><![CDATA[Hapi 파라매터 검증, Joi]]></title><description><![CDATA[지난 포스트에서 Hapi 프레임웍을 이용한 라우팅을 구현하였고 파라메터를 얻는 방법을 잠깐 언급하였다. REST Api…]]></description><link>https://jeonghwan-kim.github.io/hapijs-joi/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/hapijs-joi/</guid><pubDate>Sat, 14 Feb 2015 17:43:54 GMT</pubDate></item><item><title><![CDATA[Hapi 시작하기]]></title><description><![CDATA[Node.js에서 서버 구현은 대부분 Express.js 프레임웍으로 개발했다. Express.js 3.x에서 4.x대로 업그레이드 되면서 개선된 성능과 사용 편의성에서 만족하고 있었다. 이제 막 익스프레스 프레임웍이 손에 익을 무렵 Hapi…]]></description><link>https://jeonghwan-kim.github.io/start-with-hapi/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/start-with-hapi/</guid><pubDate>Sat, 14 Feb 2015 16:15:06 GMT</pubDate></item><item><title><![CDATA[$http 테스트 코드 작성]]></title><description><![CDATA[앵귤러 $resource로 서비스를 만들고 이것을 활용하면 백엔드 자원을 간편히 사용할 수 있다. 이렇게 내부적으로 $http를 사용하는 앵귤러 서비스는 어떻게 테스트 코드를 작성해야할까? 간단히 설명하면 목(Mock…]]></description><link>https://jeonghwan-kim.github.io/http-테스트-코드-작성/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/http-테스트-코드-작성/</guid><pubDate>Tue, 10 Feb 2015 10:00:11 GMT</pubDate></item><item><title><![CDATA[비트 연산]]></title><description><![CDATA[비트연산은 공부할 때만 익혔지 실제 프로그래밍에 사용해 본적은 이번이 처음이다. '간단히 비트 연산으로 하면되지' 라고 생각했지만 코딩한 경우는 처음이라 어색했다. 몇 가지 비트연산을 정리해 보자. 비트연산은 각 자리을 true / false…]]></description><link>https://jeonghwan-kim.github.io/bit-operation/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/bit-operation/</guid><pubDate>Sat, 07 Feb 2015 23:08:18 GMT</pubDate></item><item><title><![CDATA[브라우져에서 아마존 S3 파일 업로드]]></title><description><![CDATA[아마존 웹 서비스를 사용할 때 이미지 같은 스테틱 파일들은 아마존 S3에 업로드하여 관리하는 경우가 많다. 브라우저 단에서 아마존 S3로 이미지를 업로드하고 조회하고 삭제하는 방법에 대해 알아보자. 우선 S…]]></description><link>https://jeonghwan-kim.github.io/브라우져에서-아마존-s3-파일-업로드/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/브라우져에서-아마존-s3-파일-업로드/</guid><pubDate>Sat, 24 Jan 2015 17:32:45 GMT</pubDate></item><item><title><![CDATA[$resource와 service]]></title><description><![CDATA[$resource는 $http에 리소스 주소를 설정하여 추상화해 놓은 앵귤러 서비스다. 이것을 한번더 앵귤러 Service()로 감싸면 백엔드 자원에 대해 한단계 더 추상화 할 수 있다. 결과만 놓고 보면  User…]]></description><link>https://jeonghwan-kim.github.io/resource와-service/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/resource와-service/</guid><pubDate>Thu, 22 Jan 2015 01:13:07 GMT</pubDate></item><item><title><![CDATA[꼬리에 꼬리를 무는 setTimeout()]]></title><description><![CDATA[자바스크립트에서 타이머 설정은  setTimeout()과 setInterval…]]></description><link>https://jeonghwan-kim.github.io/꼬리에-꼬리를-무는-timeout/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/꼬리에-꼬리를-무는-timeout/</guid><pubDate>Thu, 22 Jan 2015 01:05:37 GMT</pubDate></item><item><title><![CDATA[$resource 캐쉬 설정]]></title><description><![CDATA[$resoure는 앵귤러에서 백엔드 자원을 추상화한 서비스다. 레스트(REST) 방식의 백엔드 프로토콜이 지원된다면 $resoure의 장점을 충분히 활용할 수 있다. url로 $resoure 서비스를 생성하고 사용할때는 get(), query…]]></description><link>https://jeonghwan-kim.github.io/resource-캐쉬-설정/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/resource-캐쉬-설정/</guid><pubDate>Sun, 18 Jan 2015 21:39:09 GMT</pubDate></item><item><title><![CDATA[eb-cli 툴 사용법 정리]]></title><description><![CDATA[아마존 웹서비스의 엘라스틱 빈스톡(Elastic Beanstalk)은 웹 콘솔뿐만 아니라 커맨드 툴(eb-cli…]]></description><link>https://jeonghwan-kim.github.io/eb-cli-툴-사용법-정리/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/eb-cli-툴-사용법-정리/</guid><pubDate>Sat, 17 Jan 2015 14:10:57 GMT</pubDate></item><item><title><![CDATA[AngularJS, Passport로 인증구현]]></title><description><![CDATA[AngularJS를 사용하는 프로젝트에서 사용자 인증을 구현해 보자. 작업환경은 아래와 같다. 노드 익스프레스에서는 패스포트 모듈로 인증을 쉽게 구현할 수 있다. 로그인 정보는 서버측 세션 메모리에 저장할 것이고 /api/auth (get/post…]]></description><link>https://jeonghwan-kim.github.io/angularjs-passport로-인증구현/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/angularjs-passport로-인증구현/</guid><pubDate>Sat, 17 Jan 2015 12:34:54 GMT</pubDate></item><item><title><![CDATA[워드프레스 SSH2 설정]]></title><description><![CDATA[아마존 EC2에 워드프레스를 설치했다. ec2 인스턴스에 ssh 연결을 위해 아마존에서 제공하는 .pem 키페어 파일을 사용한다. 콘솔 작업뿐만 아니라 워드프레스 관리자 페이지에서 플러그인 등 업데이트를 할때도 SSH…]]></description><link>https://jeonghwan-kim.github.io/워드프레스-ssh2-설정/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/워드프레스-ssh2-설정/</guid><pubDate>Sat, 10 Jan 2015 15:27:00 GMT</pubDate></item><item><title><![CDATA[WordPress study 01 & misfit.kr]]></title><description><![CDATA[Misfits.kr 웹사이트를 따라하면서 학습한 내용을 정리한 글이다. https://github.com/jeonghwan-kim/misfits-copy flexslider 라이브러리를 사용한다. 부트스트립 Carousel…]]></description><link>https://jeonghwan-kim.github.io/wordpress-study-01-misfit-kr/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/wordpress-study-01-misfit-kr/</guid><pubDate>Fri, 09 Jan 2015 21:52:58 GMT</pubDate></item><item><title><![CDATA[Angular Form]]></title><description><![CDATA[앵귤러에서는 폼작성을 위한 클래스와 스콥 변수를 지원한다. 이를 통해 폼 데이터와 화면을 제어할 수 있다. <form name="myForm"> 을 설정하면 컨트롤러에서 $scope.myForm…]]></description><link>https://jeonghwan-kim.github.io/angular-form/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/angular-form/</guid><pubDate>Fri, 09 Jan 2015 19:02:17 GMT</pubDate></item><item><title><![CDATA[underscore.js]]></title><description><![CDATA[자바스크립트 코딩시 구 버전 웹브라우져까지 고려한다면 ECMAScript 스펙을 기준으로 한 깔끔한 코딩을 유지하기 어렵다. 자바스크립트 배열을 체크하는 코드를 살펴보자. 그나마 짧은 코드이긴 하지만 뭔가 꼼수 같다. underscore…]]></description><link>https://jeonghwan-kim.github.io/underscore-js/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/underscore-js/</guid><pubDate>Mon, 05 Jan 2015 22:16:09 GMT</pubDate></item><item><title><![CDATA[expressjs 4.0 마이그레이션]]></title><description><![CDATA[익스프레스 4.x는 이전버전 대비 20%로 응답속도를 개선할 수 있다고 한다.(참고) 정말 그럴까? 익스프레스 적용 전과 후의 서버에 AB 테스로 성능 비교를 해봤다. Connection Times (ms) CPU Utilization (%) cpu…]]></description><link>https://jeonghwan-kim.github.io/expressjs-4-0-마이그레이션/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/expressjs-4-0-마이그레이션/</guid><pubDate>Thu, 21 Aug 2014 16:43:14 GMT</pubDate></item><item><title><![CDATA[노드 실행모드에 따른 환경설정]]></title><description><![CDATA[개발 초기에는 데이터베이스 주소, Auth 토큰값 등 환경 설정파일을 직접 로직에 대입해서 사용한다.
점점 코드가 많아지고 환경설정 값을 사용하는 부분이 많으면 이를 config.js 파일로 분리해서 사용한다.
문제는 테스트/배포시 마다 config…]]></description><link>https://jeonghwan-kim.github.io/노드-실행모드에-따른-환경설정/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/노드-실행모드에-따른-환경설정/</guid><pubDate>Thu, 14 Aug 2014 16:42:51 GMT</pubDate></item><item><title><![CDATA[log.io를 이용한 beanstalk 로그 모니터링]]></title><description><![CDATA[서비스를 개발하다보면 웹서버, api서버, 파일업로드 서버 등 수개의 서버를 구현하게 된다. 개발/운영시 각 서버에 접속하여 로그파일을 보는 번거로움을 해결할수 있는 것이 log.io다. 원리는 간단하다. log.io…]]></description><link>https://jeonghwan-kim.github.io/log-io를-이용한-beanstalk-로그-모니터링/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/log-io를-이용한-beanstalk-로그-모니터링/</guid><pubDate>Fri, 08 Aug 2014 08:33:35 GMT</pubDate></item><item><title><![CDATA[Angular-fullstack 로딩 속도 개선]]></title><description><![CDATA[서비스 개발시 프론트앤드와 백앤드를 구분하여 작업한다.
최근 노드와 몽고디비로 백앤드를 개발하고 앵귤러 프레임웍으로 프론트를 함께 개발하는 MEAN…]]></description><link>https://jeonghwan-kim.github.io/angular-fullstack-로딩-속도-개선/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/angular-fullstack-로딩-속도-개선/</guid><pubDate>Sat, 02 Aug 2014 08:33:03 GMT</pubDate></item><item><title><![CDATA[노드에서 세션을 이용한 로그인/아웃 구현]]></title><description><![CDATA[노드 익스프레스에서는 세션관리를 위한 미들웨어를 기본으로 제공한다. 세션은 쿠키에 의존하기때문에 cookieParser와 session…]]></description><link>https://jeonghwan-kim.github.io/노드에서-세션을-이용한-로그인아웃-구현/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/노드에서-세션을-이용한-로그인아웃-구현/</guid><pubDate>Thu, 31 Jul 2014 08:32:17 GMT</pubDate></item><item><title><![CDATA[트위터 부트스트랩 소스분석]]></title><description><![CDATA[웹 개발을 하면서 프론트작업은 대부분 트위터 부트스트랩으로 개발한다. 
소스코드를 분석해 보자. 
/less/bootstrap.less 으로 전체 구조를 살펴보자. 이 파일에서 모든 스타일시트 정의를 불러온다. Core variables and…]]></description><link>https://jeonghwan-kim.github.io/트위터-부트스트랩-소스분석/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/트위터-부트스트랩-소스분석/</guid><pubDate>Sat, 26 Jul 2014 08:31:45 GMT</pubDate></item><item><title><![CDATA[아마존 S3를 이용한 이미지 업로드 서버 구축]]></title><description><![CDATA[아마존 EC2로 서버를 운영하다보면 이미지 등 파일을 서버에 업로드하고 저장해야 하는 경우가 있다. 단일 서버라면 디스크에 파일을 저장할수 있다. 그러나 EC…]]></description><link>https://jeonghwan-kim.github.io/아마존-s3를-이용한-이미지-업로드-서버-구축/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/아마존-s3를-이용한-이미지-업로드-서버-구축/</guid><pubDate>Wed, 23 Jul 2014 08:31:17 GMT</pubDate></item><item><title><![CDATA[Elastic Beanstalk]]></title><description><![CDATA[아마존 클라우드 서비스에는 다양한 IaaS를 제공한다. 서버 컴퓨터를 제공하는 EC2, 데이터베이스 서버 RDS, 파일서버 S3 등 계속해서 그 종류가 늘어나고 있고
EB(Elastic Beanstalk)도 이러한 제품 중 하나다.
EC2, RDS…]]></description><link>https://jeonghwan-kim.github.io/elastic-beanstalk/</link><guid isPermaLink="false">https://jeonghwan-kim.github.io/elastic-beanstalk/</guid><pubDate>Sat, 12 Jul 2014 08:18:53 GMT</pubDate></item></channel></rss>