Go language part 2

レス数が900を超えています。1000を超えると表示できなくなるよ。
1
垢版 |
2017/11/11(土) 19:25:26.19ID:X8lWnCzG
Goについて扱うスレッドです。
GoはGoogleによって開発された言語です。

公式ドキュメント
http://golang.org/doc/

日本語訳
http://golang.jp

※前スレ
Go language part 1
http://mevius.5ch.net/test/read.cgi/tech/1381374291/
2019/06/16(日) 12:38:36.88ID:E7tcb+8r
scalaは実質spark用の言語になった感
2019/06/16(日) 14:49:25.11ID:ybqQtnCX
Scala民はなぜかKotlinを敵視してるから合流しないと思う
2019/06/16(日) 17:11:02.09ID:sf2vtSAF
そんなビルド遅い言語は興味ないな
2019/06/16(日) 18:20:53.66ID:zV7uGblf
こういうやつな
2019/06/18(火) 09:29:42.66ID:qmIqf6/4
Goでも使っとけ
854デフォルトの名無しさん
垢版 |
2019/06/19(水) 05:01:14.42ID:tVNS+22r
【出資】松本卓朗 人工知能詐欺【注意】
https://rio2016.5ch.net/test/read.cgi/rikei/1560859403/
2019/06/21(金) 09:53:14.59ID:nqNnSLIS
var list []string
if list, err := getList();err != nil{
doSomething()
}

fmt,Println(list)

みたいにerrはスコープ絞りたいけど、listは外でも使いたいときってどうしてる?

list, err := getList()
if err != nil{
doSomething()
}

ずっとこれで書いてるけど、errの汚染が気持ち悪くてしょうがない
2019/06/21(金) 10:08:37.15ID:7uBmdJ4z
{} で囲めばいいと思う
2019/06/27(木) 02:52:20.62ID:FaQ6+pyI
Next steps toward Go 2
https://blog.golang.org/go2-next-steps
2019/06/28(金) 20:22:50.40ID:D7IYfFOa
var list []string
{
var err error
if list, err = getList();err != nil{
doSomething()
}
}

理解できてなくて、返信遅くなったけどありがとう。
こういうこと?確かにいけるわ
2019/06/29(土) 17:07:31.88ID:aZLH26yH
>>857
それ読んだ感じ、Go2ドラフトの3つのうち2つは、近いうちに実装されるみたいね。
ジェネリクスはまだ揉めているようだ。

Go 1.13 → errorに他のエラーをラッピング可能になる
Go 1.14 → ビルトインtry導入

ドラフトのエラーハンドリングはボツになって、代わりにtryになった。
といっても、他の言語のようなtry〜catch構文じゃなくて、
if err != nil { return err } のシンタックスシュガーっぽいが。

a, err := foo()
if err != nil {
  return err
}

a := try(foo())
860デフォルトの名無しさん
垢版 |
2019/06/29(土) 21:01:36.05ID:c0pfCvxU
まあソレでいいんじゃない?
2019/07/07(日) 16:51:17.34ID:IBLOts2g
>>859
コピペ冗長なコードが減っていいですね。
1.14待ち遠しいね
2019/07/07(日) 18:06:09.39ID:0ubEvB6Y
糖衣構文と言うことは従来の書き方でも行けるんよね
天才達が考えた事なら間違いない
2019/07/13(土) 18:46:57.15ID:tImovYMg
一見して制御構文に見えないけど制御構文なので不気味だなとは思う
864デフォルトの名無しさん
垢版 |
2019/07/15(月) 23:34:52.25ID:P4CvUGaZ
z := try(foo()).bar(try(baz(try(x, err))))
うわあああ
2019/07/18(木) 11:26:51.33ID:8UzIj5wI
tryリジェクトかよ
エラー処理にどれだけ時間かける気だよいいかげんにせーよ
2019/07/18(木) 12:13:21.68ID:Nv4mVpEC
今まで通りでいいんじゃね
2019/07/18(木) 14:19:45.16ID:6LRPswFk
ほぼ宗教戦争だからな
ただしばらくしたら結局普通に入ると思うわ
他言語からの流入者が増えるに連れてコミュニティ内のtry賛成派が増えると思うし
2019/07/21(日) 17:48:53.13ID:IcUxNQlv
それ繰り返したらjavaになるだけだろ。バカなのかな。
2019/07/21(日) 17:58:10.25ID:v2qrtLZm
なんでもそうだけど
初期よりの中期が一番完成度が高い
2019/07/21(日) 19:48:34.89ID:f1dcD4h/
>>868
良い悪いじゃなくて確実にそうなる。
特にGoはコミュニティの意思が最優先だから、人が増えたら絶対に回避できない。
2019/07/23(火) 19:15:35.27ID:7uHwn8JE
単純にtryは気持ち悪い
2019/07/24(水) 07:58:26.60ID:xApiBXd0
確かに
873デフォルトの名無しさん
垢版 |
2019/07/24(水) 10:32:29.91ID:N8NvLFq2
challenge
2019/07/28(日) 15:45:26.20ID:T9XedO3O
nilチェックでいいと思うけどね
Cみたいなもんなんだし
2019/08/02(金) 21:56:22.85ID:hlWdSuTu
pythonとgoのどちらかを学ぼうと思っているのですがどちらのほうが就職では役に立ちそうですか?

