2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

Go language part 2

1 ::2017/11/11(土) 19:25:26.19 ID:X8lWnCzG.net
Goについて扱うスレッドです。
GoはGoogleによって開発された言語です。

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

日本語訳
http://golang.jp

※前スレ
Go language part 1
http://mevius.5ch.net/test/read.cgi/tech/1381374291/

953 :デフォルトの名無しさん:2019/09/16(月) 17:56:13.43 ID:1T7dcyJv.net
外から来るものと、内から行くものを分離して管理したいと考えるのは、池沼と呼ばれるほどの馬鹿な考えなのか?

954 :デフォルトの名無しさん:2019/09/16(月) 18:04:06.82 ID:Zn9wpmWA.net
Go Modules 使わへんの?

955 :デフォルトの名無しさん:2019/09/16(月) 18:17:36.13 ID:bz+49ZQ6.net
Goに入りてはGoに従え

956 :デフォルトの名無しさん:2019/09/16(月) 18:58:40.57 ID:1T7dcyJv.net
>>954
おっ、これか!かなり新しい機能なんだね

957 :デフォルトの名無しさん:2019/09/18(水) 16:39:28.43 ID:eGDamTSl.net
if err != nil書くのに疲れた!

958 :デフォルトの名無しさん:2019/09/18(水) 18:10:07.67 ID:p1NtGLAE.net
普段からシェルスクリプトとC書いてるから
毎回エラーチェックするのは特に違和感なかったな
他の言語の人からしたらtryやbeginで囲ませろってなるのはわかる

959 :デフォルトの名無しさん:2019/09/18(水) 20:21:01.19 ID:f0xu4jQt.net
なんでもかんでもthrowしてくるJavaとかに嫌気をさしてたんで、Goは結構気に入ってるJava歴20年長な俺
catchの羅列はもうお腹いっぱい

960 :デフォルトの名無しさん:2019/09/18(水) 23:16:25.02 ID:6T+8t/8R.net
ハゲドゥ

961 :デフォルトの名無しさん:2019/09/19(木) 08:20:30.03 ID:dPEIZtBn.net
Goに入りてはGoに従え

962 :デフォルトの名無しさん:2019/09/19(木) 08:50:40.05 ID:JkAL/VJR.net
>>954
新しい機能すぎて、まだVSCodeのプラグインが部分的にバグるという罠
デバッグつきでは動くのに、何故かデバッグなしで起動できん現象

963 :デフォルトの名無しさん:2019/09/19(木) 08:55:16.81 ID:JkAL/VJR.net
パッケージのサイト名をexample.comから変えようと思ったんだけど、Gorename使ったことないんでよくわからない
どこのwebサイト読むと分かりやすい?
VSCodeでりふぁくた

964 :デフォルトの名無しさん:2019/09/29(日) 23:06:03.54 ID:3kb1gpZy.net
vim-goはマージ版gocode使ってるそうでVimで補完プラグインを探してたところ
govimがよさげだった

965 :デフォルトの名無しさん:2019/10/05(土) 10:25:12.10 ID:rY1OpV0v.net
tryその後どうなのかねぇ

966 :デフォルトの名無しさん:2019/10/05(土) 17:08:36.14 ID:NruIZMq0.net
どんなんだっけかな?全く困らんから別に要らんけど
Javaカスみたいなのはやめてほしいな〜

967 :デフォルトの名無しさん:2019/10/05(土) 18:48:13.08 ID:9nB6oJh+.net
みんなのgo買ったけど初心者向けじゃなくて損した

968 :デフォルトの名無しさん:2019/10/05(土) 20:34:53.19 ID:w+56Q5Xl.net
tryリジェクト以来、議論がトーンダウンしちゃったのかな
結局、if err != nil でいいじゃん的な

969 :デフォルトの名無しさん:2019/10/07(月) 00:24:36.00 ID:yJRxiL33.net
タプルが型でないのが問題

970 :デフォルトの名無しさん:2019/10/08(火) 18:57:02.45 ID:EDowWias.net
プログラミング初心者です。
N回同じ文字列を出力するにはどうすればいいのでしょうか?

971 :デフォルトの名無しさん:2019/10/08(火) 19:05:10.52 ID:gX5kmLB9.net
fmt.Println(strings.Repeat("Hello", N))

