スレ立てるまでもない質問はここで 160匹目 at TECH
[2ch|▼Menu]
[前50を表示]
250:デフォルトの名無しさん
22/07/04 23:01:32.40 vMfPnVT6.net
ハゲが好きな言葉「ハゲ」

251:デフォルトの名無しさん
22/07/04 23:10:33.35 lOMBrPIF.net
>>243
お前頭悪くて >>237 から >>240 を読んでも分かってなさそうだし、ちょっと暇だから詳しく書いてやる。
BCD を使う目的は、10進数と 2進数の変換コストを下げるためな。桁数がいくらでもあるような値のそんな変換、それそのものが相当なコストだろ?
だから BCD ってのは 0~9 という限られた値だけを使って、10進数との変換を簡単にしてる。
1バイトで 10進数 1桁表現だ。分かるか?
ここまで分かれば、この表現での筆算式演算ルーチンはお前でも書けるな?
で、今回は 32bit 演算器があるわけだから、それを効率よく使いつつ BCD と同様の目的を果たすのが 1000000000進数表現な。
10進数の 999999999 は 0x3B9AC9FF で、32bit に納まるのは分かるな?
0x999999999 なんてバカな表現にしなければ、1バイト/桁の筆算と同じ要領で計算できることが分かるな?
頭使えよ

252:デフォルトの名無しさん
22/07/04 23:25:53.96 ttcTbGc1.net
>>234が10進数で書いているから入出力は10進数で確定
あとはどういう演算か桁数はいくつかに依って10^n進数演算をしたほうが有利な場合もあれば2^n進数演算をしたほうが有利な場合もある

253:デフォルトの名無しさん
22/07/04 23:43:32 lOMBrPIF.net
>>247
んまあ実際乗算を筆算でやる場合のコストはオーダー n2 だから、式が長い(計算回数が多い)なら変換コストを払って2進数にしてしまうのがいいかもね。
でも今回は小数が欲しいから、2進数で計算しちゃうとその帳尻会わせも面倒そうね。

254:デフォルトの名無しさん
22/07/05 00:39:40.83 IDOVcw6H.net
お前らほんと面白いなw
なんでJavaのBigDecimalみたいなのを自分で実装する話で
参考になるアルゴリズムを聞いただけで荒れるんだよw
知らないなら知りませんって言えばいいじゃんか
なんでいちいち文句言うんだよww

255:デフォルトの名無しさん
22/07/05 00:42:50.75 IDOVcw6H.net
それにしても昔の人は同じことをやってるはずなんだが
この問題、アルゴリズムとして確立されてないんか?

256:デフォルトの名無しさん
22/07/05 00:51:39.12 jgcEU6+C.net
>>249
荒れるもなにも、とっくに固定小数とか筆算法って出てるじゃん。
それで何が不満なのかくらい書いたらどうだい。
というか、つべこべ言ってないでまず作ってみろよ。

257:デフォルトの名無しさん
22/07/05 01:34:42 IDOVcw6H.net
>>251
アルゴリズム名が知りたいね
筆算法なんてコンピュータで使われてないし

258:デフォルトの名無しさん
22/07/05 02:23:33.79 xGDM+mzu.net
不遜メソッド効きすぎwww

259:デフォルトの名無しさん
22/07/05 07:56:46.50 h2Xvwxj0.net
>>249
△知らないなら知りません
◎書けないなら書けません
>>235

260:デフォルトの名無しさん
22/07/05 07:57:54.68 EOMm60h3.net
>>252
使われていますよ、整数演算をきちんとしたいのならそれしかないのでは?

261:デフォルトの名無しさん
22/07/05 08:11:42.70 jgcEU6+C.net
>>252
名前を知ってどうするの?
そこそこプログラム書いてりゃどんな方法なのかは分かるし、使われてないなんてアホなことも言うわけもないぞ。
多ワード乗除の基本中の基本であって、他にどうやるの?ってレベル。
2進数の掛け算とか、掛ける数分ループで足しちゃう人?

262:デフォルトの名無しさん
22/07/05 13:49:08 IDOVcw6H.net
>>256
アルゴリズムの名前を聞くのは
それについて調べるだけに決まってるだろw

おまえ、すでにあるアルゴリズムを
想像で再発明するんか?
アホやなぁ

263:デフォルトの名無しさん
22/07/05 14:18:53.50 fV10ArOB.net
>>257
つべこべ言わず手を動かせよ。
いつも口ばっかりと言われてるだろ?

264:デフォルトの名無しさん
22/07/05 15:13:51.38 Gakk+kZM.net
「アルゴリズム 筆算」を検索したら普通に見つかったこれ、面白かったよ。
超高速!多バイト長整数の計算手法
>>257
コードは書かねぇわ検索はしねぇわ、しょうもねーな

265:デフォルトの名無しさん
22/07/05 15:24:20.46 CUrAgxNd.net
宿題は宿題スレでやれ

266:デフォルトの名無しさん
22/07/05 16:09:18.14 IDOVcw6H.net
>>259
小数がね~だろ

267:デフォルトの名無しさん
22/07/05 16:15:09.12 Gakk+kZM.net
>>261
頭使う気が皆無というのがすげーな

268:デフォルトの名無しさん
22/07/05 18:44:23.54 oaMEO65p.net
>>256
>多ワード乗除の基本中の基本
その基本中の基本が自力では書けない人がほとんど、というのが、今の日本の計算機工学のお馬鹿さを如実に示していると思いますね
誰か >>235 の改良版を公開してくれませんでしょうかね、全然期待していないけど‥‥

