½Ç¹«¿¡ ÀûÇÕÇÑ Ç÷§Æû°ú ´Ù¾çÇÑ °³¹ß ÇÁ·¹ÀÓ¿öÅ© ¹× ¶óÀ̺귯¸®¸¦ ¼Ò°³ÇÏ°í, °¢ »óȲ¿¡ ¸Â´Â Ç÷§Æû ¹× ÇÁ·¹ÀÓ¿öÅ©¸¦ ¼±ÅÃÇÏ°í °³¹ßÇÏ´Â °úÁ¤À» ¾È³»ÇÑ´Ù. ÀÌ·± °úÁ¤À» ÅëÇؼ °³¹ßÀÇ ½Ä°ßÀ» ³ÐÈ÷°í, »õ·Î¿î °³¹ß ¹æ¹ýÀ» ÇнÀÇÏ¿© »õ·Î¿î ÇÁ·ÎÁ§Æ®°¡ »ý±æ ¶§ ´Ù¾çÇÑ ±¸Çö ¹æ¹ýÀ» °ËÅäÇÏ°í °áÁ¤ÇÒ ¼ö ÀÖµµ·Ï µµ¿ÍÁØ´Ù.
Chapter 1. ¼¹ö¸®½º(Serverless)¶õ?
1.1 ¼¹ö¸®½º °³¿ä
1.2 ¹é¿£µåÇü¼ºñ½º(Baas: Backend as a Service)
1.3 ÇÔ¼öÇü¼ºñ½º(FaaS: Function as a Service)
1.4 ¼¹ö¸®½ºÀÇ ÀåÁ¡
1.5 ¼¹ö¸®½ºÀÇ ´ÜÁ¡
1.6 Ç÷§Æûº° ¼¹ö¸®½º ¼ºñ½º
Chapter 2. AWS °³¿ä
2.1 AWS Áö¿ª ¹× °¡¿ë¿µ¿ª
2.2 AWS ¼ºñ½º ¼Ò°³
2.3 AWS ¼ºñ½º ¸ñ·Ï
Chapter 3. AWS °³¹ß ȯ°æ ¼³Á¤Çϱâ
3.1 Node.js¿Í ŸÀÔ½ºÅ©¸³Æ® ¼³Ä¡Çϱâ
3.2 ºñÁÖ¾ó ½ºÆ©µð¿À ÄÚµå(VSCODE) ¼³Ä¡Çϱâ
3.3 VSCode Ãßõ È®Àå(Extensions)
3.4 AWS-Cli ¼³Ä¡Çϱâ
3.5 Æ÷½ºÆ®¸Ç(PostMan) ¼³Ä¡
Chapter 4. AWS ¶÷´Ù·Î ¼¹ö¸®½º ½ÃÀÛÇϱâ
4.1 AWS °èÁ¤ ¸¸µé±â
4.2 ù ¼¹ö¸®½º ¾Û(AWS Console »ç¿ë)
4.3 ±× ¿Ü ¶÷´Ù ¿É¼Ç ¼³Á¤
4.4 aws-cli·Î ¶÷´Ù ÇÔ¼ö ¸¸µé±â
4.5 API °ÔÀÌÆ®¿þÀÌ ¿¬°á ÇØÁÖ±â
Chapter 5. ¼¹ö¸®½º ÇÁ·¹ÀÓ¿öÅ© ºñ±³
5.1 ClaudiaJS
5.2 ÀÚÆÄ(Zappa)
5.3 Apex
5.4 ¼¹ö¸®½º ÇÁ·¹ÀÓ¿öÅ©
Chapter 6. ¼¹ö¸®½º ÇÁ·¹ÀÓ¿öÅ©·Î AWS ¶÷´Ù ½ÃÀÛÇϱâ
6.1 ¼¹ö¸®½º ÇÁ·¹ÀÓ¿öÅ© ¼³Ä¡Çϱâ
6.2 ÇÁ·ÎÁ§Æ® ½ÃÀÛÇϱâ
6.3 ¶÷´Ù ¹èÆ÷¸¦ À§ÇÑ ±ÇÇÑ ¼³Á¤Çϱâ
6.4 API °ÔÀÌÆ®¿þÀÌ ¿¬°áÇؼ ¹èÆ÷Çϱâ
6.5 ÇÔ¼ö¸¸ ¹èÆ÷Çϱâ
6.6 ·Î±× È®ÀÎÇϱâ
6.7 ÇÁ·ÎÁ§Æ® Áö¿ì±â
6.8 ·ÎÄà °³¹ßȯ°æ ±¸¼ºÇϱâ
Chapter 7. ŸÀÔ½ºÅ©¸³Æ® ½ÃÀÛÇϱâ
7.1 ŸÀÔ½ºÅ©¸³Æ®(typescript) ¼Ò°³
7.2 ŸÀÔ½ºÅ©¸³Æ® ¼³Ä¡
7.3 ±âº» ŸÀÔ
7.4 ŸÀÔ º°Äª(type alias)
7.5 Let¿Í Const
7.6 ÇÔ¼ö(Function)
7.7 ÀÎÅÍÆäÀ̽º (Interface)
7.8 Ŭ·¡½º
7.9 °ÔÅÍ(getter) / ¼¼ÅÍ(setter)
7.10 ºñµ¿±âÈ ÇÁ·Î±×·¥
Chapter 8. ÇÒ ÀÏ ¸ñ·Ï(ToDo List) API ¼¹ö ¸¸µé±â
8.1 ŸÀÔ½ºÅ©¸³Æ®¿ë ¼¹ö¸®½º ¼¼ÆÃÇϱâ
8.2 ´ÙÀ̳ª¸ðµðºñ(DynamoDB) ·ÎÄÿ¡ ¼³Ä¡Çϱâ
8.3 ´ÙÀ̳ª¸ðµðºñ Å×ÀÌºí »ý¼º°ú ½Ãµå ¸¸µé±â
8.4 http ÀÀ´ä »óÅÂ(status) ÄÚµå ¸¸µé±â
8.5 Rest api ÀÀ´ä¿ë °ø¿ë ÇÔ¼ö ¸¸µé±â
8.6 µ¥ÀÌÅͺ£À̽º ¿¬°á ¸¸µé±â
8.7 ÇÒ ÀÏ Àüü Àбâ
8.8 ÇÒ ÀÏ µî·ÏÇϱâ
8.9 http ¸Þ¼µå(method)
8.10 id¸¦ ÅëÇؼ µ¥ÀÌÅÍ °¡Á®¿À±â
8.11 ÇÒ ÀÏ ¼öÁ¤Çϱâ
8.12 ¸®½ºÆ®¿¡ ÇÊÅ͸¦ °É¾î¼ µ¥ÀÌÅÍ °¡Á®¿À±â
8.13 ÇÒ ÀÏ µ¥ÀÌÅÍ »èÁ¦Çϱâ
8.14 VSCode¿¡¼ µð¹ö±ë ȯ°æ ±¸¼ºÇϱâ
8.15 ¹èÆ÷Çϱâ
Chapter 9. Vue.js·Î SPA ½ÃÀÛÇϱâ
9.1 SPA¶õ
9.2 SPA Ç÷§Æû
9.3 Vue ½ÃÀÛÇϱâ
9.4 À¥ ºê¶ó¿ìÀú °³¹ß µµ±¸
9.5 ÄÄÆ÷³ÍÆ® °³³ä
9.6 ÅÛÇø´ ¹®¹ý
9.7 Á¶°Ç¹®, ¹Ýº¹¹®, À̺¥Æ® Çڵ鸵
9.8 ½Ì±Û ÆÄÀÏ ÄÄÆ÷³ÍÆ®
9.9 Àü¿ª(Global) ÄÄÆ÷³ÍÆ®
9.10 ÄÄÆ÷³ÍÆ® À̸§ Ç¥±â¹ý
9.11 ÀζóÀÎ(inline) ÄÄÆ÷³ÍÆ®
9.12 Vue ÄÄÆ÷³ÍÆ® ¶óÀÌÇÁ»çÀÌŬÀÇ ÀÌÇØ
9.13 Vue ÄÄÆ÷³ÍÆ®ÀÇ ±¸¼º¿ä¼Ò Á¤¸®
Chapter 10. ŸÀÔ½ºÅ©¸³Æ®·Î Vue »ç¿ëÇϱâ
10.1 ŸÀÔ½ºÅ©¸³Æ®·Î Vue ½ÃÀÛÇϱâ
10.2 Vue ÇÁ·ÎÁ§Æ® ÆÄÀÏ ¼³¸í
10.3 ŸÀÔ½ºÅ©¸³Æ® ¼³Á¤
10.4 Main.ts ÆÄÀÏ ºÐ¼®
10.5 App.vue ÆÄÀÏ
10.6 App.vue ÆÄÀÏÀ» ³ª´©±â
10.7 ÄÄÆ÷³ÍÆ® µî·Ï
10.8 props
10.9 methods¿Í computed
10.10 ¿ÍÄ¡(watch)
10.11 Æû ÀÔ·Â ¹ÙÀεù
10.12 props ¾ç¹æÇâ ¹ÙÀεù
10.13 ºÎ¸ð ÄÄÆ÷³ÍÆ® Á¢±ÙÇϱâ
10.14 ¶ó¿ìÅÍ(router)
10.15 Vuex
Chapter 11. Vue¸¦ ÀÌ¿ëÇؼ ÇÒ ÀÏ ¸ñ·Ï ¸¸µé±â
11.1 ÇÁ·ÎÁ§Æ® »ý¼ºÇϱâ
11.2 ±âº» ÄÄÆ÷³ÍÆ® ¸¸µé±â
11.3 ÇÒ ÀÏ ÄÄÆ÷³ÍÆ® ¸¸µé±â
11.4 ¾ç¹æÇâ ÄÄÆ÷³ÍÆ®
11.5 µ¥ÀÌÅÍ ÀúÀåÇϱâ
Chapter 12. Todo API¿¡¼ µ¥ÀÌÅÍ ÀÐ¾î ¿À±â
12.1 ¼³Á¤ ÆÄÀÏ ¸¸µé±â
12.2 dotenv¸¦ ÀÌ¿ëÇÑ ¼³Á¤ ÆÄÀÏ
12.3 API¿¡¼ µ¥ÀÌÅÍ ÀÐ°í ¾²±â
12.4 Vue Ç÷¯±×ÀÎ(plugin) »ç¿ëÇϱâ
12.5 ÇÒ ÀÏ ½Ã°£ ÀÚµ¿À¸·Î ¾÷µ¥ÀÌÆ® Çϱâ
Chapter 13. Vue UI ¶óÀ̺귯¸® Àû¿ëÇϱâ
13.1 Vue UI ÇÁ·¹ÀÓ¿öÅ©µé ¼Ò°³
13.2 Todo List¿¡ UI ÄÄÆ÷³ÍÆ® ¶óÀ̺귯¸® Àû¿ëÇϱâ
Chapter 14. GraphQL
14.1 GraphQLÀ̶õ?
14.2 Çʵå(Fields)
14.3 ÀÎÀÚ(Arguments)
14.4 º°Äª(Aliases)
14.5 ÇÁ·¡±×¸ÕÆ®(Fragments)
14.6 Äõ¸®(Queries)¿Í ¹ÂÅ×À̼Ç(Mutations)
14.7 ½ºÄ®¶ó ŸÀÔ(Scalar types)
14.8 °´Ã¼ ŸÀÔ°ú Çʵå(Object types and fields)
14.9 º¯¼ö(Variables)
14.10 GraphQL ±âº»ÀûÀÎ È帧
14.11 ±âÃÊÀûÀÎ ¼¹ö Á¦ÀÛ ¸Àº¸±â
14.12 TypeGraphQL
Chapter 15. Docker·Î µ¥ÀÌÅͺ£À̽º ¼³ÁöÇϱâ
15.1 µµÄ¿(Docker) ¼Ò°³
15.2 ÄÁÅ×À̳Ê(Container)¿Í °¡»ó¸Ó½Å(Virtual Machine)
15.3 µµÄ¿ÀÇ ÀåÁ¡
15.4 µµÄ¿ ¿¡µð¼Ç(Docker editions)
15.5 µµÄ¿ ¼³Ä¡Çϱâ
15.6 µµÄ¿ÀÇ ½ÇÇà È帧
15.7 µµÄ¿ CLI
15.8 µµÄ¿ À̹ÌÁö ¸¸µé±â
15.9 µµÄ¿ ÄÄÆ÷¿ìÀú(docker compose)
15.10 µµÄ¿ ÄÄÆ÷¿ìÀú ÁÖ¿ä ¸í·É¾î
15.11 docker-compose.yml ±âº» »ç¿ë¹ý
15.12 MySQL ¼³Ä¡ Compose ¿¹Á¦
15.13 ´Ù¸¥ ÄÁÅ×À̳ʿ¡ Á¢¼ÓÇϱâ
Chapter 16. ORM »ç¿ëÇϱâ
16.1 ORM(Object-relational mapping)À̶õ?
16.2 ORMÀÇ Àå´ÜÁ¡
16.3 node¿¡¼ »ç¿ëµÇ´Â ÁÖ¿ä ORM ¶óÀ̺귯¸®
16.4 TypeORM
16.5 TypeORM ¼³Ä¡Çϱâ
16.6 docker-compose·Î µ¥ÀÌÅͺ£À̽º ¼³Ä¡
16.7 ormconfig.json
16.8 TypeORM Entity
16.9 EntityManager
16.10 Repository
16.11 Find Options
16.12 °ü°è(Relations)
16.13 OneToMany¿Í ManyToOne
16.14 ManytoMany
Chapter 17. TDD¸¦ ÀÌ¿ëÇÑ Å×½ºÆ®
17.1 TDD¸¦ ÀÌ¿ëÇÑ Å×½ºÆ® ÇÁ·Î±×·¥ ¼³Á¤
17.2 Á¦½ºÆ® Å×½ºÆ® ´ÜÀ§
17.3 Á¦½ºÆ® ¸Åó(Jest Matcher)
17.4 VSCode Debug ȯ°æ ¸¸µé±â
17.5 User¿Í Profile(OneToOne)Å×½ºÆ® ÆÄÀÏ Á¦ÀÛ
17.6 User¿Í Post (OneToMany & ManyToOne) Å×½ºÆ®
17.7 User¿Í Group (ManyToMany) Å×½ºÆ®
Chapter 18. ¼¹ö¸®½º¿¡ GraphQL Àû¿ëÇϱâ
18.1 ÇÁ·ÎÁ§Æ® ±âº» ¼³Á¤Çϱâ
18.2 Apollo-server ¼³Ä¡
18.3 TypeGraphQL ¼³Ä¡
18.4 TypeORM ¼³Ä¡
18.5 µ¥ÀÌÅͺ£À̽º UML(Unified Modeling Language)
18.6 ȸ¿ø °¡ÀÔ Á¦ÀÛ
18.7 JWT¶õ?
18.8 ÀüÅëÀûÀÎ ¼¼¼ÇÀ» ÀÌ¿ëÇÑ ÀÎÁõ ¹æ½Ä
18.9 ÅäÅ« ±â¹ÝÀÇ ÀÎÁõ ¹æ½Ä
18.10 ·Î±×ÀÎ Á¦ÀÛ
18.11 ÀÎÁõ üũ
18.12 Á¢±Ù ±ÇÇÑ »ó¼¼ ÁöÁ¤
18.13 Ä«Å×°í¸®
18.14 ±Û¾²±â
18.15 ±Û º¸±â
18.16 ±Û ¸ñ·Ï
18.17 ±Û ¼öÁ¤
18.18 ´ñ±Û ´Þ±â
18.19 ´ñ±Û ¸ñ·Ï
18.20 ´ñ±Û »èÁ¦
18.21 ±Û º¸±â¿Í ´ñ±Û º¸±â
18.22 VSCode µð¹ö±× ȯ°æ ±¸¼ºÇϱâ
18.23 AWS RDS ¼³Á¤Çϱâ
18.24 ¹èÆ÷Çϱâ
Chapter 19. Vue¿¡ GraphQL Àû¿ëÇϱâ
19.1 ÇÁ·ÎÁ§Æ® ¸¸µé±â
19.2 VSCode µð¹ö±ë ¼³Á¤
19.3 ÅÛÇø´ ¼³Ä¡
19.4 Apollo ¼³Ä¡
19.5 Vuex ¼³Á¤Çϱâ
19.6 ±âº» È¸é ¼³Á¤Çϱâ
19.7 ȸ¿ø °¡ÀÔ
19.8 ·Î±×ÀÎ
19.9 ±Û ¸ñ·Ï
19.10 ±Û¾²±â
19.11 ±Û º¸±â
19.12 ±Û »èÁ¦
19.13 ´ñ±Û ´Þ±â
19.14 ´ñ±Û Áö¿ì±â
19.15 AWSÀÇ S3¸¦ ÀÌ¿ëÇÑ Á¤Àû È£½ºÆÃ
19.16 µµ¸ÞÀÎ ¿¬°áÇϱâ
19.17 HTTPS ¼³Á¤ÇØ ÁÖ±â