Apex ์์ํ๊ธฐ
ํ์ต ๋ชฉํ
์ด ์ ๋์ ์๋ฃํ๋ฉด ๋ค์์ ์ํํ ์ ์์ต๋๋ค.
- ์ฝ๋๋ ๋ฌด์์ธ์ง ์ ์ํฉ๋๋ค.
- ์ฝ๋๋ฅผ ์ ์ฅํ๊ณ ํธ์งํ๋ ์์น๋ฅผ ์ดํดํฉ๋๋ค.
- ์ฝ๋ ์ฃผ์์ ์์ฑํ๋ ๋ ๊ฐ์ง ๋ฐฉ๋ฒ์ ํ์
ํฉ๋๋ค.
- ์ฝ๋ ์ฃผ์์ ์์ฑํ๋ ๊ฒ์ด ์ค์ํ ์ด์ ๋ฅผ ์ดํดํฉ๋๋ค.
์ ๋ฌธ๊ฐ์๊ฒ์ ์ ์ฉํ ์ ๋ณด๋ฅผ ๋ฐฐ์ธ ์ ์๋ค๋ ์ฌ์ค์ ์๊ณ ๊ณ์ จ๋์? ์ด ๋น๋์ค๋ฅผ ์์ฒญํ์ฌ ์ด ๋ชจ๋์์ ๋ค๋ฃจ๋ ์ฃผ์ ๋ฅผ ์์ธํ ์์๋ณด์ธ์.
Salesforce Knowledge๋ฅผ ํ์ฅํ์ฌ Apex ์ฝ๋์ ๋ํด ์์๋ณด๊ณ ์ถ์ผ์ ๊ฐ์? ๊ทธ๋ ๋ค๋ฉด ์ ์ฐพ์์ค์ จ์ต๋๋ค. ์ฝ๋๋ฅผ ์์ ๋กญ๊ฒ ์ฝ๊ณ ์ธ ์ ์๋๋ก ๋จ๊ณ๋ณ ์๋ด๋ฅผ ๋ฐ์ ๋ณด์ธ์. ์ฒ์์๋ ์กฐ๊ธ ๋๋ ค์ธ ์ ์์ง๋ง ๊ฑฑ์ ํ์ง ๋ง์ธ์. ๊ฐ์ฅ ๋ณต์กํ ๊ฐ๋ ๋ ๋จ์ํ๊ฒ ์ดํดํ ์ ์๋๋ก ์๋ ค ๋๋ฆฌ๊ฒ ์ต๋๋ค.
์ฌ๋ฌ๋ถ์ ๊ด๋ฆฌ์๋ก์ ์ด๋ฏธ Salesforce ๊ธฐ๋ฅ๊ณผ ํ์ฌ ์ ์ฉ๋๋ ์ ํ ์ฌํญ์ ์ ์๊ณ ์์ต๋๋ค. Flow Builder๋ฅผ ์ฌ์ฉํ์ฌ ๋น์ฆ๋์ค ํ๋ก์ธ์ค๋ฅผ ์๋ํํ ๊ฒฝํ์ด ์์ผ๋ฉฐ, ๊ณ ๊ฐ์๊ฒ ์ต์ ์ ๋ง์ถคํ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ๊ณตํ๊ณ ์ ํฉ๋๋ค. ์ด ๋ชจ๋์์๋ ๋จผ์ ํ๋ก๊ทธ๋๋ฐ ๊ฐ๋ ์ ์๊ฐํ๊ณ ์ง์ ํ ์คํธํ ์ ์๋ ์์ ๋ฅผ ์๊ฐํ๊ฒ ์ต๋๋ค.
์์ํ ์ค๋น๊ฐ ๋์ จ๋์? ๊ทธ๋ผ ์์ํด ๋ด ์๋ค!
์ฝ๋๋ ๋ฌด์์ธ๊ฐ์?
์ฝ๋๋ ์ฌ๋์ด ์ปดํจํฐ์ ์ํตํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ์ธ์ด์ ๋๋ค. ํน์ ์์ ์ ์ํํ๋ ๋ฐ ํ์ํ ์ง์นจ์ ์์ฑํ๊ธฐ ์ํด ์ฝ๋๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ฝ๋๋ฅผ ๋ ์ํผ์ฒ๋ผ ์๊ฐํด ๋ณด์ธ์. ์๋ฆฌ๋ฅผ ์์๋๋ก ์์ฑํ๋ ค๋ฉด ๊ฐ ์ฌ๋ฃ์ ์ง์ ์ฌํญ์ด ์ ํํด์ผ ํฉ๋๋ค.
์ ์ธ๊ณ ์ฌ๋๋ค์ด ์๋ก ๋ค๋ฅธ ์ธ์ด๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ฒ๋ผ ์ปดํจํฐ๋ JavaScript, Java, Ruby, Python์ ๋น๋กฏํ ์ฌ๋ฌ ์ธ์ด๋ฅผ ์ฌ์ฉํฉ๋๋ค. ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ ์ฌ๋ฌ ๋ฉด์์ ์ฐจ์ด๊ฐ ์์ง๋ง ๋ชจ๋ ๋์ผํ ๊ธฐ๋ณธ ๊ตฌ์กฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ฉฐ, ๋ชจ๋ ์ปดํจํฐ๋ฅผ ํตํด ํด์ํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ง๋ค ์ ์์ต๋๋ค. Apex ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ ๋ํด ์์ธํ ๋ฐฐ์ฐ๋ฉด์ ํ๋ก๊ทธ๋๋ฐ ๊ตฌ์กฐ๋ฅผ ์ดํดํ๊ฒ ๋ ๊ฒ์ ๋๋ค.
Apex ์ฝ๋ ์ ์ฅ ์์น
์ด๋์๋ถํฐ ์์ํด์ผ ํ ๊น์? ๋จผ์ ์ฝ๋๋ฅผ ์ ์ฅํ๋ ์์น๋ฅผ ํ์ ํด์ผ ํฉ๋๋ค. ์ฝ๋๋ ํ์ผ์ ์ ์ฅ๋ฉ๋๋ค. ์ด๋ฌํ ํ์ผ์ ๋ก์ปฌ(PC ๋๋ Mac), ํด๋ผ์ฐ๋(Salesforce org)์ ์์ ์ ์์ผ๋ฉฐ, ๋๋ ๋ก์ปฌ๋ก ์ ์ฅํ๊ณ ํด๋ผ์ฐ๋์ ์๋์ผ๋ก ๋๊ธฐํํ ์ ์์ต๋๋ค. ์ ๋ง
Developer Console
๊ด๋ฆฌ์๋ก์ Developer Console์ ๋ํด ๋ค์ด ๋ณด์ จ์ ๊ฒ์ ๋๋ค. Developer Console์ ๊ฐ๋ฐ์๊ฐ ์ฝ๋ ํ์ผ์ ์์ฑ ๋ฐ ํธ์งํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ๋๊ตฌ์ ๋๋ค. ์ด ๋ชจ๋์์๋ Developer Console์ ์ฌ์ฉํ์ฌ Salesforce org์์ ์ฝ๋๋ฅผ ์ ์ฅ ๋ฐ ์คํํ ์ ์์ต๋๋ค. ํจ๊ป ์ดํด๋ณด๊ฒ ์ต๋๋ค.
Developer Console์ ์ก์ธ์คํ๋ ค๋ฉด ๋ค์์ ๋ฐ๋ฅด์ธ์.
- ๋จผ์ Trailhead์ ๋ก๊ทธ์ธ๋์ด ์๋์ง ํ์ธํฉ๋๋ค.
- ๊ทธ๋ฐ ๋ค์ ์ด ํ์ด์ง์ ์ค๋ฅธ์ชฝ ์๋จ ๋ชจ์๋ฆฌ์ ์๋ ์ฌ์ฉ์ ์๋ฐํ๋ฅผ ํด๋ฆญํ๊ณ ๋๋กญ๋ค์ด์์ Hands-on Orgs(์ค์ต ์กฐ์ง)๋ฅผ ์ ํํฉ๋๋ค.
- ์ฌ์ฉ์ ์ด๋ฆ์ ํด๋ฆญํ์ฌ ์กฐ์ง์ ์คํํฉ๋๋ค. ์ ์กฐ์ง์ ๋ง๋ค๊ณ ์ถ์ผ์ ๊ฐ์? ๋ฐฉ๋ฒ์ Trailhead Playground ๊ด๋ฆฌ ๋ชจ๋์ ์ฐธ์กฐํ์ธ์.
- Trailhead Playground์์

