MapleStory Finger Point

โšช ๊ฐœ๋… ์ •๋ฆฌ

Library | Framework | API ๊ฐœ๋…

HYEJU01 2025. 2. 26. 16:57
 

๋ชฉ์ฐจ

 

     

     

     

    ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ(Library)

    • ์ฃผ๋„๊ถŒ์ด ๊ฐœ๋ฐœ์ž (ํ•„์š”ํ•  ๋•Œ ํ˜ธ์ถœ) 
    • ์ฝ”๋“œ ๋ชจ์Œ์ž„
    • ์ฝ”๋“œ, ๋ชจ๋“ˆ, ํŒจํ‚ค์ง€ ํ˜•ํƒœ๋กœ ์ œ๊ณต๋จ
    • ๊ฐœ๋ฐœ์ž๊ฐ€ ์ฝ”๋“œ ํ๋ฆ„ ์ œ์–ด ๊ฐ€๋Šฅ

     

    ๐Ÿ“Œ JavaScript

    jQuery ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ DOM ์กฐ์ž‘ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ, Ajax ์š”์ฒญ ๋ธŒ๋ผ์šฐ์ € ํ˜ธํ™˜์„ฑ ๊ฐœ์„ 
    Lodash ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ  ๋ฐฐ์—ด, ๊ฐ์ฒด ์œ ํ‹ธ๋ฆฌํ‹ฐ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฐ์ดํ„ฐ ์กฐ์ž‘ ์ตœ์ ํ™”
    Moment.js / Day.js ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋‚ ์งœ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋‚ ์งœ ํฌ๋งท ๋ณ€ํ™˜
    Axios ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ HTTP ํด๋ผ์ด์–ธํŠธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ REST API ํ˜ธ์ถœ

     

     

     


    ํ”„๋ ˆ์ž„์›Œํฌ(Framework)

    • ์ฃผ๋„๊ถŒ์ด ํ”„๋ ˆ์ž„์›Œํฌ (๊ฐœ๋ฐœ์ž๊ฐ€ ์ข…์†๋จ, ๊ทœ์น™๊ตฌ์กฐ๋ฅผ ๋”ฐ๋ฆ„) 

     

    ๐Ÿ“Œ ๋ฐฑ์—”๋“œ

    Spring Java ๋Œ€๊ทœ๋ชจ ์‹œ์Šคํ…œ, ๊ฐ์ฒด ์ง€ํ–ฅ ๊ธฐ์—… ์‹œ์Šคํ…œ, ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜
    Django Python ๋น ๋ฅธ ๊ฐœ๋ฐœ, ๋ณด์•ˆ ๊ฐ•ํ•จ ๋ฐ์ดํ„ฐ ๋ถ„์„, ์Šคํƒ€ํŠธ์—… ์›น ์„œ๋น„์Šค
    Express.js JavaScript Node.js ๊ธฐ๋ฐ˜, ๊ฒฝ๋Ÿ‰ API ์„œ๋ฒ„, RESTful API
    Ruby on Rails Ruby ์ฝ”๋“œ ๊ฐ„๊ฒฐ, ๋น ๋ฅธ ๊ฐœ๋ฐœ ์Šคํƒ€ํŠธ์—…, ์›น ์„œ๋น„์Šค
    Flask Python ๊ฐ€๋ฒผ์šด ๊ตฌ์กฐ, ํ™•์žฅ์„ฑ ์†Œ๊ทœ๋ชจ ์›น ์„œ๋น„์Šค

     

     

    ๐Ÿ“Œ ํ”„๋ก ํŠธ์—”๋“œ

    React JavaScript ์ปดํฌ๋„ŒํŠธ ๊ธฐ๋ฐ˜, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ฑ๊ฒฉ๋„ ์žˆ์Œ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜, SPA
    Vue.js JavaScript ์‰ฌ์šด ํ•™์Šต, ๊ฐ€๋ฒผ์šด ๊ตฌ์กฐ ์ค‘์†Œํ˜• ์›น ํ”„๋กœ์ ํŠธ
    Angular TypeScript ๊ตฌ๊ธ€ ์ง€์›, ๊ฐ•๋ ฅํ•œ ๊ธฐ๋Šฅ ๋Œ€๊ทœ๋ชจ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ์›น

     

     

    ๐Ÿ“Œ ๊ฒŒ์ž„

    Unity C# ๋ฉ€ํ‹ฐํ”Œ๋žซํผ, ํ’๋ถ€ํ•œ ๊ธฐ๋Šฅ ๋ชจ๋ฐ”์ผ/PC/VR ๊ฒŒ์ž„
    Unreal Engine C++ ๊ณ ํ€„๋ฆฌํ‹ฐ ๊ทธ๋ž˜ํ”ฝ AAA๊ธ‰ ๊ฒŒ์ž„, ์˜ํ™”

     

     

    ๐Ÿ“Œ ๋ณด์•ˆ

    Spring Security ์ธ์ฆ/์ธ๊ฐ€ ๋กœ๊ทธ์ธ, ๊ถŒํ•œ ๊ด€๋ฆฌ
    JWT (Java JWT) ํ† ํฐ ๊ธฐ๋ฐ˜ ์ธ์ฆ ์‚ฌ์šฉ์ž ๋กœ๊ทธ์ธ ์„ธ์…˜ ๊ด€๋ฆฌ
    Bouncy Castle ์•”ํ˜ธํ™” ๊ธฐ๋Šฅ ์ œ๊ณต ๋ฐ์ดํ„ฐ ์•”ํ˜ธํ™”, ํ•ด์‹ฑ
    Apache HttpClient HTTP ์š”์ฒญ ์ฒ˜๋ฆฌ API ์„œ๋ฒ„ ํ†ต์‹ 

     

     

    ๐Ÿ“Œ  DB

    JDBC Java DB ์—ฐ๊ฒฐ ํ‘œ์ค€ ๊ธฐ๋ณธ์ ์ธ DB ์—ฐ๋™
    JPA (Hibernate) ๊ฐ์ฒด-๊ด€๊ณ„ ๋งคํ•‘(ORM) ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๋™
    MyBatis SQL ๊ธฐ๋ฐ˜ ๋งคํ•‘ SQL์„ ์ง์ ‘ ์ œ์–ด

     

     

    ๐Ÿ“Œ ํ…Œ์ŠคํŠธ & ๋””๋ฒ„๊น…

    JUnit Java ๋‹จ์œ„ ํ…Œ์ŠคํŠธ ์œ ๋‹› ํ…Œ์ŠคํŠธ ์ž‘์„ฑ
    Mockito Mock ๊ฐ์ฒด ์ƒ์„ฑ ๊ฐ€์งœ ๋ฐ์ดํ„ฐ๋กœ ํ…Œ์ŠคํŠธ
    Selenium ์›น UI ์ž๋™ํ™” ํ…Œ์ŠคํŠธ ๋ธŒ๋ผ์šฐ์ € ํ…Œ์ŠคํŠธ
    Postman API ํ…Œ์ŠคํŠธ REST API ํ˜ธ์ถœ ๋ฐ ๋””๋ฒ„๊น…

     


    API (Application Programming Interface) 

    • ๋ง๊ทธ๋Œ€๋กœ ์†Œํ”„ํŠธ์›จ์–ด๊ฐ„์˜ ์ƒํ˜ธ์ž‘์šฉ ๊ทœ์น™,๋„๊ตฌ (์ธํ„ฐํŽ˜์ด์Šค ์—ญํ• )
    • ์š”์ฒญ์„ ๋ณด๋‚ด๋ฉด ์‘๋‹ต์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์Œ
    • ํ•จ์ˆ˜, ํ”„๋กœํ† ์ฝœ, ์—”๋“œํฌ์ธํŠธ ๋“ฑ์˜ ํ˜•ํƒœ๋กœ ์กด์žฌ
    • API ์ œ๊ณต์ž๊ฐ€ ํ๋ฆ„ ์ œ์–ด

     

    ์˜คํ”ˆ API ๋ˆ„๊ตฌ๋‚˜ ์‚ฌ์šฉ ๊ฐ€๋Šฅ ๋‚ ์”จ API, ๊ตฌ๊ธ€ ์ง€๋„ API
    ์‚ฌ์„ค API ๋‚ด๋ถ€ ์‹œ์Šคํ…œ ์ „์šฉ ์‚ฌ๋‚ด ERP, ์€ํ–‰ ๋‚ด๋ถ€ ์‹œ์Šคํ…œ
    ํŒŒํŠธ๋„ˆ API ํŠน์ • ๊ธฐ์—… ํŒŒํŠธ๋„ˆ ์ „์šฉ ๊ฒฐ์ œ API (์นด์นด์˜คํŽ˜์ด, ํ† ์Šค)
    ์ปดํฌ์ง€ํŠธ API ์—ฌ๋Ÿฌ API ํ˜ธ์ถœ์„ ๋ฌถ์–ด์„œ ์ฒ˜๋ฆฌ ์‚ฌ์šฉ์ž ์ •๋ณด + ์ฃผ๋ฌธ ๋‚ด์—ญ ์กฐํšŒ

     

    REST API ๊ฐ€์žฅ ๋„๋ฆฌ ์‚ฌ์šฉ, HTTP ๊ธฐ๋ฐ˜ ์›น ์„œ๋น„์Šค, ๋ชจ๋ฐ”์ผ ์•ฑ
    SOAP API XML ๊ธฐ๋ฐ˜, ๋ณด์•ˆ ๊ฐ•๋ ฅ ๊ธˆ์œต, ๊ณต๊ณต๊ธฐ๊ด€
    GraphQL API ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋งŒ ์„ ํƒ์  ์š”์ฒญ SNS, ๋Œ€ํ˜• ๋ฐ์ดํ„ฐ ์„œ๋น„์Šค
    gRPC API ๋น ๋ฅด๊ณ  ํšจ์œจ์ ์ธ ๋ฐ”์ด๋„ˆ๋ฆฌ ์ „์†ก ์‹ค์‹œ๊ฐ„ ์ŠคํŠธ๋ฆฌ๋ฐ, IoT
    WebSocket API ์‹ค์‹œ๊ฐ„ ์–‘๋ฐฉํ–ฅ ํ†ต์‹  ์ฑ„ํŒ…, ์‹ค์‹œ๊ฐ„ ์•Œ๋ฆผ

     

     


    ๐Ÿ“Œ ์ž๋ฐ”

    Lombok Getter/Setter ์ž๋™ ์ƒ์„ฑ ๊ฐ์ฒด ์ƒ์„ฑ ์‹œ ์ฝ”๋“œ ๊ฐ„์†Œํ™”
    JPA (Hibernate) ORM(๊ฐ์ฒด-๊ด€๊ณ„ ๋งคํ•‘) ์ง€์› ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๋™
    Apache Commons ๋ฌธ์ž์—ด ์ฒ˜๋ฆฌ, ์ปฌ๋ ‰์…˜ ์œ ํ‹ธ ์œ ํ‹ธ๋ฆฌํ‹ฐ ๊ธฐ๋Šฅ ์ œ๊ณต
    Gson / Jackson JSON ๋ฐ์ดํ„ฐ ๋ณ€ํ™˜ REST API ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ

     


    ์‰ฝ๊ฒŒ ์ดํ•ดํ•˜๊ธฐ 

     

    ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ, ํ”„๋ ˆ์ž„์›Œํฌ , API ๊ฐœ๋…์ด ๊ฝค๋‚˜ ํ—ท๊ฐˆ๋ ธ๋Š”๋ฐ 

    ์ด๋ ‡๊ฒŒ ์ƒ๊ฐํ•˜๋ฉด ๋˜๊ฒŒ ์ดํ•ด๊ฐ€ ์ž˜ ๋œ๋‹ค.

     

     

     

    ๐Ÿ“Œ ํ”„๋ ˆ์ž„์›Œํฌ : ์š”์‹์—…์˜ ํ”„๋žœ์ฐจ์ด์ฆˆ

    ์ •ํ•ด์ ธ์žˆ๋Š” ํ”„๋žœ์ฐจ์ด์ฆˆ ๋งค์žฅ ์šด์˜๋ฒ•, ๋ฉ”๋‰ด๊ตฌ์„ฑ(๊ตฌ์กฐ์™€ ๋™์ž‘๋ฐฉ์‹)์— ๋”ฐ๋ผ ์šด์˜(๊ฐœ๋ฐœ)ํ•˜๊ฒŒ ํ•œ๋‹ค. 

     

     

    ๐Ÿ“Œ API :  ์ข…์—…์› or ๋ฉ”๋‰ดํŒ ์—ญํ• 

    ์†๋‹˜์ด ๋ฉ”๋‰ดํŒ์— (API ์•ค๋“œํฌ์ธํŠธ, ๊ธฐ๋Šฅ๋ชฉ๋ก) ์žˆ๋Š” ๋ฉ”๋‰ด๋ฅผ ์ฃผ๋ฌธ (API ํ˜ธ์ถœ) ์–ด๋–ป๊ฒŒ ์ฒ˜๋ฆฌ๋˜๋Š”์ง€๋Š” ์ฃผ๋ฐฉ(์„œ๋ฒ„) ๊ฐ€ ์•Œ์•„์„œ ํ•œ๋‹ค. ์ดํ›„ ์†๋‹˜์—๊ฒŒ ์Œ์‹ ์ „๋‹ฌ (API ์‘๋‹ต) 

     

    ๐Ÿ“Œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ : ์Œ์‹ ์žฌ๋ฃŒ or ๋„๊ตฌ๋“ค

    ์žฌ๋ฃŒ-๋„๊ตฌ(๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ)๋ฅผ ์–ด๋–ป๊ฒŒ ์‚ฌ์šฉํ• ์ง€๋Š” ์š”๋ฆฌ์‚ฌ(๊ฐœ๋ฐœ์ž) ๊ฐ€ ๊ฒฐ์ •ํ•˜๊ณ ,  ๋‹ค์–‘ํ•œ ์š”๋ฆฌ๋“ค์„ ๋งŒ๋“ ๋‹ค (๊ธฐ๋Šฅ ๊ตฌํ˜„)

     

    (์ผ๋ฐ˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์•„๋‹Œ API ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋„ ์žˆ๋Š”๋ฐ ์ด ๊ฒฝ์šฐ์—๋Š” API ๋ฅผ ์‰ฝ๊ฒŒ ์‚ฌ์šฉํ•˜๋„๋ก ์ œ๊ณตํ•˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ด๋‹ค)