269:デフォルトの名無しさん
22/07/05 21:51:37.18 EgFCyJS1.net
どうした?
散々 QZ に言いたい放題に言われ続けても実装が出せないのか?
馬鹿ばかりだな‥‥

270:デフォルトの名無しさん
22/07/06 03:26:05.47 6UOK9K5O.net
BigDecimal は src.zip を解凍すりゃソースが出てくるのに…

271:デフォルトの名無しさん
22/07/06 04:04:41.36 eCAmRTvB.net
なんか最近C++スレでも整数環上でのFFTも理解してないカスが暴れてるけど、このスレも同じノリになってきたな
なぜ?

272:デフォルトの名無しさん
22/07/06 04:10:59.60 7DPZ2tJL.net
整数環上でのFFTを知ってる程度の人間が
マウント取ってるからじゃないですかねぇ

273:デフォルトの名無しさん
22/07/06 11:48:52.42 MXaUuSJv.net
馬鹿にレスを与えないで下さい
馬鹿が居憑いてしまいます

274:デフォルトの名無しさん
22/07/06 13:34:25.61 PJvDCkI9.net
>>267
何も理解してなくても何か言った気になれる便利構文

275:デフォルトの名無しさん
22/07/06 20:01:10 dC6yewxo.net
>>266
彼のコードを見ているけれども、一般的な乗算に展開できるほどの抽象度が足りないですね
もっと汎用的に書かないのならば単なるオナニーですよね
少なくとも >>235 くらいには汎用的に書いてほしいのですけど‥‥

>>265
どこの URL の src.zip を圧縮解除すればコードが手に入るのか ****具体的に**** 記述できますか?

276:デフォルトの名無しさん
22/07/06 22:26:45 6UOK9K5O.net
>>270
ファイル名は間違ってるかもしれないが、SDKのインストール先直下のディレクトリにzip(もしくはjar)としてライブラリのソースは入ってるのよ

277:デフォルトの名無しさん
22/07/06 22:32:35.76 6UOK9K5O.net
>>270
またEclipseとかIDEではソース中で使われてるBigIntegerとかから実装にジャンプするとzip中の対象ファイルがエディタで開かれる

278:デフォルトの名無しさん
22/07/06 22:39:05.29 6UOK9K5O.net
>>270
これは古いバージョンだけど
URLリンク(github.com)
とか、GitHub にも置かれてる

279:デフォルトの名無しさん
22/07/07 02:33:54.03 /of+H6+2.net
こいつ有名な荒らしだから相手しない方が良いよ
不毛なことしか書けない人

280:デフォルトの名無しさん
22/07/10 15:25:18.55 QCQOT/0O.net
>>271
ちゃんとした情報を出してくださいね
そんないいかげんな情報では動く気にもなれないの、馬鹿

281:デフォルトの名無しさん
22/07/10 15:25:51.45 QCQOT/0O.net
>>272
エクリプスなんて使いたくないの、xyzzy でやる方法を教えてね

282:デフォルトの名無しさん
22/07/10 15:26:07.43 QCQOT/0O.net
>>273
新しいバージョンをお願いね

283:デフォルトの名無しさん
22/07/10 15:26:50.57 4uphdAWi.net
>>274
有名でもないし嵐でもないわ

284:デフォルトの名無しさん
22/07/11 17:40:53.28 RJHpoZJ0.net
>>277
コア技術でもないのに最新版を要求するクズっぷりに草

285:デフォルトの名無しさん
22/07/12 02:18:29.11 Ddw+6qP5.net
Javaで「文字列がヌルも含めた空文字である」を評価するとき、例えば
if (str == null || str.isEmpty()) としますよね? でこれは短絡評価によりstrがnullのときは
str.isEmpty()は評価されないのでNPEは発生しないと。
ここから質問ですが、これの否定式を作る場合に、単純にドモルガンを適用して
if (str != null && !str.isEmpty()) でいいですよね?
一般的に元の式が短絡評価込みで問題ない場合、単にそれの否定をとったりしても
問題は生じない、ですよね? というか単純に否定の式を書くべきですよね?(どこかで順序
を変えてはいけない) というか
if (!(str == null || str.isEmpty())) が無難かもしれないですが、場合によってはバラして
簡略化したいですよね? そのとき項の順序さえ変えなければあとは論理法則を適用して
変形していいですよね? というか

286:デフォルトの名無しさん
22/07/12 02:24:55.92 Ddw+6qP5.net
あと、論理的には問題ないように順序を交換してその項が消える場合は
順序を変えてもいいんですかね? とか

287:デフォルトの名無しさん
22/07/12 09:15:17.45 r0oulnz0.net
動作上の問題はない
最適化ガーとか言い出すド阿呆は居るかもしれない
んだが、普通はnullだと異常ルートでreturnさせたりするから、空の判定を書くことが多いんじゃないかなという経験的感想

288:デフォルトの名無しさん
22/07/12 09:19:02.27 r0oulnz0.net
>>282
正常ルートをブロック化すると無駄なネストが増えちゃうから
俺ならそんなコード書かれてたらレビューで指摘する

289:デフォルトの名無しさん
22/07/12 09:22:53.29 ZUXbswHw.net
>>283
ブロック化というか、
if (str == null) return;
的なものを最初の方に置いておくってことじゃね。

