Go language part 4

■ このスレッドは過去ログ倉庫に格納されています
2020/11/16(月) 04:14:40.64ID:fB5+0hxC
Goについて扱うスレッドです。
GoはGoogleによって開発された言語です。

公式
https://golang.org

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

公式外パッケージドキュメント
https://godoc.org

ブラウザ上で試し書き
https://play.golang.org


※前スレ
Go language part 3
https://mevius.5ch.net/test/read.cgi/tech/1571315884/
2020/11/16(月) 04:15:19.36ID:fB5+0hxC
テンプレは前スレの>>2に変えた
2020/11/16(月) 04:19:59.26ID:fB5+0hxC
みんな大好きGopherくん

https://blog.golang.org/gopher/gopher.png
2020/11/16(月) 06:01:26.56ID:H10ZFMik
Gopherくんキモい
2020/11/16(月) 06:16:05.43ID:wSrfsdTD
【悲報】.日本人、ステマに.簡単に.洗脳される(笑).幼稚.な.多数決.カルト.信仰の.末路
(1)日本人.の.精神.を.腐敗.・.堕落させ.愚民.化.させろ
(2)日本人.の.女.を.集中的に.狙い.洗脳.しろ!
(3)ネトウヨ.、ヘイト.スピーチ.等の言葉を.浸透させ.、同胞へ.の批判.を.封じろ!
(4)「同性婚・LGBTを全面肯定しない者は差別主義者だ!」という雰囲気を作れ!
(5)中身のないアニメを流行らせ、クールジャパンをオワコン化させろ!
(6)「未だにガラケーの奴は笑い者」という雰囲気を作れ.
(7)「日本人の男VS日本人の女」の対立を煽り、分断しろ!
(8)日本人同士で恋愛・結婚させない、子供を生ませないよう誘導しろ。
(9)日本同士で結婚していたら離婚させる方向に仕向けろ
(10)海外セレブやハーフモデルをもてはやし、「日本人は劣等人種だ!」と植えつけろ。。
(11)イケメンブームを定着化させ、「男は外見が全てだ!」と洗脳しろ.
- ソース -
電.通.グループ.会長.成.田.豊.は.朝鮮.半島.生まれ
http://ja.wikipedia.org/wiki/成田豊
2020/11/16(月) 11:02:37.89ID:2ijHHLJY
Go言語がダメな理由
https://postd.cc/why-go-is-not-good/

6年経ちましたがよくなりましたか?
2020/11/16(月) 11:36:25.10ID:UybeAEe0
キミの頭よりは良くなってる
8デフォルトの名無しさん
垢版 |
2020/11/16(月) 11:40:25.93ID:sF1WJXNT
Goに入ってはGoに従え
2020/11/16(月) 11:45:33.74ID:sP+ueWAj
Python&MSの最強タッグに勝てるとは思えん

Pythonの生みの親、グイド・ヴァンロッサム氏、「引退は退屈」とMicrosoft入り - ITmedia NEWS
https://www.itmedia.co.jp/news/articles/2011/13/news066.html
2020/11/16(月) 12:43:46.88ID:Rp0lnyle
MSがPythonに力入れる夢見てるやついまだにおるんやなw
2020/11/16(月) 13:31:29.66ID:jIfIZ9ed
言語には得意分野があることを理解できないニワカが大杉
2020/11/16(月) 14:38:16.63ID:oSwqK6E+
>>9
pythonは可読性上げるために文法強制するくせに、関数呼び出しばかりで可読性劣悪なのがちょっとなぁ。
2020/11/16(月) 14:55:37.57ID:mOY/lFMt
Goはその関数呼び出しを1関数あたり5行くらいに分けてダラダラと書いてるだけだろ?
その分Goは情報の密度が低くて楽に読めるから、単位時間あたりに読める行数を可読性と定義するならまあGoの可読性はPythonより高いわな
2020/11/16(月) 17:22:11.33ID:8c1QCVK8
ダラダラ書いてるってどういう事?
15デフォルトの名無しさん
垢版 |
2020/11/16(月) 17:48:06.60ID:+ucL5pJy
>>12
なんでPythonが関数呼び出しばかりだと思ったの?
なんで関数呼び出しばかりだと可読性が低くなると思ったの?
2020/11/16(月) 18:14:19.92ID:x+MSqxF6
>>14
err = Hoge()
if err != nil {
 return err
}
17デフォルトの名無しさん
垢版 |
2020/11/16(月) 19:09:23.02ID:WZgYyPqf
>>16
これほんと嫌い
2020/11/16(月) 19:21:21.05ID:UjHg6qpi
>>16
俺はこれ好き
try-catchよりシンプルで読みやすい
2020/11/16(月) 19:25:59.64ID:qg+eeyPj
これが読みやすいとか、たぶん1000行程度のプログラムしか書いたことないんだろうな
2020/11/16(月) 19:30:18.80ID:2F7AgOwR
>>19
ごめん
俺土方じゃないからコード書かないんだ
2020/11/16(月) 20:03:06.45ID:zXKn/1df
goって、

