スレ立てるまでもない質問はここで 161匹目at TECH
スレ立てるまでもない質問はここで 161匹目 - 暇つぶし2ch1:デフォルトの名無しさん
22/08/27 16:03:56.00 5336PvZW.net
この板はプログラムを作る人のための板です。
あらゆる質問はまず
スレ立てるまでもない質問はここで
スレにしてください。
次スレは>>980が立てること
【前スレ】
スレ立てるまでもない質問はここで 160匹目
スレリンク(tech板)

2:デフォルトの名無しさん
22/08/27 16:13:16.17 5336PvZW.net
とりあえず立てた

3:デフォルトの名無しさん
22/08/27 16:59:01.39 EnDidMoC.net
>>2
おつ

4:デフォルトの名無しさん
[ここ壊れてます] .net
数学板から来ました

2 名前:132人目の素数さん[] 投稿日:2022/08/24(水) 10:09:02.45 ID:97GsSTcR [2/2]
例えば、小平邦彦は円周率が無理数であることの証明を知らなかったが、その結果は使っていた。
フィールズ賞受賞者でさえ、オブジェクト指向プログラミングの手法に従っていたのである。
---
とのことですが、どの辺りがオブジェクト指向プログラミングの手法なのでしょうか?
※小平邦彦…すごく偉い数学者、フィールズ賞…数学のすごい賞

5:デフォルトの名無しさん
22/08/27 21:21:36.51 RoUz3vDs.net
実装の詳細を知らなくても使えるという特性では?

6:デフォルトの名無しさん
22/08/28 02:25:16.21 nkxO7nQv.net
Python信者多いけどどっかから金もらってんの?
You Tubeとかもなんか多いけど

7:デフォルトの名無しさん
22/08/28 02:30:37.57 SJ2V4652.net
>>6
良くも悪くも今�


8:齡ヤ初心者を釣れる言語だからだよ



9:デフォルトの名無しさん
22/08/28 02:31:50.29 nkxO7nQv.net
>>7
ワロタwww
やっぱり金のためかwww

10:デフォルトの名無しさん
[ここ壊れてます] .net
そういえば、辞書をデータベースとして、「しりとり」を自動生成する
プログラム、それの作成って、あまり聞いた覚えがない(ような気がする)。
どうなんでしょうか。

11:デフォルトの名無しさん
[ここ壊れてます] .net
>>9
面白いんじゃね?
作ってみれば?
売れないとは思うけど趣味なら

12:デフォルトの名無しさん
22/08/28 03:05:35.67 AybiM2h+.net
ゲーム性を追加しないと面白くないような
クロスワード自動生成とかにすれば

13:デフォルトの名無しさん
22/08/28 08:05:24.81 gOapjWvD.net
>>6
システムは土台から決めていく
クラウドなどのシステム構築運用 → フレームワーク → プログラミング言語
つまり、AWS → Ruby on Rails → Ruby
ところがプログラマーが勉強する順番は、逆の方向。
身近な言語から決めていく。
つまり、Python → Django
これに初心者は引っかかる。だから、Pythonが流行る
YouTube で有名な雑食系エンジニア・KENTA が、
言語に引っ張られて、Laravel, Django から始めたらいけない、
Rails でポートフォリオを作るべきと言ってる
将来、機械学習をやりたいからという理由で、
ポートフォリオをDjangoで作ってはいけませんとか言ってる
プロは10言語ぐらいやるから、言語から決めない。
システム構築運用とかフレームワークが重要
適材適所で言語を決めることを、どこの企業でも言ってる。
自分は機械学習の勉強がしたいから、
Python, Djangoで作りますという香具師を、企業は嫌う

14:デフォルトの名無しさん
22/08/28 08:41:27.77 nkxO7nQv.net
Azureなら
Azure→.NET→C#
みたいな感じか…

15:デフォルトの名無しさん
22/08/28 10:26:43.23 dJjJY2T4.net
結構ある気がするけどな
単語に制限かけてその中で最長目指すとかwindowsのりんなに勝つとか

16:デフォルトの名無しさん
22/08/28 10:26:47.63 eheXmDej.net
Railsって何年前の話をしてるんや。
今もRailsと言っているなら時代遅れ。
自分の商材を売るためみたいな理由があるのは間違いない。

17:デフォルトの名無しさん
22/08/28 10:35:34.31 ntsn5RH7.net
Rubyガイジって本人なんだろうなぁwと思うわw

18:12
22/08/28 17:02:54.18 gOapjWvD.net
かよちんchannel
【半年間使ってわかった】PythonのwebフレームワークDjangoを学ぶメリット・デメリット
www.youtube.com/watch?v=783JIyyyxMk
かよちんが、初心者はRuby on Rails から始めた方が良いと言ってる
かよちんは大学生で未経験から、Railsのポートフォリオで就職した。
1年運用をやって、開発したいから転職した
転職先では、Django をやってる

19:デフォルトの名無しさん
22/08/28 22:38:05.69 zyyCyndR.net
マジックナンバーは良くないって言われるけどどのような物を避けるべきみたいな指針とかあるの?
a=0xFFFF & b;
みたいなマスク値とかは直書きされていることが多いように思うけど
あとパーサーでフィールドの判定値とかもそのまま書かれていることが多い気が

20:デフォルトの名無しさん
22/08/29 01:25:21.20 EHGRAzK3.net
PythonでOpenCVって結構聞くけどOpenCVってPythonで書き換えられたの?
ただのラッパーじゃなくて?

21:デフォルトの名無しさん
[ここ壊れてます] .net
そんなもの覚えても仕方ない
てか激重3D操作系の基礎部分がスクリプト言語で書かれてるわけねーだろ

22:デフォルトの名無しさん
22/08/29 06:11:33.61 EHGRAzK3.net
>>20
じゃあただのラッパーって認識でいいよな?

23:デフォルトの名無しさん
22/08/29 12:59:29.19 lEmBO42o.net
当たり前
スクリプト言語で高速処理ってのは単にネイティブ吐ける言語のコードに接続してるだけ
その接続を行ったスクリプト言語が書いたって風に装ってるならただの誇大広告

24:デフォルトの名無しさん
22/08/29 13:59:54.02 gmFeBwMt.net
ただのラッパーとそうじゃないラッパーの境目がわからん
それともラッパーはすべからく”ただのラッパー”なのか?

25:デフォルトの名無しさん
22/08/29 14:02:42.35 EHGRAzK3.net
>>23
そうだよ

26:デフォルトの名無しさん
22/08/29 15:03:02.44 2WEc3+ht.net
>>18
二度と変わらないようなものなら別にいいとは思うけど
大抵は定数は定数としてまとめて設定出来るようにしているケースが多いかと
例え1か所しか使ってないとしてもね

27:デフォルトの名無しさん
22/08/29 15:03:48.23 VPsMyzNm.net
須らくの使い方間違ってるぞ御用だ御用だ

28:デフォルトの名無しさん
22/08/29 15:25:02.58 XtVEyX62.net
おすべらかし

29:デフォルトの名無しさん
22/08/29 18:49:41.67 Ns/xsXXa.net
wslのubuntuにインストールしたminicondaからproxy通すにはどこを設定したらいいですか?
~/.bashrcにexportでhttp_proxyとhttps_proxyを追加して、
~/miniconda3/.condarcにproxy_servers追加してます
conda config --showでproxy_serversに設定反映されてることも確認してます

30:デフォルトの名無しさん
22/08/29 22:25:38.48 iMDvJogZ.net
十手持ちの誤用警察か。

31:デフォルトの名無しさん
22/08/30 02:10:13.88 T+dlklhy.net
ド知ろう糖の質問です
フレームワークとライブラリって同時に両方使えるものなんですか?(?_?)

32:デフォルトの名無しさん
22/08/30 02:54:03.55 1QqOIvnF.net
>>30
使えます

33:デフォルトの名無しさん
22/08/30 14:50:50.71 PFffRiy6.net
これ単なるライブラリじゃね って思ってるファイルですらフレームワーク名乗ってたりするし作者の気分だからね

34:デフォルトの名無しさん
22/08/30 18:58:43.15 CvuNCIq6.net
>>32
そんなのあんの?

35:デフォルトの名無しさん
[ここ壊れてます] .net
むしろなんで無いと思うのか
自分で作ってみりゃライブラリ名乗るかフレームワーク名乗るか、作者が決める話だけど

36:デフォルトの名無しさん
[ここ壊れてます] .net
>>34
違うけど?

37:デフォルトの名無しさん
22/08/30 20:07:03.87 PFffRiy6.net
会話になる文章量書け
お前は知識の間違った初心者なんだから

38:デフォルトの名無しさん
22/08/30 20:21:03.21 PFffRiy6.net
時間切れな
態度の悪いアホが質問スレで先生ごっこしてんじゃ何も知識つかねーよあほめ

39:デフォルトの名無しさん
22/08/30 20:25:11.80 A46I7Igy.net
会話になる文章量書け←先生ごっこ
お前は知識の間違った初心者なんだから←態度の悪い先生ごっこしてるアホ
時間切れな←先生ごっこ
態度の悪いアホが←態度の悪いアホ
何も知識つかねーよあほめ←態度の悪いアホ

40:デフォルトの名無しさん
22/08/30 21:07:02.15 9oJv0wUh.net
プログラムの中からプログラムを呼び出すのがライブラリ
枠組みを書くとプログラムを自動生成するのがフレームワーク

41:デフォルトの名無しさん
22/08/30 21:36:51.36 1QqOIvnF.net
>>38
ワロタ

42:デフォルトの名無しさん
22/08/30 21:41:09.61 etfGdTQc.net
>>38
これは草
やるなぁ

43:デフォルトの名無しさん
22/08/30 21:53:51.38 Ljq6PGzh.net
ライブラリとフレームワークは共存できるって既に即答で決着がついてるんだよなあ
蛇足すぎる

44:デフォルトの名無しさん
22/08/30 21:55:01.28 1QqOIvnF.net
>>42
そりゃそうだろw

45:デフォルトの名無しさん
22/08/30 22:01:51.41 X0hMYMLq.net
自分の書いたコードが呼び出すのがライブラリ
自分の書いたコードを呼び出すのがフレームワーク

46:デフォルトの名無しさん
22/08/30 22:28:19.75 0zlZ3sBE.net
HTMLを最近、学んでいて作りたいサイトのイメージすら浮かばないんだけど何か参考にできそうな事ってある?

47:デフォルトの名無しさん
22/08/30 22:40:29.27 CWt3m66c.net
>>45
1. いいなと思うサイトをピックアップする
2. 共通項を探してみる
3. 真似してみる
4. 理論を学ぶ(例えばノンデザイナーズデザインブックを読む)
5. 1に戻る

48:デフォルトの名無しさん
22/08/30 23:25:01.48 O4AMSTyA.net
こちらから呼び出して使わせていただく場合はライブラリと呼ばれることが多くて
こちらに主導権はなくこちらが呼び出されてしまう場合はフレームワークと呼ばれることが多いですね
ただし中間的な存在もあるのでかならずしも明確に二分されるわけではないと思われます

49:デフォルトの名無しさん
22/08/30 23:35:15.36 O4AMSTyA.net
>>45
HTMLはあくまでも表現とUIの静的な基礎を記述するだけだから
少しアレンジするだけでもCSSが必須で
動的な表現やUIを求めるならJavaScriptプログラミングが必須で
表現するものを固定でなく生成させるならサーバーサイドでのプログラミングも必須ですね

