๋ง›์žˆ๋Š” ๋…€์„๋“ค

JoonHo Son
<< ๋ง›์žˆ๋Š” ๋…€์„๋“ค์˜ ๋ฌธ์„ธ์œค, ๊น€์ค€ํ˜„, ๊น€๋ฏผ๊ฒฝ, ์œ ๋ฏผ์ƒ ยฉcomedyTV >> ์š”์ฆ˜ ํ‡ด๊ทผ ํ›„ ์ด ํ”„๋กœ๊ทธ๋žจ ๋ณด๋Š” ์žฌ๋ฏธ๊ฐ€ ์ ์ ํ•˜๋‹ค. ์ธํ„ฐ๋„ท์—์„œ ์œ ํ–‰ํ•˜๋Š” ๋จน๋ฐฉ๋ณด๋‹ค ๊ฐœ์ธ์ ์œผ๋กœ ์ด ๋„ค๋ช…์˜ ๊ฐœ๊ทธ๋งจ๋“ค ๋จน๋ฐฉ์ด ํ›จ์”ฌ ์ข‹๋‹ค. ์žฌ๋ฏธ์žˆ๊ธฐ๋„ ํ•˜๊ณ  ์Œ์‹๋„ ์ •๋ง ๋จน์Œ์ง ์Šค๋Ÿฝ๊ฒŒ ๋จน๋Š”๋‹ค. ๐Ÿ˜‚ ํ™ˆํŽ˜์ด์ง€ : http://comedytv.ihq.co.kr/deliciousguys/ facebook : https://www.facebook.com/TastyguysOfficial/

๋Œ€ํ†ต๋ น๊ณผ ์—ฌ๋‹น์— ๋Œ€ํ•ด...

JoonHo Son
<< ํ•  ๋ง์ด ์—†์–ด์ง€๋Š”๊ตฌ๋‚˜. >> ๋ญ ๋‚˜๊ฐ™์€ ๋†ˆ์ด ์ฒ ํšŒ(?)๋ผ๋Š” ๊ฑฐ์ฐฝํ•œ ๋‹จ์–ด๋ฅผ ์“ฐ๊ธฐ๋Š” ๊ทธ๋ ‡์ง€๋งŒ. ์š”์ฆ˜ ์ด๋Ÿฐ์ €๋Ÿฐ ๋งˆ์Œ์— ์•ˆ๋“œ๋Š” ํ–‰๋™์„ ๋งŽ์ด ํ•˜๋˜๋ฐ, SNI ์ฐจ๋‹จ๋„ ๋ฏธ์นœ๊ฑฐ ๊ฐ™๊ณ , ์ด๋Ÿฐ ๋‰ด์Šค๊ธฐ์‚ฌ ๋‚ด์šฉ๋„ ๋ฏธ์นœ๊ฑฐ ๊ฐ™๊ณ โ€ฆ

์•„์ด๊ณ !

JoonHo Son
๋ธ”๋กœ๊ทธ ๋ฐ์ดํ„ฐ ์˜ฎ๊ธฐ๊ณ  ์žˆ๋Š”๋ฐโ€ฆ ๊ฐ€๋งŒ ๋ณด๋‹ˆ ํƒœํ„ฐํˆด์ฆˆ์—์„œ ํ‹ฐ์Šคํ† ๋ฆฌ, ๊ทธ๋ฆฌ๊ณ  ๋ถˆ๋กœ๊ฑฐ์—์„œ ๋‹ค์‹œ ํ‹ฐ์Šคํ† ๋ฆฌ๋กœ ์˜ค๋ฉด์„œ ์‹œ๊ฐ„๋Œ€๊ฐ€ ์—‰ํ‚จ๊ฑฐ ๊ฐ™๋‹ค. ์—†์–ด์ง„ ์ด๋ฏธ์ง€๋„ ์ข€ ๋ณด์ด๊ณ โ€ฆ ๋Œ€๋ถ€๋ถ„ ์ด๋ฏธ์ง€๋ฅผ Flickr๋กœ ๊ฑธ์–ด ๋†จ์—ˆ๋Š”๋ฐ, ๋ฌด๋ฃŒ ๊ณ„์ •์€ ์กฐ๋งŒ๊ฐ„ 1,000์žฅ์ด ์ดˆ๊ณผํ•˜๋Š” ์ด๋ฏธ์ง€๋Š” ์‚ญ์ œ๋ฅผ ํ•˜๊ฒ ๋‹ค๊ณ  ํ•˜๋‹ˆ, ์‹œ๊ฐ„ ๋‚  ๋•Œ๋งˆ๋‹ค ์กฐ๊ธˆ์”ฉ ์˜ฎ๊ฒจ์•ผ์ง€. << ์•„์•„์•…! >> ์ด๋ฏธ์ง€ ์ถœ์ฒ˜๋Š” unsplash.com