err = Hoge()
if err {
 return err
}

とは書けないんだっけ?
2020/11/16(月) 20:19:58.38ID:UybeAEe0
Hoge() の戻り値が boolean じゃないとね
23デフォルトの名無しさん
垢版 |
2020/11/16(月) 20:37:39.21ID:+ucL5pJy
頻繁に出てくる定型コードなんだから言語側は糖衣構文実装しろよ
2020/11/16(月) 20:40:52.00ID:i/HDczYO
err = Hoge() && return err
俺ならこうする
2020/11/16(月) 20:57:25.55ID:4F0bxqx0
クソダサい
2020/11/16(月) 21:00:18.04ID:5OAOeu6r
Rust見倣って
result := Hoge()?
にしとけ
2020/11/16(月) 21:06:21.03ID:jIfIZ9ed
すまん
if err = Hoge(); err != nil {
 return err
}
以外の書き方したことないわ
2020/11/16(月) 21:07:03.57ID:jIfIZ9ed
あ、:= に直すの忘れてた
2020/11/16(月) 21:09:26.85ID:2ijHHLJY
=とか:=とかめんどくせえな
2020/11/16(月) 21:14:24.95ID:J0Iniu1t
>>27
エラー以外の戻り値のある関数使ったことないの?
2020/11/16(月) 21:30:40.87ID:dv0RbCZr
Go2の改善は今のところ↓コレが有力なの?
https://go.googlesource.com/proposal/+/master/design/32437-try-builtin.md
2020/11/16(月) 21:37:12.31ID:UybeAEe0
Proposal: A built-in Go error check function, "try" · Issue #32437
https://github.com/golang/go/issues/32437

This proposal has been closed. Thanks, everybody, for your input.
2020/11/16(月) 22:38:27.44ID:inzbcPAL
>>30
な? これで良いとかおもってるやつなんて
ロクにちゃんとしたコード書いたことすらないのがバレバレ
しょぼいサンプルコードぐらいしか書いたことないんだろう
2020/11/16(月) 22:46:50.52ID:dv0RbCZr
>>32
で?結局Go2ではどうなるの?
2020/11/16(月) 23:28:44.33ID:UybeAEe0
>>34
reject されたからどうにもならない
2020/11/16(月) 23:44:21.27ID:dv0RbCZr
えっ、なんの改善もされないの?
だとするといろんな意味できついね
2020/11/16(月) 23:48:13.75ID:DSjP5PPU
昔go使ってスレッド同期系の不具合を調査しようとしたが、ログを入れてもスレッドid的なものが一切取得する手段が無くて驚愕した。

そこでmutexをAPI入り口に入れて回避しようとしたが再帰mutexが無くて断念した。

調べたら再帰mutexは使うべきじゃ無いから提供しないらしい。ならば作ろうとしたらスレッドid的な識別子が無いから作れない。

昔のgoは識別子を取れたため再帰mutexライブラリが落ちてたがそれも使えなくなってた。