50:デフォルトの名無しさん
22/08/31 01:51:58.60 vP2ngpvh.net
HTMLで3Dゲーム作れますか?

51:デフォルトの名無しさん
22/08/31 02:17:26.84 QjUlXYzC.net
canvas タグと javascript を使えば

52:デフォルトの名無しさん
22/08/31 15:29:45.83 hPJ8t1dy.net
意識高い系の同僚が虚数は実在するとか言ってるんですがどうしたら間違ってると分からせられますか

53:デフォルトの名無しさん
22/08/31 15:34:14.23 QQEJYkQP.net
信じればスタップ細胞も実在するし
虚数だって実在する

54:デフォルトの名無しさん
22/08/31 15:49:21.50 8OAd82SA.net
何を以て実在するしないを判断する?
考え方によっては負数だってゼロだって実在しない数なのでは
-1個の林檎はありえないし-1メートルは逆方向に-1メートルであることを計算に便利だから使ってるだけのありえない想像上の数と言われると虚数と似ているのでは
虚数は実在しないけど負数は実在すると誰にでも分かるように説明できるだろうか

55:デフォルトの名無しさん
22/08/31 17:47:41.37 Kq4qby2/.net
どっちでもいい
スレチ

56:デフォルトの名無しさん
22/08/31 17:47:59.37 lgLWduZ+.net
判断もクソも実在しないに決まってんだろアホか数学をなんだと思ってんのかw

57:デフォルトの名無しさん
22/08/31 18:01:48.46 GOYRnrFt.net
いやそれは数学的に考えたら存在しないだけであって
俺的には存在すると思うよ
みんなも自分なりの考えを持つべきだと思う
虚数も虚数だ。お前はいつになったら自分で自己主張するんだ?
お前がいつまで経っても黙ってるから実在がどーのこーの言われんだよ
実在するかどうかは虚数自身で決めろ

58:デフォルトの名無しさん
22/08/31 18:36:02.06 8OAd82SA.net
それこそ数学的にいえば虚数は「存在」するぞ
一体何の証明や定理、公理を根拠に存在しないと思い込んでるの?
まさか虚数という名前を根拠にしてるとか、高校の先生が言ってたとかじゃないよな?

59:デフォルトの名無しさん
22/08/31 18:45:19.17 SRFkQuBk.net
直接存在するのか、それとも概念として考えた結果として、相当するものを存在する、と考えるのか
有理数は存在する?
無理数は存在する?
ゼロは存在する?
負の数は存在する?

60:デフォルトの名無しさん
22/08/31 18:45:33.55 fJDhQWpk.net
虚数が存在しないのは小学生までだぞ

61:蟻人間
22/08/31 18:46:55.32 hXO4gkW+.net
実数の対に演算を定義したら複素数はコンピュータ内部で完全に扱える。
複素数は二次元空間上の回転を表すのに便利。

62:デフォルトの名無しさん
22/08/31 19:31:29.69 lgLWduZ+.net
そもそも数学が形式科学ってこと分かってんのかね 自然科学じゃねーんだから現実とはなんの関係もねーだろーがw
好き勝手ルール作ってその上でどんなコトが成り立つかどうかを考えるってのが形式科学なんだから

63:デフォルトの名無しさん
22/08/31 19:42:47.98 GOYRnrFt.net
>>59
巨乳が存在しないのもね

64:デフォルトの名無しさん
22/08/31 20:01:11.07 mLZrYK8Z.net
>>62
清野さんは?

65:デフォルトの名無しさん
22/08/31 23:44:09.81 kem3tvz1.net
20世紀初頭、ヒルベルトプログラムに端を発する「数学の公理化」は成功に終わった
それ以来数学は完全に論理の世界、人間の頭の中だけに存在するものになった
コンピュータで無理数を具体的に扱うことなどできない
√2, π, eなど具体的に挙げることができる数は加算個しかない
それどころか、加算個無限すらコンピュータで具体的に扱うことなどできない
無限多倍長とは言うが、その「無限」は「メモリがある限り」という意味であって、本当に無限のメモリを持つマシンなど存在しない
人間は簡単に「無限」とか言っちゃうけどね

66:デフォルトの名無しさん
22/09/01 03:16:58.73 zIO07IAY.net
仮想世界はメモリという制約がある限り現実世界を超えることは一生出来ない
仮想世界で何かを行い、そこから結果を得る際には常に何らかの妥協が必要である

67:デフォルトの名無しさん
22/09/01 10:05:18.73 dbQKPphW.net
近いうちに数学用のプログラムでは代数を扱えるようになるだろうから平気だよ
今はまだ算数用のプログラムだから無理数が扱えないだけ

68:デフォルトの名無しさん
22/09/01 15:42:44.83 o/9XiDvu.net
>>57とか>>58とか見ると数学が現実世界を記述してると思ってるやつっているんだなって思った
現実と抽象構造を区別することが出来ないとか生きるのに苦労してそう・・・

69:デフォルトの名無しさん
[ここ壊れてます] .net
前のコメントの流れを受けてわざわざ「数学的にいえば」と前置きして、さらに『実在』ではなく『数学的に「存在」する』とまで強調して言い換えてるのにそんな曲解をするとはな
読解力がなさすぎたり拗らせすぎてるのも生き辛そう

70:デフォルトの名無しさん
22/09/01 17:46:11.19 zIO07IAY.net
そもそもこのスレに居る時点で平均以上の知能はあるだろうから生きるのに苦労するってことはないだろ
>>68も言ってるけど拗らせてマウント取る系の性格の方がよっぽど生き辛いと思う

71:デフォルトの名無しさん
22/09/03 02:03:58.71 WwEyvXMa.net
GNU asの
>subq $40, %rsp
の$ってどういう意味なの?
イミディエイト値指定?っぽいけどググってもソースが見つけられなかった

72:デフォルトの名無しさん
[ここ壊れてます] .net
あってる

73:デフォルトの名無しさん
22/09/03 12:32:57.98 N1+I34Tt.net
サンクス。どこに書いてあるのかと思ったらx86の機種依存の方に書いてあったわ
$がイミディエイト値指定で数字が非0スタートだから10進数
ということはrspから40(dec)減算するで良いのかな?

74:デフォルトの名無しさん
22/09/07 18:55:16.92 sz3ZFf7i.net
海外製で無償公開されているコマンドラインのフリーソフト(オープンソースではない)に対して、
フロントエンドを自作して高機能化(GUIや同時実行による疑似マルチコア対応)をしたいと考えています。
対象ソフトの作者は上記のような機能が使いたかったら別名称の有償ソフトを使うように案内しています。
自分一人でこっそり使うならともかく、公開は訴訟リスク有りと考えたほうが良さそうですか?

75:デフォルトの名無しさん
22/09/07 20:02:52.15 +8VuyZHI.net
>>73
配布する際に有償の部分を含んでいなければ全然問題ない

76:デフォルトの名無しさん
22/09/07 21:54:18.36 ynlD5X4P.net
データベースに関して検索かけて結果を引っ張ってくるような小さなアプリがあります
たとえば名前・年齢・性別の入力欄があるとします
これでソフトウェアの各種操作ごとにログを出力したいですんですが、出力されるログってどういう感じにするのがいいと思いますか?
時間 ファイル名 行番号 関数名までは固定なんですが、肝心の中身部分については特に決まってません
例えば検索ならname=test, age=20, gender=maleみたいな?タブ区切りがいいとかカンマ区切りがいいとか
ただこれだと検索以外のログはどうしようとか。どういう感じで書式決めてますか?

77:デフォルトの名無しさん
22/09/07 23:08:20.50 HpPkDE+z.net
>>75
ログの用途は?
ユーザーが検索ボタンを押したら関数Aが関数Bを呼んで関数Bが関数Cを呼ぶという場合に
検索ボタンが押されたということのログじゃなくて関数A、B、Cの呼び出しを全てログ出力したいの?
もしそうなら市販のアプリでログレベルを設定できるようなやつのデバッグ出力とかトレース出力を参考にするといい

78:デフォルトの名無しさん
22/09/08 22:40:10.20 EIPA0od4.net
MVUパターンって何が良いのでしょうか?
MVVMの方がなるほどわかりやすいとなったのですがMVUの利点などが理解できません

79:デフォルトの名無しさん
22/09/09 23:29:23.30 RWh6Z3IJ.net
Mac上のMeldで差分の確認をしています。Meldでリポジトリのディレクトリを開くと変更
ファイルのリストが表示されて、選択したファイルをダブルクリックすると差分表示の
別ウインドウが開く...
これ、ダブルクリック&別ウインドウがうざいので、ファイルを選んだら同一ウインドウ内の
ビューに差分が表示される、みたいなモードにできます?あるいはそういうことができる
似たようなソフトとか。MacがいいのですがもしなければLinuxやWinでも(仮想環境で実行)

80:デフォルトの名無しさん
22/09/10 10:23:09.78 n4OrwslV.net
GUIのdiffツールでサイドバイサイドの表示ができないやつの方が珍しくない?

81:デフォルトの名無しさん
22/09/10 10:23:43.96 n4OrwslV.net
3-wayに対応してないとかならわかるが

82:デフォルトの名無しさん
22/09/10 11:27:02.07 Fk/vQ1G1.net
たにぐちまことさんの有料の動画見たいんだけど
こんなに高いの?
URLリンク(www.udemy.com)
会員になったら月々の安い金額で動画が見放題、みたいなのはできないの?

83:デフォルトの名無しさん
22/09/10 14:02:20.55 2MbFO6mH.net
Udemy のRuby on Rails では、はむさん・山浦清透が有名だけど、
たにぐちまことは、Rails, Sinatra などをやってくれない
YouTube のBootstrap は良い

84:デフォルトの名無しさん
22/09/10 15:17:52.13 S4JDMDuX.net
>>78
Linux用のMeldは同ウィンドウの別タブで開く

85:デフォルトの名無しさん
22/09/10 20:22:01.27 1Fv2w2Ug.net
来月情シスに異動予定なんやけど、企業の情シスにいるレベルでいいから『プログラミングかじってます』ってギリギリ言えるようになるにはどんな勉強すればええんや?
ちなみに弊社は基本、開発も改修もベンダーさんにまるまる委託や。

86:デフォルトの名無しさん
22/09/10 20:25:38.07 HZYFgNi2.net
VBAできればいいよ

87:デフォルトの名無しさん
22/09/10 20:34:09.61 2MbFO6mH.net
かじるのは、VBA, JavaScript, PHP, Python
プロの開発者の最低ラインが、Ruby on Rails, Linux, Docker, Heroku, AWS

88:デフォルトの名無しさん
22/09/10 20:53:33.77 1Fv2w2Ug.net
>>85-86
とりあえず勉強が趣味みたいなもんやからVBAからやってみるわ。
今の課で応用情報とセキュマネ取って(多分それで情シス行きになった)
もう少し実務的なスキルが欲しかったからちょうど良かったよ。

89:86
22/09/12 00:07:33.81 tB/rhxhy.net
応用情報を持ってるの?
そのレベルなら、Ruby で、
CSV などのテキスト・ファイル操作、配列操作などをやった方が良い
本は、たのしいRuby 第6版、2019 が有名だけど、
山田 祥寛の独習Ruby 新版、2021 も出た
VBA はノンプログラマーの話。
Excel の表操作が主体で、それ以上の発展性がない
Rubyからは、JavaScript, Go など同じ要領で、他言語へ発展できる

90:デフォルトの名無しさん
22/09/12 00:25:36.71 ijP640WQ.net
chromeの自作拡張機能でデベロッパーから通信ログを取得することって可能ですか?

