!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を3行冒頭に書くこと(1行分は消えて表示されない為、もう1行は予備)
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、質問者自身なんだか意味がよく分からない質問、ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスや酔っぱらいレスはやめてください。見かけたらNGしましょう。相手してしまったらあなたも荒らしです
>>980を踏んだ人は新スレを建てて下さい。>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■前スレ
ふらっと C#,C♯,C#(初心者用) Part158
https://mevius.5ch.net/test/read.cgi/tech/1679783460/
■関連スレ
C#, C♯, C#相談室 Part97
https://mevius.5ch.net/test/read.cgi/tech/1671585518/
■コードを貼る場合は↓を使いましょう。
https://ideone.com/
https://dotnetfiddle.net/
初心者はまずVisual Studioを使いましょう。なおVisual Studioの使い方などに関しては各バージョンで違うので専用スレでお願いします
http://www.visualstudio.com/downloads/
■情報源
https://learn.microsoft.com/ja-jp/dotnet/standard/class-libraries
https://learn.microsoft.com/ja-jp/dotnet/csharp/language-reference/
https://learn.microsoft.com/en-us/dotnet/standard/class-libraries
https://referencesource.microsoft.com/
https://source.dot.net/
・Insider.NET > .NET TIPS - @IT
https://www.atmarkit.co.jp/ait/subtop/features/dotnet/dotnettips_index.html
・DOBON.NET .NET Tips
https://dobon.net/vb/dotnet/index.html
++C++; // 未確認飛行 C
https://ufcpp.net/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
ふらっと C#,C♯,C#(初心者用) Part159
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 6fe5-uQHI)
2023/08/08(火) 09:21:19.30ID:aeM2XQJJ0230デフォルトの名無しさん (ワッチョイ 0794-oBwi)
2023/09/29(金) 07:37:22.59ID:R/ASBcAr0 スクリプト?
ああ、スクリプト言語で書かれているのか
それならスクリプト自体を幾ら読んでも分からないよw
実際に動作を定義してるのはスクリプトエンジン側だからなぁ
ああ、スクリプト言語で書かれているのか
それならスクリプト自体を幾ら読んでも分からないよw
実際に動作を定義してるのはスクリプトエンジン側だからなぁ
231デフォルトの名無しさん (ワッチョイ 0a1f-oBwi)
2023/09/29(金) 08:13:03.19ID:2i5v5Rt90 ゲームのスクリプト読んでも、分かるのはそのゲームのストーリーくらいかなぁ?
232デフォルトの名無しさん (オッペケ Sr23-IWg1)
2023/09/29(金) 08:53:29.85ID:HVJlKrO3r233デフォルトの名無しさん (ワッチョイ 0ae5-WMZf)
2023/09/29(金) 08:58:03.08ID:Z2hlTA8C0234デフォルトの名無しさん (ワッチョイ 0a1f-oBwi)
2023/09/29(金) 09:11:19.11ID:2i5v5Rt90 ソースコード自体にもう内容書かれてんのにリバースエンジニアリングとはw
235デフォルトの名無しさん (ラクッペペ MMc6-se1G)
2023/09/29(金) 09:23:35.81ID:XHcVYCVKM 例えばシェルスクリプトならそのまま読むだけですべて動作を理解できる
一方でゲームスクリプトはゲームエンジンの動作を解析しないと理解は難しい
一方でゲームスクリプトはゲームエンジンの動作を解析しないと理解は難しい
236デフォルトの名無しさん (ラクッペペ MMc6-se1G)
2023/09/29(金) 09:28:49.63ID:dgWEZ4BHM もっとも利用するだけなら使い方を理解するだけで中身を理解する必要はない
237デフォルトの名無しさん (ワッチョイ 035f-9Nr+)
2023/09/29(金) 09:49:19.43ID:Zsgx8btV0 >>227
ゲーム「用」とは?
ゲーム「用」とは?
238デフォルトの名無しさん (ワッチョイ 0a02-4KCz)
2023/09/29(金) 10:17:17.30ID:LLT8Nv/70 単に読んでるだけでわかりにくにならデバッグ実行して動作とコードの関係を把握しながら読むと理解しやすい
途中で変数の値の確認や変更もやると確証がもてる
途中で変数の値の確認や変更もやると確証がもてる
239デフォルトの名無しさん (ワッチョイ 6ab0-/va4)
2023/09/29(金) 13:16:35.37ID:sbQ57Iwc0 >>237
https://gist.github.com/baba-s/e4da98f6fce2b6cca36b0cf3bb91f9d0
これが倉庫番のコードなのですが、全て1つのスクリプトに書かれています
これが分かりづらいので、分割、分解して理解を深めたいです
>>232
自分でゲームを作りたいので、分解してロジックを理解したいです
他人のコードを読み解く能力が上達には必須と考えました
https://gist.github.com/baba-s/e4da98f6fce2b6cca36b0cf3bb91f9d0
これが倉庫番のコードなのですが、全て1つのスクリプトに書かれています
これが分かりづらいので、分割、分解して理解を深めたいです
>>232
自分でゲームを作りたいので、分解してロジックを理解したいです
他人のコードを読み解く能力が上達には必須と考えました
240デフォルトの名無しさん (スフッ Sdaa-TrDt)
2023/09/29(金) 13:26:47.91ID:y68JSf5Yd >>239
この規模だと分割したらさらに判らなくなるだけだと思う
この規模だと分割したらさらに判らなくなるだけだと思う
241デフォルトの名無しさん (ワッチョイ 7f33-gNtf)
2023/09/29(金) 13:30:08.99ID:F5ALDY7d0 >>239
Unityの知識は大丈夫なの?
Unityの知識は大丈夫なの?
242デフォルトの名無しさん (ワッチョイ 0a1f-oBwi)
2023/09/29(金) 13:34:09.53ID:2i5v5Rt90 スクリプト?
243デフォルトの名無しさん (オイコラミネオ MM0b-WMZf)
2023/09/29(金) 13:45:18.92ID:jReLA3HcM 40年前ぐらい小学生のころに雑誌に載ってた倉庫番打ち込んだな
おそらく7~8ページ程度だったけど2週間ぐらいかかった
ロジックはほとんどなくドット絵のデータがメイン
そんな思いをしなくても遊べる今は恵まれてるなと思う
打ち込んでは実行してタイプミス潰し
倉庫番はリアルタイム性などない単純なパズルだから打ち込んでると嫌でも仕組みはわかった
何しろ状態を持ってない
全部マップデータ通りで単純明快
多分コード読んでるだけじゃ理解は深まらない
自分の見たい部分しか見ないから
コード打ち込むと全部舐めなければならない
そのうえで改変して挙動を確かめる
おそらく7~8ページ程度だったけど2週間ぐらいかかった
ロジックはほとんどなくドット絵のデータがメイン
そんな思いをしなくても遊べる今は恵まれてるなと思う
打ち込んでは実行してタイプミス潰し
倉庫番はリアルタイム性などない単純なパズルだから打ち込んでると嫌でも仕組みはわかった
何しろ状態を持ってない
全部マップデータ通りで単純明快
多分コード読んでるだけじゃ理解は深まらない
自分の見たい部分しか見ないから
コード打ち込むと全部舐めなければならない
そのうえで改変して挙動を確かめる
244デフォルトの名無しさん (オイコラミネオ MM0b-WMZf)
2023/09/29(金) 14:04:01.36ID:jReLA3HcM 大体2~3本似たようなプログラムを打ち込むと
仕組みが大体頭に入る
やってることは非常に単純
小学生にも理解出来る
そして普通に自分でも書ける
多分何百本分のコードを読んでも理解度は低いと思う
仕組みが大体頭に入る
やってることは非常に単純
小学生にも理解出来る
そして普通に自分でも書ける
多分何百本分のコードを読んでも理解度は低いと思う
245デフォルトの名無しさん (オイコラミネオ MM0b-WMZf)
2023/09/29(金) 14:14:09.16ID:jReLA3HcM そのころはコードにコメントなどもちろんなくインターネットもなく
下手するとマニュアルもなかった
でも数本打ち込むと大体わかった
英単語も読めない小学生にもわかるんだから誰にでも理解できると思う
下手するとマニュアルもなかった
でも数本打ち込むと大体わかった
英単語も読めない小学生にもわかるんだから誰にでも理解できると思う
246デフォルトの名無しさん (ワッチョイ 86e5-IWg1)
2023/09/29(金) 14:14:32.11ID:2UiM+hiU0247デフォルトの名無しさん (ワッチョイ 1a9b-3hLy)
2023/09/29(金) 14:17:39.88ID:iWuHjGCu0248デフォルトの名無しさん (オイコラミネオ MM0b-WMZf)
2023/09/29(金) 14:23:02.71ID:jReLA3HcM >>247
unityではc#スクリプトと呼んでる
unityではc#スクリプトと呼んでる
249デフォルトの名無しさん (オイコラミネオ MM0b-WMZf)
2023/09/29(金) 14:30:40.47ID:jReLA3HcM 英語を読む・聞き取る・話す は分かりやすく別の学習をしないといけない
コードを読めても書けなければ意味がない
理解したいならコードを書いた方がいい
コードを読めても書けなければ意味がない
理解したいならコードを書いた方がいい
250デフォルトの名無しさん (ワッチョイ 0a1f-oBwi)
2023/09/29(金) 14:34:27.27ID:2i5v5Rt90251デフォルトの名無しさん (オイコラミネオ MM0b-WMZf)
2023/09/29(金) 14:36:55.26ID:jReLA3HcM それとコードを読むのは非常に高度な技術だから
初心者がコードだけ読もうとしても
おそらく思ったような成果はあげれれない
初心者がコードだけ読もうとしても
おそらく思ったような成果はあげれれない
252デフォルトの名無しさん (ササクッテロラ Sp23-oBwi)
2023/09/29(金) 14:39:11.07ID:ty79BRMgp ゲームの細かい動きの部分だけスクリプトで書いてるみたいな感じだと全体を理解するの難しいかもね
253デフォルトの名無しさん (スプッッ Sd4a-+j9z)
2023/09/29(金) 14:40:02.98ID:AtqL2tKZd 隙あらば長文自分語り
254デフォルトの名無しさん (オイコラミネオ MM0b-WMZf)
2023/09/29(金) 15:00:48.68ID:jReLA3HcM 倉庫番自体のロジックは非常に単純
オセロより簡単ともいえる
キャラが空白のところへ動かせるようにつくる
移動先に荷物があってその先が空白ならキャラと荷物が動く
そのあと終わってるかどうか判定するだけ
オセロより簡単ともいえる
キャラが空白のところへ動かせるようにつくる
移動先に荷物があってその先が空白ならキャラと荷物が動く
そのあと終わってるかどうか判定するだけ
255デフォルトの名無しさん (ワッチョイ ff44-/va4)
2023/09/29(金) 15:06:10.15ID:kab4oOZl0 じゃあフラッピーは?
256デフォルトの名無しさん (ワッチョイ de7b-/va4)
2023/09/29(金) 15:37:41.47ID:3lAWIYxj0 >>239
こういうのこそChatGPTの使いどころでは?
こういうのこそChatGPTの使いどころでは?
257デフォルトの名無しさん (JP 0H42-yQCX)
2023/09/29(金) 15:39:08.46ID:tU9ZFt65H ここみれば?
ttps://baba-s.はてなblog.com/entry/2018/03/30/085000
ttps://baba-s.はてなblog.com/entry/2018/03/30/085000
258デフォルトの名無しさん (JP 0H42-yQCX)
2023/09/29(金) 15:41:33.40ID:tU9ZFt65H はてな英字表記がNGワードだった
作者が全部解説してるのにこっち見ないで完成形のソースだけ見てなにをどう理解したいのかわからない
作者が全部解説してるのにこっち見ないで完成形のソースだけ見てなにをどう理解したいのかわからない
259デフォルトの名無しさん (ワッチョイ 869b-lrL5)
2023/09/29(金) 15:56:47.20ID:C71JBRro0 >>239
うだうだ人に聞いてるお前には無理だと思う
うだうだ人に聞いてるお前には無理だと思う
260デフォルトの名無しさん (スッップ Sdaa-+j9z)
2023/09/29(金) 16:10:41.00ID:DNLFnh+Cd261デフォルトの名無しさん (オイコラミネオ MM0b-WMZf)
2023/09/29(金) 17:31:51.45ID:jReLA3HcM 初心者相手に罵倒しても心が汚れるだけ
上のコードはあまり関心出来ない部分もある
そのせいで分かりにくい箇所が若干ある
上のコードはあまり関心出来ない部分もある
そのせいで分かりにくい箇所が若干ある
262デフォルトの名無しさん (スッップ Sdaa-+j9z)
2023/09/29(金) 17:42:07.96ID:DNLFnh+Cd 罵倒、苦言、批判の区別は付いてるかな?
263デフォルトの名無しさん (ワッチョイ 0ae5-WMZf)
2023/09/29(金) 17:44:14.21ID:Z2hlTA8C0 >>234
逆アセで生成されたコードも、アセンブラの"ソースコード"だぞ?w
逆アセで生成されたコードも、アセンブラの"ソースコード"だぞ?w
264デフォルトの名無しさん (ワントンキン MMfa-AkpS)
2023/09/29(金) 17:58:40.51ID:QaI2pK3GM ワッチョイ 6ab0-/va4
ネチネチとしつこいだけでダメな奴の典型例
ネチネチとしつこいだけでダメな奴の典型例
265デフォルトの名無しさん (ワッチョイ 0744-oBwi)
2023/09/29(金) 17:58:57.69ID:R/ASBcAr0 >>263
意味不明w
意味不明w
266デフォルトの名無しさん (ワッチョイ 0ae5-WMZf)
2023/09/29(金) 17:59:37.91ID:Z2hlTA8C0 意味がわからんなら勉強しといでw
267デフォルトの名無しさん (ワッチョイ 6ab0-/va4)
2023/09/29(金) 18:01:17.51ID:sbQ57Iwc0 質問者です
確かに何が分からないのか言語化出来ないかもしれません
丸投げ質問にならないようにもう少しもがきます
ぼんやりした事を言うと、分からない部分は処理の流れですかね。
確かに何が分からないのか言語化出来ないかもしれません
丸投げ質問にならないようにもう少しもがきます
ぼんやりした事を言うと、分からない部分は処理の流れですかね。
268デフォルトの名無しさん (ワッチョイ 87e5-7af3)
2023/09/29(金) 18:13:34.27ID:omi/Go5l0 フレームワークから呼び出されるだけの存在だよ
269デフォルトの名無しさん (スッップ Sdaa-+j9z)
2023/09/29(金) 18:30:54.80ID:DNLFnh+Cd Unity詳しくないけど必要に応じてSokobanクラスの各メソッドが呼び出される仕組みじゃないのこれ?
処理の流れってのがそのUnityが仕切ってる部分のことを言ってるなら
このクラスをいくら眺めても理解できなさそうだけども
処理の流れってのがそのUnityが仕切ってる部分のことを言ってるなら
このクラスをいくら眺めても理解できなさそうだけども
270デフォルトの名無しさん (ラクッペペ MMc6-se1G)
2023/09/29(金) 18:41:16.70ID:KGst9XPnM Unityから呼び出されるメソッドは初期設定のStartと更新処理のUpdateの2つ
毎回呼び出されるのは後者なのでそこから追いかけていけばいい
毎回呼び出されるのは後者なのでそこから追いかけていけばいい
271デフォルトの名無しさん (スッップ Sdaa-+j9z)
2023/09/29(金) 18:51:42.76ID:DNLFnh+Cd なるほど、たしかにコメントにもそう書いてある
もっとあれこれ呼ばれるのかと思ったら意外にシンプル
てことは>>267が分からないって言ってる「処理の流れ」はクラスの中の話の可能性が高い?
であればコードを読み進めてここで詰まったとか具体的な情報が欲しいところ
もっとあれこれ呼ばれるのかと思ったら意外にシンプル
てことは>>267が分からないって言ってる「処理の流れ」はクラスの中の話の可能性が高い?
であればコードを読み進めてここで詰まったとか具体的な情報が欲しいところ
272デフォルトの名無しさん (オイコラミネオ MM0b-WMZf)
2023/09/29(金) 18:57:11.74ID:jReLA3HcM 実際にコードを見てその印象なら初心者と変わりない
273デフォルトの名無しさん (スプッッ Sd4a-+j9z)
2023/09/29(金) 19:18:05.29ID:KklayHMNd なんか因縁つけられた
274デフォルトの名無しさん (ブーイモ MMef-VO9t)
2023/09/29(金) 22:00:42.65ID:WQUdW1Y0M こんだけみっちりコメント書いてあって、メソッドも分かれてるから、後は気合だけのような…
275デフォルトの名無しさん (スプッッ Sd4a-+j9z)
2023/09/29(金) 22:31:46.59ID:KklayHMNd あとは自分の今の知識・理解度に見合ってるかどうかかね
他スレでもたまに明らかに分不相応なお題に取り組もうとしてる人を見かける
他スレでもたまに明らかに分不相応なお題に取り組もうとしてる人を見かける
276デフォルトの名無しさん (ワッチョイ 8a6a-gNtf)
2023/09/29(金) 22:37:09.95ID:qnLQZNNU0 基本素養が足りてない人に限って、Webの情報を断片的に拾い読みするだけで済まそうとする…
2,3千円をケチらずにちゃんとした入門書を買うべきやろな
2,3千円をケチらずにちゃんとした入門書を買うべきやろな
277デフォルトの名無しさん (オイコラミネオ MMd1-VEJP)
2023/09/30(土) 00:58:15.11ID:tFuDf2bYM 千里の道も一歩からと言うけど100m先のコンビニへもまず一歩踏み出さないと到達しない
プログラムでバグが出るのは当たり前でそれを潰すのは経験を積むしかない
コードを読むだけではそこらへんは無理
文法が分かったとして実際に書かないと理解は深まらない
見てもわからないなら紙にでも書き出して考えることもできる
小学生のころは配列の内容を方眼紙とかに書いてプログラムを再現して理解しようとしてた
それがいつの間にか脳内ですべて完結するようになった
期待通りにならなくても結果を見て経験からこうだろうなと見当を付けられるようになった
小学生より賢いはずなんだからなにか手立てはあるだろう
プログラムでバグが出るのは当たり前でそれを潰すのは経験を積むしかない
コードを読むだけではそこらへんは無理
文法が分かったとして実際に書かないと理解は深まらない
見てもわからないなら紙にでも書き出して考えることもできる
小学生のころは配列の内容を方眼紙とかに書いてプログラムを再現して理解しようとしてた
それがいつの間にか脳内ですべて完結するようになった
期待通りにならなくても結果を見て経験からこうだろうなと見当を付けられるようになった
小学生より賢いはずなんだからなにか手立てはあるだろう
278デフォルトの名無しさん (ラクッペペ MMcb-/u/1)
2023/09/30(土) 03:26:23.71ID:qC94828iM 実際にUnityを使っていて一度でも空のプロジェクトを作ったことがあれば>>270程度のことは直ぐに分かる
中身が空のスケルトンコードがそのまま作られるのでUnityと言うゲームエンジンのフレームワークの基本構造が見えてくる
コードを読む前にまず手を動かして見なければ気付けないことも多い
中身が空のスケルトンコードがそのまま作られるのでUnityと言うゲームエンジンのフレームワークの基本構造が見えてくる
コードを読む前にまず手を動かして見なければ気付けないことも多い
279デフォルトの名無しさん (ワッチョイ 9bcb-2pcI)
2023/09/30(土) 06:13:30.76ID:lCW6xIVF0 >>277
倉庫番のコードを書くようにしますが、その場合は他人のコードを完璧に真似るつもりでやったほうがいいですか?自己流でやっていたことが良くないと気づいたので。他人のやり方まで取り込むのが上達への近道かなと思ってます
倉庫番のコードを書くようにしますが、その場合は他人のコードを完璧に真似るつもりでやったほうがいいですか?自己流でやっていたことが良くないと気づいたので。他人のやり方まで取り込むのが上達への近道かなと思ってます
280デフォルトの名無しさん (ワッチョイ 9bcb-2pcI)
2023/09/30(土) 06:20:57.56ID:lCW6xIVF0 他人のコードを理解する、読み解く上でのやり方が確立されていない感じです
281デフォルトの名無しさん (ワッチョイ cb10-VEJP)
2023/09/30(土) 06:40:22.13ID:EIBJTlDv0 読み解き方が確立されてるかされてないか以前の問題のような……
282デフォルトの名無しさん (ワッチョイ 2d82-cP1N)
2023/09/30(土) 08:57:55.29ID:1LHvsOST0 基礎が身についてないのにやみくもに書き写したところで書く能力が身につくわけないじゃん
自分語りの詐欺的商法に騙されるなよ
ちょっと考えればわかるだろ
キミに必要なのは公式チュートリアルと入門書
自分語りの詐欺的商法に騙されるなよ
ちょっと考えればわかるだろ
キミに必要なのは公式チュートリアルと入門書
283デフォルトの名無しさん (オイコラミネオ MMd1-VEJP)
2023/09/30(土) 09:50:03.07ID:tFuDf2bYM 40年ぐらい前の小学3年生よりあなたは賢いのかどうかと言う問題
現状スキルレベルでは負けている
環境では勝っている
現状スキルレベルでは負けている
環境では勝っている
284デフォルトの名無しさん (スップ Sd43-sBWh)
2023/09/30(土) 10:00:47.45ID:RNKSTVVAd285デフォルトの名無しさん (ワッチョイ 9bcb-2pcI)
2023/09/30(土) 10:21:02.95ID:lCW6xIVF0 >>284
手を動かさないと何が分からないかも、分からないという状態から脱せないでしょうか?
手を動かさないと何が分からないかも、分からないという状態から脱せないでしょうか?
286デフォルトの名無しさん (オイコラミネオ MMd1-VEJP)
2023/09/30(土) 10:27:45.96ID:tFuDf2bYM 入門したてはタイピングが苦痛だった
一文字ずつキーボードとにらめっこ
p r i n t と一文字ずつ探してやっと一行を入れ終わる
そして実行
自分が今一行入力した分だけ画面が変わったりする
今書いたコードはこういうことなんだと分かる
それが体験で経験
誰がどのように入力しても結果は同じ
一文字ずつキーボードとにらめっこ
p r i n t と一文字ずつ探してやっと一行を入れ終わる
そして実行
自分が今一行入力した分だけ画面が変わったりする
今書いたコードはこういうことなんだと分かる
それが体験で経験
誰がどのように入力しても結果は同じ
287デフォルトの名無しさん (オイコラミネオ MMd1-VEJP)
2023/09/30(土) 10:29:22.27ID:tFuDf2bYM そのころコードを読んでも絶対意味なんて判らない
手を動かして実行
これ以外上達の方法はない
手を動かして実行
これ以外上達の方法はない
288デフォルトの名無しさん (スップ Sd43-sBWh)
2023/09/30(土) 10:38:44.22ID:RNKSTVVAd289デフォルトの名無しさん (アウアウウー Sa89-5C2y)
2023/09/30(土) 10:44:33.67ID:+WV6fTrGa >>252
東京パソコンクラブのノリだな
東京パソコンクラブのノリだな
290デフォルトの名無しさん (オイコラミネオ MMd1-VEJP)
2023/09/30(土) 10:49:18.06ID:tFuDf2bYM 英単語なんか知らないから一文字ずつアルファベットを暗唱しながらタイプしていく
呪文を打ち込んでいく
一行入力も辛いので途中で実行して進展を見る
入力したコードの理解が深まる
そうして小さな成功体験を積み重ねる
そのうち前に入力したのと同じような内容が出てくる
今度は実行しなくても結果がわかる
実行してみて違うなら違いを探す
こうして一歩ずつ進む
コードを読んだりコメントを読むだけだとこういうのが失われて分かった気にだけなる
実際にコードを書けないし着想もできない
呪文を打ち込んでいく
一行入力も辛いので途中で実行して進展を見る
入力したコードの理解が深まる
そうして小さな成功体験を積み重ねる
そのうち前に入力したのと同じような内容が出てくる
今度は実行しなくても結果がわかる
実行してみて違うなら違いを探す
こうして一歩ずつ進む
コードを読んだりコメントを読むだけだとこういうのが失われて分かった気にだけなる
実際にコードを書けないし着想もできない
291デフォルトの名無しさん (アウアウウー Sa89-5C2y)
2023/09/30(土) 11:04:04.96ID:+WV6fTrGa >>285 は手が動いても頭が動かないタイプと観た
292デフォルトの名無しさん (ワッチョイ 9bbc-VEJP)
2023/09/30(土) 13:07:46.30ID:Xbo2Ry+C0 それ、逆じゃないのかな。
手を動かす前にうだうだ考えるウチに投げ出すタイプというか。
なにも考えずにとりあえずコードを打ち込んでみて、動かしてみればいいじゃない。
そしてその動くプログラムのコードを書いているときや後から眺めたときに「こうした方がいいんじゃない?」って思ったところを何度でも直して、また動かしてみる、と。
実際、自分がやるのもそれに近いところがなくもないし。
分からないところをネットで調べてコピペして動かして、足りないところや考慮すべきところを直し加えてってのを何回かやったりやらなかったり。
手を動かす前にうだうだ考えるウチに投げ出すタイプというか。
なにも考えずにとりあえずコードを打ち込んでみて、動かしてみればいいじゃない。
そしてその動くプログラムのコードを書いているときや後から眺めたときに「こうした方がいいんじゃない?」って思ったところを何度でも直して、また動かしてみる、と。
実際、自分がやるのもそれに近いところがなくもないし。
分からないところをネットで調べてコピペして動かして、足りないところや考慮すべきところを直し加えてってのを何回かやったりやらなかったり。
293デフォルトの名無しさん (ワッチョイ 9bcb-2pcI)
2023/09/30(土) 14:30:45.31ID:lCW6xIVF0 >>288
unityで動かしております
>>290
やはり手を動かします
>>284
では質問させてもらいます
gptに聞いたのですが、良くわかりませんでした
https://gist.github.com/baba-s/e4da98f6fce2b6cca36b0cf3bb91f9d0
TileTypeという列挙型があり、tiletype型を使用してtilelist変数を宣言しているのが分からないです。
普通、インデックスにアクセスする場合は整数型を使うと思うんですが。
やはり、基礎が出来てないなと
unityで動かしております
>>290
やはり手を動かします
>>284
では質問させてもらいます
gptに聞いたのですが、良くわかりませんでした
https://gist.github.com/baba-s/e4da98f6fce2b6cca36b0cf3bb91f9d0
TileTypeという列挙型があり、tiletype型を使用してtilelist変数を宣言しているのが分からないです。
普通、インデックスにアクセスする場合は整数型を使うと思うんですが。
やはり、基礎が出来てないなと
294デフォルトの名無しさん (ラクッペペ MMcb-/u/1)
2023/09/30(土) 14:47:09.79ID:jRqEkae9M 例えばデバッガーでマップの配列の中を確認する場合、無味乾燥な整数で状態表示されるより列挙変数で表示された方が分かりやすいだろ
プレイヤー視点ではなく開発者視点で分かりやすくしているだけ
プレイヤー視点ではなく開発者視点で分かりやすくしているだけ
295デフォルトの名無しさん (スップ Sd43-sBWh)
2023/09/30(土) 15:02:25.67ID:RNKSTVVAd >>293
>普通、インデックスにアクセスする場合は整数型を使うと思うんですが。
インデックスってのはtileList[x, y]のxとyのこと
この場合もxとyは整数型でしょ
インデックス「に」って表現してるけど何かと勘違いしてる?
>普通、インデックスにアクセスする場合は整数型を使うと思うんですが。
インデックスってのはtileList[x, y]のxとyのこと
この場合もxとyは整数型でしょ
インデックス「に」って表現してるけど何かと勘違いしてる?
296デフォルトの名無しさん (スップ Sd43-sBWh)
2023/09/30(土) 15:10:09.10ID:RNKSTVVAd で、tileListは配列要素の型がTileType列挙型なわけだけど、その理由は>>294も書いてるように可読性や保守性のため
297デフォルトの名無しさん (オイコラミネオ MMd1-VEJP)
2023/09/30(土) 15:27:57.46ID:tFuDf2bYM 抽象的な話じゃない説明
例えば数値で壁を1で荷物を3とかにすると…
コード内で1とか3の数字が出てくるがそれが何なのか覚えてないとわからない
データの種類が100種類とかあると管理だけで大変
それを改善する場合に数字じゃなくて文字で '壁' とか'荷'とか'人'とかにもできる
でもこの場合も問題がある
気まぐれで壁や荷物を赤い壁と青い壁、赤い荷物と青い荷物などにしたくなった場合にどうするか?
別に色情報持つとか考えなくてはならない
それだったらTypeでRedWallとかにしたほうがいい
更に後でRedWallをやめたくなった場合にはenumからRedWallを削る
そうするとIDEにエラー表示が出て修正箇所がわかる
これが数字だと修正を自力で探して頑張るしかない
例えば数値で壁を1で荷物を3とかにすると…
コード内で1とか3の数字が出てくるがそれが何なのか覚えてないとわからない
データの種類が100種類とかあると管理だけで大変
それを改善する場合に数字じゃなくて文字で '壁' とか'荷'とか'人'とかにもできる
でもこの場合も問題がある
気まぐれで壁や荷物を赤い壁と青い壁、赤い荷物と青い荷物などにしたくなった場合にどうするか?
別に色情報持つとか考えなくてはならない
それだったらTypeでRedWallとかにしたほうがいい
更に後でRedWallをやめたくなった場合にはenumからRedWallを削る
そうするとIDEにエラー表示が出て修正箇所がわかる
これが数字だと修正を自力で探して頑張るしかない
298デフォルトの名無しさん (ワッチョイ 9b0c-RAiU)
2023/09/30(土) 16:04:48.60ID:fUSk+kCE0299デフォルトの名無しさん (ワッチョイ ab9a-cP1N)
2023/09/30(土) 16:20:33.29ID:kuFk0VAS0 勘違いしてそうなので基本的なことから書くと
int[3]は[0, 0, 0]のように各要素がint型で長さ3の1次元配列を示す型
string[3]は[“a”, ”bb”, “ccd”]のように各要素がstring型で長さ3の1次元配列を示す型
TileType[3]は[TileType.NONE, TileType.PLAYER, TileType.GROUND]のように各要素がTileType型で長さ3の1次元配列を示す型
var tiles = new TileType[3]{TileType.NONE, TileType.PLAYER, TileType.GROUND};
if (tiles[0] == TileType.PLAYER) do_something;
のような使い方をする
TileType[10, 10]は各要素がTileType型で10×10の2次元配列を示す型
int[3]は[0, 0, 0]のように各要素がint型で長さ3の1次元配列を示す型
string[3]は[“a”, ”bb”, “ccd”]のように各要素がstring型で長さ3の1次元配列を示す型
TileType[3]は[TileType.NONE, TileType.PLAYER, TileType.GROUND]のように各要素がTileType型で長さ3の1次元配列を示す型
var tiles = new TileType[3]{TileType.NONE, TileType.PLAYER, TileType.GROUND};
if (tiles[0] == TileType.PLAYER) do_something;
のような使い方をする
TileType[10, 10]は各要素がTileType型で10×10の2次元配列を示す型
300デフォルトの名無しさん (ワッチョイ 2d1e-UA51)
2023/09/30(土) 16:43:41.11ID:rxNaOE9c0 可読性の高いRuby で、3目並べが並んだかどうかの判定だけでも、こんなに書く。
ましてや他言語は可読性も低いし、他人のコードなど読めるわけがない!
他人のコードを読むことを勧めるような香具師は嘘。
100行の内、5行ぐらいしか読んでいない
input_ary = [ ["x","","", "x","","", "o","o","o"],
["o","","x", "","o","x", "","o","x"],
["x","o","o", "","x","", "o","","x"],
["x","","o", "x","o","", "o","",""],
["o","x","o", "","x","", "","o","x"] ]
def check_win( board_ary )
puts "-" * 40
diag_ary = Array.new( 3 ) # 斜め
diag_ary[ 0 ] = board_ary[ 0 ]
diag_ary[ 1 ] = board_ary[ 4 ]
diag_ary[ 2 ] = board_ary[ 8 ]
return true if diag_ary.all? { |cell| cell == "o" } ||
diag_ary.all? { |cell| cell == "x" }
diag_ary[ 0 ] = board_ary[ 2 ]
# diag_ary[ 1 ] = board_ary[ 4 ]
diag_ary[ 2 ] = board_ary[ 6 ]
return true if diag_ary.all? { |cell| cell == "o" } ||
diag_ary.all? { |cell| cell == "x" }
次へ続く
ましてや他言語は可読性も低いし、他人のコードなど読めるわけがない!
他人のコードを読むことを勧めるような香具師は嘘。
100行の内、5行ぐらいしか読んでいない
input_ary = [ ["x","","", "x","","", "o","o","o"],
["o","","x", "","o","x", "","o","x"],
["x","o","o", "","x","", "o","","x"],
["x","","o", "x","o","", "o","",""],
["o","x","o", "","x","", "","o","x"] ]
def check_win( board_ary )
puts "-" * 40
diag_ary = Array.new( 3 ) # 斜め
diag_ary[ 0 ] = board_ary[ 0 ]
diag_ary[ 1 ] = board_ary[ 4 ]
diag_ary[ 2 ] = board_ary[ 8 ]
return true if diag_ary.all? { |cell| cell == "o" } ||
diag_ary.all? { |cell| cell == "x" }
diag_ary[ 0 ] = board_ary[ 2 ]
# diag_ary[ 1 ] = board_ary[ 4 ]
diag_ary[ 2 ] = board_ary[ 6 ]
return true if diag_ary.all? { |cell| cell == "o" } ||
diag_ary.all? { |cell| cell == "x" }
次へ続く
301300 (ワッチョイ 2d1e-UA51)
2023/09/30(土) 16:44:26.02ID:rxNaOE9c0 前の続き
p outer_ary = board_ary.each_slice( 3 ).to_a # 3×3 の配列
outer_ary.each do |inner_ary|
p inner_ary
return true if inner_ary.all? { |cell| cell == "o" } ||
inner_ary.all? { |cell| cell == "x" }
end
puts "転置後"
p outer_ary2 = outer_ary.transpose # 転置
outer_ary2.each do |inner_ary|
p inner_ary
return true if inner_ary.all? { |cell| cell == "o" } ||
inner_ary.all? { |cell| cell == "x" }
end
false
end
res = input_ary.map { |ary| check_win( ary ) }
puts "-" * 40
p res #=> [true, true, true, true, false]
p outer_ary = board_ary.each_slice( 3 ).to_a # 3×3 の配列
outer_ary.each do |inner_ary|
p inner_ary
return true if inner_ary.all? { |cell| cell == "o" } ||
inner_ary.all? { |cell| cell == "x" }
end
puts "転置後"
p outer_ary2 = outer_ary.transpose # 転置
outer_ary2.each do |inner_ary|
p inner_ary
return true if inner_ary.all? { |cell| cell == "o" } ||
inner_ary.all? { |cell| cell == "x" }
end
false
end
res = input_ary.map { |ary| check_win( ary ) }
puts "-" * 40
p res #=> [true, true, true, true, false]
302300 (ワッチョイ 2d1e-UA51)
2023/09/30(土) 16:56:49.16ID:rxNaOE9c0 仕様から、コードは書けるが、
コードから仕様を推測するのは、10倍以上難しい
他人のコードを読むと、膨大な時間の無駄で、
自作していないから身につかない
3目並べとか、じゃんけんとか、素数判定とか、
簡単な所から自作すべき!
解説が無いような、他人のコードを絶対に読んではならない!
膨大な時間の無駄
コードから仕様を推測するのは、10倍以上難しい
他人のコードを読むと、膨大な時間の無駄で、
自作していないから身につかない
3目並べとか、じゃんけんとか、素数判定とか、
簡単な所から自作すべき!
解説が無いような、他人のコードを絶対に読んではならない!
膨大な時間の無駄
303デフォルトの名無しさん (ワンミングク MMa3-E1cW)
2023/09/30(土) 18:10:18.46ID:Ag7bGIUIM しつこい馬鹿のせいでrubyキチガイまで出てきた
304デフォルトの名無しさん (ワッチョイ 8501-6YkV)
2023/09/30(土) 18:43:08.79ID:UMbhW8aD0 昔々BASICインタプリタと横スクロールゲーを全てレポート用紙に逆アセンブルして分析したのはメチャ役に立った
初心者が(簡単な)ゲームの分析、理解することは役立つこと多いと思うよ
初心者が(簡単な)ゲームの分析、理解することは役立つこと多いと思うよ
305デフォルトの名無しさん (ワンミングク MMa3-AwC8)
2023/09/30(土) 20:59:11.77ID:U9V2qVkaM 人に聞きまくるだけの奴には無理だぞ
方法論以前の問題
方法論以前の問題
306デフォルトの名無しさん (ワッチョイ 9bcb-2pcI)
2023/10/01(日) 10:33:20.05ID:5ao4WmOt0307デフォルトの名無しさん (ワッチョイ 2d50-uznD)
2023/10/01(日) 10:43:13.42ID:Zy/Xpldc0308デフォルトの名無しさん (ワッチョイ d553-lFbY)
2023/10/01(日) 12:21:46.44ID:o8cy9tiS0309デフォルトの名無しさん (ラクッペペ MMcb-/u/1)
2023/10/01(日) 12:27:48.25ID:jo3dkEigM310デフォルトの名無しさん (ラクッペペ MMcb-/u/1)
2023/10/01(日) 12:27:59.76ID:jo3dkEigM311デフォルトの名無しさん (ワッチョイ 25da-/u/1)
2023/10/01(日) 12:28:36.05ID:9rYgJ/eZ0312デフォルトの名無しさん (ワッチョイ 25da-/u/1)
2023/10/01(日) 12:28:44.44ID:9rYgJ/eZ0313デフォルトの名無しさん (ラクッペペ MMcb-/u/1)
2023/10/01(日) 12:31:41.14ID:OrY06J6zM ネットの調子が悪い
連投スマソ
連投スマソ
314デフォルトの名無しさん (ワッチョイ 9bcb-2pcI)
2023/10/01(日) 12:44:57.25ID:Je269Bs00 >>307
ありがとうございます
https://baba-s.はてなぶろぐ.com/entry/2018/03/30/085000
tileList = new TileType[ columns, rows ];
の部分でtiletype型には定数の文字列が入ると思っていましたが、整数値であるcolumnsとrowsを代入しているあたりが分からないです。
何らかの文字列の定数が入ると考えていますた
ありがとうございます
https://baba-s.はてなぶろぐ.com/entry/2018/03/30/085000
tileList = new TileType[ columns, rows ];
の部分でtiletype型には定数の文字列が入ると思っていましたが、整数値であるcolumnsとrowsを代入しているあたりが分からないです。
何らかの文字列の定数が入ると考えていますた
315デフォルトの名無しさん (ワッチョイ 2d33-uznD)
2023/10/01(日) 13:26:19.97ID:jNjNNZOq0 >>314
君はそもそも配列宣言の記法、意味が分かってない
まず↓あたりをじっくり読んで、サンプルコードも実際に動かして理解して欲しい
https://ufcpp.net/study/csharp/st_array.html
そしてハッキリ言うけど今の段階で倉庫番のコードを理解しようとしても基礎が出来てないから無理
君はそもそも配列宣言の記法、意味が分かってない
まず↓あたりをじっくり読んで、サンプルコードも実際に動かして理解して欲しい
https://ufcpp.net/study/csharp/st_array.html
そしてハッキリ言うけど今の段階で倉庫番のコードを理解しようとしても基礎が出来てないから無理
316デフォルトの名無しさん (ワッチョイ 9b9b-RAiU)
2023/10/02(月) 02:06:24.20ID:NgblnbYV0 他人の助言には絶対に耳を傾けないタイプ
317デフォルトの名無しさん (ワッチョイ 9bcb-2pcI)
2023/10/02(月) 06:20:59.94ID:TDDpdEaf0318デフォルトの名無しさん (ワントンキン MMa3-E1cW)
2023/10/02(月) 07:26:58.07ID:lRooFwx4M ダメだこいつ
319デフォルトの名無しさん (ワッチョイ 8501-6YkV)
2023/10/02(月) 07:50:32.09ID:eOR7lDrh0 >>314
>tileList = new TileType[ columns, rows ];
元ネタ見てないけど、↑を見てこう考えることができるように基礎知識、経験が必要
・tileListに画面の状態を格納するんだな
・二次元配列としてcolumns, rowsの数だけ確保と
・二次元配列に代入する値はTileType型ね(intとかのリテラル値でなくキチンと定義してるのか)
な感じ
>「tiletype型には定数の文字列が入ると思っていましたが」
ある程度予想しながらソースは読みますが、経験不足で予想外れるのはまだ仕方ない
>「整数値であるcolumnsとrowsを代入している」
代入はしていない。これから値を格納するための二次元配列を確保してるだけ
まだc#の記法がわかってない未熟なだけなので、何もかも貪欲に覚えて。
今やってることは無駄になることは何もない。間違えてても。頭と手をドンドン動かして吸収していくのだ
>tileList = new TileType[ columns, rows ];
元ネタ見てないけど、↑を見てこう考えることができるように基礎知識、経験が必要
・tileListに画面の状態を格納するんだな
・二次元配列としてcolumns, rowsの数だけ確保と
・二次元配列に代入する値はTileType型ね(intとかのリテラル値でなくキチンと定義してるのか)
な感じ
>「tiletype型には定数の文字列が入ると思っていましたが」
ある程度予想しながらソースは読みますが、経験不足で予想外れるのはまだ仕方ない
>「整数値であるcolumnsとrowsを代入している」
代入はしていない。これから値を格納するための二次元配列を確保してるだけ
まだc#の記法がわかってない未熟なだけなので、何もかも貪欲に覚えて。
今やってることは無駄になることは何もない。間違えてても。頭と手をドンドン動かして吸収していくのだ
320デフォルトの名無しさん (ラクッペペ MMcb-/u/1)
2023/10/02(月) 08:40:07.92ID:KRZkbw82M321デフォルトの名無しさん (ラクッペペ MMcb-/u/1)
2023/10/02(月) 08:40:23.40ID:KRZkbw82M322デフォルトの名無しさん (ラクッペペ MMcb-/u/1)
2023/10/02(月) 08:42:07.04ID:KRZkbw82M 何故かまた2回送信された
接続が不安定すぎるorz
接続が不安定すぎるorz
323デフォルトの名無しさん (ワッチョイ e32b-T/nl)
2023/10/02(月) 08:56:34.32ID:Rca7jjjr0 最近の5chの問題だからいちいち気にしなくて良いぞい
324デフォルトの名無しさん (ワッチョイ 23bc-uznD)
2023/10/02(月) 09:26:07.11ID:lKJ+23Y70325デフォルトの名無しさん (ワッチョイ 2d33-y8kH)
2023/10/02(月) 09:31:44.43ID:ejm1uWXY0 自分が必要と思うところだけつまみ食いするのがタイパいいとでも思ってるんかねぇ
見当はずれなことやって結局無駄に時間を使うだけなのに
見当はずれなことやって結局無駄に時間を使うだけなのに
326デフォルトの名無しさん (ワッチョイ 9bc8-RAiU)
2023/10/02(月) 12:48:13.11ID:NgblnbYV0 批判は一切受付けません!のスタイル
そもそもこんなことに何日も掛けて進まない時点でこいつには無理
そもそもこんなことに何日も掛けて進まない時点でこいつには無理
327デフォルトの名無しさん (ワッチョイ 23e5-VEJP)
2023/10/02(月) 14:31:10.17ID:egrIJ/AE0 そろそろスルーしとけ
328デフォルトの名無しさん (ワッチョイ 9bcb-2pcI)
2023/10/02(月) 15:30:17.92ID:TDDpdEaf0329デフォルトの名無しさん (ワッチョイ 9b9b-RAiU)
2023/10/02(月) 15:35:28.81ID:NgblnbYV0 要約すると、
基礎を学ぶ気はない貴様らは俺の聞いたことに答えればいいんだ
つまり、教えてもらおうではなく聞きだそうというスタイル
基礎を学ぶ気はない貴様らは俺の聞いたことに答えればいいんだ
つまり、教えてもらおうではなく聞きだそうというスタイル
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国国営メディア「沖縄は日本ではない」… [BFU★]
- 中国国営メディア「沖縄は日本ではない」… ★2 [BFU★]
- 高市政権にパイプ役不在…日中高まる緊張 公明党の連立離脱影響、自民内にも懸念「自分でまいた種は自分で刈り取ってもらわないと」 [ぐれ★]
- 【こんなの初めて…】民泊には既にキャンセルも 中国の渡航自粛で [ぐれ★]
- NY円、一時1ユーロ=180円台まで下落…1999年のユーロ導入以来初 ★2 [蚤の市★]
- 俳優 高岡蒼佑「エジプト出身とかナイジェリア出身とかの人が、日本の代表顔して移民の事とか話してるの見るとなんか違う気がする」★2 [Anonymous★]
- 【悲報】なんで「アジア主義」を唱える右翼が居ないの🤔 [616817505]
- 野田(安倍晋三マニア)「総理は国益を損なうような発言はしてはいけない」 [884040186]
- 中国国営放送「日本は琉球をただちに中国に返還せよ」 キタ━━━━(゚∀゚)━━━━!!!!! [314039747]
- 【高市悲報】アメリカ戦争省「あのさ、何回シミュレートしてもわーくに中国に負けちゃうんだよね🤗」 [359965264]
- 自民「高市の一言でこれまで積み上げてきた関係が駄目になる。言葉の重みを分かっていない。自分でまいた種は自分で刈り取ってもらう」 [256556981]
- 【高市悲報】片山さつき、円安進行を受けコメント「為替の変動を緊張感を持って見極める」 [888298477]