290:デフォルトの名無しさん
22/07/12 09:23:28.92 ZUXbswHw.net
なんだ自己レスかよw

291:デフォルトの名無しさん
22/07/12 09:33:25.75 46BVSOic.net
kotlinにしてisNullOrEmptyにしないからそうなる

292:デフォルトの名無しさん
22/07/12 10:05:16.64 8furZaV3.net
twitter apiの質問ってここでいいですか?

293:デフォルトの名無しさん
22/07/12 11:10:56 oE4SglJp.net
最近の言語はnullを廃止して安全にした言語が増えてきたね
Rustなどのようにnullを無くして静的な型チェックでnull関係のミスをコンパイル時点で完全に防ぐ言語がオススメかな

294:デフォルトの名無しさん
22/07/12 12:27:47 cntCnL4D.net
変数を何千、何万という規模で使うようなプログラム作ってる人は
その何千以上の変数名を全部自分で考えて付けてるんですか?基本的に命名規則に従って
なにかしらの手抜き方法とかあるんですか?

295:デフォルトの名無しさん
22/07/12 12:30:38 F2coDuKO.net
>>289
全部グローバル変数なら命名も大変だろうが、小さいスコープ内なら大変じゃないよ

296:デフォルトの名無しさん
22/07/12 12:49:34.65 lZD1gQnq.net
>>289
まともなプログラム&言語ではグローバル変数を滅多に使わない
関数やクラスなどの中に閉じた変数を使うからその中で名前を区別できれば十分
その関数もグローバル関数はレアな存在でクラスなどのメソッド関数などにするのでそのクラスなどの中で名前を区別できれば十分
そのクラスなどもモジュールなどの中で名前を区別できれば十分
そのモジュールなどの名前は仮にぶつかっても使用を宣言する時に別名として採用できる言語が多いから名前がぶつかっても困ることはない
細かいところは各プログラミング言語によって色々と異なるけど概要としては以上の通り

297:デフォルトの名無しさん
22/07/12 13:54:30.96 bC3C9A55.net
グローバルおじさんが作ったVBSとか楽しすぎて辞めたくなるよな

298:デフォルトの名無しさん
22/07/12 14:13:34.28 0sH3rFaE.net
速度を優先するとグローバル変数も使いたくなりませんか
連続で呼ばれる関数で毎回変数宣言するよりもグローバル変数で一度定義しておけば
その負担をゼロにできるし

299:デフォルトの名無しさん
22/07/12 14:30:47.58 46BVSOic.net
そうですね。他にもmain関数一本で実装するのがモダンなやり方だと思いますよ

300:デフォルトの名無しさん
22/07/12 14:44:45.71 h7t7toC6.net
>>293
>速度を優先するとグローバル変数も使いたくなりませんか
既に定義済みの変数を利用したいケースは当然あるが
だからといってグローバル変数は使わない
>連続で呼ばれる関数で毎回変数宣言するよりもグローバル変数で一度定義しておけば
>その負担をゼロにできるし
それぞれサンプルコード書いてみたら?
もう少し具体的なアドバイスがもらえると思うよ

301:デフォルトの名無しさん
22/07/12 14:52:24.07 /TLAe8PW.net
>>293
宣言に伴う領域確保時に自動的に内容が初期化されるような処理系だったりポリシーだったりするとそうかもね。
C だと関数呼び出し時にその関数で使用する変数に充分なサイズのスタックフレームを確保するだけだから、コストなんてかからないよ。
スタックポインタを最初に一度ずらすだけだからね。

302:デフォルトの名無しさん
22/07/12 15:09:08.48 e6ywpCu7.net
>>293
グローバル変数は、いつ、どこから、誰が、どのように、アクセスするか不明であり、
一般的にはデータ競合を起こす可能性もあるため、その場合は対策として排他制御が必要となるなど、むしろ遅くなる可能性を招きかねない
グローバル変数はできる限り使わないのが通常のプログラミングの基本である

303:デフォルトの名無しさん
22/07/12 15:10:10.48 /ElrVE0y.net
>>289
命名の省力化よりも設計の質や可読性を高めることに意識を集中させたほうがいいぞ
その意識で1~2年もやれば手抜きというか命名コストを下げる方法も自然と身につく

304:デフォルトの名無しさん
22/07/12 15:17:54.87 ZWwvT0dn.net
速度は別としても、どうしても共有したデータを参照したい時は
グローバル変数も使わざるをえないのでは

305:デフォルトの名無しさん
22/07/12 15:31:37.13 6JujiSX5.net
js幼女だけどfsoやwshをグローバルにしている

306:デフォルトの名無しさん
22/07/12 15:33:54.63 46BVSOic.net
ローカルDBやファイルや設定ファイルなどはグローバル変数だから使うべきでない

307:デフォルトの名無しさん
22/07/12 15:39:37.31 0s4l2w4w.net
>>299
まずデータ共有のためにグローバル変数を用いるのは他に手段がない場合に限定されしかも以下の点に注意する必要か出て来ます
データを多者で共有するということは
その多者の関係によってはデータ競合が発生するため一般的には排他制御を行うことになります

308:デフォルトの名無しさん
22/07/12 15:55:20.39 Lr6lZRed.net
>>301
設定ファイル名は固定ならば変数ではなく定数であるからグローバル変数ではない
変わりうる時は引数や環境変数や設定ファイル等が出自となりこれもグローバル変数てはない
ファイルはファイル等のモジュールのオープン関数にファイル名やパスを指定して扱うからグローバル変数の要素はない
ローカルDBも同様でありグローバル変数を必要としない
まともなコードならばグローバル変数は出て来ない

