[過去ログ] Go language part 3 (918レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
1
(1): 2019/10/17(木)21:38 ID:wMsZ+t6y(1) AAS
Goについて扱うスレッドです。
GoはGoogleによって開発された言語です。

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

日本語訳
http://golang.jp

※前スレ
Go language part 2
2chスレ:tech
2: 2019/10/17(木)22:00 ID:su/chz7m(1) AAS
>>1
テンプレが古すぎるんで作ってみたがどうだろ

公式
https://golang.org

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

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

ブラウザ上で試し書き
https://play.golang.org
3: 2019/10/17(木)22:34 ID:wphaTNNp(1) AAS
golang.jpは外して良いね
4: 2019/10/18(金)00:00 ID:DhnYyybT(1) AAS
golang.jp は、エイベルの古川昇部長が、社内で始めた翻訳プロジェクトだろ?
最近は、活動してないのか?

改訂2版 基礎からわかる Go言語、古川昇(エイベル)、2015
5: 2019/10/18(金)00:45 ID:uhy/qlU/(1/3) AAS
その人もうやめてるでしょ
6
(2): 2019/10/18(金)13:53 ID:wgxHvfCr(1/3) AAS
先週から仕事でGoやることになったんだが、この言語辛すぎないか・・・?
ジェネリクスないしエラーが辛い。ジェネリクスは2.0で入るらしいが。
Goの作法だとエラーハンドリング忘れて次の処理を書けるリスクが常に孕んでてて書いてて全然安心できない。
あと詳細なエラー情報見ようとするとcustomErr,ok:=err.(CustomError)みたいにしないと情報とれないの危なすぎでしょ。
なんでカスタムエラー型認められていないの?
7
(1): 2019/10/18(金)14:25 ID:I27oYfOd(1/2) AAS
>>6
認められていない訳じゃない
しかし、カスタムなエラー型だと正常時にnilが帰ってきた時に
if err!=nil {} がtrue判断を食らうという厄介なバグがある
これは型付きnilというバグだが、仕様と言い張ってる模様
仕様なら、the predeclared identifier nil, which has no typeの記述とか直せや!
8
(1): 2019/10/18(金)14:31 ID:I27oYfOd(2/2) AAS
>>6
エラー処理を忘れるうっかりさんは例外だってキャッチ忘れるだろな

そして、エラー処理は1.13でほんの気持ちだけ改修入ってるからチェック
Is, As
9: 2019/10/18(金)14:39 ID:W6xTwO6R(1) AAS
O2
10: 2019/10/18(金)15:49 ID:wgxHvfCr(2/3) AAS
>>7 認められてないというよりか風潮といった感じか
カスタムエラーがstructじゃなくてinterfaceならいけるんじゃない?
まあどのみち使用しているライブラリがerror返してるからどうしようもないんだけどな
俺はMySQLのエラー番号が知りたいだけなのにどうして危険な操作を強いられるんだ

>>8 まず俺はGoのエラーと例外を引き合いに出してはいない(例外は糞だが)
例えば関数の戻り値がT,errorのような場合でerrorじゃないときだけTの戻り値にアクセスできるような仕組みが欲しい
ScalaのEitherやRustのResultのようなやつな
今はジェネリクスないからそういう実装はできないだろうけど
そもそも職場の制約で.1.13は使えないが、IsもAsも対してかわらんなって印象だわ。
ライブラリの実装者が中で返すエラーの型を変えた場合、IsやAsしててもコンパイルエラーにならず適切なエラー処理ができずに実行されてしまう。
省3
11: 2019/10/18(金)16:01 ID:uhy/qlU/(2/3) AAS
エラー処理の観点から見るとジェネリクスないのはもう相当きついね
関数型脳は捨てるしかない
12: 2019/10/18(金)19:57 ID:wgxHvfCr(3/3) AAS
まあRustも関数型言語かというと違うけどな。標準ライブラリにはモナドないし。
ジェネリクスが必要なものに関しては今使えないから仕方がない面はあるとは思う。

ただカスタムエラー型が実質使えない状態になってるのは辛いなあとは思う
13: 2019/10/18(金)21:03 ID:uhy/qlU/(3/3) AAS
モナドあってもdo記法相当ないときついからね
14: 2019/10/19(土)15:58 ID:g7gJ/kc1(1) AAS
exe でかいな・・・
15: 2019/10/19(土)19:06 ID:VYVT60v2(1) AAS
う、うん…
16: 2019/10/19(土)19:56 ID:N1S9xfvx(1) AAS
2MBは静的リンクされてる実行ファイルなら普通よ
C系のリンカーの出力だとままある
動的リンクされてDLLとかアセンブリとかSOをロードする実行ファイルとは違う
ロードが速いはずというメリットもある
17: 2019/10/19(土)22:13 ID:x3sKZMaG(1) AAS
せやな
この特性でインスタンスの起動が早くてクラウドだと重宝するね
反面WASMとかだと辛いという話は聞いている
18: 2019/10/20(日)10:01 ID:Xl2t0ZNf(1) AAS
そもそもC/C++自体がすでに第一選択の言語じゃなくて、応答性やパフォーマンスの問題で消去法で選ばれる言語だし、
Goはそれで弾かれる側の言語なんで無理無理

Goが選択肢に入るような要件ならC++は選択肢に入らないし、逆もまた然り
19: 2019/10/20(日)10:16 ID:kaRRw6/p(1/8) AAS
しかし、C++は他に選択肢が無いというよりアセンブラより生産性が高いという消去法で選択される言語
C++よりも生産性が高いと思う人間、例えばGoogleとか俺にとっては消去法での乗り換えが充分に考えられる
20: 2019/10/20(日)10:22 ID:kaRRw6/p(2/8) AAS
あ、もうちょい書き足りなかった
つまり、ベターなアセンブラの地位をC/C++から奪おうという狙いの言語、という位置付けだと考えるよ
1-
あと 898 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.297s*