なんだろうこのクソ言語って思った。
2020/11/17(火) 00:02:26.25ID:c7e0OkRz
RustはともかくNimとかいう馬の骨にまでコケにされてとてもつらい。

Let's encryptのバグはRustで実装していたら防げたの?
https://qiita.com/komasayuki/items/02785730d486ec4b397f
Let's encryptのバグはNimで実装していたら防げたの?
https://qiita.com/dumblepy/items/37581ef0223a81fa1094
2020/11/17(火) 00:13:23.50ID:c7e0OkRz
Discordに逃げられてつらい…

実装言語を「Go」から「Rust」に変更、ゲーマー向けチャットアプリ「Discord」の課題とは
https://www.atmarkit.co.jp/ait/spv/2002/10/news038.html
2020/11/17(火) 00:59:11.79ID:1L4goDpB
>>16
わかりやすくていいじゃん。
このパターンなら、return Hoge()できないか考えるけど。

>>19
1ファイル1000行は異常だと思うぞ。

>>30
複数の戻り値あるときでも、>>27の書き方はできるぞ。
2020/11/17(火) 01:00:02.16ID:1L4goDpB
>>33
お前もないんだろ…
2020/11/17(火) 11:54:27.21ID:m07xvYc5
>>30
その一言で馬脚を現すとはなんという出オチ感
ディスるなら言語仕様くらい勉強して出直してこい

具体的にはGoではタプルで戻り値を返してくるのが一般的
一個の戻り値なんて、普通に使っている人間からしたら特殊な使い方だよ
つまり、使ったことが無い素人さんだね貴方
2020/11/17(火) 13:20:20.82ID:H0+H5RuJ
全部Gopherくんがキモいのが悪いわ
2020/11/17(火) 14:21:13.31ID:m07xvYc5
年寄りはオライリー表紙で慣れてるから平気
2020/11/17(火) 15:14:43.85ID:TJ9hBTBs
>>42
さすがにGoスレで多値返却知らないやつはいないてw

可読性の観点で同じパターンと認識してるのかどうかの違い

ちなみにタプルではないよ
2020/11/17(火) 15:31:54.39ID:m07xvYc5
>>45
型としてのタプルではないから確かに無いといえば無いね
順序を持って並んだ変数の組、という物は構文としてタプルと表現すべきかと思ったので

タプル型って特に使い道思い付かないし要らんよな?

とか思ってたらissuesの#41148でタプルをチャネルで送りたいとかあったわ
なるほど
47デフォルトの名無しさん
垢版 |
2020/11/17(火) 19:53:06.72ID:OUvi357j
>>35, >>37
これマジ?
GolangやめてRustやります
2020/11/18(水) 03:18:00.14ID:8xI/s5G3
Rustなんて数年経ったらScalaと同じでただの負債になるだけなのによくやる気になるな
個人で趣味程度にやるなら良いと思うけど
2020/11/18(水) 03:46:26.68ID:uoM+CD8t
RustはMSが正式採用してから始める、で遅くないと思う
2020/11/18(水) 08:34:38.41ID:pNzxwTD4
RustはOS寄りな案件に突き進むんじゃないか?
シェルじゃなくカーネル
>>39にあるようにGC不要であるという強みはドライバ記述に最適ということを意味するから
2020/11/18(水) 10:09:02.25ID:hkPPdx4I
負債になるのはGoだろワロタwwww
2020/11/18(水) 10:16:42.11ID:mXWQ9M3+
Rustは人類が使いこなすには150年くらい早い
2020/11/18(水) 11:15:56.54ID:ynuaTlxN
小学生レベルでも読み書きできるGoは負債になりにくいだろ
Rust使ってるやつは奴隷身分の癖にアーティストぶって負債を生むウンコマン
2020/11/18(水) 12:39:37.96ID:hzlSiPtI
Goはあまり変なフレームワーク使ったりしなくて標準ライブラリが基本なので、その意味では負債化する要因が少ない
廃れるのは言語よりも先にフレームワークだからね
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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