■ このスレッドは過去ログ倉庫に格納されています
Go language part 1
- 1 :デフォルトの名無しさん:2013/10/10(木) 12:04:51.78 .net
- Goについて扱うスレッドです。
GoはGoogleによって開発された言語です。
- 2 :デフォルトの名無しさん:2013/10/10(木) 12:06:28.37 .net
- 公式ドキュメント
http://golang.org/doc/
日本語訳
http://golang.jp
- 3 :デフォルトの名無しさん:2013/10/10(木) 12:07:24.16 .net
- おつおつ
早速だけどDartとはどう違うの?
- 4 :デフォルトの名無しさん:2013/10/10(木) 21:57:12.48 .net
- 1じゃなくて既にdat落ちしたスレがあったはず
- 5 :デフォルトの名無しさん:2013/10/11(金) 03:38:07.23 .net
- go to the jukai
- 6 :デフォルトの名無しさん:2013/10/11(金) 18:13:03.60 .net
- このスレッドは天才チンパンジー「アイちゃん」が
言語訓練のために立てたものです。
アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。
京都大学霊長類研究所
- 7 :デフォルトの名無しさん:2013/10/12(土) 20:03:04.02 .net
- test
- 8 :デフォルトの名無しさん:2013/10/12(土) 20:41:16.44 .net
- SDLとかQtとかGTKがしっかり使えるライブラリが出たら流行りそう
- 9 :デフォルトの名無しさん:2013/10/13(日) 19:51:55.28 .net
- golangの有様だよ!
- 10 :デフォルトの名無しさん:2013/10/14(月) 03:46:46.20 .net
- Go の宿題片付けます
http://toro.2ch.net/test/read.cgi/tech/1257968644/
- 11 :デフォルトの名無しさん:2013/10/14(月) 03:47:43.24 .net
- GoがGoogleによって開発されたとか痛すぎだろ
- 12 :デフォルトの名無しさん:2013/10/14(月) 21:29:42.09 .net
- おれが日本Golang界の神になる
- 13 :デフォルトの名無しさん:2013/10/18(金) 20:13:25.31 .net
- import cycle not allowed ってなんだ?
- 14 :デフォルトの名無しさん:2013/10/18(金) 20:22:22.49 .net
- A が B をインポートして B が A をインポートするアレじゃない? 循環インポート
- 15 :デフォルトの名無しさん:2013/10/26(土) 12:02:28.85 .net
- 未使用変数やインポートでコンパイルエラーになるのはビビる
ライブラリ周りが整ったら使ってみたいな
- 16 :デフォルトの名無しさん:2013/10/26(土) 12:44:50.43 .net
- 循環インポートがダメとか嫌だなあ
- 17 :デフォルトの名無しさん:2013/10/26(土) 13:37:33.48 .net
- 枯れてたり流行ってる言語ならスレも盛り上がるが
Goは新しいし情報があまり出回ってないっていうものあって
ブログとかSNSとかスライドとか発表会で発表したほうが名前が売れるから2ちゃんじゃ盛り上がらないだろうな
情報に精通してる人ならここも見てるはずなんだけどね
- 18 :デフォルトの名無しさん:2013/10/26(土) 14:04:00.67 .net
- 糸冬
---------------
制作・著作 NHK
- 19 :デフォルトの名無しさん:2013/10/27(日) 00:14:36.66 .net
- 例の10%の自由開発時間で作った成果物だから
あんまり積極的に開発継続しないんじゃないの?
- 20 :デフォルトの名無しさん:2013/10/27(日) 11:11:10.03 .net
- 儲かるビジネス(になれば)が出来ればすぐ本気出すよGは
- 21 :デフォルトの名無しさん:2013/10/27(日) 19:42:25.43 .net
- でもすぐ投げ出すけどなGは
- 22 :デフォルトの名無しさん:2013/10/28(月) 11:34:18.97 .net
- >>1
昔あったからpart1ではないな
2か3くらい
- 23 :デフォルトの名無しさん:2013/10/29(火) 06:25:30.21 .net
- Gさいきんおかしいから距離置きたい
- 24 :デフォルトの名無しさん:2013/11/04(月) 17:48:37.72 .net
- パッと見、for文すらヘンテコな記号がいっぱいでてきてロクに読めない
もうちょっと分かりやすくしてくれよ
こんな感じで書ける様に
for a = 0 while a < 100 step a++ do {
...
}
foreach a in 0..100 do {
...
}
- 25 :デフォルトの名無しさん:2013/11/04(月) 17:52:22.32 .net
- むしろCっぽくてわかりやすいじゃん
- 26 :デフォルトの名無しさん:2013/11/07(木) 01:02:29.66 .net
- D言語スレはちょくちょくレスあるのになんでGoはこんな過疎なの
- 27 :デフォルトの名無しさん:2013/11/09(土) 19:46:10.60 .net
- リフレクションって構造体メンバ関数自体を値として取ること出来んの?
[key] = func
って感じに使いたいんだけど
- 28 :デフォルトの名無しさん:2013/11/10(日) 01:06:25.73 .net
- ValueのMethodByNameかMethodじゃ駄目か?
関数そのものじゃ無いけどCallで実行できる
- 29 :デフォルトの名無しさん:2013/11/10(日) 12:21:03.86 .net
- とりあえずGoの使いどころがわからない
- 30 :デフォルトの名無しさん:2013/11/10(日) 18:13:50.80 .net
- ゴルーチンでお手軽マルチコアプログラミング
- 31 :デフォルトの名無しさん:2013/11/10(日) 18:50:31.27 .net
- >>29
大規模開発だな。
言語仕様的に、別人が作ってしまって手が付けられないライブラリーでも
型がinterfaceに対応してないから、
委譲用のコード書かなきゃいけないとか、
ポインターに委譲するのに関数から同じ名前の関数に引き数を
渡す処理を書くとかしなくて済むようになってる。
- 32 :デフォルトの名無しさん:2013/11/12(火) 22:00:26.99 .net
- 俺は神の一手になれない
- 33 :デフォルトの名無しさん:2013/11/24(日) 15:44:05.14 .net
- GoSFML2のサンプルをwindowsでコンパイルしたのですが
黒い窓が出てきてしまいます
オプションか何かで消すことは出来ますか?
また、そのようなオプションが無い場合は、何か他の手段で消すことは出来ますか?
- 34 :33:2013/11/24(日) 16:10:52.86 .net
- 自己解決しました
go build -ldflags "-H windowsgui"
で出来ました
- 35 :デフォルトの名無しさん:2013/12/02(月) 10:47:43.38 .net
- Goのリファレンスドキュメントをネットのない環境でも参照できるよう、ローカルにダウンロードしておきたい。
でもGoのSDKに入っているドキュメントは、golang.orgに繋がることが前提のようだった。
リファレンスをローカルに落とす方法ってない?(wgetだとリンクが・・・)
- 36 :デフォルトの名無しさん:2013/12/02(月) 11:28:38.41 .net
- 自己レス
>>35
godoc -http :6060 &
open http://localhost:6060/
でいけた。ちょっとめんどいけど、まあいいや。
- 37 :デフォルトの名無しさん:2013/12/03(火) 22:24:45.52 .net
- >>36
インストールしたサードパーティ製ライブラリのドキュメントも見れるから本家より便利
- 38 :デフォルトの名無しさん:2013/12/10(火) 11:52:24.39 .net
- main.go:5:2: cannot find package "http" in any of:
何これ?標準でhttpパッケージ有るし
GorootのPathも通してんだけど
- 39 :デフォルトの名無しさん:2013/12/10(火) 12:01:53.25 .net
- よく見たらhttp無かった…
- 40 :デフォルトの名無しさん:2013/12/10(火) 13:02:12.00 .net
- これ全く触った事無かったら難しいな〜
まさかGitのインスコで失敗してたとは
- 41 :デフォルトの名無しさん:2013/12/10(火) 16:32:38.23 .net
- import "net/http"の間違いでは
- 42 :デフォルトの名無しさん:2013/12/24(火) 21:37:47.88 .net
- http://coin.nikkeibp.co.jp/coin/itpro/hansoku/nsw201402_1.html
>C言語代替で「Go」の時代が来る
ついに俺たちの時代が来るのか・・・!!!!!
- 43 :デフォルトの名無しさん:2014/01/01(水) 01:50:29.98 .net
- て
- 44 :デフォルトの名無しさん:2014/01/13(月) 12:16:17.91 .net
- 動的言語だけやってた僕が、38日間Go言語を書いて学んだこと - Qiita [キータ]
http://qiita.com/suin/items/22662f43b6a6e8728798
- 45 :デフォルトの名無しさん:2014/01/18(土) 23:16:04.50 .net
- 型宣言面倒臭い、と一度も思ったことがないな
- 46 :デフォルトの名無しさん:2014/01/20(月) 06:13:09.40 .net
- go
http://unkar.org/r/tech/1257920595/ 2009年に華々しく初登場。3日で消化
Go part2
http://unkar.org/r/tech/1258183436/ まだまだ衰えず10日で消化
Go part3
http://unkar.org/r/tech/1259072043/ だいぶ落ち着いてきた3ヶ月で消化
Go part4
http://unkar.org/r/tech/1265620273/ ほぼ1年で消化。すっかり普通のスレに。
Go part5
http://unkar.org/r/tech/1327216227/ 17res。オワコン
Go 総合スレ
http://unkar.org/r/tech/1342535690 再建。しなかった。4resでアイちゃんフィニッシュ
Go の宿題片付けます
http://toro.2ch.net/test/read.cgi/tech/1257968644/ part1の頃立った残骸。
そして2013/10/10。何もなかったようにpart1で立て直す。
何も知らない情弱共が何も知らない顔で書き込み
結局即レスは回避したようだ。おめでとう。
- 47 :デフォルトの名無しさん:2014/01/20(月) 06:15:06.80 .net
- ×即レス
◯即死
- 48 :デフォルトの名無しさん:2014/01/20(月) 06:28:30.39 .net
- Go 総合スレ
http://unkar.org/r/tech/1342535690 そもそも何が総合なのかわからなかった
知らないふりで書き込んで失敗した例
- 49 :デフォルトの名無しさん:2014/01/20(月) 09:45:34.40 .net
- ここだけじゃなくて色んなスレ見てるけど、2ch全体が下火になってきてる
- 50 :デフォルトの名無しさん:2014/01/27(月) 13:00:41.91 .net
- 今年入ってからちょっと触ってるけど、これ結構いい感じだと思う
これが一番って感じにはならないかもしれないけどいくつか修得するうちの一つとしては薦められるようにはなってほしい
- 51 :デフォルトの名無しさん:2014/01/27(月) 13:15:20.02 .net
- パッケージ次第で凄い可能性があると思う
ここがプロの仕事で素人はインポートしてチョロ書きするだけで良い
- 52 :デフォルトの名無しさん:2014/01/28(火) 20:05:28.35 .net
- golang.jp全く更新されないね
- 53 :デフォルトの名無しさん:2014/02/01(土) 16:33:40.82 .net
- os.NewFileってどうやって使うかわかる人いる?
- 54 :デフォルトの名無しさん:2014/02/02(日) 04:01:00.42 .net
- syscallパッケージとかで得たfdがあるときに
第一引数にそれ、第二引数に保存先パスを渡して使うみたい
使ったことないけど
- 55 :デフォルトの名無しさん:2014/02/02(日) 14:58:49.44 .net
- >>53
http://stackoverflow.com/questions/17605588/correct-usage-of-os-newfile-in-go
既にある、os.File 型でないファイルを、os.File 型でラップするための低レベル関数で、一般ユーザーの
利用を想定したものではないそうな。
- 56 :デフォルトの名無しさん:2014/02/03(月) 00:37:35.80 .net
- サンクス
わからないままでも気にならない性格になりたい
- 57 :デフォルトの名無しさん:2014/02/07(金) 15:41:24.67 .net
- たまにループの中で変数宣言して使ってるのを見かけるのですが
ループの度に初期化されて処理速度に影響がないのだろうかと
測ってみると殆ど影響がないようです
ループ内だけで使う物ならば、スコープ的にも積極的に
ループ内で宣言した方が良いのでしょうか?
- 58 :デフォルトの名無しさん:2014/02/07(金) 17:16:57.85 .net
- むしろループ外で使わない変数は内部で宣言した方が速い
- 59 :デフォルトの名無しさん:2014/02/07(金) 19:04:19.54 .net
- > ループの度に初期化されて処理速度に影響がないのだろうかと
決めつけず測定して確認したのは間違ってないけど、もうちょっとマクロに、
なんというかいちいち気にするまでもないムダをスルーする感覚を....
難しいかなぁ。
- 60 :デフォルトの名無しさん:2014/02/07(金) 23:37:47.28 .net
- その感覚難しい
今もまたIF ElseとSwich Caseでどっちが速いのか気になってやっちゃうし
AppendのCapは指定しとく方が速いのか気になってやっちゃう
所詮素人が趣味で作ってるレベルなのでご容赦を
- 61 :デフォルトの名無しさん:2014/02/14(金) 17:23:52.61 .net
- もうちょっと情報が欲しいな
基本的な事以外は全部手探りだから時間が掛かる
例えば、フィールドにスライスがある構造体で
構造体自体のスライスを作って増やしつつ
更にフィールドのスライスも増やす、とかさらっと書けない
試行錯誤で何とか出来たけど…
- 62 :デフォルトの名無しさん:2014/02/15(土) 12:25:15.98 .net
- goのネーミングって日本語の五から来てるの?
C(四)の次のgo(五)という
- 63 :デフォルトの名無しさん:2014/02/15(土) 17:30:52.59 .net
- >>60
>AppendのCapは指定しとく方が速いのか
これ要素追加が1万程度(Append1万回)なら
Cap指定しない方が僅かに速いか殆ど変わらない
どういう理屈でそうなんのか分からんけど
- 64 :デフォルトの名無しさん:2014/02/21(金) 12:13:52.04 .net
- >>63
キャッシュが効いてるだけ
事前に要素数が分かっていればCap指定しないと値のコピーが繰り返されるので遅い
- 65 :デフォルトの名無しさん:2014/03/03(月) 11:19:34.46 .net
- BreakeがSwichに効くのやめて欲しいわ
折角省略出来るようにしたんだから書いても同じ動作になるなら意味無いでしょ
- 66 :デフォルトの名無しさん:2014/03/09(日) 00:47:40.25 .net
- わかる。for switch case ときてbreakしたらforから抜けるようにして欲しい
- 67 :デフォルトの名無しさん:2014/03/27(木) 00:35:35.75 ID:NajF0K82.net
- 初心者だけどstrings.Reader をio.Reader として渡せるって仕様としてどうなの
継承も何もしてないけどコンパイル時にチェックされてるの?
- 68 :デフォルトの名無しさん:2014/03/27(木) 01:03:43.90 ID:jrFRKAI8.net
- 別に結構な言語でioの継承なんだが、なんか問題ある?
- 69 :デフォルトの名無しさん:2014/03/27(木) 01:23:58.48 ID:NajF0K82.net
- string.Readerはio.Readerを継承してるの?
io.Readerの条件を満たしてるとは書いてると思ったけど
- 70 :デフォルトの名無しさん:2014/03/27(木) 01:44:26.20 ID:NajF0K82.net
- 突っかかってるようで悪かった
継承がない言語でダックタイピングできる、つまり条件を満たしてるとどうやって確信できるかわからなかったんだ
標準ライブラリを読んでるんだけど型アサーションしてないから不安になってるだけ
- 71 :デフォルトの名無しさん:2014/03/27(木) 05:15:32.21 ID:syLidNhE.net
- ある型がインタフェースを実装してるかは規定されてるメソッドがあるかどうかだけで決まる
Javaみたいに明示しない
ちなみにインタフェースを実装してるかどうかはコンパイル時に解決される
strings.ReaderだったらRead(p []byte) (n int, err error)を持ってることからio.Readerを実装しているといえる
もし実装できてないのにそのインタフェースに代入しようとしたらコンパイルエラー出るから試してみて
これが非明示的なのはGoの目玉の一つだから公式のドキュメントなりどっかのブログなり読んでね
- 72 :デフォルトの名無しさん:2014/03/29(土) 00:49:28.00 ID:a/9aD0gE.net
- interfaceって構造的部分型付けって事でいいんかいな
- 73 :デフォルトの名無しさん:2014/04/06(日) 16:57:33.01 ID:MCAj6vro.net
- 全ての型はInterfaceを内包している
- 74 :デフォルトの名無しさん:2014/04/21(月) 10:58:39.64 ID:zriSdqBt.net
- とりあえず、元の英語はなんだよ?
- 75 :デフォルトの名無しさん:2014/04/22(火) 00:56:19.23 ID:V38u3ZKO.net
- http://golang.org/ref/spec#Struct_types
>A field declared with a type but no explicit field name is an anonymous field, also called an embedded field or an embedding of the type in the struct.
- 76 :デフォルトの名無しさん:2014/04/22(火) 09:36:11.23 ID:xnbqoEyH.net
- じゃあ匿名フィールドにしよう(提案)
- 77 :デフォルトの名無しさん:2014/04/22(火) 12:08:13.66 ID:cWM9qn1m.net
- 無名じゃないか?
- 78 :デフォルトの名無しさん:2014/04/22(火) 19:04:17.16 ID:px+UMl9z.net
- ちょっとしたコードを書いただけでもサイズが大きくなるのなんとかならんのかな
- 79 :デフォルトの名無しさん:2014/04/22(火) 20:04:18.23 ID:cWM9qn1m.net
- 全部スタティックリンクするからだから、理由があってのことなので
- 80 :デフォルトの名無しさん:2014/05/05(月) 21:06:28.33 ID:+tyXPhHV.net
- 故に組み込みには不向きだとどっかで見たな
将来改善されるのだろうか?
- 81 :デフォルトの名無しさん:2014/05/05(月) 23:06:49.70 ID:YuCWT0mm.net
- むしろ組込み向けのほうがダイナミックリンクは避けたくないか?
Goが組込みに向いてるかどうかは別として。
- 82 :デフォルトの名無しさん:2014/05/08(木) 05:12:59.74 ID:5XLbD0ro.net
- デバッグまともに出来るIDEあんのこれ?
32Bitで開発環境統一した方がいいんかな
- 83 :デフォルトの名無しさん:2014/05/18(日) 16:17:49.47 ID:mk6giDMC.net
- Oracleとのアレでjavaやめてこっちくることはないかな
- 84 :デフォルトの名無しさん:2014/05/23(金) 23:43:10.01 ID:kqkMywsW.net
- むしろdartじゃないか
- 85 :デフォルトの名無しさん:2014/05/24(土) 01:08:21.25 ID:uWBH7T6t.net
- あれが、Googleが作った
プログラミング言語だよ。
ほらみて、ゴラン
- 86 :デフォルトの名無しさん:2014/05/24(土) 13:58:01.94 ID:35dvvibx.net
- ファイルサイズが大きくなるのでこんなのが流行るのは困る
大手企業のプログラマーなら時間もあるし仕事で試しに導入するなんてことも余裕だけど
中小だとそんな余裕はない
- 87 :デフォルトの名無しさん:2014/05/24(土) 14:07:55.34 ID:hlo3j/US.net
- ゴラン高原
- 88 :デフォルトの名無しさん:2014/05/25(日) 11:15:27.02 ID:bZpUSdHJ.net
- goでファイルサイズが大きくなって困るのとか今時組み込みぐらいだろ。
- 89 :デフォルトの名無しさん:2014/06/06(金) 22:59:44.76 ID:a9mGSAin.net
- C++は自分で一から書く文には問題ないけど、書き方が無茶苦茶な人から引き継いだ時が悲惨だった
そういうのがマシになりそうなコンパイラ言語だからこれ普及して欲しいんだけど、周りで扱ってる人ほとんどいないんだよなあ
- 90 :デフォルトの名無しさん:2014/06/06(金) 23:14:29.91 ID:fJT63IUR.net
- リーディングコード読んでからGo書くとなるほどと思う事があった
- 91 :デフォルトの名無しさん:2014/06/06(金) 23:15:21.48 ID:fJT63IUR.net
- リーダブルコードだったぉ
- 92 :デフォルトの名無しさん:2014/06/07(土) 00:31:14.08 ID:mUxFP0h6.net
- >>91
どんまい
- 93 :デフォルトの名無しさん:2014/06/20(金) 14:52:51.87 ID:ltBAGUPz.net
- go-gtk全然進んでないじゃん
やる気あんのかよ
- 94 :デフォルトの名無しさん:2014/06/20(金) 22:23:23.60 ID:QMkHcad5.net
- windows環境でのGUIライブラリがもっと発展すれば普及もしそうなのにね
コンパイラ言語だし、仕様とかも結構気に入ってるからもっと頑張って欲しいんだけどなあ
- 95 :デフォルトの名無しさん:2014/06/21(土) 00:05:57.28 ID:UJNwDYla.net
- windows環境ならWalk使えば良いんだけど、
リファレンスやチュートリアルが無いのが広まらない原因なのかなぁ。
サンプルは豊富なので機能は充分だと思うが。
- 96 :デフォルトの名無しさん:2014/06/21(土) 01:32:59.17 ID:5/17O7zj.net
- クロスプラットフォームで動く定番のguiを我々は求めている
- 97 :デフォルトの名無しさん:2014/06/21(土) 01:55:32.09 ID:2OQISpPs.net
- walk知らんかったけどmain見て萎えた
これをcoolって言っちゃってるひとって・・・
- 98 :デフォルトの名無しさん:2014/06/21(土) 14:08:11.15 ID:p8O6EEji.net
- お、AndroidにGoサポート来る?
- 99 :デフォルトの名無しさん:2014/06/21(土) 20:56:12.02 ID:tQVBpUxD.net
- Goでandroid開発できるなら覚えてもいい
- 100 :デフォルトの名無しさん:2014/06/21(土) 21:49:23.76 ID:53WiPR/D.net
- >>96
ぼくも(´・ω・`)
もっとハッテンしてほしいお
- 101 :デフォルトの名無しさん:2014/06/21(土) 23:52:58.32 ID:kf4Mlylv.net
- >>98
煽りじゃなくソース教えて。
今更だけど go ってほんと検索しずらい
- 102 :デフォルトの名無しさん:2014/06/22(日) 07:17:02.56 ID:41dfNV8s.net
- https://docs.google.com/document/d/1N3XyVkAP8nmWjASz8L_OjjnjVKxgeVBjIsTr5qIUcA4
Javaを置き換えるわけじゃなくて、Android NDKをGoで使えるようにするみたい
ゲームみたいなものならGoだけで書けるようになるのかな
- 103 :デフォルトの名無しさん:2014/06/22(日) 12:52:07.50 ID:m/E1htcB.net
- >>97
kwsk
- 104 :デフォルトの名無しさん:2014/06/24(火) 21:18:13.43 ID:UpeRHjTe.net
- 人がいないからあんち米すらでてこな
- 105 :デフォルトの名無しさん:2014/06/24(火) 22:05:30.11 ID:3jg/jifd.net
- Go界隈で日本語コミュニティ必要ないからな
みんな英語できるだろうし
- 106 :デフォルトの名無しさん:2014/06/25(水) 09:55:43.67 ID:Z9ZnqfJz.net
- コード見たら何やってるか大凡分かるって素晴らしいよね
- 107 :デフォルトの名無しさん:2014/07/04(金) 23:14:50.75 ID:4r2s5G7/.net
- >>88 Androidって組み込みなんだけど。
- 108 :デフォルトの名無しさん:2014/07/05(土) 07:54:31.48 ID:fKreMhzC.net
- >>107
アプリは組み込むでは無い
- 109 :デフォルトの名無しさん:2014/07/05(土) 14:32:15.90 ID:pTDYhgjU.net
- >>108 環境的には組み込みソフトと同じだよ。
Hello World が、1MB何て許せるわけが無い。
基本ライブラリは端末組み込みで持つだろうから、Androidが標準装備すればもう少し小さくなるだろうが、今度はOSがでかくなる。
- 110 :デフォルトの名無しさん:2014/07/05(土) 14:41:39.27 ID:t0Gvg/Rs.net
- 気持ちはわからなくもないけどねえ
16Gや32Gストレージなんて当たり前なところで、OSが多少増えてどうこうと言われてもさすがに
- 111 :デフォルトの名無しさん:2014/07/05(土) 15:43:21.74 ID:pTDYhgjU.net
- >>110 全てのアプリが何倍かの大きさになったら困るだろ?一つの話じゃ無いんだよ。
間、そんな事には成らないだろうがどのくらい大きくなるか未知数、今判断には時期尚早。
基本的には論外な大きさは悪
- 112 :デフォルトの名無しさん:2014/07/05(土) 16:47:01.80 ID:oA33QTWa.net
- Androidでいろいろ作ってて感じるのは
今や主メモリやストレージを埋めるのは映像や音声のデータだっていう現実
コードが占める割合はかなり少なくなってきてる
- 113 :デフォルトの名無しさん:2014/07/05(土) 17:15:09.73 ID:5LgT0AK3.net
- Android じゃないけど、自分の Ubuntu Linux 14.04(Intel 32bit CPU版) で
PATH にある実行形式ファイル(ELF, Dynamically linked executable)を調べ
てみると、
ファイル数: 1822
合計サイズ: 356 MB
「Hello World!」を表示するだけのプログラムサイズは(両方ともstrip済)、
C言語: 5532 B
Go言語: 1065264 B
これで単純な外挿計算を行うと 67 GB にもなるけど、そこまで膨れ上がる
ことはないでしょうね。ただ、「shared object ってステキ!」って感じはするw
- 114 :デフォルトの名無しさん:2014/07/05(土) 18:03:15.49 ID:cZxdkROZ.net
- 128GBしか無いからこんなのに無駄に容量使いたくない
- 115 :デフォルトの名無しさん:2014/07/05(土) 19:01:05.54 ID:9Der4WO0.net
- Hello Worldから線形的に増えるわけじゃないけどね
- 116 :デフォルトの名無しさん:2014/07/05(土) 19:14:06.90 ID:oA33QTWa.net
- >>113
各実行ファイルにgo用のランタイムがくっつくと考えると
356[MB] + 1822×(1065264[B] - 5532[B]) = 2.2[GB]じゃね?
実際はもうちょっと増えると思うが
- 117 :デフォルトの名無しさん:2014/07/05(土) 20:55:34.60 ID:5LgT0AK3.net
- gccgo(v4.9) を使ってコンパイルしてみると 20KB 程度に納まった。
許容範囲?
- 118 :デフォルトの名無しさん:2014/07/05(土) 21:42:25.12 ID:tB+Rxz8c.net
- 100行にも満たないサンプル5個作っただけで1GB超えるとかバカかよ
- 119 :デフォルトの名無しさん:2014/07/05(土) 23:28:12.02 ID:rxWIrUjL.net
- 容量減らすためだけにポータビリティ捨てたくはないかな。
Rob PikeらはPlan 9の論文で動的リンクの問題点をあげつらってたから、
たぶん今後も静的リンクから変えない気がするし。
- 120 :デフォルトの名無しさん:2014/07/06(日) 00:34:38.00 ID:uI+Octwc.net
- >>96 それってHTMLじゃないのか?
- 121 :デフォルトの名無しさん:2014/07/06(日) 08:10:08.75 ID:CKDdGv5O.net
- やっぱそうなるのか
HTMLで描画の性能が出せるようになってきたから
ネイティブウィンドウに拘る必要は少なくなったのかな
- 122 :デフォルトの名無しさん:2014/07/08(火) 13:18:21.31 ID:7GlSfkMD.net
- https://github.com/andlabs/ui
ここでも見とけよカス共
- 123 :デフォルトの名無しさん:2014/07/08(火) 13:19:55.85 ID:ISJLHJAp.net
- 宣伝うける
- 124 :デフォルトの名無しさん:2014/07/08(火) 13:58:51.40 ID:PfuPMxra.net
- おお、すげー何これ素敵
- 125 :デフォルトの名無しさん:2014/07/09(水) 12:47:50.42 ID:CPsLRvzn.net
- goが動かせるクラウドってGAEしかないよね
- 126 :デフォルトの名無しさん:2014/07/09(水) 13:53:57.91 ID:Fp2x5STj.net
- GoがExperimentalでphpがPreviewってことはGo版の正規リリースはまだまだ先か
- 127 :デフォルトの名無しさん:2014/07/09(水) 14:56:08.07 ID:SDA1RKlK.net
- goって存在価値あるのか? NaCl PNaCl で事足りるだろ。
言語を作りたいから作ったと言う自己満足だけでは?
これが有ると何が出来るようになったり,効率が良くなったりするのかな?
何がしたいの?
そういやDartも有るな。 あれはJavascriptの置き換えを狙ってるから目的がはっきりしてる。
- 128 :デフォルトの名無しさん:2014/07/09(水) 15:06:03.08 ID:V9xUyLw3.net
- >>127
まったく意味不明だぞ
GoはNaClやPNaClと競合するものじゃない
- 129 :デフォルトの名無しさん:2014/07/09(水) 15:17:14.55 ID:SDA1RKlK.net
- >>128 何がしたいの? NaClでサーバアプリも作らせたいようだけど。
- 130 :デフォルトの名無しさん:2014/07/09(水) 16:57:25.25 ID:PJoXQ8WY6
- "Google Native Client" でサーバーアプリを作らせたいっていう意味が
全くわからないんだが、ソースを教えてくれない?
- 131 :デフォルトの名無しさん:2014/07/09(水) 22:41:26.96 ID:8SChLIyJ.net
- ファイルサイズが大きい言ってるから、hello worldの実行形式をreadelfしたら使ってなさそうなシンボルがうじゃうじゃいたけど、まだいろいろ工事中なのかい?
- 132 :デフォルトの名無しさん:2014/07/16(水) 21:08:08.10 ID:YrYvz6dv.net
- 実行ファイルのサイズ見るだけで期待の新言語感が綺麗さっぱり消滅するよな
静的リンクだからで許されるサイズじゃねーだろ。
Goとは関係ないけど、JS界隈なんぞもたかだか数百数千行のJSをビルドするために
何十MBものnode_modules作るとか意味わからんし。言語のメリット投げ捨てとるわ
提言としては、今どきのプログラマ容量の感覚がおかしいので全員8ビット時代からやり直すべき
あるいは4Kとか64Kのメガデモでも作るとかな
- 133 :デフォルトの名無しさん:2014/07/16(水) 21:10:00.51 ID:ue0KWKB4.net
- >>132
さっさと去れよ
- 134 :デフォルトの名無しさん:2014/07/16(水) 21:10:33.17 ID:YrYvz6dv.net
- GoほどじゃないがRustもでかい。システムプログラミング言語としてやる気あるんかお前ら
C言語当分安泰だわ。
- 135 :デフォルトの名無しさん:2014/07/16(水) 21:26:57.08 ID:18iWZycG.net
- >>132
node.jsにモジュール上げたときも外人もクレクレ厨ばっかりだったな
firefox は勝手にメモリ使いまくって
2GB以上になったとたん固まって落ちるし
- 136 :デフォルトの名無しさん:2014/07/16(水) 21:33:51.50 ID:YrYvz6dv.net
- >>133に去れとか言われたのでもう少し粘着するよ。
ここに去年の12月のエントリがあるんだがな。
「Goのバイナリサイズは膨らみ続け、制御不能になりつつある」
Go Binary Sizes Are Growing out of Control ? Donat Studios
https://donatstudios.com/Golang-Binary-Sizes
追記がうける。これはGoが糞だとかそういう趣旨じゃない。私はGoを愛しているw
Redditでほのめかされてるように開発者が怠惰で無能と言っているわけじゃない云々w
言語の問題を指摘するためにこういう弁明をしなければならないこと自体糞だが、
恐ろしいのは、このrant以後も、バイナリサイズがさらに膨れ上がっていることだ。
設計上、思想上の欠陥があると見なすべきで
こういう明らかな問題点を見て見ぬふりする言語コミュニティに期待するかどうか。
俺はしないね。
フロッピー1枚に入らないHello Worldって何だよ。いやマジに。
- 137 :デフォルトの名無しさん:2014/07/16(水) 21:36:44.42 ID:18iWZycG.net
- exerb
- 138 :デフォルトの名無しさん:2014/07/17(木) 00:03:14.51 ID:BuVewHPc.net
- まぁ静的リンクすらわかってない奴だということはわかった
- 139 :デフォルトの名無しさん:2014/07/17(木) 06:43:50.83 ID:DnYQQN3M.net
- わかってないのおまいだわ、上面だけ読んでレスやめとけw
- 140 :デフォルトの名無しさん:2014/07/17(木) 07:10:02.53 ID:/y/RnBj0.net
- >>136
最近使ってるpecoのファイルサイズ見たら4.1MBだった。ちょっとしたツール系でこのサイズは・・・とか思ったけど、今どきメモリは4GB,8GBくらいあたりまえに載ってる時代だし、もう許すことにした
組み込みでは使えないってことだね
- 141 :デフォルトの名無しさん:2014/07/17(木) 08:38:37.24 ID:Emdyn2Mx.net
- わかってるわかってないの水掛けこそ、上っ面の駄レスだろ
おかしいところを具体的に突いてやれば、言い返せないしこのスレの質向上にもなる
- 142 :デフォルトの名無しさん:2014/07/17(木) 09:31:32.17 ID:S5pGSZlh.net
- そうだそうだ
- 143 :デフォルトの名無しさん:2014/07/17(木) 10:45:11.17 ID:h5c0LSEc.net
- 容量制限のあるクラウドとかVPSじゃ使えねえよ
- 144 :デフォルトの名無しさん:2014/07/17(木) 12:27:33.98 ID:q6z1PJAH.net
- >>140 大きいと言う事は全てにおいて時間がかかると言う事なんだぞ。 つまりあらゆる面で生産性が低くなる。
そんな言語誰が使う。
作ってる奴がヘタレだとか基本設計自体に問題が有るとかさんざん言われてる。
- 145 :デフォルトの名無しさん:2014/07/17(木) 12:35:36.25 ID:sNTaX6ES.net
- これね
http://s.kakaku.com/mag/pc/id=1676/
http://www.itmedia.co.jp/pcuser/spv/1407/17/news060.html
http://gigaz.in/1mOmuRj
- 146 :デフォルトの名無しさん:2014/07/17(木) 13:13:00.43 ID:Emdyn2Mx.net
- 誤爆?
- 147 :デフォルトの名無しさん:2014/07/17(木) 16:46:46.06 ID:MN+A29Er.net
- Go は使う側にとって何かメリットをもたらすのか?
メリットが見えずにデメリットばかりが目立つ。
作る目的がはっきりしてい無いから何年経っても出来上がらないんだよ。
Swiftと大違い。あっちは公開前からブレークしてる。
沢山のメリットが誰の目から見ても明らかにわかるからだよ。
Go の公式REPLは有るんだっけ?
- 148 :デフォルトの名無しさん:2014/07/17(木) 18:42:53.14 ID:MN+A29Er.net
- >>24 はい判りました。
for a in 0..<100 {
...
}
こんなんでました。 今注目の言語
- 149 :デフォルトの名無しさん:2014/07/17(木) 19:44:48.46 ID:S5pGSZlh.net
- Swiftですやん
- 150 :デフォルトの名無しさん:2014/07/17(木) 19:58:44.51 ID:O9NXfjPR.net
- ―┼‐ ノ / | --ヒ_/ / \ヽヽ ー―''7
`」 ┼, 二Z二 レ / /´レ' \ ―7 ̄} | ー-、 /
(__ (|フ) (__ノ _ノ ∨` ノ / / _ノ \_
─┼- / | ‐┼- | ー|―
─┼─ | \ レ /  ̄Tー / ノ -─
(二フヽ \/ _ノ (二フ\ ヽ_ノ / 、__
i';i
/__Y
||真|| /⌒彡
_ ||露|| /⌒\ /冫、 ) ・・・・・・。
\ || || ̄ ̄ ̄ ̄ ̄ ̄ ̄\ `./⌒ i ` /ゝ _,,..,,,,_
||\`~~´ (十万石) \( > ('\\ ./ ,' 3 `ヽーっ ・・・・・・。
||\|| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|| ̄\`つ ⌒ _) l ⊃ ⌒_つ
.|| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|| `'ー---‐
( 'A) ・・・。 〃∩ ∧_∧ <⌒/ヽ___
/(ヘ)ヘ ⊂⌒( ・ω・) ・・・。 <_/____/ zzzz・・・
`ヽ_っ⌒/⌒c
- 151 :デフォルトの名無しさん:2014/07/17(木) 23:26:36.96 ID:OTputfOO.net
- そのうちhello worldで1GBを超えるバイナリを生成する言語が登場する
- 152 :デフォルトの名無しさん:2014/07/18(金) 07:16:09.83 ID:NmG7h+bv.net
- googleが一番やりそうなこと
- 153 :デフォルトの名無しさん:2014/07/18(金) 08:06:18.24 ID:KrkzFLu9.net
- 最近のGoogleは自分で自分の首を絞め始めてる様に見えるな。
会社として収集がつかなくなってしまった感じ。
- 154 :デフォルトの名無しさん:2014/07/18(金) 09:03:19.13 ID:JbZ7Qo5I.net
- いや昔からこのノリだけど
小さなグループ毎に好き勝手やってる感じ
むしろ最近は昔よりまとめようとしてる
- 155 :デフォルトの名無しさん:2014/07/18(金) 12:50:52.86 ID:DOB4ifCF.net
- NaCl PNaCl > 速いスピード
Dart > Javascript の置き換え
Noop > Java VMで動く新言語、Oracleとの喧嘩用?
Go > 目的不明(サーバアプリ?)
上二つは上手くやれば美味しいものも見えるし、業界の方向性にもあっている。
Noopは保険みたいなものだろう。ユーザにとっては迷惑なだけ。
Go は美味しそうな匂いがし無い。 並列処理?他の言語より美味しいか?
- 156 :デフォルトの名無しさん:2014/07/18(金) 12:55:38.48 ID:hMlFBsak.net
- 匂いがしないなら使わなければいいんじゃない
- 157 :デフォルトの名無しさん:2014/07/18(金) 13:03:16.54 ID:xJrLNwHb.net
- googleはトラフィックに無頓着なんだよな
自社でキャリア持たないからかな
- 158 :デフォルトの名無しさん:2014/07/18(金) 14:48:11.31 ID:g/ns370x.net
- >>136 のC言語の経験がHello, world!留まりということはわかった。
- 159 :デフォルトの名無しさん:2014/07/18(金) 14:57:25.22 ID:cGkLMo0w.net
- hello worldが大きくてもそれの数百倍の大きさのプログラムをコンパイルしたら
数百倍の大きさの実行ファイルが出来るわけでは無いだろ
- 160 :デフォルトの名無しさん:2014/07/18(金) 16:25:14.51 ID:QbsI88lJ.net
- >>159
全然無い。>>136はHello, world!留まりの赤ちゃんが疳の虫でグズってるだけ
- 161 :デフォルトの名無しさん:2014/07/18(金) 22:10:34.84 ID:DOB4ifCF.net
- >>156 ユーザにとって美味しい餌が無いと言語も流行らないんだよ。
なんで三項演算子( ? : ) すら作らないんだろう。文法に無駄が多い。
// 入力値iが正の整数の場合iの2乗が、iが0以下の整数の場合0が返されるfunction
// Go
func Fx(i int) (ret int) {
if i > 0 { ret = i*i } else { ret = 0 }
return;
}
// Swift 三項演算子
func fx( i: Int ) -> Int { return i > 0 ? i*i : 0 }
// Swift 三項演算子を使わない場合。
func fx( i: Int ) -> Int {
if i > 0 { return i*i } else { return 0 }
}
- 162 :デフォルトの名無しさん:2014/07/18(金) 22:51:20.66 ID:hMlFBsak.net
- 流行らなかったら何百(何千?)とあるプログラミング言語の一つが静かに
消えていくだけ。しかし三項演算子が美味しい餌ってのはワケが判らんなw
どうしても欲しかったらこんなのでもいいんじゃない
type Any interface{}
func T(exp bool, a Any, b Any) Any {
if exp {
return a
}
return b
}
もちろん、これは三項演算子モドキにもなっていないけど。
本物の三項演算子が必要なら src/cmd/gc/lex.c に追加する
なりしてもいいし
- 163 :デフォルトの名無しさん:2014/07/18(金) 22:51:30.47 ID:Mqs0/spS.net
- 3項演算子はレガシーコードだな
うんこが現れたと言うことはGoも注目されてるのか?
- 164 :デフォルトの名無しさん:2014/07/19(土) 05:03:22.62 ID:SmxhOcgK.net
- goのほうが言語仕様的には美しくて無駄が少ないと思うけど
型についてレシーバ(メソッド)が付けられるからClassを削って構造体のみにしたって所とか、関数は複数の値を返せるから通常のtry-catchみたいな例外文法削ったりとか、intefaceの実装の自動化によるduck typingっぽい感じとか
SwiftはなんかまだObjective-Cのラッパーて感じ。
引数のラベル付とか。selectorが使える所とか。
- 165 :デフォルトの名無しさん:2014/07/19(土) 08:42:00.07 ID:JJLiNM0Q.net
- まさに>>163
ってことなんだろうな
- 166 :デフォルトの名無しさん:2014/07/19(土) 09:59:22.84 ID:yYW1nc9J.net
- とりあえずフレームワークを1つ覚えとけばいいかな
- 167 :デフォルトの名無しさん:2014/07/19(土) 13:50:20.51 ID:1hzYIwWV.net
- >>164
>例外
例外文法削ったのではなく、例外自体削ったんだろ。パフォーマンス出すためにな
例外機構が必要な言語もある。
duck typingはSwiftの設計方針に合わない。goのinterfaceは面白いけど
>引数のラベル付き
これは他言語にもあるぞ。Rubyとか
引数後少なかったり、関数名から引数が明白な場合を除いてキーワード引数はわかりやすくて良いよ。
なんつーか、SwiftよりGoのが良いって前提で話してるよな。
どっちも良い所あるんだから、優劣付けずに話せばいいのに。
- 168 :デフォルトの名無しさん:2014/07/19(土) 14:16:07.12 ID:iWE1dx4J.net
- >>161 の発言があっての話だからだろ
- 169 :デフォルトの名無しさん:2014/07/19(土) 14:19:18.94 ID:9ljzGYTI.net
- >>164 例外を削除も、複数戻り値もSwiftは採用してるよ。
言語毎に色んな特徴は有るだろうけど、使用者にどんなメリットが有るかが一番大事だろうな。
どんなターゲットを対象にしているかとか。
- 170 :デフォルトの名無しさん:2014/07/19(土) 15:05:11.74 ID:SGq+lI7M.net
- >>167,169
後の話はSwiftのスレでお願いしますね
- 171 :デフォルトの名無しさん:2014/07/19(土) 15:06:03.17 ID:9uryi8HE.net
- >>169
そうそう、だから自分がいいと思う言語を使えばいいだけ、なのに、すごい低レベルなところで煽るやつは何を考えているのかと思う、が、いちいち相手にするレベルに至っていないのでスルーしとく
- 172 :デフォルトの名無しさん:2014/07/20(日) 23:08:04.42 ID:v/W32sJs.net
- <-演算子を何て呼んでますか?
- 173 :デフォルトの名無しさん:2014/07/20(日) 23:21:11.04 ID:tRUHKzxS.net
- アロー演算子
->
<-
- 174 :デフォルトの名無しさん:2014/07/20(日) 23:43:36.57 ID:v/W32sJs.net
- >>173
そうなんだ
どうもありがとう
- 175 :デフォルトの名無しさん:2014/07/20(日) 23:45:46.75 ID:XMGxVSEA.net
- 一瞬「アフロ演算子」に見えたw
- 176 :デフォルトの名無しさん:2014/07/21(月) 16:07:42.61 ID:oivZnao6.net
- Cだとアロー演算子って呼んでたけど
Goはチャネルオペレータって呼んでるな。
- 177 :デフォルトの名無しさん:2014/07/21(月) 17:41:17.08 ID:mYM6Tgvw.net
- らむだ
- 178 :デフォルトの名無しさん:2014/07/21(月) 21:39:44.74 ID:PMvpzcGA.net
- iotaの読みはイオタでいいの?
iotaって何から来てるの?
- 179 :デフォルトの名無しさん:2014/07/21(月) 21:54:45.83 ID:Syim72mM.net
- >>178
ググれば出るだろボケナス
- 180 :デフォルトの名無しさん:2014/07/21(月) 22:02:32.32 ID:DpfIQ25M.net
- 井岡
- 181 :デフォルトの名無しさん:2014/07/21(月) 22:30:59.47 ID:F1AofNqF.net
- APLのindex generatorのιだろ。
ぐぐらびりてぃの悪さでは定評がある知識だと思うが。
- 182 :デフォルトの名無しさん:2014/07/21(月) 22:34:55.66 ID:DpfIQ25M.net
- iota の先頭文字は i で母音だから
不定冠詞を付けるときは
a じゃなくて an を付ける必要がある
つまり an iota としなければならない
- 183 :デフォルトの名無しさん:2014/07/21(月) 22:37:14.11 ID:B0QvoS4Q.net
- アニオタ
- 184 :デフォルトの名無しさん:2014/07/22(火) 00:52:49.93 ID:Tqhjijck.net
- >>181
APLのindex generatorよくわからんが、そんなところから来ていたのか〜
atoi, itoa系だとばかり思ってたわw
ありがとね
- 185 :デフォルトの名無しさん:2014/07/22(火) 01:56:11.63 ID:gLVnM0Vt.net
- ギリシャ文字の読み方も知らんて厨房か
- 186 :デフォルトの名無しさん:2014/07/22(火) 09:46:04.54 ID:CpNP7/Sp.net
- 20行程度で2MB行くとかクソだな
200行で2GB使うのか?
ばかだろw
これじゃVPSでもクラウドでもすぐ容量いっぱいで使い物にならねえよ
- 187 :デフォルトの名無しさん:2014/07/22(火) 09:48:02.67 ID:A8dKNJDs.net
- 教えてくれ
どこから突っ込めばいい
- 188 :デフォルトの名無しさん:2014/07/22(火) 09:51:44.86 ID:gLVnM0Vt.net
- printfもでかいけどprintfを100回呼んでも100倍のサイズにはならない
判り易く喩えるとこういうことです
- 189 :デフォルトの名無しさん:2014/07/22(火) 09:54:05.00 ID:A8dKNJDs.net
- 釣りじゃなければさんすうのお勉強が先かなと……
- 190 :デフォルトの名無しさん:2014/07/22(火) 10:22:55.44 ID:brrWCVo/.net
- >>189 俺に算数教えてくれ。 1万行のサイズはいくつだ?
- 191 :デフォルトの名無しさん:2014/07/22(火) 10:27:27.42 ID:yyU5/kBu.net
- 1500行のプログラムで3MBくらいだな
1万行で何書くのか知らんけど、似たような呼び出しだと仮定すると
3MBくらいか
- 192 :デフォルトの名無しさん:2014/07/22(火) 10:39:49.89 ID:V18l0e57.net
- vimでgo書く記事がどれもふるいのばっかりでダメだな
- 193 :デフォルトの名無しさん:2014/07/22(火) 11:41:55.36 ID:brrWCVo/.net
- >>191 算数大丈夫か?
- 194 :デフォルトの名無しさん:2014/07/22(火) 17:18:55.96 ID:cFa+HftP.net
- >>19 なあんだ、文化祭の出し物か。
そう言えば、Noop なんてだし物もあったな。
- 195 :デフォルトの名無しさん:2014/07/22(火) 20:32:55.34 ID:r3GUCDVw.net
- 自分で書いたコード400行、標準ライブラリ10個、外部ライブラリ4個で4MBぐらいだったわ
- 196 :デフォルトの名無しさん:2014/07/23(水) 10:54:58.68 ID:7MX9nHNJ.net
- goをvimで書いてるけどやっぱgocodeが導入は楽だな
- 197 :デフォルトの名無しさん:2014/07/23(水) 11:46:22.33 ID:vbN86xg+.net
- goぐらいはmattnさんの使ってあげなよ
- 198 :デフォルトの名無しさん:2014/07/23(水) 11:53:15.04 ID:7MX9nHNJ.net
- ソフトウェア板で書いたけど人いないから
http://anago.2ch.net/test/read.cgi/software/1379912425/658
http://anago.2ch.net/test/read.cgi/software/1379912425/659
http://anago.2ch.net/test/read.cgi/software/1379912425/660
http://anago.2ch.net/test/read.cgi/software/1379912425/661
- 199 :デフォルトの名無しさん:2014/07/23(水) 11:55:04.11 ID:7MX9nHNJ.net
- :Importと:GoImportは勘違いでした
- 200 :デフォルトの名無しさん:2014/07/23(水) 12:38:54.74 ID:WJZjj5QG.net
- golang.jpみたいに一人でも全部翻訳はできてるのに
golang-jp.org全然翻訳進まんな
名前ばかりの幽霊部員しかいないのか
- 201 :デフォルトの名無しさん:2014/07/23(水) 21:59:22.64 ID:WjYeQVNK.net
- と思ってる奴が参加するのが良い
- 202 :デフォルトの名無しさん:2014/07/23(水) 22:03:23.63 ID:VI4LJie1.net
- ろくに翻訳活動もしてないのに肩書きとして「golang-ja.orgで翻訳活動をしております」って名乗るのはいかがなものかな
- 203 :デフォルトの名無しさん:2014/07/23(水) 23:42:01.46 ID:VI4LJie1.net
- goは簡単なバッチ処理をするようなプログラムを作るのには向いてないね
ビルド後のファイルサイズが気になる
- 204 :デフォルトの名無しさん:2014/07/24(木) 00:30:01.41 ID:znT0d1Bl.net
- たしかに気にはなるけど
採用されない理由がそれだけのプロジェクトも想像できない
- 205 :デフォルトの名無しさん:2014/07/24(木) 11:10:30.02 ID:Ye3LEDYl.net
- >>203
むしろバッチ処理得意じゃないかと思うんだが。
APIを何万回も叩いて結果をDBに格納するみたいなバッチ処理を書いた時に
チャネルを使うと素晴らしく綺麗に並列化できて感動したんだよね。
- 206 :デフォルトの名無しさん:2014/07/24(木) 11:45:59.80 ID:lbRXz+ac.net
- >>205
>>203が言ってるのはバッチ処理というより単機能の小さいコマンドみたいなもののことでしょ。
自分らが~/binにたくさんおいてあるbashスクリプトレベルの。
そもそもこのコンパイラは常駐アプリケーションを作るための設計すぎて、実行時間がある程度長くないと無駄なのは事実。
とは言えいい言語だからそういうシンプルな機能を作るためにも使いたい。
使い終わったらプロセスごと落としてくれればいいからGCとかいらないし。
- 207 :デフォルトの名無しさん:2014/07/24(木) 12:12:06.82 ID:Qa9ovyB3.net
- bsd って何の略ですか
- 208 :デフォルトの名無しさん:2014/07/24(木) 12:22:50.32 ID:wjmCoo/j.net
- BuShiDou
- 209 :デフォルトの名無しさん:2014/07/24(木) 16:17:04.74 ID:GSXF8hON.net
- golang.jp を見て見たが、ちょっと最初の構想から外れてるみたいな気がする。
インタプリタみたいな軽量な言語を目指したと言うが、REPLすらないってどう言う事?
サードパーティの物をちらっと見た覚えは有るが、最近目立たないな。
REPLがあれば取り敢えず簡単なスクリプト処理的な物はこなせるけど、いちいちコンパイルGOじゃ面倒臭い。
ジェネリックもいずれ入れると言ってるがもう何年も経つのに入らないってどう言うこと? 設計上無理が有るのでは?
今は色んな面で言語的にはかなり低級に思える。
- 210 :デフォルトの名無しさん:2014/07/24(木) 16:21:26.89 ID:hD2YGPYI.net
- golangってインタプリタとして使えなかった?
- 211 :デフォルトの名無しさん:2014/07/24(木) 16:22:41.66 ID:r6QGED5m.net
- go run helloworld.go
- 212 :デフォルトの名無しさん:2014/07/24(木) 16:23:12.99 ID:r6QGED5m.net
- buildさえしなければhddを圧迫することはないだろう
- 213 :デフォルトの名無しさん:2014/07/24(木) 16:35:20.39 ID:GSXF8hON.net
- >>211 それは単なるコンパイル& Go
- 214 :デフォルトの名無しさん:2014/07/24(木) 16:39:29.49 ID:r6QGED5m.net
- え?インタプリタはコンパイルしないと思ってるの?phpもrubyもpythonもコンパイルするんだよ?
- 215 :デフォルトの名無しさん:2014/07/24(木) 16:44:21.40 ID:GSXF8hON.net
- >>214 広い意味でのインタプリタはそうだけど、そんな事言ったらJavaですらインタプリタと言い出すだろ。
本来の意味のインタプリタは、1行書いたら即実行が本来だよ。
コンパイルしようがどうしようが良いが、書いたら実行。これがインタプリタ。
perlなんかよりREPLの方がよほどまし。
- 216 :デフォルトの名無しさん:2014/07/24(木) 16:46:57.30 ID:GSXF8hON.net
- >>214 それに>>212 は全くのコンパイルじゃ無いか。
どこにインタプリタ的な要素が匂うんだ?
例えば、100行位のプログラムを書き始めたとして、>>212はいつ実行出来るんだ?
アホなこと言うな。
- 217 :デフォルトの名無しさん:2014/07/24(木) 16:47:30.54 ID:GSXF8hON.net
- >>211の間違い
- 218 :デフォルトの名無しさん:2014/07/24(木) 17:50:00.05 ID:9dmhGPAk.net
- 定義的にインタプリタであるかどうかにこだわる意味がわからん。
コンパイルが十分に速くてエディタの支援があれば事実上同じ。
- 219 :デフォルトの名無しさん:2014/07/24(木) 17:59:05.81 ID:GSXF8hON.net
- >>218 解らんかな? 例えばインタプリタなら
>>218 と会話的にプログラム出来る。
コンパイル方式だと、>>218の発言を知ってから全ての218の行動を予測しながらプログラムを書かざるを得無い。 どれだけ膨大なプログラムになるかわかるか?
例えば今日台湾の航空機墜落事故のニュースを知ってから、それに関連したプログラムをするのと、
全く知らずに何年も前から予測してプログラムするのでどれだけ大きな差が有るのか解らんかな?
- 220 :デフォルトの名無しさん:2014/07/24(木) 18:05:42.50 ID:GSXF8hON.net
- >>218 ま、いいや、golangで1行ずつコンパイルして結果が見えるのならそれで良い。
#今いるディレクトリは?
--gogo
#ls
--
#cd xxx
- 221 :デフォルトの名無しさん:2014/07/24(木) 18:14:26.23 ID:kMqjarS79
- 全くわからん
現にGoのチュートリアルはWeb上で実行できるわけだし、
そこにインタプリタとコンパイルの違いなんて見えないというかどうでも良いわ
てか、対話的にプログラムを書くのは、要するにちょこちょこ機能を試したいとき
でしょ?それとも、大きなプログラムを本当に対話的に書くの?N88ベーシックかよ
- 222 :デフォルトの名無しさん:2014/07/24(木) 18:10:26.83 ID:znT0d1Bl.net
- ニュースの例えは効果的ではなかったな
- 223 :デフォルトの名無しさん:2014/07/24(木) 18:13:08.35 ID:KnMb6PXS.net
- もう少し分かり易く説明して欲しい
- 224 :デフォルトの名無しさん:2014/07/24(木) 18:17:36.20 ID:FJ9KFXdp.net
- そもそもgoはc++の置き換えを狙ったガッツリコンパイル言語目指してたと思うが
インタプリタの話はどっから出てきたのだろうか。
- 225 :デフォルトの名無しさん:2014/07/24(木) 18:18:07.34 ID:hD2YGPYI.net
- 読込み -> 中間式生成 -> 実行 -> 結果表示
こういう流れなら中間式がなんであれインタプリタでよくないか
- 226 :デフォルトの名無しさん:2014/07/24(木) 19:31:52.41 ID:j9Fzrf/Q.net
- 対話式の環境が使いたいならscalaでも使えばいいんじゃねえの?
コンパイルくっそ遅いけど
- 227 :デフォルトの名無しさん:2014/07/24(木) 19:35:29.67 ID:eQap2LAf.net
- ClojureとかGroovyとかもJVM系の言語はコンパイルしてから実行するのに凄い時間がかかるな
REPL的な環境使うと捗る
- 228 :デフォルトの名無しさん:2014/07/24(木) 21:13:03.11 ID:3xYKvkhO.net
- >>224
http://golang.jp/go_faq
新しく言語を作った理由は?
Go言語は、インタプリタ言語のプログラミングの容易さと、動的型言語の効率、コンパイル言語の静的な型の安全性を併せ持つことを目指しました。
- 229 :デフォルトの名無しさん:2014/07/24(木) 22:11:05.80 ID:3xYKvkhO.net
- >>225 Javaは含めたく無いな。 インタプリタは、基本的にソースコードをそのまま配布する物。
配布されたソースを変更すれば即座に実行出来る物。
- 230 :デフォルトの名無しさん:2014/07/24(木) 22:34:04.45 ID:xmULRajC.net
- >>219
REPLが備わってる言語だと
1行ずつ試しながらプログラムを書けるのが良いっていう主張なんかな
コンパイル方式だと、ある程度まとまった量を書くまで
プログラムの挙動の確認ができないからダメだと
ちょっと興味あるから良かったらもう少し分かりやすく説明してほしいんだが
- 231 :デフォルトの名無しさん:2014/07/24(木) 23:08:29.15 ID:ZKlJlp/g.net
- つまり軽い気持ちでインタプリタという言葉を使ってしまったら
インタプリタに思い入れの有りすぎる人が騒ぎだしたって話か。
- 232 :デフォルトの名無しさん:2014/07/24(木) 23:30:45.74 ID:3xYKvkhO.net
- >>230
例えば、
system("ls")
でカレントディレクトリ内のファイルを見て、ファイルが有るのを確認してファイルを読み込むとか。
周りの環境が不確かでも確認しながらコーディングを進めて行くことが出来る。
試行錯誤が入る様な場合には力を発揮する。
パラメータを変えながらのテストプログラムとか。
とは言っても、一般的にREPLが力を発揮するのはコーディング時に結果を確認しながら進めていけることだろうな。 バグの少ないプログラムが書ける。
例 Java REPL
http://calms.hatenablog.com/entry/2014/03/20/215529
- 233 :デフォルトの名無しさん:2014/07/24(木) 23:38:19.65 ID:ZKlJlp/g.net
- >>232
お前の言いたいことはよくわかったが残念ながらgoは最初の最初からc++後継のガッツリコンパイル言語だ。
REPLなんて全く意識してない。
そこに書いてあるインタプリタがうんたらかんたらはPythonの手軽さり入れてますよくらいの意味だ。
- 234 :デフォルトの名無しさん:2014/07/25(金) 00:07:36.47 ID:VLfrDabm.net
- >>233 C++ ですら、CINTや、LLVM でのREPLが有るのに、なんでやらないんだろう?
言語と同等に重要だと思うけどな。
その前にジェネリックとかやることが山積みで残ってるからかもしれ無いが。
- 235 :デフォルトの名無しさん:2014/07/25(金) 00:20:30.83 ID:0UOGck6o.net
- Does Go provide REPL?
http://stackoverflow.com/questions/8513609/does-go-provide-repl
- 236 :デフォルトの名無しさん:2014/07/25(金) 00:29:07.50 ID:sWANe9H9.net
- >>234
まあ確かに話題になってるようにpythonコンソールみたいに使えたらとても楽だ。
- 237 :デフォルトの名無しさん:2014/07/25(金) 00:49:56.70 ID:5ZIqGgab.net
- >>232
>>230だけどありがとう
REPLはいろいろ試せて便利ということですね
コンパイル方式の言語でもREPLがあれば便利だという意見に納得
- 238 :デフォルトの名無しさん:2014/07/25(金) 00:55:19.24 ID:5ZIqGgab.net
- >>232
>とは言っても、一般的にREPLが力を発揮するのはコーディング時に結果を確認しながら進めていけることだろうな。 バグの少ないプログラムが書ける。
これに関してはIDEでも出来るからREPLの利点になるかは微妙に思うけど
- 239 :デフォルトの名無しさん:2014/07/25(金) 01:24:46.41 ID:WAyDBvXq.net
- そういう事出来るIDEってそんな多くないような
IDEの機能でREPLに近いのはイミディエイトウィンドウとSmalltalkくらいしか思い浮かばない
- 240 :デフォルトの名無しさん:2014/07/25(金) 02:11:12.44 ID:VBkcNL29.net
- ipythonみたいに補完できるツールって無い?
- 241 :デフォルトの名無しさん:2014/07/25(金) 08:54:10.04 ID:VLfrDabm.net
- >>239
SwiftのPlaygroundは、補間はおろかREPL機能やリアルタイム描画や変数の時間軸変化のグラフとか、時間軸を遡って確認したり出来る。
https://developer.apple.com/swift/
簡単なデモ動画
https://m.youtube.com/watch?v=vogFSIxprUo
描画結果も表示してる
今後こういったIDEが重要な要素となる。
- 242 :デフォルトの名無しさん:2014/07/25(金) 10:33:21.59 ID:v/73T7Pc.net
- Swift使ってればいいんじゃない
- 243 :デフォルトの名無しさん:2014/07/25(金) 10:36:14.11 ID:cQJQccdW.net
- 本当に今欲しいもの
それはその機能ですか
- 244 :デフォルトの名無しさん:2014/07/26(土) 01:12:14.54 ID:gxb4YorG.net
- func a() string {
return "aaa"
}
これをstringかintを返したい場合どういうふうにfunc a() stringの部分を書きなおせばいいのか教えてください
- 245 :デフォルトの名無しさん:2014/07/26(土) 01:38:36.60 ID:WPKMsRoX.net
- func a() interface{} {
...
}
- 246 :デフォルトの名無しさん:2014/07/27(日) 04:43:42.19 ID:KUNHptBx.net
- 2013-07-18
Go言語でmmapシステムコールを使ったファイル読み込みの高速化検討とC言語のコンパイラの話
http://ryochack.hatenablog.com/entry/2013/07/18/201736
http://i.imgur.com/2sZxU5w.jpg
Go compiler も検討してるが、LLVM Clangには大きな差をつけられてる。
- 247 :デフォルトの名無しさん:2014/07/27(日) 08:52:04.39 ID:CwX5MDAY.net
- LLVM Clangは、徹底的にループを排除するからな
元のコードがどんなだか知らんけど
他がやってるループをClangは回してない場合がある
- 248 :デフォルトの名無しさん:2014/07/27(日) 09:13:55.62 ID:KUNHptBx.net
- >>247 中にソースが書いて有るよ。
1GBのランダムなデータを3種類の読み方で読んで、00のバイト数をカウントすると言う物。
ループを省略するなんてことは出来なさそう。
- 249 :デフォルトの名無しさん:2014/07/27(日) 09:46:07.39 ID:PFdtsvV+.net
- 元のコードのここの部分が
for (i=0; i<fsize; i++) {
if (buf[i] == 0x00) cnt++;
}
例えばこんな感じに書いたみたいに展開されるってことじゃないの?
for (i=0,size=fsize/2; i<size;) {
if (buf[i++] == 0x00) cnt++;
if (buf[i++] == 0x00) cnt++;
}
if (fsize%2==1) {
if (buf[i++] == 0x00) cnt++;
}
- 250 :デフォルトの名無しさん:2014/07/27(日) 11:02:43.76 ID:KUNHptBx.net
- コンパイラの最も重要な最適化がループだからね。
- 251 :デフォルトの名無しさん:2014/07/27(日) 11:07:33.89 ID:A8GFVBne.net
- 変数って型をしてしたほうがいい?
:=にたよったほうがいい?
- 252 :デフォルトの名無しさん:2014/07/29(火) 21:53:04.26 ID:yYRcHyEO.net
- ・【翻訳】Go言語がダメな理由 | POSTD
http://postd.cc/why-go-is-not-good/
Goは何も新しいことをしない。
Goは全てにおいてうまく設計されているとは言えない。
Goは他のプログラミング言語から退化したものである。
- 253 :デフォルトの名無しさん:2014/07/29(火) 21:59:11.76 ID:yYRcHyEO.net
- D言語とGo言語
http://wazanova.jp/post/64086105199/d-go
- 254 :デフォルトの名無しさん:2014/07/29(火) 23:32:56.57 ID:UKoB3UWi.net
- 早くジェネリックは欲しいね。
- 255 :デフォルトの名無しさん:2014/07/30(水) 07:50:42.52 ID:/fpjt/6K.net
- >>253 >>253
でもRustやDは全然普及していないという決定的に致命的な欠点があるよな
- 256 :デフォルトの名無しさん:2014/07/30(水) 09:20:20.31 ID:Nn5HlRg1.net
- Rustはまだ実験段階だから仕方ない。 金が無いとなかなか進まないね。
Dはスポンサー次第だろ。 Facebookが使った。
http://blog.fenrir-inc.com/jp/2014/07/about-d-language.html
トレンド的な話ではウォルター氏を含むD言語プログラマーが Facebook に雇用されてD言語の開発とD言語製アプリケーションに携わっている状態で、
D言語公式カンファレンスの DConf も Facebook 本社を会場として去年から開催されています。
SUNはDTrace として使ってるし、DTraceはAppleでも使ってる。
- 257 :デフォルトの名無しさん:2014/07/30(水) 09:54:57.06 ID:5ewzjOeq.net
- >>256
http://ja.m.wikipedia.org/wiki/DTrace#cite_ref-2
DTraceで使われてるDはまた別のものっぽいよ
- 258 :デフォルトの名無しさん:2014/07/30(水) 09:58:39.78 ID:oJuXMjZX.net
- D言語のドキュメントは読みにくいから挫折してGo北野に俺が勉強したくなるような余計ななことかくな!
- 259 :デフォルトの名無しさん:2014/07/30(水) 11:40:53.67 ID:hbolUbaM.net
- 分かりやすい綺麗なコードが書ければプログラム言語なんて何でも良い
ただ、同じ事やるのに色々な表現方法が存在して構文を複雑にしたり
波括弧の位置だの鬱陶しい問題が存在しない方が良い
表現の違いで吐き出したバイナリコードに差が出る言語は
一々最速かつ最良の方法を模索するハメになるので煩わしい
- 260 :デフォルトの名無しさん:2014/07/30(水) 11:43:17.31 ID:1Qh8jOHK.net
- Go北野でツボった
AV男優か何か?
- 261 :デフォルトの名無しさん:2014/07/30(水) 12:44:24.74 ID:Nn5HlRg1.net
- >>260 もしかしてマジに聞いてる? Go(に)来たの
- 262 :デフォルトの名無しさん:2014/07/30(水) 15:03:28.86 ID:x/403miQ.net
- >>259
あなたはpythonで幸せになるべき
- 263 :デフォルトの名無しさん:2014/07/30(水) 17:26:23.03 ID:MCWrKUub.net
- >>259
そういう模索が必要になるレイヤーがあるんだよ
- 264 :デフォルトの名無しさん:2014/07/30(水) 18:58:50.92 ID:oDHaBQlk.net
- 英語読めないからあれだけど
WindowsだとOSのDLL読めるけど
ユーザーが作ったDLLは使えないんだって?
ならGoでグラフィックをやりたければOpenGLよりDirectXのが楽ということか
WinのOpenglは外部DLLないと古臭いから
- 265 :デフォルトの名無しさん:2014/07/30(水) 21:19:57.41 ID:/fpjt/6K.net
- >>256
Facebookってオープンソースに力入れてたっけ?単に自社の便宜のためにDの開発者を取り込んだだけ、ということではなくて?
- 266 :デフォルトの名無しさん:2014/07/30(水) 21:50:47.94 ID:SFUuJg+H.net
- facebookはPHP処理系の独自実装とかをオープンに公開してるな
- 267 :デフォルトの名無しさん:2014/07/30(水) 22:09:01.57 ID:oZh+12aq.net
- >>261
お前のアスペぶり、最近GoとOcamlの勉強始めた激オポ野郎に似てて笑える。
- 268 :デフォルトの名無しさん:2014/07/30(水) 22:51:02.01 ID:Ozr11eeP.net
- あそこはサーバもオープンソースでやってたじゃないか
- 269 :デフォルトの名無しさん:2014/08/04(月) 14:37:29.28 ID:HA1hOxHF.net
- func hoge(x, y int) (x, y int) {
return
}
これはダメで
func hoge(x, y int) (int, int){
return x, y
}
これがいい理由がわからない
- 270 :デフォルトの名無しさん:2014/08/04(月) 14:39:53.99 ID:0z4VWwTk.net
- スコープの中で一度も出てこないからだろ
- 271 :デフォルトの名無しさん:2014/08/04(月) 14:44:57.93 ID:HA1hOxHF.net
- func hoge(x, y int) (x, y int) {
x++
y++
return
}
これでもダメ
- 272 :デフォルトの名無しさん:2014/08/04(月) 14:59:51.43 ID:NkDV0lbD.net
- > func hoge(x, y int) (x, y int) {
> ...
> }
これ、
./main.go:7: duplicate argument x
./main.go:7: duplicate argument y
ってなる(Go 1.3)
- 273 :デフォルトの名無しさん:2014/08/04(月) 15:04:04.54 ID:OYo/E/zd.net
- 馬鹿かこいつ
- 274 :デフォルトの名無しさん:2014/08/04(月) 15:20:41.03 ID:CLz4tu7V.net
- >>269
goは全然詳しく知らないけど軽くググったら
http://golang.org/doc/effective_go.html#named-results
When named, they are initialized to the zero values for their types when the function begins;
まんま答えがありました
- 275 :デフォルトの名無しさん:2014/08/04(月) 15:25:59.54 ID:HA1hOxHF.net
- >>274
戻り値が初期化されるからダメってことなんですね
Named resultは便利なようで冗長的になる可能性もあるってわけですね
メモリも食いそうですね
ありがとうございました
- 276 :名無しさん@お腹いっぱい。:2014/08/04(月) 15:41:33.25 ID:ZHHZozY0.net
- https://www.youtube.com/user/sesendou/videos
- 277 :デフォルトの名無しさん:2014/08/04(月) 15:48:57.70 ID:hivp8MqX.net
- >>275
詳しい人の意見を少し待ったほうがいいんじゃないの?
ダメな理由は素人でも特定できたけど
なんらかのやり方があるかもしれないよ?
- 278 :デフォルトの名無しさん:2014/08/05(火) 17:28:58.12 ID:VDc80Yjj.net
- 見やすさのために変数を初期化すべきかどうかって問題だろ
goの仕様関係ないやん
- 279 :デフォルトの名無しさん:2014/08/05(火) 17:39:44.90 ID:DgDBu3xR.net
- go は全く知らないんだけど、皆の話を聞いてたら、入力の変数名x,yと出力の変数名x,yは別物みたいだね。
つまり同じ名前をつけるバカとは付き合えんと言われてるの?
inout属性をつけられると良いんだけどね。
- 280 :276:2014/08/05(火) 17:59:47.02 ID:dd7FVYvi.net
- >>279
いえ、違います。
てか仕様そのものじゃないか。
>>279
いえ違います。
別物ではないから
重複定義でエラーになるんでしょ。
func (x int) (x int) なら
現状だとpseudoで
int x = 0
int x = args["x"]
その内
func () (x=123 int)
などで0以外の初期化子与えたり
func (x int) (x=args["x"] int)
func (x int) (x=args.x int)
func (x int) (x=_x int)
などで引数で初期化とか出来るようになるんじゃないかな
というか既にあるんじゃないのかな
- 281 :デフォルトの名無しさん:2014/08/05(火) 18:07:02.09 ID:DgDBu3xR.net
- >>280 変数名in x,y で、out x,yにしたかったんだろ。
でも言語仕様上 in x,y とout x,yのx,yを同じ変数に割り当てられないからエラーになるんだろ。
つまりinと、outは別の変数を使えとしかられてるんじゃ無いの?
言語によってはinout属性を付けると、入力変数に値をセット出来て出力とすることが出来る。
- 282 :デフォルトの名無しさん:2014/08/05(火) 18:10:48.15 ID:DgDBu3xR.net
- >>281 簡単に言うと、
func( 1, 2 ) と渡された時に
勝手に 1, 2 を上書きすんなよとしかられてるんだろ?
- 283 :片山博文MZ次期CEO ◆T6xkBnTXz7B0 :2014/08/05(火) 18:25:28.35 ID:AfbB56Nf.net
- Goは、重要な言語ではない。
- 284 :デフォルトの名無しさん:2014/08/05(火) 18:45:40.65 ID:dd7FVYvi.net
- >>282
>>282
面倒だから何でもいいよ。
- 285 :デフォルトの名無しさん:2014/08/05(火) 21:25:46.03 ID:3MsCZ4lI.net
- goでguiが作れない
guiライブラリのコミュニティーがない
あっても個人が作ったライブラリがあるだけ
goでguiに未来はない
- 286 :デフォルトの名無しさん:2014/08/05(火) 22:21:36.63 ID:VDc80Yjj.net
- まずはジェネリクスを所望する
- 287 :デフォルトの名無しさん:2014/08/05(火) 22:47:32.36 ID:AfbB56Nf.net
- Go死亡。
はい、時間の無駄でした、残念。
- 288 :デフォルトの名無しさん:2014/08/05(火) 22:51:32.76 ID:AfbB56Nf.net
- Goはオワコン
- 289 :デフォルトの名無しさん:2014/08/05(火) 22:56:03.53 ID:q3/M2RFT.net
- もうGoogleは、Android にも言語にも飽きたんだよ。オタクの趣味としてちんたら遊ばせておくつもりだろ。
はた迷惑だよな。
ロボット企業を買いあさってる。日本のSCHAFTも買収された。
- 290 :デフォルトの名無しさん:2014/08/05(火) 23:31:09.30 ID:AfbB56Nf.net
- ニュース速報。Goが死亡したことについてGoogleは謝罪会見を行わ
ないとのことです。Goのユーザーからは怒りの声が上がっています。
以上、中継でした。
- 291 :デフォルトの名無しさん:2014/08/06(水) 00:15:13.55 ID:q1msYZkC.net
- 叩きたくて叩きたくてしょうがない奴が2chというゴキブリホイホイにあつまってくる
お陰でネットが平和にはなるけど
- 292 :デフォルトの名無しさん:2014/08/06(水) 00:15:15.26 ID:cxEAgXtb.net
- Goは、システムプログラミング寄りのことをしない人には関係ないし、GAE使わない人にも関係ない。
WebAPIに使おうという人は増えてはいるけどね。
- 293 :デフォルトの名無しさん:2014/08/06(水) 01:31:04.59 ID:jlHxWIwY.net
- まだ実験的に使ってる位だろ。 本格的に使えるレベルじゃ無いだろ。
WebAPIだと下手するとJAVAにすら負けるんじゃ無いのか?
- 294 :デフォルトの名無しさん:2014/08/06(水) 02:01:51.39 ID:u9FzL7dM.net
- https://code.google.com/p/go-wiki/wiki/GoUsers
とりあえずGoを使ってる組織一覧あげとく
- 295 :デフォルトの名無しさん:2014/08/06(水) 02:59:23.20 ID:QpPIHC8m.net
- >>294
GitHubとかHerokuとかマジ?
- 296 :デフォルトの名無しさん:2014/08/06(水) 08:27:30.42 ID:Tye/sJpW.net
- おまえらDocker関連の盛り上がりを知らんのか?
あれGoで書かれてるんだぞ
- 297 :デフォルトの名無しさん:2014/08/06(水) 08:38:43.95 ID:OufmJGiK.net
- この前買ったAsusのM/Bに付いてるユーティリティのセットアップ部分がGo+Walk?で書かれてた
Dos窓の消し方知らん状態で、よく配布出来たなと思うけど
- 298 :デフォルトの名無しさん:2014/08/06(水) 09:24:52.37 ID:cxEAgXtb.net
- dockerに限らず、CoreOSやOSvの運用ツールもgoだったりする。
https://github.com/coreos/fleet/blob/master/README.md
https://github.com/cloudius-systems/capstan/blob/master/README.md
- 299 :デフォルトの名無しさん:2014/08/06(水) 09:30:56.39 ID:cxEAgXtb.net
- cloudflareがオープンソースしてるCDNまわりの運用ツールやperconaのMySQLまわりの運用ツールもそうだったか。
まあ、google社内の運用ツール作成者が、cやpythonの代わりにgo使ってるようだが。
- 300 :デフォルトの名無しさん:2014/08/06(水) 10:06:37.78 ID:Ew8yVxs4.net
- 1.3からNaClもサポートされたよね。
実際使えるようになるのは1.4からだろうけどWebClient側もGoで書くようになるか。
問題はchromeでしか動かないってことだけど
- 301 :デフォルトの名無しさん:2014/08/06(水) 10:49:43.03 ID:1n+ZEBWM.net
- NaClはサンドボックス用の実装
1.4はarm NaCl
内容分からず書き込むなよボケナス
Web Client向けじゃねーよクソカス
- 302 :デフォルトの名無しさん:2014/08/06(水) 13:24:50.02 ID:zhx39L6I.net
- >>301
どっちかいうとPPAPIを1.3でサポートしてないから、サポートする1.4から本格的に使えるって意味ね。
ビジネスロジックをクライアント側で実装するとなるとjsでは丸見えになるから
NaClでクライアントの一部でも実装できるというのはありな気がするんだけど。
ブラウザをchrome固定にしても構わない社内システムとかね。
- 303 :デフォルトの名無しさん:2014/08/06(水) 13:40:49.32 ID:1n+ZEBWM.net
- https://code.google.com/p/go-wiki/wiki/NativeClient
They cannot be run directly in Google Chrome. As such, the NaCl support in Go 1.3 is useful only for running sandboxed environments like the Go Playground.
上記を読めない文盲か?
PPAPIが1.4でサポートされるというソースを出したら全力で謝ろう
- 304 :デフォルトの名無しさん:2014/08/06(水) 15:57:32.29 ID:/I6P1gIg.net
- go-wiki
There is ongoing work exploring support for the IRT and PPAPI (3 and 4 in the list) but no definite release target. Perhaps they will be in Go 1.4 but perhaps not.
perhaps not
^^^^^^^^^^
- 305 :デフォルトの名無しさん:2014/08/07(木) 21:30:44.75 ID:5P5b4hRW.net
- Clive
- 306 :デフォルトの名無しさん:2014/08/09(土) 22:08:08.27 ID:bNAhKStf.net
- HSPにすら負けるマイナー言語
- 307 :デフォルトの名無しさん:2014/08/09(土) 23:25:50.71 ID:atPSQbTe.net
- ほんとだー負けてるねー(棒
https://www.google.co.jp/trends/explore#q=go%20lang%2C%20hsp%20%E3%82%B2%E3%83%BC%E3%83%A0&cmpt=q
- 308 :デフォルトの名無しさん:2014/08/10(日) 02:03:30.22 ID:z9JQKyZD.net
- ゲームを付けずぬ検索すると更に悲惨なことになるのか
- 309 :デフォルトの名無しさん:2014/08/10(日) 07:28:42.80 ID:717mLNhK.net
- いや、悲惨なのはどう見ても右肩下がりなHSPだろ
ゲームを付けないと、クロアチア権利党の略語としてヒットするからだめ
ゲーム以外の追加キーワードは、軒並み更に検索件数が少な過ぎる
- 310 :デフォルトの名無しさん:2014/08/10(日) 09:10:02.35 ID:owNP0mOn.net
- いやって何がいやなんだ?
「更に」と書いてるんだからどちらにせよHSPが悲惨だと言ってるに決まってるだろ
- 311 :デフォルトの名無しさん:2014/08/10(日) 09:10:27.53 ID:frgBbTF3.net
- いやいや
- 312 :デフォルトの名無しさん:2014/08/10(日) 09:42:27.18 ID:owNP0mOn.net
- そう言うが本当は好きなんだろ?こういうのがよオラッ!
- 313 :デフォルトの名無しさん:2014/08/10(日) 17:55:11.34 ID:owxd9++q.net
- 学習コストが高い言語じゃないから
マイナーでも損した気持ちにあんまならない
- 314 :デフォルトの名無しさん:2014/08/10(日) 18:16:52.00 ID:owxd9++q.net
- ただ匿名フィールドやメソッドでしっくりこない部分がいくつか
type foo struct {}
func (f foo) foobar() {}
func (f *foo) pfoobar() {}
type bar struct {
foo
}
これらのメソッドを
bar.foobar(bar)
で呼び出せたり
var nilptr *foo; foo.pfoobar() // 空なのに…
で呼び出せたりするのがなんか気持ち悪い
- 315 :デフォルトの名無しさん:2014/08/10(日) 18:36:30.54 ID:8jOhhL8e.net
- >>314 バグじゃ無いの? 確かに気持ち悪いし理解できない。
何で
barやfooのメソッドになるんだ?
お手伝いさん雇ったらいつの間にか家ごと乗っ取られてたと言う感じ。
- 316 :デフォルトの名無しさん:2014/08/10(日) 18:53:42.45 ID:owxd9++q.net
- >>315
ひとつめはメソッド式っていう型から直接メソッドを取り出せるリファレンスに載ってる仕様
ふたつめはfoo.pfoobar()→nilptr.pfoobar()の間違いだすまん
- 317 :デフォルトの名無しさん:2014/08/10(日) 19:17:22.63 ID:owxd9++q.net
- >>314
一つ目の引数に型入れてしまってる
コードそのまま張る
スレ汚し申し訳ない
package main
type foo struct {}
func (f foo) foobar() {}
func (f *foo) pfoobar() {}
type bar struct {
foo
}
func main() {
b := bar{}
bar.foobar(b)
var nilptr *foo // 空なのに…
nilptr.pfoobar()
}
- 318 :デフォルトの名無しさん:2014/08/10(日) 19:18:14.11 ID:8jOhhL8e.net
- fooのメソッドをクロージャの外に書くことも出来るようにしたと言うことなのかな?
lazy 的な使い方だからそう考えると理解出来る
- 319 :デフォルトの名無しさん:2014/08/10(日) 19:32:56.63 ID:fQipPNK5.net
- >>317
そんなに変かな…? 「var nilptr *foo」を「空なのに…」って
言う方がヘンに思えるが…
- 320 :デフォルトの名無しさん:2014/08/10(日) 19:42:15.04 ID:owxd9++q.net
- >>319
確かに空という表現は適切じゃないな
すまん
- 321 :デフォルトの名無しさん:2014/08/29(金) 15:46:46.57 ID:pefvZeNv.net
- Goを書く上でおすすめのEditorって何?
atom使おうとしたら2MBのファイル制限があってtagsファイルが読み込めなくてがっかりした。
型を解釈してメソッドやメンバ変数がうまく補完されるEditorがほしいです。
- 322 :デフォルトの名無しさん:2014/08/29(金) 16:06:57.25 ID:pefvZeNv.net
- //(1)a,_:=にすればエラーにならない
a:=func()(int,error){ return 0,fmt.Errorf("aaaaaa")}();
fmt.Println(a)
//(2)これはエラーにならない
for i:=range []string{"a","b","c","d"} {
fmt.Println(i)
}
(1)はエラーになるのはいいことだと思うけど、
(2)だとエラーにならずにindex値しか取得できない。
(2)も(1)と同様返って来たタプルの数に合わせないとエラーになるようにして欲しくない?
この仕様って何か理由あるの?
- 323 :デフォルトの名無しさん:2014/08/29(金) 17:48:22.16 ID:JF5lqIUA.net
- Go は何故ジェネリックが出来ないんだろう、ずっとやるやると言ってて出来ないのは何か理由が有るんだろ?
ジェネリックが有るなしでは雲泥の差が有るからな
- 324 :デフォルトの名無しさん:2014/08/29(金) 22:14:19.57 ID:W5ciN1UU.net
- Go For Perl Mongers
http://go-talks.appspot.com/github.com/lestrrat/go-slides/2014-yapcasia-go-for-perl-mongers/main.slide
- 325 :デフォルトの名無しさん:2014/08/31(日) 02:21:27.34 ID:Z3wJLt4Y.net
- C++テンプレートみたいになるん?
- 326 :デフォルトの名無しさん:2014/09/01(月) 09:42:08.95 ID:Aoi0Spsz.net
- >> Wikipedia を見ると
>型の継承、ジェネリックプログラミング、アサーション、オーバーロードといった機能が存在しないことも特徴である。
っと書いてるけど特徴と言うよりも欠点だろ。 型の継承が出来ないと言う事は型の拡張/Extentionも出来ないんだろうな
- 327 :デフォルトの名無しさん:2014/09/01(月) 10:50:39.51 ID:u5EBjTij.net
- まあぶっちゃけLL風Cだし
- 328 :デフォルトの名無しさん:2014/09/01(月) 11:40:12.76 ID:UAvbH3xI.net
- 単純は良いことでしょ
- 329 :デフォルトの名無しさん:2014/09/01(月) 15:58:36.52 ID:SaUWCY70.net
- インタフェースで良いじゃん
既に継承はレガシー化しつつある
Cジジィと言ってた世代がもうすぐ自分がジジィ呼ばわりされるのさ
- 330 :デフォルトの名無しさん:2014/09/03(水) 22:51:40.57 ID:OjPHMTTg.net
- すみません、質問させてください。
Go言語で動的に読み込めるようなライブラリを作りたく思っています。
どのようにすれば、ライブラリ単体のコンパイルができるでしょうか?
また、作ったライブラリをどのようにすれば動的にロードする事ができるでしょうか?
よろしくお願いします。
- 331 :デフォルトの名無しさん:2014/09/08(月) 19:26:19.55 ID:GB5qWry9.net
- 無理
- 332 :デフォルトの名無しさん:2014/09/08(月) 19:47:42.94 ID:48pG8dL/.net
- >>331
そうっぽいですね、質問後もいろいろ調べてたのですが、
Cとかで作ったライブラリは呼べるようですがGoだけでは無理っぽい・・・
ぜひライブラリも作れるようになってほしいですね
ありがとうございました
- 333 :デフォルトの名無しさん:2014/09/08(月) 20:09:34.31 ID:GB5qWry9.net
- https://code.google.com/p/go/issues/list
ここのどっかで見た気がする
- 334 :デフォルトの名無しさん:2014/09/14(日) 17:09:00.11 ID:9EZHO0f/.net
- >>321
gocodeが動くEditorを使えばいいってわかりました。
gosublimeが一番よさげっすね
- 335 :デフォルトの名無しさん:2014/09/14(日) 21:40:57.88 ID:LDtvEMMg.net
- >>334
これってMingW
- 336 :デフォルトの名無しさん:2014/09/18(木) 23:55:04.40 ID:qJLAnAay.net
- postfix並のメールサーバー作りたい
何か参考になるものちょうだい
- 337 :デフォルトの名無しさん:2014/09/19(金) 01:24:43.33 ID:4bqgQEeC.net
- つ http://mirror.postfix.jp/postfix-release/index.html
- 338 :デフォルトの名無しさん:2014/09/29(月) 03:20:22.82 ID:miLMxBVJ.net
- golintが動かない
- 339 :デフォルトの名無しさん:2014/09/29(月) 07:50:19.22 ID:NI0xARzz.net
- 御臨終です
- 340 :デフォルトの名無しさん:2014/09/29(月) 12:08:15.08 ID:EIANdszU.net
- golintが動かないと勘違いしていた
golintはgo testをカバーしてなかっただけ
golintとgo test両方実行しないと意味ねえな
- 341 :デフォルトの名無しさん:2014/10/05(日) 20:59:06.62 ID:zjAXSCyt.net
- Append(sliceA, sliceB[x:xx]...)で参照先の配列を領域確保1発でコピー出来るなら
MakeでCap指定した方が良いCopyの使いどころって無いよね?
- 342 :デフォルトの名無しさん:2014/10/12(日) 13:22:57.12 ID:e6aIROEn.net
- vim-goとvim-go-extraどっちを使おうか迷った僕がvim-goを選んだ理由
・vim-goの開発が活発で将来性がある。vim-go-extraは進化しないと思った。
・利用者が多いから。
- 343 :デフォルトの名無しさん:2014/10/12(日) 14:01:02.40 ID:e6aIROEn.net
- vim-go-extraはgolangに入ってたものを配布しているだけのようなものだからそれをいじっていくというスタイルではないと思った
- 344 :デフォルトの名無しさん:2014/11/02(日) 09:24:08.49 ID:r4spo6v1.net
- Go 1.4で若干の言語仕様変更
http://news.mynavi.jp/news/2014/10/31/275/
ライブラリ作成と、そのライブラリの動的リンク機能マダー?
- 345 :デフォルトの名無しさん:2014/11/02(日) 10:09:47.13 ID:x5iq96Qv.net
- 変数無しRangeの使い道ってどんな時だろ
むしろforやifみたいに初期化文が置けるとスッキリするんだけど
- 346 :デフォルトの名無しさん:2014/11/02(日) 11:17:59.44 ID:r4spo6v1.net
- 1つ質問いいですか!
go言語ってコンパイルが早くて気に入ってるんだけど、
けど、なぜか突然コンパイルやテストが異常に遅くなったりする・・・
これの原因ってなんですか??
- 347 :デフォルトの名無しさん:2014/11/02(日) 12:15:45.86 ID:CjBmvnJw.net
- ガベコレ
- 348 :デフォルトの名無しさん:2014/11/02(日) 20:58:40.38 ID:JPqAP6M3.net
- AndroidのJavaがGoに置き換えられる日はいつかな
- 349 :デフォルトの名無しさん:2014/11/02(日) 21:33:47.45 ID:BYDmQ72k.net
- それより先にChromeOSに飲み込まれる予感
でGoはGAEによるwebアプリとして、という形で置き換わ…らないかな…
- 350 :デフォルトの名無しさん:2014/11/02(日) 22:09:45.10 ID:uP+hCO1v.net
- Javaは難しすぎるし文字列の連結も"a" + "b"みたいに+で書くのはダメでなんちゃらビルダーを使えとかでJava知らないとわかんないことも覚えないといけないからきつい
AndroidアプリはGo出かけるようにするべきだ
そしてJavaを切り捨てろ
- 351 :デフォルトの名無しさん:2014/11/02(日) 23:29:08.56 ID:6If1MJm0.net
- Go「ちょっと出かけてくる」
- 352 :デフォルトの名無しさん:2014/11/02(日) 23:40:50.47 ID:dkfupOzq.net
- Javaを斬りに行くのか
- 353 :デフォルトの名無しさん:2014/11/06(木) 09:31:48.41 ID:Yj3faNE/.net
- goimportを11/9までに変えろってツイートのタイムラインで流れてきたけどどうやって変えるの?
.bashrcとかでpathを設定しろってこと?そんな設定した覚え無いよ
- 354 :デフォルトの名無しさん:2014/11/06(木) 09:40:38.83 ID:aunNruia.net
- 書いてあるやんけ…
> Updating
>
> Any import path in any Go source file beginning with “code.google.com/p/go.”
> should change to begin with “golang.org/x/”.
>
> On Linux, OS X, and other Unix systems, this command updates all Go source
> files in the current directory and all subdirectories, so running it in your
> GOPATH workspace root should suffice to update all your source code:
>
> sed -i .orig 's|"code\.google\.com/p/go\.|"golang.org/x/|' \
> $(find . -name '*.go')
- 355 :デフォルトの名無しさん:2014/11/06(木) 10:14:37.36 ID:Yj3faNE/.net
- 英語わかりません><
ソースコードって自分が書いたソースコードだけですか?
それともgo getでインストールしたのとか/usr/local/go以下のも全部ですか?
- 356 :デフォルトの名無しさん:2014/11/07(金) 02:16:51.54 ID:h+JOAERE.net
- 今後、ART+golang vs iOS+swiftの対決になる。
- 357 :デフォルトの名無しさん:2014/11/07(金) 10:31:39.22 ID:s6Ia4x9k.net
- そうか、ARTはLLVMだから、高速化のみならず、ここからGoやPythonまで巻き込んでいく可能性もあるのか
- 358 :デフォルトの名無しさん:2014/11/07(金) 10:38:27.06 ID:xYnXm+N7.net
- Clang+LLVMみたいにGolang+LLVMになるって事?
- 359 :デフォルトの名無しさん:2014/11/11(火) 12:41:50.08 ID:wdqJ9aU+.net
- Happy birthday to you,
Happy birthday to you,
Happy birthday, dear golang〜♪
Happy birthday to you〜♪
- 360 :デフォルトの名無しさん:2014/11/11(火) 13:33:55.75 ID:7vWNWhS8.net
- 見上げて golang 夜の星を
小さな星の 小さな光が
ささやかな幸せを うたってる
- 361 :デフォルトの名無しさん:2014/11/16(日) 03:04:27.57 ID:DLuhiTiM.net
- Google's Go To Move From Mercurial To GitHub
http://www.phoronix.com/scan.php?page=news_item&px=MTgzODc
- 362 :デフォルトの名無しさん:2014/11/16(日) 07:32:46.53 ID:01IXT5Y2.net
- むしろGitHubじゃなかったんだ、意外
- 363 :デフォルトの名無しさん:2014/11/16(日) 08:29:57.40 ID:lR2mulvd.net
- goto 禁止
- 364 :デフォルトの名無しさん:2014/11/16(日) 09:02:44.60 ID:DyeXwdqD.net
- 今、TCPクライアントを書いているんですが、
テストで、サーバー側でCloseされたnet.ConnにWriteしても、
1回目は何のエラーも返さないんですが、なぜだか分かる人いますか?
2回目でbroken pipeと言われます。
- 365 :デフォルトの名無しさん:2014/11/16(日) 09:32:08.90 ID:DyeXwdqD.net
- すみません、ググったら解決しました。
http://grokbase.com/t/gg/golang-nuts/13570n38b0/go-nuts-why-net-conn-write-still-workable-on-disconnected-socket-tested-on-go1-1rc1
- 366 :デフォルトの名無しさん:2014/11/16(日) 14:08:08.00 ID:zDSUi8Bd.net
- うん知ってたよ
- 367 :デフォルトの名無しさん:2014/11/17(月) 17:21:35.06 ID:zuuyG41U.net
- そろそろGoのイディオムに沿ったリファクタリング本が欲しい
今までの物でも通じなくはないけど違和感がある
- 368 :デフォルトの名無しさん:2014/11/17(月) 21:09:13.40 ID:brk9wiVx.net
- 本がないと駄目とか馬鹿も大概にしろ
- 369 :デフォルトの名無しさん:2014/11/17(月) 22:16:15.49 ID:ppTtjJs6.net
- 消えろ少数言語
- 370 :デフォルトの名無しさん:2014/11/17(月) 22:40:13.14 ID:VgYWB20P.net
- 少数言語の存在を目障りに感じる奴って、脳のどこが壊れるとそうなるんだろうねw
- 371 :デフォルトの名無しさん:2014/11/17(月) 22:43:04.06 ID:C7tq3SGo.net
- むしろこれは伸びてくだろ
- 372 :デフォルトの名無しさん:2014/11/17(月) 22:52:12.08 ID:Ogg/6z+g.net
- 本は俺もほしいなぁ
ってか、本とかまともにないと絶対普及しないと思うし。
誰か本書いてくれないかなぁ(チラチラ
- 373 :デフォルトの名無しさん:2014/11/17(月) 23:10:56.23 ID:ppTtjJs6.net
- うるせー社員
Googleマップで見つけたチンパンジーとGo言語しゃべっとけよ、アホ
- 374 :デフォルトの名無しさん:2014/11/18(火) 00:10:29.13 ID:pFMenGyU.net
- 失望した
- 375 :デフォルトの名無しさん:2014/11/18(火) 00:13:06.84 ID:zcJbx4rP.net
- 失禁した
- 376 :デフォルトの名無しさん:2014/11/18(火) 11:45:48.09 ID:WPotnA1T.net
- インタフェースは遅くなると思って使わないようにしてたが
試しに使ってみたら便利すぎてフイタw
- 377 :デフォルトの名無しさん:2014/11/18(火) 14:17:21.30 ID:f2ThsyRx.net
- どう便利かPHPerの僕に教えろ!
- 378 :デフォルトの名無しさん:2014/11/20(木) 17:31:22.49 ID:YC7+DKYP.net
- 男「よろしくお願いします」
面接官「で、君は何の言語ができるの?」
男「Goができます」
面接官「他には?」
男「Goだけです。Go一筋なんです」
面接官「面接を終了します。結果は後日
お知らせします。ありがとうございました」
- 379 :デフォルトの名無しさん:2014/11/20(木) 17:40:23.96 ID:YC7+DKYP.net
- 男「よろしくお願いします」
面接官「で、君は何の言語ができるの?」
男「Goができます」
面接官「え、囲碁は言語じゃないですよ」
男「囲碁じゃなくてGoなんです」
面接官「はあ? 言ってることがわかりません。面接を終了します。
結果は後日お知らせします。ありがとうございました」
- 380 :デフォルトの名無しさん:2014/11/20(木) 17:42:10.67 ID:oY1GPGoB.net
- PHPerの自己投影かw
- 381 :デフォルトの名無しさん:2014/11/20(木) 17:50:59.42 ID:YC7+DKYP.net
- 男「OK, I'm ready.」
面接官「By the way, what languages could you use」
男「I can use Go.」
面接官「What's!?」
男「Go!」
面接官「What are you saying? Where should we go to?」
男「Go!」
面接官「Oh, what a shitting guy! Get out of here!」
- 382 :デフォルトの名無しさん:2014/11/20(木) 17:58:59.99 ID:B4HwyTzw.net
- (~)
γ´⌒`ヽ
{i:i:i:i:i:i:i:i:}
/´⌒ヽ ) ツマンネw
( __ )つ ⌒゚
' '''"''"" "'゙''` '゙ ゙゚' ''' '' ''' ゚` ゙ ゚ ゙''` `
- 383 :デフォルトの名無しさん:2014/11/20(木) 20:50:01.64 ID:0cDVql0w.net
- じゃ次はsheでよろしく
- 384 :デフォルトの名無しさん:2014/11/20(木) 23:00:01.41 ID:1ob9Wc7O.net
- いち
にー
さん
しー C の次だから
ごー Go
なんだろ?
- 385 :デフォルトの名無しさん:2014/11/20(木) 23:08:50.77 ID:vc5Nijr7.net
- Java(Sun microsystems)
C
Go
Heroku
- 386 :デフォルトの名無しさん:2014/11/20(木) 23:24:25.14 ID:4zN84dTB.net
- Where should we go to??
- 387 :デフォルトの名無しさん:2014/11/20(木) 23:26:15.06 ID:1ob9Wc7O.net
- next C な名前の言語はたくさんあるな
C++, D, C#(c++++), Go
- 388 :デフォルトの名無しさん:2014/11/20(木) 23:29:04.83 ID:zf12BS4g.net
- 俺も死の次ってことでheaven言語作ってくるわ
- 389 :デフォルトの名無しさん:2014/11/20(木) 23:29:44.04 ID:zf12BS4g.net
- 糞スペル
- 390 :デフォルトの名無しさん:2014/11/21(金) 10:22:44.31 ID:OG/Y7Xo1.net
- [仕事量]
PHP>Go
[利用者]
PHP>Go
[実績]
PHP>Go
トリプルコンボでPHPerの勝ち
Goferもっと頑張りたまえ
- 391 :デフォルトの名無しさん:2014/11/21(金) 10:59:25.46 ID:Iey8mlHv.net
- PHPはちょっと…
- 392 :デフォルトの名無しさん:2014/11/21(金) 12:16:17.06 ID:RKwctBBa.net
- カンマ入り数値からカンマ外すのは、これ以外に無い?
strings.Replace("15,180,000", ",", "", -1))
- 393 :デフォルトの名無しさん:2014/11/21(金) 12:20:45.57 ID:UnHbl35a.net
- 配列にして結合
- 394 :デフォルトの名無しさん:2014/11/21(金) 13:47:11.98 ID:RKwctBBa.net
- SplitしてJoinかな
ベンチマーク取ってみるよアンガと
- 395 :デフォルトの名無しさん:2014/11/21(金) 14:09:37.19 ID:RKwctBBa.net
- BenchmarkSplitJoin 10000000 277 ns/op
BenchmarkReplace 10000000 177 ns/op
こんな感じ
- 396 :デフォルトの名無しさん:2014/11/30(日) 09:07:03.18 ID:NdiYUZYS.net
- 合コンおーいぇー
- 397 :デフォルトの名無しさん:2014/12/02(火) 05:14:09.00 ID:Mms1FSAQ.net
- インストールしようとしてググってたら、
公式だとtar落として自分で展開してpath通せって書いてあるんだけど
EPEL参照でyumからインスコ出来るっぽい
公式でそっちにしないのは、この方法だとなんか不都合あるんだろうか
- 398 :デフォルトの名無しさん:2014/12/02(火) 07:38:42.44 ID:vquYws+a.net
- 今は知らないが、俺が apt で入れたときは
go get でシステム領域を汚そうとしたから止めた。
- 399 :デフォルトの名無しさん:2014/12/02(火) 18:04:09.77 ID:Mms1FSAQ.net
- >>398
それって使わなくなった時に削除するのがめんどいってのがデメリットなのかな
アップデートとかも全部yumでやるから別にいいかなぁ…
どもども
- 400 :デフォルトの名無しさん:2014/12/03(水) 03:59:06.16 ID:xemfXL8Z.net
- yumからのインスコで使うことにしたけど、
一個めんどくさい点があった
GOROOTを設定しないとbuildとか出来ない
pathにバージョンとか入ってるわけじゃないので
バージョンアップするたびに環境変数修正ってのはなさそうだけど
- 401 :デフォルトの名無しさん:2014/12/04(木) 19:17:39.60 ID:FmXLQYZZ.net
- 公式はepelじゃないんだから妥当だと思う。
でないとepel自身がパッケージ作れんがな。
- 402 :デフォルトの名無しさん:2014/12/08(月) 01:06:16.96 ID:jJwEDCVJ.net
- AngoIMEで書いているで
スマフォでさくさく並列処理楽ちんプログラム書けるとか
BPS時代がきたわ
問題はJKが隣にいないことやw
- 403 :デフォルトの名無しさん:2014/12/08(月) 01:23:42.15 ID:gpxOhL3D.net
- BPSならJSだろう
- 404 :デフォルトの名無しさん:2014/12/08(月) 13:00:08.49 ID:y0p0oDrX.net
- 洋館マソ
- 405 :デフォルトの名無しさん:2014/12/10(水) 22:15:28.40 ID:3ZzrTcyc.net
- ttp://go-tour-jp.appspot.com/#37
--------------------------------
func main() {
m = make(map[string]Vertex)
m["Bell Labs"] = Vertex{
40.68433, -74.39967,
}
m["Bell Labs"].Lat = float64(1) ←
fmt.Println(m["Bell Labs"])
}
--------------------------------
一行加えたら、
cannot assign to m["Bell Labs"].Lat
ってコケるんだけど
mapって別に参照専用ってわけでもない連想配列ですよね?
なんでコケるんでしょうかこれ…
- 406 :デフォルトの名無しさん:2014/12/10(水) 22:38:54.56 ID:hVfFOG57.net
- 面倒くさいけど、こんな風にするみたい
ptr := m["Bell Labs"]
ptr.Lat = float64(1)
m["Bell Labs"] = ptr
Issue 3117: cannot assign to a field of a map element directly: m["foo"].f = x
https://code.google.com/p/go/issues/detail?id=3117
- 407 :デフォルトの名無しさん:2014/12/10(水) 22:47:12.63 ID:3ZzrTcyc.net
- >>406
私の認識や手順が違うとかじゃなく、ほんとにそのままでは出来ないんですね
でもwork-aroundって書いてるからそのうち直す的な感じなのかな
2年前ってのがあれですがw
ともあれ、ありがとうございます。
- 408 :デフォルトの名無しさん:2014/12/11(木) 15:31:26.79 ID:HIgp7OEe.net
- go listってやっても
can't load package: package .: no buildable Go source files in /home/kido
ってなります
gocodeをgo getでインストールしてあるのですがどうしてgo listで表示されないんですか?
- 409 :デフォルトの名無しさん:2014/12/11(木) 15:49:25.67 ID:SBn2bhiW.net
- >>408
http://golang.jp/install#install
- 410 :デフォルトの名無しさん:2014/12/13(土) 12:01:31.39 ID:BVSGhnq7.net
- >>405
structは値型だからね
m["unko"]はmに格納されてるVertexのコピーが返される
これに修正加えても反映されないよーっていうエラー
だからそう言う書き方がしたいなら
map[string]*Vertex
って宣言するといい
- 411 :名無しさん@そうだ選挙に行こう:2014/12/13(土) 12:12:47.84 ID:imyzRhSY.net
- >>410
var m map[string]*Vertex
func main() {
m = make(map[string]*Vertex)
m["Bell Labs"] = &Vertex{
40.68433, -74.39967,
}
m["Bell Labs"].Lat = float64(1)
fmt.Println(m["Bell Labs"])
}
これで行けました。ありがとうございます!
便乗で質問なのですが、
var m map[string]*Vertex
mapに関しては個人的に全部これでいいんじゃないかなと思ってしまうのですが
リファレンス型(ポインタ型?)を使うデメリットってあるんでしょうか。
自分で思いつくのは、
値 リファレンス
メリット ? アドレス情報にしかメモリを使わない
デメリット コピー分メモリを食う ソースがやや煩雑に
とう感じなのですが…
- 412 :名無しさん@そうだ選挙に行こう:2014/12/13(土) 13:29:33.21 ID:WvyZJyoU.net
- primitive 型の時は困るな…
m = make(map[string]*int)
m["Bell Labs"] = &1
とかできないし…
m = make(map[string]*int)
x := 1
m["Bell Labs"] = &x
とかするのも本末転倒の様な気が
- 413 :名無しさん@そうだ選挙に行こう:2014/12/13(土) 14:08:11.12 ID:imyzRhSY.net
- すみませんよくわかっていなかったようです…
type Vertex struct { Hage int }
func main() {
//primitive型 ------
var m map[string]int
m = make(map[string]int)
m["Bell Labs"] = 1
fmt.Println(m)
//中身構造体 ------
var n map[string]*Vertex
n = make(map[string]*Vertex)
n["Bell Labs"] = &Vertex{}
n["Bell Labs"].Hage = 1
fmt.Println(n)
//中身slice ------
var o map[string][]int
o = make(map[string][]int)
o["Bell Labs"] = append(o["Bell Labs"], 1)
fmt.Println(o)
o["Bell Labs"][0] = 2
fmt.Println(o)
}
こんな感じの使い分けですかね(´・ω・`)
sliceはappendでやれば直でokという感じなのかな…
- 414 :名無しさん@そうだ選挙に行こう:2014/12/13(土) 14:43:59.47 ID:BVSGhnq7.net
- >>411
小さい構造体とかプリミティブなやつはポインタを取るより値渡しの方が速いって読んだことある
(結構公式な文書だったと思うんだけどどこだったか忘れた。すまん)
だからどっちかいいかは使い方によるのかもしれない
>>413
sliceは参照型だからね
それ自体でポインタみたいなもんだから直でいける
- 415 :名無しさん@そうだ選挙に行こう:2014/12/13(土) 23:01:44.70 ID:imyzRhSY.net
- >>414
遅くなりましたがありがとうございます!
- 416 :デフォルトの名無しさん:2014/12/29(月) 23:22:29.55 ID:QuoLDkEA.net
- 高階関数ってリフレクションしないと駄目っぽいな
せっかく関数が第一級オブジェクトなのに何か勿体ない
- 417 :デフォルトの名無しさん:2015/01/06(火) 02:43:41.06 ID:zpgKMgJd.net
- mattnさんgo本書いてくんないかなー
- 418 :デフォルトの名無しさん:2015/01/06(火) 17:32:14.22 ID:M3VR0ni5.net
- 俺もmattn本に+1
言語仕様の説明よりもスーパーサンプル集的な書籍が欲しい
- 419 :デフォルトの名無しさん:2015/01/06(火) 21:00:48.30 ID:h8AkEaym.net
- 誰でもいいから本出してほしい
多少高くてもいいから。できれば一人でなく複数人
- 420 :デフォルトの名無しさん:2015/01/07(水) 09:21:21.81 ID:AOiER/0b.net
- もう出てるけど、もっと深いのが欲しいのか?
- 421 :デフォルトの名無しさん:2015/01/07(水) 14:46:54.67 ID:e24S5a9I.net
- androidで盛り上がれば本も増えるだろうな
- 422 :デフォルトの名無しさん:2015/01/07(水) 19:22:58.91 ID:cvGCzuKQ.net
- >>418
ほんとこれ
言語仕様やライブラリ仕様はリファレンスが十分過ぎるぐらい充実してるしな
- 423 :デフォルトの名無しさん:2015/01/07(水) 23:22:36.07 ID:TubS6YKr.net
- マトン先生今年はヒツジ年だからなんか出すはず!
- 424 :デフォルトの名無しさん:2015/01/08(木) 12:15:26.41 ID:r59ZtkkO.net
- 配列の最高値とインデックスを返すような多値関数から
最高値だけをAppendしたい場合、一旦変数に受けないと無理?
- 425 :デフォルトの名無しさん:2015/01/08(木) 16:15:54.59 ID:SnsO6Hw4.net
- なぜmattunさんはチンチン丸出しの素っ裸なのか…
- 426 :デフォルトの名無しさん:2015/01/08(木) 20:38:46.44 ID:PYPv/bx4.net
- >>424
無理やりだけどこんな感じで
package main
import (
"fmt"
)
func _max(list []int) (int, int) {
if len(list) == 0 {
return 0, -1
}
max := list[0]
pos := 0
for i := 0; i < len(list); i++ {
if max < list[i] {
max = list[i]
pos = i
}
}
return max, pos
}
func main() {
arr_1 := []int{1, 10, 3, 4, 5, 6, 7, 8}
arr_2 := []int{100}
arr_2 = append(arr_2, (func(arg ...int) int { return arg[0] }(_max(arr_1))))
fmt.Printf("%v\n", arr_2)
}
- 427 :デフォルトの名無しさん:2015/01/08(木) 20:48:39.89 ID:r59ZtkkO.net
- >>426
凄い、全然思い付かなかったです
勉強になりました。ありがとう
- 428 :デフォルトの名無しさん:2015/01/08(木) 23:08:21.81 ID:JAYi2dXH.net
- 即時関数か
golangでも出来るんやな
- 429 :デフォルトの名無しさん:2015/02/04(水) 19:19:43.13 ID:8Sw6mo5N.net
- go getでインストールしたパッケージはGOPATHで指定したパスにインストールされるけどさ
go listっていうのはこのGOPATHにインストールされているパッケージ一覧を表示してくれるってわけじゃないんですか?
$ go list
>can't load package: package .: no buildable Go source files in /home/kidotoyohiko
こうなるんですが
- 430 :デフォルトの名無しさん:2015/03/09(月) 12:22:38.99 ID:ZcxXoJVE.net
- Go言語を勉強し始めたばかりだけど匿名フィールドは構造体名でアクセスできるんだな
気づくのにすこし時間かかった
type Aaa struct {
str1 string
}
func newAaa() *Aaa {
t := new(Aaa)
t.str1 = "str1"
return t
}
func (t *Aaa) Print() {
fmt.Println(t.str1)
}
type Bbb struct {
*Aaa
str2 string
}
func newBbb() *Bbb {
t := new(Bbb)
t.Aaa = newAaa()
t.str2 = "str2"
return t
}
func (t *Bbb) Print() {
t.Aaa.Print()
fmt.Println(t.str2)
}
func main() {
t := newBbb()
t.Print()
}
- 431 :デフォルトの名無しさん:2015/04/27(月) 03:14:20.43 ID:0ybKBVZB.net
- http://ideone.com/4EFjar
pop()と同じ動作を想定して, pop1() pop2()をかいてみたんですが
どちらも r=4 になってしまいます
goで式の評価順はどうなってるのでしょうか?
- 432 :デフォルトの名無しさん:2015/04/27(月) 08:55:25.98 ID:SK92dx/y.net
- >>431
appendって領域が十分なら上書きしちゃったりするんじゃなかったっけ?
- 433 :デフォルトの名無しさん:2015/04/27(月) 11:53:03.95 ID:0ybKBVZB.net
- >>432
上書きされてました ありがとうございます
- 434 :デフォルトの名無しさん:2015/05/27(水) 08:44:30.80 ID:CaoeGQX/.net
- main関数を他の関数の上に持っていくか下に持っていくか迷ってるんだけど
ルールがあったりする?
- 435 :デフォルトの名無しさん:2015/05/27(水) 12:03:24.54 ID:KwGlDoiU.net
- C(K&R)ならともかくGOじゃないっしょ
無いよね?
- 436 :デフォルトの名無しさん:2015/06/03(水) 23:41:10.45 ID:WPfxguwe.net
- Cじゃねえんだから好きにしろよ
- 437 :デフォルトの名無しさん:2015/06/05(金) 22:59:12.97 ID:kU15dp2l.net
- Cとか書いた事も無いので何で後ろに有るのか不思議に思ってたけど
ググってスッキリした
- 438 :デフォルトの名無しさん:2015/06/07(日) 17:29:20.20 ID:rVbuZbAc.net
- A Tour of Go(日本語版)のフィボナッチ数のExerciseはテストされないのか
- 439 :デフォルトの名無しさん:2015/06/10(水) 19:04:40.57 ID:vRKJ93PX.net
- A Tour od Go 日本語訳が色々辛い
- 440 :デフォルトの名無しさん:2015/06/11(木) 20:17:20.73 ID:7zT8SS54.net
- go build はカレントディレクトリに実行ファイルを生成
go install は go build に加えて実行ファイルをGOBINに移動させる
って理解であってる?
- 441 :デフォルトの名無しさん:2015/06/18(木) 12:32:46.05 ID:UagCHqSk.net
- >>440
ttp://jp.techcrunch.com/2015/06/18/20150617google-microsoft-mozilla-and-others-team-up-to-launch-webassembly-a-new-binary-format-for-the-web/
goがクライアントサイドで動くかも?
- 442 :デフォルトの名無しさん:2015/06/18(木) 13:02:41.32 ID:oefBmuK0.net
- レスやないやん
- 443 :デフォルトの名無しさん:2015/06/18(木) 17:54:28.09 ID:z2QMHecM.net
- >>441
おおそれは面白そう
- 444 :デフォルトの名無しさん:2015/06/19(金) 16:59:13.37 ID:fpEnerGj.net
- サーバサイドアプリを作ってるんですが、
ファイルの変更を検出して今のプロセスを殺して go run XXX.go を再実行してくれる良いツールないでしょうか?
Ctrl+c して go run XXXX.go とか地味にイライラする
- 445 :デフォルトの名無しさん:2015/06/19(金) 17:41:22.39 ID:fpEnerGj.net
- >>444
自己レスですがginで解決しました。
ttps://github.com/codegangsta/gin
- 446 :デフォルトの名無しさん:2015/10/31(土) 18:57:33.63 ID:ELtLmf7b.net
- DLL作れるようになったのかと思ったらWindowsじゃサポートされてないのね
- 447 :デフォルトの名無しさん:2015/11/25(水) 07:15:24.66 ID:rJmLSs5J.net
- http://kwatch.houkagoteatime.net/blog/2015/11/24/misleading-articles/
- 448 :デフォルトの名無しさん:2015/12/01(火) 23:30:02.07 ID:YHNsRt8H.net
- http://go-talks.appspot.com/github.com/lestrrat/go-slides/2014-yapcasia-go-for-perl-mongers/main.slide#58
このスライドの struct{} と struct{}{} ってなんですか?
- 449 :デフォルトの名無しさん:2015/12/02(水) 08:00:24.78 ID:98kWsFh0.net
- struct{}
空の構造体定義
struct{}{}
空の構造体定義&生成
- 450 :447:2015/12/02(水) 10:15:23.48 ID:I9gRsCT5.net
- >>449
ありがとうございました。
- 451 :デフォルトの名無しさん:2015/12/04(金) 07:20:04.14 ID:codNuEGF.net
- GOって全然流行らないね
- 452 :デフォルトの名無しさん:2015/12/04(金) 12:12:16.23 ID:RqbsZlfd.net
- 1.5.2リリースきたー
>>451
そうかな?
- 453 :デフォルトの名無しさん:2015/12/04(金) 13:21:31.35 ID:hYxOV08j.net
- Rails登場前のRubyくらいの知名度かな
非エンジニアなクライアントにgolangもやってます、と伝えても初耳って人が多いね
技術者ならだいたい聞いたことはあるって帰ってくるけど
もっと流行っても良いんじゃないかとは思うけど、ぐぐれば情報が十分ある程度には使われてるし不自由な状況ではないんだよな
- 454 :デフォルトの名無しさん:2015/12/05(土) 02:50:44.50 ID:XzVzQBrr.net
- ググラビリティが悪い
もうちょい名前を考えて欲しかったな
- 455 :デフォルトの名無しさん:2015/12/19(土) 15:53:57.84 ID:TV8OiN+s.net
- goのEditorで今のおすすめは何かな?
俺の中ではVisualStudioCodeなんですが。
- 456 :デフォルトの名無しさん:2015/12/19(土) 23:54:09.03 ID:GM3q6wlH.net
- sublime textで特に不満ないよ
- 457 :デフォルトの名無しさん:2015/12/25(金) 02:25:51.96 ID:y60VPA7n.net
- goは外部ツール充実してっからどのエディタでも同じレベルで快適だよ。だいたいgo用のパッケージかプラグインあるでしょ。だから好きなエディタ使え
- 458 :デフォルトの名無しさん:2015/12/31(木) 20:19:55.18 ID:BO+mMVFR.net
- >> 455
IntelliJがいいよ。
はてなの中の人もオススメしてた。
- 459 :デフォルトの名無しさん:2015/12/31(木) 20:20:32.48 ID:BO+mMVFR.net
- 上のレス >> 454 だった
- 460 :デフォルトの名無しさん:2015/12/31(木) 23:57:36.14 ID:0xf2UWz7.net
- 来年はgo言語もちょっと盛り上がるといいね
- 461 :デフォルトの名無しさん:2016/01/01(金) 13:12:47.05 ID:E/hak+Py.net
- マ イ ン ド コ ン ト ロ ー ル の手法
・沢山の人が、偏った意見を一貫して支持する
偏った意見でも、集団の中でその意見が信じられていれば、自分の考え方は間違っているのか、等と思わせる手法
・不利な質問をさせなくしたり、不利な質問には答えない、スルーする
誰にも質問や反論をさせないことにより、誰もが皆、疑いなど無いんだと信じ込ませる手法
偏った思想や考え方に染まっていたり、常識が通じない人間は、頭が悪いフリをしているカルト工作員の可能性が高い
靖 国 参 拝、皇 族、国 旗 国 歌、神 社 神 道を嫌う カ ル ト
10人に一人は カ ル ト か 外 国 人
「ガ ス ラ イ テ ィ ン グ」 で 検 索 を !ll
- 462 :デフォルトの名無しさん:2016/01/02(土) 15:11:34.83 ID:dDeNCcj5.net
- ・沢山の人が、偏った意見を一貫して支持する
偏った意見でも、集団の中でその意見が信じられていれば、自分の考え方は間違っているのか、等と思わせる手法
消費税ですね判ります
- 463 :デフォルトの名無しさん:2016/01/06(水) 23:14:14.44 ID:4CIgSJD1.net
- オライリーから本出るね
- 464 :デフォルトの名無しさん:2016/01/07(木) 00:14:59.45 ID:0znhgkz2.net
- どうせなら The Go Programming Language を翻訳してくれればいいのに
- 465 :デフォルトの名無しさん:2016/01/07(木) 00:45:00.91 ID:wyILSx5n.net
- 今年3月に翻訳本が出るんじゃなかったっけ
- 466 :デフォルトの名無しさん:2016/01/07(木) 12:35:59.31 ID:N5HH13xV.net
- 英語版だと5ドルで買えるから英語版読んだら。
- 467 :デフォルトの名無しさん:2016/01/13(水) 09:40:10.12 ID:LriSB9Er.net
- Goの性能を測ってみたいと思いましてね
構成はこう
(1) Win10 Postgres Apache PHP5.6
PDO, prepare, execute, print
(2) Win10 Postgres GO
sql.Open, Query, Next(Fprintf)
テーブルから1000行6カラム読んでプリント
SQL文は同じ、Select * From TestTable Limit 1000
というテストを、負荷テストツールのpylot1.26でやってみたんすよ
結果
(1) 750リクエスト/分 80msec/一回
(2) 706リクエスト/分 84msec/一回
PHPはフレームワークも何も無しで10行くらい
Goも通ってるのは10行くらいなんですが
9割方データベースだろ、って状態ではこんな感じでしょうかね
- 468 :デフォルトの名無しさん:2016/01/13(水) 11:46:07.30 ID:EwraTGVM.net
- Win10使ってる時点でお察し
- 469 :デフォルトの名無しさん:2016/01/13(水) 12:08:33.96 ID:uMvtIS1u.net
- 横からだけどこういう比較するときはVirtualBoxあたりでLinux環境立てたほうが良いんかね?
- 470 :デフォルトの名無しさん:2016/01/13(水) 14:35:53.26 ID:CipOufW1.net
- Go「Linuxなら…本気出す」
別の場所でちょい古のDebianで試してみた所
(1)PHP 463リクエスト/分 129msec/回
(2)Go 410リクエスト/分 145msec/回
やっぱりGoの方がわずかに遅いっぽい…
- 471 :デフォルトの名無しさん:2016/01/13(水) 14:58:45.80 ID:CipOufW1.net
- PasteBinに貼って置くので「ここやがな」てのが有れば教えてくれください
ttp://pastebin.com/kQBFhVQp
ttp://pastebin.com/6bACps6v
- 472 :デフォルトの名無しさん:2016/01/13(水) 15:54:22.06 ID:EwraTGVM.net
- 糞はfmtじゃね
- 473 :デフォルトの名無しさん:2016/01/13(水) 17:13:31.80 ID:jmhOlm9C.net
- part1 て....人気ないの?それとも2ch に書き込むような品性下劣な人間が少ないってこと?
- 474 :デフォルトの名無しさん:2016/01/13(水) 17:23:19.96 ID:7cbOl3Dp.net
- Tiobe だと 50位以内に入ってないぞ
まあキッシュイーターが群がるような代物でもないけど
- 475 :デフォルトの名無しさん:2016/01/13(水) 18:05:20.91 ID:EwraTGVM.net
- >>473
前にも Go スレは何度か建ってたのでこれが part1 というのは間違い
- 476 :デフォルトの名無しさん:2016/01/13(水) 19:30:58.60 ID:cjoN9klk.net
- 言語仕様が安定してるから話すことないとかかな。
Swiftなんかガンガン変更しまくりで試行錯誤感が半端ない。
goにジェネリクスが付いたらまた変わるのかも。
正直メタプログラミングが弱いのが辛い。ちょっとしたツール系を作るのはいいけど、
Webアプリをこれで作りたいとあんまり思わないだよなぁ
- 477 :デフォルトの名無しさん:2016/01/13(水) 22:56:09.25 ID:jmhOlm9C.net
- なるほど。まあ罵詈雑言の応酬より過疎ってた方が読みやすくてありがたい
- 478 :デフォルトの名無しさん:2016/01/13(水) 23:22:36.01 ID:Me1xU7va.net
- PDOはネイティブ呼び出しだから速いよ
- 479 :デフォルトの名無しさん:2016/01/14(木) 03:24:09.60 ID:byr4bFjT.net
- >>476
webアプリではないけど、GAE/goをモバイルバックエンドに使ったらスケール悩まず書けて素敵なんだけどな
最近ならSPAでも便利だろう
小規模サービスなんで恐縮だが個人的には安く上がってると思ってる
ただそういう向きで価値見出す人はすでにAWSに取られちゃってる印象だよね
Datastoreを高いとは言わないけど落とし穴が多いとは思うし
goでwebやるならGAEも是非とは言いたい
- 480 :デフォルトの名無しさん:2016/01/14(木) 03:40:41.70 ID:UUuhE8Rb.net
- >>471
自己メモレス
Fprintf(w, "書式", 変数)をやめる
Fprint(w, r.a + ":" + r.b ...
その場で一度に文字列連結、にすると2%くらい速くなる模様ですぞ
こうするとやってることはPHPとほとんど同一で、差も微粒子レベルで存在になるかな
- 481 :デフォルトの名無しさん:2016/01/14(木) 10:38:57.14 ID:YBLBbkKl.net
- >>479
手軽にwebAPIサーバーが書けるフレームワークって何が便利なの?
echo?gin?そろそろデファクトスタンダードが出てほしい。
最近Elixir+phonix触ってるんだけど、エラー時にプロセス再起動する機能が組み込んであるのが便利そう。
goでデーモン書くのって決まりきった書き方もないみたいだし、
いろいろ下回りを自前で準備する感じがするんだけど、、、
- 482 :デフォルトの名無しさん:2016/01/14(木) 19:16:39.15 ID:MVoyv7BA.net
- >>480
Fprintf も止めればもっと速くなる
- 483 :デフォルトの名無しさん:2016/01/14(木) 21:11:50.22 ID:x8stlI1n.net
- goの本
http://www.amazon.co.jp/dp/4873117526/
- 484 :デフォルトの名無しさん:2016/01/14(木) 21:28:59.92 ID:eYypgRpr.net
- >>483
発売日は、まだ先なのね。
本屋行って探しちゃったじゃんかー
- 485 :デフォルトの名無しさん:2016/01/15(金) 23:01:47.93 ID:27wkGJB0.net
- 1.5.3ってセキュリティfixだけですか?
milestoneのは入っているんでしょうか。
- 486 :デフォルトの名無しさん:2016/01/16(土) 05:56:46.68 ID:2dhmjbRf.net
- >>483
おっ、どんなだろ予約しておこう
- 487 :デフォルトの名無しさん:2016/01/25(月) 00:44:23.45 ID:MxjMVzG6.net
- Goで素数判定をエラトステネスのふるいにして書いてみたけどrubyのprimeライブラリより遅かった
Goってあんまり速くないの?教えてエロい人
- 488 :デフォルトの名無しさん:2016/01/25(月) 00:54:54.11 ID:11Jcfjfr.net
- Go のバージョンと実際に書かれたコードが分からんので何とも言えない
- 489 :デフォルトの名無しさん:2016/01/25(月) 01:16:17.48 ID:MxjMVzG6.net
- >>488
バージョンは1.5
コードは俺のが遅いのかまともに書いてる人のでも遅いのかが気になってるだけだから載せるまでもないかなと思ってる
- 490 :デフォルトの名無しさん:2016/01/25(月) 01:48:00.41 ID:11Jcfjfr.net
- $ ruby --version
ruby 2.2.3p173 (2015-08-18) [i386-linux-gnu]
$ time { ruby -e 'require "prime";print Prime.take(10000)' > /dev/null; }
real 0m0.405s
user 0m0.400s
sys 0m0.008s
↓このコードをローカルにコピーして、
http://play.golang.org/p/XXiTIpRBAu
const N = 104740 に変更してビルド・実行。
$ go version
go version devel +4f40182 Sat Jan 23 01:28:06 2016 +0000 linux/386
$ go build prime.go
$ time { ./prime > /dev/null; }
real 0m0.064s
user 0m0.048s
sys 0m0.016s
- 491 :デフォルトの名無しさん:2016/01/25(月) 02:28:15.33 ID:MxjMVzG6.net
- >>490 thx
それぐらいの桁数だと自分の環境でもgoのコードのが速いんだけど、桁数増えると圧倒的に負けるようになる
というかgoが時間かかりすぎる
104700000が素数かどうかの判定の時点ですでに負けてる
$ go version
go version go1.5.1 darwin/amd64
$ time ./prime
(結果略)
0.38s user 0.01s system 98% cpu 0.395 total
$ ruby -v
ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-darwin14]
$ time tuby -e 'require "prime"; p 104700000.prime?'
(結果略)
0.13s user 0.09s system 86% cpu 0.254 total
goコード: http://play.golang.org/p/1y7lrBML1-
- 492 :デフォルトの名無しさん:2016/01/25(月) 08:54:26.29 ID:11Jcfjfr.net
- そんなに遅いかな?
x86_64 環境で Prime.take(10000000) をやってみたんだけど(10^7)、
$ ruby --version
ruby 2.2.3p173 (2015-08-18) [x86_64-linux-gnu]
$ go version
go version devel +970ce1c Sun Jan 24 16:07:30 2016 +0000 linux/amd64
ruby: 0m25.204s
golang: 0m5.902s
となった。prime? メソッドについては後で ruby のソースコードを見てみる
- 493 :デフォルトの名無しさん:2016/01/25(月) 09:30:52.61 ID:11Jcfjfr.net
- ここは、
for i := 3; float64(i) < math.Sqrt(float64(n)); i += 2 {
flg = true
for _, j := range primes {
if int64(i) % j == 0 { flg = false }
}
if flg == true { primes = append(primes, int64(i)) }
}
こうすべきなんじゃ?
for i := 3; float64(i) < math.Sqrt(float64(n)); i += 2 {
flg = true
for _, j := range primes {
if n%j == 0 { return false } // 追加
if int64(i)%j == 0 { flg = false }
:
そりゃ n までの素数を全部計算してからチェックしたら遅いわな
- 494 :デフォルトの名無しさん:2016/01/27(水) 00:44:58.41 ID:YbPGx/2n.net
- >>493
よく考えたらprimeかどうかだけならそのifないと圧倒的に効率悪かったな
助かったサンクス
- 495 :デフォルトの名無しさん:2016/01/27(水) 10:03:42.93 ID:PS/Qpp4W.net
- >>494 はフィボナッチでも劇遅糞プログラミングしそう
- 496 :デフォルトの名無しさん:2016/01/27(水) 11:55:10.02 ID:ChRzt0VQ.net
- >>494
それで結果はどうなったの?rubyより早くなった?
- 497 :デフォルトの名無しさん:2016/01/27(水) 21:15:12.05 ID:hT8Bs+OE.net
- >>496
素数: 1853028778786433 について試してみた
$ time ruby -e 'require "prime"; puts 1853028778786433.prime?'
4.61s user 0.08s system 99% cpu 4.700 total
golang の方は有意な時間で判定できなかった。
逆に小さな約数を持つ場合だと golang のが早かったりする。
一体どうやったらこんなに速くなるんだ・・・
- 498 :デフォルトの名無しさん:2016/01/27(水) 21:33:03.27 ID:hT8Bs+OE.net
- と思って prime.rb を参考に改良した
$ time ./prime
1853028778786433 is prime!./prime4 0.18s user 0.01s system 98% cpu 0.189 total
いい感じ!アドバイスくれた人サンクスでした
コード: http://play.golang.org/p/-8oZ5IaC60
- 499 :デフォルトの名無しさん:2016/01/27(水) 23:10:29.76 ID:qL6rtn4g.net
- どれだけ高度なコンパイラを使おうとアルゴリズムがダメならインタプリタに負けるって事がはっきりわかんだね
- 500 :デフォルトの名無しさん:2016/01/30(土) 13:13:18.17 ID:dxvhMaRr.net
- http://play.golang.org/p/WgXW-WWQsX
- 501 :デフォルトの名無しさん:2016/01/30(土) 14:11:30.69 ID:VBtK9+ST.net
- >>500
細かいところだがサンクス
ちなみにどれぐらい速度変わった?
今出先で調べられないんで気になる
- 502 :デフォルトの名無しさん:2016/01/30(土) 18:06:51.65 ID:dxvhMaRr.net
- ごめん、はやくなってなかったorz
- 503 :デフォルトの名無しさん:2016/02/03(水) 01:00:13.99 ID:RekMB9Ax.net
- goは言語仕様が絞られて素敵だけど、
いざ使うとなるとやっぱりメタプログラミングに弱いのが辛い。
リフレクションも使いづらいし、ジェネリクスがほしい。
せめてelxirのマクロみたいな機能でもほしい。
- 504 :デフォルトの名無しさん:2016/02/03(水) 01:10:28.85 ID:sGnqiCrl.net
- groovy でも使っとけ
- 505 :デフォルトの名無しさん:2016/02/03(水) 19:27:02.90 ID:8oEH7nQt.net
- ,_---~~~~~----._
_,,_,*^____ _____``*g*\"*,
/ __/ /' ^. / \ ^@q f
[ @f | @)) | | @)) l 0 _/
\`/ \~____ / __ \_____/ \
| _l__l_ I
} [______] I
] | | | | お年寄り向け言語に文句言うな
] ~ ~ |
| |
| |
- 506 :デフォルトの名無しさん:2016/02/04(木) 08:13:31.10 ID:MUd/RGoB.net
- go は c の代替って感じだからな。
- 507 :デフォルトの名無しさん:2016/02/04(木) 17:21:48.10 ID:ob+62gtm.net
- >>505
plan9おじさん
- 508 :デフォルトの名無しさん:2016/02/04(木) 19:16:26.71 ID:qHo6spb8.net
- go buildで最適化オプションないよね。
他言語の最適化おプチョンって何してるかわからんけど(デバッグ機能とか削ってんの?)、
実はgoってもう少し早くなるんじゃないかと思うんだが。
- 509 :デフォルトの名無しさん:2016/02/04(木) 20:22:00.20 ID:7gWb47bj.net
- gccgo でも使えばいいんじゃない
- 510 :デフォルトの名無しさん:2016/02/06(土) 15:12:23.11 ID:+oaiB5r1.net
- gccgo はversion古すぎてむしろ遅い
- 511 :デフォルトの名無しさん:2016/02/18(木) 07:25:41.93 ID:R9/9Yxv0.net
- go 1.6 age
ttps://blog.golang.org/go1.6
- 512 :デフォルトの名無しさん:2016/02/18(木) 17:06:46.52 ID:45GMtAZP.net
- 1.6は少し難産だったかな。
- 513 :デフォルトの名無しさん:2016/02/25(木) 14:07:18.05 ID:1iIBqXg3.net
- Goってサンプルコード見た感じ
プロトタイプベースの動的型付けでJavaScriptみたいに見えるけど
ぜんぜん違う?
- 514 :デフォルトの名無しさん:2016/02/25(木) 18:19:46.58 ID:7HmTbcPG.net
- うん、全然違う。
- 515 :デフォルトの名無しさん:2016/02/26(金) 02:02:53.28 ID:xrOnn7Vq.net
- >>512
一番すごい変更はvendoringかな。
コンパイル速度も速いままだし。
あと開発環境はvisualStudioCodeのgoサポートが一番いい気がするんだけどどう?
debugが一応スタックトレースくらいは見れるから
code readlingしやすくなったかも
- 516 :デフォルトの名無しさん:2016/02/27(土) 10:39:29.98 ID:HPxqSVef.net
- >>515
なれるとvim。
- 517 :デフォルトの名無しさん:2016/02/27(土) 13:19:34.48 ID:yMp5JRD4.net
- 俺もVimだな
- 518 :デフォルトの名無しさん:2016/02/27(土) 13:25:33.79 ID:kW+aRgio.net
- >>517
vimは環境構築がよくわからなくて使いこなせない。
一から構築するとしてどこみりゃいいの?
- 519 :デフォルトの名無しさん:2016/02/27(土) 14:19:56.77 ID:HPxqSVef.net
- >>518
ttps://github.com/fatih/vim-go
- 520 :デフォルトの名無しさん:2016/03/01(火) 01:00:37.90 ID:29/rUB4E.net
- for r := range "よろしく" {
fmt.Printf("<%c>¥n",r)
}
と、書くと実際にはrに入るのはindexなので期待通りに動きません
goにおいて多値を帰す場合は受け取り側もその数分用意しなくてはいけない
のが仕様のはずですが、
これは組み込みの機能なので対象外の動作です。
せめてrにはvalueが入るのが基本動作なら良かったんですが
このような挙動なのにはなにか理由があるんでしょうか?
教えて下さい
- 521 :デフォルトの名無しさん:2016/03/01(火) 07:46:36.94 ID:6qCWzYt3.net
- 文字列がインデックス付きデータだからでしょ。
_, r := range "よろしく"
では駄目なの?
- 522 :デフォルトの名無しさん:2016/03/02(水) 02:02:01.07 ID:O+5v5XDS.net
- >>521
いえ、聞きたいのは
rangeの機能が通常のGoとしての関数の仕様と
異なる動作にしたのはどんな理由があってのことなのかと。
関数がエラーを含んだ多値を返すことを考慮して受け取り側は常に何個の返り値が返るか
意識することが必須ですが、
rangeは2つめの返り値を'_'で受取る必要が
なくても唯一動くことが許されていますよね
- 523 :デフォルトの名無しさん:2016/03/02(水) 02:36:27.86 ID:KGp7/CHI.net
- そもそもfor文なんだからインデックスだけ使う場合はそういう表記でも違和感なくね?と思うんですが
- 524 :デフォルトの名無しさん:2016/03/02(水) 07:53:32.49 ID:4uoCKH4m.net
- >>522
インデックスは一つ目だぞ
- 525 :デフォルトの名無しさん:2016/03/02(水) 07:57:52.01 ID:WtpIOuzZ.net
- >>522
型アサーションも第二返り値を付けると失敗時に panic せずに失敗したことを真偽値で返すし、
開発者はそうすることで利便性が上回ると判断したんでしょ。
- 526 :デフォルトの名無しさん:2016/03/02(水) 17:47:47.86 ID:O+5v5XDS.net
- >>525
あっ型アサーションもそういう挙動だったですね。
失念してました。
でもrangeで多値返却の省略可能な構文はメリットが思いつかなくないですか?
- 527 :デフォルトの名無しさん:2016/03/02(水) 19:29:42.93 ID:LM//BLJD.net
- >>526
型アサーションだけでなく comma OK 構文全部だね。
>rangeで多値返却の省略可能な構文はメリットが思いつかなくないですか
型アサーションの挙動を見るに、省略してると言うより返り値の数によって別の処理を呼び出してる感じだけど、
まあ、パターンを覚えてしまえば余計なもの書かなくて済んで楽だよ。
- 528 :デフォルトの名無しさん:2016/03/06(日) 23:04:28.69 ID:b6Djrwpa.net
- Goで使われたものでよく使ってるものとか面白いものとかないですか?
俺がよく使うのはghqです。
ghq : Manage remote repository clones
とりあえず試しにgit cloneするのに便利。後で迷わないし。
pecoと組み合わせで使っています
- 529 :デフォルトの名無しさん:2016/03/08(火) 07:20:41.16 ID:UEJ8DCRQ.net
- 仕事で使う使い捨てツールはgoで書いてるよ
rubyとかで書くと処理遅いから。
- 530 :デフォルトの名無しさん:2016/03/08(火) 11:28:08.83 ID:MTUVFWu6.net
- マッハの高速
- 531 :デフォルトの名無しさん:2016/03/08(火) 11:30:57.60 ID:MTUVFWu6.net
- ruby 2.2おそいのか。ハァー
- 532 :デフォルトの名無しさん:2016/03/08(火) 11:33:23.15 ID:MTUVFWu6.net
- 【アニメ】 マッハGoGoGo_OP - YouTube
https://www.youtube.com/watch?v=cPR45cBkRq4
- 533 :デフォルトの名無しさん:2016/03/11(金) 22:39:08.10 ID:nLZDtom/.net
- http://www.amazon.co.jp/gp/aw/d/4621300253/
- 534 :デフォルトの名無しさん:2016/03/12(土) 12:14:25.10 ID:SnyNHJuk.net
- 日本語版でたのか。原著出てから4か月ちょっとなので結構はやかったね。
http://www.informit.com/store/go-programming-language-9780134190440
- 535 :デフォルトの名無しさん:2016/03/12(土) 14:29:02.35 ID:BDXKc72j.net
- http://postd.cc/why-go-is-not-good/
こういう不利な点があっても使われる理由ってなんだと思う?
- 536 :デフォルトの名無しさん:2016/03/12(土) 14:48:41.88 ID:SnyNHJuk.net
- よく言われるのは、サーバーサイドでシングルバイナリのデプロイが楽とか。
unix上では、etcdやdockerコマンドみたいなところで使われてるよね。
GCもどんどん進化してるから、データストア的な大量メモリを扱うデーモンにも使えるようになってきてる。
- 537 :デフォルトの名無しさん:2016/03/12(土) 20:34:31.86 ID:DTB2KgOx.net
- それTheGoProgrammingLanguageの翻訳だよね?
- 538 :デフォルトの名無しさん:2016/03/12(土) 21:00:42.17 ID:+ss4n7rx.net
- 早とちりして発売されたのかとおもったら、6/15予定だった。
- 539 :デフォルトの名無しさん:2016/03/15(火) 22:07:51.01 ID:vgWvBE4N.net
- 4月にも初心者向けの本出るのね
- 540 :デフォルトの名無しさん:2016/03/16(水) 10:59:19.14 ID:Tb17X3fe.net
- だれかaltGo作ってくんないかな。
Goのエコシステムは最高だから、あとはもっとメタプログラミング強くしてほしい。
ジェネリクス付けて。
とTypeScript触りながら思いました。
- 541 :デフォルトの名無しさん:2016/03/19(土) 02:08:18.93 ID:lSlighbA.net
- cからc++みたいに、go templateになりそう。
- 542 :デフォルトの名無しさん:2016/04/05(火) 21:09:51.29 ID:5i0FcrUo.net
- 原書 2015/11/5
http://www.amazon.co.jp/dp/0134190440/
翻訳 2016/6/15
http://www.amazon.co.jp/dp/4621300253/
原書カスタマレビューの「神話本の著者」はおおげさすぎるだろ
What a surprise to see the author of the mythic ≪ The C Programming Language ≫ come back for a new language
- 543 :デフォルトの名無しさん:2016/04/05(火) 22:39:31.14 ID:gPD3pwmd.net
- まあカーニハンはかなりのビッグネームだし
- 544 :デフォルトの名無しさん:2016/04/05(火) 22:44:14.08 ID:mDmXAcnH.net
- goってあんまり言語仕様が変化しないイメージだから
本は作りやすそう。
goの今後の予定ってドコに書いてるんです?
- 545 :デフォルトの名無しさん:2016/04/06(水) 15:19:43.14 ID:9UltHY9g.net
- まあ、紀元前の本みたいなところはあるからね。
- 546 :デフォルトの名無しさん:2016/04/06(水) 15:27:24.96 ID:L63lM2I2.net
- >>540
Ruby でも使ってればいいんじゃない
- 547 :デフォルトの名無しさん:2016/04/13(水) 14:39:12.21 ID:ndZ6lh6D.net
- >>546
rubyは下位互換性を捨てながらマイナーバージョンアップしてないか?
たまにcocoapodsが死んだりするんだが。
goで書き直してほしい。コマンドラインツールこそgoで書いてほしい
- 548 :デフォルトの名無しさん:2016/04/20(水) 23:50:51.74 ID:ZQBKVnsi.net
- >>540
c++から馬鹿をたくさん召還するだけだな。
いらん。
- 549 :デフォルトの名無しさん:2016/05/01(日) 15:24:29.85 ID:tKi6j9CT.net
- 匿名通信(Tor、i2p等)ができるファイル共有ソフトBitComet(ビットコメット)みたいな、
BitTorrentがオープンソースで開発されています
言語は何でも大丈夫だそうなので、P2P書きたい!って人居ませんか?
Covenantの作者(Lyrise)がそういう人と話したいそうなので、よろしければツイートお願いします
https://twitter.com/Lyrise_al
ちなみにオイラはCovenantの完成が待ち遠しいプログラミングできないアスペルガーw
The Covenant Project
概要
Covenantは、純粋P2Pのファイル共有ソフトです
目的
インターネットにおける権力による抑圧を排除することが最終的な目標です。 そのためにCovenantでは、中央に依存しない、高効率で検索能力の高いファイル共有の機能をユーザーに提供します
特徴
Covenant = Bittorrent + Abstract Network + DHT + (Search = WoT + PoW)
接続は抽象化されているので、I2P, Tor, TCP, Proxy, その他を利用可能です
DHTにはKademlia + コネクションプールを使用します
UPnPによってポートを解放することができますが、Port0でも利用可能です(接続数は少なくなります)
検索リクエスト、アップロード、ダウンロードなどのすべての通信はDHT的に分散され、特定のサーバーに依存しません
」
- 550 :デフォルトの名無しさん:2016/05/11(水) 11:14:37.67 ID:sA9FQTwa.net
- goのいい記事あったら教えてくれませんか
GolangのGCを追う
http://deeeet.com/writing/2016/05/08/gogc-2016/
上記は良かったGo1.6以降のGCの調子が良さ気。だけどSTWを体感するようなものをつくッテはいないのでなんとも
- 551 :デフォルトの名無しさん:2016/05/11(水) 16:06:51.62 ID:eKmG0PfI.net
- GoでWindows GUIアプリ作った猛者はおりますか?
- 552 :デフォルトの名無しさん:2016/05/11(水) 22:35:30.19 ID:024Ag8VN.net
- http://golang.jp/pkg/exp-draw-x11
x serverあればどこでも動く
- 553 :デフォルトの名無しさん:2016/05/12(木) 06:10:52.87 ID:S2EnPjPz.net
- >>551
WALKを使えばそれなりのものは作れるよ
- 554 :デフォルトの名無しさん:2016/05/12(木) 15:55:56.59 ID:wiVsZFfr.net
- >> 550
Qt系の go-qml を使って普通に書いていますよ。
go-qml のインストールがすこし大変だけど
詳しい手順は以下の投稿したので参考にしてください。
https://groups.google.com/forum/#!topic/go-qml/S5Vho-XtQyo
- 555 :デフォルトの名無しさん:2016/06/01(水) 11:32:56.19 ID:sax7yxVA.net
- Go言語先週から学習し始めたけど、何か変な言語だな
JavaScriptのようにいまいち不完全な言語に思えてしまう
突然意図しない挙動が発生したりで、なかなか基幹システムでは使いにくいのかな?
Javaのようなガッチリ感がない気がするので
でもシンプルさなど良い面もあるけれど
- 556 :デフォルトの名無しさん:2016/06/01(水) 15:06:00.18 ID:559HNr1m.net
- 誰もGo言語を基幹システム作るのに使おうとは思わんよ
銀の弾丸がないことを理解していない人間が評価という行為をするのは難しい
- 557 :デフォルトの名無しさん:2016/06/01(水) 15:43:26.33 ID:c7aWQBRE.net
- 銀の玉ってマ板でよく目にするけど元ネタ何なん
- 558 :デフォルトの名無しさん:2016/06/01(水) 15:46:05.83 ID:kIamMPov.net
- 人月の神話
- 559 :デフォルトの名無しさん:2016/06/01(水) 16:05:38.28 ID:c7aWQBRE.net
- マジレスついた
ありがとう
- 560 :デフォルトの名無しさん:2016/06/01(水) 18:48:22.39 ID:2G+PcsXp.net
- >>556
残念ながら、世界中の国家の機関になりそうなシステムをGoで書いてるんだな、今
- 561 :デフォルトの名無しさん:2016/06/01(水) 19:23:38.40 ID:559HNr1m.net
- 多分、基幹システムの認識がずれている
- 562 :デフォルトの名無しさん:2016/06/01(水) 19:24:47.53 ID:+8tVRjk4.net
- どうでもいいが 555 と 559HNr1m で 5 が 5個入ってるな
- 563 :デフォルトの名無しさん:2016/06/01(水) 19:26:34.98 ID:559HNr1m.net
- 555をファイズと読んでしまった俺の認識も多分間違っている
- 564 :デフォルトの名無しさん:2016/06/01(水) 20:15:06.92 ID:0Dfr5L+i.net
- 国家の機関になりそうなシステムってものすごいフレーズだな
- 565 :デフォルトの名無しさん:2016/06/01(水) 22:56:48.57 ID:tjGnKxey.net
- LLやってる人からすると、バイナリをgdb使ってデバッグするのは教えてもらわないとなかなか難しいかも。
phpやrubyやってても普段からIDEでデバッガ使ってればそんなに違いはないんだけどね。
- 566 :デフォルトの名無しさん:2016/06/02(木) 00:19:36.30 ID:M2BPbwci.net
- 既出かもだけど、俺コレには震えた
http://qiita.com/mattn/items/b7889e3c036b408ae8bd
- 567 :デフォルトの名無しさん:2016/06/02(木) 04:24:28.34 ID:cXOBdHTr.net
- >>555
その意図しない挙動という部分を具体的に出してもらいたい。
大概そういうのは言語のせいじゃなくて自分のせい。というのを
長い年月で繰り返して学習するもんだけども
- 568 :デフォルトの名無しさん:2016/06/02(木) 09:51:15.12 ID:KfXFMNM2.net
- >>567
そういうことも考えずに書いてるから突っ込まれてんじゃないの?
- 569 :デフォルトの名無しさん:2016/06/02(木) 10:03:29.88 ID:sFcAoyCt.net
- func later() func(string) string {
...
return func(g string) string {
...
}
}
ごめん、このクロージャの最初の部分のlater() func(string) stringってどういう意味?
関数名がlater 戻り値がstringは分かるけど、func(string)がなんでこんな場所に書かれてるのかな、と
- 570 :デフォルトの名無しさん:2016/06/02(木) 10:16:38.46 ID:mKtftCeF.net
- laterの返り値がstringを引数にとってstringを返り値とする関数という意味では?
- 571 :デフォルトの名無しさん:2016/06/02(木) 12:02:45.10 ID:sFcAoyCt.net
- う〜ん、難しい...
- 572 :デフォルトの名無しさん:2016/06/02(木) 13:52:28.11 ID:cXOBdHTr.net
- >>571
cの宣言構文より見やすいはずなんだけどね
http://qiita.com/m0a/items/2b03b189d746ae231756
この辺読むとか
- 573 :デフォルトの名無しさん:2016/06/02(木) 15:52:21.01 ID:sFcAoyCt.net
- >>570
あぁ、なるほど
ようやく今理解した
func later() [func(string) string] {
[]は見やすいようにわざと書いたけど、こういう事だね
関数laterは引数は取らずに、
返り値として「stringを引数に取り、stringを返り値として返す」
- 574 :デフォルトの名無しさん:2016/06/02(木) 16:09:51.23 ID:sFcAoyCt.net
- あれ、ちょっと待って
https://ideone.com/i9EfQl
later()は引数取らないけれど、
f := later()
f("apple")
どっからstoreに"apple"なんか文字列引数が渡されてるの?
こういう型の場合、ローカル変数(ここではstore)にコンストラクタのような働きが起って自動的に引数がセットされるって事?
- 575 :デフォルトの名無しさん:2016/06/02(木) 16:14:42.71 ID:sFcAoyCt.net
- 連投ごめん
f := late()
によって、fはlater()の返り値の関数を取得してるんだね
だから、f("apple")には上の無名関数func(string) stringが呼び出されて"apple"が引数とされているってことか
ごめん、分かった
- 576 :デフォルトの名無しさん:2016/06/03(金) 17:56:32.51 ID:BR7tIPAt.net
- http://mattn.kaoriya.net/software/lang/go/20131112132831.htm
これの最初のコードの最後の部分、
<-workerquit
は何をしてるの?
特に変数に代入することもないし
func (g *G) ClearMsg() {
for len(g.task) > 0 {
<- g.task
}
}
も同じ事してるけど
チャネルを開放してるのかな、とも思ったけど、明示的にcloseしなくていいのかな、と
またはnilや空文字などにするとか
- 577 :デフォルトの名無しさん:2016/06/03(金) 19:00:57.59 ID:qwZkBXwi.net
- 終了待ちじゃない?
http://ashitani.jp/golangtips/tips_goroutine.html#
- 578 :デフォルトの名無しさん:2016/06/04(土) 20:36:19.02 ID:OVOooqIv.net
- windows版のbuildmodeはexeしかできないの?
もしできるならスクリプト言語のrequireみたいに動的な読み込みとかできる?
さらにもしできたとしてunload的な名前空間の削除は?
- 579 :デフォルトの名無しさん:2016/06/06(月) 11:35:10.38 ID:4GD0zoa3.net
- >>577
遅くなったけど返答ありがと
そうなんだ
終了待ちとかあるんだ
普通にやることなければその場でkillのように終了させたほうがいい気もするけど、Goは一気にまとめて終了させるってことなのかな?
- 580 :デフォルトの名無しさん:2016/06/06(月) 13:30:02.95 ID:u3gzbyWM.net
- >>579
終了待ちのところをコメントアウトして実行してみると分かると思うけど、終了待ちしないとgoroutineを回し切る前にmainが先に終わってしまう
- 581 :デフォルトの名無しさん:2016/06/07(火) 20:01:20.35 ID:UCJwx0XG.net
- >>580
ありがとう
- 582 :デフォルトの名無しさん:2016/06/08(水) 00:14:44.49 ID:sUO1i6Sl.net
- https://ideone.com/SqM9XQ
インターフェースを実装して利用しようとしたんだけど、ShowMessage()が動かなくて
どこをどう変えればいい?
- 583 :581:2016/06/08(水) 00:28:26.77 ID:sUO1i6Sl.net
- あぁ、ごめん
fmt.Println(mes.ShowMessage())にすればいいんだね
- 584 :デフォルトの名無しさん:2016/06/08(水) 12:03:24.49 ID:E58O1JXH.net
- https://ideone.com/ZPQ1ib
SetProfile()にて、構造体Profileのフィールド値を動的に変えたいんだけど、
どのように書き換えればいい?
- 585 :デフォルトの名無しさん:2016/06/08(水) 13:40:28.97 ID:6nwZJnu3.net
- you 変数は必要ないんじゃ?
//you := make(map[string]string)
//you["Your_name"] = scanner.Text()
me.Your_name = scanner.Text()
//you["Your_gender"] = scanner.Text()
me.Your_gender = scanner.Text()
//me.SetProfile(you)
- 586 :デフォルトの名無しさん:2016/06/08(水) 14:51:56.44 ID:E58O1JXH.net
- >>585
ほんとだ、ありがと
俺バカだなぁ
しかし、もし上記のような場合って処理できるのかな?
for k, v := range arr {
switch k{
case
- 587 :デフォルトの名無しさん:2016/06/08(水) 15:28:46.54 ID:E58O1JXH.net
- switch k{ case 'Your_name': p.Your_name = v; } } のような処理は考えうるけど、
Pythonでいうsetattr(self, k, v)のようなこと出来ないのかなと思ったり
- 588 :デフォルトの名無しさん:2016/06/08(水) 16:47:30.19 ID:6nwZJnu3.net
- んー、reflection を使えば良いんじゃないかな
func (p *Profile) SetProfile(arr map[string]string) {
for k, v := range arr {
key := reflect.ValueOf(p).Elem().FieldByName(k)
if key.IsValid() {
key.SetString(v)
}
}
}
- 589 :デフォルトの名無しさん:2016/06/10(金) 11:21:56.11 ID:+PET1099.net
- >>588
ありがとう
上手く動作しました
- 590 :デフォルトの名無しさん:2016/06/10(金) 11:28:41.43 ID:+PET1099.net
- http://qiita.com/kitoko552/items/a6698c68379a8cd8b999
オブジェクト指向っぽいことを試してみようと思い、上記のページを参考に以下のコード書いてみた
https://ideone.com/3ClfoG
$ go run capsule.go
# command-line-arguments
.\capsule.go:24: invalid indirect of Human literal (type Human)
というエラーが出るんだけどどこをどう変えればいいですか?
やりたいことは、
・カプセル化
・getter, setterの定義
・Embed
- 591 :デフォルトの名無しさん:2016/06/10(金) 11:50:51.12 ID:DB1UcVrL.net
- return *Human{
を
return &Human{
にする
- 592 :デフォルトの名無しさん:2016/06/10(金) 12:35:52.40 ID:xyNxE4XD.net
- go playground使おうぜ実行できるし
https://play.golang.org/p/8pEGG3kdhH
- 593 :デフォルトの名無しさん:2016/06/10(金) 22:32:36.41 ID:+PET1099.net
- >>591
ありがとう
- 594 :デフォルトの名無しさん:2016/06/11(土) 01:51:48.80 ID:vokBGi10.net
- >>588
https://ideone.com/rGIVZU
このような場合は上手くいったけど、
https://ideone.com/86I4on
このように、構造体に2つの構造体が埋め込まれていて、それらに更に動的にメンバ変数に値を入れていくとなるとどうすればいいのか悩んでるんですが
コメントで★を入れた部分はどのように記述すれば良いのか全く分からず半日くらい費やしてます(苦笑)
- 595 :デフォルトの名無しさん:2016/06/11(土) 02:54:26.06 ID:ncrPm/bC.net
- とりあえずは即時関数で。
return &Profile{
mine: func() (m MyProfile) { m.SetProfile(arr["me"]); return }(),
yours: func() (y YourProfile) { y.SetProfile(arr["you"]); return }(),
}
- 596 :デフォルトの名無しさん:2016/06/11(土) 12:57:03.40 ID:5N4sydIU.net
- >>595
ありがと
本当に助かりました
自分には浮かばない発想でした
しかし、一つ聞きたいのは、
func NewProfile(arr map[string]map[string]interface{}) *Profile {
var m MyProfile
var u YourProfile
return &Profile{
mine: m.SetProfile(arr[
- 597 :デフォルトの名無しさん:2016/06/11(土) 12:58:26.45 ID:5N4sydIU.net
- >>595
ありがと
本当に助かりました
自分には浮かばない発想でした
しかし、一つ聞きたいのは、
func NewProfile(arr map[string]map[string]interface{}) *Profile {
var m MyProfile
var u YourProfile
return &Profile{
mine: m.SetProfile(arr['me']),
yours: u.SetProfile(arr['you']),
}
}
はダメなのに、なぜ
func NewProfile(arr map[string]map[string]interface{}) *Profile {
return &Profile{
mine: func() (m MyProfile) { m.SetProfile(arr['me']); return }(),
yours: func() (u YourProfile) { u.SetProfile(arr['you']); return }(),
}
}
は可能なのかな、と
SetProfile()自体が関数なのに、なぜわざわざ無名関数使って内包したSetProfile()を呼び出さないと上手くいかないんですかね?
- 598 :デフォルトの名無しさん:2016/06/11(土) 13:19:00.18 ID:ncrPm/bC.net
- 色々書き換えたバージョン
http://ideone.com/5rnnHW
- 599 :デフォルトの名無しさん:2016/06/11(土) 13:26:31.32 ID:ncrPm/bC.net
- >>597
m.SetProfile(arr['me'])
この場合、副作用だけ(オブジェクトに値がセットされるだけ)なので、
return m とする(オブジェクトを返す)必要があるのです。
とは言うものの、SetProfile はメソッドではなく通常の関数でも良いのでは?
と思ったので http://ideone.com/5rnnHW ではそうしています。
- 600 :デフォルトの名無しさん:2016/06/11(土) 13:44:39.08 ID:5N4sydIU.net
- >>599
なるほど、良く分かりました
別の方法も教えていただきありがとうございました
勉強になりました
- 601 :デフォルトの名無しさん:2016/06/11(土) 14:12:16.15 ID:JfIPVaDb.net
- >>591
func NewHuman(name string, jobname string, position string) Human { return Human{ 〜
としても動くけど、これだと値渡しになって
h1 := NewHuman("Shinzou Abe", "politician", "prime minister") 呼んだときにも
中で1回コピー起こって無駄だから参照渡しにするってことでいいの?
- 602 :デフォルトの名無しさん:2016/06/11(土) 22:32:52.72 ID:oEY46iar.net
- Javaで言う、ScannerのNextInt()みたいなのってGoには無いの?
bufioのText()しか調べても出てこないんだけど、これを型キャストしろってことなのかな?
scanner := bufio.NewScanner(os.Stdin)
scanner.Scan()
n := scanner.Text()
これをn.(int)って感じ?
- 603 :デフォルトの名無しさん:2016/06/11(土) 23:01:07.51 ID:oEY46iar.net
- 型キャストというより、ParseInt()だね、ごめん
- 604 :デフォルトの名無しさん:2016/06/17(金) 15:30:55.46 ID:De9+BeR4.net
- 出た。
プログラミング言語Go
Alan A.A. Donovan, Brian W. Kernighan 著
柴田芳樹 訳
発行元:丸善出版(株)
- 605 :デフォルトの名無しさん:2016/07/10(日) 22:27:22.81 ID:znpcZSb6.net
- var t *time.Time = & time.Now()
とやると
cannot take the address of time.Now()
って出るんですけどなんでダメなのか教えて下さい
- 606 :デフォルトの名無しさん:2016/07/15(金) 07:53:12.02 ID:nL6yLCLX.net
- >>605
t := time.Now()
- 607 :デフォルトの名無しさん:2016/07/15(金) 11:24:05.90 ID:tpc0LssI.net
- t := & time.Time{}
や
ts := time.Now()
t := &ts
みたいにアドレスで変数に保管したいってことだろ
ttps://golang.org/ref/spec#Address_operators
言語仕様上、&演算子が変数か構造体(のコンストラクタ)しか認めてない感じ?
実態の持ち主が行方不明になる可能性があってGCが動かなくなるのかねぇ
- 608 :デフォルトの名無しさん:2016/07/17(日) 03:13:59.59 ID:rRft+gba.net
- ポケモンGOとコラボしてGopher出してもらおうぜ
このビッグウェーブ、乗るしかない
- 609 :デフォルトの名無しさん:2016/07/17(日) 17:14:53.70 ID:Nge5kW2D.net
- Gopher君がswiftするのか
- 610 :デフォルトの名無しさん:2016/07/18(月) 12:14:48.69 ID:nr1pGxnF.net
- Golangius II 〜Gopherの野望〜
- 611 :デフォルトの名無しさん:2016/07/20(水) 00:44:12.39 ID:7krjkQOF.net
- 1.6.3が出てた
- 612 :デフォルトの名無しさん:2016/07/20(水) 21:59:45.12 ID:ZQpbH517.net
- golang でWeb開発してる人にお聞きしたいんですけど
db周りってどうしてますか?
tableごとに構造体を用意した場合、単純に1tableをSELECTする分にはなんの問題もないんでしょうけど
joinしまくってた場合、各クエリごとに構造体を作ってる感じでしょうか?
そんなのだるいですよね。
どうしてるのか教えて下さい。
- 613 :デフォルトの名無しさん:2016/07/21(木) 18:53:09.50 ID:Vj/xPVWN.net
- mongoDB
- 614 :デフォルトの名無しさん:2016/07/22(金) 08:29:35.69 ID:eNFBzZ6U.net
- golangとかgo言語をスレのタイトルにしないとググりづらいな。
- 615 :デフォルトの名無しさん:2016/07/22(金) 13:59:08.89 ID:f6dSUOKk.net
- pokemon Go Go
- 616 :デフォルトの名無しさん:2016/07/22(金) 14:02:04.61 ID:hQsD+JBa.net
- Go の偽物出まくってるなω
- 617 :デフォルトの名無しさん:2016/07/23(土) 14:35:34.70 ID:6lYjBmg5.net
- Ninjin Go
- 618 :デフォルトの名無しさん:2016/07/25(月) 01:34:14.20 ID:gKUS+J/f.net
- (´・ω・`)スキーマを作るツールで構造体を更新してる
- 619 :デフォルトの名無しさん:2016/07/25(月) 09:12:05.48 ID:aFElPnA5.net
- それってxoのことです?
SELECTの時はどうしてます?join禁止?
- 620 :デフォルトの名無しさん:2016/07/25(月) 09:19:11.89 ID:l5ht4z0Z.net
- selectするカラムのサイズのインターフェース型の配列を作って渡すじゃだめなの?
- 621 :デフォルトの名無しさん:2016/07/25(月) 10:20:31.42 ID:RKFFw9Lx.net
- コードをチェックするときに
gofmtとgolintを設定したんですが両方共エラーがあった時に同じエラーを吐きます
どっちか一つでチェックさせれば良いんでしょうか?
- 622 :デフォルトの名無しさん:2016/07/26(火) 12:09:28.79 ID:oKnTJYes.net
- いいね
https://developers.eure.jp/tech/go-appengine-sql-waf/
- 623 :デフォルトの名無しさん:2016/07/29(金) 12:02:23.83 ID:eVXiLh5P.net
- github死んだらgoどうなってしまうん?
- 624 :デフォルトの名無しさん:2016/07/29(金) 16:21:55.80 ID:vOn8ke2v.net
- 進化して gone になるよ
- 625 :デフォルトの名無しさん:2016/08/03(水) 12:29:51.75 ID:48QXmcl+.net
- この言語についてすこし気になっています。
例えばC言語のようにビット単位での操作などはできますか?
言い換えると、組み込みやOSカーネルのプログラミングなどは視野にあるのでしょうか?
またはC言語を完全に置き換える存在になりえますか?
- 626 :デフォルトの名無しさん:2016/08/03(水) 13:17:02.98 ID:mbys/AN5.net
- goよりgithubの方が長生きするんでね
- 627 :デフォルトの名無しさん:2016/08/03(水) 13:18:36.00 ID:mbys/AN5.net
- >>625
Windows用のDLLがc-sharedで作れるようになればなー
- 628 :デフォルトの名無しさん:2016/08/03(水) 23:48:20.25 ID:MhEWRRuh.net
- >>625
gc前提の言語だからあり得ない。
選ぶとしたらrustとかじゃないかな
- 629 :デフォルトの名無しさん:2016/08/04(木) 01:10:59.73 ID:BIHJkeI+.net
- GC前提っていうけど、objective-cやswiftみたいにARCでリソース解放してやることはできないのかな?
- 630 :デフォルトの名無しさん:2016/08/04(木) 11:14:28.20 ID:Ul5WpRfd.net
- >>629
GCを切るというオプションはないと思う
そういう小回りを聞かせたいならrustとかC++を選ぶしかない。
- 631 :デフォルトの名無しさん:2016/08/04(木) 11:56:34.90 ID:8anV95gh.net
- gokiburi
- 632 :デフォルトの名無しさん:2016/08/04(木) 11:58:01.10 ID:8anV95gh.net
- OSだってそれ自身でGCやってるしなー
作業中にいきなり固まってHDDゴロゴロ言わせて
時計も止まってマウスも動かない
30分くらい放置してたら治ったり
- 633 :デフォルトの名無しさん:2016/08/04(木) 12:59:03.09 ID:SddwJFqD.net
- GCはオプションではないようですね。
もうすこし調査が必要なようです。
ありがとうございました。
- 634 :デフォルトの名無しさん:2016/08/05(金) 10:46:10.99 ID:DVDTMi5M.net
- >>632 それスワッピングだろ
- 635 :デフォルトの名無しさん:2016/08/05(金) 10:46:42.21 ID:DVDTMi5M.net
- swappingをカタカナで書いたらあぼーんされた
- 636 :デフォルトの名無しさん:2016/08/05(金) 11:02:44.30 ID:h08emFzO.net
- >>634
メモリが足りなくなった時にキャッシュを解放して、コンパクションを走らせてるという動きは似たようなもの、と
言いたかったんじゃね?
- 637 :デフォルトの名無しさん:2016/08/05(金) 13:39:10.50 ID:r9Q5JMfz.net
- ちょっとだけスレ違いかもだけど
kindle unlimitedとかいう電子書籍読み放題プラン始まって
技術書みてたらgoの入門書1.6対応版みつけた。
ttps://www.amazon.co.jp/dp/B01FH3KRTI/ref=cm_sw_r_tw_dp_x_TwbPxbN1BHQKM
結構読みやすい。
- 638 :デフォルトの名無しさん:2016/08/06(土) 00:06:34.76 ID:ukQkptRq.net
- IT関連は今のところ、ほぼその本出してる翔泳社だけかな?
アメリカの方探してみたけど、そっちはどこも参加してない気がする。
- 639 :620:2016/08/06(土) 17:15:53.39 ID:TNYUaRVo.net
- どなたかおねがいします
- 640 :デフォルトの名無しさん:2016/08/06(土) 22:25:22.14 ID:i/Otvl/9.net
- Purpose
Golint differs from gofmt. Gofmt reformats Go source code, whereas golint prints out style mistakes.
https://github.com/golang/lint/blob/master/README.md
golintのreadmeでは、上のような説明になっていた。
こういう記事を参考にしてみるといいかも。
http://blog.amedama.jp/entry/2016/03/31/222050
- 641 :デフォルトの名無しさん:2016/08/24(水) 21:36:46.93 ID:JcWOBO6t.net
- loopのネストが多いと、go1.7で遅くなるらしい
SSAの関係で。
ttp://shinpei.github.io/blog/2016/08/13/what-ssa-brings-to-go-17/
俺のプログラムも遅くなった。。。orz
- 642 :デフォルトの名無しさん:2016/09/18(日) 18:26:45.57 ID:5S/llOjA.net
- Goの型システムが貧弱とかよくdisられるけど
ジェネリクスが無い以外はわりとイマドキな言語だと思う
interfaceは構造的部分型付けっぽいし
既存の型に別名付けて拡張出来るし
- 643 :デフォルトの名無しさん:2016/09/18(日) 21:51:09.47 ID:FLMBUfED.net
- まともなラムダ式もmap関数もない言語がイマドキ?
- 644 :デフォルトの名無しさん:2016/09/18(日) 22:41:40.24 ID:20H6rWEl.net
- RoRライクなGoのWebFWで軽量なものはどれでしょうか?
- 645 :デフォルトの名無しさん:2016/09/19(月) 00:21:18.59 ID:TVgh+rIf+
- Web Application Framework
WAFね
- 646 : ◆SEdFBOkLSw :2016/09/19(月) 01:20:18.20 ID:uQftjblX.net
- イマドキではないな。
既視感あふれる感じ。
レシーバで関数書いていけるのが1番気持ちいい。気が狂ってからのLispみたい。
チャンネルは凄く楽だし。
>>642
ジェネリクス、あったら良いなと思うけど、無くても、型名にいちいち名前つけて、適当にインターフェイスに参加させていけば、割としっくりくるスライスになるよ。
- 647 :デフォルトの名無しさん:2016/09/19(月) 15:39:21.23 ID:yKbgweKY.net
- >>644
golang railsでググったら適当に出てくるけど調べたの?
- 648 :デフォルトの名無しさん:2016/09/19(月) 16:25:57.74 ID:UScDXP8E.net
- もちろん調べました。
revelとbeegoですね。
ただこれは重いらしいので、あと使用雑感とか日本人の意見を聞きたいのですが。
- 649 :デフォルトの名無しさん:2016/09/19(月) 18:10:05.55 ID:7Lx9kgsv.net
- >>646
一応ジェネリクスは検討中ではあるんだよね。
結構あったらいいのにという場面はある。
それ以外は割といい感じ。エコシステムがいい。Editorも今や静的言語のメリットちゃんと享受できるし。
VSCいい。
- 650 :デフォルトの名無しさん:2016/09/19(月) 20:06:21.83 ID:6UZeJb4L.net
- >>648
自分で使ってみればいいんじゃない
- 651 :デフォルトの名無しさん:2016/09/19(月) 20:43:34.00 ID:UScDXP8E.net
- あ、このスレたってから3年もたってるんですね
サボって使用雑感なんて期待しちゃいけない感じか
しょうがないから自分で検証してみます
- 652 :デフォルトの名無しさん:2016/09/19(月) 23:21:43.10 ID:7Lx9kgsv.net
- >>651
ここには大した有識者はいないと思う。
かと言ってどこにいるんだろうね?twitterに投げてみるとか
- 653 :デフォルトの名無しさん:2016/09/20(火) 00:29:26.51 ID:dodRqZqD.net
- サービスやってるとこので聞くのは、LL言語のフルスタックフレームワークから、SPAと軽量なapiサーバーへの移行みたいなのが多いイメージが。
なのでrubyからだと、sinatraっぽくmiddleware分離したいとか、migrationツールは別に用意みたいな話の方が多いかも。
http://blog.parse.com/learn/how-we-moved-our-api-from-ruby-to-go-and-saved-our-sanity/
https://www.slideshare.net/yujiotani16/gorevel-51949206
https://developers.eure.jp/go-language/advent-calender-7/
- 654 :デフォルトの名無しさん:2016/09/20(火) 13:57:24.92 ID:aC9BpWa+.net
- ここまでGoogle社員の書き込み
- 655 :デフォルトの名無しさん:2016/09/21(水) 12:11:38.43 ID:cQpnCnIx.net
- 重いらしいじゃなくて何で自分で試さないの?
- 656 :デフォルトの名無しさん:2016/09/21(水) 12:36:40.08 ID:bQEJ8r3q.net
- 重いかどうかが問題になるレベルまで試すのは現実的に無理があるだろ
まあそもそもほとんどのアプリは使っている言語やフレームワークが重いかどうかが問題になる前に消えるわけだが
- 657 :デフォルトの名無しさん:2016/09/21(水) 13:18:40.11 ID:WoI1CsQe.net
- どうせPとかRがつく言語からの乗り換えでしょ?
どれ使っても軽いって
- 658 :デフォルトの名無しさん:2016/09/21(水) 13:40:44.80 ID:K/wMuhbh.net
- >何で自分で試さないの?
比較対象がわからないからだろ
- 659 :デフォルトの名無しさん:2016/09/21(水) 15:42:52.36 ID:DBqUEw9E.net
- >>658
比較対象が何かわからないなら
awesome go とかで検索すればいいよ。
https://github.com/avelino/awesome-go#web-frameworks
アホみたいにフレームワークがあるけど
- 660 :デフォルトの名無しさん:2016/09/21(水) 16:03:39.59 ID:1PEot0Hq.net
- ID変えて自演してるような気もするけど
ベンチマーク取れば重いかどうか数字で表せるよね
- 661 :デフォルトの名無しさん:2016/09/21(水) 16:57:31.37 ID:/5f1YfeX.net
- 枯れ木も山の賑わい
- 662 :デフォルトの名無しさん:2016/09/21(水) 18:46:11.33 ID:K/wMuhbh.net
- >>659
そのリストじゃRails風かどうかまではわからないからな
それを調べるためだけに1個ずつインストールしてまで使う労力を求めてる不親切なコミュニティだわ
まあそれが日本でのGoのあり方なんだろうが
- 663 :デフォルトの名無しさん:2016/09/21(水) 20:55:56.41 ID:WoI1CsQe.net
- キリッ
- 664 :デフォルトの名無しさん:2016/09/21(水) 21:15:31.01 ID:DBqUEw9E.net
- >>662
readmeくらい読めばいいよ。
なにを参考にしたフレームワークくらいかはわかるでしょ
- 665 :デフォルトの名無しさん:2016/09/21(水) 23:06:50.01 ID:C/0XZtBi.net
- ActiveRecordのつくり込みしてない実装は意外と面倒だったりするんだけど、goで使ったことないのでわからん。
クエリービルダーなら何かあるかも。
複数テーブル使うこともないので、今のところDBまわりは簡単にDTOみたいな実装で済ましてる。
- 666 :デフォルトの名無しさん:2016/09/22(木) 01:47:25.32 ID:QBrMY9aw.net
- 自分が欲しい物を他力本願で自分で調べない奴はプログラミングに向いてない
- 667 :デフォルトの名無しさん:2016/09/22(木) 02:57:18.49 ID:nr+L07o8.net
- そうですか
- 668 :デフォルトの名無しさん:2016/09/22(木) 08:30:29.12 ID:hF82WAHq.net
- うむ
- 669 :デフォルトの名無しさん:2016/09/22(木) 10:18:25.14 ID:7A/wc93b.net
- railsみたいなのがいいならrails使っとけばいいだろ?
なんでgolang使おうと思ってるの?
- 670 :デフォルトの名無しさん:2016/09/22(木) 11:10:54.24 ID:y4xL8ywB.net
- Goは基本的にCなので、ゼロから作りこむような複雑な処理がそのまま移植できる。
Rubyだと、extensionをCで書かないといけなくなる。
- 671 :デフォルトの名無しさん:2016/09/22(木) 11:24:25.38 ID:sBPmoePF.net
- goでDB扱おうとすると動的言語のほうが楽だと痛感するけどね
単純なテーブルに対するcrudなら構造体作って対応できるけど
joinしたりとかすることも考慮するとそうも行かない。
素直にrailsでいいんじゃね
- 672 : ◆SEdFBOkLSw :2016/09/22(木) 13:36:58.94 ID:3pIcfs21.net
- ORM使うからじゃないの?
JOINして使う結果とJOINせず単独で使う結果はそれぞれ別の構造体になってしかるべきな気がする。
あんまRDB使わないけど。
集合検索結合集計なシステムと手続き型とオブジェクト型と関数型、どれ同士を組み合わせても、インピーダンスミスマッチは仕方ないんだから、どっちかで歩み寄らなきゃ何ともならんような。
階層型とばっかり組み合わせてるけど、言語側はわりと世代交代早いからDB側でストアド書いてるわ。
- 673 :デフォルトの名無しさん:2016/09/22(木) 15:05:14.76 ID:Ob4qBdWH.net
- 時代はとっくにKVSですが
- 674 :デフォルトの名無しさん:2016/09/22(木) 15:18:49.00 ID:W5CYuFDy.net
- KVSとRDBじゃ微妙に用途違うじゃん
- 675 :デフォルトの名無しさん:2016/09/22(木) 15:19:40.46 ID:sug0rqOR.net
- mvcではなくrails的なもので高速という話なら、goで探すよりphoenix framework/elixerみたいなのを先に触った方がいいのでは。
- 676 :デフォルトの名無しさん:2016/09/22(木) 15:29:49.16 ID:nr+L07o8.net
- 検索系ならRDB一択やろKVSでも実装はできるけどめんどくさすぎ
- 677 :デフォルトの名無しさん:2016/09/22(木) 15:32:16.50 ID:sBPmoePF.net
- RDBからKVSに行ってやっぱRDBがいいやと言う流れじゃないの?
mongodbとか使ってるやついるのか今
- 678 :デフォルトの名無しさん:2016/09/22(木) 21:41:56.84 ID:sBPmoePF.net
- >>672
結局ビジネスロジックをどっち側に寄せるかという話になるんだろうけど
ストアドプロシージャは素朴なコードしかかけないから抽象化しづらいと思うんだけど
書いたことがないから想像でしかないけど。
でもgolangの場合は抽象化しきれないからストアドプロシージャ側にロジックを寄せて実装はありなのかもしれない
- 679 :デフォルトの名無しさん:2016/09/22(木) 22:16:03.79 ID:243X6jbN.net
- クロスコンパイルとかでpure goにしたければ、KVSしかない。
- 680 :デフォルトの名無しさん:2016/09/22(木) 22:24:25.35 ID:7A/wc93b.net
- phoenixも速いよ
pingだけだったらレスポンスμsで返ってくるよ
- 681 :デフォルトの名無しさん:2016/09/22(木) 23:18:15.37 ID:P28LZX5F.net
- >>679
イミフ
Pure Goなdatabase/sqlのドライバは沢山あるがな
- 682 :デフォルトの名無しさん:2016/09/23(金) 11:19:01.19 ID:iqtk0HU6.net
- >>681
多分だけどpureGoでkvs側もgo製のをつかってkvsも含めてワンバイナリにしたいってことなんじゃない?boltとか
- 683 :デフォルトの名無しさん:2016/09/23(金) 14:15:45.15 ID:Pu19XfH5.net
- >>678
割と書けるよ。ただ、パワーバランスにもよるけど。
番号発行を伴う複数の関連するデータの保存や削除なんかはDBに任せた方が良い場合もそこそこある。
テキトーにORMで雑然と入れがちだけど、根本的にオブジェクトと行が一対一にならなければ、一対一の操作やらビューを用意すべきだと思う。
- 684 :デフォルトの名無しさん:2016/09/24(土) 11:16:44.44 ID:oYgGfkv1.net
- >>677
人気はそこそこある模様
http://db-engines.com/en/ranking
- 685 :デフォルトの名無しさん:2016/09/24(土) 17:55:17.45 ID:cuT9UNDj.net
- 慣れてるしmongodb使ってるよ
sqliteのほうがよく使ってるけど
- 686 :デフォルトの名無しさん:2016/10/04(火) 16:24:32.16 ID:m5Lh6Epv.net
- >>542
70過ぎで新しい言語覚えるとか凡人には無理そうw
Brian Kernighanがプログラミング言語Goの組版に使ったのはなんとtroff
https://cpplover.blogspot.jp/2016/04/brian-kernighangotroff.html?m=1
- 687 :デフォルトの名無しさん:2016/10/04(火) 16:39:32.48 ID:ZPmHgmj0.net
- >L&RのKであり
冒頭からアホ丸出し
- 688 :デフォルトの名無しさん:2016/11/02(水) 12:09:01.86 ID:txovE4qH.net
- Go言語のゆるキャラ何だよあれ。
ゆるキャラのデザインは言語の普及率に無関係じゃないと思うぜ。
- 689 :デフォルトの名無しさん:2016/11/02(水) 12:42:22.12 ID:pD2pdTer.net
- 俺もあのキャラで食わず嫌いしてた
今でも見るたびにぶん殴りたくなる
- 690 :デフォルトの名無しさん:2016/11/02(水) 13:02:39.06 ID:yVmWsAjP.net
- 世間的にはかわいいんだろう、およねこぶーにゃん
- 691 :デフォルトの名無しさん:2016/11/02(水) 13:24:03.26 ID:/PKnCRlb.net
- どうでもいい
- 692 :デフォルトの名無しさん:2016/11/02(水) 16:47:06.78 ID:db1quxwb.net
- およねこぶーにゃん 似てるな
- 693 :デフォルトの名無しさん:2016/11/02(水) 17:40:08.31 ID:NdsHEbPc.net
- およよ
- 694 :デフォルトの名無しさん:2016/11/02(水) 19:52:12.13 ID:9MvPcR4P.net
- Youtubeでgopherを検索すると駆除動画が大量にひっかかるから気をつけろ
- 695 :デフォルトの名無しさん:2016/11/02(水) 21:02:05.36 ID:9HL1sB1G.net
- ゆっくりみたいになってんの?
- 696 :デフォルトの名無しさん:2016/11/03(木) 00:22:20.82 ID:94UsH5fp.net
- どう足掻いてもキモい(かわいい)
1番上の2001年ごろの本にもいるね。
http://glenda.cat-v.org/friends/
- 697 :デフォルトの名無しさん:2016/11/03(木) 03:39:13.40 ID:iYejUQc8.net
- 80年代からいるはず
- 698 :デフォルトの名無しさん:2016/11/04(金) 20:23:44.63 ID:m0/gbw+8.net
- golangでググるとgolang-jp.orgが一番上にヒットするけど
これは公式で認められたサイト?
- 699 :デフォルトの名無しさん:2016/11/06(日) 23:12:50.69 ID:NZCpJm/D.net
- 非公式だろ
ライセンス的には著作権表示さえしてれば問題ないことになってる
でも日本語じゃなきゃダメって人にはGoはお勧めしない
- 700 :デフォルトの名無しさん:2016/11/08(火) 13:10:36.86 ID:afLUgDEA.net
- 別に日本語の情報も出揃い始めてるし
日本語onlyの人でもそろそろ使えると思う。
でもgolang-jpってコミュニティの中心に近い人が運用している感じがしないのが不安
- 701 :デフォルトの名無しさん:2016/11/08(火) 13:11:45.51 ID:afLUgDEA.net
- >>700
http://golang.jp/ と勘違い。すまぬ
- 702 :デフォルトの名無しさん:2016/11/18(金) 18:19:10.73 ID:0j66y/nm.net
- 日本語じゃなきゃダメって人はなでしこ以外選択肢ないんじゃね
Go言語という日本語以外の言語を扱おうとする時点でオワットル
- 703 :デフォルトの名無しさん:2016/11/18(金) 19:29:14.49 ID:e+81aozX.net
- 織田信長
- 704 :デフォルトの名無しさん:2016/11/21(月) 15:48:15.04 ID:lyJfcZnk.net
- ぴゅう太探してこなきゃっ><
- 705 :デフォルトの名無しさん:2016/11/22(火) 10:24:50.70 ID:uKd48bt3.net
- 日本語でググったり質問したり出来なきゃ使い物にならん
ってのは別におかしくない
最低限のマニュアルやエラーメッセージすら読まないレベルなら排除すべき
- 706 :デフォルトの名無しさん:2016/12/21(水) 09:11:00.18 ID:rs5TCfU6.net
- ウイルススキャンで go1.7.4.windows-386.zip の go/pkg/tool/windows_386/trace.exe が Trojan:Win32/Skeeyah.A!rfn と判定されたんですけど、語検出だと思いますか?
- 707 :デフォルトの名無しさん:2016/12/21(水) 12:34:37.87 ID:UOM+5F1I.net
- ウイルススキャンに何て名前のソフト使ってんだよ
自分の行動を明確にしないと、有用かも知れない情報であっても風説の流布と同じ扱いにされる事に早く気づけよ
- 708 :デフォルトの名無しさん:2016/12/21(水) 12:42:31.87 ID:YBja8gxe.net
- VirusTotalにでも投げてどうぞ
- 709 :デフォルトの名無しさん:2016/12/21(水) 16:22:35.54 ID:rs5TCfU6.net
- >>707
MSEです
指摘ありがとう
今後気を付けます
>>708
そこで試してみます
ありがとう
- 710 :デフォルトの名無しさん:2016/12/22(木) 04:50:05.52 ID:jVrDGj21.net
- >>707-708
結果を報告します
ダウンロードしたgo1.7.4.windows-386.zipのSHA256のハッシュはサイト上のものと一致しました
zipを展開しtrace.exeだけをVirusTotalにアップロードしました
ウィルススキャン56個中13個がTrojan判定したみたいです、多数決という考え方でいえば誤検知だったのだと思われます
https://www.virustotal.com/ja/file/cd4b6551da15d172a61f4cefcbba77c0fde1932fee9ab0879cb1cf126a5d39fd/analysis/1482349209/
- 711 :デフォルトの名無しさん:2016/12/22(木) 11:20:58.30 ID:yrFazDqV.net
- go1.8リリース予定日を教えて
- 712 :デフォルトの名無しさん:2016/12/24(土) 07:00:03.75 ID:Y/bvEAMg.net
- https://play.golang.org/p/h2QL6YcUQJ
ダサイ
- 713 :デフォルトの名無しさん:2016/12/24(土) 07:36:38.25 ID:Y/bvEAMg.net
- https://play.golang.org/p/WtVTVEMr2-
どうもうまく作れねえ
- 714 :デフォルトの名無しさん:2016/12/24(土) 10:57:29.42 ID:I9wFmGZn.net
- >>712
interface{} 使うとか(場合によって type assertion が必要だけど)
https://play.golang.org/p/Pc7VnMBcYA
- 715 :デフォルトの名無しさん:2016/12/24(土) 15:25:12.26 ID:Y/bvEAMg.net
- >>714
これいいね
ありがとう
- 716 :デフォルトの名無しさん:2016/12/25(日) 16:55:37.58 ID:MSs3MIcU.net
- >>710
そのリンク先の「最新を表示」をクリックすると、56個中24個に増えるね。
誤検出なら減っても良さそうな気がするが……。
- 717 :デフォルトの名無しさん:2016/12/25(日) 18:22:44.28 ID:2u3ictDv.net
- goglandどうですか
- 718 :デフォルトの名無しさん:2016/12/26(月) 01:08:57.47 ID:t1RDiD7h.net
- >>716
32bitWindows版だけの問題なら被害はそう多くなさそうだし大丈夫じゃね
- 719 :デフォルトの名無しさん:2016/12/27(火) 15:50:30.60 ID:z3Z5XFyz.net
- >>716
さらに増えてる…
- 720 :デフォルトの名無しさん:2016/12/29(木) 05:47:14.37 ID:958/OC8Q.net
- >>706
redditでも似たようなこと言ってる奴いるな
https://www.reddit.com/r/golang/comments/5jijc9/antivirus_reports_traceexe_go_174_windows_x86_as/
- 721 :デフォルトの名無しさん:2017/01/03(火) 01:16:19.18 ID:HKX7d2sm.net
- デフォのパッケージのソースコードを見てるとBSDライセンスになってるけど
デフォのパッケージを使う場合はそれらのBSDライセンスというのを記述しなきゃだめ?
https://golang.org/pkg/builtin/
https://golang.org/src/builtin/builtin.go
https://golang.org/LICENSE
- 722 :デフォルトの名無しさん:2017/01/03(火) 01:22:49.11 ID:HKX7d2sm.net
- https://speakerdeck.com/nabeken/go-and-license
これ読んだ感じだとgoで作った物にはgo言語のライセンス文等を含める必要があるっぽい?
- 723 :デフォルトの名無しさん:2017/01/11(水) 19:06:49.30 ID:AM+tjFEn.net
- 歌舞伎座.tech#13「Elixir 勉強会」
2017/01/11(水) 開場:18:57 開演:19:00 ニコニコ生放送
lv286846512
- 724 :デフォルトの名無しさん:2017/01/16(月) 23:40:33.28 ID:/8hm5iax.net
- 内部関数の再帰呼び出しって可能?
yコンビネータとかでなく
- 725 :デフォルトの名無しさん:2017/01/16(月) 23:50:33.98 ID:/8hm5iax.net
- >>724
varで宣言してから関数定義したらいけました
お騒がせしました
- 726 :デフォルトの名無しさん:2017/01/18(水) 21:03:54.63 ID:xMB+Qmdf.net
- >723
webサーバーや常駐プロセスならelixir、システム系やバイナリならcrystalかな。
golangはどちらも増えてきたな。
- 727 :デフォルトの名無しさん:2017/01/20(金) 14:22:52.01 ID:uizqycjV.net
- list = [["a",1],["b",2],["c",3],["d",4],["e",5]]
こんな配列を作りたいのですが
pythonだったら
list = []
list.append(["a",1])
list.append(["b",2])
とすればできるのですが
GOではどうやればいいのでしょうか?
- 728 :デフォルトの名無しさん:2017/01/20(金) 15:24:48.94 ID:PlXLSX3f.net
- []interface{} を使えば何とかなるけど…
https://play.golang.org/p/pq1Pwe0V4z
map[string]int か []struct を使う方がいいと思う
- 729 :725:2017/01/20(金) 17:00:33.53 ID:uizqycjV.net
- >>728
どうもありがとうございます。
map[string]int か []structも調べてみます。
- 730 :sage:2017/01/22(日) 00:26:49.27 ID:JSjE+wfT.net
- 流行りの機能あんまり無いし使い辛そうと思ってたが
書いてみるとしっくりくるな、良く出来てる
- 731 :デフォルトの名無しさん:2017/01/22(日) 01:48:56.85 ID:EXKusZK8.net
- 流行りの機能を実装するのに流行りの機能を使ったかどうか考えたら自明よだよ。
クリスマスツリーの飾りか、彼らが本気で必要だと言うなら自転車の補助輪みたいなもの。
- 732 :デフォルトの名無しさん:2017/01/22(日) 13:18:59.29 ID:lyHWqZIh.net
- よだ
よだ
- 733 :デフォルトの名無しさん:2017/01/22(日) 14:39:27.82 ID:hBhrTyQG.net
- https://chrome.google.com/webstore/detail/%E3%81%AF%E3%81%A6%E3%81%AAng/mbgdnfmdelffjdhkdggilmphfdihnmcj?hl=ja
- 734 :デフォルトの名無しさん:2017/01/22(日) 20:41:03.32 ID:oEaDlbYA.net
- >>732
すまん。予測変換に引きずられた
- 735 :デフォルトの名無しさん:2017/01/24(火) 23:06:50.70 ID:c6xhurTC.net
- >>731
> 流行りの機能を実装するのに流行りの機能を使ったかどうか考えたら自明よだよ。
これ停止条件どこですかね、天地創造?
- 736 :デフォルトの名無しさん:2017/01/25(水) 09:47:48.89 ID:QApusiWr.net
- 「CコンパイラはC言語で書かれている」みたいなことを言いたかったんじゃないかとエスパーしてみる。
- 737 :デフォルトの名無しさん:2017/01/25(水) 10:44:53.45 ID:JgDNrEDV.net
- >>735
停止条件は、流行りの機能を使わない形での流行りの機能の実装、だろうね。
流行りの機能と言うから話がややこしくなるが、
ハンダゴテ作るのに、ハンダゴテ使って半田付けする必要があるのは、手順として間違ってるって事。
1.5より前のGoをコンパイルして、Go1.5でそれ以降をコンパイルするようなもん。
- 738 :デフォルトの名無しさん:2017/01/25(水) 11:14:48.01 ID:5tC4lyU9.net
- gccのコンパイル手順を初めて聞いたときのこと思い出したわ
- 739 :デフォルトの名無しさん:2017/01/25(水) 14:24:01.33 ID:3mED4Rlj.net
- depの使い方を教えてください
- 740 :デフォルトの名無しさん:2017/02/01(水) 17:37:29.24 ID:+X2jALUV.net
- あの、golangでwebサイトを作る場合って
作った数だけ
go run hogehoge1&
go run hogehoge2&
go run hogehoge3&
こんな感じで裏で実行させておくんでしょうか?
- 741 :デフォルトの名無しさん:2017/02/01(水) 22:01:17.22 ID:5RUfbCqK.net
- 1アプリ1サイトって意味ならあってる
- 742 :デフォルトの名無しさん:2017/02/02(木) 11:20:33.63 ID:nnsBzBvb.net
- goアプリのデーモン化ってデファクトスタンダードそろそろ出た?
supervisor使うのが一番ラクかな未だに
- 743 :デフォルトの名無しさん:2017/02/17(金) 10:38:39.08 ID:w6Mwd8Yg.net
- Go 1.8です
LinuxでGOROOTを設定する理由はこれで合ってますか?
・/usr/local/go以外の場所にインストールする場合。例えば~/local/goとか。
・異なるバージョンのgoをインストールするとき。GOROOTを切り替えることでバージョンの異なるgoを切り替えられるから。
あとGOPATHはデフォルトだと~/goを使いますよね。
1つのgoしか使わない場合とか、異なるバージョンのgoで~/goを共有するならGOPATHの設定しなくてもいいですか?
- 744 :デフォルトの名無しさん:2017/02/17(金) 16:12:14.19 ID:yGnzX63H.net
- はい
- 745 :デフォルトの名無しさん:2017/02/17(金) 19:02:09.98 ID:W71R9C1F.net
- n := 1.0
fmt.Printf("%f\n", n) // 1.000000
fmt.Println(n) // 1
1番目の出力、何で1.0じゃなくて1.000000なんですか?
2番目の出力、何で1.0じゃなくて1なんですか?
- 746 :片山博文MZ ◆T6xkBnTXz7B0 :2017/02/17(金) 19:42:06.34 ID:MbV+Py5H.net
- >>745
コンピュータでは数値は内部表現で表されている。内部表現では10.0も10.00も同じデータだ。
その数値の内部表現に対してPrintf,Printlnがその形式で出力するように設計されているから。
もし好きな形式で出力したいならPrintfの書式を調べればよい。
- 747 :デフォルトの名無しさん:2017/02/18(土) 01:11:54.03 ID:pMCaQLyx.net
- そういうものなのかわかりました
- 748 :デフォルトの名無しさん:2017/02/18(土) 01:30:30.49 ID:AobYyoSr.net
- >>743
【Go】結局、$GOPATHと$GOROOTはどこに設定すればいいの?
https://teratail.com/questions/41746
「go gopath goroot」で検索!
- 749 :デフォルトの名無しさん:2017/02/18(土) 17:55:40.13 ID:OtEeuMsz.net
- go get -u hogehoge/hoge/hoge
だとbinにコマンドが入らなくて
go get -u hogehoge/hoge/hoge...
だと入るんですが
...ってなんですか?
- 750 :デフォルトの名無しさん:2017/02/18(土) 18:32:44.27 ID:HTn/aT5C.net
- version1.8が出たらしいね
>>706-710の問題はどうなったんだろ?
- 751 :デフォルトの名無しさん:2017/02/19(日) 00:40:55.67 ID:rxEXn9HF.net
- >>749
What do three dots "./..." mean in Go command line invocations? - Stack Overflow
http://stackoverflow.com/questions/28031603/what-do-three-dots-mean-in-go-command-line-invocations
- 752 :デフォルトの名無しさん:2017/02/19(日) 11:12:55.70 ID:hWiEfeI5.net
- >>751
先輩ありがとうございます
- 753 :デフォルトの名無しさん:2017/02/21(火) 00:38:10.56 ID:gQJwpX7p.net
- これ実行すると1と表示されますが
var i []int
if i == nil {
fmt.Println(1)
}
これだと1が表示されません
i := []int{}
if i == nil {
fmt.Println(1)
}
var i []intを:=バージョンで宣言したいんですがどうやって書くんでしょうか?
- 754 :デフォルトの名無しさん:2017/02/21(火) 01:20:47.27 ID:D3dspysh.net
- i := []int(nil) とか
- 755 :デフォルトの名無しさん:2017/02/21(火) 10:55:35.63 ID:1k6xy1Ha.net
- >>754
(nil)って書き方初めて知りましたありがとうございます
- 756 :デフォルトの名無しさん:2017/02/21(火) 22:11:48.42 ID:3rYbm5Zu.net
- 単なるキャストでしょ
- 757 :デフォルトの名無しさん:2017/03/01(水) 05:34:18.30 ID:eGDA14QM.net
- http://hanabi.2ch.net/test/read.cgi/hikky/1480625781/874
↑これは本当にGo言語の問題点なのですか?
- 758 :デフォルトの名無しさん:2017/03/02(木) 10:36:42.56 ID:TnPaXq7u.net
- Goってエンコード/デコード処理って標準で入って無いのな
読み込んだShift-jisデータが文字化けしててさ、デコードどうすんだろうって
調べたらstringsメソッドにも無いし標準パッケージにも無くて、
えっ?えっ?って困惑しながら調べてたら外部パッケージ使うんだってね
ええ?エンコード/デコードなんて標準で入ってて当たり前じゃん、どうなんてんのよとブツブツ言いながら
佐和子は外部パッケージの使用例を見てみるのであった・・
佐和子はまた驚いた「なにコレ・・デコードするだけで何でこんなに書かないといけないの!?」
Pythonを少しかじっている佐和子にとってデコードはhoge.decode('utf-8')という退屈な一行なのであった
佐和子は涙した、「あたし、Go無理かも・・なんて面倒なの・・グスン」悲しむ感情とは裏腹に
股間も濡れていることにまだ気づかない佐和子なのであった
- 759 :デフォルトの名無しさん:2017/03/02(木) 11:09:11.50 ID:nru5cJzG.net
- c++より面倒?
- 760 :デフォルトの名無しさん:2017/03/02(木) 15:50:33.79 ID:u/9aEmwY.net
- >>757
warningは消せるんじゃなかったけ?
- 761 :デフォルトの名無しさん:2017/03/02(木) 16:29:39.78 ID:X4z0kGE4.net
- やる気がないgolang.jpとgolang-jp.orgは今すぐサーバをシャットダウンさせるべき
個人で翻訳し綴られるわけないのに
やるならオープンな場で活動するべき
- 762 :デフォルトの名無しさん:2017/03/02(木) 17:06:55.36 ID:jHvj97KG.net
- >>757
単なるマヌケだろこれは…
https://play.golang.org/p/xPih-HNli3
- 763 :デフォルトの名無しさん:2017/03/05(日) 22:36:40.86 ID:S4MzRoP3.net
- rubyのbundleみたいにプロジェクトごとにパッケージを使いたいので公式っぽいdepを使おうと思いました
何か自分がこれから書くソースコードもGOPATH以下のsrcに書かないといけないようなんですが
これってdepを使うからこういう決まりってわけではなくgolangだからこういう決まりになってるんでしょうか?
- 764 :デフォルトの名無しさん:2017/03/05(日) 22:46:59.76 ID:Y02SgW6x.net
- そうだよ
- 765 :デフォルトの名無しさん:2017/03/05(日) 23:04:39.65 ID:ifu98e8m.net
- 慣れる迄苛つく仕様
- 766 :デフォルトの名無しさん:2017/03/06(月) 00:27:53.52 ID:8ia6O09M.net
- なんだよglideがデファクトかと思ってたのに公式から出たんか。
- 767 :デフォルトの名無しさん:2017/03/09(木) 09:56:41.81 ID:06AYmq+V.net
- rubyの配列や文字列、正規の色々細々便利関数みたいな、JSのアンダスコアみたいな
そういう汎用ライブラリ(か自前関数)はGo言語は持っているのでしょうか
- 768 :デフォルトの名無しさん:2017/03/09(木) 14:47:10.65 ID:EWO17/eW.net
- JSのアンダスコアみたいなやつはあるな
https://github.com/ahl5esoft/golang-underscore
- 769 :デフォルトの名無しさん:2017/03/09(木) 21:39:53.64 ID:JwhapCIX.net
- >>768
interface{}型多用しまくりでまるで動的言語のようだ。
- 770 :デフォルトの名無しさん:2017/03/09(木) 22:11:04.55 ID:8UcOpz+6.net
- exampleをざっと見る分には要所々々で型明記してて普通の静的型に見える
- 771 :デフォルトの名無しさん:2017/03/11(土) 03:11:21.73 ID:ptLt8H3Q.net
- ←chan:受信専用
chan←:送信専用
これ何でや?逆の方がしっくりくるやろ・・・
- 772 :デフォルトの名無しさん:2017/03/11(土) 07:32:20.09 ID:2HZNdoI4.net
- 2000年代初期に
変数名: 型
より
型 変数名
の方がしっくりくるだろ、、、って言ってたの同じじゃね
偉い人は人間工学的に良いって言って、凡人は慣れたら前者が無条件に良く見える
慣れない老害はワカモノにバカにされるといいよ
- 773 :デフォルトの名無しさん:2017/03/11(土) 08:24:56.74 ID:3yr+jwLv.net
- 英語圏では常に自分が中心の個人主義故に主語は大抵自分自身になるわけ
つまり←chanというのは、「チャネルから私へ」となり受信
同様にchan←というのは、「私からチャネルへ」となり送信
という完璧な回答を佐和子はニヤニヤしながら書いたのであった
- 774 :デフォルトの名無しさん:2017/03/11(土) 08:52:31.22 ID:50ajbFL2.net
- variant (as) Type
みたいなのじゃないの?
パスカルもそうだし、あながち新しいもの独特って訳でもない
- 775 :デフォルトの名無しさん:2017/03/11(土) 08:57:14.88 ID:3yr+jwLv.net
- >>773の訂正と補足
うーん、主語というか、とにかく「私」が隠れてるんや! 英語圏は私!私!の文化やねんから!
日本では子供に合わせてパパは妻の事をママっていうねん、視点子供に変わったりするねん
でも英語圏ではそんなことないねんって、視点は常に自分自身やねんって
チャネルが送ってる先は「私」やねん ←chan だから受信やねん
チェネルに送ってるのは「私」やねん chan← だから送信やねん
- 776 :デフォルトの名無しさん:2017/03/11(土) 09:48:49.71 ID:ptLt8H3Q.net
- >>775
この説明でしっくりきましたわ
向こうの人は自分視点が徹底しとるんやなー
サンクスやで!
- 777 :デフォルトの名無しさん:2017/03/20(月) 11:51:19.13 ID:c2kV274u.net
- 「Go言語による Webアプリケーション開発」やってる奴は下のリンク読んどけ
めちゃ助かったわ
http://matsnow.hatenablog.com/entry/golang/nsq
- 778 :デフォルトの名無しさん:2017/03/20(月) 15:12:26.30 ID:CYCZfEEr.net
- グロ中尉
- 779 :デフォルトの名無しさん:2017/03/20(月) 18:59:16.35 ID:c2kV274u.net
- グロじゃねえよ、やめろやw
タイトルも書くべきだったな
nsqdが「dial tcp: i/o timeout」を返してくる場合の対処法
http://matsnow.hatenablog.com/entry/golang/nsq
- 780 :デフォルトの名無しさん:2017/03/21(火) 23:10:22.44 ID:uzSvvu2S.net
- 公式のサイト見て驚いたけどUnicode文字の例として日本語が使われてるのな、なんか意外だ
- 781 :デフォルトの名無しさん:2017/03/22(水) 00:13:24.31 ID:9PE4AFjh.net
- https://play.golang.org/p/FoAcpJwOTh
appendでの容量の増え方に何か法則があるのでしょうか?(2倍にされる場合もあってちょっと怖いです)
- 782 :デフォルトの名無しさん:2017/03/22(水) 02:19:25.41 ID:ws4VFpo4.net
- ここかな
https://github.com/golang/go/blob/master/src/runtime/slice.go#L101
- 783 :デフォルトの名無しさん:2017/03/22(水) 03:56:14.98 ID:9PE4AFjh.net
- >>782
d
1024以下は2倍でそれ以外は1.25倍で増やしてくのか
- 784 :デフォルトの名無しさん:2017/03/23(木) 11:40:09.39 ID:AyyVp0Pm.net
- >>780
なんで意外なん?
中国語や韓国語が使われてないと困るのか?
- 785 :デフォルトの名無しさん:2017/03/23(木) 13:15:39.80 ID:U7xuC5Fy.net
- 言語選択のアイコンが[aあ]になってるサイトもあったな。
選択肢には日本語なかったけど。
- 786 :デフォルトの名無しさん:2017/03/23(木) 16:14:28.11 ID:9ddE+onE.net
- SwiftのApple公式チュートリアルページのUnicode絵文字サンプルは寿司
中国、韓国は頑張れ
- 787 :デフォルトの名無しさん:2017/03/23(木) 17:51:06.97 ID:9n/hT6SR.net
- JavaのAPIドキュメントは日本語版が用意されてくらいだから
世界のIT業界にとって日本は大事な顧客様なのだろう
- 788 :デフォルトの名無しさん:2017/03/23(木) 17:59:17.93 ID:h9aQztqc.net
- 奥方
- 789 :デフォルトの名無しさん:2017/03/23(木) 19:38:53.40 ID:fky8z8fA.net
- 日本のIT業界ってマイクロソフトに固執してるイメージあるからじゃないか。
アンドロイドのIMEは中華製って感じがする。
- 790 :デフォルトの名無しさん:2017/03/24(金) 19:16:22.29 ID:213lDDdv.net
- Windows10でVScode-go環境を作ったんだけど、コード補完が遅すぎて使えなくなってます。
変数名打って、型名書いてたらいきなり補完が効いて変数名の最後の数文字が消えたり、コメント書こうとしたら、//部分が突然削除されたり等…
最初はgocodeのautobuildが悪さしてるのかと思ってsetting.jsonからfalseにしても効果はなく……
誰か、go言語で同様の症状に陥った方は居ませんか?
環境は
Windows10
go 1.7.5(最初は1.8でも同様の症状が出てバージョン下げたけど意味なし…)
VSCode1.10.2
Git2.12.0
Go拡張0.6.55(多分最新版)
各種ツール(最新版)
です。
色々調べたけど正直お手上げなので、誰か解決方法を知ってたら教えてください…
- 791 :デフォルトの名無しさん:2017/03/24(金) 22:53:28.10 ID:frT9Zhqz.net
- なんでその質問をこのスレでしようと思った?
- 792 :デフォルトの名無しさん:2017/03/24(金) 23:05:17.09 ID:frT9Zhqz.net
- Issueに投げればよかろう
Issues ・ Microsoft/vscode-go ・ GitHub
https://github.com/Microsoft/vscode-go/issues
- 793 :デフォルトの名無しさん:2017/03/25(土) 01:06:24.19 ID:SfvzpHLw.net
- 英語苦手なのと、この板とソフトウェア板にVScodeスレが見当たらなかったからです
あと、似た症状を起こした人が居たらしく、どうもそのissueを読む限りgocodeのautobuildが原因じゃないかと言われていたので試してみたり、vscodeのsetting.jsonの設定を変えてみたりしたのですが、結果は改善しませんでした…
ttps://github.com/Microsoft/vscode-go/issues/696
このスレにこの症状についてわかる方が居ないようでしたら…意を決して聞くつもりです
- 794 :デフォルトの名無しさん:2017/03/25(土) 01:19:00.29 ID:afr6k6dQ.net
- 変な奴だな…
- 795 :デフォルトの名無しさん:2017/03/25(土) 01:45:52.76 ID:jvvW/9ia.net
- >>793
gocode close
go get -u github.com/nsf/gocode
上記二行を実行してみてもだめ?
- 796 :デフォルトの名無しさん:2017/03/25(土) 03:04:54.19 ID:axug6RQN.net
- VSCodeスレが無いだとお!?
MacでもLinuxでも使えるVisual Studio Code [転載禁止]c2ch.net
http://echo.2ch.net/test/read.cgi/tech/1430403713/l50
- 797 :デフォルトの名無しさん:2017/03/25(土) 11:16:08.90 ID:Kt/vjrdl.net
- 今日は合コンあるらしいねいかないけど
- 798 :デフォルトの名無しさん:2017/03/25(土) 15:10:30.58 ID:SfvzpHLw.net
- >>795
ちょくちょくcloseを実行してアップデートを繰り返してみましたがだめでした…
>>796
あ…すみません…あったんですね…
あの後、色々試した結果
自動保存を切るとどうやら調子が良くなるみたいです
go fmt相当の機能が自動保存を付けているとかなりの頻度で実行され、それがコードを書くのを妨害していると思われます
自動保存なんてオプションを興味本位でONにしていたのが行けなかったのだと思います…
コードが書き終わった後にctr+sで手動で保存するようにすればなんとか使えるようになりました
ご協力ありがとうございましたm(_ _)m
- 799 :デフォルトの名無しさん:2017/03/25(土) 15:11:17.55 ID:5MnOmzEx.net
- 合唱コンクール
- 800 :デフォルトの名無しさん:2017/03/25(土) 19:04:15.43 ID:axug6RQN.net
- 自己解決したからってIssueに投げなくていいわけじゃないぞ
ちゃんとIssueでバグ報告しとかないと
- 801 :デフォルトの名無しさん:2017/03/26(日) 19:10:59.69 ID:24iyyPay.net
- PycharmでGoを書く
- 802 :デフォルトの名無しさん:2017/03/27(月) 09:00:52.72 ID:Bf4pJlD+.net
- jetbrainから出るやつっていつなん?
- 803 :デフォルトの名無しさん:2017/03/27(月) 11:33:39.92 ID:p7pVTGV7.net
- >>802
でてるっちゃでてるじゃん
https://www.jetbrains.com/go/download/
- 804 :デフォルトの名無しさん:2017/03/28(火) 11:29:46.98 ID:XYMZoduR.net
- >>717
で反応ないってことは使っている人居ない感じ?
どれで書いて勉強すればいいのかなぁーって
- 805 :デフォルトの名無しさん:2017/03/28(火) 15:18:18.42 ID:9WCU6g+e.net
- 使ってないですねえ
- 806 :デフォルトの名無しさん:2017/03/28(火) 15:22:57.29 ID:9WCU6g+e.net
- goglandはまだ正式なものでないようですしねえ(人柱向けですねえ)
Gogland ? JetBrains発の新しいGo IDEのお知らせ | JetBrains ブログ
https://blog.jetbrains.com/jp/2016/12/15/726
JetBrains Gogland: Up and Coming Go IDE
https://www.jetbrains.com/go/
- 807 :デフォルトの名無しさん:2017/03/28(火) 15:47:02.89 ID:XYMZoduR.net
- 人柱向けなので、人柱が居ないか聞いてみたんだと思う……
それまでのプラグインよりも良いという「らしい」から
- 808 :デフォルトの名無しさん:2017/03/28(火) 22:29:12.89 ID:OFHPA2bL.net
- AtomよりVScode
VScodeよりSublime
SublimeよりPycharm
Goglandはよ完成させんか!
- 809 :デフォルトの名無しさん:2017/03/28(火) 23:47:54.70 ID:wrx/BE3m.net
- 言語ごとにエディタ変えるよりオールインワンがいいねん
- 810 :デフォルトの名無しさん:2017/03/29(水) 03:12:59.73 ID:oF0yWN/4.net
- gogland試してる。
pluginの頃から既に実用レベルだったから、完成度は高いと思う。
debuggerとかで変数を確認しながら開発できるみたい。
https://www.jetbrains.com/go/features/
jetbrainsのideに慣れてれば使ってみると良いよ。
- 811 :デフォルトの名無しさん:2017/03/29(水) 11:37:06.05 ID:e2+Szx9c.net
- いまのところ、エディタ+実行環境ぐらいしか使ってないので、
Ideaのプラグインの頃との違いがあまり分かってない。
liteideもそのぐらいしか使ってなかたったけど。
- 812 :デフォルトの名無しさん:2017/03/29(水) 11:45:26.94 ID:UMeevNqB.net
- >>809
vimとemacsが仲間にして欲しそうにこちらを見ている
言語ごとの文法に慣れたら、言語ごとのIDE/エディタも慣れると思ってた時期が俺にもありました
環境は変わるとホント辛いよね
- 813 :デフォルトの名無しさん:2017/03/29(水) 12:34:20.39 ID:4wfKDbDZ.net
- VisualStudioCodeが便利すぎて正直Go専用にIDE環境使おうとは思わんな。
- 814 :デフォルトの名無しさん:2017/03/29(水) 17:31:20.16 ID:mPpJrWfj.net
- Goglandで良いならLiteIDEで良いじゃん
- 815 :デフォルトの名無しさん:2017/03/30(木) 18:14:38.97 ID:tZ7gdWKd.net
- LiteIDEってGoで書かれているわけじゃないんだね。
ずっとGoで書かれているんだと思ってた。。。
- 816 :デフォルトの名無しさん:2017/03/30(木) 20:28:14.36 ID:Ya8jf9nB.net
- >>815
Goで書かれていると言えばMicro。
でもプラグインはluaだという
- 817 :デフォルトの名無しさん:2017/04/20(木) 02:41:38.17 ID:pSoU+zvg.net
- Google公式でaptパッケージをメンテしてほしい
今あるのはバージョンが古いし
- 818 :デフォルトの名無しさん:2017/04/20(木) 14:57:33.39 ID:T7Zz78Cb.net
- >>817
つ anyenv
- 819 :デフォルトの名無しさん:2017/04/20(木) 23:41:12.94 ID:Yuw+ZMQt.net
- goenvでもいいしね
- 820 :デフォルトの名無しさん:2017/04/21(金) 23:13:42.55 ID:DOzdPvj8.net
- rubyのbundleかpythonのvenvみたいなのが欲しい
depはいちいちプロジェクト毎にGOPATHを書き換えないといけないからだるい
- 821 :デフォルトの名無しさん:2017/04/22(土) 12:36:33.90 ID:XOGXVxf4.net
- そのためのDockerですよ
- 822 :デフォルトの名無しさん:2017/04/22(土) 16:47:25.97 ID:b6kRyspV.net
- >>820
glideじゃだめなん?
- 823 :デフォルトの名無しさん:2017/04/24(月) 16:03:49.72 ID:Ce/YXV/H.net
- go-opencvってどうなの
結局cgo使うことになる?
- 824 :デフォルトの名無しさん:2017/04/27(木) 23:04:18.01 ID:Q8g/twyk.net
- delve入れて IntelliJ IDEA でデバッグしようとしたんだけどなぜかパニクる、同じようなこと起こってるひといる?
- 825 :デフォルトの名無しさん:2017/04/30(日) 10:57:04.13 ID:0Jw8BHIT.net
- go get github.com/hajimehoshi/ebiten/...
って … ってどういう意味なんですかね?
- 826 :デフォルトの名無しさん:2017/04/30(日) 12:43:49.05 ID:YASP0NOm.net
- ∩___∩ |
| ノ\ ヽ |
/ ●゛ ● | |
| ∪ ( _●_) ミ j
彡、 |∪| | J
/ ∩ノ ⊃ ヽ
( \ / _ノ | |
.\ “ /__| |
\ /___ /
- 827 :デフォルトの名無しさん:2017/04/30(日) 19:15:55.71 ID:Kng/Djib.net
- …がないとebitenパッケージしかgetしないってことだと思う。
exampleとかebitenutilもgetしたいなら…つけるんじゃないか。
- 828 :デフォルトの名無しさん:2017/05/02(火) 18:24:35.45 ID:Wqf9gHHS.net
- >>751
- 829 :デフォルトの名無しさん:2017/05/03(水) 08:31:28.68 ID:O89wJViE.net
- 遅ればせながらshibukawaさんのnanovgo demo sampleってやつを
ubuntu 16.04上で動かしてみたけど、これいいね
巷での評判はどうなの?
- 830 :デフォルトの名無しさん:2017/05/03(水) 08:33:34.36 ID:O89wJViE.net
- >>829
おっとgoのバージョンは1.8.1
- 831 :デフォルトの名無しさん:2017/05/03(水) 20:02:29.02 ID:O89wJViE.net
- >>830
windows10でもやってみた
結構いろんな環境で動きそうですね
goはやはり1.8.1
- 832 :デフォルトの名無しさん:2017/05/05(金) 13:35:23.32 ID:P7YKsBwJ.net
- >>831
同じマシン(i5 第3世代、HPデスクトップ)で速度を比較してみると
windows10: 130-140 FPS
ubuntu 16.04: 125付近 FPS
で、あまり違いはなかった
- 833 :デフォルトの名無しさん:2017/05/05(金) 13:43:01.75 ID:P7YKsBwJ.net
- >>832
おっとまた忘れた
画面の解像度が速度に大きく作用するので、その記載
ここでのテストは 1920x1080でした
- 834 :デフォルトの名無しさん:2017/05/06(土) 13:38:13.01 ID:e8GUuuYA.net
- >>833
別のマシン(i5-4590S)で Windows 10 (Creators update、上も同じ)
380-400 FPS
第4世代と第3世代の差は圧倒的だは!
- 835 :デフォルトの名無しさん:2017/05/06(土) 13:45:33.58 ID:xfCUj8G0.net
- おつ
- 836 :デフォルトの名無しさん:2017/05/16(火) 00:10:12.72 ID:jyI5CijS.net
- goにもnilを許容しない変数定義できるようになって欲しい。
typeScriptとかになれるとnilになるとコンパイラが指摘してくれんだろという思い込みがgoで書く時に問題になる。実行時エラー出しまくりw
- 837 :デフォルトの名無しさん:2017/05/16(火) 18:53:07.01 ID:18D2gyoZ.net
- Rustでもやれば
- 838 :デフォルトの名無しさん:2017/05/17(水) 11:26:01.95 ID:8ydAfzFN.net
- Rustとかになれると変数値破壊するとコンパイラが指摘してくれんだろという思い込みがGo, TypeScriptで書く時に問題になりそう
JavaやSwift(ObjC)みたいなnilable修飾詞はあっても良いかもねぇ、どうしても欲しいと言う機能でもないけど
- 839 :デフォルトの名無しさん:2017/05/17(水) 22:28:30.66 ID:sVDcp3Zu.net
- rustのほうがコンパイラがより親切ってこと?
goのエコシステムが好きだから、今のところはrustを試そうとは思わないなぁ。
goのnilって型がありつつnlみたいな状態とただのnilって違うし
そういう混乱があるから
nilを許容しない方向に進んだほうがより直感的になる気がする。
- 840 :デフォルトの名無しさん:2017/05/20(土) 09:48:00.81 ID:POYpVYoy.net
- rustのエコシステムはgo並みに親切だけど、コンパイラはドSだからやめた方がいい
試した所でgoやtypescriptのコンパイラのゆるさを見直すだけだよ
goのnil, nlはまぁ混乱するからどっちかだけにして欲しくはある
- 841 :デフォルトの名無しさん:2017/05/25(木) 22:23:56.33 ID:gYX5/I4W.net
- Goをはじめてつかってみたけど
Goの良さを生かせるプロジェクトってすごく限られてるよな
- 842 :デフォルトの名無しさん:2017/05/25(木) 22:31:37.92 ID:VLHKaXKG.net
- そうなの?
- 843 :デフォルトの名無しさん:2017/05/26(金) 01:11:35.38 ID:ZNc2U8qB.net
- go脳裏ってgoroutineだしね。並行処理したいってなければphpでいいのかもね。
俺的にはkotlinに行ってみようかな。
- 844 :デフォルトの名無しさん:2017/05/26(金) 10:53:21.83 ID:gvIQ5llv.net
- go versionしてもバージョンがすべて表示されないんですけど
1.8.1なのか1.8.3ナノ化マイナーバージョンまで調べる方法教えてください
- 845 :デフォルトの名無しさん:2017/05/27(土) 00:13:43.62 ID:RKgIRc4T.net
- Goの人間に期待してない感じ良いと思う
バカでもある程度同じ書き方になるみたいな
- 846 :デフォルトの名無しさん:2017/05/27(土) 03:53:53.40 ID:KIGprW1f.net
- メソッドでnilが来て死
func (h *Hoge)foo() int {
return h.bar + h.baz
}
- 847 :デフォルトの名無しさん:2017/05/27(土) 06:56:18.11 ID:3w92Yrys.net
- bに0が来て死くらいバカっぽいなw
func div(a, b int) int {
return a / b
}
- 848 :あ:2017/05/27(土) 09:39:16.58 ID:sEq8ObI0.net
- >>845
palmのgraffitiみたいな感じで、歩み寄れというメッセージ感じるな。
- 849 :デフォルトの名無しさん:2017/05/27(土) 10:53:29.19 ID:AtlUQH7H.net
- >>844
それ、おまいがインストールしてるバージョンが1.8なんじゃないかな
- 850 :デフォルトの名無しさん:2017/05/27(土) 13:58:37.09 ID:dJa5J15+.net
- >>849
1.8.0だったら1.8って表示されるんですか?
たぶん1.8.1なのでそれはないです
- 851 :デフォルトの名無しさん:2017/05/27(土) 16:29:07.28 ID:AtlUQH7H.net
- >>850
$ go version go version go1.8.3 darwin/amd64
- 852 :デフォルトの名無しさん:2017/05/27(土) 21:59:50.58 ID:KIGprW1f.net
- ポインタのレシーバーは常にnilチェックがいるのか
面倒だな
- 853 :デフォルトの名無しさん:2017/06/06(火) 15:41:52.12 ID:DdiwlRfv.net
- >>850
$ go version
go version go1.8.2 darwin/amd64
- 854 :デフォルトの名無しさん:2017/06/07(水) 10:51:13.30 ID:gCV+j4n9.net
- 一つのプロジェクト内で複数のサイトを立ち上げたいんですがいい方法無いですか?
フレームワークは何でもいいです
http://127.0.0.1:8081
http://127.0.0.1:8082
http://127.0.0.1:8083
みたいにアクセスしたいのです
- 855 :デフォルトの名無しさん:2017/06/07(水) 12:39:27.11 ID:ayFCuqeB.net
- こういうのいっぱいつくればできるのかな?
func server8081() {
http.HandleFunc("/", handler)
http.ListenAndServe(":8081", nil)
}
func main() {
server8081()
}
- 856 :デフォルトの名無しさん:2017/06/07(水) 14:12:09.15 ID:Kk4r5o3h.net
- >>854
大量にリッスンしろYO
- 857 :デフォルトの名無しさん:2017/06/08(木) 11:31:34.32 ID:RTYYoCEV.net
- なんとなくだけどdepが今後オフィシャルツールになると見込んでdepしか使ってないけど
GUIライブラリも手放した過去があるからGoogleを信用してはいけないよな
glideも覚えるべきか
- 858 :デフォルトの名無しさん:2017/06/09(金) 16:50:45.42 ID:T5+k/E3o.net
- v := flag.Int("v", 0, "v")
flag.Parse()
fmt.Println(*v)
と
var v string
flag.Int(&v, "v", 0, "v")
flag.Parse()
fmt.Println(v)
このvはなんの違いがあるんですか?
- 859 :デフォルトの名無しさん:2017/06/09(金) 22:09:41.77 ID:TYDzsVxx.net
- 型が違うという話?
- 860 :デフォルトの名無しさん:2017/06/11(日) 19:32:55.88 ID:h1hPlu9T.net
- getchみたいなのって標準機能じゃ出来ないんですか?
ぐぐるとc使ったりOS付属のコマンドを使うやり方しかないんですがこういうものですか?
- 861 :デフォルトの名無しさん:2017/06/12(月) 00:25:13.64 ID:9+UoMkQw.net
- 標準機能に足りないものは
誰かが作ってパッケージで公開してることにまず期待をなさい
https://godoc.org/?q=getch
https://godoc.org/?q=console
https://godoc.org/?q=curses
- 862 :デフォルトの名無しさん:2017/06/15(木) 22:00:13.66 ID:w0F6tV0E.net
- メモリ確保するとき
hoge := make(map[string]int)
と
hoge := map[string]int{}
ではどっちのほうがよいの?
- 863 :デフォルトの名無しさん:2017/06/21(水) 01:28:25.82 ID:eYd+pbWG.net
- 最近Goを使うところがやたら増えてるけど
そんなにGoroutineを使う業務があるのか
- 864 :デフォルトの名無しさん:2017/06/21(水) 10:29:13.06 ID:CAzvCkNY.net
- >>863
バッチ処理で複数Workerに作業させたいとか
そういうのに使うために一度Gorutine使ってからは、あんまり使わんな。
httpserver動かすと裏で動いてんのかな
- 865 :デフォルトの名無しさん:2017/06/21(水) 10:45:34.41 ID:/PHY+XSN.net
- 1リクエスト1Goroutineじゃないっけ
- 866 :デフォルトの名無しさん:2017/06/23(金) 21:14:31.74 ID:6gEmwLmB.net
- flagで引数を必須にする方法はないんでしょうか?
- 867 :デフォルトの名無しさん:2017/06/24(土) 20:07:09.01 ID:rFJT48yH.net
- シングル脳脱却の為に必要なくても慣れたい
- 868 :デフォルトの名無しさん:2017/07/04(火) 23:39:57.28 ID:CTaqcgX4.net
- http://golang-jp.org/
のRunボタンおすと
Error communicating with remote server.
Program exited.
ってなるんだけど直す気は無いの?本家のページはちゃんと動くのに。
- 869 :デフォルトの名無しさん:2017/07/05(水) 11:17:44.14 ID:Qpg00Afa.net
- 2ちゃんの裏に落書きしても何にもならんよ
- 870 :デフォルトの名無しさん:2017/07/07(金) 00:01:08.00 ID:Qz77liVk.net
- jpの人はここを見てないのかw
なんか色々とグズグズだなw
- 871 :デフォルトの名無しさん:2017/07/07(金) 16:51:04.03 ID:aZ/Hajxr.net
- むしろこんなとこ見てるやつが少数なんだが
- 872 :デフォルトの名無しさん:2017/07/07(金) 18:39:22.60 ID:BAdmHvms.net
- まともな社会人が2chなんか見てるわけないだろ・・・
- 873 :デフォルトの名無しさん:2017/07/07(金) 19:46:28.59 ID:7JrZOF7d.net
- 暇職だけだよな
- 874 :デフォルトの名無しさん:2017/07/10(月) 13:48:40.97 ID:gqDySAuG.net
- 普段みんなどこいるの?
正直匿名じゃないとアホな質問とかできないから
ここが居心地いいんだよね。
teratailとかで下手にアホな質問書き込むとすごい叩かれるから凹む。
- 875 :デフォルトの名無しさん:2017/07/10(月) 16:12:24.25 ID:XvbOmo/f.net
- 今の時代は非匿名文化ですから
teratailで叩かれるような質問ならここでも叩かれますよ
むしろ2ちゃんに飽きてる層が多いから2ちゃんで質問しても回答もつきにくい
- 876 :デフォルトの名無しさん:2017/07/10(月) 18:51:54.54 ID:gqDySAuG.net
- >>875
いや。叩かれるのはいいんだけど、
特定されて、こいつこんな質問過去にしてたんか。恥ずかし
ってなるのが怖くて質問できない。
専用アカウント作ればいいんだろうけど使い分けんのが面倒。
- 877 :デフォルトの名無しさん:2017/07/10(月) 19:04:55.53 ID:l6mkv8ve.net
- 誰だって最初は初心者なんだからビビらず
どこでだって質問しまくればいいのよ
- 878 :デフォルトの名無しさん:2017/07/10(月) 20:44:54.88 ID:e/A+ULgc.net
- >>876
そんなの気にしてたらいつまでも成長しませんよ
アカウント作って質問するぐらいの労力より回答するほうが労力使うことを知ってくださいよ
さっさとteratailのアカウント作ってこい
- 879 :デフォルトの名無しさん:2017/07/10(月) 21:11:13.33 ID:gqDySAuG.net
- >>878
質問を書き込んだら、何故か直後に解決法が分かる不思議。
- 880 :デフォルトの名無しさん:2017/07/11(火) 21:07:45.10 ID:aZj0SKJK.net
- >>879
言語化するときに頭が整理されるからな
- 881 :はちみつ餃子 ◆8X2XSCHEME :2017/07/14(金) 02:04:24.52 ID:I4VxJiDM.net
- >>879
ラバーダックデバッギングってやつ
- 882 :デフォルトの名無しさん:2017/07/14(金) 07:48:54.82 ID:AYnLv9ir.net
- >>881
>ラバーダックデバッギング
テディベアだと思ってたわ
- 883 :デフォルトの名無しさん:2017/07/17(月) 02:12:19.59 ID:7ihWSUZ7.net
- Google、プログラミング言語「Go 2」開発計画発表
http://news.mynavi.jp/news/2017/07/16/064/
- 884 :デフォルトの名無しさん:2017/07/17(月) 10:09:53.66 ID:Fx97i6Ko.net
- Goスレはpart1も終わっていないというのに
- 885 :デフォルトの名無しさん:2017/07/17(月) 11:06:33.47 ID:fxU6unKK.net
- すばらしい洞察
わろた
- 886 :デフォルトの名無しさん:2017/07/17(月) 11:07:35.85 ID:MkiOtZ1h.net
- goスレは実質part3くらいだよ
- 887 :デフォルトの名無しさん:2017/07/17(月) 11:41:04.01 ID:XK2ZW0di.net
- Go 2になったらGopherくんも何か変わる?
- 888 :デフォルトの名無しさん:2017/07/17(月) 12:51:50.93 ID:HJdOjxBV.net
- ついにジェネリクスがつく時が来たか。
- 889 :デフォルトの名無しさん:2017/07/17(月) 15:27:30.94 ID:DkQimeru.net
- ジェネリクスと nil 安全性が実装されたら kuso 言語でないと認める
- 890 :デフォルトの名無しさん:2017/07/17(月) 17:43:48.37 ID:hXjse7Lp.net
- C++ か Java でも使ってればいいんじゃないかな
- 891 :デフォルトの名無しさん:2017/07/17(月) 19:23:15.17 ID:stj3YUiZ.net
- 今日Goインストールしました、
ビルドしてexeファイル作るのまではできたけど、
Goで取ってきたデータを、
表示する、アプリみたいなのを作るにはどうすればいいの?
ほかの人のPCでアプリを実行できるようにしたいです。
- 892 :デフォルトの名無しさん:2017/07/17(月) 20:01:14.42 ID:pfmhHyiC.net
- >>891
1バイナリのみで渡したいなら素材も埋め込む
埋め込み用のライブラリを使うのが普通
- 893 :デフォルトの名無しさん:2017/07/17(月) 20:40:18.36 ID:stj3YUiZ.net
- >>892
すみません、
初心者なので意味が分からないです、
でも、ありがとうございます。
- 894 :デフォルトの名無しさん:2017/07/17(月) 20:44:48.16 ID:HJdOjxBV.net
- 対話がチグハグすぎる。
質問者はwebから情報を取得して表示するアプリを作りたいと言っておる。
GUIアプリを作りたいと言っているんだろうか?
それとも、、、なんだろ?
- 895 :デフォルトの名無しさん:2017/07/17(月) 20:50:45.38 ID:stj3YUiZ.net
- >>894
そうですそれです、
webから取得したデータを、
表示するGUIアプリを作って、
他の人のPCでも、簡単に実行できるようにしたいです、
今は、取得したデータを、
コマンドプロンプトに表示させるのしかできません。。。
- 896 :デフォルトの名無しさん:2017/07/17(月) 21:03:19.67 ID:HJdOjxBV.net
- >>895
それはあんまりgoの得意な分野ではないかなー。
やったことはないけど
http://qiita.com/intelf___/items/2207c02c306a495d99e6
とかかね。
- 897 :デフォルトの名無しさん:2017/07/17(月) 21:06:12.58 ID:stj3YUiZ.net
- >>896
詳しい人でもあまりやったことないんですね、
アプリ作るの想定してない言語なのかな、
情報ありがとうございます、
そこ読んで勉強してみます。
- 898 :デフォルトの名無しさん:2017/07/17(月) 21:11:10.65 ID:HJdOjxBV.net
- >>897
Goをやってる人って複数言語をたしなんでいるとこが多いから
GUIが得意な言語を使うと思う。
GoでわざわざGUIをやりたいというのは変態くらいだと思うよ。今のところ。
webアプリとかならありえるし
どういうアプリか知らんけどwebサーバとして動作させて
ブラウザで結果表示するとかが、まぁGoアプリとしてありえる範囲かと。
- 899 :デフォルトの名無しさん:2017/07/17(月) 21:38:02.29 ID:pfmhHyiC.net
- GUIアプリのことだったのか、それは失礼
他の人が回答してるようにGoの得意分野じゃないから止めた方が良いね
- 900 :デフォルトの名無しさん:2017/07/17(月) 23:43:30.10 ID:qHGcXNCc.net
- そういう用途ならWebアプリが一番無難だよね。つまりJavaScriptかAltJSの言語
- 901 :デフォルトの名無しさん:2017/07/18(火) 00:42:33.52 ID:L9UQruVY.net
- >>889
すごく同意
- 902 :デフォルトの名無しさん:2017/07/18(火) 17:19:23.70 ID:ltlpiHrO.net
- null安全は今から入れると互換性保てないからな
最初から入れなかったGoogleは馬鹿
- 903 :デフォルトの名無しさん:2017/07/18(火) 18:56:12.92 ID:Z6ozUYhv.net
- 今さら、だな
- 904 :デフォルトの名無しさん:2017/07/18(火) 20:20:35.08 ID:6/aX4y+Q.net
- typescriptは後入れできてるけどな。
- 905 :デフォルトの名無しさん:2017/07/18(火) 21:22:05.30 ID:UMkIx05v.net
- >>904
ライブラリは対応してなかったりで面倒だぞ
- 906 :デフォルトの名無しさん:2017/07/20(木) 16:06:01.17 ID:TTDKN4T0.net
- The Go Blog Toward Go 2
ttps://blog.golang.org/toward-go2
ようやくこれを読んだけど面白いこと発表したわけじゃないのな
何にも決まってないけどGo 2リリースに向けて手伝って!とか言ってるから信者は助けてあげればいいんじゃないかなぁ
問題提起だけでも助かるって言ってるからnull安全だのジェネリクスがないからダメって言ったら聞いてくれるはずだよ
- 907 :デフォルトの名無しさん:2017/07/20(木) 16:14:08.52 ID:hN2WxidD.net
- そうそう、ダメダメなんて抽象的なこと言ってても放置されるだけだってね
具体的な体験レポートを提出して説得しろってさ頑張れよ
- 908 :デフォルトの名無しさん:2017/07/20(木) 21:02:59.35.net
- goってcode generete推奨って感じだけど
generete自体はtemplate文字列とか使ってて
ライブラリ開発者は辛い思いしてるよね。
(xoのテンプレートいじるの辛い)
だから時期パージョンではAST出力とASTからbin生成をサポートして欲しいな。
そうするとaltGoみたいのが作り安くなって言語ごとカスタマイズ出来るようになるし
- 909 :デフォルトの名無しさん:2017/07/23(日) 02:23:00.81 ID:22lpzJ7z.net
- ジェネリクスの追加で、みんなハッピーになるのかな
仕様の変更や削減はいいけど、追加を最小限にとどめられるかが勝負だね
あと2進数リテラルは、重要だと思うんだけど、そんなことないの?
8進より、よほど役に立つと思うんだけど、8進リテラルって何か特種用途があるの?
ってか8進数なんて切り捨てて、アンダーバー付きの2進リテラルを追加した方が良かったと思うんだ
8進数なんて、誰が求めているのかよく分からないし、せめて0oにしてくれた方が・・・
こういうのを排除するのが、この言語の正しい姿勢だと思うんだけどね
- 910 :デフォルトの名無しさん:2017/07/23(日) 16:17:42.71 ID:knasDU4O.net
- >>909
けっこう賛成
- 911 :デフォルトの名無しさん:2017/07/26(水) 10:18:59.22 ID:ENBFGRGX.net
- >>909
合議制になるんだから提案してみたらいいんじゃない。
おれとしても賛成だよ。
個人的にはelixirのパターンマッチングでバイナリにもマッチングできる仕組みに感動して、
goでバイナリ操作したいならelixirみたいなパターンマッチング欲しいって思った。
ジェネリクスはほしいけどrustでいいかなって気もしてる。
- 912 :デフォルトの名無しさん:2017/07/28(金) 16:54:15.48 ID:9dM+xDfx.net
- >>909
3bit区切りのデータを表現する時とかに判りやすい
- 913 :デフォルトの名無しさん:2017/07/29(土) 13:11:38.29 ID:7d+TUsbq.net
- 8進数……昔PC-88のCMD PAL文で使ったぐらいだな。
- 914 :デフォルトの名無しさん:2017/08/05(土) 12:25:03.33 ID:ggnuHEiJ.net
- ジェネリクスじゃなくていいから
interfaceの結合型が簡単に作れるようにして欲しい
func Xxxx(readWriter io.Reader & io.Writer)
func Xxxx(readerOrWriter io.Reader | io.Writer)
とりあえずinterface{} が 関数のパラメータになってるの辛すぎだからそこを解消して欲しいわ
- 915 :sage:2017/08/07(月) 01:18:22.11 ID:ncmD/ymY.net
- ちょっと触ってみた
一撃でランタイムなくても動くバイナリができたときはびっくりした
- 916 :デフォルトの名無しさん:2017/08/08(火) 19:23:17.89 ID:ljoKaOtb.net
- おめ
- 917 :デフォルトの名無しさん:2017/08/09(水) 13:45:53.99 ID:tJ5llPZ8.net
- そのバイナリだけでサーバーが起動するのも感動する
- 918 :デフォルトの名無しさん:2017/08/17(木) 01:04:47.91 ID:5a8n6tS4.net
- Go2ではコレクション操作の機能をもっと豊富に用意してほしい
forループ文だらけになるわ
- 919 :デフォルトの名無しさん:2017/08/17(木) 01:23:28.75 ID:lKqFMmqx.net
- 本当これ
mapとfilterよこせや
- 920 :デフォルトの名無しさん:2017/08/17(木) 08:19:52.91 ID:7NUjepJC.net
- \ ループだらけフォォォーーーーッ! /
- 921 :デフォルトの名無しさん:2017/08/17(木) 09:19:08.10 ID:wX4L2Jep.net
- >>919
これデファクトスタンダードなライブラリってないのかな
- 922 :デフォルトの名無しさん:2017/08/17(木) 09:24:39.67 ID:vK4PZ24H.net
- Ruby でも使ってればいいんじゃない
- 923 :デフォルトの名無しさん:2017/08/17(木) 09:43:34.47 ID:EtIXwQlG.net
- なぜRustとかでなくRubyなのか
- 924 :デフォルトの名無しさん:2017/08/17(木) 09:46:20.42 ID:lKqFMmqx.net
- >>921
ジェネリクスがないから型安全じゃなくなる
- 925 :デフォルトの名無しさん:2017/08/17(木) 10:57:10.38 ID:wX4L2Jep.net
- >>924
くそ。やはりジェネリクスか。
goのエコシステムは好きだからrubyとかrustを使う気はないんだよなぁ。
generete使って実装追加するようなのならあるかな?
- 926 :デフォルトの名無しさん:2017/08/17(木) 11:47:09.52 ID:lJ+MJ24Q.net
- ジェネリクス追加せずとも型推論強化でなんとかかんとか
- 927 :デフォルトの名無しさん:2017/08/17(木) 23:51:48.55 ID:JDyXRi5Q.net
- golangで2chに書き込めない
クッキーの設定エラーが出る。ヘッダに入れてるんだけどな
あとレスポンスのsjis to utf8は出来たけどリクエストをutf8 to sjisする方法が分からない
- 928 :デフォルトの名無しさん:2017/08/18(金) 00:03:21.95 ID:c33/jNGO.net
- いきなりgolangで書き込むんじゃなくて
主導の対話通信(telnetあたり)で2chへ書き込んで通信の内容でも確認してみたらよいんでない?
- 929 :デフォルトの名無しさん:2017/08/18(金) 00:05:54.58 ID:c33/jNGO.net
- go - Goで[]byteをshift-jisの文字列に変換する - スタック・オーバーフロー
https://ja.stackoverflow.com/questions/6120/go%e3%81%a7byte%e3%82%92shift-jis%e3%81%ae%e6%96%87%e5%ad%97%e5%88%97%e3%81%ab%e5%a4%89%e6%8f%9b%e3%81%99%e3%82%8b
- 930 :デフォルトの名無しさん:2017/08/18(金) 00:07:29.39 ID:c33/jNGO.net
- Go言語で文字コード変換 - Qiita
http://qiita.com/uchiko/items/1810ddacd23fd4d3c934
Golang による文字エンコーディング変換 - Qiita
http://qiita.com/spiegel-im-spiegel/items/2e475b48226330aa5570
- 931 :デフォルトの名無しさん:2017/08/18(金) 00:17:02.43 ID:bO8OoBBY.net
- Set-Cookieが複数あったのが原因だった
すまん
- 932 :デフォルトの名無しさん:2017/08/18(金) 00:44:00.14 ID:bO8OoBBY.net
- あ、書き込みは出来るけど文字化けするのか
>>928
node.jsでしかしたことなかった
>>929
>>930
http.NewRequest("POST", "https://"+params.server+".2ch.net/test/bbs.cgi?guid=ON", transform.NewReader(strings.NewReader(values.Encode()), japanese.ShiftJIS.NewEncoder()))
ってしてみたけど文字化けして書けない
- 933 :デフォルトの名無しさん:2017/08/18(金) 01:33:09.70 ID:bO8OoBBY.net
- values.Encode()の時点でURLエンコーディング(UTF8)されるからそれをSJISにしても意味ないのか
やっと原因分かった
- 934 :デフォルトの名無しさん:2017/08/18(金) 01:45:45.20 ID:bO8OoBBY.net
- SJISのURLエンコードを出来るライブラリが見つからないのですが、何かないですか?
- 935 :デフォルトの名無しさん:2017/08/18(金) 04:24:15.42 ID:Wk6Gpf/O.net
- strings.NewReader(values.Encode())
これ何やってんのさ
- 936 :デフォルトの名無しさん:2017/08/18(金) 05:00:28.28 ID:Wk6Gpf/O.net
- こんなんで通らんの?
https://play.golang.org/p/WIuVrc6hL5
- 937 :デフォルトの名無しさん:2017/08/18(金) 05:03:09.61 ID:Wk6Gpf/O.net
- >>936
あ、間違えた、URLエンコードじゃねえ
- 938 :デフォルトの名無しさん:2017/08/18(金) 05:16:20.81 ID:Wk6Gpf/O.net
- >>937
こうだな
https://play.golang.org/p/haVEWGKoc1
- 939 :デフォルトの名無しさん:2017/08/18(金) 06:41:42.32 ID:mSCO2cNh.net
- 頑なにgoにgenericsはいらないって主張してた人たちの立場はどうなってるの?
- 940 :デフォルトの名無しさん:2017/08/18(金) 09:03:43.27 ID:+X0+m8dy.net
- >>939
あれは要らないって言ってるわけじゃなくて無くても筋力で頑張るって言ってる
- 941 :デフォルトの名無しさん:2017/08/18(金) 11:29:59.19 ID:vRHq3miw.net
- 別に立場変わらずgoにgenericsはいらないって主張してるでしょ
genericsが必要だって主張してる人たちが
Go2ならgenericsを採用してくれる機会があるはず!って盛り上がってる(?)だけで
ついでに例外とAssertも盛り上がってくれねぇかな
- 942 :デフォルトの名無しさん:2017/08/18(金) 11:33:40.78 ID:+X0+m8dy.net
- 個人的にはinterface{}型が関数パラメータに多用されてしまう状況を改善してくれるだけでいい。
例外は別に無くてもいいかな。
- 943 :デフォルトの名無しさん:2017/08/18(金) 12:04:12.59 ID:eIpnBeVf.net
- 2ちゃんもutf-8化はよ
- 944 :デフォルトの名無しさん:2017/08/18(金) 12:09:30.77 ID:bO8OoBBY.net
- url.Valuesに突っ込むキーと値をsjis化したら文字化けせずにpost出来た
>>943
itestAPIならutf8だけどそれ以外面倒だよな
- 945 :デフォルトの名無しさん:2017/08/18(金) 18:47:51.91 ID:rPePw4sf.net
- Goで2chって↓のスレの関係の人?
http://jbbs.shitaraba.net/bbs/read.cgi/computer/44607/1489736608/
- 946 :デフォルトの名無しさん:2017/08/18(金) 19:03:33.52 ID:PB7aU8rD.net
- >>945
違うよ
そのスレ初めて見た
- 947 :デフォルトの名無しさん:2017/08/25(金) 10:47:42.16 ID:+IyaXioz.net
- Go 1.9 is released
https://blog.golang.org/go1.9
- 948 :デフォルトの名無しさん:2017/08/25(金) 16:47:51.80 ID:a5MHugSq.net
- ついに1.9!
もう少しで2.0やん
- 949 :デフォルトの名無しさん:2017/08/25(金) 18:58:27.43 ID:eQ9TUNW0.net
- 次は1.10でしょ
- 950 :デフォルトの名無しさん:2017/08/25(金) 19:08:15.57 ID:a5MHugSq.net
- あ、そっか
- 951 :デフォルトの名無しさん:2017/08/25(金) 21:04:31.34 ID:wqoYH6g/.net
- 1.20 = 2.0 になるって言ってんだろ
まだ先はなげーよな
- 952 :デフォルトの名無しさん:2017/08/26(土) 00:46:54.39 ID:8IY83KqL.net
- 某言語では、0.100とかいうことになってたね…
- 953 :デフォルトの名無しさん:2017/08/26(土) 01:02:11.77 ID:UaCnfxPk.net
- >>952
何その言語
- 954 :デフォルトの名無しさん:2017/08/26(土) 09:39:10.71 ID:zUqg3XaP.net
- 言語じゃなくwineじゃないの?
- 955 :デフォルトの名無しさん:2017/08/26(土) 10:09:59.64 ID:8IY83KqL.net
- D言語です、D言語
- 956 :デフォルトの名無しさん:2017/08/26(土) 10:36:59.91 ID:XF+FkSFR.net
- golangを基礎から学ぶためにrubyのhttps://docs.ruby-lang.org/ja/2.4.0/doc/index.htmlに載ってる言語仕様みたいなのをgolangのドキュメントで探してるんですけど
どこをみたらいいですか?
- 957 :デフォルトの名無しさん:2017/08/26(土) 10:49:06.08 ID:gyHjYOL6.net
- Documentation - The Go Programming Language
https://golang.org/doc/
- 958 :デフォルトの名無しさん:2017/08/26(土) 13:10:28.24 ID:1Xp/S2sl.net
- 日本語訳
公式・非公式は、わからないけど
http://golang.jp/
http://golang-jp.org/doc/
- 959 :デフォルトの名無しさん:2017/08/26(土) 19:58:41.27 ID:7lTOqKMJ.net
- >>958
golang.jpは古いしメンテされてなくて放置されてるので見ないように
- 960 :デフォルトの名無しさん:2017/08/27(日) 08:21:25.17 ID:gv0iyIef.net
- 今更だけどGoglandアプデしたらmainパッケージ内で複数ファイルのビルドができるようになてた
言語専用のIDEがあるって理由で使ってる人はあんまりいないか
俺の開発の8割はIDEに支えられている…
- 961 :デフォルトの名無しさん:2017/08/27(日) 11:36:53.98 ID:Fy+qgg0G.net
- GOPATH=~/goって設定してるんですけど
depを使うようになったのでGOPATH=~/foo:~/goな風に設定したんですよ
これでdep ensureすると自動的に~/foo/以下の適当な場所に人様のパッケージがインストールされるんですが
binコマンドが生成されないんです
depを使わずgo getでインストールするとbinコマンドが生成されるんですがdep使ってインストールしたらbinコマンドが生成されないんでしょうか?
例えばhttps://github.com/spf13/cobra
- 962 :デフォルトの名無しさん:2017/08/28(月) 00:07:23.17 ID:d332SnKK.net
- https://github.com/golang/dep/wiki/Roadmap
https://github.com/golang/dep/issues
https://github.com/golang/dep/issues?q=is%3Aissue+is%3Aclosed
- 963 :デフォルトの名無しさん:2017/08/28(月) 05:58:13.56 ID:4ejthJEF.net
- >>958-959
改訂2版 基礎からわかる Go言語、古川昇(エイベル)、2015
golang.jp は、古川氏とエイベルの社員達が、翻訳していたらしいけど、
最近は、翻訳していないのか
Go Tour 日本語訳
https://go-tour-jp.appspot.com/welcome/1
- 964 :デフォルトの名無しさん:2017/09/12(火) 00:58:09.78 ID:hQHe5647.net
- 誰が書いてもまどろっこしいコードになるのがGoの最大の強み
- 965 :デフォルトの名無しさん:2017/09/13(水) 23:59:51.38 ID:NpFfvGPs.net
- >>363
逆でしょ。
- 966 :デフォルトの名無しさん:2017/09/14(木) 00:08:12.58 ID:6Rx4F0Vi.net
- goto 推奨?
- 967 :デフォルトの名無しさん:2017/09/24(日) 03:36:18.82 ID:I7KEdc5J.net
- 日本のおっさん共のgoコミュニティー気持ち悪いなぁ
- 968 :デフォルトの名無しさん:2017/09/24(日) 05:52:40.41 ID:Kg+0Au0P.net
- 友達探しにコミュニティに参加するつもりでいて
気持ち悪いと思うのなら参加しなければ良い
技術的な事をもっと深く知りたくて
コミュニティに参加したいと思ってるなら
人見てコミュニティ選んでるコミュ障のお前の方が気持ち悪い
- 969 :デフォルトの名無しさん:2017/09/24(日) 16:08:08.18 ID:ZXx1BO+p.net
- 朝鮮のおっさん共だと気持ち悪く無いって意味じゃない?、同胞の精神だね
- 970 :デフォルトの名無しさん:2017/09/24(日) 19:43:27.73 ID:W4+6Kt87.net
- 言語マニアが出した批判記事にクソヘボいコードが載ってて笑った
- 971 :デフォルトの名無しさん:2017/09/24(日) 23:14:09.61 ID:7raCX1cz.net
- こんなとこで場外乱闘か
- 972 :デフォルトの名無しさん:2017/09/28(木) 12:31:06.65 ID:h8WKWHlz.net
- type fSlice []float64
var pool = sync.Pool{
New: func() interface{} {
return make(fSlice, 0, 100)
},
}
go func(){
n := pool.Get().(fSlice)
...
pool.Put(n)
}()
20回に1回くらい
panic: interface conversion: interface {} is *main.fSlice, not main.fSlice
pool.Get().(*fSlice)なんてすると
panic: interface conversion: interface {} is main.fSlice, not *main.fSlice
で仕方なく
n,ok := pool.Get().(fSlice)
if !ok {...}した時に気づいたのだけど、Falseでも下の処理には影響しない
Falseだと100回のappendで何故かCapが128になる(Trueだと100)
この謎分かる?
- 973 :デフォルトの名無しさん:2017/09/28(木) 13:36:21.42 ID:h8WKWHlz.net
- 原因分かりました
pool.Put(n)の所、端折って書きましたが、実際はresetメソッド作ってそっちで(*n)[:0]してましたが
func(f *fSlice)reset(){
*f= (*f)[:0]
pool.Put(f) → pool.Put(*f)にすべきでした
}
サーセン
- 974 :デフォルトの名無しさん:2017/11/11(土) 00:39:24.57 ID:LLMRc4SD.net
- 質問です。
先日始めたばかりでデリファレンスの仕方が分からなくて困ってます。
超初歩的ですが教えてください。
コードは以下と同類です。
http://go-database-sql.org/varcols.html
これの dest:= の部分を
th := []interface{}{ new(int), new(string), new(string)}
にして読み込んだところ、
確かにポインタのスライスになっているようなのですが、デリファレンス出来ません。
(単に書き方が分からないだけですが)
試した結果は以下です。
fmt.Println(*th[0], " ", *th[1], " ", *th[2]) // invalid indirect of th[0] (type interface {})
fmt.Println(*(th[0]), " ", *(th[1]), " ", *(th[2])) // invalid indirect of th[0] (type interface {})
fmt.Println(th[0], " ", th[1], " ", th[2]) // 0x11f09b08 0x11ea1468 0x11ea1470
fmt.Println(th) // [0x11f09b08 0x11ea1468 0x11ea1470]
よろしくお願いします。
sqlx使ってもいいのですが、そもそもデリファレンス出来ないのがよく分かりません。
- 975 :デフォルトの名無しさん:2017/11/11(土) 07:08:21.29 ID:qi+awpQj.net
- >>974
Goにとっては、要素がポインタではなくてただの interface{} に見えている。
なのでデリファレンスできないというエラーになる。
方法としてあるのは、th := []*interface{}{...} にする方法。
ポインタの配列と宣言しているので、要素のデリファレンスが可能。
もしくは、要素ごとに、デリファレンスする前に、*intとかに型アサーション(ググって)をする。
その後でデリファレンスする。
- 976 :デフォルトの名無しさん:2017/11/11(土) 09:52:19.27 ID:LLMRc4SD.net
- >>975
最終的にはいけました。ありがとうございました。
> th := []*interface{}{...} にする方法
th := []*interface{}{new (int32), new(string), new(string)}
// cannot use new(int32) (type *int32) as type *interface {} in array or slice literal: *interface {} is pointer to interface, not interface
// cannot use th (type []*interface {}) as type []interface {} in argument to rows.Scan
これは駄目でした。new (int32)がポインタ配列に何故か入れられないという謎仕様?
全ての型はemptyインタフェース interface{} を実装しているのに、
全てのポインタ型はemptyインタフェースへのポインタを実装してない?
(rows.Scanでは受けられないというのはこちらの話ですが)
まあ今の段階ではよく分かりません。
> 要素ごとに、デリファレンスする前に、*intとかに型アサーション
fmt.Println(*(th[0].(*int32)), " ", *(th[1].(*string)), " ", *(th[2].(*string)))
こちらはいけたのですが、しかしこれではなあと。個別べた書きでは意味無いんですよね。
本当は構造体で受けたいのですが、sqlxしかないのかなあと。
(sqlxは内部で使用しているであろうリフレクションが遅そうでいや)
Goはリフレクションが遅くないとかいう落ちってあります?
リフレクション用のタグを別装備しているし、静的にリフレクションしてたりします?
というか動的言語(PHP/JavaScript)からの移植がこんな初歩的なところで躓くのは想定外でした。
動的言語前提の構造になっているとかなり辛いですね。
json周りでも同様のことが想定されますし、そのための型スイッチってのも何だかなあ、という気がします。
愚痴になってしまってすいません。
- 977 :デフォルトの名無しさん:2017/11/11(土) 11:11:10.62 ID:rrUNs59d.net
- new している意味がよく分からないけど、予め変数を割り当ててしまえば良いような?
rows, err := db.Query("select id, first_name, last_name from users")
:
var (
id int
firstName, lastName string
)
rows.Next()
err = rows.Scan(&id, &firstName, &lastName)
:
- 978 :デフォルトの名無しさん:2017/11/11(土) 13:21:37.63 ID:Zhof0cH3.net
- >>977
それだとDBのレコード個別にコードが必要になる。
だから当然困るし、当然同じように困っている人も居て、ググると出てくる。
https://stackoverflow.com/questions/17840963/create-a-map-in-golang-from-database-rows
それでsqlxなのだが、見る限りこれ裸のGoでも出来るのではないかと思って試していたわけ。
newしている意味はない、というか見ての通り今は文法もあやしいので、
動くコードを探してそこからスタートしてる。
ただそもそもsqlでレコードをいちいち走査することもないから、やりたいのはまさにsqlxのこれで、
> pp := []Place{}
> err = db.Select(&pp, "SELECT * FROM place WHERE telcode > ?", 50)
> http://jmoiron.github.io/sqlx/ より抜粋
何故これが標準でないのかがよく分からない。
(ついでに言えば三項演算子がないのも変だと思うが。)
とはいえ、自前でsqlxバリの環境を整えるなら結局リフレクションしか(多分)なく、
これが静的言語の限界というか当然で、それならsqlxを使った方が多分マシ。
楽して速い言語かと期待していたが、正直プログラミングレベルはCと大して変わらないし、
1970年代で止まっている言語と揶揄されるのも分かる。
C+GC+型システムと考えた方がいいのかなこれは。
- 979 :デフォルトの名無しさん:2017/11/11(土) 13:33:59.14 ID:proXGFSN.net
- phpと同じ感覚でgoでdatabase使おうとすると死ぬよね。
結局go側とsql側のスキーマ二重管理になるから、そのままphpと同じノリで使えない。動的言語と静的言語の差だね。
じゃあどうするかというとsql側のスキーマからgoの構造体をコード生成する。
xo とか使う。
http://tdoc.info/blog/2016/07/06/xo.html
- 980 :デフォルトの名無しさん:2017/11/11(土) 13:51:58.52 ID:LLMRc4SD.net
- >>979
自動コード生成ツールか。まあPHPとGoを同時使用するのならありでしょうな。
ただまあ、俺の場合はそうではなく、Go内で二重管理するのが気に入らない。
俺が試しているのは掲示板なんだが、PHPの場合は結局、
echo json_encode(fetch_all($db,"SELECT * FROM threads;")); // fetch_allは全読み関数
だからリード側はDBの型依存が全くない。(何が入っていても中身を全部吐き出すだけ)
結果、新規機能追加の場合はライト側の変更だけでよく、変更は1箇所で済む。
Goだとリード側も変更が必要になるのが気に入らない。
だから構造体に押し込んで、リードもライトもその構造体ベースでやれれば変更は1箇所で済む、
ということを考えているのだが、これはSQLの構造上厳しそうだ。
今sqlx読んでいるが多分無理だね。
- 981 :デフォルトの名無しさん:2017/11/11(土) 14:03:02.50 ID:rrUNs59d.net
- まぁでも、それだったら無理して go を使わなくてもいいんじゃ
- 982 :デフォルトの名無しさん:2017/11/11(土) 14:14:23.09 ID:proXGFSN.net
- >>981
だよね。静的言語を使う限りどうしようもない。
スキーマ設定をどこに置くかという問題だと思うが。
goの構造体からsqlのスキーマを作る
or
sqlのスキーマからgoの構造体を作る
の二択しかない。リフレクションを駆使して動的にスキーマ解決したいって
結局実行時エラーの可能性が出るだけだし。
- 983 :デフォルトの名無しさん:2017/11/11(土) 14:27:57.90 ID:LLMRc4SD.net
- >>981
今回は味見なんだよ。
だから糞でもとりあえずコードを書いてどれくらい速いか試すよ。
とはいえ、RawBytesとか用意して最下層のコピーもケチるくらいだから、完全にノリがCだね。
これで遅いわけがないが、結局は管理コストとの兼ね合いだろうね。
俺はC出身だから付いていけるけど、今時ではないよなこれは。
俺はPHPでも十分速いと思っている。
というか、SQLiteのラッパとしてしか使う気がないから、せいぜい100行程度しか実行しないし、
言語間の差異はほぼ無く、DBの性能が見えるだけだと思っている。
でもまあ、さんざん「PHPは糞だ」という奴が居るから味見中な訳だ。
選択肢が増えること自体は悪いことではないし。
Node.jsは既に味見終了して、データセットが小さい時はPHPよりは速い結果が出た。
しかし大きい時はPHPよりも遅くなった。これはclusterしてないのでシングルスレッドの限界かと思っている。
ただ、Nodeの場合は単一プロセスだからメモリ側にキャッシュ出来、これだと当然ぶっちぎりで速いので、
現実的にはこれかな、といった感じ。
で、Goはどうなの?ってのが今。興味あるのなら以下にどうぞ。
https://meguca.org/g/2724701
Haskellerが現れたので引っ張り込む方向で考えてる。
君らがGoのを書いてくれるのならこちらも助かるし歓迎する。
- 984 :あ:2017/11/11(土) 14:53:58.14 ID:X8lWnCzG.net
- Cでこれ書いたら絶望的にめんどくさくない?
そもそもSQLサーバができることはSQLサーバに任せてストアドにするか、
データベース自体Goで書くか、なんかそうしないと、
インピーダンス差がでかすぎるのに2重管理しない、は無理じゃない?
2重管理が絶対的な悪ではないと思うけど。
- 985 :デフォルトの名無しさん:2017/11/11(土) 15:20:24.76 ID:LLMRc4SD.net
- >>984
誰もCで書くとは言ってないが、仮にCで書くとして、
ライブラリが揃っていれば、大して苦労しないと思うよ。
Goとは大差ないだろう。
ほぼローカルで動作してしまうのでGCがないと苦労するってこともないし、
型システムも100行程度のプログラムならウザイくらいで大してメリットないし。
動的言語の場合は既に言われているようにスキーマ管理が一元化出来る
(正確にはやらなくてもそのまま動くだけだが)
分だけ書く量は少なくて済む。
プロトタイピングには動的言語の方が向いてる。
なお今回の場合はGoがCに劣ることもないので、わざわざCで書き直すメリットはない。
(GCをほぼ使わないから速度低下もないし)
- 986 :デフォルトの名無しさん:2017/11/11(土) 15:36:08.28 ID:proXGFSN.net
- >>985
>動的言語の場合は既に言われているようにスキーマ管理が一元化出来る
>(正確にはやらなくてもそのまま動くだけだが)
> 分だけ書く量は少なくて済む。
> プロトタイピングには動的言語の方が向いてる。
同意する。Goでデータベース操作の決定版がでないのが物語ってる。
逆にGAE/goのdatastoreを使うときはGoとの相性の良さを感じる。
スキーマがGo側に設定することが決まっているから。
- 987 :あ:2017/11/11(土) 15:56:16.25 ID:X8lWnCzG.net
- >>985
まー、確かに。
正直すぐ死ぬプログラムならメモリ管理もしない()という選択肢もあるわけだしな。
外の世界と相性の悪い言語だと言うことは確か。
形が適当なjsonとかとも同様にいちいちキャストがしちめんどくさいし。
c#で言うdynamicみたいな型がありゃ良いなとは思うが、コンパイル時に解決してる事を善とするので無いのは仕方ない。向いてないわ。
- 988 :デフォルトの名無しさん:2017/11/11(土) 16:18:54.52 ID:LLMRc4SD.net
- というか、これはAPIが足りてないんだね。
(以下コードは文法があやふやなので参考程度で)
database/sqlはScanを使うのが定番のようだが、Scanではargsの可変長指定しかないのがいけない。
だから構造体の中身を確認するのにリフレクションが必要になってしまう。
type Thread struct {
no int
time int
body string
}
th := Thread{}
rows, err := db.Query("SELECT * from threads;")
err = rows.Scan(&th.no, &th.time, &th.body) // ここでばらすから中身を知らないといけない
とりあえずScanが構造体を受け、その構造体にScannerインタフェースを実装する方式なら、
リフレクションは回避出来るし、おそらく最高速度で動く。
ただ、このためのAPIがない。
err = rows.Scan(&th) // ばらさずに構造体を与える
func (th Thread) Scan(src interface{}) err // 各構造体でばらす。手間は増えるが最速のはず
DBを生で叩いたことがないから知らないが、DBからの出力が既に配列なのか?
或いは同様のことはポインタ配列で受ければいいので割り切ったか。(972参照)
>>986
GAE/Goはググってみたがよく分からん。
ただ今回はCREATE TABLE部分も自前で持つ為、スキーマ管理はGo側でも「本来は」出来る。
SQLの構造上、CREATE TABLE と INSERT はほぼ同じなのでPHP等ではSQL文字列を共有出来る。
だから1箇所にしか書かずに済んでた。ところがGoはリード側も必要だからぐぬぬ、ってなってる。
- 989 :デフォルトの名無しさん:2017/11/11(土) 16:29:51.83 ID:LLMRc4SD.net
- >>987
お前他スレも荒らしてた荒らしだろ。
この程度のプログラムで「メモリ管理(キリッ」とか言っちゃう時点でお前はCを知らないし、
お前みたいな馬鹿にはCは無理だ。
それで何故Cに話を振る?だれもCで実装しようともしてないのに。
普通にCが出来る奴なら鯖でDB読んでJSON返すだけのプログラムでリークはしないし、
リークしないように管理する(程のこともないが)に苦労することもない。
そもそもそれはGoで書いた時にGCがどこで動くか見えていれば分かるはず。
君はそこにも達していない。
- 990 :デフォルトの名無しさん:2017/11/11(土) 17:10:37.92 ID:ZUnF3Lay.net
- うめようず
- 991 :デフォルトの名無しさん:2017/11/11(土) 17:56:09.07 ID:LLMRc4SD.net
- というか void* がないのね。
これではどうやっても fetch_all で隠蔽出来そうにない。
まあ void* なんて認めたら型システムは崩壊するから致し方無しか。
そしていきなりunsafeに手を出そうかと考えているわけだが、
これって Offsetofがあるって事は基本的にはマーシャル用なのかな?
- 992 :あ:2017/11/11(土) 18:53:30.76 ID:X8lWnCzG.net
- >>989
荒らしじゃないよ。
真面目に話してるが、仮定に対して仮定したら切れるって意味わからん。
- 993 :あ:2017/11/11(土) 18:58:21.35 ID:X8lWnCzG.net
- >>989
まさか、
>>983の、ノリがC、C出身だからついてける、に対して
「ならCで書けば?でもめんどくさいと思うけど。」って嫌味だって気づいてないんだろうか?
可哀想な人ってどこにでも居るんだな。
Gcが動くタイミングに関しては、多分もう少しマシなレベルで知ってると思うけど。
そもそも、CでDBから取得してどうの、と言う話で、何を使うかどう取得するかすら決まってないのに、リークしないようにメモリ管理するなんて絵空事は言えんだろ。
全部インハウスライブラリならわかるけどさ。
メモリ管理しない、は思いつきでも言えるわ(笑)
- 994 :あ:2017/11/11(土) 18:59:31.42 ID:X8lWnCzG.net
- 嫌味が荒らしになるとは、ネットは京都より平和な場所になったんだなぁ。
- 995 :あ:2017/11/11(土) 19:03:39.05 ID:X8lWnCzG.net
- よく読んだら>>981で同じ事言われてるのにドヤ顔で返事してるし、本気でそうなんだろうな。
void* をどう使いたいかによるだろうが、それこそ*interface{}じゃねえの?と思ってしまう。
- 996 :デフォルトの名無しさん:2017/11/11(土) 19:16:58.98 ID:TpLoCFAx.net
- 次スレよろ
- 997 :あ:2017/11/11(土) 19:23:54.10 ID:X8lWnCzG.net
- まあ、要らないカラムが多すぎるだけなら、
row,err:=sql.Queryで、
column,err:=row.Columns()
vals:=Make([]sql.RawBytes,len(column))
args:=Make([]interface,len(column))
for i:= range values {
args[i]=&vals[i]
}
でvalsとargsつくって、
Scanに(args...)で渡せば、
使うときにvals[i]をstring(vals[i])とかよしなにしちゃえるんじゃないの?
- 998 :デフォルトの名無しさん:2017/11/11(土) 19:26:08.40 ID:LLMRc4SD.net
- >>993
日本語でおk
君と話が噛み合わないのは、君が勝手に読み違えているから。
それは君の日本語能力が不十分だから。
だから君は荒らしなんだよ。
俺は他スレで君が同様に空回りしてるのを見たことがある、というだけ。
君には荒らすつもりはないのだろう、それは事実としても、
日本語能力が足りない奴がレスすること自体が荒らし行為なんだよ。
馬鹿なら馬鹿なりに何度でも読み返せばいいだけなんだがな。
韓国人ならマジで死んでくれ。
>>996
おk。>>46見る限り次スレはpart6(このスレがpart5相当)でいいか?
8時まで待って異議なしなら俺が建ててみる。
異議ありならその人が建てて。
- 999 :あ:2017/11/11(土) 19:26:19.52 ID:X8lWnCzG.net
- Go language part 2
http://mevius.5ch.net/test/read.cgi/tech/1510395926/
あんまり立てないから間違ってたらごめん。
- 1000 :あ:2017/11/11(土) 19:26:34.95 ID:X8lWnCzG.net
- >>998
ごめん、勢いで建てた。
- 1001 :あ:2017/11/11(土) 19:27:10.90 ID:X8lWnCzG.net
- >>998
バカはバカなりに何度も読み返してくれれば、嫌味にも気がついだだろうに。悲しいなぁ。
- 1002 :あ:2017/11/11(土) 19:34:53.44 ID:X8lWnCzG.net
- まあ、可変長受ける関数に実体を指すinterfaceの参照のスライスを...で渡せるのはと割と便利。
- 1003 :2ch.net投稿限界:Over 1000 Thread
- 2ch.netからのレス数が1000に到達しました。
総レス数 1003
234 KB
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★