maven test์‹œ ๊ถŒํ•œ(permission) ๋ฌธ์ œ

JoonHo Son
maven test ์ง„ํ–‰์‹œ test case์ค‘ shell script๋ฅผ ์‹คํ–‰ํ•ด์„œ ๊ฒฐ๊ณผ๋ฅผ ๋น„๊ตํ•ด์•ผ ํ•˜๋Š” ๋กœ์ง์ด ์žˆ์—ˆ๋Š”๋ฐ, IDE๊ฐ€ ์•„๋‹Œ ์ผ๋ฐ˜ ์ฝ˜์†”(terminal, iterm ๋“ฑ)์—์„œ mvn test ์‹คํ–‰์‹œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค(IntelliJ ๋“ฑ์˜ IDE๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ์—๋Š” ๋ฐœ์ƒํ•˜์ง€ ์•Š์•˜์Œ). ์ฆ์ƒ์€ test/resources/script ํด๋”์— ์žˆ๋Š” shell script์˜ ์‹คํ–‰ ๊ถŒํ•œ์ด test ์ง„ํ–‰์‹œ target ํด๋”๋กœ ๋ณต์‚ฌ๋˜๋ฉด์„œ ํผ๋ฏธ์…˜(permission)์ด ๋ณ€๊ฒฝ๋˜๋Š” ํ˜„์ƒ์ด์—ˆ๋‹ค. << ํ…Œ์ŠคํŠธ ํŒจํ‚ค์ง€ ๊ตฌ์กฐ >> << ์˜ค๋ฅ˜๋ฉ”์„ธ์ง€ >> << ๋””๋ ‰ํ† ๋ฆฌ ๊ถŒํ•œ >> ํ•ด๋‹น ๋ฌธ์ œ๋Š” ์ด๋ฏธ maven ์ด์Šˆ๋กœ ๋ณด๊ณ ๋œ ์ƒํƒœ(close ๋๋‹ค๊ฐ€ ๋‹ค์‹œ reopen ๋˜์—ˆ์Œ)์ด๋ฉฐ ๊ตฌ๊ธ€๋ง์„ ํ†ตํ•ด maven-antrun-plugin์„ ์ด์šฉํ•˜์—ฌ ํ•ด๊ฒฐํ•˜์˜€๋‹ค.

์žฌ๋ฏธ

JoonHo Son
Java Reflection์„ ์ด์šฉํ•ด์„œ ๋จธ๋ฆฌ์— ๊น€๋‚˜๋„๋ก ๊ณ ๋ฏผํ•˜๊ณ  ์ฝ”๋”ฉํ•˜๊ณ  ์žˆ๋‹ค. ์žฌ๋ฐŒ๋„ค. ๊ฐ„๋งŒ์— ๋จธ๋ฆฌ ์“ฐ๋‹ˆ๊นŒ… ๊ทธ๋Ÿฐ๋ฐ ์—ญ์‹œ ๋ฉ€ํ‹ฐ๊ฐ€ ์•ˆ๋˜๋‚˜๋ณด๋‹ค. ๋ธ”๋กœ๊น… ์•ฑ ๋งŒ๋“ ๋‹ต์‹œ๊ณ  ํ•œ ๋‹ฌ ๊ฐ€๊นŒ์ด ๋ชฐ๋‘ ํ–ˆ์—ˆ๋Š”๋ฐ, ๋งˆ์ง€๋ง‰ ์ปค๋ฐ‹ํ•œ๊ฒŒ ์–ธ์ œ์ธ์ง€…

๊ทผํ™ฉ ์ •๋ฆฌ