91:デフォルトの名無しさん
22/09/12 07:28:31.22 rnByI8iy.net
長い配列をファイル分割して管理する時に
ファイル結合後のlengthはどこに記載すべき?

92:デフォルトの名無しさん
22/09/12 22:46:50.64 nSgL6x4x.net
>現代的なx86 CPUにおいての64ビット整数演算だと、
>加算は1クロックです。
>シフト演算も1クロックです。
>乗算は4クロックぐらいです。
>じゃあ除算はというと、Intel CPUでいうSkylake世代では、なんと最大 97クロック かかります。
>メモリアクセスの方が速くなりかねないぐらいの遅さです。
なぜ掛け算は速いのに割り算は遅いのですか?
>定数3で割る場合についてもコンパイラは頑張ってくれます。
>①元の値に定数1431655766を掛ける
>➁乗算結果の上32ビットを取り
>③元の値の符号ビットを足す
>④計算結果は下32ビットとする
なぜこれで3で割る計算が出来てしまうのですか?
3で割った余り(0か1か2)を求める速い方法もありますか?

93:デフォルトの名無しさん
22/09/12 23:23:55.70 /ckPAnlx.net
>>91
割り算の筆算を思い浮かべれば分かるが、答えの一桁を求めるだけで複数回の(掛けるのは一桁だけど)掛け算の試行が必要(16個を先行して乗算しとけば良いとは思う)
少なくとも除算の高コスト(面倒くささ)は筆算から想像つかないか?乗算はシフトと加算だけで計算できる

94:デフォルトの名無しさん
22/09/12 23:25:14.58 q6xb21lZ.net
義務教育を履修していれば判るレベルの話だろ

95:デフォルトの名無しさん
22/09/13 12:55:34.23 xGF2ysI+.net
URLリンク(qiita.com)
元記事読めでFA

96:デフォルトの名無しさん
22/09/13 19:08:39.05 aae9uQ50.net
powershellスクリプトで文字列の置換をやりたいのですがうまくいきません。
「文字列の真ん中(先頭および文末以外)の部分に0が3回連続していたら-に置換」を
実現したいと思っていますが、上記を表す正規表現が見つからず困っています。
現状は以下のような状態です。
$str -replace "(.+)0{3,}(.+)","$1-$2"
わかる方いらっしゃいましたら教えていただけますと幸いです。

97:デフォルトの名無しさん
[ここ壊れてます] .net
Regular Expression(正規表現) Part16
スレリンク(tech板)

98:デフォルトの名無しさん
[ここ壊れてます] .net
誘導ありがとうございます!スレ違いすみません、いってきます

99:デフォルトの名無しさん
22/09/13 21:10:34.38 KrVBep+i.net
.NETのXmlSerializer使ったシリアライズ処理で
XmlElementAttribute等々使ってシリアライズ処理をカスタマイズできるけれど
List<T>型のプロパティを持つClassAをシリアライズしたら
<ClassA>
 <T>...</T>
 <T>...</T>
</ClassA>
な感じになるところを、<T>だけがズラっと並ぶようなシリアライズはできないもんでしょうか?

100:98
22/09/13 21:12:04.58 KrVBep+i.net
間違えた
<ClassA>
 <プロパティ名>
  <T>...</T>
  <T>...</T>
 </プロパティ名>
</ClassA>
になるところを
<ClassA>
 <T>...</T>
 <T>...</T>
</ClassA>
になるように、ですわ

101:デフォルトの名無しさん
22/09/13 22:59:12.54 wteulEu6.net
ルールを定義して、変換器を作れば?

102:デフォルトの名無しさん
[ここ壊れてます] .net
IA-32環境のリバースエンジニアリング用デバッガだとOllyDbgとか有名だけど、AMD64環境だと何がよく使われるの?

103:デフォルトの名無しさん
22/09/15 23:08:22.83 wUYVNLcG.net
Web製作・・・とも思ったけどElectronとかTauriあたりのネタなのでこちらで
プログラムの出力結果(BITMAPやPCM)をGUIで表示&再生したんだけど
こういうときってWeb側はどんな感じにするのが定石なの?
動作はバッチ式(一括)じゃなくてパイプライン式(分割)にしたい。動画プレイヤーみたいな感じ

104:デフォルトの名無しさん
22/09/16 13:03:50.44 pgB81iJy.net
import FileSystemHandle from './FileSystemHandle.js'
const kAdapter = Symbol('adapter')
class FileSystemDirectoryHandle extends FileSystemHandle {
/** @type {FileSystemDirectoryHandle} */
[kAdapter]
constructor (adapter) {
super(adapter)
this[kAdapter] = adapter
}
 ・・・
}
というのがあったんだけど、 [kAdapter]やthis[kAdapter]の意味が分からない。
誰か教えてケロ。

105:デフォルトの名無しさん
22/09/16 13:06:33.10 pgB81iJy.net
>>103
これは、FileSystemDirectoryHandle の polyfill(ponyfill)。
場所は:URLリンク(github.com)

106:デフォルトの名無しさん
[ここ壊れてます] .net
web apiを作っていて、どのステータスコードを返せばいいのかで悩んでいます。
400番台と500番台の使い分けを、皆さんどのようにしていますでしょうか?

例えば、ユーザー情報を更新するAPIで
指定したユーザーIDの情報がDBに無い時、もしくは2件以上ある時、その他の論理状態がおかしい時。です。
以下のように400番台の理屈も、500番台の理屈も思いつくので、どちらが正しいかで悩んでいます。
ユーザー情報がない時に限れば404かなという気もしますが、その他の論理異常の時と同じにしたいという思いがあります。
サーバーからすれば「そのリクエストしたIDがおかしいんだからアプリが悪い。同じリクエスト投げても状況は変わらない」と言いたいのですが
この場合はクライアントサイドが原因なので400で良い気もする。

DBの状態が原因なんだから500エラーなのかなという気もするのですが、そうなると究極的には全部のエラーが500番台のエラーになる気もする。

そもそもDBに対象のユーザーIDが無い(複数ある、論理異常)時は明らかにバグだ。バグ前提で考えるのは良くない。
とすると、おかしいのはリクエスト。だから400番台。

と、自分の中でどっちが正しいのか悩んでいる状態です。

107:デフォルトの名無しさん
[ここ壊れてます] .net
>>105
素人だけどCGIとかの実行エラーなんだからそういうのは全部500番代だと思ってた
ファイルがないとかアク禁とかデーモン側のみでスクリプト抜きの話は400番代で

108:デフォルトの名無しさん
22/09/16 19:37:13.05 oAyMZKxN.net
400番台: クライアントに原因のあるエラー (送ったデータに不備ありなど)
500番台: サーバーに原因のあるエラー (データ仕様は正しいがサーバ側の処理が失敗したなど)
不正IDを送られた時に存在しないという結果を返すのはサーバー側から見たらそれが正しい動作なんだから送信側のエラー

109:デフォルトの名無しさん
22/09/16 19:42:58.69 oAyMZKxN.net
てか500て実行時エラーとかDBが落ちてるとか要求の受付時間外とかそういうのじゃない

110:デフォルトの名無しさん
22/09/16 21:34:41.48 Pdv1nxJ2.net
基本は>>107の書いてるようにクライアントとサーバーのどちらに原因があるか
指定したユーザーIDがDBにないのは400番台
指定したユーザーIDがDBに2件以上あるのがDB不整合の状態なら500番台
原因も対処方法が違うのに同じにしたいというのが間違い

111:デフォルトの名無しさん
22/09/16 23:14:26.88 R7zfJ/61.net
そもそもバリデーションエラーやら処理している段階でエラーみたいな内部的なものは
成功時は例えばstatus: 0とか返して正常終了を示す
失敗時はstatus: 1とか内部で設定したエラーコードを返すのが一般的では?
HTTPのエラーコードはwebサーバーなどの都合で発生したエラー用だと思うが

112:デフォルトの名無しさん
22/09/16 23:28:32.48 2cEUPRtN.net
APIが0を返したら正常終了とか古き良き香りになりにけり
RESTful APIならある程度はスタンダードに沿いつつ
ユーザーの責務が何で自分の責務が何かは仕事では必ず決めないといけないんだからそのノリで個々に線引きしていけばいい

113:105
22/09/17 14:24:23.70 iAB+KSrH.net
>>106-
ありがとうございます。
DBにレコードが2件というのは例として不適切でしたが、
とりあえず400を積極的に使う事にします。

114:デフォルトの名無しさん
22/09/17 14:51:03.56 EEEbWrXO.net
> とりあえず400を積極的に使う事にします。
ダミだこりゃ

115:デフォルトの名無しさん
22/09/17 15:37:35.65 slnpqWSw.net
>>112
指定したユーザーIDの情報がDBにないという例のほうが論理異常の例として不適切なんだが

116:デフォルトの名無しさん
22/09/18 01:28:03.79 X0tGJ0Vt.net
>>103
その[kAdapter]は単なるクラスフィールド宣言
this[kAdapter]はそのフィールドへのアクセス
this.hogeがthis["hoge"]と同じことを思い出そう
そして今回はそのkAdapterをシンボルで与えているだけ
const kAdapter = Symbol('adapter')

117:デフォルトの名無しさん
22/09/18 19:43:36.43 fB0C0iJE.net
>>115
有難き幸せ。
constructor (adapter) {
 super(adapter)
 this.adapter = adapter;
}
と書くのとの違いは?

118:デフォルトの名無しさん
[ここ壊れてます] .net
モバイルアプリで使うようなウェブサイトから画像持ってくるようなやつってURLとかのほうが表示速いのかね?
完全に趣味だけどウマ娘HPのHTMLに記されたsrcの文字を指定するだけですぐ反映されるんかな?

119:デフォルトの名無しさん
22/09/19 08:55:48.01 E2P5O1UU.net
>>116
違う
this["adapter"] ←これがthis.adapterと同じ
this[adapter] ←今回はこの形
ここで変数adapterが"adapter"なら同じだが
今回は変数adapterがSymbol("adapter")
つまり両者は異なる
>>117
CDNキャッシュの恩恵に預かれるから独自プロトコルで持ってくるとの比較ならば速くなりうる

120:デフォルトの名無しさん
22/09/19 10:00:30.15 Guc0YHbo.net
>>118
なるほどサンクス

121:デフォルトの名無しさん
22/09/19 10:19:16.65 pZPXfhQS.net
画像が通信経路で勝手に再圧縮されてハッシュが一致しないエラーなんてのがあったな

122:デフォルトの名無しさん
22/09/19 10:48:36.99 9VJdPhWh.net
プロパティにSymbolを使っている理由はプライベートっぽく保護したいからじゃないかな
this.adapterだと外部から自由に読み書きできるけどthis[adapter]だとadapterの値にアクセスできない限り読み書きの手段がかなり限定される

123:デフォルトの名無しさん
22/09/19 12:02:31.85 knJx8Iiy.net
>>118
(あなたがadapter変数としているものは、今回の例では、kAdapter変数ということを
前提として)
kAdapter が変化するならわかるが、今回は
const kAdapter = Symbol('adapter')
と絶対に変化しない定数のようになっているので、結局、何がやりたいのだろうか?
俺はそもそも、Symbol オブジェクト(?)の役割が分かって無い。

124:デフォルトの名無しさん
22/09/19 12:04:04.35 knJx8Iiy.net
>>121
なるほど。
でも、そういうためだけの目的??

