{"id":3873,"date":"2023-07-26T18:12:19","date_gmt":"2023-07-26T09:12:19","guid":{"rendered":"https:\/\/dennie.tokyo\/it\/?p=3873"},"modified":"2023-08-25T19:11:01","modified_gmt":"2023-08-25T10:11:01","slug":"%e3%80%90go%e3%80%91%e3%82%a4%e3%83%b3%e3%82%bf%e3%83%bc%e3%83%95%e3%82%a7%e3%83%bc%e3%82%b9%e3%81%ae%e5%88%a9%e7%94%a8-%e3%81%9d%e3%81%ae2","status":"publish","type":"post","link":"https:\/\/dennie.tokyo\/it\/?p=3873","title":{"rendered":"\u3010Go\u3011\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9\u306e\u53d7\u3051\u53d6\u308a"},"content":{"rendered":"\n<p>\u524d\u56de\u306f\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9\u306e\u30e1\u30bd\u30c3\u30c9\u306e\u78ba\u7d04\u3092\u5b9f\u88c5\u3057\u3066\u307f\u307e\u3057\u305f\u3002<\/p>\n\n\n\n<!--more-->\n\n\n\n<div class=\"title_box\"><span class=\"box-title\">\u524d\u56de<\/span>\n<p><\/p>\n<p><a href=\"https:\/\/dennie.tokyo\/it\/?p=3871\" rel=\"noopener\" target=\"_blank\">\u3010Go\u3011\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9\u306e\u30e1\u30bd\u30c3\u30c9\u306e\u78ba\u7d04<\/a><\/p>\n<\/div>\n\n\n\n<p>Go\u306b\u306f\u69cb\u9020\u4f53\u3092\u751f\u6210\u3057\u305d\u306e\u69cb\u9020\u4f53\u3092\u8fd4\u5374\u3057\u3001\u53d7\u3051\u53d6\u308a\u5074\u306f\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9\u3067\u53d7\u3051\u53d6\u308b\u3068\u8a00\u3046\u65b9\u6cd5\u304c\u3088\u304f\u4f7f\u308f\u308c\u308b\u3088\u3046\u3067\u3059\u3002<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">\u524d\u56de\u306e\u304a\u3055\u3089\u3044<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">\u69cb\u9020\u4f53\u5b9a\u7fa9<\/h2>\n\n\n\n<p>\u524d\u56de\u306e\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9\u306e\u5229\u7528\u3067\u306f\u3001\u540d\u524d(getName())\u3092\u5b9f\u88c5\u3057\u305f\u69cb\u9020\u4f53\u3067\u3042\u308c\u3070\u3069\u3093\u306a\u69cb\u9020\u4f53\u3067\u3082\u4f7f\u3048\u308b\u3068\u3044\u3046\u4e8b\u304c\u5206\u304b\u308a\u307e\u3057\u305f\u3002\u305d\u308c\u3067\u306f\u5b9f\u969b\u306b\u4f7f\u7528\u3057\u3066\u307f\u307e\u3057\u3087\u3046\u3002<\/p>\n\n\n\n<p>\u4eca\u56de\u306f\u4f8b\u3068\u3057\u3066\u4eba\u69cb\u9020\u4f53(parson)\u3092 parson.go \u3078\u3001\u732b\u69cb\u9020\u4f53(cat)\u3092 cat.go \u3078\u8a18\u8f09\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-plain\" data-file=\"parson.go\"><code>package main\n\n\/\/ \u4eba\u306e\u69cb\u9020\u4f53\u306e\u5b9a\u7fa9\ntype parson struct {\n\tname string\n\tage  int\n}\n\n\/\/ \u4eba\u306e\u30e1\u30bd\u30c3\u30c8\u5b9a\u7fa9\nfunc (p parson) getName() string {\n\treturn p.name\n}\n\nfunc (p parson) getAge() int {\n\treturn p.age\n}\n<\/code><\/pre><\/div>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-plain\" data-file=\"cat.go\"><code>package main\n\n\/\/ \u732b\u306e\u69cb\u9020\u4f53\u306e\u5b9a\u7fa9\ntype cat struct {\n\tname string\n}\n\n\/\/ \u732b\u306e\u30e1\u30bd\u30c3\u30c8\u5b9a\u7fa9\nfunc (c cat) getName() string {\n\treturn c.name\n}\n<\/code><\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">\u4f7f\u7528<\/h2>\n\n\n\n<p>\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9\u3092\u5b9a\u7fa9\u3057\u3066\u3001\u5148\u307b\u3069\u5b9a\u7fa9\u3057\u305f\u69cb\u9020\u4f53\u3092\u4f7f\u7528\u3057\u3066\u307f\u307e\u3059\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-plain\"><code>package main\n\nimport (\n\t&quot;fmt&quot;\n)\n\n\/\/ \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9\u306e\u5b9a\u7fa9\ntype myInterface interface {\n\n\t\/\/ \u5fc5\u8981\u306a\u30e1\u30bd\u30c3\u30c8\u3092\u8a18\u8f09\u3059\u308b\n\tgetName() string\n}\n\nfunc main() {\n\n\t\/\/ \u7530\u4e2d\u3055\u3093\u306e\u540d\u524d\u3092\u8868\u793a\u3059\u308b\n\tvar p parson\n\tp.name = &quot;tanaka&quot;\n\tshowName(p) \/\/ tanaka \u304c\u8868\u793a\u3055\u308c\u308b\n\n\t\/\/ \u732b\u306e\u540d\u524d\u3092\u8868\u793a\u3059\u308b\n\tvar c cat\n\tc.name = &quot;cat&quot;\n\tshowName(c) \/\/ cat \u304c\u8868\u793a\u3055\u308c\u308b\n}\n\n\/\/ \u540d\u524d\u3092\u8868\u793a\u3059\u308b\u95a2\u6570\nfunc showName(m myInterface) {\n\tfmt.Println(m.getName())\n}\n<\/code><\/pre><\/div>\n\n\n\n<h1 class=\"wp-block-heading\">\u5177\u4f53\u7684\u306a\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u53d7\u3051\u53d6\u308a<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">\u30d5\u30a1\u30af\u30c8\u30ea\u30d1\u30bf\u30fc\u30f3<\/h2>\n\n\n\n<p>\u305d\u308c\u3067\u306f\u3001<strong>\u69cb\u9020\u4f53\u3092\u751f\u6210\u3057\u305d\u306e\u69cb\u9020\u4f53\u3092\u8fd4\u5374\u3057\u3001\u53d7\u3051\u53d6\u308a\u5074\u306f\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9\u3067\u53d7\u3051\u53d6\u308b<\/strong> \u3068\u8a00\u3046\u4e8b\u3092\u5b9f\u8df5\u3057\u3066\u307f\u307e\u3057\u3087\u3046\u3002<br>\u69cb\u9020\u4f53\u3092\u53d7\u3051\u53d6\u308b\u3088\u3046\u306a\u30d5\u30a1\u30af\u30c8\u30ea\u30e1\u30bd\u30c3\u30c8\u3092\u65b0\u305f\u306b\u5b9a\u7fa9\u3057\u307e\u3059\u3002<br>parson.go \u3078\u69cb\u9020\u4f53\u3092\u8fd4\u5374\u3059\u308b\u95a2\u6570\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-plain\" data-file=\"parson.go\"><code>package main\n\n\/\/ \u4eba\u306e\u69cb\u9020\u4f53\u306e\u5b9a\u7fa9\ntype parson struct {\n\tname string\n\tage  int\n}\n\n\/\/ \u4eba\u306e\u30e1\u30bd\u30c3\u30c8\u5b9a\u7fa9\nfunc (p parson) getName() string {\n\treturn p.name\n}\n\nfunc (p parson) getAge() int {\n\treturn p.age\n}\n\n\/\/ \u69cb\u9020\u4f53\u3092\u8fd4\u5374\u3059\u308b\u95a2\u6570\nfunc NewParson(name string, age int) parson {\n\tvar p parson\n\tp.name = name\n\tp.age = age\n\treturn p\n}\n<\/code><\/pre><\/div>\n\n\n\n<p>cat.go\u3082\u540c\u69d8\u306b\u69cb\u9020\u4f53\u3092\u8fd4\u5374\u3059\u308b\u95a2\u6570\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-plain\"><code>package main\n\n\/\/ \u732b\u306e\u69cb\u9020\u4f53\u306e\u5b9a\u7fa9\ntype cat struct {\n\tname string\n}\n\n\/\/ \u732b\u306e\u30e1\u30bd\u30c3\u30c8\u5b9a\u7fa9\nfunc (c cat) getName() string {\n\treturn c.name\n}\n\n\/\/ \u69cb\u9020\u4f53\u3092\u8fd4\u5374\u3059\u308b\u95a2\u6570\nfunc NewCat(name string) cat {\n\tvar c cat\n\tc.name = name\n\treturn c\n}\n<\/code><\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9\u5b9a\u7fa9\u306e\u30e1\u30ea\u30c3\u30c8<\/h2>\n\n\n\n<p>Go\u3067\u306f <strong>\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9\u306e\u5b9a\u7fa9\u306f\u69cb\u9020\u4f53\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u53d7\u3051\u53d6\u308b\u5074\u304c\u5b9a\u7fa9\u3057\u307e\u3059\u3002<\/strong>\u3053\u308c\u306f\u5fc5\u8981\u306a\u3082\u306e\u3060\u3051\u3092\u4f7f\u7528\u3057\u305f\u3044\u3068\u3044\u3046\u4e8b\u304c\u660e\u793a\u7684\u306b\u306a\u308a\u3001\u5fc5\u8981\u306e\u306a\u3044\u3082\u306e\u306f\u660e\u793a\u3055\u308c\u306a\u3044\u306e\u3067\u4f55\u304c\u5fc5\u8981\u304b\u304c\u660e\u78ba\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-plain\" data-file=\"main.go\"><code>package main\n\nimport (\n\t&quot;fmt&quot;\n)\n\n\/\/ \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9\u306e\u5b9a\u7fa9\ntype myInterface interface {\n\n\t\/\/ \u5fc5\u8981\u306a\u30e1\u30bd\u30c3\u30c8\u3092\u8a18\u8f09\u3059\u308b\n\tgetName() string\n}\n\nfunc main() {\n\n\t\/\/ \u9234\u6728\u3055\u3093\u306e\u540d\u524d\u3092\u8868\u793a\u3059\u308b\n\tp := NewParson(&quot;suzuki&quot;, 20)\n\tshowName(p) \/\/ suzuki \u304c\u8868\u793a\u3055\u308c\u308b\n\n\t\/\/ \u732b\u306e\u540d\u524d\u3092\u8868\u793a\u3059\u308b\n\tc := NewCat(&quot;catcat&quot;)\n\tshowName(c) \/\/ catcat \u304c\u8868\u793a\u3055\u308c\u308b\n\n}\n\n\/\/ \u540d\u524d\u3092\u8868\u793a\u3059\u308b\u95a2\u6570\nfunc showName(m myInterface) {\n\tfmt.Println(m.getName())\n}\n<\/code><\/pre><\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u524d\u56de\u306f\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9\u306e\u30e1\u30bd\u30c3\u30c9\u306e\u78ba\u7d04\u3092\u5b9f\u88c5\u3057\u3066\u307f\u307e\u3057\u305f\u3002<\/p>\n","protected":false},"author":1,"featured_media":7,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[33],"tags":[],"class_list":["post-3873","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-go"],"_links":{"self":[{"href":"https:\/\/dennie.tokyo\/it\/index.php?rest_route=\/wp\/v2\/posts\/3873","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dennie.tokyo\/it\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dennie.tokyo\/it\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dennie.tokyo\/it\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dennie.tokyo\/it\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3873"}],"version-history":[{"count":6,"href":"https:\/\/dennie.tokyo\/it\/index.php?rest_route=\/wp\/v2\/posts\/3873\/revisions"}],"predecessor-version":[{"id":3996,"href":"https:\/\/dennie.tokyo\/it\/index.php?rest_route=\/wp\/v2\/posts\/3873\/revisions\/3996"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dennie.tokyo\/it\/index.php?rest_route=\/wp\/v2\/media\/7"}],"wp:attachment":[{"href":"https:\/\/dennie.tokyo\/it\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3873"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dennie.tokyo\/it\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3873"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dennie.tokyo\/it\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3873"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}