ごく簡単なHPを作れるくらいのプログラミングの知識しかありません
2019/08/02(金) 21:59:32.62ID:XJV5qmce
就職云々なら Java がいいんじゃね(適当)
2019/08/02(金) 22:32:26.09ID:f+IY++fw
>>875
どういう職に就きたいのかによる
2019/08/02(金) 23:35:29.26ID:hlWdSuTu
>>876
比較的新しい言語のほうが寿命があるかなと
pythonは今大人気の言語のようだしgoもgoogleだから伸びていくように思います
>>877
特にこれといったものはないですがweb上で動かせるようなのがやってみたいですね
2019/08/02(金) 23:45:25.50ID:dz/JXxLP
pythonなんてjavaより古い言語なのに。
880デフォルトの名無しさん
垢版 |
2019/08/03(土) 00:36:11.96ID:+rHXCSdu
片方だけとかケチくさいな、両方やればいいのに
Pythonから始める方が楽だと思うが
881デフォルトの名無しさん
垢版 |
2019/08/03(土) 03:37:20.59ID:EXGEa6HH
そういう質問(`・д・´)ヤダ
882デフォルトの名無しさん
垢版 |
2019/08/03(土) 04:15:04.58ID:aApVXMvw
初心者はだまって C やっとけ
2019/08/03(土) 18:55:10.96ID:unPLGrrT
Web上で動かすって言ってもクライアントしたいのかサーバーしたいのかにもよる
Goスレだから一応言うとGoは基本サーバーアプリケーション向け
2019/08/03(土) 19:55:47.94ID:EXGEa6HH
goにgo
2019/08/03(土) 20:02:29.51ID:1Zar5HzA
勉強でwebsocketでチャットするサイト作ってて、
待ち受け用のただのhtml生成と、特定pathでwebsocketでjsonやりとりするようにしてるんだけど
こういうhttpとwebsocketみたいな別機能?って、別バイナリに分けるべきなんだろうか
それはそれでサーバ設定がめんどくさくなりそうなんだけど
2019/08/04(日) 10:12:08.59ID:MhvpWdMU
>>878
いわゆるWEBサービスみたいなのを作りたいならgoはあまりおすすめしない
作れないことはないけど主流とは言い難いし、職に就きたいという理由ならそんな仕事を探すのはほぼ無理
たぶん君の希望に1番近いのはRails
2019/08/04(日) 10:38:33.63ID:uhC0to7r
>>886
rails?初めて聞いたわ
pysonとかyoutubeなんでしょ?
railsってそれらを押しのけるほどの力を持ってるの?
2019/08/04(日) 10:43:10.51ID:8eqp+0G+
つりかよ
2019/08/04(日) 11:32:00.09ID:/i7K4ZYC
   ∩___∩         |
   | ノ\     ヽ        |
  /  ●゛  ● |        |
  | ∪  ( _●_) ミ       j
 彡、   |∪|   |        J
/     ∩ノ ⊃  ヽ
(  \ / _ノ |  |
.\ “  /__|  |
  \ /___ /
2019/08/04(日) 13:20:17.23ID:uhC0to7r
初心者なんで有名ドコロしかしらない

アプリっていうのはpythonとかgoじゃ作れない?
2019/08/04(日) 14:06:43.66ID:+opLpOKc
マジレスすると
なんていうか、
バイクレース出るならハーレーっすかね?有名だし。
ってバイクの免許持ってない人が言ってる感じ?

多分プログラミング言語云々言う前に
もっと根本的な事勉強した方が良いと思う。
892デフォルトの名無しさん
垢版 |
2019/08/04(日) 14:13:55.51ID:xpZyjwIo
釣られる人が居るとは思わなかった
2019/08/04(日) 14:18:29.06ID:uhC0to7r
javascriptでフロントエンド? goでサーバーサイド

みたいな感じで2つ学べば大丈夫
みたいな認識で大丈夫でしょうか?
2019/08/04(日) 14:21:08.15ID:+opLpOKc
釣りとか気にしてるのって馬鹿らしいと思わない?
マジレスしたら恥ずかしいと思ってる奴の方が
人間的に恥ずかしいと思うが。
2019/08/04(日) 14:23:43.85ID:+opLpOKc
>>893
とりあえず最初に勉強するのは一つの言語に絞った方がいいよ。
goは初学には向いてないと思う。
2019/08/04(日) 14:29:41.69ID:enQrPlk1
GOに入ってはGOに従え
2019/08/04(日) 14:38:32.98ID:uhC0to7r
まじか
もうプロゲートで最初の2つの講座終わったところなのに・・・
2019/08/04(日) 15:19:06.11ID:NwlEAiDZ
プロゲートって初めてみたけど、go講座は4コマで、
3コマ目に関数、4コマ目にポインタだから、
毒にも薬にもならないね

このサービスが1年以上もつんだ
2019/08/04(日) 15:33:19.12ID:uhC0to7r
4コマ終わればテトリスくらいは作れるようになると思ったんだがそうじゃないんか?
もう有料会員になっちまったよ
2019/08/04(日) 17:44:33.22ID:uhC0to7r
調べてみましたが
web系だと
HTML CSS Sass javascript go やっておけば大丈夫そうですね
2019/08/04(日) 18:51:32.60ID:zjBZp1dd
サーバー側は、アマゾン、グーグル、Heroku など、すべてで採用されている、Ruby が標準です!

Ruby をやったあとは、Ruby 実装系を、JavaScript で作り直した、Node.js をやる。
Node.js パッケージマネージャーの、npm, yarn は、Ruby のBundler のコピーです

クライアント側は、HTML, CSS/SASS, JavaScript, jQuery, Vue.js など

最初に、Ruby, Node.js, VSCode のインストールすればよい

これらを数年やったら、Kotlin, Go, Elixir を学ぶ
902デフォルトの名無しさん
垢版 |
2019/08/04(日) 19:27:01.66ID:NGUjoE92
*by厨はpythonスレでよく見かけたがgoには来ないもんだと思ってた
2019/08/04(日) 19:39:59.53ID:t+3WS/4C
>>900
手に職を意識してるんなら、goよりはnode.jsにしとけ(´・ω・`)
2019/08/04(日) 19:50:43.64ID:UfGg3BxF
流石に今からやるならNode.jsよりはGoだと思うけど…
ただフロントエンドでJSから逃げられない事を考えたらバックエンドもNode.jsを使えば多少楽になる
2019/08/04(日) 22:08:27.22ID:uhC0to7r
調べてみたらSassってRubyじゃないと使えないみたいですね
>>901
RubyはGoに相当するものだと思えばいいですか?