125:デフォルトの名無しさん
22/09/19 12:25:27.33 9VJdPhWh.net
Symbolはユニークなオブジェクトを作る
Symbol('adapter') != Symbol('adapter')
コンストラクタ�


126:ノ渡す文字列はただの説明文



127:デフォルトの名無しさん
22/09/19 12:30:36.83 oXPlRBsf.net
Symbolの説明はとほほが分かりやすかった
URLリンク(www.tohoho-web.com)

128:デフォルトの名無しさん
22/09/19 13:30:34.01 knJx8Iiy.net
>>124
そもそも new Symbol("xxx") でなくて Symbol("xxx") と書く理由も
俺は分かってない。

129:デフォルトの名無しさん
22/09/19 13:34:58.09 /08McGz8.net
new なしでクラスのインスタンス作れるというと Kotlin のようだな。

130:デフォルトの名無しさん
22/09/19 22:29:50.30 s9D2fBDK.net
new の有無が話題になるのは、JavaScript かな?
例えば、Number のnew の有無
Number() コンストラクターは、 Number オブジェクトを生成します。
new Number(value)
他の型の値は、Number() 関数を用いて数値に変換することができます。
Number('123') // 数値 123 を返す
つまり、newでインスタンスを作る。
new無しは変換関数

131:128
22/09/19 22:36:56.77 s9D2fBDK.net
>>128
みたいな、ちょっとした書き方の違いで、様々な機能を実現しているから、JavaScript は難しい。
他にも、==, === の違いとか、一々調べないといけないから、時間の無駄
だから、Ruby の方が圧倒的に分かりやすくて、バグらない。
短時間で済む

132:デフォルトの名無しさん
22/09/19 22:56:24.22 3GNptN3X.net
>>129
ただ、Rubyは
・ちゃんとしたローカル変数が作れない。
・ブロックが中括弧ではなく end などで終わったりして面倒。
 i


133:f 文の書き方が C言語と異なる。一方、JSは同じ。 ・ブロックの書き方に統一感が無い。 ・複数行コメントが簡単には書けない。 ・Cの構造体の様なものが書きにくい。JSだと書ける。 JSはやりたい事が大体出来るようになっている。 ただし、Promiseなどがメンドクサイ。



134:デフォルトの名無しさん
22/09/20 00:19:25.28 u2od2H+V.net
>>130
>・ちゃんとしたローカル変数が作れない。
ちゃんとしたローカル変数って何?

135:デフォルトの名無しさん
22/09/20 13:00:38.92 A6jC1TrN.net
>>131
ブロックの中でのみ有効で、ブロックが終わると、外からは参照できない
変数の事。

136:デフォルトの名無しさん
22/09/20 13:50:20.93 Vc6tzv7n.net
>>132
それRubyは作れるでしょ
他の言語か何かと勘違いしてない?

137:デフォルトの名無しさん
22/09/20 16:42:07.32 pMOktr3q.net
>>133
Rubyは、関数スコープの変数は作れるが、ブロックスコープの変数は作れない
のでは。

138:デフォルトの名無しさん
22/09/20 16:47:31.05 D0AJnVXT.net
>>134
Rubyはブロックスコープあるからブロックローカルな変数作れるよ
作れないのはPythonとか

139:デフォルトの名無しさん
22/09/20 23:08:27.26 CPVobQYL.net
>>135
ほんまかいな。

140:デフォルトの名無しさん
22/09/20 23:09:52.94 Iq00CdpM.net
>>136
試せば秒でわかることやろ

141:デフォルトの名無しさん
22/09/20 23:09:56.53 /Bvo4oH4.net
Ruby のブロック変数・num, hash, abc にはスコープある。
ブロックには、do~end と、{ } があって、前後の結合度の強弱が異なる。
each_with_object は蓄積変数・hash
ary = [ 1, 2 ]
num = "num"
hash = { a: 10 }
abc = "abc"
p res = ary.each_with_object( { } ) { |num, hash; abc|
num += 1
abc = num
hash[ abc ] = true
}
#=> {2=>true, 3=>true}
p num #=> "num"
p hash #=> {:a=>10}
p abc #=> "abc"

142:デフォルトの名無しさん
22/09/21 00:22:27.88 7Do5iWA5.net
正直Rubyの話題だとアイツかと思って身構えてしまってマトモに読む気にならん

143:デフォルトの名無しさん
22/09/21 08:15:26.69 LDkUg06y.net
テクスチャ圧縮フォーマットにはS3/BC系、ETC系、PVRTC系などいくつもあって
調べるとかつてはS3TCの特許で揉めたみたいな話も出てくるけど今の特許事情ってどうなっているの?
パテントフリーをうたっているASTCはともかく、他のも普通に使われているように見えるけど使用条件とかよく判らない

144:デフォルトの名無しさん
22/09/22 06:49:00.65 56qGPhg8.net
GitHubとかスタックオーバーフローとかにあるコードを挿入できる入力フォームのコンポーネントの名前ってなんて言うんですか?

145:デフォルトの名無しさん
22/09/22 07:23:09.30 w24JK7Wx.net
自己解決しました
リッチテキストエディタもしくはWYSIWYGエディタって言うんですね

146:デフォルトの名無しさん
[ここ壊れてます] .net
例えば、Ruby on Rails の作者・DHH がCTO を務める、Basecamp 社製のTrix は、

WYSIWYGを実現するリッチテキストエディタ

147:デフォルトの名無しさん
[ここ壊れてます] .net
>>139
判ります

148:デフォルトの名無しさん
22/09/22 13:20:33.56 Z2WQupk3.net
>>144
誰?

149:デフォルトの名無しさん
22/09/22 13:24:08.08 Z2WQupk3.net
Rubyを推す人何人かいるけど
ほとんどの人がRubyしか知らない。
そんな人は何かを推す資格がないと思う。
普通はなにかを推すなら同類の複数のことを熟知していてそれを比べた中でこれがこういう理由でいいと推すものである。

150:デフォルトの名無しさん
22/09/22 13:27:18.05 Z2WQupk3.net
プログラミング言語の場合、
PHP, Python, Rubyのすべてに熟知しててそれでもRubyを推すなら�


151:サの人に対して聞く耳を持てるが そうじゃないならその人は独断と偏見の強い人であり、物事を客観視できない人なんだなという印象しか持ち得ない。



152:デフォルトの名無しさん
22/09/22 13:28:22.37 Z2WQupk3.net
URLリンク(youtu.be)

153:デフォルトの名無しさん
22/09/22 13:37:16.04 u9/ouAZs.net
>>147
まさにこれ

154:デフォルトの名無しさん
22/09/22 13:48:15.74 z6cxsZX2.net
好きなの使えば良いとは思うけど現実的にRubyは使われなくなっているってだけの話なんだよなぁw

155:デフォルトの名無しさん
22/09/22 14:12:44.24 UYzN1nQ5.net
別に推したい理由があるなら推せばいいんじゃね?
それで選択するのは質問者とかなんだし

156:デフォルトの名無しさん
22/09/22 14:13:47.01 UYzN1nQ5.net
俺も.NET MAUI押してるけどFlutterとか知らない
だってDartとかいうクソ言語勉強したくないから

157:デフォルトの名無しさん
22/09/22 16:11:26.10 mhKEBERb.net
一つの言語しか知りませんよと宣言してそれを推すなら別にいいよ
>>130みたいに数時間学べば分かるようなことも知らずに特定の言語を下げるほうがどうかしてる

158:デフォルトの名無しさん
22/09/22 16:18:20.49 WTeW/iJy.net
自分はJS, Python, Ruby, Java, C#, Swift, Go, Rustその他諸々使えるけど
初心者がプログラミングを学ぶのにRubyから始めるのは今でもそこそこおすすめ
ただ仕事でRubyだけを継続的にやっていく状況ではなくなってるのは確かだから
最初に学ぶ1つの言語だけで長く仕事をやりたいみたいな考え方の人にはお勧めしない

159:デフォルトの名無しさん
22/09/22 17:49:15.42 iVXru5E7.net
最近ファイアベースが持ち上げられてる感覚あるけどあれって無料なの?
無料じゃなければAWSやAzureの方がいいと思うんだがどうだろう?

160:デフォルトの名無しさん
22/09/22 18:14:58.97 EgZWqwyS.net
>>155
無料のサービスと従量課金のサービスがある
Webアプリやスマホアプリ向けに特化してて、用途によってはAWSやAzureより管理コストが低い

161:デフォルトの名無しさん
22/09/22 18:39:10.97 81hSOYnq.net
Firebase使うとクライアント側の開発だけで済ませられる
そのかわり安くはない

162:デフォルトの名無しさん
22/09/22 19:01:48.49 Fa2Vuxr9.net
iPhoneしか使ったことないのに
「AndroidとiPhoneどっがいいの?」の質問に
iPhoneと力説するハゲがいた。
わたしはAndroidしか使ったことはないが上記のような質問にどっちがいいと即答することはない。

163:デフォルトの名無しさん
[ここ壊れてます] .net
>>158
iphoneが良いから使ってる人に聞いて、iphoneという答えが返ってくるのは、当たり前では?

164:デフォルトの名無しさん
22/09/22 19:58:04.67 EqL6Qqki.net
マックしか食ったことの無い奴が世界で一番うまいのはマックだ~
って言ってるような滑稽さ

165:デフォルトの名無しさん
22/09/22 20:00:31.61 qLW9OXP3.net
マクドより旨いハンバーガ屋なんてロッテリアしかないだろ。
そしてロッテリアは宗教上の理由で食えないので、マクド一択。

166:デフォルトの名無しさん
22/09/22 20:03:14.78 z6cxsZX2.net
宗教上の理由ワロタw
俺もチョンテリアは同じ理由で無理だけどw
勿論ギャラクチョンも宗教上の理由で絶対に使わない

167:デフォルトの名無しさん
22/09/22 21:28:18.77 H/Y5WlVU.net
>>159
どちらがいいかを聞いているのに
一方しか知らずにいるのに回答するのが論理的でないと言っておるのだ。

168:デフォルトの名無しさん
22/09/22 21:31:01.05 H/Y5WlVU.net
わたしはモスバーガー(そのメニューでは特にテリヤキバーガー)が最高にものすごくうまいと思ってるが
どのバーガーが一番ですか?の問いには素直に分からないと言う。
だってドムドムバーガーなるものは


169:食べたことがないから。



170:デフォルトの名無しさん
22/09/22 21:38:07.61 jZZ4CDei.net
「iPhoneしか使ったことない」人を勝手に「iphoneが良いから使ってる人」にすり替えてるのもよろしくないな

171:デフォルトの名無しさん
22/09/22 21:41:27.75 qLW9OXP3.net
ははーん、あんたモテないだろ?

172:デフォルトの名無しさん
22/09/22 22:38:21.06 b4qmPWCO.net
ちょっとしたツールやロジックの検証はRuby。実用はCかRust
Web系はあんま好きじゃないがJavaScriptを使わざるを得ない

173:デフォルトの名無しさん
22/09/22 22:47:41.25 Wl/eGnn7.net
>>166
反論できないから茶化して誤魔化そうってのは見苦しいね

174:デフォルトの名無しさん
22/09/22 23:53:39.87 XoRPEjFK.net
漏れは、10言語ぐらい使えるけど、Ruby on Rails がベスト
学習環境が良い。
高品質な教科書・ノウハウが多い。
ウェブ開発の技術を学べるので、他言語にも応用できる。
Rails, Bootstrap, jQuery だけで、原始的なレスポンシブのサイトを作れる
Elixir も書きやすいが、ノウハウが少ないため、高品質なライブラリが探せなくて、
皆で同じような低品質なモジュールを自作をするようになる
C/C++ はポインターがあるので、膨大な時間の無駄。
Java 土方は労働環境が悪い。客先・SES で中抜きされる。インターネット禁止。
JavaScript はクラスが出来るまでの、20年以上の言語の変遷を追っていくのが大変