309:デフォルトの名無しさん
22/07/12 16:11:36.31 XIWH5a4r.net
>>299
どの言語を前提に話してるの?

310:デフォルトの名無しさん
22/07/12 16:17:16.03 cntCnL4D.net
C#やJavaなんかで

311:デフォルトの名無しさん
22/07/12 16:40:13.27 3+lEMrqc.net
>>305
その2つともグローバル変数がそもそも機能的にないやろ
static classのstatic変数使う
C#ならnamespaceを切って、使う側で明示的にインポート

312:デフォルトの名無しさん
22/07/12 17:07:57.77 MOqUyrHS.net
>>289
変数や関数は台帳で管理する
F00001、F00002みたいな名前にしておけば悩む必要はない
なおF00100以下の番号は、前々社長など
会社の偉い人に割り当てられている
その関数は伝説となっており誰も手を付けてはいけないことになっている

313:デフォルトの名無しさん
22/07/12 17:28:55.51 46BVSOic.net
アセンブラとか変数どころかアドレスの番地やろ

314:デフォルトの名無しさん
22/07/12 18:28:32.11 6GTnP78T.net
レジスタ名は変数に含まれますか?

315:デフォルトの名無しさん
22/07/12 18:28:36.82 jEv45P7P.net
10 GOTO 10

316:デフォルトの名無しさん
22/07/12 19:27:13.54 JaplqMKV.net
コンストラクタの引数とフィールド変数は毎回困るわ
this着けて回避してるけど未だに嫌だわ
C#はprivateフィールド変数にアンダースコア付けるように成ったらしいから良くなったけどjavaはコンストラクタだけthis付きだわ

317:デフォルトの名無しさん
22/07/12 21:28:56.55 /TLAe8PW.net
>>305
そんなにパフォーマンスにこだわりたいなら、とりあえず C で書いたら?
なんでもグローバルに置くなんてことをしなくても、変数確保のコストをごっそり下げられるよ。

318:デフォルトの名無しさん
22/07/12 22:36:21.49 pP2wLD3a.net
最近はRustのようにグローバル変数を持たない言語も増えているね

319:デフォルトの名無しさん
22/07/13 02:51:31.38 o1nk5rBa.net
「〇〇の言語では」という話は、既存のコードを直す場合には残念ながら無効
新規のコードだって普通は言語縛りがあったりする
事件は現場で起きている

320:デフォルトの名無しさん
22/07/13 03:10:40.16 dyEYJovX.net
>>307
実際そういうソース見たことあるわ
グローバル変数名がみんなそういう番号なのな
で、関数はほとんど関数ポインタの配列に入ってて、添字頼りで呼び出す、、、
しかもコメントはほぼ皆無、あったとしても「なぜかこうしないと動かない」的な独り言
きっと天才が作ったんだろう、俺には解析できなかったよ

321:デフォルトの名無しさん
22/07/13 21:10:40.45 nyVCJ4Fn.net
OSがLinux・unixでは昔makeを使ってたと思います
今は何が主流なんですか?

322:デフォルトの名無しさん
22/07/13 21:14:50.95 sjYFKueX.net
make

323:蟻人間
22/07/13 21:29:01.08 H8j4+v2o.net
cmake

324:デフォルトの名無しさん
22/07/14 00:38:53.58 rMT+3vzc.net
Makefileなんか使わない
ソースコードはCファイル一つでできている

325:デフォルトの名無しさん
22/07/14 00:54:33 3dKE35ki.net
>>316
最近はCとほぼ同速度が出るのに自動メモリ解放で安全に楽できるRustで書くことが増えたから
makeに相当するのはcargoかな
ライブラリのバージョン管理や自動ダウンロードなど含めて何でもしてくれる

326:デフォルトの名無しさん
22/07/14 02:45:06 o4Ti2hmk.net
ポケモンの交換は途中で電源を消してもポケモンの増殖や消滅が起こりませんが、どのようになってるのでしょうか

327:デフォルトの名無しさん
22/07/14 03:58:54.48 rMT+3vzc.net
起こるようだが?
ちゃんとトランザクション処理してないのか?

328:デフォルトの名無しさん
22/07/14 05:44:56.23 1pn/MEr2.net
>>320
意味わかんねー
それは本当に「主流」か???
cargoでパッケージをインストールするのがデフォルトなディストリなんてあるか?
テメーが覚えたてのこと言いたいだけなんじゃないかと
あとソフトウェア開発の現場では「自動メモリ解放で安全に楽できる」新言語よりもただ単に枯れてるからというだけの理由でC/C++が優先されることが非常に多いということを理解してないように思う
もっと言うとメモリの管理で苦労したくないという浅い浅い動機ならC++でできる限りSTLでプログラミングした方が圧倒的に導入のコストが低く済むという事実
ま、「いや組み込みを想定するとSTLなんて使えないから~」とか訳の分からん擁護に走る奴が出てくるのは目に見えてるがな

329:デフォルトの名無しさん
22/07/14 06:25:21.21 oyqdoYCa.net
>>323
例えばLinux開発陣営も
失敗言語C++を採用しませんでしたが
成功言語Rustは採用したように
言語としての優劣は明確となっています
今までの蓄積の差がC++の優位点です
今後は時間とともにC++が相対的に衰退していくのでしょう

