๋๊ตฌ๋ ์ง Typescript ์ ์๋ฅผ ์์ฒญํ๊ฑฐ๋ Typescript์ ํจ๊ป ๊นํธ์ ์ฌ์ฉํด ๋ณด์ จ์ต๋๊น? ๋๋ ๊ทธ๋ค์ ๋ง๋ค๊ณ ์ถ์ง๋ง ๊ทธ๋ค์ด ์ค์ ๋ก ์ํ๋์ง ํ์คํ์ง ์์ต๋๋ค.
๋ด๊ฐ ์๋ ๊ฒ์ ์๋๋๋ค. ์ ์๋ฅผ ์ถ๊ฐํ๊ณ ์ถ๋ค๋ฉด ์ข์ ๊ฒ์ ๋๋ค. ๋๋ ๊ฐ์ธ์ ์ผ๋ก Typescript๋ฅผ ๋ง์ดํ์ง ์์๋ค. ๋ง์ฝ ๋น์ ์ด ์์ ๋ฅผ ์ ์ถํ๊ณ ์ถ๋ค๋ฉด ์ฐ๋ฆฌ๋ ๊ทธ๊ฒ์ readme์ ํ์คํ ์ถ๊ฐ ํ ๊ฒ์ด๋ค.
์ด ์ฃผ์ ์ ๋ํ ํ๋์ด ์์ด ์ง๊ธ์ ์ข ๋ฃ๋ฉ๋๋ค. ๋๋ ๋ํ typescript ์ฌ์ฉ์๊ฐ ์๋๋๋ค. ๋ ์์ฒญ ๋ ๊ธฐ๋ฅ์ด๋๋ฉด ๋ค์ ์ด๋ฆฝ๋๋ค.
Typescript๋ ์ด์ ๋งค์ฐ ๊ฒฌ๊ณ ํ ์ ํ์ ๋๋ค. ๊นํธ์ ๋ํ ํ์ดํ์ด ์์ผ๋ฉด ์ข์ ๊ฒ์ ๋๋ค.
@talensjr ๋์์ด ํ์ ํ์ ๊ฐ์? :)
ํ์คํ ์ปค๋ฎค๋ํฐ ์ฃผ๋์ ์ด์ด์ผํฉ๋๋ค. ํต์ฌ ํ์ ์ด๋ ๋๊ตฌ๋ ํ์ฌ Typescript๋ฅผ ์ฌ์ฉํ์ง ์์ต๋๋ค. ๋๊ตฐ๊ฐ๊ฐ ๋์ ์ํ๊ณ ์ถ๋ค๋ฉด ๋ฌธ์ ๋ฅผ ๋ค์ ์ด์ด ์ด์ ํ์ ๋ฃ์ ์ ์์ต๋๋ค.
์ ๋๊ณ ์ถ์ต๋๋ค. ์ง๊ธ ๋น์ฅ ์๊ฐ์ ์ผ๋ง๋ ํ ์ ํ ์ ์๋์ง ๋ชจ๋ฅด๊ฒ ์ต๋๋ค. ๋์์ ๋๋ฆฌ๊ฒ ์ต๋๋ค.
๋ค์ ์ด๊ณ ์ด๋ฆ์ ๋ณ๊ฒฝํฉ๋๋ค. @omeid ์ @talensjr ๋๋ ์ด๊ฒ์ ๋ํด ๋ํฌ๋ค์๊ฒ ์งํ๋ด์ ๋๊ธธ๊ฑฐ์ผ.
๋๋ ์ด๊ฒ์ ๊ท ์ด์์ฃผ๊ณ ์ด๋ป๊ฒ ์งํ๋๋์ง ๋ณด๋ ค๊ณ ๋ ธ๋ ฅํ ๊ฒ์ ๋๋ค.
https://github.com/DefinitelyTyped/DefinitelyTyped ์ ์ถ๊ฐํ๋ ๊ฒ์ด ์๋นํ ๋น ๋ฅผ ์ ์์ต๋๋ค Express ์ ์ ๋ฅผ ํ์ฅ ํ ๋ค์ API์ ๋ํ ์ ์๋ฅผ ์ถ๊ฐ ํ ์ ์์ต๋๋ค. ์๋น์ค ์ธํฐํ์ด์ค์ ๋ํ ์ ์๋ฅผ ์ถ๊ฐํ๋ ๊ฒ๋ ์๋ฏธ๊ฐ์์ ๊ฒ์ ๋๋ค.
์ ๋ ํ์ฌ 7 ์ 15 ์ผ๋ก ์ค์ ๋ ๋ค์ ๋ฆด๋ฆฌ์ค์ ์ด๊ฒ์ ์ถ๊ฐํ์ต๋๋ค. @omeid ๋น์ ์ด๋ ๋ค๋ฅธ ์ฌ๋์ด ๊ทธ๋๊น์ง ์ด๊ฒ์ ํ ์ ์๋์ง ์๋ ค์ฃผ์ญ์์ค.
์๋ ํ์ธ์ @daffl ,
๋ถํํ๋ ๋๋ ์ผ์ ๊ฝค ์ต์ํด ์ ธ์ ๊ณง ์ด๊ฒ์ ์กฐ์ฌ ํ ์ ์์ต๋๋ค.
๋ค๋ฅธ ์ฌ๋์ด ์ด๊ฒ์ ์ ํํ๋ ๋ฐ ๊ด์ฌ์ด์๋ ๊ฒฝ์ฐ๋ฅผ ๋๋นํ์ฌ ๋ฆด๋ฆฌ์ค ๋ ์ง๊ฐ ๊ฐ๊น์ ์ง ๋๊น์ง์ด ์ผ์ ์ ๊ณต๊ฐํ๊ณ ์ด์ ํ์ ๋จ๊ฒจ ๋๊ฒ ์ต๋๋ค. TypeScript ์ธํฐํ์ด์ค์ ์ต์ํ ์ฌ๋์ด๋ผ๋ฉด ๋๊ตฌ๋ ์๋นํ ํ ์์๋ ๊ฒ ๊ฐ์ต๋๋ค.
๋ฌผ๋ก ์ฐ๋ฆฌ๋ TypeScript ์ ์์ ๊ธฐ์ฌํ๊ณ ์ํ๋ ๋ชจ๋ ์ฌ๋์ ๋๊ธฐ ์ํด ํ ์์๋ ๋ชจ๋ ๊ฒ์ ํ ๊ฒ์ด์ง๋ง, ์๋ฌด๋ ๊ทธ๊ฒ์ ์ ํํ์ง ์์ ๊ฒ ๊ฐ๊ธฐ ๋๋ฌธ์์ด ๋ฌธ์ ๋ฅผ ์ข ๊ฒฐ ํ ๊ฒ์ ๋๋ค.
์น ์คํฐ์ด ํจํค์ง๋ฅผ ๋ถ์ ํ ์ ์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ๋ ์ ๋ง ๊ฐ๊ณ ์ถ์ต๋๋ค.
๋ฐ๋ฒจ๊ณผ์ ๋ฒ๋ค๋ง ๋๋ฌธ์ผ ๊ฒ๋๋ค
webstorm์ ์ฆ app.configure
๊ฐ ์ ์๋์ง ์์ ํจ์๋ผ๊ณ ๋งํฉ๋๋ค.
community stubs
http://definitelytyped.org/ ๊ฒ์
๋๋ Typescript ์์ฒด๋ฅผ ์ฌ์ฉํ์ง ์์ง๋ง ๋ชจ๋ ๊ฒ์ ๋ฐ์ค์ ๊ธ๋ ๊ฒ์ด ์ฌ์ ํ ์ง์ฆ๋ฉ๋๋ค.
Babel๊ณผ์ ๋ฒ๋ค๋ง์ด ์ค์ ๋ก ์ฐจ์ด๋ฅผ ๋ง๋ค์ด์๋ ์๋ฉ๋๋ค. ์ฑ์ ์ถ๊ฐ๋๋ ๋ฐฉ์ ๋๋ฌธ์ ์ ์ ์ผ๋ก ๋ถ์ ํ ์ ์์ ์๋ ์์ต๋๋ค. Webstorm์ ์ผ๋ฐ์ ์ผ๋ก JSDocs๋ ๊ณ ๋ คํฉ๋๋ค (ํ์ง๋ง ๊ฒ์ํ์ง ์์).
์ด๋ ์ชฝ์ด๋ TypeScript ์ ์์ ๋ฏธํด๊ฒฐ ๋ฌธ์ ๋ https://github.com/feathersjs/feathers/issues/381์ ๋๋ค. ๋ถ๋ช ํ TypeScript ์ ์๋ฅผ ๋ง๋๋ ๊ฒ์ ์ ๋ง ์ด๋ ต์ต๋๋ค. ์๋ํ๋ฉด ๋ชจ๋ ์ฌ๋๋ค์ด ๊ณ์ ์๊ตฌํ์ง๋ง ์๋ฌด๋ ์ค์ ๋ก ๊ทธ๋ ๊ฒ ํ ์์๋ ๊ฒ ๊ฐ์ง ์๊ธฐ ๋๋ฌธ์ ๋๋ค. : trollface :
๋ฌธ์ ๋ ๊ทธ๊ฒ๋ค์ ์ ์งํ๋ ค๋ฉด ์ ์์ ์ฝ๋๋ฒ ์ด์ค๋ฅผ ๋๊ธฐํ ์ํ๋ก ์ ์งํด์ผํ๋ค๋ ๊ฒ์ ๋๋ค.
@daffl write typescript ์ ์๋ ๋ค์๊ณผ ๊ฐ์ ์ด์ ๋ก ์ด๋ ต์ต๋๋ค.
์์์ ์ธ ๊ฒ์ ๋ช ์ ์ ์ผ๋ก ๋ง๋๋ ๋ฐฉ๋ฒ.
์ด๋ฅผ ๋ง๋ค๊ธฐ ์ํด ๋ง์ ์์ค ์ฝ๋์ ๋ฌธ์๋ฅผ ์ฐ๊ตฌํด์ผํ์ต๋๋ค. # 381
featherjs์์ typescript๋ก ์ด๋ป๊ฒ ํ๋ก๊ทธ๋๋ฐ ํ ์ ์์ต๋๊น?
๋ค์์ Slack ํ ๋ก ์ ์ผ๋ถ์ ๋๋ค.
alehn [11:56 AM]
typescript๋ก ๊นํธ์ด ๊ฐ๋ฅํฉ๋๊น?
smixx
[์คํ 12์ 11 ๋ถ]
https://github.com/feathersjs/feathers-typescript , ํต์ฌ ํ์ ๋๊ตฌ๋ TypeScript๋ฅผ ์ฌ์ฉํ์ง ์์ผ๋ฏ๋ก ์ปค๋ฎค๋ํฐ์์ ์ ์ง ๊ด๋ฆฌํฉ๋๋ค.
alehn [12:28 PM]
typescript๋ฅผ ์ด๋ป๊ฒ ์ฌ์ฉํฉ๋๊น?
์กฐํ
[12:31 PM]
์ ๊น, typescript์ ํจ๊ป ๊นํธ์ ์ฌ์ฉํ๊ณ ์ถ์ง๋ง typescript๊ฐ ์ด๋ป๊ฒ ์๋ํ๋์ง ๋ชจ๋ฅด์ญ๋๊น?
alehn [12:36 PM]
์, ํ์ดํ ์คํฌ๋ฆฝํธ ์์
์ผ๋ก ์๊ณ ์์ต๋๋ค. ๊ทธ๋์ ts๋ก ๊นํธ๋ก ํ๋ก๊ทธ๋๋ฐํ๋ ๋ฐฉ๋ฒ์ ๋ฌป์ต๋๋ค.
[12:37]
๋๋ es6 ์๋ฌด์ ์ผ๋ก ํ๋ก๊ทธ๋๋ฐํด์ผํฉ๋๋ค.
eddyystop
[12:39 PM]
@alehn .d.ts ํ์ผ์ TypeScript์ ๊ธฐ๋ณธ์
๋๋ค https://blog.mariusschulz.com/2014/05/19/using-typescripts-type-definition-files-to-get-tooling-support-for-plain-javascript #utilizing -type-definition-files-for-plain-javascript
๋ง๋ฆฌ์ฐ์ค ์์ธ
TypeScript์ ์ ํ ์ ์ ํ์ผ์ ์ฌ์ฉํ์ฌ ์ผ๋ฐ JavaScript์ ๋ํ ๋๊ตฌ ์ง์ ์ป๊ธฐ
TypeScript์ ์ ํ ์ ์ ํ์ผ์ JavaScript ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๊ณต์ฉ ์ธํฐํ์ด์ค๋ฅผ ์ค๋ช
ํ๋ ๋ฐ ์ ์ฉํฉ๋๋ค. Visual Studio ๋ฐ ReSharper๋ฅผ ์ฌ์ฉํ์ฌ ์ผ๋ฐ JavaScript ์ฝ๋์ ๋ํ ์๋ ์์ฑ ๋ฐ ์ค๋ช
์๋ฅผ ๊ฐ์ ธ ์ค๋ ๋ฐ ์ฌ์ฉํ ์์๋ ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์คํ 7:17์์ 2014 ๋
5 ์ 19 ์ผ
(ํธ์ง ๋จ)
[12:40]
๊ทธ๋ค์์ํ ์ ์ฒด ์ํ๊ณ๊ฐ ์์ต๋๋ค https://github.com/DefinitelyTyped/DefinitelyTyped
alehn [12:40 PM]
๊นํธ์ typescript๋ฅผ ์ฌ์ฉํ๊ณ ์์ต๋๊น? .ts
alehn [12:51 PM]
๋๋ ํ๋ก ํธ ์๋์ ๊ฐ๋ 4๋ฅผ ์ฌ์ฉํ๊ณ ์น ์๋น์ค๋ฅผ ์ํด ๋ฐฑ์๋์ ๊นํธ์ ์ฌ์ฉํด์ผํ์ง๋ง ts๋ก ํ๋ก๊ทธ๋๋ฐํ๊ณ js๋ฅผ ๋ฃ๊ณ ์ถ์ง ์์ต๋๋ค.
eddyystop
[12:52 PM]
๊ทธ๋ฐ ๋ค์ ์ ํํ .d.ts๋ฅผ ์ฌ์ฉํฉ๋๋ค. TypeScript๋ฅผ ์ฌ์ฉํ๋ ์๋ฒฝํ๊ฒ ๋ง์กฑ์ค๋ฝ๊ณ ์๋ฒฝํ๊ฒ ํ์ฉ๋๋ ๋ฐฉ๋ฒ์
๋๋ค. ์๋ฐฑ ๊ฐ์ ํจํค์ง๊ฐ ์ด๋ ๊ฒ ๋ฐฐ๋ฌ๋ฉ๋๋ค.
[12:54]
์์ ์ ์ฝ๋์ ๋ํ ์ธ๋ผ์ธ TypeScript ์ ์๊ฐ ์๋ค๊ณ ๊ฐ์ ํ๋ฏ๋ก ์๋ฒ ์ฝ๋๋ฅผ ์คํํ๊ธฐ ์ ์ ๋น๋ ๋จ๊ณ๋ฅผ ์คํํด์ผํฉ๋๋ค. (ํธ์ง ๋จ)
alehn [์คํ 1์]
์๋ ๋๋ ์นํฉ์ ์ฌ์ฉํ๋ค
[1:01]
๋๋ TS์์๋ง ํ๋ก๊ทธ๋๋ฐ
bazaglia [1:36 PM]
๊ฐ์
#general
j2l4e [1:38 PM]
@alehn ํ์ฌ TS ์ ์๋ ์งํ์ค์ธ ์์
์
๋๋ค. ๋ชจ๋ ๊ฒ์ด ์ ๋๋ก ์๋ํ๋๋กํ๋ ค๋ฉด node-modules / feathers *์์ ๋ชจ๋ * .d.ts ํ์ผ์ ์ญ์ ํ๊ณ types.d.ts ํ์ผ์ declare module feathers; declare module feathers-*;
๋ฅผ ๋ฃ์ผ์ญ์์ค. ๊ทธ๊ฒ์ ๋น์ ์๊ฒ ์ง๋ฅ์ ์ป์ง ๋ชปํ์ง๋ง ์๋ํ๊ฒ ๋ง๋ญ๋๋ค (ํธ์ง ๋จ)
[1:39]
๋งํฌ ๋ค์ด์์ ๋ณํ๋ฅผ ์ด๋ป๊ฒ ์ด์ค์ผ์ดํํฉ๋๊น?
ํ
๋ ์ค๋ฅ [1:40 PM]
what's wrong with ur askterisks * * *
alehn [1:40 PM]
๊ฐ์ฌ
j2l4e [1:41 PM]
๋น์ ์ด ์์ ๋๊ณ ์๋ค๋ฉด ... ํ์ดํ์ ์ผ๋ฐ์ ์ผ๋ก ์๋ํ์ง๋ง ์ ์๋ฅผ ์ ๊ฑฐํ๊ณ ์์ผ๋ ์นด๋ ์ ์๋ฅผ ์ ์๋ฆฌ์ ๋์ด์ผ ํ ํจํค์ง๊ฐ์์ ์ ์์ต๋๋ค.
[1:42]
์์ ์๊ฒ ๋ง๋ ๊ฒ์ ์๋ํด ๋ณผ ์ ์์ต๋๋ค.
[1:43]
๊ทธ ์ธ์๋ ์ต๊ทผ์ ์๊ฐ ๋ typescripts 'allowJS'์ค์ ์ ์ดํด๋ณด์์ผํฉ๋๋ค. ์ ์์ ๊ฐ์ฉ์ฑ์ ๊ด๊ณ์์ด TS ๋ฐ JS ํ์ผ์ ๋๋ํ ์ฌ์ฉํ ์ ์์ด์ผํฉ๋๋ค.
์ด ๋ฌธ์ ๋ ๋ซํ ํ ์ต๊ทผ ํ๋์ด ์๊ธฐ ๋๋ฌธ์ ์๋์ผ๋ก ์ ๊ฒผ์ต๋๋ค. ๊ด๋ จ ๋ฒ๊ทธ์ ๋ํด์ด ๋ฌธ์ ์ ๋ํ ๋งํฌ์ ํจ๊ป ์ ๋ฌธ์ ๋ฅผ์ฌ์ญ์์ค.