¸®¾×Æ® ¾ÖÇø®ÄÉÀ̼ÇÀ» À§ÇÑ »óÅ °ü¸® ¶óÀ̺귯¸®ÀÎ Recoil¿¡ ´ëÇÑ Á¾ÇÕ °¡À̵åÀÔ´Ï´Ù. RecoilÀº º¹ÀâÇÑ ¸®¾×Æ® ¾ÖÇø®ÄÉÀ̼ǿ¡¼ »óŸ¦ °ü¸®ÇÏ´Â °£´ÜÇÏ°í È¿À²ÀûÀÎ ¹æ¹ýÀ» Á¦°øÇϸç, ¾ÆÅè, ¼±ÅÃÀÚ, ºñµ¿±â µ¥ÀÌÅÍ Ã³¸®¿Í °°Àº ±â´ÉÀ» Á¦°øÇÕ´Ï´Ù. ÀÌ Ã¥¿¡¼´Â RecoilÀÇ ÀÛµ¿ ¹æ½Ä°ú ±× ±â´ÉÀ» È°¿ëÇÏ¿© °·ÂÇÏ°í È®Àå °¡´ÉÇÑ ¸®¾×Æ® ¾ÖÇø®ÄÉÀ̼ÇÀ» ±¸ÃàÇÏ´Â ¹æ¹ýÀ» »ìÆ캾´Ï´Ù.
1Àå, '¸®ÄÚÀÏ ¼Ò°³'¿¡¼´Â ¸®ÄÚÀÏ°ú ±× ÀÌÁ¡¿¡ ´ëÇÑ °³¿ä¸¦ Á¦°øÇÕ´Ï´Ù. RecoilÀÇ Á¤ÀÇ¿Í ÇÙ½É ±â´É, ±×¸®°í ¸®¾×Æ® ¾ÖÇø®ÄÉÀ̼ǿ¡¼ »óÅ °ü¸®¸¦ À§ÇØ RecoilÀ» »ç¿ëÇÒ ¶§ÀÇ ÀåÁ¡¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù.
2Àå, '¼³Ä¡ ¹× ¼³Á¤'¿¡¼´Â ¸®¾×Æ® ÇÁ·ÎÁ§Æ®¿¡¼ RecoilÀ» ¼³Ä¡ÇÏ°í ¼³Á¤ÇÏ´Â °úÁ¤À» ´Ù·ì´Ï´Ù. ¼³Ä¡ ´Ü°è¸¦ ¾È³»ÇÏ°í RecoilÀ» »õ ÇÁ·ÎÁ§Æ®¿Í ±âÁ¸ ¸®¾×Æ® ÇÁ·ÎÁ§Æ®¿¡ ÅëÇÕÇÏ´Â ¹æ¹ýÀ» ½Ã¿¬ÇÕ´Ï´Ù.
3Àå, '¸®ÄÚÀÏÀÇ ±âº» °³³ä'¿¡¼´Â ¿øÀÚ ¹× ¼±ÅÃÀÚ¸¦ Æ÷ÇÔÇÑ ¸®ÄÚÀÏÀÇ ±âº» °³³äÀ» »ìÆ캾´Ï´Ù. ¾ÆÅè°ú ¼¿·ºÅÍ°¡ ¹«¾ùÀÎÁö, ±×¸®°í ¸®ÄÚÀÏ ¾ÖÇø®ÄÉÀ̼ǿ¡¼ »óŸ¦ °ü¸®ÇÏ´Â µ¥ ¾î¶»°Ô »ç¿ëµÇ´ÂÁö ¼³¸íÇÕ´Ï´Ù.
4Àå, '¸®ÄÚÀÏ API ÀÌÇØÇϱâ'¿¡¼´Â ¸®ÄÚÀÏ API¸¦ ÀÚ¼¼È÷ »ìÆ캾´Ï´Ù. RecoilRoot, Atom, Selector¿Í °°Àº Çʼö API¿Í useRecoilState, useRecoilValue, useSetRecoilState, useResetRecoilState, useRecoilCallback °°Àº ´Ù¾çÇÑ ÈÅ¿¡ ´ëÇØ ´Ù·ì´Ï´Ù.
5Àå, 'ºñµ¿±â µ¥ÀÌÅÍ·Î ÀÛ¾÷Çϱâ'¿¡¼´Â ¸®ÄÚÀÏ ¾ÖÇø®ÄÉÀ̼ǿ¡¼ ºñµ¿±â µ¥ÀÌÅ͸¦ ó¸®ÇÏ´Â µ¥ ÁßÁ¡À» µÓ´Ï´Ù. ºñµ¿±â ¼±Åñ⠻ç¿ë, Loadable·Î ·Îµù ¹× ¿À·ù »óÅ °ü¸®, µ¿½Ã ¸ðµå¿ÍÀÇ È£È¯¼º º¸Àå¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù.
6Àå, '°í±Þ ÁÖÁ¦'¿¡¼´Â ¸®ÄÚÀÏÀÇ °í±Þ ±â´É°ú ±â¹ýÀ» »ìÆ캾´Ï´Ù. ¸®ÄÚÀÏ¿ë À¯Æ¿¸®Æ¼¿Í È®Àå ±â´É ¸ðÀ½ÀÎ ¸®ÄÚÀÏ ÆĶó´ÙÀ̽º¸¦ ¼Ò°³ÇÏ°í, ¸®ÄÚÀÏ ½º³À¼¦À¸·Î ºôµåÇϱâ, ¸®ÄÚÀÏ ¾ÖÇø®ÄÉÀÌ¼Ç Å×½ºÆ®Çϱâ, ¼º´É ÃÖÀûÈÇϱ⠵îÀÇ ÁÖÁ¦¸¦ ´Ù·ì´Ï´Ù.
ÀÌ Ã¥Àº RecoilÀ» óÀ½ »ç¿ëÇÏµç »óÅ °ü¸®¸¦ ´õ ±íÀÌ ÀÌÇØÇÏ°íÀÚ ÇÏ´Â ¼÷·ÃµÈ ¸®¾×Æ® °³¹ßÀÚÀÌµç »ó°ü¾øÀÌ, ¸®¾×Æ® ÇÁ·ÎÁ§Æ®¿¡¼ RecoilÀ» È¿°úÀûÀ¸·Î »ç¿ëÇÏ´Â µ¥ ÇÊ¿äÇÑ Áö½Ä°ú ±â¼úÀ» Á¦°øÇÕ´Ï´Ù.