Go language part 2
レス数が1000を超えています。これ以上書き込みはできません。
どんなんだっけかな?全く困らんから別に要らんけど
Javaカスみたいなのはやめてほしいな〜 tryリジェクト以来、議論がトーンダウンしちゃったのかな
結局、if err != nil でいいじゃん的な プログラミング初心者です。
N回同じ文字列を出力するにはどうすればいいのでしょうか? fmt.Println(strings.Repeat("Hello", N)) go modules で GOPATH 以外にプロジェクト置いてるんだけど、godoc -http=6060とドキュメントを確認しようとしても出てこない
と探すとissues#26827がクローズしてないからまだmodulesには対応してないのか
メンドクセ issues読んでみたら1.13試してみてという話があったけど、
1.13入れてみたらgodocのインストールがうまくいかねー code.google.com/p/go.tools/cmd/godoc から入らなかったんで、
golang.com/x/tools/cmd/godoc から入れたけど、やっぱりmodulesなソースはパッケージの一覧に出ない
いちいちgithubにプッシュしてgodoc.orgで見てる… modulesは見限って$GOPATH/srcで開発するしかないのか? うちとこJava/C#が主力な会社
面白そうだから布教してみようと思ったんだけど、結局C言語からの直系なだけで、Java以降とは似て非なるものだから布教は無理なんだと、よくわかった
あいつら新人類は実体とポインタにまみれたC言語の素養がないから、うっかりと参照を代入する気楽さで構造体の実体をコピーして操作する感じのミス連発
C言語の経験なしにも関わらず、苦労せずにGo言語に慣れたって人いる?
そして、今さらポインタと実体を残したgoogleの意図も良くわからない。参照でよくね? ただの慣れじゃねC#の構造体も値型だし
値型の方が有利な場合がある
例えば構造体のでかい配列を作る場合は値型の方が一気にメモリ確保するから速いはず >>978
回り見てるとスクリプト言語出身の人はGo移行についてこれてない
Cでそれなりの規模のアプリ書いたことがある人がジワジワと良さを認識してる(すぐに良さがわからないのは共通してる)
C++出身の人はRustを気に入ってるが ポインタと実体という概念がどうもしっくりと来ないみたい
Java以降だとプリミティブ以外は全部インスタンスの参照で統一されていてシンプルになってるから
そこいらのハードルが新規参入の障壁になってる可能性は高いんじゃないかなとか感じてる
しかし惜しいと思うのは、実体とポインタが混在しえるコンセプト
Cからの派生だからといって実体としてのインスタンス化って、本当に必要だったのかな?
&とか*なんて廃止して、全てはポインタの言い換えである参照を扱うというJavaとかのアイデアは多重間接参照(ポインタへのポインタ)が扱いづらくなる一方で概念的な単純さをもたらしてくれる
ぶっちゃけポインタへのポインタなんて、普通はそんなに使うこと無いから
参照を採用していたら、レシーバーはポインタで記述とか、実体でのセレクタでポインタレシーバーも呼び出せるとかイミフな仕様もスッキリとしたんじゃないかと
多分、ポインタを残したことには深慮遠望があるんだろうけど、使っていてイライラしてくる 具体的には構造体のスライスを使うために構造体ポインタのスライスを書くのがイライラ
でもポインタにしないとrangeでコピーされちゃうから
これって実はエレガントな書き方があったりする? まあ確かにその辺は混乱する
ローカル変数の実体のポインタをリターンするとか
C脳ならありえない Goは全然気持ち良いけどDartの酷さがやばい
あれはスクリプト言語出の人らだと大丈夫なんか? >>979
構造体のデカイ配列ったって、マーシャリングして外部DLLに渡すとか極特殊な用途でしか使わなくない? Goは確かに気持ち良いね、テストからカバレッジ、マップにスライス、ゴルーチンとチャネル
(でも気持ちよさの基準がCなのは否めない)
interfaceとか目から鱗だった。元ネタはなんだろ? 前は動いてたのに
run も build も
package main: no Go files in hogehoge とか
can't load package: package main: no Go files in hogehoge とか
出るようになって
ハマった
ソースファイル名を _fugaufa.go みたいに _ で始まってたらあかんの?
時間還せ >>986
>気持ち良い
ガベコレとゴルーチン以外で何があるんです? >>987
https://golang.org/pkg/go/build/#Context.Import
In the directory containing the package, .go, .c, .h, and .s files are
considered part of the package except for:
- .go files in package documentation
- files starting with _ or . (likely editor temporary files)
- files with build constraints not satisfied by the context >>989
言われてみれば、varって昔のBASICのlet並みに要らない子だね 変数名 型
だけでも、構文として破綻しているようには見えないもんな。C言語もそうだし
当然にvar{}も要らんし
あれ、func も不要じゃね?
なにか必要である理由ってあったかな? 構文解析が楽とかだった気が
最初の方のトークンでどの構文(変数定義とか関数定義とか)なのかが分かったほうが
後の方のトークンでやっと分かるより楽 んー、:=で型推測をぶちこんでくるアグレッシブさなのに?1000ならIsNil()追加 このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 705日 2時間 30分 50秒 レス数が1000を超えています。これ以上書き込みはできません。