{"id":552,"date":"2020-06-15T09:00:45","date_gmt":"2020-06-15T00:00:45","guid":{"rendered":"http:\/\/mobilelab.khu.ac.kr\/?p=552"},"modified":"2020-04-05T19:00:45","modified_gmt":"2020-04-05T10:00:45","slug":"be-dart-programmer-22","status":"publish","type":"post","link":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/2020\/06\/15\/be-dart-programmer-22\/","title":{"rendered":"Dart Programmer \ub418\uae30 [22]"},"content":{"rendered":"\n<h4><strong>&lt; <\/strong>Dart \uae30\ucd08\ubb38\ubc95 &#8211; <strong>Making Class &#8211; Part.3 &gt;<\/strong><\/h4>\n\n\n\n<p>\ud074\ub798\uc2a4\uc5d0 \ub300\ud55c \ub9c8\uc9c0\ub9c9 \uae00\ub85c\uc368, \uc18c\uc18c\ud558\uc9c0\ub9cc \uc54c\uc544\ub450\uba74 \uc694\uae34\ud55c \ud074\ub798\uadf8 \uad00\ub828 \uae30\ub2a5\ub4e4(Auxiliary Useful Features)\uc5d0 \ub300\ud574\uc11c \uc0b4\ud3b4\ubcf4\ub3c4\ub85d \ud558\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<h4>?. Operator<\/h4>\n\n\n\n<p>\ub9cc\uc57d p?.y = 4;\uc640 \uac19\uc740 \ucf54\ub4dc\uac00 \uc788\ub2e4\uba74, \uc774\ub294 \ud074\ub798\uc2a4 p\uac00 null\uc774 \uc544\ub2cc \uacbd\uc6b0\uc5d0 \ub300\ud574\uc11c\ub9cc \uba64\ubc84 \ubcc0\uc218 y\uc5d0 4 \uac12\uc744 \uc800\uc7a5\ud558\ub294 \ub3d9\uc791\uc744 \ud55c\ub2e4\ub294 \uc758\ubbf8\uc785\ub2c8\ub2e4. \uc774\ub807\uac8c \ud568\uc73c\ub85c\uc368, null \uc0c1\ud0dc\uc778 \ud074\ub798\uc2a4\uc5d0 \uc2e4\uc218\ub85c \uc811\uadfc\ud558\ub294 \uc5d0\ub7ec\ub97c \uc904\uc5ec \uc90d\ub2c8\ub2e4.<\/p>\n\n\n\n<h4>Initialization List<\/h4>\n\n\n\n<p>Initialization List\ub294 constructor\uc758 \ud45c\ud604\uc744 \uc880 \ub354 \uc27d\uac8c \ud569\ub2c8\ub2e4. \uc55e\uc5d0\uc11c \ub9cc\ub4e4\uc5c8\ub358 Point \ud074\ub798\uc2a4\uc758 constructor\ub97c \ub2e4\uc2dc \ubcf8\ub2e4\uba74, \ub9e4\uc6b0 \ub2e8\uc21c\ud558\uac8c x, y \uc88c\ud45c \uac12\uc744 \ubc1b\uc544\uc11c \uba64\ubc84 \ubcc0\uc218\uc5d0 \uac01\uac01 \uc800\uc7a5 \ud588\uc2b5\ub2c8\ub2e4. \uc774\ub7f0 \uacbd\uc6b0 \uad73\uc774 \uba54\uc18c\ub4dc\uc758 \ubcf8\ubb38\uc744 \ucc44\uc6b0\uc9c0 \uc54a\uace0, \ub2e4\uc74c\uacfc \uac19\uc740 \ud615\ud0dc\ub85c \ucd08\uae30\ud654\uac00 \uac00\ub2a5\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<pre>Point([var numX = 0, var numY = 0]) \n  : this.x = numX,\n    this.y = numY {\n}\n<\/pre>\n\n\n\n<p>\uc774\ub807\uac8c \uba64\ubc84 \ubcc0\uc218\uc5d0 \ubc14\ub85c \ub300\uc751\uc774 \ub418\ub294 \uc785\ub825 \ud30c\ub77c\uba54\ud0c0\ub9cc \uc804\ub2ec \ubc1b\ub294 \ub2e4\uba74, \ub354 \uac04\ub2e8\ud55c \ud615\ud0dc\ub85c \ub2e4\uc74c\uacfc \uac19\uc774 \uc785\ub825 \ud30c\ub77c\uba54\ud0c0\ub97c \ubc14\ub85c \uba64\ubc84 \ubcc0\uc218\uc5d0 \ub123\ub294 \ubc29\ubc95\ub3c4 \uac00\ub2a5\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<pre>Point([this.x = 0, this.y = 0]) {\n}\n<\/pre>\n\n\n\n<p>\uccab\ubc88\uc9f8 \uc785\ub825 \ud30c\ub77c\uba54\ud0c0\ub294 \ubc14\ub85c \uac1d\uccb4\uc758 x \uac12\uc73c\ub85c \ud560\ub2f9\ub418\uace0, \ub450\ubc88\uc9f8 \uc785\ub825 \ud30c\ub77c\uba54\ud0c0\ub294 y \uac12\uc73c\ub85c \ud560\ub2f9\ub429\ub2c8\ub2e4. \ub9cc\uc57d, \uac12\uc744 \uc8fc\uc9c0 \uc54a\uc73c\uba74 default \uac12\uc73c\ub85c \uac01\uac01 0\uc73c\ub85c \uc124\uc815\ud558\ub294 \uac83\uc740 \ub3d9\uc77c \ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<h4>Factory Constructor<\/h4>\n\n\n\n<p>Factory constructor\ub294 \uc55e\uc11c\uc5d0\uc11c \uc774\uc57c\uae30\ud55c \uc77c\ubc18\uc801\uc778 costructor\uac00 \ub9e4\ubc88 \uc0c8\ub85c\uc6b4 \uac1d\uccb4\ub97c \ub9cc\ub4dc\ub294 \uac83\uacfc \ub2e4\ub974\uac8c, \uc870\uac74\uc5d0 \ub9de\ucdb0\uc11c \uc774\ubbf8 \ub9cc\ub4e4\uc5b4\uc9c4 \uac1d\uccb4\ub97c \uc0ac\uc6a9\ud558\ub294 \ub4f1\uc758 \ub2e4\ub978 \ub3d9\uc791\uc744 \ud560 \uc218 \uc788\ub294 \uacbd\uc6b0\ub97c \uc758\ubbf8\ud569\ub2c8\ub2e4. \uc608\ub97c \ub4e4\uc5b4 \uacf5\uc2dd \ud648\ud398\uc774\uc9c0\uc758 \ub2e4\uc74c \uc608\uc81c\ub97c \uc0b4\ud3b4\ubd05\ub2c8\ub2e4.<\/p>\n\n\n\n<pre>\nclass Logger {\n  final String name;\n  bool mute = false;\n\n  \/\/ _cache is library-private, thanks to\n  \/\/ the _ in front of its name.\n  static final Map<String, Logger> _cache = <String, Logger>{};\n\n  factory Logger(String name) {\n    return _cache.putIfAbsent(name, () => Logger._internal(name));\n  }\n\n  Logger._internal(this.name);\n\n  void log(String msg) {\n    if (!mute) print(msg);\n  }\n\n  static get cacheLength => _cache.length;\n}\n<\/pre>\n\n\n\n<p>\uac00\uc7a5 \uba3c\uc800 \uc8fc\uc758 \uae4a\uac8c \ubcfc \ubd80\ubd84\uc740 _cache \ub77c\ub294 Map \ud0c0\uc785\uc758 \uba64\ubc84 \ubcc0\uc218\ub85c\uc11c static \ud0c0\uc785\uc73c\ub85c \ub418\uc5b4 \uc788\uae30\uc5d0, \ud074\ub798\uc2a4\uc5d0\uc11c \ub9cc\ub4e4\uc5b4\uc9c0\ub294 \uac1d\uccb4\uc640 \uc0c1\uad00\uc5c6\uc774 \uc874\uc7ac\ud569\ub2c8\ub2e4. \uadf8\ub9ac\uace0 \uc77c\ub2e8 \ube44\uc5b4\uc788\ub294 Map\uc73c\ub85c \ub9cc\ub4e4\uc5b4 \uc9c0\uba70, \ub0b4\ubd80\uc801\uc73c\ub85c \ubb38\uc790\uc5f4\uc758 \uc774\ub984\uacfc \uc2a4\uc2a4\ub85c\uc758 \uac1d\uccb4\ub97c \uc800\uc7a5\ud558\ub3c4\ub85d \ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4. \uc774\ub85c\uc11c, Logger\ub294 \ub9e4\ubc88 \uac1d\uccb4\uc790 \ub9cc\ub4e4\uc5b4\uc9c0\uc9c0 \uc54a\uac8c \ud558\uace0, \ub9cc\ub4e4\uc5b4\uc9c0\ub294 \uac1d\uccb4\ub97c \ub0b4\ubd80\uc801\uc73c\ub85c \uc800\uc7a5\ud558\ub418, static\uc73c\ub85c \ucc98\ub9ac \ud558\uc5ec \uad00\ub9ac\ud558\uae30\uc5d0, \ud544\uc694\ud560\ub54c \uc774 static\ud55c Map\uc548\uc758 \uac1d\uccb4\ub4e4\ub85c constructor\uc758 \uacb0\uacfc\ub97c \uc81c\uc5b4\ud558\uaca0\ub2e4\ub294 \uc758\uc9c0\ub97c \ubc1d\ud78c \uc148\uc785\ub2c8\ub2e4. <\/p>\n\n\n\n<p>\ub2e4\uc74c\uc73c\ub85c \uc911\uc694\ud55c \uad6c\ubb38\uc740 \uc2e4\uc81c constructor\uc778 Logger(String name) \uc785\ub2c8\ub2e4. \ub0b4\ubd80\ub97c \ubcf4\uba74, putIfAbsent \uad6c\ubb38\uc744 \uc0ac\uc6a9\ud558\uc5ec, \ub9cc\uc57d\uc758 \uacbd\uc6b0 _cache\uac00 \ube44\uc5b4 \uc788\uc744\ub54c\uc5d0\ub9cc, constroctor\ub85c \ubc1b\uc740 \uc774\ub984\uacfc Logger \uac1d\uccb4\ub97c \uc0c8\ub86d\uac8c Map\uc5d0 \uc800\uc7a5\ud558\ub294 \uac83\uc744 \ubcfc \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ub530\ub77c\uc11c \ud55c\ubc88\ub9cc \uac1d\uccb4\uac00 \ub9cc\ub4e4\uc5b4 \uc9c0\ub294 \uac83\uc744 \uc720\ucd94\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc774\uc5d0 \ub300\ud55c \uc2e4\ud589 \uad6c\ubb38\uc744 \ub2e4\uc74c\uacfc \uac19\uc774 \ud574\uc11c \uc2e4\uc81c \uac1d\uccb4\ub97c \ub9cc\ub4e4\uc5b4 \ubd05\ub2c8\ub2e4.<\/p>\n\n\n\n<pre>var logger1 = Logger('UI');\nvar logger2 = Logger('UI');\nprint(\"[04]\\$ ${Logger.cacheLength}\");\nlogger1.log('[05]\\$ [object:${logger1.hashCode}] Button clicked');\nlogger2.log('[06]\\$ [object:${logger2.hashCode}] Button clicked');\n<\/pre>\n\n\n\n<p>\ubd84\uba85 Logger constructor\ub97c \ub450\ubc88 \ud638\ucd9c\ud588\uace0, logger1\uacfc logger2\uc5d0 \uc800\uc7a5\ud558\ub294 \uacfc\uc815\uc744 \uac70\ucce4\uc2b5\ub2c8\ub2e4. \ud558\uc9c0\ub9cc, Logger \ud074\ub798\uc2a4\uc758 static Getter\uc778 cacheLength\ub97c \ud638\ucd9c\ud574\uc11c, _cache\uc5d0 \uc800\uc7a5\ub41c \uac1d\uccb4\uc758 \uc218\ub97c \ud655\uc778\ud558\uba74, 1\ub85c \ub098\uc624\ub294 \uac83\uc744 \ubcfc \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uac1d\uccb4\ub294 \ud558\ub098\ub9cc \ub9cc\ub4e0 \uac83\uc785\ub2c8\ub2e4. \uc774\ub7ec\uc9c0\ub294 log \ubb38\uc7a5\uc5d0\uc11c \uac1d\uccb4\uc758 \uc2dd\ubcc4\uc790\ub97c \ubcf4\uba74 \ubaa8\ub450 \ub3d9\uc77c\ud55c \uac12\uc785\ub2c8\ub2e4. \uc774\ub7f0 \uc2dd\uc73c\ub85c Dart \uc5b8\uc5b4\uc5d0\uc11c\ub294 factory constructor\ub97c \uc0ac\uc6a9\ud558\uc5ec, \ud074\ub798\uc2a4\uc5d0\uc11c \ub9cc\ub4e4\uc5b4 \uc9c0\ub294 \uac1c\uccb4\ub4e4\uc758 \uc81c\uc5b4\/\uad00\ub9ac\ud558\ub294 \uae30\ub2a5\uc744 \uc81c\uacf5\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. <\/p>\n\n\n\n<h4>Enumerated Types<\/h4>\n\n\n\n<p>Enumerated types\ub294 enums\ub77c\uace0\ub3c4 \ubd88\ub9ac\uc6b0\uba70, <em>enum<\/em> \ubb38\ubc95\uc73c\ub85c \uad6c\ud604\ud569\ub2c8\ub2e4. \ub2e8\uc5b4\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc21c\uc11c\ub97c \ub098\ud0c0\ub0b4\uace0 \uc2f6\uc744\ub54c \uc0ac\uc6a9\ud558\uac70\ub098, \uc81c\ud55c\ub41c \uac12\uc744 \uac00\uc9c0\ub294 \ubb38\uc81c\ub97c \uc880 \ub354 \uc6a9\uc774\ud558\uac8c \uac1c\ubc1c\ud558\ub3c4\ub85d \ud558\ub294 \ubb38\ubc95\uc785\ub2c8\ub2e4. \uc608\ub97c \ub4e4\uc5b4, enum Color { red, green, blue } \ub77c\uace0 \ud558\uba74, red\ub294 0, green\uc740 1, blue\ub294 2 \uac12\uc744 \uac16\uac8c \ub429\ub2c8\ub2e4. \ub530\ub77c\uc11c \uc138\uac00\uc9c0 \uac12\ub9cc\uc744 \uac00\uc9c0\ub294 \ubb38\uc81c\uc5d0 \uc0ac\uc6a9\ud558\uac8c \ub429\ub2c8\ub2e4. \uc608\ub97c \ub4e4\uc5b4 var aColor = Color.blue; \ucc98\ub7fc\ud558\uc5ec, aColor \ubcc0\uc218\uac00 Color\uac00 \uac00\uc9c4 \uc138\uac00\uc9c0 \uac12 \uc678\uc5d0 \uac12\uc744 \uac16\uac8c \ud568\uc73c\ub85c \ubc1c\uc0dd \uac00\ub2a5\ud55c \uc5d0\ub7ec\ub97c \ubc29\uc9c0\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<h4>Sample Program<\/h4>\n\n\n\n<p>\uc774\ubc88 \uae00\uc5d0\uc11c \ub2e4\ub8ec \ubb38\ubc95\ub4e4\uc744 \uc801\uc6a9\ud55c \ud558\ub098\uc758 \uc0d8\ud50c \ud504\ub85c\uadf8\ub7a8\uc744 darttutorial-22-01.dart \ud504\ub85c\uadf8\ub7a8\uc73c\ub85c \uad6c\ud604\ud558\uc600\uc2b5\ub2c8\ub2e4. \ud55c \uc904 \ud55c \uc904 \uc77d\uc5b4 \uac00\uba74\uc11c \uc774\ud574\ub97c \ud574\ubcf4\uae30 \ubc14\ub78d\ub2c8\ub2e4.<\/p>\n\n\n\n<pre>\n\/\/ darttutorial-22-01.dart \n\/\/ Reference: https:\/\/dart.dev\/guides\/language\/language-tour#enumerated-types\n\nclass Point {\n  \/\/ Instance Variables\n  var x;\n  var y;\n\n  \/\/ Constructor with optional and default parameters\n  Point([this.x = 0, this.y = 0]) {\n  }\n}\n\nclass Logger {\n  final String name;\n  bool mute = false;\n\n  \/\/ _cache is library-private, thanks to\n  \/\/ the _ in front of its name.\n  static final Map<String, Logger> _cache = <String, Logger>{};\n\n  factory Logger(String name) {\n    return _cache.putIfAbsent(name, () => Logger._internal(name));\n  }\n\n  Logger._internal(this.name);\n\n  void log(String msg) {\n    if (!mute) print(msg);\n  }\n\n  static get cacheLength => _cache.length;\n}\n\n\/\/ Enumerated Types\nenum Color { red, green, blue }\n\nvoid main() {\n  \/\/ ?. Operator\n  var p0;\n  p0?.x = 0;\n  p0?.y = 0;\n  print(\"[01]\\$ $p0\");\n\n  \/\/ Initialization List\n  var p1 = Point(3,4);\n  var p2 = Point();\n  print(\"[02]\\$ (${p1.x},${p1.y})\");\n  print(\"[03]\\$ (${p2.x},${p2.y})\");\n\n  \/\/ Factory Constructor \n  var logger1 = Logger('UI');\n  var logger2 = Logger('UI');\n  print(\"[04]\\$ ${Logger.cacheLength}\");\n  logger1.log('[05]\\$ [object:${logger1.hashCode}] Button clicked');\n  logger2.log('[06]\\$ [object:${logger2.hashCode}] Button clicked');\n\n  \/\/ Enumerated Types\n  print(\"[07]\\$ ${Color.red.index} ${Color.green.index} ${Color.blue.index}\");\n  var aColor = Color.blue;\n  switch (aColor) {\n   case Color.red:\n      print('[08]\\$ Red as roses!');\n      break;\n   case Color.green:\n      print('[08]\\$ Green as grass!');\n      break;\n   default: \/\/ Without this, you see a WARNING.\n      print('[08]\\$ ${aColor}'); \/\/ 'Color.blue'\n  }\n}\n<\/pre>\n\n\n\n<p>darttutorial-22-01.dart \ud504\ub85c\uadf8\ub7a8\uc758 \uc218\ud589 \uacb0\uacfc\ub3c4 \ub2e4\uc74c\uacfc \uac19\uc774 \ud3ec\ud568\ud558\uc600\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<pre>[01]$ null\n[02]$ (3,4)\n[03]$ (0,0)\n[04]$ 1\n[05]$ [object:271182360] Button clicked\n[06]$ [object:271182360] Button clicked\n[07]$ 0 1 2\n[08]$ Color.blue\n<\/pre>\n\n\n\n<h4>\ub9c8\ubb34\ub9ac<\/h4>\n\n\n\n<p>\uc138 \ubc88\uc5d0 \uac78\uccd0\uc11c Dart \uc5b8\uc5b4\uc758 \ud074\ub798\uc2a4\uc5d0 \ub300\ud574\uc11c \uc54c\uc544 \ubcf4\uc558\uc2b5\ub2c8\ub2e4. Dart \uc5b8\uc5b4\uac00 \uac1d\uccb4\uc9c0\ud5a5 \ud504\ub85c\uadf8\ub798\ubc0d \uc5b8\uc5b4\uc778 \ub9cc\ud07c \ub2e4\uc591\ud55c \uac1d\uccb4\uc9c0\ud5a5 \uae30\ubc95\ub4e4\uc744 Class\ub97c \ud1b5\ud574\uc11c \uc81c\uacf5\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. \ubcf8 \uae00\uc5d0\uc11c\ub294 \uc18c\uc18c\ud558\uc9c0\ub9cc \ub098\ub984 \uc720\uc6a9\ud55c \uc774\uc288\ub4e4\uc744 \ub9c8\uc9c0\ub9c9\uc73c\ub85c \ub2e4\ub8e8\uc5b4 \ubcf4\uc558\uc2b5\ub2c8\ub2e4. \ud074\ub798\uc2a4\ub97c \uc124\uacc4\ud558\uace0 \uac1c\ubc1c\ud558\ub294 \uc791\uc5c5\uc740 \uba85\ud655\ud558\uac8c \uc815\ud574\uc9c4 \uaddc\uce59\uc774 \uc5c6\uc2b5\ub2c8\ub2e4. \uc5ec\ub7ec \ud074\ub798\uc2a4\ub97c \ub9cc\ub4e4\uc5b4 \ubcf4\uace0, \uc88b\uc740 reference \ub4e4\uc744 \uacf5\ubd80\ud558\uc5ec \ubcf4\uae30 \ubc14\ub78d\ub2c8\ub2e4.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"alignright is-resized\"><img decoding=\"async\" loading=\"lazy\" src=\"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-content\/uploads\/2020\/01\/b05-1.jpg\" alt=\"\" class=\"wp-image-267\" width=\"134\" height=\"48\"\/><\/figure><\/div>\n\n\n\n<p><strong>Creative Commons License<\/strong> (<strong>CC BY-NC-ND<\/strong>)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>&lt; Dart \uae30\ucd08\ubb38\ubc95 &#8211; Making Class &#8211; Part.3 &gt; \ud074\ub798\uc2a4\uc5d0 \ub300\ud55c \ub9c8\uc9c0\ub9c9 \uae00\ub85c\uc368, \uc18c\uc18c\ud558\uc9c0\ub9cc \uc54c\uc544\ub450\uba74 \uc694\uae34\ud55c \ud074\ub798\uadf8 \uad00\ub828 \uae30\ub2a5\ub4e4(Auxiliary Useful Features)\uc5d0 \ub300\ud574\uc11c \uc0b4\ud3b4\ubcf4\ub3c4\ub85d \ud558\uaca0\uc2b5\ub2c8\ub2e4. ?. Operator \ub9cc\uc57d p?.y = 4;\uc640 &#8230;<\/p>\n","protected":false},"author":1,"featured_media":969,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0},"categories":[3],"tags":[],"aioseo_notices":[],"_links":{"self":[{"href":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-json\/wp\/v2\/posts\/552"}],"collection":[{"href":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-json\/wp\/v2\/comments?post=552"}],"version-history":[{"count":5,"href":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-json\/wp\/v2\/posts\/552\/revisions"}],"predecessor-version":[{"id":970,"href":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-json\/wp\/v2\/posts\/552\/revisions\/970"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-json\/wp\/v2\/media\/969"}],"wp:attachment":[{"href":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-json\/wp\/v2\/media?parent=552"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-json\/wp\/v2\/categories?post=552"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-json\/wp\/v2\/tags?post=552"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}