{"id":44341,"date":"2020-06-27T22:58:51","date_gmt":"2020-06-27T13:58:51","guid":{"rendered":"https:\/\/www.charlezz.com\/?p=44341"},"modified":"2020-07-07T11:01:55","modified_gmt":"2020-07-07T02:01:55","slug":"hilt-5-6-core-apis-custom-components","status":"publish","type":"post","link":"https:\/\/charlezz.com\/?p=44341","title":{"rendered":"[Hilt] 5.6 Core APIs &#8211; Custom Components"},"content":{"rendered":"<p><a href=\"https:\/\/dagger.dev\/hilt\/custom-components\">https:\/\/dagger.dev\/hilt\/custom-components<\/a><\/p>\n<hr \/>\n<p><a href=\"https:\/\/www.charlezz.com\/wordpress\/wp-content\/uploads\/2020\/06\/1078edcee19384aeeaa25f053a09c82c.png\"><img decoding=\"async\" loading=\"lazy\" src=\"https:\/\/www.charlezz.com\/wordpress\/wp-content\/uploads\/2020\/06\/1078edcee19384aeeaa25f053a09c82c-236x300.png\" alt=\"\" width=\"236\" height=\"300\" class=\"aligncenter size-medium wp-image-44317\" srcset=\"https:\/\/charlezz.com\/wordpress\/wp-content\/uploads\/2020\/06\/1078edcee19384aeeaa25f053a09c82c-236x300.png 236w, https:\/\/charlezz.com\/wordpress\/wp-content\/uploads\/2020\/06\/1078edcee19384aeeaa25f053a09c82c-768x975.png 768w, https:\/\/charlezz.com\/wordpress\/wp-content\/uploads\/2020\/06\/1078edcee19384aeeaa25f053a09c82c-807x1024.png 807w, https:\/\/charlezz.com\/wordpress\/wp-content\/uploads\/2020\/06\/1078edcee19384aeeaa25f053a09c82c.png 1145w\" sizes=\"(max-width: 236px) 100vw, 236px\" \/><\/a><\/p>\n<h1>5.6 Core APIs &#8211; Custom Components<\/h1>\n<h2>\uc0ac\uc6a9\uc790\ud654 \ucef4\ud3ec\ub10c\ud2b8\uac00 \ud544\uc694\ud55c\uac00?<\/h2>\n<p>Hilt\ub294 \uac1c\ubc1c\uc790\ub97c \uc704\ud574 \uad00\ub9ac\ub418\ub294 \uc548\ub4dc\ub85c\uc774\ub4dc\uc6a9\uc73c\ub85c \ubbf8\ub9ac \uc815\uc758\ub41c \ucef4\ud3ec\ub10c\ud2b8\ub4e4\uc744 \uac00\uc9c0\uace0 \uc788\ub2e4. \ud558\uc9c0\ub9cc \ud45c\uc900 Hilt \ucef4\ud3ec\ub10c\ud2b8\uac00 \uac1d\uccb4\uc758 \uc0dd\uc560\uc640 \ub9de\uc9c0 \uc54a\uac70\ub098 \ud2b9\uc815 \uae30\ub2a5\uc744 \ud544\uc694\ub85c \ud558\ub294 \uc0c1\ud669\ub4e4\uc774 \uc0dd\uae30\uae30 \ub9c8\ub828\uc774\ub2e4. \uc774\ub7f0 \uacbd\uc6b0\uc5d0\ub294 \uc0ac\uc6a9\uc790\ud654 \ucef4\ud3ec\ub10c\ud2b8\uac00 \ud544\uc694\ud558\ub2e4. \uadf8\ub7ec\ub098 \uc0ac\uc6a9\uc790\ud654 \ucef4\ud3ec\ub10c\ud2b8\ub97c \uc0dd\uc131\ud558\uae30 \uc804\uc5d0 \ub17c\ub9ac\uc801\uc73c\ub85c \uc0ac\uc6a9\uc790\ud654 \ucef4\ud3ec\ub10c\ud2b8\uac00 \ubc18\ub4dc\uc2dc \ud544\uc694\ud55c \uac83\uc778\uc9c0 \uace0\ub824\ud574\uc57c\ud55c\ub2e4.<\/p>\n<p>\uc608\ub97c \ub4e4\uba74 \ubc31\uadf8\ub77c\uc6b4\ub4dc \uc791\uc5c5\uc744 \uace0\ub824\ud574\ubcfc \ub54c, \uc791\uc5c5\uc774 \uc2a4\ucf54\ud504\uc5d0 \ub300\ud574 \ud0c0\ub2f9\ud558\uace0 \uba85\ud655\ud55c \uc0dd\uc560\ub97c \uac00\uc9c0\uace0 \uc788\ub2e4\uace0 \uac00\uc815\ud558\uc790. \ub610\ud55c \ud574\ub2f9 \uc791\uc5c5\uc744 \uc704\ud574 \uc694\uccad\ub41c \uac1d\uccb4\ub4e4\uc774 \uc788\ub294 \uacbd\uc6b0 Dagger\uc5d0 \uc788\ub294 \ubc14\uc778\ub529\uc744 \uc791\uc5c5 \ub9e4\uac1c\ubcc0\uc218 \uc77c\ubd80\ub85c \uc804\ub2ec\ud560 \uc218 \uc788\ub2e4. \ud558\uc9c0\ub9cc \ub300\ubd80\ubd84\uc758 \ubc31\uadf8\ub77c\uc6b4\ub4dc \uc791\uc5c5\uc740 \ucef4\ud3ec\ub10c\ud2b8\uac00 \uc2e4\uc81c\ub85c \ud544\uc694\ud558\uc9c0 \uc54a\uac70\ub098 \ub2e8\uc21c\ud788 \uba87\uac1c\uc758 \uac1d\uccb4\ub97c \uc804\ub2ec\ud558\uae30 \uc704\ud574 \ubcf5\uc7a1\ub3c4\ub9cc \ub298\uc5b4\ub098\uac8c \ub41c\ub2e4. \uc0ac\uc6a9\uc790\ud654 \ucef4\ud3ec\ub10c\ud2b8\ub97c \ucd94\uac00\ud558\uae30 \uc804\uc5d0 \ub2e4\uc74c\uacfc \uac19\uc740 \ubb38\uc81c\uc810\ub4e4\uc744 \uc9d1\uace0 \ub118\uc5b4\uac00\uc790.<\/p>\n<ul>\n<li>\uac01 \ucef4\ud3ec\ub10c\ud2b8\/\uc2a4\ucf54\ud504\uc5d0 \ubcf5\uc7a1\uc131\uc774 \ub354\ud574\uc9c4\ub2e4. (cognitive overhead)<\/li>\n<li>\uc0ac\uc6a9\uc790\ud654 \ucef4\ud3ec\ub10c\ud2b8\uc640 \uc2a4\ucf54\ud504\ub294 \uc870\ud569\ub860\uc801\uc73c\ub85c \ubd24\uc744 \ub54c \uadf8\ub798\ud504\ub97c \ubcf5\uc7a1\ud558\uac8c \ub9cc\ub4e0\ub2e4. (\uc608: \ucef4\ud3ec\ub10c\ud2b8\uac00 \uac1c\ub150\uc801\uc73c\ub85c ViewComponent\uc758 \ud558\uc704 \ucef4\ud3ec\ub10c\ud2b8\ub77c\uba74, ViewComponent \ubc0f ViewWithFragmentComponent\uc5d0 \ub300\ud574 \ub450 \ucef4\ud3ec\ub10c\ud2b8\ub97c \ucd94\uac00\ud574\uc57c\ud55c\ub2e4)<\/li>\n<li>\ucef4\ud3ec\ub10c\ud2b8\ub4e4\uc740 \ub2e8\uc9c0 \ud558\ub098\uc758 \uc0c1\uc704 \ucef4\ud3ec\ub10c\ud2b8\ub9cc \uac00\uc9c8 \uc218 \uc788\ub2e4. \ucef4\ud3ec\ub10c\ud2b8 \uacc4\uce35\uc740 \ub2e4\uc774\uc544\ubaac\ub4dc\ud615\uc73c\ub85c \uad6c\uc131\ub420 \uc218 \uc5c6\ub2e4. \ub354 \ub9ce\uc740 \ucef4\ud3ec\ub10c\ud2b8\ub97c \uc0dd\uc131\ud558\ub294 \uac83\uc740 \ub2e4\uc774\uc544\ubaac\ub4dc \uc758\uc874 \uad00\uacc4\ub97c \ud544\uc694\ub85c \ud558\ub294 \uc0c1\ud669\uc758 \uac00\ub2a5\uc131\uc744 \uc99d\ub300\uc2dc\ud0a8\ub2e4. \ubd88\ud589\ud788\ub3c4 \uc774\ub7f0 \ub2e4\uc774\uc544\ubaac\ub4dc \uc758\uc874 \uad00\uacc4\uc5d0 \ub300\ud55c \ubb38\uc81c\uc758 \uc194\ub8e8\uc158\uc740 \uc5c6\uace0, \uc774\ub97c \uc608\uce21\ud558\uac70\ub098 \ud68c\ud53c\ud558\ub294 \uac83\ub3c4 \uc5b4\ub835\ub2e4.<\/li>\n<li>\uc0ac\uc6a9\uc790\ud654 \ucef4\ud3ec\ub10c\ud2b8\ub294 \ud45c\uc900\ud654\ub41c \uaddc\uaca9\uc5d0 \ubc18\ud558\uae30 \ub54c\ubb38\uc5d0 \ub354 \ub9ce\uc740 \uc0ac\uc6a9\uc790\ud654 \ucef4\ud3ec\ub10c\ud2b8\uac00 \uc0ac\uc6a9\ub420 \uc218\ub85d \uacf5\uc6a9 \ub77c\uc774\ube0c\ub7ec\ub9ac \uc0ac\uc6a9\uc740 \ub354 \uc5b4\ub824\uc6cc\uc9c0\uac8c \ub41c\ub2e4.<\/li>\n<\/ul>\n<p>\uc774\ub97c \uc5fc\ub450\uc5d0 \ub450\uace0 \uc0ac\uc6a9\uc790\ud654 \ucef4\ud3ec\ub10c\ud2b8\uac00 \ud544\uc694\ud55c\uc9c0 \uacb0\uc815\ud558\ub294\ub370 \uc0ac\uc6a9\ud574\uc57c \ud558\ub294 \uba87\uac00\uc9c0 \uae30\uc900\uc774 \uc788\ub2e4.<\/p>\n<ul>\n<li>\ucef4\ud3ec\ub10c\ud2b8\ub294 \uba85\ud655\ud55c \uc0dd\uc560\ub97c \uac00\uc838\uc57c \ud55c\ub2e4.<\/li>\n<li>\ucef4\ud3ec\ub10c\ud2b8\uc758 \uac1c\ub150\uc740 \uc774\ud574\ud558\uae30 \uc27d\uace0 \ub113\uac8c \uc801\uc6a9 \uac00\ub2a5\ud574\uc57c \ud55c\ub2e4. Hilt \ucef4\ud3ec\ub10c\ud2b8\ub294 \uc571\uc5d0 \uc804\ubc18\uc801\uc73c\ub85c \uc801\uc6a9\ub418\ubbc0\ub85c \uac1c\ub150\uc801\uc73c\ub85c \ubaa8\ub4e0 \uacf3\uc5d0 \uc801\uc6a9 \uac00\ub2a5\ud574\uc57c \ud55c\ub2e4. \uc804\ubc18\uc801\uc73c\ub85c \uc774\ud574\ud558\uae30 \uc27d\ub2e4\ub294 \uac83\uc740 \ubcf5\uc7a1\uc131 \ubb38\uc81c\ub97c \ud574\uacb0\ud55c\ub2e4.(Issues with cognitive overhead)<\/li>\n<li>Hilt\uac00 \uc544\ub2cc(\uc77c\ubc18\uc801\uc778 Dagger) \ucef4\ud3ec\ub10c\ud2b8\ub85c \ucda9\ubd84\ud55c\uc9c0 \uace0\ub824\ud574\uc57c \ud55c\ub2e4. \uc81c\ud55c\ub41c \ubaa9\uc801\uc744 \uac16\ub294 \ucef4\ud3ec\ub10c\ud2b8\uc758 \uacbd\uc6b0 \ub54c\ub85c\ub294 Hilt \uc774\uc678\uc758 \ucef4\ud3ec\ub10c\ud2b8\ub97c \uc0ac\uc6a9\ud558\ub294 \uac83\uc774 \uc88b\ub2e4. \uc608\ub97c \ub4e4\uc5b4, \ub2e8\uc77c \ubc31\uadf8\ub77c\uc6b4\ub4dc \uc791\uc5c5\uc744 \ud45c\ud604\ud558\ub294 \ud504\ub85c\ub355\uc158 \ucef4\ud3ec\ub10c\ud2b8\uac00 \uc788\ub2e4\uace0 \uc0dd\uac01\ud574\ubcf4\uc790. Hilt \ucef4\ud3ec\ub10c\ud2b8\ub4e4\uc740 \ucf54\ub4dc\uac00 \ubd84\ub9ac\ud615 \/ \ubaa8\ub4c8\ud615 \ucf54\ub4dc\ub85c \uc791\uc5c5\ud574\uc57c \ud558\ub294 \uc0c1\ud669\uc5d0 \ud0c1\uc6d4\ud558\ub2e4. \ucef4\ud3ec\ub10c\ud2b8\uac00 \uc2e4\uc81c\ub85c \ud655\uc7a5\uc131\uc744 \uac16\uc9c0 \ubabb\ud558\ub294 \uacbd\uc6b0 \uc0ac\uc6a9\uc790\ud654 \ucef4\ud3ec\ub10c\ud2b8\ub97c \uc0ac\uc6a9\ud558\ub294 \uac83\uc774 \ub9de\uc9c0 \uc54a\uc744 \uc218 \uc788\ub2e4.<\/li>\n<\/ul>\n<h3>\uc0ac\uc6a9\uc790\ud654 \ucef4\ud3ec\ub10c\ud2b8\uc758 \uc81c\uc57d<\/h3>\n<p>\uc0ac\uc6a9\uc790\ud654 \ucef4\ud3ec\ub10c\ud2b8\ub294 \ud604\uc7ac \ub2e4\uc74c\uacfc \uac19\uc740 \uc81c\uc57d\uc870\uac74\uc744 \uac00\uc9c0\uace0 \uc788\ub2e4.<\/p>\n<ul>\n<li>\uc0ac\uc6a9\uc790\ud654 \ucef4\ud3ec\ub10c\ud2b8\ub294 \ubc18\ub4dc\uc2dc ApplicationComponent\uc758 \uc9c1\uc811\uc801 \ub610\ub294 \uac04\uc811\uc801\uc73c\ub85c \ud558\uc704 \ucef4\ud3ec\ub10c\ud2b8\uc5ec\uc57c \ud55c\ub2e4.<\/li>\n<li>\uc0ac\uc6a9\uc790\ud654 \ucef4\ud3ec\ub10c\ud2b8\ub294 \ud45c\uc900 \ucef4\ud3ec\ub10c\ud2b8 \uc0ac\uc774\uc5d0 \ucd94\uac00\ub418\uba74 \uc548\ub41c\ub2e4. \uc608\ub97c \ub4e4\uc5b4 \uc0ac\uc6a9\uc790\ud654 \ucef4\ud3ec\ub10c\ud2b8\ub294 ActivityComponent\uc640 FragmentComponent\uc0ac\uc774\uc5d0 \ucd94\uac00 \ub420 \uc218 \uc5c6\ub2e4.<\/li>\n<\/ul>\n<h2>\uc0ac\uc6a9\uc790\ud654 Hilt \ucef4\ud3ec\ub10c\ud2b8 \ucd94\uac00\ud558\uae30<\/h2>\n<p>\uc0ac\uc6a9\uc790\ud654 Hilt \ucef4\ud3ec\ub10c\ud2b8\ub97c \uc0dd\uc131\ud558\uae30 \uc704\ud574\uc11c\ub294 @DefineComponent\uc640 \ud568\uaed8 \ud074\ub798\uc2a4\ub97c \uc0dd\uc131\ud574\uc57c \ud55c\ub2e4. \uc774\ub294 @InstallIn \uc5b4\ub178\ud14c\uc774\uc158\uc5d0\uc11c \uc0ac\uc6a9\ub418\ub294 \ud074\ub798\uc2a4\uac00 \ub41c\ub2e4.<\/p>\n<p>\uc0c1\uc704 \ucef4\ud3ec\ub10c\ud2b8\ub294 @DefineComponent \uc5b4\ub178\ud14c\uc774\uc158\uc758 \uba64\ubc84 \uac12\uc73c\ub85c \uc815\uc758 \ub418\uc5b4\uc57c \ud55c\ub2e4. @DefineComponent \ud074\ub798\uc2a4\ub294 \uc2a4\ucf54\ud504 \uc5b4\ub178\ud14c\uc774\uc158\uc744 \ucd94\uac00\ud558\uc5ec \uac1d\uccb4\uac00 \ud574\ub2f9 \ucef4\ud3ec\ub10c\ud2b8\uc758 \uc0dd\uc560\uc640 \ud568\uaed8 \ud558\ub3c4\ub85d \ud560 \uc218 \uc788\ub2e4.<\/p>\n<p>\uc608\ub97c \ub4e4\uba74 \ub2e4\uc74c\uacfc \uac19\ub2e4.<\/p>\n<pre><code class=\"language-kotlin\">@DefineComponent(parent = ApplicationComponent::class)\r\ninterface MyCustomComponent\r\n<\/code><\/pre>\n<p>\ube4c\ub354 \uc778\ud130\ud398\uc774\uc2a4\uac00 \ubc18\ub4dc\uc2dc \uc815\uc758\ub418\uc5b4\uc57c \ud55c\ub2e4. \ube4c\ub354 \uc778\ud130\ud398\uc774\uc2a4\ub294 \uc0c1\uc704 \ucef4\ud3ec\ub10c\ud2b8\uc5d0\uc11c \uc8fc\uc785 \uac00\ub2a5\ud574\uc57c\ud558\uace0, \ube4c\ub354 \uc778\ud130\ud398\uc774\uc2a4\ub97c \ud1b5\ud574 \ucef4\ud3ec\ub10c\ud2b8\uc758 \uc778\uc2a4\ud134\uc2a4\ub97c \uc0dd\uc131\ud560 \uc218 \uc788\uc5b4\uc57c \ud55c\ub2e4. \uc774\ub7f0 \uc0ac\uc6a9\uc790 \ucef4\ud3ec\ub10c\ud2b8\ub4e4\uc740 \uc77c\ub2e8 \uc778\uc2a4\ud134\uc2a4\uac00 \uc0dd\uc131\ub418\uace0 \ub098\uba74 \uc801\uc808\ud55c \uc2dc\uc810\uc5d0 \ucef4\ud3ec\ub10c\ud2b8 \uc778\uc2a4\ud134\uc2a4\ub97c \uc720\uc9c0\ud558\uac70\ub098 \ud574\uc81c\ud558\ub294 \uc791\uc5c5\uc774 \ub41c\ub2e4.<\/p>\n<p>\ube4c\ub354 \uc778\ud130\ud398\uc774\uc2a4\ub294 @DefineComponent.Builder \uc5b4\ub178\ud14c\uc774\uc158\uc744 \uc0ac\uc6a9\ud558\uc5ec \uc815\uc758\ub41c\ub2e4. \ube4c\ub354\ub294 \ubc18\ub4dc\uc2dc @DefineComponent \uc5b4\ub178\ud14c\uc774\uc158\uc744 \uac16\ub294 \ud0c0\uc785\uc744 \ubc18\ud658\ud558\ub294 \uba54\uc11c\ub4dc \ud558\ub098\ub97c \uac00\uc838\uc57c \ud55c\ub2e4. \ube4c\ub354\ub294 @BindsInstance \uba54\uc11c\ub4dc\uc640 \uac19\uc774 \uc77c\ubc18\uc801\uc778 Dagger \ucef4\ud3ec\ub10c\ud2b8 \ube4c\ub354\uc758 \uba54\uc11c\ub4dc\ub97c \ucd94\uac00\uc801\uc73c\ub85c \uac00\uc9c8 \uc218 \uc788\ub2e4.<\/p>\n<pre><code class=\"language-kotlin\">@DefineComponent.Builder\r\ninterface MyCustomComponentBuilder {\r\n    fun fooSeedData(@BindsInstance Foo foo): MyCustomComponentBuilder\r\n    fun build(): MyCustomComponent\r\n}\r\n<\/code><\/pre>\n<p>@DefineComponent.Builder \ud074\ub798\uc2a4\uac00 @DefineComponent\ub0b4\uc5d0 \uc911\ucca9 \ub420 \uc218 \uc788\uc9c0\ub9cc, \uc77c\ubc18\uc801\uc73c\ub85c\ub294 \ubcc4\ub3c4\uc758 \ud074\ub798\uc2a4\ub85c \uc0ac\uc6a9\ud558\ub294 \uac83\uc774 \uc88b\ub2e4. @HiltAndroidApp \ud074\ub798\uc2a4 \ub610\ub294 @HiltAndroidTest \ud074\ub798\uc2a4\uac00 \uc804\uc774\uc801 \uc758\uc874\uc131\uc778 \uacbd\uc6b0 \ub2e4\ub978 \ud074\ub798\uc2a4\ub85c \ubd84\ub9ac \ub420 \uc218 \uc788\ub2e4. \ub9ce\uc740 \uacf3\uc5d0\uc11c @InstallIn\uc744 \ud1b5\ud574 @DefineComponent \ud074\ub798\uc2a4\uac00 \ucc38\uc870\ub418\uae30 \ub54c\ubb38\uc5d0 \ube4c\ub354\uc758 \uc758\uc874\uc131\uc774 \ucef4\ud3ec\ub10c\ud2b8\uc5d0 \uc124\uce58\ub41c \ubaa8\ub4e0 \ubaa8\ub4c8\uc5d0 \uc804\uc774 \uc758\uc874\uc131\uc774 \ub418\uc9c0 \uc54a\ub3c4\ub85d \ube4c\ub354\ub97c \ubd84\ub9ac\ud558\ub294 \uac83\uc774 \uc88b\ub2e4.<\/p>\n<p>\uacfc\ub3c4\ud55c \uc758\uc874\uc131\uc744 \ud53c\ud558\uae30 \uc704\ud574 @DefineComponent \uc778\ud130\ud398\uc774\uc2a4\uc5d0\uc11c\ub294 \uba54\uc11c\ub4dc\ub97c \uc0ac\uc6a9\ud560 \uc218 \uc5c6\uace0, \ub300\uc2e0\uc5d0 Entry point\ub97c \ud1b5\ud574 Dagger \uac1d\uccb4\uc5d0 \uc811\uadfc\ud574\uc57c \ud55c\ub2e4.<\/p>\n<pre class=\"\"><code class=\"language-kotlin\">@EntryPoint\r\n@InstallIn(MyCustomComponent::class)\r\ninterface MyCustomEntryPoint {\r\n    fun getBar(): Bar\r\n}\r\n\r\nclass CustomComponentManager \r\n@Inject constructor(componentBuilder: MyCustomComponentBuilder) {\r\n\r\n    fun doSomething(foo: Foo) {\r\n        val component = componentBuilder.fooSeedData(foo).build();\r\n        val bar = EntryPoints.get(component, MyCustomEntryPoint::class.java).getBar()\r\n        \/\/ \ud544\uc694\ud558\ub2e4\uba74 \ucef4\ud3ec\ub10c\ud2b8 \uc778\uc2a4\ud134\uc2a4\ub97c \uc774\uacf3\uc5d0\uc11c \uba64\ubc84 \ubcc0\uc218\ub85c \uad00\ub9ac \ud560 \uc218 \uc788\ub2e4.\r\n    }\r\n}\r\n<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>https:\/\/dagger.dev\/hilt\/custom-components 5.6 Core APIs &#8211; Custom Components \uc0ac\uc6a9\uc790\ud654 \ucef4\ud3ec\ub10c\ud2b8\uac00 \ud544\uc694\ud55c\uac00? Hilt\ub294 \uac1c\ubc1c\uc790\ub97c \uc704\ud574 \uad00\ub9ac\ub418\ub294 \uc548\ub4dc\ub85c\uc774\ub4dc\uc6a9\uc73c\ub85c \ubbf8\ub9ac \uc815\uc758\ub41c \ucef4\ud3ec\ub10c\ud2b8\ub4e4\uc744 \uac00\uc9c0\uace0 \uc788\ub2e4. \ud558\uc9c0\ub9cc \ud45c\uc900 Hilt \ucef4\ud3ec\ub10c\ud2b8\uac00 \uac1d\uccb4\uc758 \uc0dd\uc560\uc640 \ub9de\uc9c0 \uc54a\uac70\ub098 \ud2b9\uc815 \uae30\ub2a5\uc744 \ud544\uc694\ub85c \ud558\ub294 \uc0c1\ud669\ub4e4\uc774 \uc0dd\uae30\uae30 \ub9c8\ub828\uc774\ub2e4. \uc774\ub7f0 \uacbd\uc6b0\uc5d0\ub294 \uc0ac\uc6a9\uc790\ud654 \ucef4\ud3ec\ub10c\ud2b8\uac00 \ud544\uc694\ud558\ub2e4. \uadf8\ub7ec\ub098 \uc0ac\uc6a9\uc790\ud654 \ucef4\ud3ec\ub10c\ud2b8\ub97c \uc0dd\uc131\ud558\uae30 \uc804\uc5d0 \ub17c\ub9ac\uc801\uc73c\ub85c \uc0ac\uc6a9\uc790\ud654 \ucef4\ud3ec\ub10c\ud2b8\uac00 \ubc18\ub4dc\uc2dc \ud544\uc694\ud55c [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"inline_featured_image":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0},"categories":[28],"tags":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/charlezz.com\/index.php?rest_route=\/wp\/v2\/posts\/44341"}],"collection":[{"href":"https:\/\/charlezz.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/charlezz.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/charlezz.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/charlezz.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=44341"}],"version-history":[{"count":3,"href":"https:\/\/charlezz.com\/index.php?rest_route=\/wp\/v2\/posts\/44341\/revisions"}],"predecessor-version":[{"id":44391,"href":"https:\/\/charlezz.com\/index.php?rest_route=\/wp\/v2\/posts\/44341\/revisions\/44391"}],"wp:attachment":[{"href":"https:\/\/charlezz.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=44341"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/charlezz.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=44341"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/charlezz.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=44341"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}