22/02/06(日)13:17:55 メソッ... のスレッド詳細
削除依頼やバグ報告は メールフォーム にお願いします。個人情報、名誉毀損、侵害等については積極的に削除しますので、 メールフォーム より該当URLをご連絡いただけると助かります。
画像ファイル名:1644121075316.png 22/02/06(日)13:17:55 No.894305267
メソッドだのインスタンスだのがわからない 関数と何が違うんだい
1 22/02/06(日)13:24:33 No.894307084
メッソドは関数でいいんじゃないの インスタンスはインスタンスだ
2 22/02/06(日)13:25:21 No.894307307
おっぱいそん
3 22/02/06(日)13:25:30 No.894307359
それを考え出したらこいつを卒業する時期だ
4 22/02/06(日)13:26:45 No.894307722
クラスとかインスタンスの機能としての関数がメソッドだ
5 22/02/06(日)13:27:25 No.894307896
おぱいそん…
6 22/02/06(日)13:28:31 No.894308194
クラス:プラモの金型 インスタンス:プラモ メソッド:プラモに仕組まれたギミック(関数)
7 22/02/06(日)13:29:10 No.894308395
>クラスとかインスタンスの機能としての関数がメソッドだ オブジェクト?の中の情報あれこれする関数がメソッド?
8 22/02/06(日)13:29:41 No.894308546
>クラス:プラモの金型 >インスタンス:プラモ >メソッド:プラモに仕組まれたギミック(関数) わかったようなわかってないような気がしてきた!
9 22/02/06(日)13:32:16 No.894309295
呼び出し可能オブジェクトの話をぶっこんでややこしくしてやる
10 22/02/06(日)13:32:38 No.894309416
実務で取り扱うときはちゃんとわかってる…ような気がするけど 言葉にしようとすると途端に「あれ…?」ってなる それがインスタンスとオブジェクト指向
11 22/02/06(日)13:32:42 No.894309437
static!
12 22/02/06(日)13:33:03 No.894309547
>static! public!
13 22/02/06(日)13:33:16 No.894309620
クロージャーがあればだいたい同じよ
14 22/02/06(日)13:33:21 No.894309641
>static! main
15 22/02/06(日)13:34:14 No.894309900
お前これstaticで呼び出すのやめろってエディタが怒る
16 22/02/06(日)13:35:07 No.894310149
関数⊃メソッドってこと?
17 22/02/06(日)13:35:22 No.894310226
本来関数ってのは入力された引数に対して一定の返り値を返すだけの機能を言うんだ オブジェクトとしての特性と合わさった結果返すだけとも言い切れなくなったのでメソッドと呼ぶことにした
18 22/02/06(日)13:36:21 No.894310479
あと本の説明読むとふむふむってわかった気になるけど自分で何かできる気がしないよ ()の中に何もないだけでなんか気持ち悪くて鳥肌が立ってくる
19 22/02/06(日)13:36:36 No.894310559
>本来関数ってのは入力された引数に対して一定の返り値を返すだけの機能を言うんだ その前提はC言語の時点で崩壊してない…?
20 22/02/06(日)13:37:28 No.894310801
>オブジェクトとしての特性と合わさった結果返すだけとも言い切れなくなったのでメソッドと呼ぶことにした それ自体がオブジェクトの持ってる情報みたいなものだから?
21 22/02/06(日)13:38:32 No.894311087
>あと本の説明読むとふむふむってわかった気になるけど自分で何かできる気がしないよ >()の中に何もないだけでなんか気持ち悪くて鳥肌が立ってくる 文法だけ学んでる段階ではそうね 実際にファイルいじったりネットのページから情報集めたりみたいなライブラリの機能を知ると「もしかしてこういうこともできるんじゃね?」ってアイデアが浮かんでくるかもしれない
22 22/02/06(日)13:39:31 No.894311348
new Kaminoke()
23 22/02/06(日)13:39:55 No.894311473
Pascalなんかは値を返す関数と呼びだすことの副作用の方が主目的になってる手続きとで区別されてたりする
24 22/02/06(日)13:40:33 No.894311663
PCの状態という値と入力値を入れると あたらしいPCの状態が得られるという意味ではあってる ただ関数の中でいろいろ干渉されるので たいていその考え方は足蹴にされる
25 22/02/06(日)13:40:33 No.894311664
CPythonの実装読めばわかるよ
26 22/02/06(日)13:41:33 No.894311946
数学的な関数のイメージは捨てるんだよ
27 22/02/06(日)13:41:58 No.894312064
>本来関数ってのは入力された引数に対して一定の返り値を返すだけの機能を言うんだ >オブジェクトとしての特性と合わさった結果返すだけとも言い切れなくなったのでメソッドと呼ぶことにした 純粋関数だったけ モナドかなんかの説明で見た
28 22/02/06(日)13:43:28 No.894312492
セッターとかは関数じゃないってことでしょ
29 22/02/06(日)13:44:12 No.894312706
頼むから日本語で話してくれ
30 22/02/06(日)13:44:37 No.894312830
なんで文字入力しただけで動くの?
31 22/02/06(日)13:44:58 No.894312926
小人ががんばってるから
32 22/02/06(日)13:45:41 No.894313141
>new Kaminoke() NullPointerException
33 22/02/06(日)13:46:32 No.894313372
グローバル変数いいよね…
34 22/02/06(日)13:46:41 No.894313423
触ってると型指定できないの怖いな〜ってなる
35 22/02/06(日)13:46:46 No.894313444
昔は関数とサブルーチンで別れてたんだけどね 関数が何でも屋になって廃れた
36 22/02/06(日)13:46:59 No.894313504
>なんで文字入力しただけで動くの? 頭のいい人が作ったプログラムで自動的にPCがわかる命令にして 頭のいい人が作ったプログラムで自動的にそれをさらにCPUの実際の計算手順にしてるから?
37 22/02/06(日)13:47:16 No.894313586
ホモ野郎には感謝しかない
38 22/02/06(日)13:48:03 No.894313791
インタプリタでも型は書かせた方が絶対いいと思うんだけど インタプリタってだいたい動的型だよね なんで?
39 22/02/06(日)13:48:19 No.894313877
simulaとSmallTalkの本を読むと分かるけど単にこいつらがオブジェクトが受信するメッセージの処理方法(method)と記述してたことが由来なだけ
40 22/02/06(日)13:48:23 No.894313895
設計図がクラス 設計図の中に定義された機能が関数 設計図(クラス)から作られたものがインスタンス ジムの設計図からジムを実際に作成する 製造番号0001のジムと製造番号0002のジムは違うジム(=違うインスタンス) それぞれのジムに共通してビームガンを打つという関数が存在が存在する 0001のジムが打つのか0002のジムが打つのかはどっちのインスタンスの関数を呼ぶのかで決まる
41 22/02/06(日)13:48:36 No.894313948
>触ってると型指定できないの怖いな~ってなる 型ヒントあるから……適切にアノテーション付けられてない関数使う箇所で怒られる……
42 22/02/06(日)13:49:17 No.894314131
>純粋関数だったけ >モナドかなんかの説明で見た 関数型言語は関数の透過性をなるべく上げる思想だな ある関数の結果が内部の状態なんかで変化する副作用を排除することによって保守性を上げる
43 22/02/06(日)13:49:59 No.894314349
>インタプリタでも型は書かせた方が絶対いいと思うんだけど >インタプリタってだいたい動的型だよね >なんで? そりゃ逐次実行と静的型が相性悪いからよ
44 22/02/06(日)13:50:07 No.894314381
タイヤクラスを作ってそれで走る車オブジェクトに継承させるんだぞ
45 22/02/06(日)13:50:07 No.894314382
オブジェクト指向がよく分からんのだけどなんか分かりやすく説明してる書籍とかudemyとかない?
46 22/02/06(日)13:50:20 No.894314427
ジオン兵には分からない…
47 22/02/06(日)13:50:22 No.894314441
>インタプリタでも型は書かせた方が絶対いいと思うんだけど 電卓にしたい人もいるし 一行ですませたい人もいるから…
48 22/02/06(日)13:51:00 No.894314641
クラスなんて要らないGoを勉強しようぜ
49 22/02/06(日)13:51:06 No.894314664
そろそろCとか触ったほうがいいのかな〜〜ってなって ちょろっとやってもコンパイルできなくて泣く
50 22/02/06(日)13:51:25 No.894314763
>タイヤクラスを作ってそれで走る車オブジェクトに継承させるんだぞ ???
51 22/02/06(日)13:51:26 No.894314769
Cなんて捨てろ
52 22/02/06(日)13:51:40 No.894314843
rubyとかでインスタンスじゃなくてクラスから呼び出すメソッドとかあってどうやって使い分けるかわからんなった ファクトリ関数として使う場合はわかりやすくてよかったけど
53 22/02/06(日)13:52:04 No.894314933
>インタプリタでも型は書かせた方が絶対いいと思うんだけど >インタプリタってだいたい動的型だよね >なんで? いちいちソースコード全部参照してコンパイルなんかやりたくねーぜ!という需要のためのインタプリタだからでは 型チェックをさせるなら事前にすべての型が分からないといけないしそれだとどうしても静的型付けになる
54 22/02/06(日)13:52:05 No.894314938
継承は悪い文化
55 22/02/06(日)13:52:57 No.894315164
継承とか便利なのは分かるけどコード読んでて訳わかんなくならない?
56 22/02/06(日)13:53:03 No.894315190
例えばPythonのprint関数でオブジェクトごとにプリントされる結果変わるけどこれってなんでメソッドじゃなくてprint関数でできんの?
57 22/02/06(日)13:53:40 No.894315361
継承は人類には早すぎる
58 22/02/06(日)13:53:49 No.894315399
printが関数だからだろ
59 22/02/06(日)13:53:52 No.894315411
Rustみたいな新しい言語にはもう継承が仕様から消されてるからな
60 22/02/06(日)13:54:12 No.894315492
>タイヤクラスを作ってそれで走る車オブジェクトに継承させるんだぞ こういうクソ設計するから継承は一律禁止です!になるんだよ!!!111
61 22/02/06(日)13:54:14 No.894315501
>継承とか便利なのは分かるけどコード読んでて訳わかんなくならない? 訳わかんない書き方する方がわるいと思う
62 22/02/06(日)13:54:24 No.894315562
どこまで分離させればいいのかわからん
63 22/02/06(日)13:54:37 No.894315621
>なんで? こいつとかPerlとかPHPは型ある言語は大体型があるとちょっとした作業すら気軽に書けねーだろ!って作者がキレたから LispとかMLみたいな言語は数学的な考え方を実現するのにインタプリタのほうが都合が良かった JavaScriptとかJavaはハードウェア関係なく独立して動作してほしかったから
64 22/02/06(日)13:54:43 No.894315643
>例えばPythonのprint関数でオブジェクトごとにプリントされる結果変わるけどこれってなんでメソッドじゃなくてprint関数でできんの? 受け取ったオブジェクトのメソッドをこっそり呼び出してる(__repr__とか__str__とか)
65 22/02/06(日)13:54:57 No.894315708
>継承とか便利なのは分かるけどコード読んでて訳わかんなくならない? インタフェースの実装の場合は型見るだけでどういう使われ方するかがわかるから超絶に読みやすい
66 22/02/06(日)13:55:06 No.894315746
Rustを触り始めてからPythonのクラスの使い方わかった気がする struct書いた後にそれに続くimplブロックが来る構成のわかりやすさよ
67 22/02/06(日)13:55:31 No.894315868
僕はインターフェースがよくわかりません
68 22/02/06(日)13:55:36 No.894315891
継承は人間が使えるものじゃねえや
69 22/02/06(日)13:55:37 No.894315893
imgの中にスレってクラスが定義されてて スレ1だのスレ2だののインスタンスがあって delって言うメソッドだか関数だかをどのスレに使おうかみたいなってこと? 理解間違ってたらごめん
70 22/02/06(日)13:55:41 No.894315912
>受け取ったオブジェクトのメソッドをこっそり呼び出してる(__repr__とか__str__とか) ズルじゃん
71 22/02/06(日)13:55:46 No.894315936
>例えばPythonのprint関数でオブジェクトごとにプリントされる結果変わるけどこれってなんでメソッドじゃなくてprint関数でできんの? 「printで呼び出された時にお出しする値」というのが予め実装されてるから
72 22/02/06(日)13:55:57 No.894315989
継承分からないやつはプログラミングやめたほうが身のためだが テンプレートとマクロとリフレクションと実行時コード書き換えの魔法組み合わせるヤツもプログラミングやめてほしい
73 22/02/06(日)13:56:18 No.894316084
>例えばPythonのprint関数でオブジェクトごとにプリントされる結果変わるけどこれってなんでメソッドじゃなくてprint関数でできんの? print(x)の中身が x.print() でオブジェクトは全部printメソッド実装(もしくは継承)してるから
74 22/02/06(日)13:56:19 No.894316085
Animalクラスを継承したCatにShoutさせるとニャーなんだよ
75 22/02/06(日)13:56:21 No.894316094
やはり動的ディスパッチは悪…
76 22/02/06(日)13:56:21 No.894316095
>>受け取ったオブジェクトのメソッドをこっそり呼び出してる(__repr__とか__str__とか) >ズルじゃん Pythonicと言え!
77 22/02/06(日)13:56:23 No.894316107
>継承分からないやつはプログラミングやめたほうが身のためだが >テンプレートとマクロとリフレクションと実行時コード書き換えの魔法組み合わせるヤツもプログラミングやめてほしい ごめん日本語で話して
78 22/02/06(日)13:56:27 No.894316125
クラスごとに標準出力に文字列を出力するメソッドなんて実装したくないよ
79 22/02/06(日)13:56:36 No.894316166
リフレクションの概念がまったく理解できねえ
80 22/02/06(日)13:56:52 No.894316232
>>受け取ったオブジェクトのメソッドをこっそり呼び出してる(__repr__とか__str__とか) >ズルじゃん ズルして楽していただきするのが良いプログラムなので…
81 22/02/06(日)13:57:32 No.894316419
>imgの中にスレってクラスが定義されてて >スレ1だのスレ2だののインスタンスがあって >delって言うメソッドだか関数だかをどのスレに使おうかみたいなってこと? >理解間違ってたらごめん ほぼ合ってる
82 22/02/06(日)13:57:41 No.894316467
>テンプレートとマクロとリフレクションと実行時コード書き換えの魔法組み合わせるヤツもプログラミングやめてほしい だいたいC++とC#とHaskellで全部やってる
83 22/02/06(日)13:57:56 No.894316551
>クラスごとに標準出力に文字列を出力するメソッドなんて実装したくないよ Javaで言うtoStringやhashCode相当は人間が面倒見てあげたほうが結果的に良い局面の方が多いと思う
84 22/02/06(日)13:58:14 No.894316625
継承はいかにもオブジェクト指向っぽいけどすぐにやっぱいらないわこれ...ってなるな
85 22/02/06(日)13:58:53 No.894316816
pythonもdataclassを使えばいい感じの__str__メソッドを実装してくれるよ
86 22/02/06(日)13:59:02 No.894316867
>継承分からないやつはプログラミングやめたほうが身のためだが 組み込みのC言語や勘定系のCOBOLやってるやつはプログラミングやめたほうがいい…?
87 22/02/06(日)13:59:37 No.894317028
@定義するようになってなんかテクニカルなことやってるようになるのがおっぱいそん
88 22/02/06(日)14:00:00 No.894317149
Mod作る場合は既存クラスの書き換えとかよくやるんだけど その場合はリフレクションが無いと開発側が用意したフック使うしかないからできることの幅が狭くなる
89 22/02/06(日)14:00:12 No.894317203
ダイヤモンド継承いいよね
90 22/02/06(日)14:00:27 No.894317277
>imgの中にスレってクラスが定義されてて >スレ1だのスレ2だののインスタンスがあって >delって言うメソッドだか関数だかをどのスレに使おうかみたいなってこと? >理解間違ってたらごめん 実装によるけどほぼほぼあってる スレッドというクラスにはdelや返信するなどの共通機能があるよね、それがメソッド=関数
91 22/02/06(日)14:00:33 No.894317316
@デコレータは便利だけど便利すぎて頭が混乱する…!
92 22/02/06(日)14:00:34 No.894317318
ステートレス!ステートレス!
93 22/02/06(日)14:01:13 No.894317510
>組み込みのC言語や勘定系のCOBOLやってるやつはプログラミングやめたほうがいい…? ACOS-(好きな製品を入れてね)のCOBOLでもクラスあったろが!
94 22/02/06(日)14:01:33 No.894317606
pythonのこれだけはどうしても受け付けない ''.join([])
95 22/02/06(日)14:01:39 No.894317637
インスタンスの概念をちゃんと理解するのに3年は掛かった それまではコピペで雰囲気で使ってただけ
96 22/02/06(日)14:02:09 No.894317795
コールスタックの中身見たいとか このインスタンスを作ったの誰だよとか デバッガの仕事を取り込むようになると沼のはじまりな気はする
97 22/02/06(日)14:02:26 No.894317873
>ACOS-(好きな製品を入れてね)のCOBOLでもクラスあったろが! 日本電気株式会社のおじさん!
98 22/02/06(日)14:02:26 No.894317875
classでなくprototypeを使って書いてた昔のjsは糞だ
99 22/02/06(日)14:02:28 No.894317888
>継承はいかにもオブジェクト指向っぽいけどすぐにやっぱいらないわこれ...ってなるな 今はDIするのが流行りだし大丈夫
100 22/02/06(日)14:02:44 No.894317965
クラスをwith文で使えるようにしたいんだけど
101 22/02/06(日)14:02:45 No.894317969
>僕はインターフェースがよくわかりません クラスにあるべきメソッドの規定というのかな… 規定に従ったクラス(インタフェースを実装)のインスタンスであれば俺のメソッドの引数に指定していいよ!とできる
102 22/02/06(日)14:03:07 No.894318069
>Mod作る場合は既存クラスの書き換えとかよくやるんだけど >その場合はリフレクションが無いと開発側が用意したフック使うしかないからできることの幅が狭くなる 呼び出す名前知ってたら直接書いてもリフレクションで名前知っても同じじゃないの?てずっと思ってて理解できない
103 22/02/06(日)14:03:28 No.894318183
>pythonのこれだけはどうしても受け付けない 安心しろその感覚は正常だ
104 22/02/06(日)14:03:37 No.894318233
>僕はインターフェースが機能としてはわかるけど活用の仕方がわかりません
105 22/02/06(日)14:03:41 No.894318248
世の中の製品って本当にちゃんと構造化されてて 命名規則キチっとして、疎結合で変更に強いなんて プログラム構造してるの?本当に?
106 22/02/06(日)14:03:46 No.894318274
オーバーロードできないVBAはクソだ
107 22/02/06(日)14:03:57 No.894318331
C#だと拡張クラスやジェネリックLINQ辺りの内部実装で多分使われてるだろうし重要ではあるリフレクション ただ普通のことを普通にやる分には使わないし使うんじゃねえというのもその通り…
108 22/02/06(日)14:04:01 No.894318346
pythonやめてほしい 2.xはやっと殆ど消えてきたが いまだに3.6あたり使われるのも気が狂いそうになる いまだに~envで切り替える文化が生きてるのもやめてほしい
109 22/02/06(日)14:04:11 No.894318403
>世の中の製品って本当にちゃんと構造化されてて >命名規則キチっとして、疎結合で変更に強いなんて >プログラム構造してるの?本当に? してない
110 22/02/06(日)14:04:54 No.894318634
俺以外に2.x系を滅ぼす仕事まだやってるやついる!?
111 22/02/06(日)14:05:00 No.894318663
>僕はインターフェースが機能としてはわかるけど活用の仕方がわかりません 8割これだと思う
112 22/02/06(日)14:05:03 No.894318677
>呼び出す名前知ってたら直接書いてもリフレクションで名前知っても同じじゃないの?てずっと思ってて理解できない pythonにはないけどpython以外の世界だとprivateだから名前知っててもリフレクション使わないと呼び出せないとか結構ある
113 22/02/06(日)14:05:07 No.894318709
>呼び出す名前知ってたら直接書いてもリフレクションで名前知っても同じじゃないの?てずっと思ってて理解できない コンパイルされると名前変わっちゃうからな… 実行時にコンパイル前の名前を使って参照できることそのものがリフレクションの恩恵なのだ
114 22/02/06(日)14:05:24 No.894318802
めちゃくちゃかっこいいUIの向こうではうんこみたいなコードが動いてるんだ
115 22/02/06(日)14:05:27 No.894318826
rubyの方がなんてかenvを使うの前提じゃん
116 22/02/06(日)14:05:33 No.894318860
>クラスにあるべきメソッドの規定というのかな… >規定に従ったクラス(インタフェースを実装)のインスタンスであれば俺のメソッドの引数に指定していいよ!とできる インターフェースが先にクラスに実装できるメソッドの 名称や引数とか返り値を指定してそれ以外を禁止するの? 何がうれしいんだ? 変な関数を作られないこと?
117 22/02/06(日)14:06:00 No.894318963
public boolean sendDel(int resnum) { //なにもしない return true; }
118 22/02/06(日)14:06:01 No.894318972
車ファクトリーを作って車インスタンス作るのおままごとみたいでたのしい!
119 22/02/06(日)14:06:21 No.894319079
>変な関数を作られないこと? その通り 一人でプログラム組んで終わりなら別にいらないよ
120 22/02/06(日)14:06:32 No.894319150
>呼び出す名前知ってたら直接書いてもリフレクションで名前知っても同じじゃないの?てずっと思ってて理解できない コンパイル時に知らないシンボルを誰かが決定してコールしたいときに使うもんだから その場合はファクトリなりなんなり他の方法でいい 知らないものを叩いてStruts2やlog4jみたいになるかもしれないがまあそれはそのとき考えればいいだろ
121 22/02/06(日)14:06:38 No.894319184
言語限らずenvは使わずdockerで環境丸ごと用意するのがトレンドじゃないの
122 22/02/06(日)14:06:59 No.894319278
インターフェースだとテストの時にモックと置き換えられるからやりやすくなるよ
123 22/02/06(日)14:07:04 No.894319297
メソッドチェインでデコレータ呼び出すの10年ぐらい前に流行ったよね… もう絶滅しちゃった?
124 22/02/06(日)14:07:06 No.894319313
>いまだに3.6あたり使われる それはたぶんRHEL/CentOS 7かUbuntu18.04が悪い
125 22/02/06(日)14:07:27 No.894319417
プログラミングの世界で自由とは忌避されるものなのだ
126 22/02/06(日)14:07:28 No.894319423
>rustやphpやnodeの方がなんてかenvを使うの前提じゃん つまりanyenvなんだよ!
127 22/02/06(日)14:07:49 No.894319530
なんの話してるのかどんどん分からなくなって行く… プログラマ「」多いのか 勉強する自信無くなってきた
128 22/02/06(日)14:07:51 No.894319542
>何がうれしいんだ? 同じ掲示板の派生なのにimgに書き込み欄があるのにmayにはないとか齟齬を起こさないように?
129 22/02/06(日)14:08:09 No.894319641
>それはたぶんRHEL/CentOS 7かUbuntu18.04が悪い OS標準のバージョンなんて使わないだろ!?
130 22/02/06(日)14:08:18 No.894319688
catch(exception e){ //なにもなし }
131 22/02/06(日)14:08:23 No.894319721
現代のプロジェクトで変数名や関数名で独自の略称使いまくってたり その略称が統一されていなかったりするのってどういう理由あるの? 上司に聞いたら名前を長文にしたら間違えやすくなるからとか言ってたけど IDEとかある現代だとそんなリスクより一眼見て何を意味する関数や変数なのか分からない方が怖くない?
132 22/02/06(日)14:08:26 No.894319732
2系は2系で別系統で生きてくんだと思ってたけど滅ぼすべしみたいな扱いなのか
133 <a href="mailto:Perl">22/02/06(日)14:08:29</a> [Perl] No.894319752
>プログラミングの世界で自由とは忌避されるものなのだ みんな!書き方はできるだけ自由な方がいいよね!
134 22/02/06(日)14:08:29 No.894319753
握りつぶすな
135 22/02/06(日)14:08:41 No.894319835
venv使ってるけど何がよくないのかわからない
136 22/02/06(日)14:08:45 No.894319868
>catch(exception e){ > //なにもなし >} 死刑
137 22/02/06(日)14:08:50 No.894319901
最近は型宣言や継承無しや変数の寿命カッチリした厳格な言語流行ってきてるよね
138 22/02/06(日)14:08:50 No.894319904
>勉強する自信無くなってきた みんな自分の専門以外はよくわからねえから安心しろ
139 22/02/06(日)14:08:52 No.894319916
>その略称が統一されていなかったりするのってどういう理由あるの? そのプロジェクトに聞け
140 22/02/06(日)14:09:00 No.894319955
>rubyの方がなんてかenvを使うの前提じゃん Goもnodeも…
141 22/02/06(日)14:09:00 No.894319956
これバージョンあげた環境で動くかな…とpackageの中身を徐々に更新していく作業は nodejsなどでも日常茶飯事なので安心してほしい
142 22/02/06(日)14:09:00 No.894319958
>現代のプロジェクトで変数名や関数名で独自の略称使いまくってたり 現代というか御社が
143 22/02/06(日)14:09:02 No.894319970
Javaはprivateでもリフレクションで突破できるからいいよね!
144 22/02/06(日)14:09:09 No.894320005
>インターフェースが先にクラスに実装できるメソッドの >名称や引数とか返り値を指定してそれ以外を禁止するの? >何がうれしいんだ? >変な関数を作られないこと? 呼び出し元と呼び出し先の実装をガッツリ分離できる クラス全体の情報を持ってると「このメソッドだけ読んでね」が後々なぁなぁになって他の処理や変数を参照したりしがちになる そんで色々仕様変更が起こって呼ばれるのを想定してなかったメソッドが元でバグが出たりしちゃう
145 22/02/06(日)14:09:09 No.894320008
>>それはたぶんRHEL/CentOS 7かUbuntu18.04が悪い >OS標準のバージョンなんて使わないだろ!? …
146 22/02/06(日)14:09:11 No.894320015
異議なきときはダブルピースをもって答えよ
147 22/02/06(日)14:09:35 No.894320124
Goは言語自体の開発者が捻くれてて変数名を短くする文化があるよ
148 22/02/06(日)14:09:39 No.894320142
>現代のプロジェクトで変数名や関数名で独自の略称使いまくってたり >その略称が統一されていなかったりするのってどういう理由あるの? 誰が責任者席に座ったか 以上
149 22/02/06(日)14:09:39 No.894320145
>現代のプロジェクトで変数名や関数名で独自の略称使いまくってたり >その略称が統一されていなかったりするのってどういう理由あるの? 慣習 周知されていない めんどくさい レビューが適当またはしていない IDEを使いこなせていない
150 22/02/06(日)14:10:00 No.894320246
>OS標準のバージョンなんて使わないだろ!? 自前でtar玉から拵えばなんでもできはするが OSのサポートが受けられない範疇のことをすると ハードのサポートも受けられなくなるのが世の常なんだ
151 22/02/06(日)14:10:12 No.894320314
3日前の自分は別人なんだ 面倒でも書き初めの時点で分離したほうがいいぞ
152 22/02/06(日)14:10:16 No.894320332
>なんの話してるのかどんどん分からなくなって行く… >プログラマ「」多いのか >勉強する自信無くなってきた 最初はみんなそうだから大丈夫 初心者が立てたスレなのに経験者が寄ってきて最初にスレ立てた人そっちのけで雑談始めるのは「」の悪い癖だからあんま気にするな
153 22/02/06(日)14:10:18 No.894320345
yieldしろ
154 22/02/06(日)14:10:21 No.894320363
俺はpipとvirtualenvとcondaの違い分からないマン! 個人利用の範囲だとどれ使えばいいの…
155 22/02/06(日)14:10:24 No.894320388
プログラミングは古き良き伝統を大事にするよ 既存システムがCOBOLで固定長ファイル入出力するなら 新システムがJavaだろうがPythonだろうが固定長ファイルて入出力するままにしろとか
156 22/02/06(日)14:10:24 No.894320389
>インターフェースが先にクラスに実装できるメソッドの >名称や引数とか返り値を指定してそれ以外を禁止するの? >何がうれしいんだ? >変な関数を作られないこと? 今後作られるクラスのことを一切考えずにインターフェースに対してプログラミング出来るから 逆に今後作るクラスは使われ方のことを何も考えずインターフェースの実装だけすれば済むから
157 22/02/06(日)14:10:25 No.894320393
>現代のプロジェクトで変数名や関数名で独自の略称使いまくってたり >その略称が統一されていなかったりするのってどういう理由あるの? とりあえず最初に作った奴が居てそれに前ならえしたのとしなかった奴が居て明確にルール付けしなかったからでしょ
158 22/02/06(日)14:10:34 No.894320438
>変な関数を作られないこと? HDMIの端子があるならどんな機器でもHDMIケーブルで繋げるだろ? それがインターフェイスだ
159 22/02/06(日)14:10:45 No.894320490
コードレビューの時にちゃんと命名まで見てるところは少ないと聞きます
160 22/02/06(日)14:11:16 No.894320648
>俺はpipとvirtualenvとcondaの違い分からないマン! >個人利用の範囲だとどれ使えばいいの… Anacondaはクソだ
161 22/02/06(日)14:11:22 No.894320676
rubyもカオスに気が狂いそうになった人やプロジェクトはもうみんなコンテナに行ってるよ シンボリックリンクやら何かしらの方法で環境だまくらかしてるだけのenvは根本で筋悪
162 22/02/06(日)14:11:23 No.894320684
自己文書化ってなに? コメントっていっぱい付けた方が嬉しいの?それとも付けない方が嬉しいの?
163 22/02/06(日)14:11:28 No.894320703
>何がうれしいんだ? インタフェースが仕様になって実装を分離できるので見通しが良くなるし実装の差し替えとか機能追加もやりやすくなる 協力会社とか使った複数での大規模開発だと必須
164 22/02/06(日)14:11:34 No.894320729
ラクダとヘビ混在させるのは許さないよ
165 22/02/06(日)14:11:36 No.894320739
変数や関数の略称とか禁止した方がよくない?
166 22/02/06(日)14:11:53 No.894320828
コメントは少ないほどいいよ コメントによって意図を補完しなければならないようなコードはクソだ
167 22/02/06(日)14:11:57 No.894320849
>自己文書化ってなに? >コメントっていっぱい付けた方が嬉しいの?それとも付けない方が嬉しいの? 適切な場所に適切な量のコメントがあると嬉しい!
168 22/02/06(日)14:12:14 No.894320920
>rubyもカオスに気が狂いそうになった人やプロジェクトはもうみんなコンテナに行ってるよ >シンボリックリンクやら何かしらの方法で環境だまくらかしてるだけのenvは根本で筋悪 ローカルに言語環境もう入れてないわ…
169 22/02/06(日)14:12:14 No.894320922
大規模開発したことないからやっぱりその辺で使う知識は全然だあ
170 22/02/06(日)14:12:16 No.894320932
変数名があんまり長すぎると逆に可読性悪くなる気がする スコープがしっかりしてるなら最小限の意味さえわかればいいし
171 22/02/06(日)14:12:22 No.894320963
クラス書いてる時はわかるけど書こうとすると何もわからなくなる
172 22/02/06(日)14:12:48 No.894321094
>コメントっていっぱい付けた方が嬉しいの?それとも付けない方が嬉しいの? 付けすぎも付けなすぎも良くない バランスを理解する上では複数人との業務経験があるのが一番な気はするが とりあえず未来の自分が読んでわかるぐらいの技術はしたい
173 22/02/06(日)14:12:51 No.894321109
アップデートで変更される範囲を考えると 最初に入っているバージョンから変えるより自分が対応するほうがマシ
174 22/02/06(日)14:13:01 No.894321162
>既存システムがCOBOLで固定長ファイル入出力するなら >新システムがJavaだろうがPythonだろうが固定長ファイルて入出力するままにしろとか 実際カッチリ仕様決まるし性能も安定するしStreamとして処理もしやすいから レガシー扱いされるけど固定長ファイルでいいシーンって多いと思う
175 22/02/06(日)14:13:05 No.894321184
#支払先区分 var shrsk_kbn
176 22/02/06(日)14:13:14 No.894321224
コメントの代わりに上長の名前書いとくのがコツ
177 22/02/06(日)14:13:16 No.894321234
>コメントは少ないほどいいよ >コメントによって意図を補完しなければならないようなコードはクソだ コメントは挙動でなく理由を書けというのは金言だった
178 22/02/06(日)14:13:21 No.894321267
RPCとか扱うとインターフェースないとか考えられなくなるぞ
179 22/02/06(日)14:13:28 No.894321310
2人以上開発者が居るならもうインターフェイスとかでのカプセル化は必須だと思ってる
180 22/02/06(日)14:13:30 No.894321323
コメントなんてつけた時点で名前付けが失敗してる
181 22/02/06(日)14:13:40 No.894321385
インターフェースをちゃんと使うとは自動テスト実施してるのと同じ感じになるよ
182 22/02/06(日)14:13:45 No.894321410
>#支払先区分 >var shrsk_kbn うんコードきたな…
183 22/02/06(日)14:14:05 No.894321507
コメントだけじゃなくてコメントに加えて設計や文書との対応が重要なんだよ 誰この設計文書と対応してないコメント書いたバカ
184 22/02/06(日)14:14:12 No.894321552
少しコード読めばわかるようなことはコメントに書くなとは教わった
185 22/02/06(日)14:14:20 No.894321603
>>コメントは少ないほどいいよ >>コメントによって意図を補完しなければならないようなコードはクソだ >コメントは挙動でなく理由を書けというのは金言だった これを消すと何故か動かなくなるので消さないでください
186 22/02/06(日)14:14:27 No.894321635
>#支払先区分 >var kbn 本当のクソコードはこうなる
187 22/02/06(日)14:14:35 No.894321686
何かの略称+連番の変数とか関数がそれぞれ違う役割を果たしているのを見た時どうしたらいいの
188 22/02/06(日)14:14:41 No.894321716
// xに1を代入する x = 1
189 22/02/06(日)14:14:44 No.894321739
>2人以上開発者が居るならもうインターフェイスとかでのカプセル化は必須だと思ってる 最低でも過去の自分と今の自分と未来の自分の3人がいることを忘れてはならない
190 22/02/06(日)14:14:49 No.894321767
自分の可読性を考慮した結果英単語ではなくローマ字表記することにした
191 22/02/06(日)14:14:50 No.894321771
ちゃんとコードを修正したら設計書も更新するんだぞ
192 22/02/06(日)14:14:52 No.894321782
コメントはなんのための行なのか書いてあるとほんとに助かる
193 22/02/06(日)14:14:56 No.894321806
英語力ないから関数名付けるのに苦労する
194 22/02/06(日)14:15:13 No.894321892
>何かの略称+連番の変数とか関数がそれぞれ違う役割を果たしているのを見た時どうしたらいいの 辞める
195 22/02/06(日)14:15:16 No.894321907
// なぜか動く
196 22/02/06(日)14:15:19 No.894321921
>何かの略称+連番の変数とか関数がそれぞれ違う役割を果たしているのを見た時どうしたらいいの 転職
197 22/02/06(日)14:15:20 No.894321933
>ちゃんとコードを修正したら設計書も更新するんだぞ 某銀行とか某携帯キャリアとかほんとにひどかった 設計書どころか最新コードが本番にしかねえ
198 22/02/06(日)14:15:22 No.894321941
>何かの略称+連番の変数とか関数がそれぞれ違う役割を果たしているのを見た時どうしたらいいの 見なかったことにする
199 22/02/06(日)14:15:34 No.894322004
>>#支払先区分 >>var a >本当のクソコードはこうなる
200 22/02/06(日)14:15:35 No.894322005
>何かの略称+連番の変数とか関数がそれぞれ違う役割を果たしているのを見た時どうしたらいいの 俺色に染めあげる
201 22/02/06(日)14:15:38 No.894322026
>自分の可読性を考慮した結果英単語ではなくローマ字表記することにした もう日本語変数名でいいだろ どうせ外国人はこのコード見ないし
202 22/02/06(日)14:15:39 No.894322031
>実際カッチリ仕様決まるし性能も安定するしStreamとして処理もしやすいから >レガシー扱いされるけど固定長ファイルでいいシーンって多いと思う 弊社だと既存システムは可変長→固定長に変換して取り込んでたのを可変長→固定長→可変長と2回変換して取り込んでたなぁ
203 22/02/06(日)14:15:42 No.894322046
>インターフェースが先にクラスに実装できるメソッドの >名称や引数とか返り値を指定してそれ以外を禁止するの? >何がうれしいんだ? >変な関数を作られないこと? 継承と異なりインタフェースの実装は1つのクラスに対して複数できるよ で変な関数を作らせないんでなく欲しい関数を作らせることができる 俺のメソッドの引数はObjectインタフェース実装してるクラスのインスタンスならなんでもいいよ! (厳密にはtoString使うからだけど) という感じで
204 22/02/06(日)14:15:42 No.894322052
>#支払先区分 >var shrsk_kbn これに変数名付けるなら kubunShiharaiSakiとかでやっちゃうなぁ…ちょい冗長かもしれん
205 22/02/06(日)14:15:57 No.894322148
>英語力ないから関数名付けるのに苦労する codicってやつよく使ってる
206 22/02/06(日)14:15:58 No.894322151
>英語力ないから関数名付けるのに苦労する 訳わからない英語にされるよりは日本語にしてもらった方が助かる 日本人しかメンバーにいないなら特に
207 22/02/06(日)14:16:19 No.894322243
>2人以上開発者が居るならもうインターフェイスとかでのカプセル化は必須だと思ってる こういうデータ渡したらこういう処理してねと分業して切り分ける時の挙動の約束事みたいなもの?
208 22/02/06(日)14:16:22 No.894322258
>何かの略称+連番の変数とか関数がそれぞれ違う役割を果たしているのを見た時どうしたらいいの 変数や関数に連番つけて管理できた時代から 勉強せずそのままきてる人が幅きかせてる職場なので その誰かたちが居る限り改善不可能 辞めろ
209 22/02/06(日)14:16:42 No.894322355
>>#支払先区分 >>var shrsk_kbn >これに変数名付けるなら >kubunShiharaiSakiとかでやっちゃうなぁ…ちょい冗長かもしれん そもそもGoogle翻訳にぶち込んで英語にする
210 22/02/06(日)14:16:53 No.894322417
public class xxx_wo_yyy_suru_shori_Process
211 22/02/06(日)14:17:07 No.894322490
テストコードだと開発環境で動けばいいだろってことで日本語にしてる
212 22/02/06(日)14:17:11 No.894322511
>そもそもGoogle翻訳にぶち込んで英語にする なんだっけこの変数…
213 22/02/06(日)14:17:17 No.894322544
pythonならdocstring使えや!
214 22/02/06(日)14:17:56 No.894322755
>public class xxx_wo_yyy_suru_shori_Process こんなんみたら恐怖で会社辞めたくなるわ…
215 22/02/06(日)14:18:06 No.894322799
>>#支払先区分 >>var shrsk_kbn >これに変数名付けるなら >kubunShiharaiSakiとかでやっちゃうなぁ…ちょい冗長かもしれん (区分みたいな名前)_(支払い/受け取り)の2語で良くない?
216 22/02/06(日)14:18:08 No.894322803
設計力ないのにインターフェースとか作るとそれはそれで変化にクソ弱くなるから規模や人にもよるとは思う 抽象化苦手な人はこの辺マジで出来ないからな
217 22/02/06(日)14:18:08 No.894322805
>>2人以上開発者が居るならもうインターフェイスとかでのカプセル化は必須だと思ってる >こういうデータ渡したらこういう処理してねと分業して切り分ける時の挙動の約束事みたいなもの? そう とにかくこちらの意図以外の操作をされないのがバグを減らす一歩なので
218 22/02/06(日)14:18:10 No.894322817
pythonはコメントの書き方に方言があるのが糞
219 22/02/06(日)14:18:27 No.894322896
Facebook Researchのコード読むと一つの外部スコープの変数に複数の意味持たせたりyieldとreturnを組み合わせて使って処理の出口が複数かつ制御が呼び出し元と呼び出し先入り乱れててしかも微妙に本筋には影響しないバグもあって頭いい人が脳内で描いたポエムをそのまま書き殴ったクソコードって気しかしないのでまともなコード書くのは努力と知識両方が必要
220 22/02/06(日)14:18:30 No.894322913
>何かの略称+連番の変数とか関数がそれぞれ違う役割を果たしているのを見た時どうしたらいいの 人を沢山殺せる世界のプログラムを書く仕事なら その一連番号標識に従って仕事したほうがいい
221 22/02/06(日)14:18:35 No.894322943
前の職場の命名規約がそもそも英語日本語ごちゃまぜだった 区分 kbn 商品 shn ときて 価格 prc なんで!?
222 22/02/06(日)14:18:41 No.894322966
変数名なんて日本語でよくない?
223 22/02/06(日)14:18:42 No.894322976
頑張って英語にするのはいいけど変数名が動詞だったりメソッド名が形容詞だったり… 品詞もちゃんと考えて命名してね
224 22/02/06(日)14:18:56 No.894323036
>そう >とにかくこちらの意図以外の操作をされないのがバグを減らす一歩なので 上長「お前んとこに渡したらエラーになるって言われたから変えろ!」
225 22/02/06(日)14:18:57 No.894323041
バージョン管理してるのに、ソース中に変更履歴入れるの止めてほしい
226 22/02/06(日)14:19:02 No.894323068
>設計書どころか最新コードが本番にしかねえ バージョン管理とかは…?
227 22/02/06(日)14:19:21 No.894323182
研修の課題で半泣きになりながらいじってたけど なんか型が自由すぎて逆によく分かんねえ!となった
228 22/02/06(日)14:19:25 No.894323211
英語に慣れたいならMSDNを読むといい 日本語のドキュメントに不信感を持つようになるぞ!
229 22/02/06(日)14:19:39 No.894323298
>何かの略称+連番の変数とか関数がそれぞれ違う役割を果たしているのを見た時どうしたらいいの 無視して俺のルールに染めろ
230 22/02/06(日)14:19:39 No.894323299
>Facebook Researchのコード読むと一つの外部スコープの変数に複数の意味持たせたりyieldとreturnを組み合わせて使って処理の出口が複数かつ制御が呼び出し元と呼び出し先入り乱れててしかも微妙に本筋には影響しないバグもあって頭いい人が脳内で描いたポエムをそのまま書き殴ったクソコードって気しかしないのでまともなコード書くのは努力と知識両方が必要 どっちかって言うとその話聞いて感じるのは他人への思いやりが必要なのかなって…
231 22/02/06(日)14:19:50 No.894323350
(困ったなこの変数名ローマ字と英語どっちでも読めるけど意味全然違うな)
232 22/02/06(日)14:19:53 No.894323364
gff prs keo zub keo zub keo zub
233 22/02/06(日)14:20:05 No.894323419
>>設計書どころか最新コードが本番にしかねえ >バージョン管理とかは…? gitは当然ないしsvnすらない
234 22/02/06(日)14:20:21 No.894323502
結局コンパイルしたときにobjから失われるんだからシンボルなんて連番でもいいじゃん 人間が読みやすい書きやすいなんて価値観は捨てたほうがいい まずは計算機ファースト
235 22/02/06(日)14:20:30 No.894323563
>バージョン管理とかは…? 「これから使っていこうね!」って言われてた 他の部署(プロジェクト)では使ってるとこもあった 雑
236 22/02/06(日)14:20:41 No.894323614
Goとかlinterで無理やりメソッドのコメント強制されるし… >どうせ外国人はこのコード見ないし むしろ外国人の方が気を遣って日本語変数書いてくれたぞ
237 22/02/06(日)14:20:48 No.894323654
抗議したら自分一人でリファクタリングすることになりました! ロックンローラーなんてそれでいいんだよ
238 22/02/06(日)14:20:54 No.894323675
>Facebook Researchのコード読むと一つの外部スコープの変数に複数の意味持たせたりyieldとreturnを組み合わせて使って処理の出口が複数かつ制御が呼び出し元と呼び出し先入り乱れててしかも微妙に本筋には影響しないバグもあって頭いい人が脳内で描いたポエムをそのまま書き殴ったクソコードって気しかしないのでまともなコード書くのは努力と知識両方が必要 俺もGoogleの研究者が書いたコード読むことあるけどGoogleもそんな感じだよ
239 22/02/06(日)14:21:00 No.894323706
>結局コンパイルしたときにobjから失われるんだからシンボルなんて連番でもいいじゃん >人間が読みやすい書きやすいなんて価値観は捨てたほうがいい >まずは計算機ファースト そんな時代はもう終わった
240 22/02/06(日)14:21:00 No.894323707
>結局コンパイルしたときにobjから失われるんだからシンボルなんて連番でもいいじゃん >人間が読みやすい書きやすいなんて価値観は捨てたほうがいい >まずは計算機ファースト お前ひとりが作ってるならそれでもいい
241 22/02/06(日)14:21:13 No.894323771
>結局コンパイルしたときにobjから失われるんだからシンボルなんて連番でもいいじゃん >人間が読みやすい書きやすいなんて価値観は捨てたほうがいい >まずは計算機ファースト 最初から機械語で書けや
242 22/02/06(日)14:21:13 No.894323773
>むしろ外国人の方が気を遣って日本語変数書いてくれたぞ 有能すぎる
243 22/02/06(日)14:21:22 No.894323823
>結局コンパイルしたときにobjから失われるんだからシンボルなんて連番でもいいじゃん >人間が読みやすい書きやすいなんて価値観は捨てたほうがいい >まずは計算機ファースト それでメンテナンス性はどうなるんです?
244 22/02/06(日)14:21:34 No.894323878
>それでメンテナンス性はどうなるんです? 他の人がやる
245 22/02/06(日)14:21:41 No.894323915
>むしろ外国人の方が気を遣って日本語変数書いてくれたぞ ありがとう ごめんなさい
246 22/02/06(日)14:21:48 No.894323956
>>それでメンテナンス性はどうなるんです? >他の人がやる クソやろう!
247 22/02/06(日)14:22:03 No.894324033
git使うようになってすげえ!別世界だ!となった その前の職場は固めて日付付けてたから…
248 22/02/06(日)14:22:04 No.894324040
>>それでメンテナンス性はどうなるんです? >他の人がやる 「」らしい答えだな…
249 22/02/06(日)14:22:14 No.894324101
>>それでメンテナンス性はどうなるんです? >他の人がやる 他の人のメンテでバグが発生したら?
250 22/02/06(日)14:22:30 No.894324184
>>>それでメンテナンス性はどうなるんです? >>他の人がやる >他の人のメンテでバグが発生したら? 他の人が直す
251 22/02/06(日)14:22:32 No.894324189
>他の人のメンテでバグが発生したら? あいつがやりました
252 22/02/06(日)14:22:44 No.894324243
>>>それでメンテナンス性はどうなるんです? >>他の人がやる >他の人のメンテでバグが発生したら? おれじゃない
253 22/02/06(日)14:22:53 No.894324300
プログラミングの参考に侍エンジニアブログがトップに来るようにしといたよ
254 22/02/06(日)14:22:55 No.894324309
ひどい…
255 22/02/06(日)14:23:16 No.894324425
>プログラミングの参考にQiitaがトップに来るようにしといたよ
256 22/02/06(日)14:23:37 No.894324539
>git使うようになってすげえ!別世界だ!となった >その前の職場は固めて日付付けてたから… YYYYMMDD_最新版いいよね
257 22/02/06(日)14:23:37 No.894324545
>プログラミングの参考に侍エンジニアブログがトップに来るようにしといたよ テックアカデミーもろともドメインブロックしたわ
258 22/02/06(日)14:23:46 No.894324584
せめてstackoverflowにしてよ
259 22/02/06(日)14:24:01 No.894324653
>プログラミングの参考にふたばちゃんねるがトップに来るようにしといたよ
260 22/02/06(日)14:24:07 No.894324684
>YYYYMMDD_最新版(1)いいよね
261 22/02/06(日)14:24:09 No.894324693
>プログラミングの参考にQiitaがトップに来るようにしといたよ これはありがたい
262 22/02/06(日)14:24:14 No.894324718
>テックアカデミーもろともドメインブロックしたわ そうすれば良かったなそうしよ
263 22/02/06(日)14:24:23 No.894324763
>プログラミングの参考にZennがトップに来るようにしといたよ
264 22/02/06(日)14:25:26 No.894325067
>YYYYMMDD_2いいよね
265 22/02/06(日)14:25:38 No.894325127
>>プログラミングの参考に侍エンジニアブログがトップに来るようにしといたよ >テックアカデミーもろともドメインブロックしたわ 検索して出てきても参考にしない方がいい?
266 22/02/06(日)14:25:46 No.894325173
>プログラミングの参考に該当ライブラリのリポジトリがトップに来るようにしといたよ >誰もissueにあげてない…これは俺のせい…