175:デフォルトの名無しさん
22/09/23 00:12:12.31 LkhTrk/Q.net
こいつほど宗教臭さを感じさせるヤツもそうそういないな

176:デフォルトの名無しさん
22/09/23 00:35:12.38 974bIUrR.net
Rubyガイジ丸わかりだからなぁw

177:デフォルトの名無しさん
22/09/23 01:15:22.17 gGLSN0ir.net
ウマ娘の公式サイトをHttpリクエストしたんだけどエラーが出る
何かそういう対策してんのかな?

178:デフォルトの名無しさん
22/09/23 05:34:15.07 exFn1ITS.net
>>170-171
いちいち相手すんなよ...
てかRubyでNGしとけ

179:デフォルトの名無しさん
22/09/23 11:03:51.05 I7ewjGHp.net
>>169
中抜きされるなら良いんじゃないの
ピンハネされるなら良くないけど

180:デフォルトの名無しさん
22/09/24 12:59:46.39 /lLAu03F.net
文字列を定数化する意味ってあるんですか?
そのページでしか使わないんだから、そのまま書いた方が可読性いいと思うんですが
謎に定数ファイルを作って、そこに文字列を定義して、それを使う文化があります。
複数ページに同じ文面を使う場合もあるけど、それを変更される可能性があって
そのたびに定数ファイルに使いされてしまう。
俺は完全に無駄だと思ってるんだけど、
何か良いことがあったりするのだろうか?

181:デフォルトの名無しさん
22/09/24 13:28:22.71 h9hnlpzz.net
定数ファイルってのが外部化されたリソースファイルを指している前提で話すと
まず国際化がしやすい
さらにメッセージは変更のユーザー要求が発生しやすいことから以降のことが言える
文言しか変わってないことを担保しやすいのでテストのコストが抑えられる
場合によっては再ビルドを必要としないので機敏
コミットログ等も分離できるので変更の趣旨を追いやすい
国際化の目処が全くないなど、規模が小さいアプリほどメリットは小さくなると思う

182:デフォルトの名無しさん
22/09/24 15:06:55.96 wgmwIRyk.net
>>175
まともなプログラミング言語ならば
文字列は定数ならばtext segmentすなわちプログラミングコードと同じ読み取り専用エリアに配置されて有利です
一方で可変な文字列かつサイズ固定ならばdata segmentすなわに読み書き可能なエリアに配置されます
さらにサイズ可変な文字列はheap segmentつまり実行中に動的に確保するエリアに配置されて最もコストが高くなります
このような違いがあるため文字列は定数かどうか、可変の場合はサイズが固定なのかサイズまで可変なのかどうかが、非常に重要になってきます

183:デフォルトの名無しさん
22/09/24 15:22:26.07 /lLAu03F.net
>>176
外部化してる、そのファイルを探して、修正項目も探すのがだるいんだよね
国際化しなければメリットないってことか
直接書いた方が修正楽だもんなぁ

>>177
効率考えると定数化したほうがいいんですね
でも、めんどいし分かりやすいから直接書いた方が修正するコストは下がると思うんだよね
エラーコードまで定数化する意味はないですよね?
例えば、200で返せばいいものを定数化してconst OK=200みたいにして
OKにするとか

184:デフォルトの名無しさん
22/09/24 15:34:17.24 TmEhV7P0.net
>>178
文字列を直接書くとか定数ファイルを使うとかいう話は、
その変な仕様の言語もしくは変なローカル規約のせいであって一般的な話じゃない。
そういう不便な状況になっているのがローカルな規約のせいなら規約を変えるべきであるし、
変な言語の仕様のせいならばその言語を変えるか、我慢して使い続けるしかない。

185:デフォルトの名無しさん
[ここ壊れてます] .net
>>138
Rubyで、{・・・} の方のブロックって、普通の場所にいきなり書けたっけ?

186:138
22/09/24 22:26:05.79 L5pk3riv.net
Ruby でファイルのトップレベルでも、do~end, { } を使える。
以下は両方とも、[2, 3] と出力される
VSCode の拡張機能・Code Runner で、
選択したコード片を右クリックメニューから実行する
ary = [ 1, 2 ]
p res_1 = ary.map { |num| num + 1 }
res_2 = ary.map do |num| num + 1; end
p res_2

187:デフォルトの名無しさん
22/09/25 01:00:22.88 7iyOFwBx.net
>>181
Rubyだけ特異な表記
ラムダ式(やクロージャや無名関数など)に対して多くの言語はその引数は中括弧ブロックの外に来る
例えばJavaScriptだと
let arr = [1, 2];
let res1 = arr.map(num => num + 1);
let res2 = arr.map(num => {
 return num + 1;
});
例えばRustだと
let arr = [1, 2];
let res1 = arr.map(|num| num + 1);
let res2 = arr.map(|num| {
 num + 1
});
このように全く異なるプログラミング言語でもほぼ同じ表記になる
mapはあくまでも関数だから丸括弧を取る
そしてmap関数の引数としてラムダ式(やクロージャや無名関数など)が来る
そして波括弧はそのラムダ式(やクロージャや無名関数など)の中身が複数行(今回の例のように1行でも可)の時にブロックとして用いる
特異な表記をしたり特異な解釈をするRubyは学習しない方がよいかもしれない

188:デフォルトの名無しさん
22/09/25 01:10:48.09 xiicOjyE.net
>>182
恥の上塗りやめて~~w

189:デフォルトの名無しさん
22/09/25 01:33:47.94 hevh/BVA.net
>>182
Rubyを学ぶと他の言語を学ぶ障害になるよな
Rubyは色んなことを省略しまくって記述するために色んなところが歪んでいる

190:デフォルトの名無しさん
22/09/25 02:20:38.19 gTVpeMPe.net
タイプ数を減らそうとする方針のプログラミング言語は消えていく
かつて一世を風靡したPerlは没落して消えた
Rubyも没落が激しく消えていく運命

191:デフォルトの名無しさん
22/09/25 02:22:17.85 kQGcz7Hc.net
Matzは尊敬してるけどRubyは好きではない

192:デフォルトの名無しさん
22/09/25 05:35:52.96 PDKGWlWe.net
おれは逆、Ruby自体はそこそこよく考えられた言語だと思うけどMatzは嫌い

193:デフォルトの名無しさん
22/09/25 07:03:41.72 eaSb619B.net
help コマンドを打つと
GNU bash, version 5.0.11(1)-release (x86_64-pc-linux-gnu)
These shell commands are defined internally. Type `help' to see this list.
...
と出てきますがhelpを囲むものが左側はバッククォートで右側はアポストロフィなんですが何か理由がありますか?

194:デフォルトの名無しさん
22/09/25 07:35:27.62 fXZ+ASwp.net
日本語のカギカッコと同じで、右と左で違う記号で囲んでるだけ
プログラム的な話じゃなくて英語の話

195:デフォルトの名無しさん
[ここ壊れてます] .net
本当は‘で開いて’で閉じる(“で開いて”で閉じる)ものなんだけど
ASCIIの時は文字数をゴリゴリに節約したかったんでそれぞれを'と"に纏めちゃった

196:デフォルトの名無しさん
[ここ壊れてます] .net
‘ と ’なんだよな フォントの形が違って見えるだけ

197:デフォルトの名無しさん
22/09/25 15:40:07.14 biezUmQw.net
厳密には ` はグレーヴアクセントだし ' はアポストロフィなので
引用符として使っているのはどちらも代用
バックスラッシュやシングルクォートのほうが馴染みがあるけど実は通称だったりする

198:デフォルトの名無しさん
[ここ壊れてます] .net
UTF8に無事に統一された現代は本物も使い分けできるから困らん
5chのように古いまま取り残されたシステムもあるけど文字参照が通るから使い分けられるんじゃないかテスト
‘ ' ’
“ " ”

199:デフォルトの名無しさん
22/09/25 20:06:46.10 v2Pj0t10.net
""でいいです。。

200:138
[ここ壊れてます] .net
>>181
Ruby では、Enumerable モジュールの戻り値は、
ブロックの有無によって、2種類ある

map { |item| ... } -> [object]
map -> Enumerator

ブロックを渡さない場合は、Enumerator を返して、
外部イタレータとして扱える

201:デフォルトの名無しさん
22/09/26 02:33:00.34 aC/L4xEl.net
FigmaがAdobeに行ったってニュース取り上げられてたけどFigmaってそこでUI作ったらHTMLかなんかに変換する機能とかあるのかな?

202:デフォルトの名無しさん
22/09/26 04:40:48.96 tIU7Oyti.net
>>175
例えば、Ruby on Rails ではエラーメッセージなども国際化されていて、
日本語用のYAML ファイルに、単語などを登録する
accepted: を受諾してください
blank: を入力してください
他にも、モデル名を
member: 会員情報
その属性を
name: ユーザー名
もし、こういうように1つのファイルにまとめず、個別のファイルに書いていくと、
重複して、全てを修正しないといけなくなる
その時に修正漏れを起こさないように、かなりの時間を掛けて、
すべてのファイル・修正箇所を見ていく必要があるので、不可能

203:デフォルトの名無しさん
22/09/26 09:03:11.80 aC/L4xEl.net
MySQLとかってFireBaseとかの代わりになりますかね?

204:デフォルトの名無しさん
22/09/26 10:54:05.21 NmZ8KQlQ.net
>>181
Rubyの場合、{} は、{ key => value } みたいな、Hashと解釈されて
しまうから、何にも無い場所ではブロックとしては使えないんじゃなかったっけ。

205:デフォルトの名無しさん
[ここ壊れてます] .net
$ cp a a1
$ cp a a2
$ cp a a3
をまとめてやりたいときってブレース展開とかで上手く書けますかね?
for を使う方法ならわかりますが

206:デフォルトの名無しさん
22/09/26 14:50:27.77 d5GlFcgh.net
展開にそういう機能はないからムリじゃないかな seqとxargs使えば出来るけどだったらforでもいいような

207:デフォルトの名無しさん
22/09/26 16:47:05.39 EGAvXCTL.net
横なんですけど、例えばパラメータがファイル名に埋め込まれてる実験ファイルが大量にあるような状況で、各パラメータについての多重for文を回してデータを抽出、加工することがあるんですが、cut 辺りが非常に遅いです
こういうの早くするコツありますかね?
それこそ展開が使えると速いんですが、ファイル名が統一されてないときなんかは for 文式に走査せざるを得なくて困っています

208:デフォルトの名無しさん
22/09/26 17:13:30.83 KGSSSIHZ.net
シェルスクリプトのループはスクリプト言語のループに比べても桁違いに遅いし
ループ内で外部コマンド呼び出してたら更に遅くなる
速度が必要なら外部コマンド側でループ相当の処理をさせる

209:デフォルトの名無しさん
[ここ壊れてます] .net
シェルスクリプトで遅いならスクリプト言語
それでも遅いなら事前コンパイルするGC言語
さらなる高速と省メモリを求めるなら非GC言語(C/C++/Rustなど)

210:デフォルトの名無しさん
[ここ壊れてます] .net
書き直したところで速くならない場合もあるから
何が遅いのかと他の言語なら速くなるのかを把握してないと無駄な努力をすることになる

