[過去ログ]
Rust part16 (1002レス)
Rust part16 http://mevius.5ch.net/test/read.cgi/tech/1656285423/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
799: デフォルトの名無しさん [] 2022/09/24(土) 22:29:32.09 ID:GMpouZpq ARM64ほどの絶対的パワーは必要ないので、ARM63で価格が120円くらいのチップになりませんかね? http://mevius.5ch.net/test/read.cgi/tech/1656285423/799
800: デフォルトの名無しさん [sage] 2022/09/25(日) 08:24:33.85 ID:j3K9KjV7 Option<NoneZeroUsize>などを使えば IDやカウンタなどの用途でOption<usize>などを使っていたものを 半分のメモリサイズで済むようになるの? http://mevius.5ch.net/test/read.cgi/tech/1656285423/800
801: デフォルトの名無しさん [sage] 2022/09/25(日) 11:42:14.43 ID:sQFmQmse >>799 任せてください。符号ビット省略しておきますね http://mevius.5ch.net/test/read.cgi/tech/1656285423/801
802: デフォルトの名無しさん [] 2022/09/25(日) 15:32:52.52 ID:F2Viqk5M Microsoftがやりそうなことだけど、Rustに独自拡張を含めたりとかしてほしくない http://mevius.5ch.net/test/read.cgi/tech/1656285423/802
803: デフォルトの名無しさん [sage] 2022/09/25(日) 17:24:00.83 ID:xalR35FT Linuxはカーネル開発の為に今まさにRustに独自拡張を含ませようとしてるのに Microsoftはダメなの? http://mevius.5ch.net/test/read.cgi/tech/1656285423/803
804: デフォルトの名無しさん [sage] 2022/09/25(日) 17:34:47.30 ID:4B3i10Bx try_new()とかtry_reserve()とか元々ないのが不思議だったし導入の良いきっかけとなっただけ http://mevius.5ch.net/test/read.cgi/tech/1656285423/804
805: デフォルトの名無しさん [sage] 2022/09/25(日) 17:57:47.12 ID:6lgwXJxi 言語自体forkして独自のエコシステムを構築しようとしなければ別に良いのでは http://mevius.5ch.net/test/read.cgi/tech/1656285423/805
806: デフォルトの名無しさん [sage] 2022/09/25(日) 18:09:02.84 ID:6wI0gbs/ 正直LinuxにRustなんて辞めればいいのに・・・ http://mevius.5ch.net/test/read.cgi/tech/1656285423/806
807: デフォルトの名無しさん [sage] 2022/09/25(日) 18:14:08.03 ID:Td47G6We Rustに限った話じゃないんだけどそれなりに複雑なロジック(例えばデコーダやパーサ)の実践的なテストの 作り方の解説とかどっかにある?例えばJPEGやPNG、MP3、AVIとかを扱うようなコードを想定 関数単体のテストはともかく、結合した状態で全てのコードを動かそうとすると入力パターンがどんどん増えるし パディングビットにゴミがあっても問題ないかなどを考慮しだすと更に膨れあがる さらに歴史が長いフォーマットだと、そもそも仕様をどう定義するのかという点が問題になることもあるし http://mevius.5ch.net/test/read.cgi/tech/1656285423/807
808: デフォルトの名無しさん [sage] 2022/09/25(日) 18:21:16.44 ID:xalR35FT テストがすごいのはSQLite http://mevius.5ch.net/test/read.cgi/tech/1656285423/808
809: デフォルトの名無しさん [sage] 2022/09/25(日) 19:04:38.98 ID:rVqFiGXV >>803 別に独自拡張とか入れてないだろ コンパイラへの機能追加は全部本体に入れていてnightlyで使える状態だし Linuxカーネル向けのallocなんかは単にライブラリであって言語自体がforkしてるわけではない http://mevius.5ch.net/test/read.cgi/tech/1656285423/809
810: デフォルトの名無しさん [sage] 2022/09/25(日) 19:57:21.62 ID:6lgwXJxi >>806 なんかまずいことでもあるの? http://mevius.5ch.net/test/read.cgi/tech/1656285423/810
811: デフォルトの名無しさん [] 2022/09/25(日) 19:59:47.96 ID:Rxhh3DJ9 >>810 迷走と凋落、そして黒歴史化。 http://mevius.5ch.net/test/read.cgi/tech/1656285423/811
812: デフォルトの名無しさん [sage] 2022/09/25(日) 20:07:26.82 ID:58piYD8Z >>807 メディアのエンコーディングのことはさっぱりしらんけど、一般的には結合テストじゃなくて、単体テストでパターンは網羅すべし できるんならやればいいけど、結合テストで入力の網羅なんて普通はやらない http://mevius.5ch.net/test/read.cgi/tech/1656285423/812
813: デフォルトの名無しさん [sage] 2022/09/25(日) 20:26:59.51 ID:Td47G6We >>812 条件分岐で関数Aを呼ぶべき所を間違えてA'を呼んでいて出力結果がちょっと変・・・というのをさっきやらかした 関数そのものに問題はないし処理内容がちょっと違うだけなので実行は出来てしまうのがいやらしい で、テストを作ろうとしたけどどうしようか悩み中 http://mevius.5ch.net/test/read.cgi/tech/1656285423/813
814: デフォルトの名無しさん [sage] 2022/09/25(日) 20:37:27.14 ID:lhW/fB5K そういうのは呼び出し側の単体でええんちゃうの http://mevius.5ch.net/test/read.cgi/tech/1656285423/814
815: デフォルトの名無しさん [sage] 2022/09/25(日) 21:09:49.29 ID:j1+dHWho >>807 歴史があり、曖昧さが残るフォーマットの再実装はできればやりたくない仕事だな。 対応する仕様を現代で最低限必要なものを取捨選択して決め打ちで実装しつつ、考慮漏れでクリティカルなものは取り入れていく方式でやるしかないよ。 歴史あるフォーマットの曖昧な対応を追体験する作業は、不毛だからできれば既存実装におまかせすべき。 http://mevius.5ch.net/test/read.cgi/tech/1656285423/815
816: デフォルトの名無しさん [sage] 2022/09/25(日) 21:31:04.61 ID:Td47G6We >>814 中間コンポーネントの単体テストって普通どうやるんだろ 後段のコンポーネントを切り離してテストするのか?繋げたままテストするのか? 切り離せるようにするとその部分にバグが入り込む余地が生まれるし >>815 歴史が長いと仕様上○○であるがこれに準拠しないアプリやデータが少なからず存在するため △△のような実装がベターだみたいなのが沢山あるからねぇ そしてこの手の情報はググっても網羅するのが難しい http://mevius.5ch.net/test/read.cgi/tech/1656285423/816
817: デフォルトの名無しさん [sage] 2022/09/25(日) 21:51:09.44 ID:6lgwXJxi >>811 Linux側にメリットがないと言ってる? http://mevius.5ch.net/test/read.cgi/tech/1656285423/817
818: デフォルトの名無しさん [sage] 2022/09/25(日) 21:51:47.84 ID:PDKGWlWe >>816 > 中間コンポーネントの単体テストって普通どうやるんだろ 中間の意味がよく分からんけど>>813みたいな話なら関数A、関数A'をモックにしてテストする たいていのテストツールではモックの呼び出し回数のテストができる http://mevius.5ch.net/test/read.cgi/tech/1656285423/818
819: デフォルトの名無しさん [sage] 2022/09/25(日) 21:53:52.45 ID:j1+dHWho >>816 JavaみたいにDIが発展しているタイプの言語だと中間コンポーネントが呼び出すコンポーネントはモックをインジェクトしてやって、適切なメソッドが呼び出されたかのテストとかよく書くね。 けど、正直Rustを含む他の言語で中間のレイヤだけ独立してテスト書くようなこだわりはあまり見たことも書いたこともないなぁ。 モジュール設計の考え方が変わるからかな? http://mevius.5ch.net/test/read.cgi/tech/1656285423/819
820: デフォルトの名無しさん [sage] 2022/09/25(日) 22:41:02.05 ID:Td47G6We 今作っているのだとこんな感じかな? 関数C(データの前処理、処理単位への分割) ↓ 関数B(処理全体の制御)→関数A'(処理1-2) ↓ 関数A(処理1-1) >>818,819 その場合モックへ切り替える機構はどうするんだろ そのためにコードを書き換えていてはミスが入り込む可能性が高くなるし、条件付きコンパイルも同様のリスクがある てかThe Rustのテストの所を見ても関数の呼び出し状況をテストする方法とかは書いていないんだよな なんかその辺を良い感じに可視化してくれるツールとかあるんだろうか http://mevius.5ch.net/test/read.cgi/tech/1656285423/820
821: デフォルトの名無しさん [sage] 2022/09/26(月) 00:07:36.94 ID:h/WE7ZWH >>820 すまん rust だと cargo test で単体テストを実施するみたいだけど mook/stub をどうやって使うかはよくわからんかったわ C++ とかだと googlemook とか使ってテスト用のモッククラスを作って入れ替えるかたちだね http://mevius.5ch.net/test/read.cgi/tech/1656285423/821
822: デフォルトの名無しさん [sage] 2022/09/26(月) 00:33:03.55 ID:TCGzsvbI mockall使うとか http://mevius.5ch.net/test/read.cgi/tech/1656285423/822
823: デフォルトの名無しさん [sage] 2022/09/26(月) 06:28:19.26 ID:p/pWEmYs cargo testで関数テスト、モジュールテスト、モジュール間テストなどあらゆるテストをやっているけどダメなの? http://mevius.5ch.net/test/read.cgi/tech/1656285423/823
824: デフォルトの名無しさん [sage] 2022/09/26(月) 06:47:39.41 ID:h/WE7ZWH >>823 >>820 > その場合モックへ切り替える機構はどうするんだろ に答えてやってくれ http://mevius.5ch.net/test/read.cgi/tech/1656285423/824
825: デフォルトの名無しさん [sage] 2022/09/26(月) 19:21:24.42 ID:kI3cAlPQ モックやスタブは別モジュール化しておいて mod tests内では本物モジュールをuseする代わりにそれをuseするだけじゃないの? http://mevius.5ch.net/test/read.cgi/tech/1656285423/825
826: デフォルトの名無しさん [sage] 2022/09/26(月) 19:31:47.69 ID:V9yeC/LF あと#[cfg(test)]でそれをuse そして#[cfg(not(test))]で本物use http://mevius.5ch.net/test/read.cgi/tech/1656285423/826
827: デフォルトの名無しさん [sage] 2022/09/26(月) 19:31:51.25 ID:i/jndsoD 他の言語でもユーティリティを使わずに、DIやモックを自分でやったことがないんだろうな 説明が面倒だ http://mevius.5ch.net/test/read.cgi/tech/1656285423/827
828: デフォルトの名無しさん [sage] 2022/09/26(月) 19:38:20.09 ID:V9yeC/LF >>827 テスト以外の開発の話でも フレームワークに依存してやってる人は 単純なこと含めて本質的なことを理解してない人が多く フレームワークなしでは何も分からず何も出来なくなってしまう例を時々見かける http://mevius.5ch.net/test/read.cgi/tech/1656285423/828
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 174 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.027s