์ ํด๋ฆญํ๊ณ Developer Console์ ์ ํํฉ๋๋ค.
Developer Console์ ์ด์ด ๋์ธ์. ์ด ๋ชจ๋์์ ์ฝ๋๋ฅผ ํ ์คํธํ๊ธฐ ์ํด ์ฌ์ฉํ ๊ฒ์ ๋๋ค.
์์ฌ ์ฝ๋ ์์ฑ
Salesforce ๊ด๋ฆฌ์๋ก ์ฐธ์ฌํ๋ ๋ชจ๋ ํ๋ก์ ํธ์์ ๊ฐ์ฅ ์ค์ํ ๊ฒ์ ๊ณํ์ ๋๋ค. ๊ณํ์ ๊ณ ๊ฐ์ ์๊ตฌ ์ฌํญ์ ์ดํดํ๊ณ ์์ ์ ์๊ฐ์ ์ ๋ฆฌํ๋ฉฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฐ๋ฐํ๋ ๋์ ๋ฐ์ํ ์ ์๋ ๋ฌธ์ ๋ฅผ ์์ธกํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
๊ฐ๋ฐ์๋ ํ๋ก์ ํธ๋ฅผ ๊ณํํ๋ฉด์ Apex ์ฝ๋ ์์ฑ์ ์์ํ๊ธฐ ์ ์ ์์ฌ ์ฝ๋๋ฅผ ์์ฑํฉ๋๋ค. ์์ฌ ์ฝ๋๋ ํ๋ก๊ทธ๋จ์ด๋ ๊ธฐ๋ฅ์ด ์ํํด์ผ ํ๋ ์์ ์ ์์ธํ๋ฉด์๋ ์ฝ๊ธฐ ์ฝ๊ฒ ๋ํ๋ด๋ ์ค๋ช ์ผ๋ก, ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๊ฐ ์๋ ์์ฐ์ด๋ก ์์ฑ๋ฉ๋๋ค. ์์ฌ ์ฝ๋๋ฅผ ์ฌ์ฉํ๋ฉด ํ๋ก๊ทธ๋๋จธ๊ฐ ์๋๋๋ผ๋ ์ ์ ํ ๋จ๊ณ๋ฅผ ์ํํ์ฌ ์ ์๋ ์ฝ๋๊ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ์๊ตฌ ์ฌํญ์ ์ถฉ์กฑํ๋์ง ํ์ธํ ์ ์์ต๋๋ค. ๊ฐ๋ฐ์๋ ๋ณ๋์ ๋ฌธ์, ํ์ดํธ๋ณด๋ ๋๋ Developer Console์ ์์ฌ ์ฝ๋๋ฅผ ์์ฑํฉ๋๋ค.
๊ฐ๋ฐ์๊ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ํ๋ก๊ทธ๋๋ฐํ๋ ๋ฐฉ๋ฒ์ ๋ํ ์๊ฐ์ ๋ฌธ์ํํ๋ ๋ฐ ์์ฌ ์ฝ๋ ์์ฑ์ด ์ด๋ค ๋์์ ์ฃผ๋์ง ์์๋ณผ ์ ์๋๋ก, ์์ฌ ์ฝ๋๋ฅผ ์ง์ ์์ฑํด ๋ณด๊ฒ ์ต๋๋ค.
- Developer Console์์ File(ํ์ผ) | New(์๋ก ๋ง๋ค๊ธฐ) | Apex Class(Apex ํด๋์ค)๋ฅผ ์ ํํฉ๋๋ค.
- ํด๋์ค ์ด๋ฆ์
Teatime์ผ๋ก ์ง์ ํฉ๋๋ค.
-
OK(ํ์ธ)๋ฅผ ํด๋ฆญํฉ๋๋ค.
- ํด๋์ค ์ด๋ฆ์ ์ง์ ํ๋ฉด ์๋ก์ด ํด๋์ค ์ฐฝ์ด ํ์๋ฉ๋๋ค.
- ์ด ์ง์นจ์ ๋ณต์ฌํ์ฌ ๊ธฐ์กด ํด๋์ค ์์ ๋ถ์ฌ ๋ฃ์ต๋๋ค.
Get Utensils and Ingredients Boil Water in a Tea Kettle Make Tea in Teapot Add Tea and Sugar to a Teacup Serve Tea to Friend
๊ฐ ์์ฌ ์ฝ๋ ๋ฌธ(์ง์นจ)์์๋ ์์ ์ ๋ช ์ํด์ผ ํฉ๋๋ค. ๋ก๋ด์๊ฒ ์ด๋ฌํ ์ง์๋ฅผ ๋ด๋ฆฌ๋ฉด ๋ก๋ด์ด ๊ฐ ๋จ๊ณ๋ฅผ ์ฌ๋ฐ๋ฅด๊ฒ ์ํํ ์ ์์๊น์?
์๋ง๋ ๊ทธ๋ ์ง ์์ ๊ฒ๋๋ค. ๋ก๋ด์ ๊ฐ์ ธ์์ผ ํ ๊ธฐ๊ตฌ์ ์ฌ๋ฃ, ๋ฌผ์ ๋์ด๋ ๋ฐฉ๋ฒ, ์ถ๊ฐํ ๊ฐ ์ฌ๋ฃ์ ์ ๋ฑ์ ์์์ผ ํฉ๋๋ค. ๋ฐ๋ผ์ ์ด ์์ฌ ์ฝ๋์๋ ๋ ์์ธํ ์ ๋ณด๋ฅผ ์ ๊ณตํด์ผ ํฉ๋๋ค.
- Developer Console๋ก ๋์๊ฐ๋๋ค.
- ๊ธฐ์กด ์ฝ๋๋ฅผ ๋ค์ ์ฝ๋๋ก ๋ฐ๊ฟ๋๋ค.
Get Utensils and Ingredients Get Teacup Get Spoon Get Tea Kettle Get Teapot Get Tea Get Sugar Boil water in a Tea Kettle Fill Kettle with Water Switch Kettle On Wait for Kettle to Boil Make Tea in Teapot Put Tea in Teapot Put Boiling Water in Teapot Wait 2 Minutes Add Tea and Sugar to Teacup Pour Tea in Teacup Put 1 teaspoon of Sugar in Teacup Stir Tea in Teacup Serve Tea to a Friend public class Teatime { }
์์ฌ ์ฝ๋๋ฅผ ์์ฑํ ๋๋ ๊ฐ ๋จ๊ณ๋ฅผ ์งํํ๊ณ ๋ชจ๋ ์๋๋ฆฌ์ค๋ฅผ ๊ณ ๋ คํ์ฌ ์ฝ๋๋ฅผ ์ต๋ํ ์ธ๋ถํํ์ธ์. ์๋ฅผ ๋ค์ด, ์ด ์์ฌ ์ฝ๋์์๋ ์ฃผ์ ์์ ๋ฌผ์ ์ฑ์ฐ๋ผ๊ณ ํฉ๋๋ค. ๊ทธ๋ฐ๋ฐ ์ฃผ์ ์๊ฐ ์ด๋ฏธ ๊ฝ ์ฐฌ ์ํ๋ผ๋ฉด ์ด๋ป๊ฒ ํด์ผ ํ ๊น์? ๊ทธ๋๋ ๋ก๋ด์ด ๊ณ์ํด์ ์ฃผ์ ์์ ๋ฌผ์ ์ฑ์์ผ ํ ๊น์? ์๋๋ฉด ์ฃผ์ ์๋ฅผ ๋น์์ผ ํ ๊น์? ๊ฐ๋ฐ์์ฒ๋ผ ์๊ฐํ ๋๋ ๋ค์ํ ๊ด์ ์์ ์๊ฐํ๊ณ ์ฌ๋ฌ ๊ฐ๋ฅ์ฑ์ ๊ณ ๋ คํด์ผ ํฉ๋๋ค.
์ฝ๋ ์ฃผ์ ์์ฑ
๊ด๋ฆฌ์๋ก์ ์ค๋ช ์ด ์๋ ์ฌ์ฉ์ ์ ์ ํ๋๋ฅผ ๋ณด์ ์ ์ด ์๋์? ํ๋์ ๋งค์ฐ ๋ช ํํ๊ณ ์ถฉ๋ถํ ์ค๋ช ์ ์ ๊ณตํ๋ ์ด๋ฆ์ด ์์ผ๋ฉด ์ฉ๋๋ฅผ ๋ช ํํ๊ฒ ์๊ธฐ ์ด๋ ค์ธ ์ ์์ต๋๋ค. ์ฝ๋์์ ์ฃผ์์ ์ฝ๋ ๋ธ๋ก(ํ๋ ์ด์์ ์ฝ๋ ์ค)์ ์ฉ๋๋ฅผ ์ค๋ช ํฉ๋๋ค. ๊ฐ๋ฐ์๋ ์ฃผ์์ ํตํด์ ์์ฑํด์ผ ํ๋ ์ฝ๋, ๊ธฐ์กด ์ฝ๋์ ์ญํ , ์ค๋ฅ๊ฐ ์๋ ์ฝ๋์ ๋ณธ๋ ๋ชฉ์ ์ ํ์ ํ ์ ์์ต๋๋ค. ์ฝ๋ ๋ด์ ์ฃผ์์ ์ถ๊ฐํ ๋๋ ์ปดํจํฐ๊ฐ ํด๋น ์ฃผ์์ ์ฝ๊ฑฐ๋ ์คํํ์ง ์๋๋ก ํน์ ๋ฌธ์๋ก ๊ฐ์ธ์ผ ํฉ๋๋ค.
์ฝ๋์ ์ฃผ์์ ์์ฑํ๋ ๋ ๊ฐ์ง ๋ฐฉ๋ฒ์ธ ํ ์ค ์ฃผ์๊ณผ ์ฌ๋ฌ ์ค ์ฃผ์์ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
ํ ์ค ์ฃผ์
ํ ์ค ์ฃผ์์ ๋ ๊ฐ์ ์ฌ๋์( // )๋ก ์์ํฉ๋๋ค. ์ปดํจํฐ ํ๋ก๊ทธ๋จ์ ์คํ ์ ๊ฐ์ ์ค์์ // ์ค๋ฅธ์ชฝ์ ์๋ ๋ฌธ์๋ฅผ ๋ฌด์ํฉ๋๋ค. ์:
Integer i = 1; //This comment will be ignored when the code is run.
์ฌ๋ฌ ์ค ์ฃผ์
์ฌ๋ฌ ์ค ์ฃผ์์ ์ฌ๋์ ๋ณํ( /* )๋ก ์์ํ๊ณ ๋ณํ ์ฌ๋์( */ )๋ก ๋๋ฉ๋๋ค. ์:
Integer i = 1; /*This comment is
ignored when the
code runs*/Teatime ์์ฌ ์ฝ๋๋ฅผ ์ฃผ์์ผ๋ก ๋ฐ๊พธ์ด ๋ณด๊ฒ ์ต๋๋ค. ์ฝ๋๋ฅผ ์ํํ๊ฒ ๊ฐ๋ฐํ๋ ค๋ฉด ์ ์ฌ ์ฝ๋๋ฅผ ๊ฐ์์ฒ๋ผ ์์ฑํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
- Developer Console์์ ์ ์ฌ ์ฝ๋์ ์ฌ๋ฌ ์ค ์ฃผ์์ ์ถ๊ฐํฉ๋๋ค. ๊ทธ๋ฌ๋ฉด ๋ค์๊ณผ ๊ฐ์ด ํ์๋ฉ๋๋ค.
/*Get Utensils and Ingredients Get Teacup Get Spoon Get Tea Kettle Get Teapot Get Tea Get Sugar Boil water in a Tea Kettle Fill Kettle with Water Switch Kettle On Wait for Kettle to Boil Make Tea in Teapot Put Tea in Teapot Put Boiling Water in Teapot Wait 2 Minutes Add Tea and Sugar to Teacup Pour Tea in Teacup Put 1 teaspoon of Sugar in Teacup Stir Tea in Teacup Serve Tea to a Friend*/ public class Teatime { } -
File(ํ์ผ) | Save(์ ์ฅ)๋ฅผ ํด๋ฆญํฉ๋๋ค.
์ด ๋ชจ๋์์๋ Apex ์ฝ๋๋ฅผ ์์ฑํ ๋ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ๋ฐ๋ฅด๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์๋๋ค. ์ด๋ฅผ ํตํด ๋ฐ์ด๋ ๊ฐ๋ฐ์๊ฐ ๋๊ธฐ ์ํ ๊ธฐ๋ฐ์ ๋ง๋ จํ ์ ์์ ๊ฒ์ ๋๋ค.
์ด์ ์ฝ๋์ ๋ํ ๊ธฐ์ด ์ง์์ ์ ํ์ผ๋ ๋ณธ๊ฒฉ์ ์ผ๋ก ์ฝ๋ฉ์ ์์ํด ๋ณด๊ฒ ์ต๋๋ค.
๋ฆฌ์์ค