330:デフォルトの名無しさん
22/07/14 06:27:36.20 TLMV+xKA.net
>>314
そのような合理性に乏しい判断が生産性の低下と各リスクの上昇を招く
>>323
URLリンク(foundation.rust-lang.org)
気をつければ問題などと言う認識は時代遅れっすよ

331:デフォルトの名無しさん
22/07/14 08:16:34.89 rMT+3vzc.net
>>323
> cargoでパッケージをインストールするのがデフォルトなディストリなんてあるか?
なんでデフォルトじゃなきゃいかんの?

332:デフォルトの名無しさん
22/07/14 12:11:36.28 LBvA3Hcq.net
Ruby では、Rake, Thor みたいなタスクランナーを使う

333:デフォルトの名無しさん
22/07/14 12:46:07.15 nOsE2mRf.net
>>325
「メモリ管理に苦労したくないだけならSTLを積極的に使うことにすれば済む」というのを「気をつければ問題ない」と読んだなら文盲かSTLが何か知らないということになる
組み込み等のSTLが使えないような背景を勝手に想定してるなら話にならない
「メモリ管理に苦労したくない」以外にも山程Rustに良いところがあるのは当然認めている

>>326
論点のすり替えであって、「Rustのcargoが本当にLinux・UNIXにおけるパッケージ管理の主流か」という問いに何ら答えていない
(もちろんこれはただの反語表現であって、答えるまでもなく>>320は頓珍漢なのだが)

334:デフォルトの名無しさん
22/07/14 14:00:51.16 /zRfdjTa.net
>>323
C++がクソ言語だと理解できていない時点であかんやん
メモリ解放の話に限定したとしてもC++ではプログラマーのミスで解放忘れ、多重解放、解放済みエリア利用などのコードとなってしまってもC++コンパイラはそれらを通してしまう
複雑化すれば人間のミスが入り込むことは避けられないため現実にバグやセキュリティの穴をC++は生んできた
現在はそれらのミスを起こしたコードをコンパイラが検出して通さず指摘してくれるRustが登場したのだからC++は着実に退場していくだろう

335:デフォルトの名無しさん
22/07/14 14:39:49 lnbsEUJQ.net
退場するまでなんとしても生きねば…… ゴホゴホ……

336:デフォルトの名無しさん
22/07/14 14:50:50 nOsE2mRf.net
>>329
自己流あるいはアンチパターンにはまってわけわかんないことしてるくらいなら (問題によっては) STLを使えば良いだろっていう指摘なんだが、
> メモリ解放の話に限定したとしてもC++ではプログラマーのミスで解放忘れ、多重解放、解放済みエリア利用など
なんでこんなことになるのか

337:デフォルトの名無しさん
22/07/14 15:45:39.13 rMT+3vzc.net
>>328
> 論点のすり替えであって、「Rustのcargoが本当にLinux・UNIXにおけるパッケージ管理の主流か」という問いに何ら答えていない
Rustのcargoが本当にLinux・UNIXにおけるパッケージ管理の主流かどうかを聞いてなんの意味があるの?
どうせ主流ではないと言いたいんでしょ?
主流ではないから○○だみたいに、
その先を説明してよ
なんで自分の意見を相手に聞くかな?w
自分の意見は、自分から言えば良いんだよ。

338:デフォルトの名無しさん
22/07/14 15:47:01.75 rMT+3vzc.net
相手に自分の主張を言わせることで
「勝った気になる」というテクニックに名前ついてない?

339:デフォルトの名無しさん
22/07/14 16:35:58.76 31/iZkCN.net
>>331
なぜそれら致命的な欠陥のあるC++を勧めるのか?
他に解決手段が無かった昔はC++が次善手として使われてきたのは仕方ないとしても現在は避けることが可能なのだから

340:デフォルトの名無しさん
22/07/14 19:50:08.27 JGI4j5iF.net
ふう、なんとか致命傷で助かった

341:デフォルトの名無しさん
22/07/14 21:11:03.19 CzfIePPh.net
お前はすでに死んでいる

342:デフォルトの名無しさん
22/07/14 22:27:22 9htlvmL8.net
>>320
>ライブラリのバージョン管理や自動ダウンロード

これ、すごく嫌なんですが、オプションでオフにすることはできますか?

343:デフォルトの名無しさん
22/07/14 22:28:41 9htlvmL8.net
>>329
>解放忘れ、多重解放
これはデバッグ用にラッパをかませれば、すぐにわかりますよ
工夫がたりないんじゃないですか?

344:デフォルトの名無しさん
22/07/14 22:38:35 iypcPR5q.net
>>388
工夫とはPOSIXコマンドだけで何とかすること
依存しているものが使えなくなったら動かなくなる

345:デフォルトの名無しさん
22/07/14 23:58:11.93 U+xK/jUV.net
>>339
あのね、ラッパは自分で書くの
mall


346:oc(), free() をラッパでくるんでおいて、解放忘れや二重解放を検出すればいいわkでしょう? >解放済みエリア利用 すなわち、前世バグは、解放時にラッパで乱数を書き込んでおけばいい 本番ではラッパをはずすように #ifdef しておけばいいだけの話でしょう なんでこんな工夫もできないの?馬鹿なの?



