{"id":18754,"date":"2021-11-25T05:34:06","date_gmt":"2021-11-25T04:34:06","guid":{"rendered":"http:\/\/blog.wenzlaff.de\/?p=18754"},"modified":"2022-01-02T19:55:47","modified_gmt":"2022-01-02T18:55:47","slug":"es-muss-ja-nicht-immer-java-sein-go-ist-eine-programmiersprache-von-google-und-laeuft-auch-auf-dem-raspberry-pi","status":"publish","type":"post","link":"http:\/\/blog.wenzlaff.de\/?p=18754","title":{"rendered":"Es muss ja nicht immer Java sein, GO ist eine Programmiersprache von Google und l\u00e4uft auch auf dem Raspberry PI"},"content":{"rendered":"<p>GO ist eine Programmiersprache von Google und l\u00e4uft auch auf dem Raspberry PI. Sie ist schnell installiert mit<\/p>\n<p><strong>sudo apt-get install golang<\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/11\/go.png\" alt=\"\" width=\"1842\" height=\"1342\" class=\"aligncenter size-full wp-image-18756\" srcset=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/11\/go.png 1842w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/11\/go-300x219.png 300w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/11\/go-1024x746.png 1024w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/11\/go-768x560.png 768w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/11\/go-1536x1119.png 1536w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/p>\n<p>Ein Test mit <strong>go version<\/strong> gib die Version aus, und zeigt an, das go installiert wurde. Z.b.<\/p>\n<p>go version go1.15.9 linux\/arm<\/p>\n<p>Heute, mal ein &#8222;Hallo Welt&#8220; und ein REST-Server um zu zeigen, wie einfach der Start ist.<\/p>\n<p>Also dann mal die Datei <strong>erstes-go-programm.go<\/strong> mit diesem Inhalt anlegen: &#8230;<!--more--><\/p>\n<pre class=\"lang:go decode:true \" >\r\n\r\npackage main\r\n\r\nimport \"fmt\"\r\n\r\nfunc main() {\r\n    fmt.Println(\"Cool Hallo Welt\")\r\n}<\/pre>\n<p>Ausf\u00fchren des Programm geht dann mit: <strong>go run erstes-go-programm.go<\/strong><\/p>\n<p>So nun noch ein Kleinhirn REST-Server, in der Datei <strong>kleinhirn-rest-server.go<\/strong> anlegen.<\/p>\n<pre class=\"lang:go decode:true \" >\r\n\r\n\/\/ Beispiel eines REST-Servers in Go.\r\n\/\/ Thomas Wenzlaff\r\n\r\npackage main\r\n\r\nimport \"net\/http\"\r\nimport \"fmt\"\r\n\r\nfunc main() {\r\n  fmt.Println(\"Kleinhirn Server ist gestartet ...\")\r\n  http.HandleFunc(\"\/kleinhirn\", kleinhirnHandler)\r\n  http.ListenAndServe(\":8080\", nil)\r\n}\r\n\r\nfunc kleinhirnHandler(w http.ResponseWriter, r *http.Request) {\r\n  w.Write([]byte(\"Mindmaps von Kleinhirn.eu\"))\r\n}<\/pre>\n<p>Ausf\u00fchren des Programm geht dann mit: <strong>go run kleinhirn-rest-server.go<\/strong>. In einer anderen Konsole dann den REST-Server abfragen mit:<\/p>\n<pre class=\"lang:default decode:true \" >\r\n\r\ncurl http:\/\/localhost:8080\/kleinhirn\r\n\r\n<\/pre>\n<p>Ergebnis: Mindmaps von Kleinhirn.eu<\/p>\n<p>Cool, mehr auf <a href=\"https:\/\/go.dev\/\" rel=\"noopener\" target=\"_blank\">go.dev<\/a> <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/11\/go-programmiersprache-150x150.jpg\" alt=\"\" width=\"150\" height=\"150\" class=\"aligncenter size-thumbnail wp-image-18755\" srcset=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/11\/go-programmiersprache-150x150.jpg 150w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/11\/go-programmiersprache-100x100.jpg 100w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2021\/11\/go-programmiersprache-120x120.jpg 120w\" sizes=\"auto, (max-width: 150px) 100vw, 150px\" \/> <\/p>\n<p>Einer der n\u00e4chsten go Beitr\u00e4ge beschreibt das Installieren und Starten des Ethereum <a href=\"https:\/\/geth.ethereum.org\/\" rel=\"noopener\" target=\"_blank\">geth<\/a>. Der l\u00e4uft mit go und wird als Light Node (nur ca 400 Mb, es muss ja nicht immer gleich ein Full Node sein) auf dem Raspberry Pi mit<\/p>\n<pre class=\"lang:default decode:true \" >geth --syncmode light --cache 64 --maxpeers 12 --http --ws<\/pre>\n<p>gestartet. Aber nicht mehr heute &#8230;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>GO ist eine Programmiersprache von Google und l\u00e4uft auch auf dem Raspberry PI. Sie ist schnell installiert mit sudo apt-get install golang Ein Test mit go version gib die Version aus, und zeigt an, das go installiert wurde. Z.b. go version go1.15.9 linux\/arm Heute, mal ein &#8222;Hallo Welt&#8220; und ein REST-Server um zu zeigen, wie &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/blog.wenzlaff.de\/?p=18754\" class=\"more-link\"><span class=\"screen-reader-text\">\u201eEs muss ja nicht immer Java sein, GO ist eine Programmiersprache von Google und l\u00e4uft auch auf dem Raspberry PI\u201c <\/span>weiterlesen<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[220,5119,808,79,1023],"tags":[4311,4314,5122,1162,5120,2487,5121],"class_list":["post-18754","post","type-post","status-publish","format-standard","hentry","category-anleitung","category-go","category-linux-2","category-programmierung","category-raspberry-pi","tag-geth","tag-go","tag-go-rest-server","tag-hallo-welt","tag-programmiersprache","tag-rest","tag-rest-server"],"_links":{"self":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/posts\/18754","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=18754"}],"version-history":[{"count":0,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/posts\/18754\/revisions"}],"wp:attachment":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=18754"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=18754"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=18754"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}