211:デフォルトの名無しさん
22/09/26 19:12:48.53 d5GlFcgh.net
コマンドを起動することが本質のシェルスクリプトで速度云々言い出すのは色んなコトが世代間で伝わっていっていないんだろうなぁとこういうの見ると思う

212:デフォルトの名無しさん
22/09/26 19:20:07.36 EGAvXCTL.net
>>203-205
ありがとうございます
cut が滅茶苦茶遅いのは確認済みなので、とりあえずPythonあたりで同等の処理を試してみようと思います
> 例えばパラメータがファイル名に埋め込まれてる実験ファイルが大量にあるような状況で
というセットアップがそもそも良くないのかなぁとも思いつつ。。。

213:デフォルトの名無しさん
22/09/26 19:36:46.81 7ui+hcDc.net
>>206
システマティックに大量のコマンドを起動するにはどうしたら良いですか、と質問を読み替えればなんらおかしくないでしょ
「世代」とか全然関係ね~老害乙

214:デフォルトの名無しさん
22/09/26 19:51:07.88 BaHy7ID2.net
状況次第だよね
その多重forで外部コマンド多数起動でも速さも使用メモリも困らない状況ならシェルスクリプトでよいし
速さもメモリもシビアな状況で使うものはRustで書いてしまうし

215:デフォルトの名無しさん
22/09/26 21:02:00.88 asYcDi/H.net
>>207
そのセットアップとやらを見直すことに特に障害がないなら見直したほうが早いと思う

216:デフォルトの名無しさん
22/09/26 21:21:59.75 9/gyXHnS.net
>>207
この辺をまず参考にしてみては
URLリンク(stackoverflow.com)
URLリンク(unix.stackexchange.com)

217:デフォルトの名無しさん
22/09/26 23:52:02.74 tIU7Oyti.net
Ruby で作るのが簡単

218:デフォルトの名無しさん
22/09/27 05:35:30.78 f9wenpM6.net
>>200
$ echo a{1..3} | xargs -rn1 cp a

219:デフォルトの名無しさん
22/09/27 12:02:41.52 vP3LfdbR.net
>>199
[何がいいたいかを補足]
C言語の場合、
void func()
{
 int x;
 {
  int y;
  y を使った処理;
 }
 x は参照できるが、y は参照できなくなり、yを参照しようとするとエラーになる。
}
JSの場合もまったく同様の事が出来、"use strict" モードの場合でも、
function func()
{
 let x = 111;
 {
  let y = 222;
  y を使った処理;
 }
 x は参照できるが、y は参照できなくなり、yを参照しようとするとエラーになる。
}
と書くことが出来る。この点、JSはCと非常に似ている。
「スコープ」や「生存期間」の話。
xは、関数スコープ。yは、ブロックスコープ。
ところが、Rubyではこのような「ブロックスコープ」は作れないのではないかと思われる、ということ。
Rubyのブロック関数とは別。

220:デフォルトの名無しさん
22/09/27 23:51:52.61 oW3s344K.net
単なるブロックか。
Ruby には、そういうのは無いかも
{ } で囲むと、Hash になるから

221:デフォルトの名無しさん
22/09/27 23:57:39.82 TrPk/9km.net
Pythonにはあるんだっけ?

222:デフォルトの名無しさん
22/09/28 00:55:41.98 UllJACrH.net
結局MITライセンスってどこに記載すればいいの?
Read meでいいの?

223:デフォルトの名無しさん
22/09/28 08:43:18.58 +fYbTo1x.net
Github - Adding a license to a repository
URLリンク(docs.github.com)
ファイル名をLICENSE または、LICENSE.md にして、ライセンスのひな形を選ぶ

224:デフォルトの名無しさん
[ここ壊れてます] .net
HTMLスレなのかJavascriptスレなのかその他Web技術のスレなのか、どこで聞いていいのかわからないのでここで聞きます。

Cookieの使い方について基礎から勉強しています。
ログイン認証があるサイトって、パスワード情報をCookieに保存しているのですか?
一般的なYahooやGoogleのサイトを表示して、Chromeの開発者ツールで
「ローカルストレージ」「セッションストレージ」「Cookie」といった中身を見てもそれらしきものが無いのですが。

225:デフォルトの名無しさん
22/09/28 11:36:20.40 LfA43n9E.net
またシェルスクリプトが遅いと抜かす愚か者がいるのか
パイプでつなげて外部コマンドに処理させれば速い
外部コマンドはC言語で書かれている
だからシェルスクリプトは遅くない

226:デフォルトの名無しさん
22/09/28 11:38:31.42 RLf9Yg7w.net
>>216
Python はもっと闇が深い

227:デフォルトの名無しさん
22/09/28 11:41:06.54 RLf9Yg7w.net
>>219
Cookie について知りたいのか、パスワード管理について知りたいのか、どっちだ?

228:デフォルトの名無しさん
22/09/28 11:44:30.97 Vg6XXWWJ.net
>>219 一般的には認証通ったらあとはセッションIDだけ保存すんじゃない?

229:デフォルトの名無しさん
22/09/28 12:08:40.25 Vg6XXWWJ.net
>>220
他の人が話してたのはスクリプトの実行速度じゃなくてプロセス生成コストの話だよ
コマンド蹴るのが本業のシェルスクリプトでそこが許容出来ないならスクリプト言語なりなんなり使って無駄を省けっていう

230:デフォルトの名無しさん
22/09/28 13:02:54.35 kZGixsXA.net
>>222
両方です。
一般的なサイトで、ログイン状態が保存されている場合、
ブラウザ側のどこにどういう形で保存されているのか知りたかったということです。
たとえばyahoo.co.jpのクッキーと値一覧を表示してみても、IDやPWらしきものは見えないので。
つまり、>>223のおっしゃる通り、別のもっと難読化された文字列として保存されているということなのですね。
たとえばですが、投稿型のwebシステムで不正なJavascriptを投稿し、閲覧者に実行させることができてしまうセキュリティーホールがあったとして、
それを悪用して、そのサイト用にブラウザに保存されているCookieをまるっと全部どこかに送信するようなことができたとしても、
イマドキのちゃんとしたサイトであれば、そのせいで不正ログインやその他悪いことに使われる恐れはあまり無いということですか?

231:デフォルトの名無しさん
22/09/28 13:41:58.90 ZxjDXT+r.net
>別のもっと難読化された文字列として保存されているということなのですね。
ここが危ういな
パスワードが平文で保存されてないから安全、と捉えてないだろうか

232:デフォルトの名無しさん
22/09/28 15:40:10.03 Jk2txA1W.net
サーバー側でユーザー名とパスワードが一致した場合に
そのユーザー用のセッションキーを生成しそれをクッキーに設定するというのが一般的かと
だからそのクッキーに保存されたセッションキーだけを見たところで何の意味も無いという事
サーバー側でクッキーにセッションキーがあれば、セッションキーから誰かが分かるので
ログイン後のそのユーザーの処理のためのデータ保存等をしたりも出来る
ログアウト時にセッションキーを破棄すれば、その後は再ログインしないとそのユーザーとしてアクセスは出来ない

233:デフォルトの名無しさん
22/09/28 17:35:24.13 jG+wS9Ro.net
>>225
URLリンク(developer.mozilla.org)
Set-Cookie時にHttpOnlyとSameSiteを指定しておけば
ブラウザの脆弱性でも無い限りXSSでCookieを丸っとどこかに送信されるということはない
丸っと送信された場合は単純なセッションID以外の追加の対策を講じてない限りセッションハイジャックにつながる

234:デフォルトの名無しさん
22/09/28 18:30:52.56 RIdEQsh/.net
>>225
>投稿型のwebシステムで不正なJavascriptを投稿し、閲覧者に実行させることができてしまうセキュリティーホールがあったとして
この時点でもうイマドキのちゃんとしたサイトじゃねーよ!というのは
ツッコんではいけないのかな・・・

235:デフォルトの名無しさん
22/09/28 18:51:37.65 O/WDqR6E.net
>>215
C言語だと、
if (1) {y=xxx;・・・} でも同じように振舞うから、ためしにRubyでも
if true
 y = xxx;
 ・・・
end
とやってみたら、駄目で、endの後ろでyを参照できてしまった。
それと複数行コメントが書きにくいこともあって node.js に全面移行した。

236:デフォルトの名無しさん
22/09/28 18:59:38.20 ToxcoP+T.net
PythonもRubyと同じでダメなの?

237:デフォルトの名無しさん
22/09/28 20:23:08.25 6R9dYwhj.net
JavaScriptのプログラムを書くと逮捕されるってマヂですか?

238:デフォルトの名無しさん
22/09/28 21:49:58.73 J5u4MZBt.net
>>230
お疲れ様www

239:デフォルトの名無しさん
22/09/28 22:17:26.26 4YWmzJ6I.net
TXTファイルをCSVに変換して操作したいのですがダブルクォーテーションを区切り文字としないやり方ありますでしょうか?

240:デフォルトの名無しさん
22/09/28 22:38:33.00 2jO0elT5.net
あるよ
なんの言語でやりたいの?

241:デフォルトの名無しさん
22/09/28 22:40:17.26 2jO0elT5.net
言語や環境について何も書かない場合はRubyの例だけが垂れ流されるのがこの板のデフォルトになるがよろしいか?