JoonHo Son
์—ฐ์ดˆ์— ๋ธ”๋กœ๊น… ํ•˜๊ณ  ์ด์ œ์•ผ ํ•˜๋„ค. ๋ถ„๊ธฐ๋ณ„ ๋ธ”๋กœ๊ทธ๋„ ์•„๋‹ˆ๊ณ . ใ…กใ…ก; 1. ๋ฐ•๊ทผํ˜œ ํƒ„ํ•ต ์ˆ ๊น€์— ์ ์œผ๋ฉด ์š•ํ•  ๊ฒƒ ๊ฐ™์•„์„œ ์ด๊ฑด ๋‚˜์ค‘์— ์ •๋ฆฌ. 2. ๋ฌธ์žฌ์ธ ๋Œ€ํ†ต๋ น ์‹œ๋Œ€ ๋„ˆ๋ฌด ๋งŽ์€ ์ผ์ด ์žˆ์—ˆ๊ณ , ๊ฐ€์Šด์กธ์ด๋ฉฐ ์ง€์ผœ๋ดค์œผ๋‚˜ ๊ฒฐ๊ตญ์—๋Š” ์Šน๋ฆฌํ–ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋งŒ์กฑํ•˜๋ฉด ์•ˆ๋œ๋‹ค. ์ด์ œ ์‹œ์ž‘์ด๋‹ค. << ์ทจ์ž„ ์„ ์„œ ์ค‘์ธ ๋ฌธ์žฌ์ธ ๋Œ€ํ†ต๋ น >> 3. ๋ธ”๋กœ๊น… ์•ฑ ๊ฐœ๋ฐœ ์‹œ์ž‘ 6์›” ๋ง๊นŒ์ง€๋Š” ์Šคํ† ์–ด์— ์ œ์ถœํ•ด์•ผ ํ•˜๋Š”๋ฐ… << Storyboard >> 4. ์ž์ „๊ฑฐ ์—ด์‹ฌํžˆ ํƒ€๊ธฐ 3๋…„ ๊ฐ€๊นŒ์ด ์‰ฌ๊ณ  ๋‹ค์‹œ ์‹œ์ž‘ ํ–ˆ์œผ๋ฉด ์—ด์‹ฌํžˆ ํ•˜๋ ค๊ณ  ํ–ˆ์œผ๋‚˜ ๋‚ ์”จ์™€ ์ฃผ๋ง์— ๋ชฐ๋ฆฐ ๊ฐ์ข… ๊ฒฝ์กฐ์‚ฌ ๋•Œ๋ฌธ์—(๋ผ๊ณ  ์“ฐ๊ณ  ๊ฒŒ์„๋Ÿฌ์„œ๋ผ๊ณ  ์ฝ์–ด์•ผ…) ์†Œํ™€ํ–ˆ๋˜ ์ž”์ฐจ ๋‹ค์‹œ ์—ด์‹ฌํžˆ ํƒ€์•ผ์ง€.

๋ฌด์ฒ™ ์ด๋ฅธ ์ถœ๊ทผ๊ธธ

JoonHo Son
๋ฉฐ์น ๋™์•ˆ ๋ˆˆ์ด ์™€์„œ ๋งŽ์ด ์Œ“์ธ ๋ˆˆ์„ ๋ฐŸ์œผ๋ฉฐ… ์ž ์ด ์•ˆ์™€์„œ ๋œฌ๋ˆˆ์œผ๋กœ ๋ฐค์ƒˆ๊ณ  ์ƒˆ๋ฒฝ์— ์ถœ๊ทผ. ์ด๋ž˜์ €๋ž˜ ์‹ฌ๋ž€ํ•˜๊ณ  ์†์ƒํ•œ ๋งˆ์Œ์ด์—ˆ๋Š”๋ฐ ์ฐฌ๋ฐ”๋žŒ(์˜ํ•˜ 12โ„ƒ)์„ ๋งž์œผ๋ฉฐ ๊ฑธ์œผ๋‹ˆ ๋‚˜๋ฆ„ ์ƒ์พŒํ–ˆ๋‹ค. << ์•„๋ฌด๋„ ์—†๋Š” ์ƒˆ๋ฒฝ#1 >> << ์•„๋ฌด๋„ ์—†๋Š” ์ƒˆ๋ฒฝ#2 >>

EmberJS์˜ component์—์„œ transition ์ฒ˜๋ฆฌ ํ•˜๊ธฐ

JoonHo Son
์ถœ์ฒ˜: stackoverflow // component.js import Ember from 'ember'; export default Ember.Component.extend({ actions: { submit: function () { this.get('router').transitionTo('some.target.route.name'); } } }); // initializer.js export function initialize(application) { application.inject('component', 'router', 'router:main'); }; export default { name: 'component-router-inject', initialize: initialize };