347:デフォルトの名無しさん
22/07/15 01:34:39.13 GD18JH44.net
>>340
そんな前近代的なことをしている人がいて驚く
・まず手間も時間もムダ
・その作業も漏れなくミスなくすることを保証できない
・実行しないと何も判明しない
・レアケースに露見するミスはレアケースが来るまでわからないまま
様々な点で問題が多すぎる
C/C++を捨ててRustへ移行すれば
・コードに問題があればコンパイラが通さず問題点を指摘してくれる
・つまりチェックは人手でやる必要なくコンパイラにより完全自動
・コンパイルが通れば安全性が保証される
・つまり実行前に静的に問題がないことを確定できる
・使われなくなった時点で即座に自動的にメモリ解放されるためC/C++で手動で最善にメモリ解放した時と同様に高速
このようにRustへ移行すれば問題が解決する

348:デフォルトの名無しさん
22/07/15 01:41:41.27 Ck4HswxJ.net
>>340
解放忘れは機械的にはプロセス終了時点まで分からないと思うけど、プロセス終了時にその領域の情報はどうやって報告するの?
未解放メモリの全部のポインタをどこかに覚えておく?
そして、どこからの malloc で確保されたメモリなのかはどうやって管理する?
他にも new や delete はどうするのとか。
そのノウハウは聞いておきたい。

349:デフォルトの名無しさん
22/07/15 04:34:16 H/wtb5p/.net
>>332
> どうせ主流ではないと言いたいんでしょ?
イエス
反語表現の意味を調べよう
(中高で習うそんなに難しくはない概念だし、注意してみると日常生活の中でもよく使われているので、勉強しておくことを勧める)


> 主流ではないから○○だみたいに、
> その先を説明してよ
ホワァイ?
元々>>320が頓珍漢な回答をしているのを指摘しただけなので、そこで終わってる話
頓珍漢に輪をかけたレスがその後も相次いでいるので驚いているが


> なんで自分の意見を相手に聞くかな?w
> 自分の意見は、自分から言えば良いんだよ。
言ってるんだよなあ
まあこの先日本語をもっと勉強することでいずれ理解できるようになると思う
頑張って

350:デフォルトの名無しさん
22/07/15 04:37:28 H/wtb5p/.net
>>334
勧めていません
ただし、低レベルプログラミングが必要な場面でないのに「C++はメモリの解放が~」とか言ってるのは誤謬でしかないし、標準ライブラリで提供されてる範囲内で簡単に解決できると示しているだけ

351:デフォルトの名無しさん
22/07/15 04:40:39 H/wtb5p/.net
>>340はヤバいね
これなら思考停止でRust使ってた方が良い

今自分でmalloc、free、new、deleteしなきゃいけない場面なんて特定の領域を除いて存在しないでしょっていう話だから

352:デフォルトの名無しさん
22/07/15 04:43:52 GD18JH44.net
>>343
その件もmakeでやってた前近代的な方法を根本的に見直し捨て去ることで
全く新たなcargoというエコシステムが作られてそれ単独でmakeやその類似を必要とせずに動作しているわけだから
makeの代わりの新たなものという位置付けも一つの見方であると思われる

353:デフォルトの名無しさん
22/07/15 04:44:34 nNsZOfDm.net
>>343
だから、Rustのcargoが本当にLinux・UNIXにおけるパッケージ管理の主流じゃないから何?
OSの仕事はあくまでOSのパッケージの管理であって
プログラミング環境のライブラリの管理じゃないんだよ
あんたcargoの役目を理解してなさすぎw

354:デフォルトの名無しさん
22/07/15 05:21:48.13 tRnFuWaP.net
>>344
その後半の「標準ライブラリで提供されてる範囲内で簡単に解決できる」は二重にダウト
標準ライブラリの範囲内でも解放忘れや多重解放などは起こり得る
さらに標準ライブラリの範囲内のみで解決できるとはかきらない
したがって標準ライブラリを持ち出すことに何の意味もない

355:デフォルトの名無しさん
22/07/15 05:25:05.82 H/wtb5p/.net
>>346
ていう話なら是
>>347
ええ。ですから>>316に対してcargoとか言い出すのは頓珍漢なのですよ
私と反対のことを言いたいばかりに元々がどんな話だったかすっかりお忘れになられているようで、本当に気の毒ですがもう少し日本語のお勉強に真剣になられた方が良いです

356:デフォルトの名無しさん
22/07/15 05:39:30.79 nNsZOfDm.net
>>349
はぁ(苦笑)
あのねぇ、makeはね、OSのコマンドなの。UNIXの中に含まれてるから。
でね、makeっていうのはビルドツールなわけ。
昔のunixにはパッケージ管理ツールなんてなかったのから
ビルドするしかなかったの
今はビルドツールにOSのコマンドを使わなくなってきてるの
cargoはプログラム専用のパッケージ管理ツール兼ビルドツールなわけ
つまりね、
・パッケージを使う場合はOSのパッケージ管理ツールを使う
・しかしパッケージ管理ツールは、make、ビルドツールのことじゃあない
・今の話はmakeの代わりに何を使うって話
・makeの代わりはcargoや各言語のビルドツールなわけ
おまえはmakeをパッケージ管理ツールだと勘違いしてる
ここまで丁寧に教えないと理解しないんだろうな

357:デフォルトの名無しさん
22/07/15 05:44:04.50 nNsZOfDm.net
makeの代わりに何を使う?って話なんだからcargoは間違いじゃない
makeの話なのにOSのパッケージ管理ツールってなんだよ?とかいいだしてる>>323がアホと言う結論

358:デフォルトの名無しさん
22/07/15 06:06:48 H/wtb5p/.net
>>350
>>346で止めときゃ合ってたのに……(もしかして「是」の意味がわからなかった?)