972 :デフォルトの名無しさん:2019/10/08(火) 19:07:10.80 ID:J68M6wrj.net
詳しい解説サンクス

973 :デフォルトの名無しさん:2019/10/08(火) 19:45:44.42 ID:EDowWias.net
>>971
ありがとうございます!

974 :デフォルトの名無しさん:2019/10/13(日) 16:53:19.74 ID:f6QHKDSD.net
go modules で GOPATH 以外にプロジェクト置いてるんだけど、godoc -http=6060とドキュメントを確認しようとしても出てこない
と探すとissues#26827がクローズしてないからまだmodulesには対応してないのか
メンドクセ

975 :デフォルトの名無しさん:2019/10/13(日) 18:53:07.17 ID:f6QHKDSD.net
issues読んでみたら1.13試してみてという話があったけど、
1.13入れてみたらgodocのインストールがうまくいかねー

976 :デフォルトの名無しさん:2019/10/14(月) 10:30:00.46 ID:Sxli2RO4.net
code.google.com/p/go.tools/cmd/godoc から入らなかったんで、
golang.com/x/tools/cmd/godoc から入れたけど、やっぱりmodulesなソースはパッケージの一覧に出ない
いちいちgithubにプッシュしてgodoc.orgで見てる…

977 ::2019/10/14(Mon) 10:44:28 ID:Sxli2RO4.net
modulesは見限って$GOPATH/srcで開発するしかないのか?

978 ::2019/10/16(Wed) 21:25:43 ID:mOka02DZ.net
うちとこJava/C#が主力な会社
面白そうだから布教してみようと思ったんだけど、結局C言語からの直系なだけで、Java以降とは似て非なるものだから布教は無理なんだと、よくわかった

あいつら新人類は実体とポインタにまみれたC言語の素養がないから、うっかりと参照を代入する気楽さで構造体の実体をコピーして操作する感じのミス連発

C言語の経験なしにも関わらず、苦労せずにGo言語に慣れたって人いる?
そして、今さらポインタと実体を残したgoogleの意図も良くわからない。参照でよくね?

979 ::2019/10/16(Wed) 22:53:56 ID:cnP9tzc/.net
ただの慣れじゃねC#の構造体も値型だし
値型の方が有利な場合がある
例えば構造体のでかい配列を作る場合は値型の方が一気にメモリ確保するから速いはず

980 ::2019/10/16(Wed) 23:11:13 ID:EI1oGh2h.net
>>978
回り見てるとスクリプト言語出身の人はGo移行についてこれてない
Cでそれなりの規模のアプリ書いたことがある人がジワジワと良さを認識してる(すぐに良さがわからないのは共通してる)
C++出身の人はRustを気に入ってるが

981 ::2019/10/16(Wed) 23:48:28 ID:mOka02DZ.net
ポインタと実体という概念がどうもしっくりと来ないみたい
Java以降だとプリミティブ以外は全部インスタンスの参照で統一されていてシンプルになってるから
そこいらのハードルが新規参入の障壁になってる可能性は高いんじゃないかなとか感じてる

しかし惜しいと思うのは、実体とポインタが混在しえるコンセプト
Cからの派生だからといって実体としてのインスタンス化って、本当に必要だったのかな?
&とか*なんて廃止して、全てはポインタの言い換えである参照を扱うというJavaとかのアイデアは多重間接参照(ポインタへのポインタ)が扱いづらくなる一方で概念的な単純さをもたらしてくれる
ぶっちゃけポインタへのポインタなんて、普通はそんなに使うこと無いから

参照を採用していたら、レシーバーはポインタで記述とか、実体でのセレクタでポインタレシーバーも呼び出せるとかイミフな仕様もスッキリとしたんじゃないかと
多分、ポインタを残したことには深慮遠望があるんだろうけど、使っていてイライラしてくる

982 ::2019/10/17(Thu) 00:01:47 ID:wMsZ+t6y.net
具体的には構造体のスライスを使うために構造体ポインタのスライスを書くのがイライラ
でもポインタにしないとrangeでコピーされちゃうから
これって実はエレガントな書き方があったりする?