242:デフォルトの名無しさん
22/09/28 22:43:06.56 Jk2txA1W.net
自分でデコードなど書くなら好きにやればいいけど普通は""みたいな形でエスケープするのが流儀かと
なので、"だけのデータなら""""みたいな形にした方が良さそう

243:デフォルトの名無しさん
22/09/28 23:09:36.85 0sCmeNkX.net
>>234
まあ単なる書き間違いだと思うけどcsvなんだから区切り文字はカンマ( , )な
カンマ自体や改行をデータに含めたいとか要件を書いた方が良いかと

244:デフォルトの名無しさん
22/09/28 23:14:01.17 8tA0YY3G.net
素直にRFC4180準拠にしとくのが吉

245:デフォルトの名無しさん
22/09/29 00:25:20.96 SEBL/pbJ.net
すみません234です。質問が不正でした。txtファイルをCSV形式で操作する際、ダブルクォーテーションにより囲まれた文字列を値とするのではなく、ダブルクォーテーション自体を文字としてJAVAで操作したいです。

246:デフォルトの名無しさん
22/09/29 06:27:37.00 mQhfaXoY.net
>>240
だーかーらー
> カンマ自体や改行をデータに含めたいとか要件を書いた方が良いかと
そういうのを含まないなら単にカンマで分割すればダブルクォーテーションもデータの一部になるだろ
てか、自分で処理するんじゃなくて何かライブラリ的なもの使おうと思ってるのか?

247:デフォルトの名無しさん
22/09/29 07:50:17.17 p0DTtsl5.net
>>240
検証してないけどこんな感じでいいんじゃないか
Files.lines(path).map(line -> line.split(',', -1)).toList();

248:デフォルトの名無しさん
22/09/29 09:20:19.58 DUgkcSyO.net
>>219
Cookie の質問は、この板ではなく、web制作管理板か、WEBプログラミング板へ
Ruby on Rails では、パスワードはbcrypt で暗号化する。
初心者用の本では、セッションID をブラウザのCookie へ保存する
一方、RUNTEQ の動画では、Cookieへ保存するのは危険だから、Redis を使うと言ってる
【エンジニア未経験】転職を成功させるWebアプリ開発の技術選定7選
www.youtube.com/watch?v=K6Us1UXI784&t=170s
>>230
Ruby の複数行コメントは、=begin, =end だから書きにくいけど、
VSCode で、Ctrl + / で簡単に、複数行コメントにon/off できる

249:デフォルトの名無しさん
22/09/29 09:37:19.00 yzYmCLI1.net
オブジェクト指向で
クラス=ニュークラス
変数A=クラス.メソッド(引数)
で他のクラスでメソッドで作った変数Bを変数Aに代入したいとき
returnで返すのが一般的なんかな?
俺他のクラスでプロパティ作ってメソッド内で作った変数Bをプロパティに入れて
クラス=ニュークラス
クラス.メソッド(引数)
変数A=クラス.プロパティ
にしてるんだけど異端か?
なんか遅くなるとかの弊害ある?

250:デフォルトの名無しさん
22/09/29 10:33:39.29 DUgkcSyO.net
Ruby のCSV では、要素内に、クォート文字・ダブルクォーテーション、
列区切り文字・カンマ、行区切り文字・改行を入れられる
クォート文字は、要素を"~" で囲んで、その中に"" と2つ続けて、1文字扱い。
カンマ・改行も、要素を"~" で囲んで、その中に入れられる
require 'csv'
input = <<"EOT"
"a""a","b,b",あ
"c
c","d\nd"
EOT
p input_ary = CSV.parse( input ) # 2次元配列
#=> [ ["a\"a", "b,b", "あ"], ["c\nc", "d\nd"] ]
# 2次元配列を、CSV 文字列に変換する
csv_str = input_ary.map( &:to_csv ).join
puts csv_str
出力
"a""a","b,b",あ
"c
c","d
d"

251:デフォルトの名無しさん
22/09/29 10:36:41.16 DUgkcSyO.net
>>244
それをちゃんとソースコードで書いて、該当の言語のスレで聞けば?
言語とコードが分からないと、答えられない

252:デフォルトの名無しさん
22/09/29 10:40:08.80 yzYmCLI1.net
>>246
ふーん…
そうなのか…
どの言語でも共通の話題なのかと思ってた
当該スレで聞いてみます

253:デフォルトの名無しさん
22/09/29 16:19:49.10 tJn82MVG.net
>>244
メソッドを実行する主体や実行タイミングが
プロパティを読み取る主体やタイミングと違うなら理解できなくもない
メソッド実行とプロパティ読み取りが毎回セットになるべきなら理解できない

254:デフォルトの名無しさん
22/09/29 17:56:54.06 vOlJ4Qt9.net
>>244
説明が究極的に下手
てか後者は破壊的メソッドのこといってるなら、初心者の段階でそんなの描くのはほぼ間違ってる

255:デフォルトの名無しさん
22/09/29 18:48:34.15 p0DTtsl5.net
「他のクラスでメソッドで作った変数Bを変数Aに代入したいとき」というところでどっと疲れるw
ミュータブルやステートフルのほうが便利じゃん!って初心者はまず飛び付くんだけど、経験を経て逆だったことに気付くんだよなあ

256:デフォルトの名無しさん
22/09/29 19:03:40.63 nA4Nikqb.net
そりゃミュータブルから教えるからだよ
i=i+1を教えられて「なんでや!iが0なら0=1になるやんけ!わけわからん!」という段階を経て変数というものは書き換えるものと刷り込まれていく
つまりだいたいC言語のせい

257:デフォルトの名無しさん
22/09/29 19:14:21.35 98MCpLln.net
>>244
データを保持して他のメソッドで使うかどうかで決めるべきじゃない?

258:デフォルトの名無しさん
22/09/29 19:16:34.09 p0DTtsl5.net
いやローカル変数は別にミュータブルでもいいよ
さほど問題にならない

259:デフォルトの名無しさん
22/09/29 19:17:20.00 vOlJ4Qt9.net
デザパタとかアンチパターンとかOOPとか
既存の教えをぶっちぎるつもりなら上位0.1%目指すってこと
そういう気がないなら言われた通りに書きなさい

260:デフォルトの名無しさん
22/09/29 19:17:23.56 yzYmCLI1.net
>>250
別クラスのメソッド内で作った変数Bをメインクラスの変数Aに入れたいときってことなんだが…
まぁなんか見た感じ言語特有らしいのでその言語のスレで聞きましたわ
なんか色々考えてくれてありがとうございます

261:デフォルトの名無しさん
22/09/29 19:30:02.95 xLGmAerI.net
インスタンスの解放を自前でやる言語でなければ好みの問題の範囲だと思うが

262:デフォルトの名無しさん
22/09/29 19:53:42.86 UH+Zd6DV.net
>>256
そんなのCだけじゃん
C++はスマポ使えば自動解放だし
Rustは常に自動解放だし
そもそも今回の件と解放は関係ないし

263:デフォルトの名無しさん
22/09/29 19:59:10.32 ZjyFu9Pk.net
>>253
ローカル変数もイミュータブルで良い
for文などの自動更新変数は手動書き換え出来ないイミュータブル扱いの言語が多いから可能

264:デフォルトの名無しさん
22/09/29 20:55:09.45 HxLzcltj.net
>>244
クラスインスタンスをフィールドやシングルトンなりで長期間保持するならプロパティにする
短期間保持(メソッドやブロック)ならリターンにする
たまにパターンによって複数のメソッド呼び出しをif文で変えてる場合はプロパティにしてるのコードを見かける
個人的には必要な情報をコンストラクタで渡すからリターンで書くけどね

265:デフォルトの名無しさん
22/09/29 20:57:03.64 D9meFc20.net
>>244が宇宙人みたいに見えるw
実際のコードでも提示した方が良いのでは?

266:デフォルトの名無しさん
22/09/29 21:25:54.77 5k0MXCr/.net
バックグラウンドスレッドで数秒毎にメソッドを実行して結果をプロパティに保存
プロパティが変更されたらそれをオブザーブしてるスレッドがプロパティを読んで画面を更新
みたいなのはよくある話

267:デフォルトの名無しさん
22/09/29 21:38:34.72 nA4Nikqb.net
>>260
MAUI Highschoolていう動画を公開してるやつだぞ
最新の動画がまさにそういう戻り値の変な渡し方をしてたから
class Aにメソッドとプロパティがありメソッドの戻り値はvoidで呼び出すと返すべき値をプロパティにセットする
呼び出し側はclass Aのインスタンスを作成してメソッドを呼び出した後にプロパティを参照する
そ�


268:フプロパティはclass A側で保持する意味のないものでもう使わない



269:デフォルトの名無しさん
22/09/29 22:01:24.93 C9z6YVIX.net
>>261
それスレッド間共有メモリの悪手

270:デフォルトの名無しさん
22/09/29 22:17:10.38 mQhfaXoY.net
クラス名や変数名にカナや漢字が使える時代だから
> 変数A=クラス.メソッド(引数)

> 変数A=クラス.プロパティ
ぐらいはいいけど
> クラス=ニュークラス
は違和感あり過ぎ

271:デフォルトの名無しさん
22/09/29 22:23:12.52 o1s2vCU9.net
パース処理を非破壊的に書こうとすると一度しか使っていない似たような名前が増える

272:デフォルトの名無しさん
22/09/29 22:27:41.28 yzYmCLI1.net
>>262
そうするとreturnで返したほうがいいんですかね?
副作用的なやつがあるのかなと
処理スピードが遅くなるとか
今まだ3ヶ月しかプログラミングやってないのでそういう基本的なことができてない

273:デフォルトの名無しさん
22/09/29 22:31:02.94 yzYmCLI1.net
awit asyncの処理だとタスクしか戻らないので変数がタスク以外のときはプロパティを渡すしがないのかなってのはありますね
その感じで覚えちゃってるので

274:デフォルトの名無しさん
22/09/29 22:34:36.22 +nkVuy43.net
>>267
そんな欠陥言語があるのか?

275:デフォルトの名無しさん
22/09/29 22:35:40.90 kOL/SO6R.net
>>257
Delphi経験者はこういうときインスタンスの破棄はどこですべきかとかついつい考えちゃうんですよ
ごめんね

276:デフォルトの名無しさん
22/09/29 22:44:36.45 yzYmCLI1.net
>>268


277: 欠陥じゃないと思うけども… https://i.imgur.com/1lhsFUF.png



278:デフォルトの名無しさん
22/09/29 22:56:36.86 vOlJ4Qt9.net
3か月の段階で非同期処理扱うの早い
それなりに設計もコーディングも能力あげないと同期・非同期は自分自身の手で複雑な構造作る事になるものだから
2~3年後くらいでもいいよそれ

279:デフォルトの名無しさん
22/09/29 23:04:27.06 yzYmCLI1.net
>>271
でもTask.Delayとか非同期処理じゃないとできない処理がたくさんあるんです!
HttpRequestとかも同期処理用のメソッドを書くとVSがこれは古い記述方法ですって言ってくるので非同期処理のメソッド使わにゃならんのです!
ただまぁreturnで値が取れること知れたので良かったですわ
returnとかほぼ使ったこと無い…

280:デフォルトの名無しさん
22/09/29 23:07:47.08 S94uJYpZ.net
>>244をRubyで書くと
class Hoge
 def method(arg)
  b = 1
  return b
 end
end
obj = Hoge.new
a = obj.method(arg)
これを
class Hoge
 attr_reader :b
 def method(arg)
  @b = 1
 end
end
obj = Hoge.new
obj.method(arg)
a = obj.b
にするみたいなこと?

281:デフォルトの名無しさん
22/09/29 23:10:37.49 yzYmCLI1.net
>>273
Rubyわからんけどそんな感じ

282:デフォルトの名無しさん
22/09/29 23:28:24.84 oF7kbS+2.net
もうカオスだなww

283:デフォルトの名無しさん
22/09/29 23:36:39.61 nA4Nikqb.net
>>268
んなこたない
そいつがTask<T>を知らないだけ

284:デフォルトの名無しさん
22/09/29 23:43:26.70 S94uJYpZ.net
変数Aに何らかの値を代入するのが目的なら
後者を選択する理由が自分には見つからない。
何かありそう?

285:デフォルトの名無しさん
22/09/29 23:50:12.89 yzYmCLI1.net
>>277
単純に覚えているので楽だから

286:デフォルトの名無しさん
22/09/29 23:50:27.04 yzYmCLI1.net
何も弊害がないならこのままで行きたい

287:デフォルトの名無しさん
22/09/30 00:02:02.34 6qvEDMgz.net
>>273
まず、def method(arg) の引数argを使っていないので、おかしい
上は単に値を返しているだけで、インスタンスの状態を変えていない。
変数b はローカル変数だから
一方、下は一旦、インスタンス変数に記憶して、それを返しているので、
インスタンスの状態が変わっている
つまり、上と下ではインスタンスの状態が異なる

288:デフォルトの名無しさん
22/09/30 00:10:24.60 HVJ0/rg+.net
てかrubyでmethodとか安易に使うなよ
Object#methodが既に存在するのオーバーライドしてるだろ

289:デフォルトの名無しさん
22/09/30 00:20:13.14 Oln8rmkE.net
273だけど良かれと思って横からコードでっち上げたけどやらないほうが良かったか。
話ずれてしまったな。

290:デフォルトの名無しさん
22/09/30 00:39:44.81 xDSUJNnu.net
正直この板でrubyって見るだけでげんなりする

291:デフォルトの名無しさん
22/09/30 00:52:21.47 IIgnubfp.net
>>279
まじか
そんな理由ならやめとけ
必要もなくメソッドとプロパティが密な依存した構造になってるから使いにくいしメンテもしにくい
Task<TResult>調べろよ

292:デフォルトの名無しさん
22/09/30 00:54:46.03 ogT7+hOz.net
>>280
>つまり、上と下ではインスタンスの状態が異なる
それが質問者の比較したい事なんだから別にいいんじゃない?

293:デフォルトの名無しさん
22/09/30 01:12:19.29 1oMlUJQ7.net
こちとらなるべく状態を持たせないように腐心しているというのに

294:デフォルトの名無しさん
22/09/30 01:27:01.26 MNhQMAyj.net
>>272
おそらく何か作りたいものがあってそれを達成するために色々と情報収集をしてるんだろうけど
正直、レベル1でラスボスに向かって一直線に突き進んでるようにしか見えない
もう少しお使いクエストで寄り道しつつレベル上げしてみたら?と思ってみたり

295:デフォルトの名無しさん
[ここ壊れてます] .net
とりあえずプログラミングにおいての「破壊的」「状態」「副作用」の言葉の意味をググっとけ、でなぜこれが増えると良くないのか理解すべし

296:デフォルトの名無しさん
22/09/30 02:13:44.17 6qvEDMgz.net
そりゃ、関数型のElixir みたいに状態を持たない方が良い。
でも、それではプログラミングが出来ないので、状態を持ってしまう
例えば、ログイン状態。
ログインしているか、していないかとか

297:デフォルトの名無しさん
22/09/30 06:12:32.58 RfOZtvxf.net
なんで極論になるんだよ
アプリケーションから一切の状態を取り除くのは難しいという話と
状態を持たせる必要がないのに手癖で毎回持たせてしまうという話
1と99くらいかけ離れてるだろ

298:デフォルトの名無しさん
22/09/30 06:12:59.16 RfOZtvxf.net
無駄に状態を持たせることのデメリットとして状態依存のバグが出やすいことに加えてリエントラントにならないこともあるな
スレッド安全性が低い

299:デフォルトの名無しさん
22/09/30 06:17:21.47 RfOZtvxf.net
状態依存のバグってのは例えばメソッドaの次にbを呼ぶと問題ないんだけどbaの順に呼ぶと結果が化けるとかaaと2度呼ぶとおかしな結果が返るとか
そんなミスしないよと思っていても規模や複雑度が増すにつれリスクは上がるしソースレビューで担保するのが線形以上に難しくなっていきがち

300:デフォルトの名無しさん
22/09/30 07:06:46.64 +8/hJOWJ.net
とりあえず基本はreturnで返すようにします

301:デフォルトの名無しさん
22/09/30 08:40:48.42 h8M2T0X1.net
もうこのスレにはレス返さなくてもいい
C#やってんのにRubyのコードとか見せられても混乱するだけでしょ
続きはC#のスレで

302:デフォルトの名無しさん
22/09/30 08:54:47.02 Oln8rmkE.net
非同期ってむずいよね

303:デフォルトの名無しさん
22/09/30 08:57:53.57 jNFohT4i.net
これでもasync/awaitのおかげで随分簡単になったんだがな

304:デフォルトの名無しさん
22/09/30 10:40:05.21 qjyZys7q.net
スレリンク(mango板)
解いて!

305:デフォルトの名無しさん
22/09/30 10:43:28.53 qjyZys7q.net
スレリンク(mango板:5番)
こっちやった。おまえら解けるか

306:デフォルトの名無しさん
22/09/30 16:12:49.31 Uqj5A2v6.net
本来裏側でロードさせても表側の操作は自由に出来るって高度な技術だったからな
非同期とかいうので僅か経験3か月のヤツでも、お手軽にできるようになってるのが凄い時代になったと思う

307:デフォルトの名無しさん
22/09/30 16:55:56.16 jNFohT4i.net
>>299
スレッド作成して走らせてミューテックスでタイミング合わせて裏スレッドが終わったかどうかをスレッドオブジェクトでチェックしてまだならタイマーセットして再入してっていうコードを関係しそうな関数毎に一々書いて
非同期関数を一つ作るだけでコードがあちこち散らかって異様に見づらくなることもあったからasync/awaitは偉大

308:デフォルトの名無しさん
22/10/01 14:55:09.73 OpILS/7a.net
MySQLなどのトランザクションで、BEGINしてから、COMMITするまでに
なんらかの事故でアプリがダウンした場合、どうなる?
ほとんど同じことかも知れないが、MySQLとアプリがTCP/IP通信中に通信が
切断されるとどうなる?

309:デフォルトの名無しさん
22/10/01 15:03:24.83 OpILS/7a.net
>>301
これかな。
URLリンク(stackoverflow.com)
[Q]トランザクションをデータベース (SQL Server など) にコミットしないとどうなりますか?
クエリがあるとします。
begin tran
-- some other sql code
そして、コミットまたはロールバックするのを忘れます。
別のクライアントがクエリを実行しようとすると、どうなりますか?
[A]
トランザクションをコミットまたはロールバックしない限り、トランザクションはまだ「実行中」であり、ロックを保持している可能性があります。
クライアント (アプリケーションまたはユーザー) がコミット前にデータベースへの接続を閉じると、実行中のトランザクションはロールバックされて終了します。

310:デフォルトの名無しさん
22/10/01 15:18:27.68 +X1R3SPo.net
トランザクションタイムアウトがあるから放置されたら一定時間でロールバックする

311:デフォルトの名無しさん
22/10/01 16:11:59.97 b3YOgUhU.net
>>303
詳しく。
トランザクションに関するタイムアウトといえば、他の誰かがトランザクションを
実行中に、BEGINしようとすると待機することがあるが、その時に待つ時間の最大値
を指定できる、と書いてあったような。
それとは別の話?

312:デフォルトの名無しさん
22/10/01 18:18:34.32 +X1R3SPo.net
そらロックタイムアウトだな
タイムアウトもいろいろある
ググれ

313:デフォルトの名無しさん
22/10/01 22:18:52.51 WF3iEAg3.net
無限に表ロックされたら、システムが動かない。
クラッカーは、そういう攻撃をするはず
0.1 秒でもロックされたら、大変

314:デフォルトの名無しさん
22/10/01 23:26:07.14 M80TOT3i.net
****で通信の開始要求だけやって、送った側が意図的に受け取らないようにして、サーバーが勝手にタイムアウトするまで待たせる
そうするとタイムアウトまでkillされないスレッドが溜まりまくってサーバーは死ぬ
今の時代サーバー負荷かける攻撃手段なんて無限にあってよっぽどデカいところじゃなければ狙われたら終わり

315:デフォルトの名無しさん
22/10/02 00:02:13.36 ZWlCDBNf.net
データベースサーバーに直アクセスされてる時点で終わってるやん

316:デフォルトの名無しさん
22/10/02 00:04:48.18 451ZFC4H.net
>>301
どっちのケースも通常はすぐセッション落ちてロールバックじゃないかな
DBMSによって違いがある可能性もあるので試してみないと分からないけど

317:デフォルトの名無しさん
[ここ壊れてます] .net
値型の変数では、その変数に対応するメモリ上の場所に値が直接入るとのことですが、その値の表現はどこで規定されているのでしょうか?
例えばテキトウですが、「"あ"という文字はメモリに入っている状態としては"0001"である」みたいなマッピングはどのレイヤーで決まっているのか知りたいです

318:デフォルトの名無しさん
22/10/02 11:02:43.84 OMFycnXw.net
文書のアウトラインの構造って
H1 プロジェクト名
H2
H3
H2
...

H1 プロジェクト名
H1
H2
H1
...
ってどっちがいいの?
前者の方が一貫性はあるが
後者の方が階層が深くならないから無駄がない気がする

319:デフォルトの名無しさん
22/10/02 13:19:56.55 D5S18uSu.net
前者がいい
URLリンク(developer.mozilla.org)
> 複数の <h1> を使用することは HTML の仕様では認められていますが、ベストプラクティスとは見なされていません。<h1> を 1 つだけ使用することは、スクリーンリーダーの利用者にとって有益です。

320:デフォルトの名無しさん
22/10/02 13:31:18.93 w76y/xOG.net
>>310
文字コードの話?
今でこそUTF8が普及しているけど、昔は色んな文字コードが使われていた
「あ」はUTF8だと3バイトで0xE3 0x81 0x82のように定義されている
ググれば文字コード表が見付かると思う

321:デフォルトの名無しさん
22/10/02 13:59:58.47 D5S18uSu.net
>>310
言語による
たとえばJavaなら言語仕様とStringクラスの仕様で内部でUTF-16(またはコンパクト文字列)が使用されることが決められてる
Unicodeの文字セットにおける「あ」のコードポイントは16進数で 30 42 と決められてる
これをメモリやディスクに置くときのエンコーディング方式としてUTF-16を適用すると、同じく 30 42 になる(UTF-16LEなら 42 30)

322:デフォルトの名無しさん
22/10/02 14:32:06.87 9LI4ZhW2.net
>>311-312
分かるけどHTMLの場合意味的に<body>と<title>がh1相当とも見なせるから<body>の子レベルから複数の同レベル見出しタグ作りたくなるなぁ
個人で持ってる人の目に触れない系のMarkdownは#を複数並べちゃったりしてるな body->h1->なになにってやるとルートが2個あるように感じる

323:デフォルトの名無しさん
22/10/02 14:40:54.56 V2KGQQGK.net
値型の変数の話じゃなくなってない?
まず>>310の変数とメモリに関する理解があやふやな点を正してやった方がいい気がするが

324:デフォルトの名無しさん
22/10/02 15:03:26.77 D5S18uSu.net
>>315
titleなんてブラウザのタイトルバーとかにしか出ないしコンテンツじゃないからh1と内容がほぼ同じになるページがあってもいいよ
おまけにtitleにはサイト名やサービス名が入ったりするので常に同じとはならないし
機械との対話に慣れすぎると冗長=悪という感覚が身に付きがちだけど、HTMLを含めて人間向けのドキュメントって読みやすさのためにある程度の冗長性は許容されるべきものだと思う
bodyの子としてnavとかもあるわけで、ルートが一つというのもちょっと違うかな

325:デフォルトの名無しさん
[ここ壊れてます] .net
>>310
それはコンパイラと実行環境じゃね?
でprintfデバッグして表示したメモリ番地は仮想化されたものだから意識する必要無し
少なくともフツーのOSでは

326:デフォルトの名無しさん
22/10/02 18:36:02.22 2Rps0pJb.net
310です
ありがとうございます
プログラミング言語ごとにどの文字コードを使うかが決まっていているということですね
ではビルド後の実行ファイルにどの文字コードを採用しているかみたいな情報も書き込まれているのでしょうか?

327:デフォルトの名無しさん
22/10/02 19:07:27.83 fl0K/H95.net
もちろん今はコードとしてはユニコード一択
ユニコード以外の過去の呪縛に囚われたままのダメな言語に手を出してはいけない
焦点はユニコードのデータ表現
外部データ表現はすなわちネットやファイルなどで用いるデータ表現は現在はUTF8一択
UTF8以外の過去の呪縛に囚われたままのダメな環境に手を出してはいけない
内部データ表現すなわちメモリ上で扱うユニコードのデータ表現は2通り考えられる
一つはUTF32つまりユニコードを固定長で扱えるメリットが非常に大きい
もう一つは外部データ表現と同じUTF8をそのまま変換せずに用いるメリットと引き換えに可変長コストを払う
変換コストと可変長コストの両方を払うUTF16を用いる場合もある


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch