XE CAMP 2011
- ๋ฅ์ง
- Blog
- ๋ถ๋ฅ
- Review
- ๋ฑ๋ก์ผ
XE์๊ฐ ๋ฐ ์คํ์์ค ์ฐธ์ฌ๋ฐฉ๋ฒ
xe๋ ์ด์ํธ๋์ปค(๊ตฌ๊ธ์ฝ๋)๋ฅผ ํตํด์ xe์ ์์ ํด์ค ์ ์๋ค.
1.5์์ ์๊ธด ํ
๋ง๋ ๋ ์ด์์์ด๋ ๋ก๊ทธ์ธ, ๊ฒ์ํ ์คํจ์ ํํด๋์ ๋ค์ด๊ฐ์ ์ผ๊ด์ฑ์๊ฒ ์์ ํ ์ ์๊ฒ ํ๋ค.
xeMarket์ ํ๋ธ๋ฆฌ๋๋ผ๋ ํ์ฌ์์ ๋ง๋ ์ฌ์ดํธ๋ผ๊ณ ํ๋ค. nhn๊ณผ ๋
๋ฆฝ์ ์ด๋ผ๊ณ ํจ.
xe1.5
๊ด๋ฆฌ์ ๋ชจ๋ฐ์ผ ์ง์์ฌ์ดํธ๋งต - ๋ฉ๋ด๋ง์ ๊ตฌ์ฑํ๋ ๊ฒ ๋ฟ๋ง ์๋๋ผ ๋ชจ๋ ์ ํ์ ํ๊ณ , ๊ฐํธํ๊ฒ ์ธํ
๊ฐ๋ฅํจ.ํ
๋ง - ์คํจ์ธํธ๋ฅผ ํ๊บผ๋ฒ์ ์ ์ฉํ ์ ์๊ณ , ์คํจ ํจํค์ง๋ฅผ ๋ง๋ค ์ ์๋ค.
XE๋ง์ผ
xe๊ฐ๋ฐ์๋ค์ด ์์๋ด์ฌ์ฐจ์์ผ๋ก ํ๋ก๊ทธ๋จ์ ๋ง๋๋๋ฐ ์ด์ ๋ํ์ฌ ํํผํ๊ณ ์ xeMarket๋ฅผ ๋ง๋ค๊ฒ ๋์๋ค.
ํด์ธ์๋ ์ ๋ฃ ํ
ํ๋ฆฟ ๋ง์ผ์ด ํ์ฑํ ๋์ด์๋ค. (์๋ํ๋ ์ค... ๋ฑ๋ฑ)
๋๊ตฌ๋ ํ
ํ๋ฆฟ์ด๋ ํ๋ก๊ทธ๋จ์ ์ฌ๊ณ ํ ์ ์๋ ๊ณต๊ฐ.
์
๋ฌ์ ํ๋ธ๋ฆฌ๋๊ฐ ์์ต ๋ฐฐ๋ถ (7:3์ผ๋ก ๋ฐฐ๋ถ)
์ฌ์
์ ์
๋ฌ๋ ํต์ ํ๋งค์
์ ๊ณ ๋ฅผ ํด์ผํจ.
๊ฐ์ธ์
๋ฌ : ๋ฐ๊ธฐ๋งค์ถ 600๋ง์ ์ดํ
์ ์๊ถ ๋ณดํธ : ๊ตฌ๋งค์ ๋ผ์ด์ผ์ค ๋๋ฉ์ธ ๋ฑ๋ก์ผ๋ก ์ ์๊ถ ๋ณดํธ๋๋ค.
๊ฐ์ธ์ฌ์ดํธ์ xeMarket์์ ๋์์ ํ๋งค๋ ๊ฐ๋ฅํ์ง๋ง, ๊ฐ๊ฒฉ์ฐจ๊ฐ ๋์ง ์๋๊ฑธ ์ํ๋ค๊ณ ํ๋ค.
XE๋ฅผ ํ์ฉํ ์น ์ฌ์ดํธ ๊ตฌ์ถ
๋ชจ๋์ ํ๋์ ์ญํ ์ ๋ด๋นํ๋ ํ๋ก๊ทธ๋จ
๋ฐ๋ชจ ์ค๊ฐ์ Contact us ๋ชจ๋ ์ค์นํ๋๊ฒ์ ๋ณด์ฌ์ฃผ๋๋ฐ ๋ชจ๋ ๋ฏ์ด๋ณด๋๋ฐ ๋์์ด ๋ ๋ฏํ๋ค.
๋ฉ๋ด๋ฅผ ์์ฑํ๋ฉด์ ๋ฐ๋ก ๋ชจ๋ ์์ฑ์ด๋ ๋ชจ๋ ์ ํ์ด ๊ฐ๋ฅํจ.
๋ฉ๋ด์์ฑ์ผ๋ก ๋ง๋ค์ด์ง ๋ชจ๋์ด ์๋๋ผ๋ฉด ์ค์น๋ ๋ชจ๋์ชฝ์์ ๋ณ๋๋ก ๋ชจ๋์ ์์ฑํ ์ ์๋ค. ๊ทธ๋ฆฌ๊ณ ๋ฉ๋ด ์ค์ ์์ ๋ชจ๋์ ํ์ผ๋ก ๋ง๋ค์ด์ง ๋ชจ๋์ ์ ํํ๋ค.
์์ ฏ ์คํ์ผ๋ก ์ต๊ทผ๊ธ๊ฐ์๊ณณ ์ ๋ชฉ์ ๋ฃ์ ์ ์๋ค. ๋ณ๋๋ก ๋ฐ์ค๋ฅผ ์ถ๊ฐํ ํ์๊ฐ ์์๊ฑฐ ๊ฐ๋ค. (๋ฉ์ธํ์ด์ง ๊พธ๋ฐ๋ ์๋นํ ์ ์ฉํ ๋ฏ...)
XE ์คํจ ์ ์ ๊ฐ์ด๋
- ์์ ฏ : ๋ก๊ทธ์ธ ์ํ, ๊ฒ์๋ฌผ ์ถ๋ ฅํ๋ ๋ฑ ์์ ํ๋ก๊ทธ๋จ ์กฐ๊ฐ
- ์์ ฏ ์คํจ : ์์ ฏ์ ๋ด์ฉ์ ๊พธ๋ฉฐ์ค๋ค.
- ์์ ฏ ์คํ์ผ : ์์ ฏ์ ๊ตฌ์กฐ๋ฅผ ๊พธ๋ฏธ๋ ๋์์ธ. ์์ ฏ ์คํจ๊ณผ๋ ๋ค๋ฅด๋ค. ์) ์ต๊ทผ๊ฒ์๋ฌผ์ ์ ๋ชฉ์ ๋ฃ์ ์ ์๋ค. ๊ทธ๋ฆฌ๊ณ ์์ ฏ์ ํ ๋๋ฆฌ๋ฅผ ๋ง๋ค ์ ์๋ ์ญํ ์ ํ๋ค.
ํ ํ๋ฆฟ ๋ฌธ๋ฒ ์ค๋ช ๋ ์ฌ์ดํธ ์ฃผ์ : http://me2.do/xtbTG6
ํ ํ๋ฆฟ ๋ฌธ๋ฒ
๋ณ์
{$valueName}
{@ $valueName = 'a'; }
{func($varname)} // ํจ์์ฌ์ฉ
html์ฃผ์ํ์
<!--@if ($varName)--> <!--@end-->
<!--//์ถ๋ ฅ์ ์จ๊ฒจ์ง๋ ์ฃผ์-->`
domํ์
// ์กฐ๊ฑด๋ฌธ
<div cond="$varName">{$varName}</div>
<strong class="{$class}"|cond="$class">Hello</strong> // ํ๊ทธ์์ ๋ค์ด๊ฐ๋ ์กฐ๊ฑด๋ฌธ
// ๋ฐ๋ณต๋ฌธ
<li loop="$list=>$item">{$item}</li>
// ์ธ๋ถํ์ผ ๋ก๋ (๊ฒฝ๋ก๊ฐ xe์ ๋ง์ถฐ ๋ณํ๋๊ธฐ ๋๋ฌธ์ ์คํจ์ ๋ง๋ ์ฅ์ ๊ธฐ์ค์ผ๋ก ๊ฒฝ๋ก ์ก๋๋ค.)
<load target="sample.css" />
<load target="sample.js" />
XE๋ชจ๋ ์ ์ ๊ฐ์ด๋
๋์๊ตฌ์กฐ
index.php์์ ์์์ผ๋ก ๋ชจ๋์ด ๋์๋๋ค.
์ปจํ ์คํธ ์ด๊ธฐํ -> ๋ชจ๋ํธ๋ค๋ฌ ์ด๊ธฐํ(์๋์จ,ํธ๋ฆฌ๊ฑฐ ๋นํฌ) -> ํ๋ก๋ชจ๋(์ค์ ๋ชจ๋)(์๋์จ,ํธ๋ฆฌ๊ฑฐ ์ ํํฐ) -> ์ผํ ์ธ ์ถ๋ ฅ -> html result
Memo๋ชจ๋ ์ ์
ํ์ํ ๊ธฐ๋ฅ : ์ฐ๊ธฐ,์ฝ๊ธฐ, ์์ , ์ญ์ , ๋ชฉ๋ก
๋ชจ๋ ํ์ผ ๋ฐ ๋๋ ํ ๋ฆฌ ๊ตฌ์กฐ
- cont ๋ชจ๋ ์ ๋ณด
- lang ์ธ์ด
- queries db์ ์ ๋ณด๋ฅผ ๋๊ธฐ๋ ๊ธฐ๋ฅ
- ruleset
- schemas ๋๋น ํ ์ด๋ธ ๊ตฌ์กฐ
- skins ์คํจ๋ค
- tpl ๊ด๋ฆฌ์๋จ์ ui
- memo.ํด๋์ค, ์ปจํธ๋กค๋ฌ, ๋ชจ๋ธ, ๋ทฐ ํ์ผ๋ค...
module.xml
actions๋ถ๋ถ์ url๋ด๋น์ด๋ผ ์ค์ํจ.
memo.class.php
4๊ฐ์ง ๋ฉ์๋๋ก ๋์๊ฐ. ์ค์น์ ์
๋ฐ์ดํธ์ ๊ดํ ๋ถ๋ถ์.
ํ
์ด๋ธ ์
๋ฐ์ดํธ๋ฅผ ์ฒดํฌํ๊ณ ํ
์ด๋ธ ๋ด์ฉ์ ์์ ํ ์ ์๋ค.
memo.view.php
๊ธฐ๋ณธ์ ์ผ๋ก ์คํํด์ผํ๋ ๋ถ๋ถ์ ๊ดํ๊ฒ๋ค์ด ์๋ค. ์์ฑ์(init)
memo.controller.php
๋ฌธ์์์ ์์ฒญ์ ๋ฐ์ผ๋ฉด ์์ ,์ญ์ ๊ฐ์ ๊ฒ๋ค์ ์ฒ๋ฆฌํ๋ค.
ํ๋ก์ธ์ค
์ฃผ์ -> ์ปจํ ์คํธ -> ๋ชจ๋ํธ๋ค๋ฌ -> memo.view.php -> ๋ฉ์๋ -> memo_view.html
๋ฉ๋ชจ์ฐ๊ธฐ
๋ฐธ๋ฆฌ๊ฒ์ดํฐ (์ค๋ฅ์ฒดํฌ ์์ค๋ถ๋ถ)
๋ฉ๋ชจ ์๋ธ๋ฐ -> ์ปจํธ๋กค๋ฌ ์ฒ๋ฆฌ
์์ ์ญ์ ๋ ์ปจํธ๋กค๋ฌ์์ ์ฒ๋ฆฌ
๋ฉ๋ชจ๋ชฉ๋ก
๋ทฐ -> ๋ชจ๋ธ์ ํธ์ถ -> ๋ฐ์ดํฐ๋ฒ ์ด์ค -> ๋ชจ๋ธ์์ ๋ฐ์ดํฐ๋ฐ์ -> ๋ทฐ๋ก ์๋ฃ ๋์ ธ์ค -> ์ปจํ ์คํธ์ -> html์ถ๋ ฅ
Context::set ๋ฐ์ดํฐ๋ฅผ ๋ณ์๋ช
์ผ๋ก ์ง์ ํ ์ ์๋ค.
๋ฉ๋ชจ์ฝ๊ธฐ
๋ฉ๋ชจ๋ชฉ๋ก๊ณผ ๋น์ทํ ํ๋ฆ์ผ๋ก ์ด๋ฃจ์ด์ง๋ค.
Context:get ๋ฐ์ดํฐ๋ฅผ ๋ณ์๋ช
์ผ๋ก ๊ฐ์ ธ์จ๋ค.
0๊ฐ์ ๋๊ธ
๋ฑ๋ก๋ ๋๊ธ์ด ์์ต๋๋ค.