983 ::2019/10/17(Thu) 00:05:09 ID:wphaTNNp.net
まあ確かにその辺は混乱する
ローカル変数の実体のポインタをリターンするとか
C脳ならありえない

984 ::2019/10/17(Thu) 00:16:29 ID:tO9KeanL.net
Goは全然気持ち良いけどDartの酷さがやばい
あれはスクリプト言語出の人らだと大丈夫なんか?

985 ::2019/10/17(Thu) 00:18:24 ID:wMsZ+t6y.net
>>979
構造体のデカイ配列ったって、マーシャリングして外部DLLに渡すとか極特殊な用途でしか使わなくない?

986 :デフォルトの名無しさん:2019/10/17(木) 00:53:17.22 ID:wMsZ+t6y.net
Goは確かに気持ち良いね、テストからカバレッジ、マップにスライス、ゴルーチンとチャネル
(でも気持ちよさの基準がCなのは否めない)
interfaceとか目から鱗だった。元ネタはなんだろ?

987 :デフォルトの名無しさん:2019/10/17(Thu) 17:11:40 ID:TwA5RghT.net
前は動いてたのに
run も build も

package main: no Go files in hogehoge とか
can't load package: package main: no Go files in hogehoge とか
出るようになって
ハマった

ソースファイル名を _fugaufa.go みたいに _ で始まってたらあかんの?
時間還せ

988 :デフォルトの名無しさん:2019/10/17(Thu) 17:12:22 ID:TwA5RghT.net
>>986
>気持ち良い

ガベコレとゴルーチン以外で何があるんです?

989 :デフォルトの名無しさん:2019/10/17(木) 19:03:27.04 ID:3pHAMjHI.net
var は気持ち悪い

990 ::2019/10/17(Thu) 19:32:11 ID:Fnsxe4OK.net
>>987
https://golang.org/pkg/go/build/#Context.Import

In the directory containing the package, .go, .c, .h, and .s files are
considered part of the package except for:

- .go files in package documentation
- files starting with _ or . (likely editor temporary files)
- files with build constraints not satisfied by the context

991 ::2019/10/17(Thu) 19:32:31 ID:1/NIhUk4.net
>>989
言われてみれば、varって昔のBASICのlet並みに要らない子だね

992 ::2019/10/17(Thu) 20:40:18 ID:fUTf6AOQ.net
varはバーカよけ

993 ::2019/10/17(Thu) 20:40:53 ID:tO9KeanL.net
トップレベルの変数どうやって宣言すんだ?

994 :デフォルトの名無しさん:2019/10/17(木) 20:46:45.50 ID:fUTf6AOQ.net
普通にそのまま

995 :デフォルトの名無しさん:2019/10/17(木) 21:25:40.03 ID:wMsZ+t6y.net
変数名 型
だけでも、構文として破綻しているようには見えないもんな。C言語もそうだし
当然にvar{}も要らんし
あれ、func も不要じゃね?
なにか必要である理由ってあったかな?

996 :デフォルトの名無しさん:2019/10/17(木) 21:27:23.25 ID:wMsZ+t6y.net
無名関数作るとき用くらい?

997 :デフォルトの名無しさん:2019/10/17(木) 21:37:21.35 ID:wMsZ+t6y.net
次スレ作ります

998 :デフォルトの名無しさん:2019/10/17(木) 21:38:38.42 ID:wMsZ+t6y.net
Go language part 3
https://mevius.5ch.net/test/read.cgi/tech/1571315884/

999 :デフォルトの名無しさん:2019/10/17(木) 21:42:09.40 ID:su/chz7m.net
構文解析が楽とかだった気が

最初の方のトークンでどの構文(変数定義とか関数定義とか)なのかが分かったほうが
後の方のトークンでやっと分かるより楽

1000 :デフォルトの名無しさん:2019/10/17(木) 21:56:16.73 ID:wMsZ+t6y.net
んー、:=で型推測をぶちこんでくるアグレッシブさなのに?1000ならIsNil()追加

1001 :2ch.net投稿限界:Over 1000 Thread
2ch.netからのレス数が1000に到達しました。

1002 :2ch.net投稿限界:Over 1000 Thread
2ch.netからのレス数が1000に到達しました。

総レス数 1002
254 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★