OSのコマンドとして見るなら尚更cargoを持ち出すのは頓珍漢だろ

359:デフォルトの名無しさん
22/07/15 07:03:07.90 LI/vBnI5.net
とりあえず>>340って実際にどんなことをしてるかちょっとだけ気になるんだけど
よかったら具体的な説明を

360:デフォルトの名無しさん
22/07/15 07:08:23.44 LI/vBnI5.net
と思ったが、あれかな、valgrindとかでやることを自分でやるみたいな?
普通にそういうツールやライブラリに頼った方がいいような

361:デフォルトの名無しさん
22/07/15 07:28:20 45o+VwAU.net
>>352
今どきはOSのコマンドでビルドしないって言ってんだろ
いい加減OSの話忘れろよ
おまえだけだぞ

362:デフォルトの名無しさん
22/07/15 08:15:46 uLC7CBw4.net
Rust Foundation Platinumに日本企業はない。中国企業はいる
日本は中国未満

363:デフォルトの名無しさん
22/07/15 09:59:34.96 TA6nqc+L.net
現時点でRustで構築されてるOSってある?
カーネルはLinuxでもいいけどそれより上の部分で

364:デフォルトの名無しさん
22/07/15 10:57:19.78 lF4sBNwn.net
Rustなんて結局流行らんでしょw
まぁ、スレ違いなのでしょーも無い事を語るなら別のスレにいけ

365:デフォルトの名無しさん
22/07/15 11:39:33.98 YErsqPqr.net
gitでマージしてコンフリクトしなかったファイルとコンフリクトしたファイルがあって
これをコミットする際、コンフリクトせずマージされたコミットとコンフリクト解消したコミットのように2つに分けたいのですが
どうやればいいのでしょうか

366:デフォルトの名無しさん
22/07/15 12:11:03.83 lF4sBNwn.net
単純にマージする前にブランチ切っていれば戻れるし好きに出来るのでは?

367:デフォルトの名無しさん
22/07/15 12:12:45.10 YXwn0a1o.net
>>359
stageに上がった修正だけがcommitされるから、
コンフリクト解消前のstageをcommitした後に
コンフリクト解消してまたcommitすりゃいい

368:デフォルトの名無しさん
22/07/15 12:44:10.41 YErsqPqr.net
>>361
コンフリ解消前のをcommitするとコンフリ解決してないので
committing is not possible because you have unmerged files
とエラーが出てコミットできないんですが
コンフリしたファイルをそのままaddしてコミットしろってことでしょうか?

369:デフォルトの名無しさん
22/07/15 15:05:45.09 oyGbt8u5.net
>>362
merge状態から抜ければcommitできるので、そうしてもいいし
コンフリクトしたファイルだけを元に戻してもいい
でも、どちらにせよビルドできない状態をcommitすることになるだろうから
ちゃんとコンフリクトを解消してからcommitした方がいいと思うけどなぁ
まあ、最初のやりたいことからは外れちゃうけど

370:デフォルトの名無しさん
22/07/15 15:18:15.30 UMF7Eduu.net
>>357
これからは一つの言語で構成されるOSはなくなっていく

371:デフォルトの名無しさん
22/07/15 21:04:15.70 knkavBW6.net
>>341
>・まず手間も時間もムダ
ちょいちょいと 200 ステップくらいで簡単に実現できますよ、一晩で書けちゃいますよ
>・その作業も漏れなくミスなくすることを保証できない
>・実行しないと何も判明しない
何もしないよりはましでしょうね、簡単なラッパを置くだけでケアレスミスは弾けますね、やったことなければわからないでしょうが
>>342
末尾に解放忘れを列挙する関数を置けばいいだけですよ、リリース時には #ifdef で無効にするようなものでね
>>345
私は別に rust を否定しているわけではないですよ
指摘された問題点はちょいちょいとラッパを書くだけで割と簡単に弾けるのに、というだけですね
>>353
ヘッダ:URLリンク(ideone.com)
本体:URLリンク(ideone.com)
一晩で即席に作ったけれども結構今でも役に立っていますね‥‥

372:デフォルトの名無しさん
22/07/15 21:41:31.38 0WMM6JpG.net
リーク検出なんてVCは標準であるけど、他の環境にはないの?

373:デフォルトの名無しさん
22/07/15 21:52:23.36 YErsqPqr.net
>>363
コンフリしたファイルをHEADの内容で更新commitして
コンフリしたファイルを再度修正してそれをコンフリ解決としてコミットすれば
やりたいような感じのことができました
レスありがとうございました

374:365
22/07/16 06:41:19.01 c7EwU+jp.net
>>366
昔の bcc にもありました、ちょっとバグってたけれども
clang ベースの今の bcc にあるかどうかはちょっとわかりませんね

375:デフォルトの名無しさん
22/07/16 11:51:34.05 v3eAMl7Q.net
質問と言うかご意見をお聞かせください
daoパターンを調べていてトップに出てきたのがこれです
URLリンク(kanda-it-school-kensyu.com)
気になったのは
selectIsbnAll、selectTitleAll、selectPriceAllが、内部で使うSQL文以外は全く共通の構造になっているということです
例えば受け取ったSQLを実行して結果を返す関数xxxを別に作る、上の3関数ではSQL文を作ってxxxに渡して呼び出す
そういう構造にするのはダメなんでしょうか
それとも重複させたほうがいい理由が何かあるのでしょうか。よろしくお願いします

