ÀÌ Ã¥ÀÇ ¸ñÇ¥´Â ¸®¾×Æ® ³×ÀÌƼºêÀÇ ±âÃÊ °³³ä°ú ½ÇÁ¦·Î È°¿ëÇÏ´Â µ¥ ÇÊ¿äÇÑ Áö½ÄÀ» ½±°Ô ¹è¿ì°í, ±Ã±ØÀûÀ¸·Î ÀÚ½ÅÀÌ ¸¸µé°í ½ÍÀº ¸ð¹ÙÀÏ ¾ÛÀ» Á÷Á¢ °³¹ßÇÒ ¼ö ÀÖµµ·Ï µ½´Â °ÍÀÌ´Ù. ¼ö¿ùÇÏ°Ô ÇнÀÇÒ ¼ö ÀÖµµ·Ï ÇÊ¿äÇÑ ±âº» Áö½Ä(¸®¾×Æ®, ŸÀÔ½ºÅ©¸³Æ®, °ü·Ã ¶óÀ̺귯¸® µî)À» ¼ö·ÏÇÏ°í, ´Ü°èº°·Î »ó¼¼ÇÏ°Ô ½Ç½ÀÇÏ¸é¼ ±âº»±â¸¦ ÀÍÈú ¼ö ÀÖµµ·Ï Çß´Ù. ¶ÇÇÑ, ÇÁ·ÎÁ§Æ® °³¹ßÀÇ Àü¹ÝÀûÀÎ ³»¿ëÀ» ÆľÇÇÏ°í ½Ç¹«¿¡ ÀÀ¿ëÇÒ ¼ö ÀÖµµ·Ï ¿¹Á¦ ÇÁ·ÎÁ§Æ®´Â óÀ½ºÎÅÍ ³¡±îÁö ¿ÂÀüÈ÷ Àüü¸¦ Á÷Á¢ ¸¸µé¾îº»´Ù. To do list, ´ÙÀ̾ ¾Û, »çÁø °øÀ¯ ¾Û, °Ô½ÃÆÇ ÇÁ·ÎÁ§Æ®¸¦ ¸¸µé¸é¼ ¸®¾×Æ® ³×ÀÌƼºêÀÇ ÇÙ½É ±â´ÉÀº ¹°·Ð, ¸®¾×Æ® ³×ÀÌƼºê·Î ÇÁ·ÎÁ§Æ®¸¦ °³¹ßÇÒ ¶§ ÀڽۨÀ» ´õÇØÁÙ Çʼö Áö½ÄµéÀ» ¹è¿ï ¼ö ÀÖ´Ù.
• ÀÌ Ã¥Àº ÀÚ¹Ù½ºÅ©¸³Æ®ÀÇ ±âº» Áö½ÄÀ» °®Ãá µ¶ÀÚ¸¦ ´ë»óÀ¸·Î ÇÕ´Ï´Ù. ¾ÆÁ÷ ÀÚ¹Ù½ºÅ©¸³Æ®¸¦ Àß ¾ËÁö ¸øÇÑ´Ù¸é ´ÙÀ½ ¸µÅ©¿¡¼ ÀÚ¹Ù½ºÅ©¸³Æ® ±âº» ¹®¹ýÀ» ¸ÕÀú ÇнÀÇϼ¼¿ä. ¸®¾×Æ®¿Í ŸÀÔ½ºÅ©¸³Æ®´Â ´Ù·ïº» ÀûÀÌ ¾ø¾îµµ ÇнÀÇÒ ¼ö ÀÖµµ·Ï ¼³¸íÇß½À´Ï´Ù.
_https://ko.javascript.info/
• Ã¥ÀÇ ÈĹݺο¡¼´Â Á÷Á¢ ÀÛ¼ºÇÑ ³×ÀÌƼºê Äڵ尡 ¸®¾×Æ® ³×ÀÌƼºê ÇÁ·ÎÁ§Æ®¿¡ ¾î¶»°Ô ¿¬µ¿µÇ´ÂÁö ¾Ë¾Æº¾´Ï´Ù. ¾Èµå·ÎÀ̵åÀÇ °æ¿ì ÀÚ¹Ù¿Í ÄÚƲ¸°À», iOSÀÇ °æ¿ì Objective-C¿Í ½ºÀ§ÇÁÆ®¸¦ ´Ù·ç´Âµ¥, ³×ÀÌƼºê ¸ð¹ÙÀÏ ¾ÛÀ» °³¹ßÇغ» ÀûÀÌ ¾ø¾îµµ ¹®Á¦¾øÀÌ ½Ç½ÀÇÒ ¼ö ÀÖµµ·Ï ¼³¸íÇß½À´Ï´Ù.
• ÀÌ Ã¥Àº ¸®¾×Æ® ³×ÀÌƼºê 0.64 ¹öÀüÀ» ±âÁØÀ¸·Î ÇÕ´Ï´Ù. ¶óÀ̺귯¸® ¹öÀü ¾÷µ¥ÀÌÆ®¿¡ µû¸¥ º¯°æ»çÇ×Àº ´ÙÀ½ ¸µÅ©¿¡¼ °øÁöÇÒ ¿¹Á¤ÀÔ´Ï´Ù.
_https://bit.ly/gilbut-react-native-notice
°³¹ßÀº ¾ðÁ¦³ª Áñ°Ì°í Àç¹Õ¾î¾ß ÇÑ´Ù´Â »ý°¢À» °®°í ÀÖ´Â °³¹ßÀÚÀ̸ç, IT ±â¼úÀ» °¡¸£Ä¡´Â °ÍÀ» ±²ÀåÈ÷ ÁÁ¾ÆÇÏ´Â ±³À°ÀÚÀÌ´Ù. ¶ÇÇÑ, »ç¿ëÀÚ¸¦ ÇູÇÏ°Ô ¸¸µå´Â ¼ºñ½º¸¦ ¸¸µå´Â °ÍÀÌ °¡Àå Áß¿äÇÏ´Ù°í ¿©±ä´Ù. ÇöÀç ¸®µð(ÁÖ)¿¡¼ ¾Ö´Ï¸ÞÀÌ¼Ç ½ºÆ®¸®¹Ö ¼ºñ½º ¶óÇÁÅÚ(laftel.net)ÀÇ ÇÁ·±Æ®¿£µå °³¹ßÀ» ÇÏ°í ÀÖ´Ù. ±×¸®°í °³¹ßÀÚµéÀÇ ºí·Î±× ¼ºñ½ºÀÎ º§·Î±×(velog.io)¸¦ ¿î¿µ ¹× °³¹ßÇÏ°í ÀÖ´Ù.
1Àå ¸®¾×Æ® ³×ÀÌƼºê ù°ÉÀ½
__1.1 ¸®¾×Æ® ³×ÀÌƼºê¶õ?
__1.2 ÀÛ¾÷ ȯ°æ ÁغñÇϱâ
____1.2.1 Node.js¿Í npm ¼³Ä¡Çϱâ
____1.2.2 yarn
____1.2.3 Java Development Kit
____1.2.4 Watchman ¼³Ä¡Çϱâ
____1.2.5 ¾Èµå·ÎÀÌµå ½ºÆ©µð¿À ¼³Ä¡Çϱâ
____1.2.6 ¾Èµå·ÎÀ̵å ȯ°æ º¯¼ö ¼³Á¤Çϱâ
____1.2.7 VS Code ¼³Ä¡Çϱâ
____1.2.8 Xcode¿Í CocoaPods ¼³Ä¡Çϱâ
__1.3 »õ ¸®¾×Æ® ³×ÀÌƼºê ÇÁ·ÎÁ§Æ® ¸¸µé±â
____1.3.1 ¾Èµå·ÎÀ̵å ȯ°æ¿¡¼ ¸®¾×Æ® ³×ÀÌƼºê ¾Û ±¸µ¿Çϱâ
____1.3.2 iOS ȯ°æ¿¡¼ ¸®¾×Æ® ³×ÀÌƼºê ¾Û ±¸µ¿Çϱâ
__1.4 ÇÁ·ÎÁ§Æ® »ìÆ캸±â
____1.4.1 ¿£Æ®¸® ÆÄÀÏ
____1.4.2 App ÄÄÆ÷³ÍÆ®
____1.4.3 ³×ÀÌƼºê ÇÁ·ÎÁ§Æ®
__1.5 ESLint¿Í Prettier
__1.6 Á¤¸®
2Àå ÄÄÆ÷³ÍÆ®
__2.1 ³ª¸¸ÀÇ ÄÄÆ÷³ÍÆ® ¸¸µé±â
__2.2 Props
__2.3 defaultProps
__2.4 JSX ¹®¹ý
____2.4.1 ű׸¦ ¿¸é ¹Ýµå½Ã ´Ý¾ÆÁÖ±â
____2.4.2 ½º½º·Î ´Ý´Â ÅÂ±× »ç¿ëÇϱâ
____2.4.3 ¹ÝȯÇÒ ¶© ²À ÇϳªÀÇ Å±׷Π°¨½Î±â
____2.4.4 JSX ¾È¿¡¼ ÀÚ¹Ù½ºÅ©¸³Æ® Ç¥Çö½ÄÀ» º¸¿©ÁÙ ¶© Áß°ýÈ£·Î °¨½Î±â
____2.4.5 ÁÖ¼® ÀÛ¼ºÇϱâ
__2.5 StyleSheet·Î ÄÄÆ÷³ÍÆ®¿¡ ½ºÅ¸ÀÏ ÀÔÈ÷±â
____2.5.1 Props·Î ÄÄÆ÷³ÍÆ® ½ºÅ¸ÀÏÀ» Ä¿½ºÅ͸¶ÀÌ¡Çϱâ
__2.6 Props °´Ã¼ ±¸Á¶ ºÐÇØ ÇÒ´ç
__2.7 useState HookÀ¸·Î »óÅ °ü¸®Çϱâ
____2.7.1 useState »ç¿ëÇغ¸±â
____2.7.2 Button ÄÄÆ÷³ÍÆ® »ç¿ëÇϱâ
____2.7.3 Á¶°ÇºÎ ·»´õ¸µ ±¸ÇöÇϱâ
__2.8 Ä«¿îÅÍ ¸¸µé±â
____2.8.1 UI ÁغñÇϱâ
____2.8.2 Counter ÄÄÆ÷³ÍÆ®¿¡ Props ¼³Á¤Çϱâ
____2.8.3 App¿¡¼ »óÅ °ü¸®Çϱâ
__2.9 Á¤¸®
3Àå ÇÒ ÀÏ ¸ñ·Ï ¸¸µé±â I
__3.1 ÇÁ·ÎÁ§Æ® ±â¹Ý ´ÙÁö±â
____3.1.1 ÇÁ·ÎÁ§Æ® »ý¼º
____3.1.2 ¿À´Ã ³¯Â¥¸¦ ¾Ë·ÁÁÖ´Â DateHead ÄÄÆ÷³ÍÆ® ¸¸µé±â
____3.1.3 StatusBar »ö»ó ¹Ù²Ù±â
____3.1.4 ·¹À̾ƿô ÁغñÇϱâ
____3.1.5 À̹ÌÁö »ç¿ëÇϱâ
__3.2 TextInputÀ¸·Î »ç¿ëÀÚ Å°º¸µå ÀԷ¹ޱâ
____3.2.1 KeyboardAvoidingView·Î Å°º¸µå°¡ ȸéÀ» °¡¸®Áö ¾Ê°Ô Çϱâ
____3.2.2 useState·Î ÅؽºÆ® »óÅ °ª °ü¸®Çϱâ
____3.2.2 Ä¿½ºÅÒ ¹öÆ° ¸¸µé±â
____3.2.3 TextInput¿¡ onSubmitEditing ¹× returnKeyType ¼³Á¤Çϱâ
__3.3 Á¤¸®
4Àå ÇÒ ÀÏ ¸ñ·Ï ¸¸µé±â II
__4.1 ºÒº¯¼ºÀ» ÁöÅ°¸é¼ °´Ã¼¿Í ¹è¿À» ¾÷µ¥ÀÌÆ®ÇÏ´Â ¹æ¹ý
____4.1.1 ºÒº¯¼ºÀ» ÁöÄÑ¾ß ÇÏ´Â ÀÌÀ¯
____4.1.2 ¹è¿ÀÇ ºÒº¯¼ºÀ» ÁöÅ°´Â ¹æ¹ý
__4.2 todos »óÅ ¸¸µé±â ¹× FlatList·Î Ç׸ñ ȸ鿡 ³ªÅ¸³»±â
____4.2.1 todos »óÅ ¸¸µé±â
____4.2.2 TodoList ÄÄÆ÷³ÍÆ® ¸¸µé±â
____4.2.3 TodoItem ÄÄÆ÷³ÍÆ® ¸¸µé±â
____4.2.4 Ç׸ñ »çÀÌ¿¡ ±¸ºÐ¼± º¸¿©ÁÖ±â
____4.2.5 ¿Ï·áÇÑ Ç׸ñ¿¡ ´Ù¸¥ ½ºÅ¸ÀÏ Àû¿ëÇϱâ
__4.3 »õ Ç׸ñ µî·ÏÇϱâ
__4.4 ÇÒ ÀÏ ¿Ï·á »óÅ Åä±ÛÇϱâ
__4.5 Ç׸ñ »èÁ¦Çϱâ
____4.5.1 º¤ÅÍ ¾ÆÀÌÄÜ »ç¿ëÇϱâ
____4.5.2 Ç׸ñ »èÁ¦ ÇÔ¼ö ¸¸µé±â
____4.5.3 Ç׸ñÀ» »èÁ¦Çϱâ Àü¿¡ Çѹø ¹°¾îº¸±â
__4.6 AsyncStorage·Î ¾ÛÀÌ ²¨Á®µµ µ¥ÀÌÅÍ À¯ÁöÇϱâ
____4.6.1 Promise°¡ ¹«¾ùÀΰ¡¿ä?
____4.6.2 AsyncStorage ¼³Ä¡Çϱâ
____4.6.3 AsyncStorageÀÇ ±âº» »ç¿ë¹ý
____4.6.4 AsyncStorage Àû¿ëÇϱâ
__4.7 Á¤¸®
5Àå ¸®¾×Æ® ³»ºñ°ÔÀ̼ÇÀ¸·Î ¿©·¯ È¸é °ü¸®Çϱâ
__5.1 ¼³Ä¡ ¹× Àû¿ë
____5.1.1 ÀÇÁ¸ ÆÐÅ°Áö ¼³Ä¡
____5.1.2 ¶óÀ̺귯¸® Àû¿ë
__5.2 ±âº»ÀûÀÎ »ç¿ë¹ý
____5.2.1 ³×ÀÌƼºê ½ºÅà ³»ºñ°ÔÀÌÅÍ
____5.2.2 ½ºÅ©¸° À̵¿Çϱâ
____5.2.3 ¶ó¿ìÆ® ÆĶó¹ÌÅÍ
____5.2.4 µÚ·Î°¡±â
____5.2.5 Header Ä¿½ºÅ͸¶ÀÌ¡
__5.3 ´Ù¾çÇÑ ³»ºñ°ÔÀÌÅÍ
____5.3.1 µå·Î¾î ³»ºñ°ÔÀÌÅÍ
____5.3.2 ÇÏ´Ü ÅÇ ³»ºñ°ÔÀÌÅÍ
____5.3.3 ¸ÓƼ¸®¾ó »ó´Ü ÅÇ ³»ºñ°ÔÀÌÅÍ
____5.3.4 ¸ÓƼ¸®¾ó ÇÏ´Ü ÅÇ ³»ºñ°ÔÀÌÅÍ
____5.3.5 ¸ÓƼ¸®¾ó ÇÏ´Ü ÅÇ ³»ºñ°ÔÀÌÅÍ Çì´õ ŸÀÌƲ µ¿±âÈÇϱâ
__5.4 ³»ºñ°ÔÀÌ¼Ç Hooks
____5.4.1 useNavigation
____5.4.2 useRoute
____5.4.3 useFocusEffect
__5.5 Á¤¸®
6Àå ´ÙÀ̾ ¾Û ¸¸µé±â I
__6.1 ÇÁ·ÎÁ§Æ® ÁغñÇϱâ
____6.1.1 react-native-vector-icons Àû¿ë
____6.1.2 react-navigation Àû¿ë
__6.2 Context API »ç¿ëÇϱâ
____6.2.1 children Props
____6.2.2 useContext Hook ÇÔ¼ö
____6.2.3 Context¿¡¼ À¯µ¿ÀûÀÎ °ª ´Ù·ç±â
__6.3 »õ ±Û ÀÛ¼ºÇϱâ
____6.3.1 FloatingWriteButton ¸¸µé±â
____6.3.2 WriteScreen UI ÁغñÇϱâ
____6.3.3 useRef·Î ÄÄÆ÷³ÍÆ® ·¹ÆÛ·±½º ¼±ÅÃÇϱâ
____6.3.4 KeyboardAvoidingView·Î È¸é °¨½Î±â
____6.3.5 WriteScreen¿¡¼ ÅؽºÆ® »óÅ °ü¸®
____6.3.6 LogContext·Î ¹è¿ »óÅ °ü¸®Çϱâ
____6.3.7 Log ÀÛ¼º ±â´É ¸¶¹«¸®Çϱâ
__6.4 ±Û ¸ñ·Ï º¸¿©ÁÖ±â
____6.4.1 FeedListItem ÄÄÆ÷³ÍÆ® ¸¸µé±â
____6.4.2 FeedList ÄÄÆ÷³ÍÆ® ¸¸µé±â
____6.4.3 date-fns·Î ³¯Â¥ Æ÷¸ËÆÃ
__6.5 Animated·Î ¾Ö´Ï¸ÞÀÌ¼Ç Àû¿ëÇϱâ
____6.5.1 ¾Ö´Ï¸ÞÀÌ¼Ç ¿¬½À
____6.5.2 ½ºÅ©·ÑÀ» ³»·ÈÀ»¶§ ±Û¾²±â ¹öÆ° ¼û±â±â
____6.5.3 spring
____6.5.4 ¿¹¿Ü ó¸®
__6.6 Á¤¸®
7Àå ´ÙÀ̾ ¾Û ¸¸µé±â II
__7.1 ÀÛ¼ºÇÑ ±ÛÀ» WriteScreenÀ¸·Î ¿±â
____7.1.1 FeedListItem ¼öÁ¤
____7.1.2 WriteScreen¿¡¼ log ÆĶó¹ÌÅÍ ÀνÄ
__7.2 ¼öÁ¤ ±â´É ±¸ÇöÇϱâ
____7.2.1 LogContext¿¡ onModify ÇÔ¼ö ±¸ÇöÇϱâ
____7.2.2 WriteScreen¿¡¼ onModify ÇÔ¼ö »ç¿ëÇϱâ
__7.3 »èÁ¦ ±â´É ±¸ÇöÇϱâ
____7.3.1 LogContext¿¡ onRemove ÇÔ¼ö ±¸ÇöÇϱâ
____7.3.2 WriteScreen¿¡¼ onRemove ÇÔ¼ö »ç¿ëÇϱâ
____7.3.3 WriteHeader ¼öÁ¤Çϱâ
__7.4 °Ë»ö ±â´É ±¸ÇöÇϱâ
____7.4.1 SearchHeader ÄÄÆ÷³ÍÆ® ¸¸µé±â
____7.4.2 ȸé Å©±â Á¶È¸Çϱâ
____7.4.3 SearchHeader ÄÄÆ÷³ÍÆ® UI ±¸¼ºÇϱâ
____7.4.4 SearchContext ¸¸µé±â
____7.4.5 °Ë»ö¾î ÇÊÅ͸µ ÈÄ FeedList Àç»ç¿ëÇϱâ
____7.4.6 EmptySearchResult ¸¸µé±â
__7.5 ´Þ·Â ±â´É ±¸ÇöÇϱâ
____7.5.1 ´Þ·Â¿¡ Ç¥½ÃÇϱâ
____7.5.2 µ¥ÀÌÅ͸¦ ´Þ·Â°ú ¿¬µ¿Çϱâ
____7.5.3 ´Þ·Â ÇÏ´Ü¿¡ ·Î±× ¸ñ·Ï º¸¿©ÁÖ±â
____7.5.4 useMemo HookÀ¸·Î ÃÖÀûÈÇϱâ
__7.6 ³¯Â¥ ¹× ½Ã°£ ¼öÁ¤ ±â´É ±¸ÇöÇϱâ
____7.6.1 WriteHeader¿¡¼ ³¯Â¥ ¹× ½Ã°£ º¸¿©ÁÖ±â
____7.6.2 DateTimePickerModal ÄÄÆ÷³ÍÆ® »ç¿ëÇϱâ
__7.7 useReducer Hook ÇÔ¼ö »ç¿ëÇϱâ
__7.8 AsyncStorage·Î µ¥ÀÌÅÍ À¯ÁöÇϱâ
__7.9 Á¤¸®
8Àå Firebase·Î »çÁø °øÀ¯ ¾Û ¸¸µé±â I
__8.1 ÇÁ·ÎÁ§Æ® ÁغñÇϱâ
____8.1.1 ³»ºñ°ÔÀ̼ǰú ¾ÆÀÌÄÜ ¼³Á¤
____8.1.2 Firebase Àû¿ëÇϱâ
____8.1.3 È¸é ±¸¼º ÀÌÇØÇϱâ
__8.2 ȸ¿ø ÀÎÁõ ±â´É ±¸ÇöÇϱâ
____8.2.1 ȸ¿ø ÀÎÁõÀ» À§ÇÑ UI ÁغñÇϱâ
____8.2.2 ÀÎDz »óÅ °ü¸®Çϱâ
____8.2.3 ÀÎDz¿¡¼ Å°º¸µå ¸®ÅÏ Ã³¸®Çϱâ
____8.2.4 ÄÄÆ÷³ÍÆ® ºÐ¸®Çϱâ
____8.2.5 Firebase·Î ȸ¿ø ÀÎÁõÇϱâ
____8.2.6 ¿À·ù ¿¹¿Ü ó¸®Çϱâ
____8.2.7 »ç¿ëÀÚ ÇÁ·ÎÇÊ Firestore¿¡ ´ã±â
__8.3 Firebase¿¡ ȸ¿ø Á¤º¸ µî·ÏÇϱâ
__8.4 UserContext ¸¸µé°í ·Î±×ÀÎ »ç¿ëÀÚ ºÐ±â ó¸®Çϱâ
__8.5 À̹ÌÁö ¾÷·ÎµåÇϱâ
____8.5.1 À̹ÌÁö ¼±Åà ±â´É ±¸ÇöÇϱâ
____8.5.2 »ç¿ëÀÚ ±âº» À̹ÌÁö ¼³Á¤Çϱâ
____8.5.3 Firebase Storage·Î À̹ÌÁö ¾÷·ÎµåÇϱâ
__8.6 Á¤¸®
9Àå Firebase·Î »çÁø °øÀ¯ ¾Û ¸¸µé±â II
__9.1 ÅÇ È¸é ±¸ÇöÇϱâ
__9.2 ·Î±×ÀÎ »óÅ À¯ÁöÇϱâ
__9.3 Æ÷½ºÆ® ÀÛ¼º ±â´É ±¸ÇöÇϱâ
____9.3.1 ÅÇ Áß¾Ó¿¡ ¹öÆ° ¸¸µé±â
____9.3.2 ¾÷·ÎµåÇÒ »çÁø ¼±Åà ¶Ç´Â Ä«¸Þ¶ó ÃÔ¿µÇϱâ
____9.3.3 Æ÷½ºÆ® ÀÛ¼º È¸é ¸¸µé±â
____9.3.4 Firestore¿¡ Æ÷½ºÆ® µî·ÏÇϱâ
__9.4 Æ÷½ºÆ® ¸ñ·Ï Á¶È¸Çϱâ
____9.4.1 PostCard ÄÄÆ÷³ÍÆ® ¸¸µé±â
____9.4.2 Firestore·Î Æ÷½ºÆ® ¸ñ·Ï Á¶È¸Çϱâ
____9.4.3 FeedScreen¿¡¼ getPost È£Ãâ ÈÄ FlatList·Î º¸¿©ÁÖ±â
____9.4.4 ÆäÀÌÁö³×ÀÌ¼Ç ¹× ½Ã°£¼ø Á¤·Ä
__9.5 »ç¿ëÀÚ ÇÁ·ÎÇÊ È¸é ±¸ÇöÇϱâ
____9.5.1 Firestore µ¥ÀÌÅÍ Á¶È¸ÇÒ ¶§ Á¶°Ç Ãß°¡Çϱâ
____9.5.2 Æ÷½ºÆ® Á¶È¸ ÇÔ¼ö ¸®ÆÑÅ丵Çϱâ
____9.5.3 Firestore¿¡¼ »öÀÎ Ãß°¡Çϱâ
____9.5.4 Profile ÄÄÆ÷³ÍÆ® ¸¸µé±â
____9.5.5 ±×¸®µå ºä ¸¸µé±â
____9.5.6 ÆäÀÌÁö³×ÀÌ¼Ç ±¸ÇöÇϱâ
____9.5.7 Ä¿½ºÅÒ ÈÅÀ» ÀÛ¼ºÇØ ÄÄÆ÷³ÍÆ® ¸®ÆÑÅ丵Çϱâ
____9.5.8 Æ÷½ºÆ® ¿±â
____9.5.9 ³» ÇÁ·ÎÇÊ È¸é ±¸ÇöÇϱâ
__9.6 Æ÷½ºÆ® ¼öÁ¤ ¹× »èÁ¦ ±â´É ±¸ÇöÇϱâ
____9.6.1 Àç»ç¿ëÇÒ ¼ö ÀÖ´Â ¸ð´Þ ¸¸µé±â
____9.6.2 »ç¿ëÀÚ¿¡°Ô ¼öÁ¤ ¹× »èÁ¦ ¹°¾îº¸±â
____9.6.3 Æ÷½ºÆ® »èÁ¦ ±â´É ±¸ÇöÇϱâ
____9.6.4 Æ÷½ºÆ® ¼³¸í ¼öÁ¤ ±â´É ±¸ÇöÇϱâ
__9.7 EventEmitter·Î ´Ù¸¥ È¸é °£ È帧 Á¦¾î
____9.7.1 EventEmitter3 ¼³Ä¡¿Í Àû¿ë
____9.7.2 Æ÷½ºÆ® ÀÛ¼º ÈÄ ¾÷µ¥ÀÌÆ®
____9.7.3 Æ÷½ºÆ® »èÁ¦ ÈÄ ¸ñ·Ï¿¡¼ Á¦°Å
____9.7.4 ¸®ÆÑÅ丵
____9.7.5 Æ÷½ºÆ® ¼öÁ¤ ÈÄ ¾÷µ¥ÀÌÆ®
__9.8 ¼³Á¤ È¸é ¸¸µé±â
__9.9 Firestore º¸¾È ¼³Á¤Çϱâ
__9.10 Splash È¸é ¸¸µé±â
____9.10.1 ¾Èµå·ÎÀ̵忡 Splash ȸé Àû¿ëÇϱâ
____9.10.2 iOS¿¡ Splash ȸé Àû¿ëÇϱâ
____9.10.3 ¿øÇÏ´Â ½ÃÁ¡¿¡ Splash È¸é ¼û±â±â
__9.11 Á¤¸®
10Àå ³×ÀÌƼºê ¸ðµâ ¸¸µé±â
__10.1 ¾Èµå·ÎÀ̵忡¼ Toast »ç¿ëÇϱâ
____10.1.1 ¸ðµâ ÀÛ¼ºÇϱâ
____10.1.2 ¸Þ¼µå ÀÛ¼ºÇϱâ
____10.1.3 »ó¼ö ³»º¸³»±â
____10.1.4 ÆÐÅ°Áö ÀÛ¼ºÇϱâ
____10.1.5 ÆÐÅ°Áö µî·ÏÇϱâ
____10.1.6 ÀÚ¹Ù½ºÅ©¸³Æ®¿¡¼ ³×ÀÌƼºê ¸ðµâ »ç¿ëÇϱâ
__10.2 iOS¿¡¼ Alert ¶ç¿ì±â
____10.2.1 ¸ðµâ ÀÛ¼ºÇϱâ
____10.2.2 ¸Þ¼µå ÀÛ¼ºÇϱâ
____10.2.3 »ó¼ö ³»º¸³»±â
____10.2.4 ÀÚ¹Ù½ºÅ©¸³Æ®¿¡¼ ³×ÀÌƼºê ¸ðµâ »ç¿ëÇϱâ
__10.3 ÄÚƲ¸°À¸·Î ³×ÀÌƼºê ¸ðµâ ¸¸µé¾îº¸±â
____10.3.1 ÇÁ·ÎÁ§Æ®¿¡ ÄÚƲ¸° Àû¿ëÇϱâ
____10.3.2 ¸ðµâ ÀÛ¼ºÇϱâ
____10.3.3 ÆÐÅ°Áö ÀÛ¼ºÇϱâ
____10.3.4 ÆÐÅ°Áö µî·ÏÇϱâ
____10.3.5 ¸Þ¼µå ±¸ÇöÇϱâ
____10.3.6 ÀÚ¹Ù½ºÅ©¸³Æ®¿¡¼ ³×ÀÌƼºê ¸ðµâ »ç¿ëÇϱâ
__10.4 ½ºÀ§ÇÁÆ®·Î ³×ÀÌƼºê ¸ðµâ ÀÛ¼ºÇϱâ
____10.4.1 ¸ðµâÀ» ÇÁ·ÎÁ§Æ®¿¡ µî·ÏÇϱâ
____10.4.2 ¸Þ¼µå ÀÛ¼ºÇϱâ
____10.4.3 ¸Þ¼µå ±¸ÇöÇϱâ
____10.4.4 »ó¼ö ³»º¸³»±â
____10.4.5 ÀÚ¹Ù½ºÅ©¸³Æ®¿¡¼ ³×ÀÌƼºê ¸ðµâ »ç¿ëÇϱâ
__10.5 Á¤¸®
11Àå ³×ÀÌƼºê UI ÄÄÆ÷³ÍÆ® »ç¿ëÇϱâ
__11.1 ¾Èµå·ÎÀ̵å Ä«¿îÅÍ ¸¸µé±â
____11.1.1 ·¹À̾ƿô ¸¸µé±â
____11.1.2 ·¹À̾ƿô¿¡ TextView¿Í Button Ãß°¡Çϱâ
____11.1.3 View Ŭ·¡½º ¸¸µé±â
____11.1.4 Manager Ŭ·¡½º ¸¸µé±â
____11.1.5 ÆÐÅ°Áö ÀÛ¼º ¹× µî·ÏÇϱâ
____11.1.6 ³×ÀÌƼºê ÄÄÆ÷³ÍÆ® ºÒ·¯¿Í¼ »ç¿ëÇϱâ
____11.1.7 View °áÇÕ ±â´É »ç¿ëÇϱâ
____11.1.8 ÄÄÆ÷³ÍÆ®¿¡ Props ¿¬µ¿Çϱâ
____11.1.9 À̺¥Æ® ¼³Á¤
__11.2 iOS Ä«¿îÅÍ ¸¸µé±â
____11.2.1 View Ŭ·¡½º ¸¸µé±â
____11.2.2 Manager Ŭ·¡½º ¸¸µé±â
____11.2.3 ÅؽºÆ®¿Í ¹öÆ° º¸¿©ÁÖ±â
____11.2.4 Props ¿¬µ¿Çϱâ
____11.2.5 À̺¥Æ® ¼³Á¤Çϱâ
__11.3 Á¤¸®
12Àå ¸®¾×Æ® ³×ÀÌƼºê ÇÁ·ÎÁ§Æ®¿¡¼ ŸÀÔ½ºÅ©¸³Æ® »ç¿ëÇϱâ
__12.1 ŸÀÔ½ºÅ©¸³Æ®°¡ Àû¿ëµÈ ¸®¾×Æ® ³×ÀÌƼºê ÇÁ·ÎÁ§Æ® ¸¸µé±â
__12.2 ŸÀÔ½ºÅ©¸³Æ® ºü¸£°Ô ¹è¿ì±â
____12.2.1 ±âº» ŸÀÔ
____12.2.2 ÇÔ¼ö ŸÀÔ
____12.2.3 interface
____12.2.4 ¹è¿ ŸÀÔ
____12.2.5 Type Alias
____12.2.6 Generic
____12.2.7 ´õ ¾Ë¾Æº¸±â
__12.3 ŸÀÔ½ºÅ©¸³Æ®·Î ÄÄÆ÷³ÍÆ® ÀÛ¼ºÇϱâ
____12.3.1 Props »ç¿ëÇϱâ
____12.3.2 useState »ç¿ëÇϱâ
____12.3.3 useRef »ç¿ëÇϱâ
____12.3.4 useReducer »ç¿ëÇϱâ
__12.4 ŸÀÔ½ºÅ©¸³Æ®·Î Context API »ç¿ëÇϱâ
__12.5 ŸÀÔ½ºÅ©¸³Æ®·Î react-navigations »ç¿ëÇϱâ
____12.5.1 ¶óÀ̺귯¸® ¼³Ä¡Çϱâ
____12.5.2 ³×ÀÌƼºê ½ºÅà ³»ºñ°ÔÀÌ¼Ç »ç¿ëÇϱâ
____12.5.3 ³»ºñ°ÔÀÌ¼Ç °¨½Î±â
__12.6 ¼µå ÆÄƼ ¶óÀ̺귯¸®ÀÇ Å¸ÀÔ
__12.7 Á¤¸®
13Àå ¶óÀ̺귯¸®¸¦ »ç¿ëÇÑ »óÅ °ü¸®
__13.1 ¸®´ö½º »ç¿ë¹ý ÈȾ±â
____13.1.1 ¸ðµâ ÀÛ¼ºÇϱâ
____13.1.2 ·çÆ® ¸®µà¼ ¸¸µé±â
____13.1.3 ½ºÅä¾î ¸¸µé±â
____13.1.4 Provider·Î ¸®¾×Æ® ÇÁ·ÎÁ§Æ®¿¡ ¸®´ö½º Àû¿ëÇϱâ
____13.1.5 useSelector¿Í useDispatch·Î ÄÄÆ÷³ÍÆ®¿¡¼ ¸®´ö½º ¿¬µ¿Çϱâ
__13.2 Redux Toolkit ¾Ë¾Æº¸±â
____13.2.1 ¾×¼Ç »ý¼º ÇÔ¼ö¿Í ¸®µà¼
____13.2.2 sliceÀÇ À̸§°ú ¾×¼Ç ŸÀÔ
____13.2.3 ¾×¼ÇÀÇ payload
____13.2.4 ÀÚµ¿À¸·Î ÀÌ·ç¾îÁö´Â ºÒº¯¼º °ü¸®
____13.2.5 ŸÀÔ½ºÅ©¸³Æ®¿Í ÇÔ²² »ç¿ëÇϱâ
__13.3 ¸®´ö½º·Î »ç¿ëÀÚ ÀÎÁõ ±â´É ±¸ÇöÇϱâ
____13.3.1 ¶óÀ̺귯¸® ¼³Ä¡
____13.3.2 auth ¸ðµâ ÀÛ¼ºÇϱâ
____13.3.3 ·çÆ® ¸®µà¼¿Í ½ºÅä¾î¸¦ ¸¸µé°í ÇÁ·ÎÁ§Æ®¿¡ Àû¿ëÇϱâ
____13.3.4 AuthApp Ʋ Àâ¾ÆÁÖ±â
____13.3.5 AuthApp ¸®´ö½º¿Í ¿¬µ¿Çϱâ
____13.3.6 useSelectorÀÇ DefaultRootState ÁöÁ¤Çϱâ
____13.3.7 ¸®´ö½º¿Í ¿¬µ¿ÇÏ´Â ·ÎÁ÷À» HookÀ¸·Î ºÐ¸®Çϱâ
__13.4 ¸®´ö½º·Î Ç׸ñ Ãß°¡, ¾÷µ¥ÀÌÆ®, »èÁ¦ ±¸ÇöÇϱâ
____13.4.1 todos ¸ðµâ ÀÛ¼ºÇϱâ
____13.4.2 TodoApp Ʋ Àâ¾ÆÁÖ±â
____13.4.3 TodoApp ¸®´ö½º¿Í ¿¬µ¿Çϱâ
__13.5 ¸®´ö½º ¹Ìµé¿þ¾î¸¦ »ç¿ëÇÏ¿© REST API ¿äû »óÅ °ü¸®Çϱâ
____13.5.1 ¹Ìµé¿þ¾î Àû¿ëÇϱâ
____13.5.2 API ¿äû ÇÔ¼ö ÁغñÇϱâ
____13.5.3 posts ¸ðµâ ¸¸µé±â
____13.5.4 PostsApp Ʋ Àâ¾ÆÁÖ±â
____13.5.5 PostsApp ¸®´ö½º¿Í ¿¬µ¿Çϱâ
__13.6 ¸®´ö½º Á¤¸®
__13.7 ¸®ÄÚÀÏ »ìÆ캸±â
____13.7.1 atom
____13.7.2 RecoilRoot
____13.7.3 selector
____13.7.4 ¶óÀ̺귯¸® ¼³Ä¡
__13.8 AuthApp ¸®ÄÚÀÏ·Î ±¸ÇöÇϱâ
__13.9 TodoApp ¸®ÄÚÀÏ·Î ±¸ÇöÇϱâ
____13.9.1 useRecoilCallbackÀ» »ç¿ëÇÏ¿© ÃÖÀûÈÇϱâ
__13.10 ¸®ÄÚÀÏ·Î PostsApp ±¸ÇöÇϱâ
__13.11 ¸®ÄÚÀÏ Á¤¸®
__13.12 ¸®´ö½º¿Í ¸®ÄÚÀÏ
14Àå Strapi·Î REST API ¼¹ö ºü¸£°Ô ±¸ÃàÇϱâ
__14.1 Strapi »ìÆ캸±â
____14.1.1 strapi ÇÁ·ÎÁ§Æ® »ý¼ºÇϱâ
__14.2 »õ ÄÜÅÙÆ® ŸÀÔ ¸¸µé±â
__14.3 ÀϺΠÇʵ带 Private·Î º¯°æÇϱâ
__14.4 µ¥ÀÌÅÍ ±ÇÇÑ ¼³Á¤Çϱâ
__14.5 Content API¿¡ Ä¿½ºÅ͸¶ÀÌ¡Çϱâ
____14.5.1 °Ô½Ã±Û ÀÛ¼º
____14.5.2 °Ô½Ã±Û ¼öÁ¤
____14.5.3 °Ô½Ã±Û »èÁ¦
__14.6 Postman ¼³Ä¡Çϱâ
__14.7 ȸ¿ø°¡ÀÔ ¹× ·Î±×ÀÎ API »ç¿ëÇϱâ
__14.8 Article API »ç¿ëÇϱâ
__14.9 Comment API ¼öÁ¤Çϱâ
____14.9.1 ´ñ±Û ÀÛ¼ºÇϱâ
____14.9.2 ´ñ±Û Á¶È¸Çϱâ
____14.9.3 ´ñ±Û ¼öÁ¤Çϱâ
____14.9.4 ´ñ±Û »èÁ¦Çϱâ
__14.10 ´ñ±Û API »ç¿ëÇغ¸±â
__14.11 Á¤¸®
15Àå ¸®¾×Æ® Äõ¸®¸¦ »ç¿ëÇÑ API »óÅ °ü¸®
__15.1 ÇÁ·ÎÁ§Æ® »ý¼º ¹× Ãʱ⠼³Á¤
____15.1.1 react-native-vector-icons Àû¿ëÇϱâ
____15.1.2 ¸®¾×Æ® ³»ºñ°ÔÀÌ¼Ç Àû¿ëÇϱâ
__15.2 useQuery¸¦ »ç¿ëÇÏ¿© µ¥ÀÌÅÍ Á¶È¸Çϱâ
____15.2.1 ¹Ýȯ°ª
____15.2.2 ¹è¿ ŸÀÔÀÇ Ä³½Ã Å°
____15.2.3 useQueryÀÇ options
____15.2.4 staleTime°ú cacheTime
__15.3 API ¿äûÇÒ ÁغñÇϱâ
____15.3.1 ŸÀÔ ¼±¾ðÇϱâ
____15.3.2 axios ÀνºÅϽº¸¸µé±â
____15.3.3 QueryClientProvider »ç¿ëÇϱâ
__15.4 °Ô½Ã±Û ¸ñ·Ï Á¶È¸ ±â´É ±¸ÇöÇϱâ
____15.4.1 API ÇÔ¼ö ÀÛ¼ºÇϱâ
____15.4.2 useQuery »ç¿ëÇϱâ
____15.4.3 ÄÄÆ÷³ÍÆ® ¸¸µé±â
__15.5 °Ô½Ã±Û Á¶È¸ ±â´É ±¸ÇöÇϱâ
____15.5.1 ȸé ÁغñÇϱâ
____15.5.2 API ÇÔ¼ö ÀÛ¼ºÇϱâ
____15.5.3 useQuery »ç¿ëÇϱâ
____15.5.4 ÄÄÆ÷³ÍÆ® ¸¸µé±â
__15.6 ȸ¿ø ÀÎÁõ ±â´É ÁغñÇϱâ
____15.6.1 ȸé ÁغñÇϱâ
____15.6.2 »ç¿ëÀÚ ¸Þ´º È¸é ¸¸µé±â
____15.6.3 ȸ¿ø ÀÎÁõ API ÇÔ¼ö ¸¸µé±â
____15.6.4 AuthForm ÄÄÆ÷³ÍÆ® ¸¸µé±â
__15.7 useMutation·Î Á¶È¸ ¿Ü ÀÛ¾÷ ó¸®Çϱâ
____15.7.1 ¹Ýȯ°ª
__15.8 ȸ¿ø ÀÎÁõ ±â´É ±¸ÇöÇϱâ
____15.8.1 Ä¿½ºÅÒ Hook ¸¸µé±â
____15.8.2 »ç¿ëÀÚ ÀÎÁõ »óÅ °ü¸®Çϱâ
____15.8.3 ÀÎÁõ ÅäÅ« ¼³Á¤Çϱâ
____15.8.4 ·Î±×¾Æ¿ô ±â´É ±¸ÇöÇϱâ
____15.8.5 AsyncStorage·Î ÀÎÁõ »óÅ À¯ÁöÇϱâ
____15.8.6 ·Î±×ÀÎ/ȸ¿ø°¡ÀÔ ¿À·ù ó¸®Çϱâ
__15.9 °Ô½Ã±Û ÀÛ¼º ±â´É ±¸ÇöÇϱâ
____15.9.1 °Ô½Ã±Û ÀÛ¼º ¹öÆ° ÁغñÇϱâ
____15.9.2 °Ô½Ã±Û ÀÛ¼º È¸é ¸¸µé±â
____15.9.3 °Ô½Ã±Û ÀÛ¼º API ÇÔ¼ö ¸¸µé±â
____15.9.4 °Ô½Ã±Û ÀÛ¼º ¹öÆ° ¸¸µé±â
____15.9.5 useMutationÀ¸·Î °Ô½Ã±Û ÀÛ¼º API È£ÃâÇϱâ
____15.9.6 QueryClient·Î µ¥ÀÌÅÍ »õ·Î°íħÇϱâ
____15.9.7 QueryClient·Î ij½Ã µ¥ÀÌÅÍ Á÷Á¢ ¼öÁ¤Çϱâ
__15.10 °Ô½Ã±Û ÆäÀÌÁö³×ÀÌ¼Ç ±â´É ±¸ÇöÇϱâ
____15.10.1 °Ô½Ã±Û ¸ñ·Ï Á¶È¸ API ÇÔ¼ö º¯°æÇϱâ
____15.10.2 useInfiniteQuery »ç¿ëÇϱâ
____15.10.3 °Ô½Ã±Û ÀÛ¼º ÈÄ Ã³¸® ·ÎÁ÷ º¯°æÇϱâ
____15.10.4 ȸéÀ» ¾Æ·¡·Î ´ç°Ü¼ »õ·Î°íħÇϱâ
__15.11 °Ô½Ã±Û ¼öÁ¤/»èÁ¦ ±â´É ±¸ÇöÇϱâ
____15.11.1 ¼öÁ¤ ±â´É ±¸ÇöÇϱâ
____15.11.2 »èÁ¦ ±â´É ±¸ÇöÇϱâ
__15.12 ´ñ±Û ÀÛ¼º/¼öÁ¤/»èÁ¦ ±â´É ±¸ÇöÇϱâ
____15.12.1 API ÇÔ¼ö ÁغñÇϱâ
____15.12.2 ´ñ±Û ÀÛ¼º ÄÄÆ÷³ÍÆ® ¸¸µé±â
____15.12.3 ´ñ±Û »èÁ¦ ±â´É ±¸ÇöÇϱâ
____15.12.4 ´ñ±Û ¼öÁ¤ ±â´É ±¸ÇöÇϱâ
__15.13 Á¤¸®
16Àå ¾Û ½ºÅä¾î¿Í ±¸±Û Ç÷¹ÀÌ¿¡ ¸®¾×Æ® ³×ÀÌƼºê ¾Û µî·ÏÇϱâ
__16.1 ÇÁ·ÎÁ§Æ® ÁغñÇϱâ
__16.2 ¾Èµå·ÎÀÌµå ¾Û µî·ÏÇϱâ
____16.2.1 ¾Û ¼¸íÇϱâ
____16.2.2 AAB ÆÄÀÏ »ý¼ºÇϱâ
____16.2.3 ¸±¸®½º ºôµå ½ÇÇàÇغ¸±â
____16.2.4 ±¸±Û Ç÷¹ÀÌ¿¡ ¾Û µî·ÏÇϱâ
__16.3 iOS ¾Û µî·ÏÇϱâ
____16.3.1 App Transport Security È°¼ºÈÇϱâ
____16.3.2 Build Configuration º¯°æÇϱâ
____16.3.3 ¾Û ºôµåÇϱâ
____16.3.4 ¾ÖÇà °³¹ßÀÚ °èÁ¤ »ý¼º
____16.3.5 ½ÇÁ¦ µð¹ÙÀ̽º¿¡¼ ¾Û ½ÇÇàÇϱâ
____16.3.6 ¾ÖÇà °³¹ßÀÚ ÇÁ·Î±×·¥ °¡ÀÔ
____16.3.7 ÀÎÁõ¼ ¹ß±Þ¹Þ±â
____16.3.8 µð¹ÙÀ̽º Ãß°¡Çϱâ
____16.3.9 ¾ÆÀÌÄÜ ¼³Á¤Çϱâ
____16.3.10 ¾Û ºôµå ÈÄ ¾Û ½ºÅä¾î¿¡ ¾÷·ÎµåÇϱâ
__16.4 Á¤¸®
17Àå ¸¶Ä¡¸é¼
__17.1 Ä¿¹Â´ÏƼ
__17.2 Ã¥ÀÇ ¿¬Àå¼±