{"id":343042,"date":"2023-04-18T03:38:14","date_gmt":"2023-04-18T02:38:14","guid":{"rendered":"https:\/\/blog.jetbrains.com\/?post_type=scala&#038;p=343042"},"modified":"2023-04-18T03:38:19","modified_gmt":"2023-04-18T02:38:19","slug":"performance-tips-for-intellij-scala-plugin","status":"publish","type":"scala","link":"https:\/\/blog.jetbrains.com\/ko\/scala\/2023\/04\/18\/performance-tips-for-intellij-scala-plugin\/","title":{"rendered":"IntelliJ Scala \ud50c\ub7ec\uadf8\uc778\uc758 \uc131\ub2a5 \ud301"},"content":{"rendered":"<p>\uc804\uccb4 \ubc84\uc804 IDE\ub294 \uc77c\ubc18 \ub178\ud2b8\ubd81\uc5d0\uc11c \uc788\uc744 \uc218 \uc788\ub294 \uac00\uc7a5 \ubcf5\uc7a1\ud55c \uc560\ud50c\ub9ac\ucf00\uc774\uc158 \uc911 \ud558\ub098\uc785\ub2c8\ub2e4. \uc774\ub7ec\ud55c \uc774\uc720\ub85c, JetBrains\uc758 Scala \ud50c\ub7ec\uadf8\uc778 \ud300\uc740 JetBrains \uc81c\ud488\uc774 \ud2b9\uc815 \uc0c1\ud669\uc5d0\uc11c \uc9c0\uc5f0\ub418\uac70\ub098 \uc77c\ubc18\uc801\uc73c\ub85c \ub290\ub9ac\uac8c \uc791\ub3d9\ud55c\ub2e4\ub294 \ubcf4\uace0\ub97c \uac04\ud639 \ubc1b\uace0 \uc788\uc2b5\ub2c8\ub2e4. \uacbd\uc6b0\uc5d0 \ub530\ub77c \ub3c4\uc6c0\uc744 \ub4dc\ub9b4 \uc218 \uc788\uc9c0\ub9cc, \uc608\ub97c \ub4e4\uc5b4 \ucf54\ub4dc\ubca0\uc774\uc2a4\uac00 \ud06c\uace0 \ubcf5\uc7a1\ud558\uac70\ub098 \ucef4\ud4e8\ud130\uac00 \uc624\ub798\ub41c \uacbd\uc6b0\uc5d0\ub294 \uc800\ud76c\uac00 \ud574\ub4dc\ub9b4 \uc218 \uc788\ub294 \uc77c\uc774 \ub9ce\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \ub300\uc2e0, IntelliJ IDEA \ubc0f Scala \ud50c\ub7ec\uadf8\uc778 \ud658\uacbd\uc744 \uac1c\uc120\ud558\uae30 \uc704\ud574 \uad6c\uc131\uc744 \uc870\uc815\ud558\uac70\ub098 \uc88b\uc740 \ucf54\ub529 \ubc29\uc2dd\uc744 \uc720\uc9c0\ud558\ub294 \ub4f1, \uc5ec\ub7ec\ubd84\uc774 \uc9c1\uc811 \uc2dc\ub3c4\ud574\ubcfc \uc218 \uc788\ub294 \ubc29\uc548\uc774 \uc788\uc2b5\ub2c8\ub2e4. \uc774 \uc911 \uba87 \uac00\uc9c0\ub97c \uac04\ub2e8\ud788 \uc0b4\ud3b4\ubcf4\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-319236\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2023\/01\/performance1.png\" alt=\"\" width=\"900\" height=\"292\" \/><\/figure>\n<p><!--more--><\/p>\n<p>\uba3c\uc800, \uc131\ub2a5\uc774 \uc911\uc694\ud55c IntelliJ IDEA\uc758 \ub450 \uac00\uc9c0 \uc8fc\uc694 \uc601\uc5ed\uc5d0 \ub300\ud574 \uc0b4\ud3b4\ubcf4\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n<ol>\n<li>\uc911\uc694\ud55c \uc21c\uac04 \ud558\ub098\ub294 \ud504\ub85c\uc81d\ud2b8\ub97c \ub9cc\ub4e4\uac70\ub098 \uc5f4 \ub54c\uc785\ub2c8\ub2e4. \uc774\uac83\uc740 \uba54\ubaa8\ub9ac \uad00\ub9ac\uc640 \uad00\ub828\uc774 \uc788\uc2b5\ub2c8\ub2e4.<\/li>\n<li>\ub450 \ubc88\uc9f8\ub294 \ubcf5\uc7a1\ud55c \ub85c\uc9c1\uacfc \uad00\ub828\uc774 \uc788\uc2b5\ub2c8\ub2e4. \uc989, Scala \ud50c\ub7ec\uadf8\uc778\uc774 \uc624\ub958 \ubc0f \uacbd\uace0\ub97c \uc2dd\ubcc4\ud558\uace0 \uac15\uc870 \ud45c\uc2dc\ud558\uac70\ub098 \ucf54\ub4dc\ub97c \uac1c\uc120\ud558\ub294 \ubc29\ubc95\uc5d0 \ub300\ud55c \ud301\uc744 \ud45c\uc2dc\ud558\ub824\ub294 \uacbd\uc6b0, \uadf8\ub9ac\uace0 \uc0ac\uc6a9\uc790\uac00 Scala \ud50c\ub7ec\uadf8\uc778\uc5d0\uc11c \uc81c\uacf5\ud558\ub294 \uc561\uc158 \uc911 \ud558\ub098\ub97c \uc218\ud589\ud558\uace0 \ucf54\ub4dc\uc758 \ub9ce\uc740 \ubd80\ubd84\uc774 \uc790\ub3d9\uc73c\ub85c \ud3b8\uc9d1\ub418\ub294 \uacbd\uc6b0 \ub4f1, CPU\ub97c \ub9ce\uc774 \uc0ac\uc6a9\ud558\ub294 \uacbd\uc6b0\uc785\ub2c8\ub2e4.<\/li>\n<\/ol>\n<p>\ub450 \uacbd\uc6b0 \ubaa8\ub450 \uc720\uc0ac\ud55c \ubc29\uc2dd\uc73c\ub85c \uc131\ub2a5\uc744 \ud5a5\uc0c1\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ubc29\ubc95\uc740 \ub2e4\uc74c\uacfc \uac19\uc2b5\ub2c8\ub2e4.<\/p>\n<ul>\n<li>IntelliJ IDEA\uc5d0 <strong>\ub354 \ub9ce\uc740 \ub9ac\uc18c\uc2a4<\/strong> \uc81c\uacf5<\/li>\n<li>\uc0ac\uc6a9\ud558\uc9c0 \uc54a\ub294 <strong>\uac80\uc0ac<\/strong> \ube44\ud65c\uc131\ud654<\/li>\n<li><strong>\ucf54\ub529 \ubc29\uc2dd<\/strong> \uac1c\uc120<\/li>\n<li>\uc77c\ubd80 <strong>\uae30\ub2a5<\/strong> \ube44\ud65c\uc131\ud654<\/li>\n<\/ul>\n<h2>\ub9ac\uc18c\uc2a4<\/h2>\n<p>\ub9ac\uc18c\uc2a4\ubd80\ud130 \uc2dc\uc791\ud574\ubcf4\uaca0\uc2b5\ub2c8\ub2e4. \uc774\ub54c \ub9ac\uc18c\uc2a4\ub780 \uae30\ubcf8\uc801\uc73c\ub85c \ub354 \ub9ce\uc740 \uba54\ubaa8\ub9ac \uc81c\uacf5\uc744 \uc758\ubbf8\ud569\ub2c8\ub2e4. \uc774\ub807\uac8c \ud558\uae30 \uc804\uc5d0 \uba54\ubaa8\ub9ac \ud45c\uc2dc\uae30\ub97c \ud65c\uc131\ud654\ud558\ub294 \uac83\uc774 \uc88b\uc2b5\ub2c8\ub2e4. IntelliJ IDEA\uc758 \ud558\ub2e8 \ud328\ub110\uc744 \ub9c8\uc6b0\uc2a4 \uc624\ub978\ucabd \ubc84\ud2bc\uc73c\ub85c \ud074\ub9ad\ud55c \ub2e4\uc74c \uba54\ub274\uac00 \ub098\ud0c0\ub0a0 \ub54c \ud574\ub2f9 \uba54\ubaa8\ub9ac \ud45c\uc2dc\uae30 \uc904\uc744 \ud074\ub9ad\ud558\uba74 \ub429\ub2c8\ub2e4. \uadf8\ub7ec\uba74 IntelliJ IDEA\uac00 \uc2e4\uc81c\ub85c \uc0ac\uc6a9\ud558\ub294 \uba54\ubaa8\ub9ac \uc591\uc774 \ud45c\uc2dc\ub418\uba70, \uc774\uc5d0 \ub530\ub77c \uba54\ubaa8\ub9ac \ud06c\uae30\ub97c \uc124\uc815\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-318295\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2023\/01\/Screenshot-2023-01-30-at-13.42.07.png\" alt=\"\" width=\"892\" height=\"494\" \/><\/figure>\n<p>\uc694\uc998 \uc77c\ubc18 \ub178\ud2b8\ubd81\uc5d0\ub294 8GB \uc774\uc0c1\uc758 RAM\uc774 \uc788\uc73c\uba70, \uc774\ub294 \uc77c\ubc18\uc801\uc73c\ub85c IntelliJ IDEA, \uae30\ud0c0 \uc560\ud50c\ub9ac\ucf00\uc774\uc158 \ubc0f \uc6b4\uc601 \uccb4\uc81c\uac00 \ubaa8\ub450 \uc81c\ub300\ub85c \uc791\ub3d9\ud558\ub294 \ub370 \ucda9\ubd84\ud569\ub2c8\ub2e4.<\/p>\n<p>IntelliJ IDEA \uba54\ubaa8\ub9ac \uc0ac\uc6a9\ub7c9\uc744 \ud655\uc778\ud55c \ud6c4 <code>idea.vmoptions<\/code> \ud30c\uc77c\uc744 \uc5fd\ub2c8\ub2e4. <strong>Help(\ub3c4\uc6c0\ub9d0)<\/strong> \uba54\ub274\ub97c \uc5f4\uace0 <strong>Edit Custom VM Options(\uc0ac\uc6a9\uc790 \uc9c0\uc815 VM \uc635\uc158 \ud3b8\uc9d1)<\/strong>\uc744 \uc120\ud0dd\ud574\ub3c4 \ub429\ub2c8\ub2e4. \uadf8\ub9ac\uace0 <code>-Xmx<\/code> \uc124\uc815\uc744 \uba54\ubaa8\ub9ac \ud45c\uc2dc\uae30\uc5d0 \ud45c\uc2dc\ub41c \uac12\ubcf4\ub2e4 \uc57d\uac04 \ud070 \uac12\uc73c\ub85c \ubcc0\uacbd\ud569\ub2c8\ub2e4. \ub2e8, \ud2b9\uc815 \uac12 \uc774\uc0c1\uc5d0\uc11c\ub294 <code>-Xmx<\/code>\ub97c \ub298\ub824\ub3c4 \ub354 \uc774\uc0c1 \uc131\ub2a5\uc774 \ud5a5\uc0c1\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \uc800\uc758 \uacbd\uc6b0\uc5d0\ub294 4GB\ub85c \ub298\ub9ac\uba74 \uc5b4\ub290 \uc815\ub3c4 \ud6a8\uacfc\uac00 \uc788\uc5c8\uc9c0\ub9cc, \uadf8 \uc774\uc0c1\uc740 \ucd94\uac00\uc801\uc778 \ud5a5\uc0c1\uc774 \ubbf8\ubbf8\ud588\uc2b5\ub2c8\ub2e4.<\/p>\n<p>Scala \ud50c\ub7ec\uadf8\uc778\uc758 \uacbd\uc6b0 IntelliJ IDEA \ub0b4\uc5d0\uc11c \uc571\uc744 \ucef4\ud30c\uc77c\ub9c1\ud558\uae30\ub85c \uacb0\uc815\ud55c \uacbd\uc6b0 \uac00\uc6a9 \uba54\ubaa8\ub9ac\ub97c \ub298\ub9ac\uba74 \ucef4\ud30c\uc77c\ub9c1 \uc18d\ub3c4\ub3c4 \ub192\uc544\uc9c8 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc774\ub807\uac8c \ud558\ub824\uba74 <strong>Settings(\uc124\uc815) | Build, Execution and Deploymentt(\ube4c\ub4dc, \uc2e4\ud589, \ubc30\ud3ec) | Scala Compiler Server(Scala \ucef4\ud30c\uc77c\ub7ec \uc11c\ubc84)<\/strong>\uc5d0\uc11c VM \uc635\uc158\uc744 \uc218\uc815\ud569\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-319495\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2023\/02\/performance2.png\" alt=\"\" width=\"1978\" height=\"1436\" \/><\/figure>\n<h2>\uac80\uc0ac<\/h2>\n<p>CPU \uce21\uba74\uc5d0\uc11c \ubcf4\uba74, Scala \ud50c\ub7ec\uadf8\uc778\uc758 \uac00\uc7a5 \uc911\uc694\ud55c \uae30\ub2a5 \uc911 \ud558\ub098\uc774\uc790 CPU\ub97c \ub9ce\uc774 \uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 \uae30\ub2a5\uc740 \uac80\uc0ac \ubaa8\uc74c\uc785\ub2c8\ub2e4. \uac80\uc0ac\ub294 \ucf54\ub4dc\ub97c \uac80\uc0ac\ud558\uc5ec \ud2b9\uc815 \uc720\ud615\uc758 \ubb38\uc81c\ub97c \ucc3e\ub294 \ub85c\uc9c1\uc785\ub2c8\ub2e4. \uc5b4\ub5a4 \ubb38\uc81c\ub294 \ub9e4\uc6b0 \uac04\ub2e8\ud569\ub2c8\ub2e4(\uc608: \uc808\ub300\ub85c \uc218\uc815\ub418\uc9c0 \uc54a\uc73c\ubbc0\ub85c \ubcc0\uacbd \ubd88\uac00\ub2a5\ud55c \uac12\uc73c\ub85c \ubc14\uafc0 \uc218 \uc788\ub294 private \ubcc0\uc218). \uadf8\ub7ec\ub098 \uc0ac\uc6a9\ub418\uc9c0 \uc54a\ub294 public \ud544\ub4dc\uc640 \uac19\uc740 \ub2e4\ub978 \ubb38\uc81c\ub294 \uc870\uc0ac\ud558\ub294 \ub370 \uc2dc\uac04\uc774 \uc624\ub798 \uac78\ub9b4 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\uc774\ub7ec\ud55c \uac80\uc0ac \uc911 \uc77c\ubd80\uac00 \uc720\uc6a9\ud558\uc9c0 \uc54a\ub2e4\uace0 \uc0dd\uac01\ub418\ub294 \uacbd\uc6b0 \ube44\ud65c\uc131\ud654\ud558\uba74 \uac15\uc870 \ud45c\uc2dc \uc18d\ub3c4\uac00 \ud5a5\uc0c1\ub420 \uc218 \uc788\uc2b5\ub2c8\ub2e4. <strong>Settings(\uc124\uc815) | Editor(\uc5d0\ub514\ud130) | Inspections(\uac80\uc0ac)<\/strong>\ub85c \uc774\ub3d9\ud558\uc5ec \uc0ac\uc6a9 \uac00\ub2a5\ud55c \uac80\uc0ac \ubaa9\ub85d\uc744 \uc0b4\ud3b4\ubcf4\uace0, \ud544\uc694\ud558\uc9c0 \uc54a\uc740 \uac80\uc0ac\ub294 \ube44\ud65c\uc131\ud654\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ub354\ubd88\uc5b4, \uc124\uc815\uc744 \ud0d0\uc0c9\ud558\uba74 Scala \ud50c\ub7ec\uadf8\uc778\uc774 \uc81c\uacf5\ud558\ub294 \ubaa8\ub4e0 \uae30\ub2a5\uc744 \uc54c\uc544\ubcfc \uc218 \uc788\ub294 \uc88b\uc740 \uae30\ud68c\uac00 \ub420 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\ub2e4\uc74c\uc73c\ub85c, Scala \ud50c\ub7ec\uadf8\uc778\uc758 \uc5ec\ub7ec \uac00\uc9c0 \uac80\uc0ac \uc911 3\uac00\uc9c0\ub97c \ub354 \uc790\uc138\ud788 \uc0b4\ud3b4\ubcf4\uaca0\uc2b5\ub2c8\ub2e4. \uc774\ub7ec\ud55c 3\uac00\uc9c0 \uac80\uc0ac\ub97c \ube44\ud65c\uc131\ud654\ud558\ub354\ub77c\ub3c4 \uc131\ub2a5 \uac1c\uc120\uc740 \ubbf8\ubbf8\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uac01 \uac80\uc0ac\ub294 \ud50c\ub7ec\uadf8\uc778 \ub85c\uc9c1\uc758 \uc791\uc740 \ubd80\ubd84\uc77c \ubfd0\uc774\uba70, \uc0ac\uc6a9\uc790\ub9c8\ub2e4 \ub2e4\ub974\uac8c \uc601\ud5a5\uc744 \ubbf8\uce60 \uc218 \uc788\uc9c0\ub9cc, \uc5b4\ub290 \uc815\ub3c4\ub294 \uac00\uce58\uac00 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<ol>\n<li>\ud0c0\uc785 \uac80\uc0ac\ub97c \ud328\ud134 \uc77c\uce58\ub85c \ub300\uccb4 \uac00\ub2a5<\/li>\n<\/ol>\n<p>\uc774 \uac80\uc0ac\ub294 \uc77c\ub828\uc758 if-else \ubb38\uc5d0\uc11c \ud0c0\uc785 \uac80\uc0ac \ubc0f \ud0c0\uc785 \ubcc0\ud658\uc744 \ucc3e\uace0 \uc774\ub97c \ud328\ud134 \uc77c\uce58\ub85c \ubc14\uafc0 \uac83\uc744 \uc81c\uc548\ud569\ub2c8\ub2e4. \ub2e8, \uac00\uc7a5 \ubcf5\uc7a1\ud55c \uac80\uc0ac\ub77c\ub3c4 \uc8fc\uc5b4\uc9c4 \ucf54\ub4dc\uc5d0 \uac80\uc0ac\uac00 \uc801\uc6a9\ub418\uc9c0 \uc54a\ub294\uc9c0 \ube60\ub974\uac8c \ud655\uc778\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4(\uc608: <code>isInstanceOf<\/code>\uac00 \uc5c6\ub294 \uacbd\uc6b0). \uadf8\ub7ec\ub098 \uacbd\uc6b0\uc5d0 \ub530\ub77c \ub2e4\uc74c\uacfc \uac19\uc740 \ucf54\ub4dc\ub97c \uc0ac\uc6a9\ud558\uace0 \uc2f6\uc744 \uc218 \uc788\uc73c\uba70, \uadf8 \ucf54\ub4dc\ub97c \uc720\uc9c0\ud558\ub824\uba74 \uac80\uc0ac\ub97c \ube44\ud65c\uc131\ud654\ud558\ub294 \uac83\uc774 \uc88b\uc2b5\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-320876\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2023\/02\/performance3-1.png\" alt=\"\" width=\"1479\" height=\"428\" \/><\/figure>\n<p>2. Scala 2 \uad6c\ubb38\uc740 Scala 3\uc73c\ub85c \ub300\uccb4 \uac00\ub2a5<\/p>\n<p>\uc774 \uac80\uc0ac\ub294 \ucef4\ud30c\uc77c\ub7ec \uc635\uc158 <code>-Xsource:3<\/code>\uc744 \ud65c\uc131\ud654\ud55c \uacbd\uc6b0\uc5d0\ub9cc \uc791\ub3d9\ub429\ub2c8\ub2e4. Scala 3\uc758 \ub300\uccb4 \uad6c\ubb38\uc73c\ub85c \ubc14\uafc0 \uc218 \uc788\ub294 Scala 2 \uad6c\ubb38\uc744 \ubcf4\uace0\ud569\ub2c8\ub2e4. \ud638\ud658\uc131\uc744 \uc704\ud574 <code>-Xsource:3<\/code>\uc744 \uc0ac\uc6a9\ud558\uc9c0\ub9cc \ucf54\ub4dc\ub97c \ub2e4\uc2dc \uc791\uc131\ud560 \ud544\uc694\uac00 \uc5c6\ub294 \uacbd\uc6b0\uc5d0\ub294 \uc548\uc804\ud558\uac8c \ube44\ud65c\uc131\ud654\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-320887\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2023\/02\/Screenshot-2023-02-03-at-11.29.28.png\" alt=\"\" width=\"2088\" height=\"1700\" \/><\/figure>\n<p>3. &#8216;\uc120\uc5b8 \uc561\uc138\uc2a4\ub97c \uc81c\ud55c\ud560 \uc218 \uc788\uc74c&#8217; \ubc0f &#8216;\uc0ac\uc6a9\ub418\uc9c0 \uc54a\ub294 \uc120\uc5b8&#8217; \uac80\uc0ac<\/p>\n<p>\uc774 \ub450 \uac80\uc0ac\ub294 \uc120\uc5b8\uc774 \ucf54\ub4dc\uc758 \ubaa8\ub4e0 \uc120\uc5b8\uc5d0 \ub300\ud574 \uc0ac\uc6a9\ub418\ub294 \ubc29\uc2dd\uc744 \ud655\uc778\ud558\ub824\uace0 \ud569\ub2c8\ub2e4. \uccab \ubc88\uc9f8\ub294 \uc120\uc5b8\uc774 public \ub610\ub294 protected\uc778 \uacbd\uc6b0 \uc791\ub3d9\ub429\ub2c8\ub2e4. \uc774 \uac80\uc0ac\ub294 \uc120\uc5b8\uc774 \uc790\uccb4 \ud074\ub798\uc2a4, \ud2b9\uc131 \ub610\ub294 \uac1d\uccb4\uc758 \ubc94\uc704 \ubc16\uc5d0\uc11c \uc2e4\uc81c\ub85c \uc0ac\uc6a9\ub418\ub294\uc9c0 \ud655\uc778\ud569\ub2c8\ub2e4. \uadf8\ub807\uc9c0 \uc54a\uc740 \uacbd\uc6b0 \uc120\uc5b8\uc744 private\ub85c \ub9cc\ub4e4 \uc218 \uc788\ub2e4\ub294 \ud78c\ud2b8\ub97c \ud45c\uc2dc\ud569\ub2c8\ub2e4. \ub450 \ubc88\uc9f8\ub294 \ubaa8\ub4e0 \uc120\uc5b8\uc5d0 \ub300\ud574 \uc791\ub3d9\ub429\ub2c8\ub2e4. \uc120\uc5b8 \ubc94\uc704\ub97c \uc0b4\ud3b4\ubcf4\uace0 \uc0ac\uc6a9 \uc5ec\ubd80\ub97c \ud655\uc778\ud569\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-320898\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2023\/02\/Screenshot-2023-02-03-at-11.32.20.png\" alt=\"\" width=\"2640\" height=\"876\" \/><\/figure>\n<h2>\ucf54\ub529 \ubc29\uc2dd<\/h2>\n<p>Scala\ub97c \uc0ac\uc6a9\ud558\uba74 \ubcf5\uc7a1\ud55c \ucf54\ub4dc\ub97c \uac04\uacb0\ud55c \ubc29\uc2dd\uc73c\ub85c \uc791\uc131\ud560 \uc218 \uc788\uc73c\uba70, \uc800\ud76c\ub294 \uc774\ub97c \ucd5c\ub300\ud55c \ud65c\uc6a9\ud558\ub294 \ud3b8\uc785\ub2c8\ub2e4. \ud558\uc9c0\ub9cc \ub300\uac00\uac00 \uc788\uc2b5\ub2c8\ub2e4. IDE\uac00 \uc54c\uc544\ub0b4\ub3c4\ub85d \ub458\uc218\ub85d \uc131\ub2a5\uc774 \uc800\ud558\ub429\ub2c8\ub2e4. \uc704\uc758 \uc608\uc5d0\uc11c \uc54c \uc218 \uc788\ub4ef\uc774, \ub9ce\uc740 \uacbd\uc6b0\uc5d0 \uc5c4\uaca9\ud55c \ucf54\ub529 \ubc29\uc2dd\uc744 \uc801\uc6a9\ud558\uba74 Scala \ud50c\ub7ec\uadf8\uc778\uc758 \uac80\uc0ac \uc77c\ubd80\ub294 \ubd88\ud544\uc694\ud574\uc9c8 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc2e4\uc81c\ub85c \uc120\uc5b8\uc774 \uc0ac\uc6a9\ub418\uc9c0 \uc54a\uc558\ub294\uc9c0 \ub610\ub294 \ubcc0\uc218\uac00 \uac12\uc774 \ub420 \uc218 \uc788\ub294\uc9c0 \ud30c\uc545\ud574\uc57c \ud558\ub294 \uacbd\uc6b0, Scala \ud50c\ub7ec\uadf8\uc778 \uac80\uc0ac\uac00 \uc218\ud589\ud558\ub294 \uc791\uc5c5\uc740 \uc5ec\ub7ec\ubd84\uc774\ub098 \uc81c\uac00 \uc218\ud589\ud558\ub294 \uc791\uc5c5\uacfc \ubcc4\ub85c \ub2e4\ub974\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \uc6b0\uc120 \ubc94\uc704\ub97c \ud655\uc778\ud560 \uac83\uc774\uace0, \uc774\uc640 \uad00\ub828\ub420 \uc218 \uc788\ub294 \ub2e4\ub978 \uc694\uc18c\ub97c \ucc3e\uc544\ubcf4\uace0, \ud558\uc704 \ud074\ub798\uc2a4, \ubb35\uc2dc\uc801 \ubcc0\ud658 \ub4f1\uc744 \ucc3e\uc544\ubcfc \uac83\uc785\ub2c8\ub2e4.<\/p>\n<p>\uac80\ud1a0\uc790\uac00 \ucf54\ub4dc\uc758 \ubcf5\uc7a1\uc131\uc73c\ub85c \uc778\ud574 \uc5b4\ub824\uc6c0\uc744 \uacaa\ub294\ub2e4\uba74, \ucf54\ub4dc\ub97c \uac1c\uc120\ud560 \uc5ec\uc9c0\uac00 \uc788\uc5b4 \ubd84\uc11d\ud558\uae30\uac00 \ub354 \uc26c\uc6b8 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ub9c8\ucc2c\uac00\uc9c0\ub85c \ucf54\ub4dc\ub97c \uac80\uc0ac\ud558\ub294 \ub370 \uc2dc\uac04\uc774 \ub108\ubb34 \uc624\ub798 \uac78\ub824 IntelliJ IDEA \uc18d\ub3c4\uac00 \ub290\ub824\uc9c0\ub294 \uacbd\uc6b0 \ucf54\ub529 \ubc29\uc2dd\uc744 \uc870\uc815\ud558\ub294 \uac83\uc774 \uc88b\uc2b5\ub2c8\ub2e4.<\/p>\n<ol>\n<li>\ud074\ub798\uc2a4, \uba54\uc11c\ub4dc \ubc0f \uc120\uc5b8\uc5d0 \ub300\ud55c \uc801\uc808\ud55c \uc811\uadfc \uc81c\uc5b4\uc790\ub97c \uc124\uc815\ud558\uc5ec \ubc94\uc704\ub97c \uc881\ud799\ub2c8\ub2e4.<\/li>\n<li>\ud0c0\uc785 \ucd94\ub860\uc744 \uacfc\ub3c4\ud558\uac8c \uc0ac\uc6a9\ud558\uc9c0 \ub9c8\uc138\uc694.<\/li>\n<li>\ubb35\uc2dc\uc801 \uc0ac\uc6a9\uc744 \uc81c\ud55c\ud569\ub2c8\ub2e4.<\/li>\n<li>\uac80\uc0ac \ub85c\uc9c1\uc774 \ub108\ubb34 \ub9ce\uc740 \uacbd\ub85c\ub97c \ub530\ub97c \ud544\uc694\uac00 \uc5c6\ub3c4\ub85d, \uad6c\uc131 \uc694\uc18c\uc5d0 \ub300\ud574 \uae34\ubc00\ud55c \uacb0\ud569\ubcf4\ub2e4 \ub290\uc2a8\ud55c \uacb0\ud569\uc744 \uc0ac\uc6a9\ud558\ub294 \uac83\uc774 \uc88b\uc2b5\ub2c8\ub2e4.<\/li>\n<li>\uadf8\ub9ac\uace0 \ub300\uaddc\ubaa8 \ud504\ub85c\uc81d\ud2b8\uc5d0\uc11c\ub294 \ubaa8\ub4c8\uacfc \ud558\uc704 \ubaa8\ub4c8\ub85c \ucf54\ub4dc\ub97c \ubd84\ud560\ud558\uc5ec \uac80\uc0ac \ub300\uc0c1 \ubc94\uc704\ub97c \ub2e4\uc2dc \uc81c\ud55c\ud558\ub294 \uac83\uc774 \uc88b\uc2b5\ub2c8\ub2e4.<\/li>\n<\/ol>\n<p>\ub610\ud55c <strong>Settings(\uc124\uc815) | Languages &amp; Frameworks(\uc5b8\uc5b4 \ubc0f \ud504\ub808\uc784\uc6cc\ud06c) | Scala<\/strong>\uc758 <strong>Performance(\uc131\ub2a5)<\/strong> \ud0ed\uc73c\ub85c \uc774\ub3d9\ud558\uc5ec \uc81c\uc5b4 \uae30\ub2a5\uc744 \ud655\uc778\ud558\uace0, \uc774\ub7ec\ud55c \uae30\ub2a5\uc774 \ubb38\uc81c\ub97c \ucc98\ub9ac\ud558\ub2e4\uac00 \ud504\ub85c\uc81d\ud2b8 \uc131\ub2a5\uc5d0 \uc601\ud5a5\uc744 \uc8fc\ub294\uc9c0 \uc0b4\ud3b4\ubcfc \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc608\ub97c \ub4e4\uc5b4, \ubb35\uc2dc\uc801 \ub9e4\uac1c\ubcc0\uc218\ub97c \ub9ce\uc774 \uc0ac\uc6a9\ud558\ub294 \uacbd\uc6b0 \uc774\ub97c \ud30c\uc545\ud558\ub294 \ub370 \uc2dc\uac04\uc774 \uc624\ub798 \uac78\ub9b4 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ub610\ub294 \ucf54\ub4dc \uc608\uc2dc\ub97c \uc0ac\uc6a9\ud558\ub294 \uc8fc\uc11d \ub0b4\uc5d0 \ud074\ub798\uc2a4 \ubc0f \uba54\uc11c\ub4dc\ub9c8\ub2e4 \ubb38\uc11c \ud56d\ubaa9\uc774 \uc788\ub294 \ub300\uc6a9\ub7c9 \ud30c\uc77c\uc744 \uc0ac\uc6a9\ud558\ub294 \uacbd\uc6b0, Scala \ud50c\ub7ec\uadf8\uc778\uc740 \uc774\ub97c \uc801\uc808\ud558\uac8c \uac15\uc870 \ud45c\uc2dc\ud558\ub824\uace0 \ud569\ub2c8\ub2e4. \uc774\ub7ec\ud55c \uae30\ub2a5\uacfc \uba87 \uac00\uc9c0 \ub2e4\ub978 \uae30\ub2a5\ub3c4 \ube44\ud65c\uc131\ud654\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-319820\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2023\/02\/performance7-1.png\" alt=\"\" width=\"2020\" height=\"1412\" \/><\/figure>\n<h2>\uae30\ub2a5<\/h2>\n<p>\uc9c0\uae08\uae4c\uc9c0 \uc54c\ub824 \ub4dc\ub9b0 \ubaa8\ub4e0 \ud78c\ud2b8\ub294 \ud2b9\ubcc4\ud55c \uc0ac\ub840\uc5d0\uc11c \ub3c4\uc6c0\uc774 \ub420 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc77c\ubc18\uc801\uc73c\ub85c \ucef4\ud4e8\ud130\uac00 \ucda9\ubd84\ud788 \uc88b\uc740 \uacbd\uc6b0 IntelliJ IDEA\uc758 \uc131\ub2a5\uc740 \uad1c\ucc2e\uc744 \uac83\uc785\ub2c8\ub2e4. \uc55e\uc11c \uc5b8\uae09\ud588\ub4ef\uc774 \uc77c\ubc18 \ub178\ud2b8\ubd81\uc774\uba74 \uc774\ubbf8 \ucda9\ubd84\ud788 \uad1c\ucc2e\uc2b5\ub2c8\ub2e4. \ud504\ub85c\uc81d\ud2b8\uac00 \ud2b9\ud788 \uae4c\ub2e4\ub85c\uc6b4 \uacbd\uc6b0\uc5d0\ub9cc \uc774\ub7ec\ud55c \ud78c\ud2b8\uac00 \uc720\uc6a9\ud569\ub2c8\ub2e4.<\/p>\n<p>\ud558\uc9c0\ub9cc \uc5b4\ub5a4 \uc774\uc720\ub85c\ub4e0, \uc131\ub2a5\uc774 \ub0ae\uc740 \uc624\ub798\ub41c \ucef4\ud4e8\ud130\uc5d0\uc11c IntelliJ IDEA\ub97c \uc0ac\uc6a9\ud574\uc57c \ud560 \uc218\ub3c4 \uc788\uc2b5\ub2c8\ub2e4. \uc774\ub7ec\ud55c \uacbd\uc6b0 \ud658\uacbd\uc744 \uc57d\uac04 \ub354 \uac1c\uc120\ud558\uae30 \uc704\ud574 \uba87 \uac00\uc9c0\ub97c \ub354 \uc2dc\ub3c4\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. <strong>Settings(\uc124\uc815) | Appearance &amp; Behavior(\ubaa8\uc591 \ubc0f \ub3d9\uc791) | Appearance(\ubaa8\uc591)<\/strong>\ub85c \uc774\ub3d9\ud558\uc5ec, \uc548\ud2f0 \uc5d8\ub9ac\uc5b4\uc2f1 \ubc0f \ubd80\ub4dc\ub7ec\uc6b4 \uc2a4\ud06c\ub864\uc744 \ube44\ud65c\uc131\ud654\ud569\ub2c8\ub2e4. \uae00\uaf34\uc774 \ub35c \ub9e4\ub044\ub7fd\uac8c \ubcf4\uc774\uace0 \ud30c\uc77c \ub0b4\uc6a9\uc744 \uc2a4\ud06c\ub864\ud560 \ub54c \ub35c \ub9e4\ub044\ub7fd\uac8c \ub290\uaef4\uc9c0\uc9c0\ub9cc, \uc774 \ub450 \uae30\ub2a5 \ubaa8\ub450 \uc131\ub2a5\uc5d0 \uc57d\uac04\uc758 \uc601\ud5a5\uc744 \ubbf8\uce69\ub2c8\ub2e4. \uadf8\ub798\ub3c4 \ucda9\ubd84\ud558\uc9c0 \uc54a\uc73c\uba74 <strong>File(\ud30c\uc77c)<\/strong> \uba54\ub274\ub97c \uc5f4\uace0 <strong>Power Save Mode(\uc808\uc804 \ubaa8\ub4dc)<\/strong>\ub97c \ud65c\uc131\ud654\ud569\ub2c8\ub2e4. \uc774\ub807\uac8c \ud558\uba74 IntelliJ IDEA\uc758 \ub9ce\uc740 \uae30\ub2a5\uc774 \ud574\uc81c\ub418\ubbc0\ub85c \uc544\ubb34\uac83\ub3c4 \ub3c4\uc6c0\uc774 \ub418\uc9c0 \uc54a\ub294 \uacbd\uc6b0\uc5d0\ub9cc \uc774\ub807\uac8c \ud558\ub294 \uac83\uc774 \uc88b\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\uc774\uac83\uc774 \ub108\ubb34 \uadf9\ub2e8\uc801\uc774\ub77c\uba74 JetBrains Marketplace\uc5d0\uc11c \uc124\uce58\ud560 \uc218 \uc788\ub294 <a href=\"https:\/\/plugins.jetbrains.com\/plugin\/11941-automatic-power-saver\" target=\"_blank\" rel=\"noopener\">Automatic Power Saver \ud50c\ub7ec\uadf8\uc778<\/a>\uc744 \uc0ac\uc6a9\ud574 \ubcfc \uc218 \uc788\uc2b5\ub2c8\ub2e4. <strong>\uc808\uc804 \ubaa8\ub4dc<\/strong>\uac00 \uc790\ub3d9\uc73c\ub85c \uc124\uc815\/\ud574\uc81c\ub418\ub294 \uc2dc\uae30\ub97c \uc81c\uc5b4\ud560 \uc218 \uc788\uc73c\ubbc0\ub85c, \ud544\uc694\ud560 \ub54c IntelliJ IDEA\uc758 \ub354 \ubcf5\uc7a1\ud55c \uae30\ub2a5\uc744 \uacc4\uc18d \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\ub610 \ub2e4\ub978 \uc635\uc158\uc740 \ud0c0\uc785 \uc778\uc2dd \uc5b4\ub178\ud14c\uc774\ud130\ub97c \ube44\ud65c\uc131\ud654\ud558\ub294 \uac83\uc785\ub2c8\ub2e4. IntelliJ IDEA \uba54\uc778 \ucc3d\uc758 \uc624\ub978\ucabd \ud558\ub2e8 \ubaa8\uc11c\ub9ac\uc5d0 \uc788\ub294 \uc791\uc740 &#8216;[T]&#8217; \uae30\ud638\ub97c \ud074\ub9ad\ud558\uba74 \ub429\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-319214\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2023\/01\/Screenshot-2023-01-31-at-11.35.16.png\" alt=\"\" width=\"896\" height=\"184\" \/><\/figure>\n<p>Scala \ud50c\ub7ec\uadf8\uc778\uc774 \ucf54\ub4dc\uc758 \ud0c0\uc785\uc744 \ud655\uc778\ud558\uc9c0 \uc54a\uac8c \ud569\ub2c8\ub2e4. \ubaa8\ub4e0 \uc624\ub958 \uac80\uc0ac\ub97c \ube44\ud65c\uc131\ud654\ud558\ub294 \uac83\uc774 \uc544\ub2c8\ub77c, \uc608\ub97c \ub4e4\uc5b4, <code>Int<\/code>\ub97c \uc218\ub77d\ud558\ub294 \uba54\uc11c\ub4dc\uc5d0 <code>String<\/code>\uc744 \uc778\uc218\ub85c \uc804\ub2ec\ud558\ub824\uace0 \ud560 \ub54c \ud0c0\uc785\uc774 \ub9ce\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc624\ub958\uac00 \ubc1c\uc0dd\ud55c \uac80\uc0ac\ub9cc \ube44\ud65c\uc131\ud654\ud569\ub2c8\ub2e4.<\/p>\n<h2>\uc774\uc288\uc5d0 \ub300\ud574 \uc54c\ub824\uc8fc\uc138\uc694<\/h2>\n<p>\ub9c8\uc9c0\ub9c9\uc73c\ub85c, \ud2b9\ud788 \uc7ac\ud604 \uac00\ub2a5\ud55c \ud2b9\uc815 \uc0c1\ud669\uc5d0\uc11c \uc131\ub2a5 \uc800\ud558\uac00 \ubc1c\uc0dd\ud558\ub294 \uacbd\uc6b0, \uc774\ub294 Scala \ud50c\ub7ec\uadf8\uc778 \ub0b4\uc758 \ubb38\uc81c\uc77c \uc218 \uc788\uc73c\ubbc0\ub85c, \uc800\ud76c\uc5d0\uac8c \uc54c\ub824\uc8fc\uc138\uc694. \ub354 \uc88b\uc740 \ubc29\ubc95\uc740 <a href=\"https:\/\/plugins.jetbrains.com\/plugin\/7819-performance-testing\" target=\"_blank\" rel=\"noopener\">Performance Testing \ud50c\ub7ec\uadf8\uc778<\/a>\uc744 \uc124\uce58\ud558\uace0 \uc131\ub2a5 \uc2a4\ub0c5\uc0f7\uc744 \ucea1\ucc98\ud558\uace0 <a href=\"https:\/\/youtrack.jetbrains.com\/issues\/SCL\" target=\"_blank\" rel=\"noopener\">JetBrains YouTrack \uc2dc\uc2a4\ud15c<\/a>\uc5d0\uc11c \ud2f0\ucf13\uc744 \uc0dd\uc131\ud55c \ub2e4\uc74c \uc2a4\ub0c5\uc0f7\uc744 \uc5c5\ub85c\ub4dc\ud558\ub294 \uac83\uc785\ub2c8\ub2e4. \uc0ac\uc6a9\uc790\uc758 \uc758\uacac\uc740 \ubb38\uc81c\uc758 \uc6d0\uc778\uc744 \ud30c\uc545\ud558\uace0 \ud574\uacb0\ud558\uc5ec Scala \ud50c\ub7ec\uadf8\uc778\uc744 \ub354 \ud6a8\uc728\uc801\uc774\uace0 \uc0ac\uc6a9\ud558\uae30 \uc27d\uac8c \ub9cc\ub4dc\ub294 \ub370 \ub3c4\uc6c0\uc774 \ub429\ub2c8\ub2e4.<\/p>\n<p><em>\uac8c\uc2dc\ubb3c \uc6d0\ubb38 \uc791\uc131\uc790<\/em><\/p>\n\n    <div class=\"about-author \">\n        <div class=\"about-author__box\">\n            <div class=\"row\">\n                <div class=\"about-author__box-img\">\n                    <img decoding=\"async\" src=\"https:\/\/secure.gravatar.com\/avatar\/?s=200&#038;r=g\" width=\"200\" height=\"200\" alt=\"\" loading=\"lazy\"  class=\"avatar avatar-200 wp-user-avatar wp-user-avatar-200 photo avatar-default\">\n                <\/div>\n                <div class=\"about-author__box-text\">\n                                                        <\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n","protected":false},"author":964,"featured_media":319334,"comment_status":"closed","ping_status":"closed","template":"","categories":[8058],"tags":[40,225],"cross-post-tag":[],"acf":[],"_links":{"self":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/scala\/343042"}],"collection":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/scala"}],"about":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/types\/scala"}],"author":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/users\/964"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/comments?post=343042"}],"version-history":[{"count":9,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/scala\/343042\/revisions"}],"predecessor-version":[{"id":343062,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/scala\/343042\/revisions\/343062"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/media\/319334"}],"wp:attachment":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/media?parent=343042"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/categories?post=343042"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/tags?post=343042"},{"taxonomy":"cross-post-tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/cross-post-tag?post=343042"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}