376:デフォルトの名無しさん
22/07/16 11:55:03.81 v3eAMl7Q.net
失礼しました。SQL文以外にも取得する列名も関数ごとに別ですね
まぁその場合でもxxxに列名を引数として追加すればいいのではと思いますが

377:デフォルトの名無しさん
22/07/16 12:32:31.14 730D9OZt.net
>>369
>そういう構造にするのはダメなんでしょうか
全く問題ないよ

378:デフォルトの名無しさん
22/07/16 12:37:49.48 730D9OZt.net
しいて言えば
他の開発者が重複させた状態でパターン認識してれば共通処理に切り出すと分かりにくくなるとか
すべてのDAOが依存する共通クラスができるのでその維持管理に少し手間がかかるとか
そういうデメリットはあるかもしれない

379:デフォルトの名無しさん
22/07/16 14:05:36.11 2WLM14wy.net
Java のJDBC って、何十年前の話なの?
Ruby on Rails では、Active Record というO/R マッパーで全自動。
こんなコーディングを見た事がない

380:デフォルトの名無しさん
22/07/16 15:47:30.46 aE5onCgd.net
markdow


381:nってなにが便利なの? 見る人にわざわざViewerをインストールしてもらわなきゃいけないの



382:蟻人間
22/07/16 16:12:32.42 8tacx+39.net
>>374
HTMLよりも文法が簡単で、わかりやすい。
テキストベースでGitと相性が良い。
markdownが書ければ本も出版できる。

383:デフォルトの名無しさん
22/07/16 17:00:15.16 aE5onCgd.net
本を出版できるかどうかは関係ないでしょ
書く内容があれば、markdownがかけなくても出版は出来るでしょうし。
整形されたものを見るためには、ブラウザ側の準備とかも必要ですし
○○をインストールすれば、綺麗に見えますよ
なんていってもそんなの面倒といわれるのがオチですよね

384:デフォルトの名無しさん
22/07/16 17:08:33.25 EqAVTetZ.net
ブラウザ等が必要なのはHTMLやTextileも同じ
それらに比べてプレーンテキストでの視認性は良い

385:デフォルトの名無しさん
22/07/16 20:25:35.05 v3eAMl7Q.net
gitと相性良いってのは本当にでかい
未だにword/excelをSVN管理してるところの多さよ

386:デフォルトの名無しさん
22/07/17 08:58:42.91 Pz/w1EQs.net
音楽を流すプログラムを公開する時、著作権の問題を回避するため、曲データそのものは省いた状態で公開したい。
でもデモというかサンプルとして、そのデータのシーケンスの様子を youtube で公開して、ようするにそれを見ればデータを再現できるわけだけど、
そういう公開の仕方で著作権の問題は出そう?
公開したいものの主体としてはシーケンサの方ではあるけど、その曲を入れたくて作ったという側面がある。
もちろん使う人がお好きなデータを入れられる。

387:デフォルトの名無しさん
22/07/17 18:48:28.79 soXI7jwH.net
仕事中に転職予定のプログラミングの勉強をしたいのだけど
いい方法はないかしら?
今の仕事中はときどきアイドル時間があってわりと勉強できそうだけど
周りにチームリーダーやまじめ君がいてPCをのぞきこまれてそれを見つかるのはまずい。

388:デフォルトの名無しさん
22/07/17 19:38:41.12 9SO4ZDqK.net
スマホPDFでみれば

389:デフォルトの名無しさん
22/07/17 19:51:05.43 soXI7jwH.net
>>381
それもなかなか難しいんですよ。
理想はPCで仕事してるふりしてPCの小領域に勉強のためのWebサイトを開くみたいな。

390:デフォルトの名無しさん
22/07/17 19:53:22.97 9V4W1mRI.net
PC介すと検閲に引っかかるとかないの?

391:デフォルトの名無しさん
22/07/17 20:52:28.23 zSvUsLU3.net
えー要約すると仕事中に仕事と全く関係なくて見つかるのもまずいことしようとしてるんだけどいい方法ありませんか

392:蟻人間
22/07/17 21:13:42.26 Il0xN2QW.net
通信URLが監視されてたら何してもばれる。
それでもやりたいならWin+D

393:蟻人間
22/07/17 21:21:33.73 Il0xN2QW.net
「ボスが来た」で検索すると、そういうツールが見つかるよ。

394:蟻人間
22/07/17 21:22:16.77 Il0xN2QW.net
通信内容も隠蔽したいならテザリングするといいよ。

395:蟻人間
22/07/17 21:26:39.21 Il0xN2QW.net
内部通告は社会の正義だからね。がんばってね。

396:蟻人間
22/07/17 21:41:58.23 Il0xN2QW.net
今ならメガネ型の端末やコンタクトレンズみたいな端末があるって。
それでネットサーフィンできるよ。

397:デフォルトの名無しさん
22/07/17 22:12:12.21 og+Kl2+D.net
などと自宅警備員が言っており

398:デフォルトの名無しさん
22/07/18 02:41:01.00 M8P73NZJ.net
その言語の研修に行かせてもらえば?

399:デフォルトの名無しさん
22/07/18 09:09:17.65 unHGOtJd.net
UMLとかどこ行っても潰しの効く技術を勉強しといたら?
特に最下流なゴミ案件だと設計ドキュメント無かったりするから、それを作ってますと言い訳


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

564日前に更新/300 KB
担当:undef