rails-Rubyはunity-C#みたいなもんですかね?

node.jsも新しい知識です
2019/08/05(月) 07:48:00.12ID:OeeDJcnG
goの話じゃなくなったので
他で聞いてくれ
2019/08/05(月) 08:12:28.63ID:Tivtppz2
Sassはツールであって、単にrubyで動くだけよ。
俺は文法が気に食わんから、less使ってる。
908デフォルトの名無しさん
垢版 |
2019/08/05(月) 11:10:38.07ID:NOA3rn3w
>>904
なんでバックエンドでnodeを使うと「楽になる」んだ?頭沸いてんのか?
2019/08/05(月) 18:40:10.05ID:5d9gmer+
>>908
学ぶ言語の数を減らした、という意味で「楽になる」と言ったつもりだった

ちなみにどういう解釈のもとで「頭が湧いてる」と感じた?
2019/08/17(土) 07:53:11.47ID:nhm+mZTV
夏休みなので初学者が多いね
2019/08/31(土) 12:49:17.96ID:ALF+O+b+
すいまえんでした(´;ω;`)
2019/08/31(土) 13:32:12.88ID:UZ8wQYoo
エンジニア志望の学生100名が回答した、プログラミング言語トレンド発表
https://cz-cdn.shoeisha.jp/static/images/article/11702/11702_001.jpg
913デフォルトの名無しさん
垢版 |
2019/08/31(土) 18:34:12.85ID:a4bV2Szc
初めてプログラムやるやつが最初からGoなんてやらんだろ
2019/08/31(土) 19:09:58.03ID:QMsaxvWg
エンジニア志望てw
2019/08/31(土) 19:13:02.03ID:D9FBvNNY
Rustだ
2019/08/31(土) 21:43:43.18ID:spFkyjj/
Android Javaってなんだよw
2019/08/31(土) 22:36:42.69ID:D9FBvNNY
環境で分類してるのが実は言語とかどうでもいい感
2019/09/02(月) 15:41:58.07ID:NFmsSkhr
>>912
なんでCとC++をわけないんだろう
919デフォルトの名無しさん
垢版 |
2019/09/02(月) 15:46:04.15ID:4ywLnei2
perl と VBA が無いな
2019/09/05(木) 10:31:38.63ID:ZhL2R7iO
最近この手の派遣転職サイトはろくなことしてないわ
どことは言わんがエンジニアに金渡して記事書かせたり
自分たちの都合の良い言語を持ち上げまくるのはマジでやめて欲しい
921デフォルトの名無しさん
垢版 |
2019/09/05(木) 12:11:51.51ID:GBQfuWMX
参考にしなきゃいい
2019/09/05(木) 14:13:08.76ID:Gbq4EjiR
PHPはもう過去の遺産をメンテする用途でしか使わない気がする
Rubyもいずれそうなると思う
Javaは案件から見た立ち位置的にはCOBOLだよね。一部で絶対死なない言語になりそう
923デフォルトの名無しさん
垢版 |
2019/09/05(木) 18:23:43.73ID:GBQfuWMX
PHPでJVM作った人がドヤァしてたね
924デフォルトの名無しさん
垢版 |
2019/09/05(木) 18:28:19.82ID:LzIr2bnO
PHPってインストール直後に
勝手にindex.phpが造られて
鯖環境晒されるやつだろ?
セキュリティーホールではIISより最悪
IISとのコンボでもマジ最凶
SQLまで実行出来たωωω
2019/09/05(木) 19:09:04.09ID:iUWkk78x
>>924
XAMPPでもインストールしたのか?w
2019/09/05(木) 19:50:05.22ID:ZhL2R7iO
>>923
技術は認めるけど筋が悪いねえ
2019/09/05(木) 23:41:47.94
1.13
TLS 1.3 enabled by default
Uniform and modernized number literal prefixes
Support for error wrapping
2019/09/05(木) 23:49:45.10ID:VtA7IODN
キタ━━━━(゚∀゚)━━━━!!
2019/09/06(金) 08:58:42.83ID:XmctuCa3
Go言語のコントラクトにより、ジェネリックプログラミングが可能に
https://www.infoq.com/jp/news/2019/09/go-contracts-generic-programming/
2019/09/06(金) 14:30:50.82
コントラクトってHaskellでいうところの
=> の左側に書く奴?
2019/09/06(金) 20:51:25.87ID:8qoaSj9p
これでループ地獄から抜けられるな
2019/09/06(金) 23:25:14.03ID:heCLpUqM
でもgoのcontractのコード、キモいんだよなぁ。
2019/09/06(金) 23:40:30.40ID:cZAYRfte
contract, 早く使いたい
934デフォルトの名無しさん
垢版 |
2019/09/07(土) 00:48:28.14ID:xDQzWQ5M
丸括弧ばっかりでコード読みにくくなりそ
あと、原文のボリュームがすごすぎる
もう少しシンプルにならんもんか
2019/09/07(土) 10:10:08.02ID:Qw407Ch/
他の言語のものとは違うとわかってて名前をかぶせてくるのはほんとやめてほしいわ
2019/09/07(土) 22:13:39.28
Goとコントラクトして魔法コードを書いてよ
2019/09/09(月) 14:51:25.86ID:P6OItk/A
Haskellの型クラスみたいな感じね
この手の言語でちゃんと使えるのは凄いかもしれん
2019/09/11(水) 01:46:16.64ID:PtC76xPP
2019年9月 プログラム言語ランキング
http://pypl.github.io/PYPL.html
2019/09/13(金) 11:50:35.54ID:ydgQnelP
encoding/xmlのDecoderでhtmlを分解できるみたいだけど
htmlでは許容されてxmlで禁止されてる文字が含まれてるとエラーになって分解失敗する

https://golang.org/pkg/encoding/xml/#Decoder

https://en.wikipedia.org/wiki/Valid_characters_in_XML
2019/09/15(日) 00:14:40.58ID:WSLNNCzG
WEBサーバー用に勉強したけど、デフォルトではORMもクッキーの暗号化もフォームの秘密鍵もないのかよ。
これでフレームワーク使わないのが主流って、セキュリティ穴だらけのサイトが乱立しそう。
セキュリティ対策はできてるつもりになってて、実は全然できてない奴が多いからなー
2019/09/15(日) 00:20:20.95ID:WSLNNCzG
でもhttpサーバーなしでwebサイトを公開できるのは感動だったな
ありゃ楽だわ
2019/09/15(日) 21:38:00.09ID:QYKOfs4D
むしろデフォルトで「ORMもクッキーの暗号化もフォームの秘密鍵」もある言語ってなに?
Java EE を「デフォルト」だと言い張れるなら、Java がそうかな?

> でもhttpサーバーなしでwebサイトを公開できるのは感動だったな

これも何を言ってるのかさっぱり分からない。Go のどこにそういう種類の感動があるのやら。
なんか根本的に勘違いしているというか、正しい技術的理解ができてないんでは…。
「できてるつもりになってて、実は全然できてない」のはまずいですよ!
2019/09/15(日) 22:05:44.38ID:OSdJ/aAv
実用性は無視してhttpサーバーなしでwebサイトを公開できるだろ…
2019/09/15(日) 22:08:03.62ID:OSdJ/aAv
Goは単純なマイクロサービスみたいのを簡単に提供できるのが魅力
2019/09/15(日) 22:50:36.52ID:E1rfcuGI
> でもhttpサーバーなしでwebサイトを公開できるのは感動だったな

普通はそのまま本番公開なんてしないぞ
本番ではリバースプロキシのバックエンドとして使うんだよ
2019/09/16(月) 00:15:10.92ID:tGcCl8+o
>>945
その理由を華麗に説明してみないかw
2019/09/16(月) 00:21:03.65ID:tGcCl8+o
一応書くけどリバースプロキシ自体はhttpサーバじゃないよ
webサーバがその機能を持ってることもあるけどね

この場合だとリバースプロキシのバックエンドと書いてるそのものが一応webサーバかな

じゃあ張り切ってリバースプロキシを使う理由をどうぞ!
2019/09/16(月) 09:06:58.35ID:dTSbudTn
「httpサーバーなしで」というと"net/http"も使わないように思うがどういうことなんだろう?
逆に、それを使う前提ならpythonやC#でも同じようにできるしな。
レス数が900を超えています。1000を超えると表示できなくなるよ。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況