スレ立てるまでもない質問はここで 154匹目

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2020/09/07(月) 18:56:51.64ID:4fn7uU/g
スレ立てるまでもない質問はここで 154匹目
2020/10/03(土) 12:51:33.85ID:1IyBCfpu
復号化するキーを画面上で発行してメールの中身を暗号化したり
ワンタイムパスワードをセッションID使って暗号化しておいて
同じセッションじゃないと使えないようにしたりすれば
メールアドレス == アカウントでもだいぶセキュアになるかも

でもパスワード忘れるような人にとってそういうのは異常にハードル高くて
サポートコストが増大するから特別なサイト以外はやらない
利便性とセキュリティのほどほどのバランス
2020/10/03(土) 13:03:48.16ID:EzoVu8Do
>>428
盗聴者がセッション開始することもできるからそれでは防げないかと

盗聴者:盗聴対象メールアドレスを入力、パスワード再設定セッション開始
盗聴者:パスワード再設定メールを盗聴、ワンタイムパスワード取得
盗聴者:ワンタイムパスワードを入力、パスワード再設定
盗聴者:パスワード再設定セッション終了

〜〜〜〜
正規ユーザー:身に覚えのないパスワード再設定メールを受信(この時点で手遅れ)



メールだとパスワード再設定が脆弱すぎる
パスワード再設定はメールじゃなく電話、SMSを必須にしたほうがいいのかも
2020/10/03(土) 13:14:51.58ID:rJVT04kJ
>>429
https://blog.kaspersky.co.jp/hacking-cellular-networks/9681/
これ5Gでも問題になってる
豆な
2020/10/03(土) 13:24:35.60ID:Y8AbULhw
不正アクセスに関しましては全て被害届を提出します
過去に実績もあります
って書いてればビビリからは攻撃受けないだろ

まぁ自動化して攻撃してるだろうから意味は無いかもしれんが
2020/10/03(土) 14:17:48.67ID:1IyBCfpu
>>429
標的のメールが常に盗聴可能な状態でパスワード再設定に必要な情報も持ってるって前提ならね

セキュリティに100%はないから
どういう種類の攻撃に対してどの程度の防御ができてるのかと
その攻撃が実現しうるリスクの程度で評価しないと
2020/10/03(土) 14:23:06.46ID:TFoea3MP
なるほどメールアドレスがそのままアカウントIDになってるサービスでは盗聴に弱いのか
ならパスワード強制リセットのページにも別のワンタイムトークンを表示しておけば……いやそんなことしなくてもWeb側のセッションIDとメールの認証キーを内部で照合すれば、セッション固定攻撃と組み合わせない限りは安全なのでは?
2020/10/03(土) 14:25:13.05ID:TFoea3MP
って428が書いてたわ
すまん見落としてた
2020/10/03(土) 14:45:21.88ID:TFoea3MP
メール受信による認証は盗聴に弱いから、多要素認証の一部として効果を発揮するのであって、単独でパスワードリセットができるのは安全性が低い
せめて生年月日とか電話番号とかを合わせて聞くようなリセット方式にしないと心許ないってところかな
2020/10/03(土) 15:23:35.99ID:iCV76+ee
セキュリティに100%はない
しかしマスコミをそれを知ってか知らずか
破られると猛烈にたたく
システムを作る側としては解がないわ
2020/10/03(土) 15:35:47.09ID:iXmRISfh
参考にAmazonのパスワードリセットのワークフローを調べた
1. メールアドレス入力、サブミット
2. ワンタイムパスワードメール受信
3. ワンタイムパスワード入力、サブミット
4. 新パスワード入力、サブミット

盗聴者が攻撃しようとしたらこれで攻撃できちゃうのでは?
1. 攻撃対象メールアドレス入力、サブミット
2. ワンタイムパスワードメール盗聴
3. ワンタイムパスワード入力、サブミット
4. 新パスワード入力、サブミット

Amazonが採用してるぐらいだからメール盗聴のリスクは考えなくてもいいのかな?
もう、わかんねえなこれ
2020/10/03(土) 15:38:28.30ID:iXmRISfh
>>435
あー、なるほど、そのための秘密の3つの質問か
アレ、なんのためにあるのか謎だったけど必要な物だったんだな
439397
垢版 |
2020/10/03(土) 17:03:59.82ID:WbMrpwtO
>>398-401
レスありがとうございます

そもそもプログラムの世界でいう「式」って、何なんですか?
「文」は理解できたけれど、「式」がいまいちピント来ません。
(どうしても算数の「式」のイメージが強くて抜けない)

文を構成する要素を「式」だと考えればよいですか?
2020/10/03(土) 17:17:01.79ID:QafhOYYm
式は評価できるもの
評価すると値やオブジェクトを得る
式は式や文の構成要素となる
2020/10/03(土) 17:22:58.65ID:QafhOYYm
式は式、項、因子から構成される
式は因子の構成要素にもなる
2020/10/03(土) 17:31:44.75ID:xp+vOEo3
Javaのifはif文なので直接変数に代入できない
Kotlinのifはif式なので直接変数に代入できる
443デフォルトの名無しさん
垢版 |
2020/10/03(土) 18:57:42.99ID:Hog1AJs4
プログラムなんてレベルじゃないので申し訳ない質問ですが、スプレッドシートで同じシート内の別タブにリンク飛ばしたい場合、PCでは飛べるけどiPhoneのアプリからは、「リンクを取得」を押しても飛べないんですけど、仕様ですか?やり方あったら教えてほしいです。
444デフォルトの名無しさん
垢版 |
2020/10/03(土) 20:41:33.18ID:5QIBKgVv
仕様です
2020/10/03(土) 23:15:12.00ID:/wA+nWqo
Ruby では、if は文ではなく式なので、戻り値を返す。
Rubyの影響を受けている、Kotlin, Rust, Go など、最近の言語は式重視

p res = if 1 + 2 == 4
"yes"
else
"no"
end

res は、no となる
2020/10/03(土) 23:29:33.97ID:jHC6YOpP
SQLで四則演算させたりするのはあまり良くないのでしょうか?
そういう処理はアプリ側だけにしてSQLは極力シンプルにするのが理想ですか?
2020/10/03(土) 23:49:59.22ID:AAeCyfpr
そんな質問をする程度のレベルなら極力SQLに寄せた方がいい
プログラミング言語は自由度がとても高いので、酷いコードは本当にどうしようもない底無しのビチグソであり、深刻な技術的負債となる
それに比べればSQLは巧拙次第でパフォーマンスの差はあれど、バカでもそこまでソフトウェアの品質に壊滅的影響を与えることは少ない
2020/10/03(土) 23:58:47.01ID:ZEneYrh5
わかりました。ではこれからSQLを電卓アプリ代わりに使っていきます。
2020/10/04(日) 01:10:36.93ID:47GmJZ02
>>445
それは C の条件演算子/三項演算子(どちらもダサいネーミングだと思います)とか lisp の cond 特殊構文などの形で過去にありましたね
2020/10/04(日) 01:13:51.71ID:hibiyDxp
>>446
素人は全部SQLでいいよ
451デフォルトの名無しさん
垢版 |
2020/10/04(日) 01:56:06.09ID:iw0dJx5p
Fortranでopenmpやり始めたんですが、遅いので調べてみたら、openmpを呼ばないで(シリアルと同じコード)単にOMP_NUM_THREADS =2とするだけで、OMP_NUM_THREADS =1より遅くなってしまうんですが、どういうことなんでしょうか。
452デフォルトの名無しさん
垢版 |
2020/10/04(日) 06:04:41.57ID:4IGvE5yV
>>446
場合による。
2020/10/04(日) 06:54:10.83ID:9mv21uX9
SQLで頑張らなきゃいけないのは結局テーブル設計がダメってこと
2020/10/04(日) 06:55:31.75ID:l91kU2Gr
>>453
テーブル設計がいいと、SQLで頑張らなくていい例を
1つでいいからあげてください
ないならそのまま逃げて構いません(笑)
2020/10/04(日) 08:25:36.50ID:9mv21uX9
>>454
クソテーブル設計者さん朝から発狂しちゃった……w
2020/10/04(日) 09:17:31.94ID:t+5MH57F
>>453
SQLで頑張らなきゃいけない場合と
SQLで頑張ることを選択した場合を区別してるなら
おおむね同意
2020/10/04(日) 09:38:14.88ID:QfJSems3
テーブル設計がシステム要求に対して適切じゃなかったからSQLが複雑になったなんてのはあるけれど
逆は必ずしも真じゃないわな。
458デフォルトの名無しさん
垢版 |
2020/10/04(日) 09:50:38.92ID:1rOiD+nc
>>445
Haskellの事も忘れないで・・・。
if式も有るけど、パターンマッチでifそのものも作れますよ。

myif True t f = t
myif False t f = f

先行評価だと、引数を全部評価しちゃうから、正常に動作しない。
遅延評価だからこそif式を自作出来る。
2020/10/04(日) 10:00:31.68ID:hibiyDxp
テーブル設計よりアプリケーション設計のほうがSQLへの影響が大きい
リポジトリパターンを採用すればテーブル設計が糞だとしてもそれほど複雑なSQLにはならない
スマートUIを採用するとテーブル設計が綺麗でもほぼ確実にSQLが混沌に導かれる
2020/10/04(日) 10:11:28.99ID:wkZyx06T
>>459
モデル設計の話をDBとごっちゃにしている点で、そのパターン論争は糞だと思うけど
2020/10/04(日) 10:45:28.99ID:8xouqNX0
ひどい脱線で言い争ってるなあ
最初の質問は
>SQLで四則演算させたりするのはあまり良くないのでしょうか?
だぞ
質問者そっちのけで言い争って勝って自分の有能さを誇示したいのか?
2020/10/04(日) 10:53:41.56ID:hibiyDxp
>>460
SQLはDBモデルからAPモデルへの関数(射影)でしかない
なのでSQLを考えるときにAPモデルのことを考えないということはありえない

そして関数(射影)というものはどちらかというとINよりもOUTの構造が綺麗なほうが綺麗に実装しやすい
複雑なデータを綺麗に整頓するよりもデータを意図的に複雑化するほうが難しいからだ

であるからAPモデルが糞(スマートUI)ならDBモデルが糞であろうとなかろうとSQLも糞と化す
APモデルが綺麗(DDD, リポジトリパターン)ならDBが多少糞でもSQLはそれほど糞にはならない
463デフォルトの名無しさん
垢版 |
2020/10/04(日) 10:57:56.20ID:oGeBy4Z3
>>462
糞はフンと読みますかクソと読みますか?
2020/10/04(日) 10:58:26.92ID:8xouqNX0
>>446
開発者やチームのスキルが常軌を逸したびちぐそレベルではないと仮定して
四則演算やそれに類するロジックなんてSQLでやらないほうがいいと思う
SQLの中のロジックに対してユニットテストが書けない
バグがあるときデバッガで途中経過を追えない
SQLにロジックを入れるとしたら、インデックスが活きる操作等、性能的な意図があるもの
2020/10/04(日) 11:01:28.78ID:8xouqNX0
SQLに処理を寄せるとDB間の移植性も落ちる
2020/10/04(日) 11:06:48.64ID:wkZyx06T
>>462
だからモデル設計のみで考えるべき問題
SQLなんて低レベルのレイヤーの都合を持ち込んで考えるからおかしくなる
だから、その論争は糞
2020/10/04(日) 11:13:04.36ID:IHMs+qq2
SQLに色んな処理を書く人は
PHPとHTMLをごちゃ混ぜにしてるぐらいセンスないね
468デフォルトの名無しさん
垢版 |
2020/10/04(日) 12:23:00.03ID:oCHjZLK6
計算は別のところでやって
DBにはその答えを全部記憶していけばいい
究極のメモ化が完了する
2020/10/04(日) 13:06:14.51ID:hibiyDxp
まとめ

* 原則的にはSQLにドメインロジックを書かない
* パフォーマンスなど理由があるならば原則を破ってよい
* 原則を破る場合は積極的にドキュメンテーションすべし

次の方どうぞ
470デフォルトの名無しさん
垢版 |
2020/10/04(日) 13:29:28.01ID:4IGvE5yV
>>468
計算した結果が出るViewを作ったりしてな。
マテリアルビューとかでやれば普通の表と似たようなものか。
2020/10/04(日) 13:38:21.04ID:xsUyERPe
小学生です。
今九九を自動化するためにDBに1の段のテーブル、2の段のテーブル……と作っています。
例えば8×7の場合は
select result from 8_no_dan where kakeru_aite = 7;でresultに56が出てきます。
これって商品化できますか?
2020/10/04(日) 13:45:41.53ID:hibiyDxp
売れるかどうかはともかく商品化は可能なのでは?
2020/10/04(日) 13:47:45.30ID:t5q2DIGq
うん、商品にしても構わんよね
俺は買わんけど
2020/10/04(日) 14:20:36.68ID:ykILSOcJ
>>455
やっぱり逃げましたね(笑)
2020/10/04(日) 14:22:00.56ID:ykILSOcJ
>>464
> 四則演算やそれに類するロジックなんてSQLでやらないほうがいいと思う
> SQLの中のロジックに対してユニットテストが書けない

データベースを入れないでテストしても正しく動作するという保証はできません
データベースを入れてテストするならテストはできます
2020/10/04(日) 14:39:24.05ID:t+5MH57F
>>464
書きやすさやりやすさの違いはあるだろうけど
SQL内のロジックに対してもテスト書けるしデバッガも使えるでしょ
2020/10/04(日) 14:43:39.75ID:t+5MH57F
>>469
>* 原則的にはSQLにドメインロジックを書かない

四則演算はすべてドメインロジック?
2020/10/04(日) 15:22:34.07ID:bGe+XfpJ
同じ糞ならSQLのほうがマシ、は真
適切なフレームワークさえあれば、本質的にはコードよりよほどテストは容易
2020/10/04(日) 15:25:09.66ID:h1367H/A
>>475
それはユニットテストの範囲じゃなくてインテグレーションテストの範囲でしょ
2020/10/04(日) 15:26:26.46ID:h1367H/A
>>476
SQL内ロジックのデバッグは知らないのでよかったら教えてほしい
ストアドファンクションのデバッグなら知ってる
2020/10/04(日) 15:27:58.49ID:bGe+XfpJ
>>479
SQLは単体テストでしょ
世の中、ORMや典型的なリポジトリパターンだけで作れるような簡単なシステムばかりじゃないよ
2020/10/04(日) 15:47:36.28ID:k2QVBKjJ
単体か結合かはあまり気にしなくていい
要点は自動化できるかどうか
SQLは自動テストできるがとにかく遅い
規模が大きくなるとその遅さに耐えられなくなる
なのでSQLはテストしなくてもいいぐらい単純化する
複雑なビジネスロジックでもインフラが関わらなければ自動テストがすぐに終わる
2020/10/04(日) 15:52:46.47ID:k2QVBKjJ
デバッグはしなくていい
関数のI/Oだけを見ればいい
2020/10/04(日) 16:06:58.13ID:qG3oE3Yr
>>479
そうやってテストしないからバグが出る
ユニットテストの中でデータベースを使ってるだけに過ぎない
ユニットテストの中でファイルを使っていれば、ファイルの読み書き部分は省くのかよw
2020/10/04(日) 16:30:23.87ID:H7RSzWbS
>>483
てきとーにI/Oだけみて正しいと判断できちゃうような単純な関数しか実装させてもらえない人なのかな?
2020/10/04(日) 16:42:49.40ID:k2QVBKjJ
>>485
単純に越したことはないがI/Oだけで判断できる純粋な関数はどんなに複雑化しても簡単にテストできる
なので経験を積んだ人ほど関数を好む

そして純粋な関数とはインフラストラクチャの定形的なコードと切り離された純然たるビジネスロジックそのもの
なのでそこを任されるということは実力を信用されているということだよ
2020/10/04(日) 17:16:17.84ID:8xouqNX0
互いの言葉尻だけ捉えて持論を垂れ流すレスバトルだな
自尊心を満たした気分になる以外に何のメリットがあるのか
488デフォルトの名無しさん
垢版 |
2020/10/04(日) 17:29:49.03ID:QiXPDRB0
>>462
APモデルってなんですか?
アシスタント・プロデューサーって可愛いですか?
2020/10/04(日) 17:42:29.62ID:iwZf/b5U
>>487
有益な知識が少しでも広まれば国内の生産性が上がる
たとえそれが雀の涙のようなものだとしても無価値ではない
2020/10/04(日) 18:30:37.36ID:t+5MH57F
>>480
例えばSQL ServerのT-SQLのデバッグはSSMSやVisual Studioでできるよ
他のDBでも似たようなのあると思うけど求めてるものが違うのかな
https://docs.microsoft.com/en-us/sql/ssms/scripting/transact-sql-debugger
2020/10/05(月) 04:46:05.27ID:JV/o/2r7
double random = Math.random() * 10D;

java初心者なんですがこのDってなんなんでしょうか? 演算子を調べても載っていませんでした
2020/10/05(月) 06:03:41.00ID:ey7A18ly
>>491
Java 数値リテラル
で検索せよ
2020/10/05(月) 13:11:17.75ID:woOxhzJw
statelessとimmutableはなにが違うのですか?
2020/10/05(月) 14:32:27.28ID:260iGAL2
>>493
修飾する対象と使われるコンテキストが違う

stateless protocolとimmutable objectは何が違いますか?
2020/10/05(月) 14:57:27.73ID:kT6B15L4
オブジェクトに限定して、おおまかに言えば
イミュータブルは生成時に与えた初期状態が後から変更できない性質
Javaならメンバ変数が全てfinal
ステートレスはさらに生成時も含めて状態を持たない
Javaならメンバ変数が全てstatic final
2020/10/06(火) 11:31:01.86ID:sp/t8JUg
ここでお尋ねすることじゃないかもしれませんが
いま求職中で職業訓練校に通おうか迷っています

で、Java講習を3か月かけてやるみたいなんですが、どの程度の効果が見込めるでしょうか
いい機会なので有料のスクールにでも通おうかなと思っていた矢先にこの話が出てきたので気になりました
2020/10/06(火) 11:50:08.33ID:gY9whtUF
>>496
失業保険申請に有利な効果が望める

ただ、金を払って行くのはかなり微妙
無料のプログラミング職業訓練を労働局のほうに相談すべきかな?
2020/10/06(火) 11:51:32.92ID:E2aRN+Pn
Javaの習得という点ではぶっちゃけ独学と大差ないだろうけど、モチベーションの維持とか、一応学校出たと履歴書に書けるし就職のサポートもそれなりにあるという意味では効果はあるだろう
2020/10/06(火) 11:58:34.60ID:rlg94EFu
雇う側からしたらプログラミングスクール卒より職業訓練卒の方が信用できるような
2020/10/06(火) 14:44:56.46ID:ciOkwbMi
職業訓練校も結局、市販されてる教本を
雇われの講師がなぞるだけだから・・・(震え声)
2020/10/06(火) 14:49:17.68ID:7AMsCPc2
ポーズを取るということは社会生活において非常に重要
結果として中身が同じでも訓練をうけたというポーズをとれば評価される
それが社会の仕組み
2020/10/06(火) 22:51:07.41ID:zDEskpKM
>>496
プログラミングは寝ても覚めてもプログラミングのことで頭いっぱいなくらいじゃないとまったく伸びないどころか苦しむ
2020/10/06(火) 23:21:03.85ID:Bbd0nE1b
ちゃんとプログラムを書ける能力があったからといって社会で評価され賃金に結びつくかはまた別の話・・・
504デフォルトの名無しさん
垢版 |
2020/10/06(火) 23:30:02.54ID:UOuIyfzj
ええ40過ぎて職業訓練とプログラミング教室の、
両方を受講修了しても人出不足のIT業界からはお呼びではありませんorz
2020/10/07(水) 03:30:10.84ID:qlNjOdYh
YouTube で有名な、雑食系エンジニア・KENTA は、
SES 系は、ポートフォリオなしで誰でも受かるから、有料学校は無意味と言ってる

一方、Ruby on Rails は、就職サポートありなら、80万円ぐらいする。
YouTubeで有名な、まこなりのTech Camp のイナズマコースは、1週間で、20万円とか

これを、YouTubeで、SES のモローが批判してた。
この内容は、独学で1万円ぐらいで出来るって。
まこなりに対決を申し込んでたw

基本、自社開発系Ruby vs SES Java土方奴隷の構図

YouTubeで有名な、東京フリーランスのとだこうきは、
デイトラで、10万円のRails コースを作って、価格破壊を起こした
506505
垢版 |
2020/10/07(水) 03:43:14.20ID:qlNjOdYh
日本は、自社開発系Ruby on Rails vs SES系Java土方奴隷の構図

SES系Javaは人気ないから、ポートフォリオなしで誰でも受かる

一方、Rails では、
ベンチャー企業は、AWS, CircleCI, Ruby on Rails ばかり採用するから、これが基本になってる

未経験者のレベルが上がりすぎて、他言語の10年ぐらいのベテランの域まで達している。
もう、他言語が相手ではなく、同じ未経験者がライバルw

KENTA がびっくりした未経験者は、
ポートフォリオに、Terraform, Packer まで入れていたとか、
SIer でサーバー構築運用をやっていた人らしいが、
Rails には遂に、こんな怪物まで出てきた!
507505
垢版 |
2020/10/07(水) 03:55:38.20ID:qlNjOdYh
アラフォー大逆転プログラマー たけ

【Rails】(送信時のリロード無し!)Action CableでSlack風チャットアプリを作成
https://www.youtube.com/watch?v=o6PuxDr8Meg

プログラミングを始めて半年で、こういうのを作って発表する化物もいる

この人は、数学の博士課程まで行ってた人。
地頭さえ良ければ、Ruby on Rails 1年で、他言語の10年ぐらいの実力がつく
2020/10/07(水) 10:49:30.90ID:XQGZutpf
>>507
それなんの役に立つんです?
509505
垢版 |
2020/10/07(水) 11:13:37.80ID:qlNjOdYh
Rails のAction Cable は、Web Socket を実装したもの

1対多の通信。ブロードキャスト。
人狼などの対戦型ゲームで使う
2020/10/07(水) 11:14:13.91ID:r+XQDTLB
上級プログラマが用意したライブラリを少し組み合せただけでイキがる初心者が増えたことは問題だと思う
大したことしてないのにアピールするのは上手な人達が評価される社会ではライブラリを用意する側の人材が育たない
日本が世界に勝てない理由のひとつ
511デフォルトの名無しさん
垢版 |
2020/10/07(水) 11:14:16.03ID:vRtHB81I
sfルクセンブルクの多言語人工衛星管理企業
512505
垢版 |
2020/10/07(水) 11:32:52.84ID:qlNjOdYh
もう、昔と時代が違う

KENTA みたいな、1年で、10年分に匹敵するような、
一種のチート技が登場したのは、OSS, Linux の進化による果実

今の未経験者のレベルは、恐ろしいほど高い。
KENTAが言ってるように、老害プログラマーなどはライバルではない。
優秀な未経験者がライバル

AWS, CircleCI, Ruby on Rails
Docker, Kubernetes, Terraform, Packer

こういうのをポートフォリオに入れてくる、怪物がいる
2020/10/07(水) 11:39:50.42ID:r+XQDTLB
基礎がなってないとコードはめちゃくちゃ
インフラもスケールしない、不安定、リソース使いすぎコスパ悪い
道具ひとつひとつ使えても話にならんよ

使える、と、うまく使える、の間には天地の差がある
2020/10/07(水) 13:46:11.74ID:6kg7KhWs
Ruby自体がオワコンなのに今更Ruby押しの時代遅れジジイチューバーいるのかよ

1年ごときはソースが初心者すぎて話にならんだろ
業務はOSSされてないからな
チャットアプリってもっとも簡単な部類
むしろ初心者向け
チャットアプリ作れたら複雑膨大な業務システム作れるのか?
2020/10/07(水) 13:50:48.16ID:7nLWSAZj
>>495
そのステートレスオブジェクトの定義ってJavaのドキュメントとかで使われてる?

その定義だとStateless Session Beanはステートフルオブジェクトになる

それにstatic finalでも変数がオブジェクトなら
一般的にはステートフルと呼ばれる振る舞いを実現可能
2020/10/07(水) 15:20:16.08ID:ZyN7Pqa6
スパゲッティVBしか書けない人が要職にいたりするしな
517デフォルトの名無しさん
垢版 |
2020/10/07(水) 15:59:58.34ID:lF+7ZBuu
スパゲッティとはBASICで縦横無尽にgoto行番号しているソースに与えられる称号
VBごときでスパゲッティを語るな
2020/10/07(水) 16:57:11.06ID:gc9M84DK
今既存のソフト組み合わせてサーバ立ててシステム作るみたいな案件の最中なんです。コードとか一切書かないんですけど
それでそこで個々のソフトの機能だったりをテストすることを「単体テスト」って言ってたりするんですけどこういう用語の使い方ってよくあることなんですか?
単体テストって言ったらプログラムの一部に対して行うものだとばかり思ってたんですけど
何分こういう仕事は全く初めてなもので勝手がわかりません。よろしくおねがいします。
2020/10/07(水) 17:11:35.06ID:9tAnRZjq
>>518
案件によるとしか言えませんが、あながち間違ってはいないと思います

そのソフトに対して特定の機能だけを期待して、それを呼び出す自前のコードのモジュールとする場合、よくある設計モデルでは詳細設計にあたります
→具体的にどう実現するのかを設計

この詳細設計に対応するテストを単体試験と呼ぶことは多いです
2020/10/07(水) 17:22:42.24ID:9tAnRZjq
>>518
前提から、まだ理解が及んでいなさそうだと気付きました

テストはプログラムに対して実施しますが、
そのテストは仕様を元として作ります
つまり、テストは対応する仕様が無ければ作成できないものです

これをエラーを無くすためにテストを行う、という思い違いをされている人はいます
しかし、例えば「仕様としてゼロ除算をする」というモジュールならば、ゼロ除算で落ちなければテストは失敗になります
テストとはそういうものです
2020/10/07(水) 17:41:04.93ID:+yUuwD4N
>>518
単体テストとは、関数、もしくは関数の集まりであるモジュール
もしくは同等の単位であるクラスに対するテストのことです。
しかしそのことを知らないアホ会社も多いです。

単体テストで用いられているツールを聞いてみましょう。
それらのツールは「単体テストを行うツール」と名乗っているはずなので
そのツールで行うテストが単体テストであることは明白です。
使っているツールの名前を答えられなければ、アホ会社確定です。
2020/10/07(水) 18:08:39.62ID:aZrfGhEg
今の時代に単体テストっていうとxUnitテストを自動実行する事
アジャイルでコミットした時にデプロイされて自律的にxUnitがCIっちゃう事だよ
単体テストが単体で語られる事はなくてcontinuous integrationの一要素として実装されてることが前提
特にチーム開発だと単体テストだけじゃなくて色んなテストをいかに実装できるか、トレーサブルにするかが肝
最近だと完全自動デバッグAIがバズったけどナウなヤングにバカウケだったよね
2020/10/07(水) 18:10:26.11ID:aZrfGhEg
>>517
VBにはON ERROR GOTOファミリーというスパゲッティを良く絡ませてくれるソースがあるよ
そこに割り込み処理を振りかければなかなかのスパゲッティが出来上がるよ
2020/10/07(水) 18:12:40.25ID:+yUuwD4N
完全自動デバッグAI(笑)

AIでデバッグのうちの「何か」は自動化でできる可能性があるだろうが
その「何か」がわかっていれば、こんな名前にはしない
この名前自体が「何ができるかわからない」と言ってるようなもん
2020/10/07(水) 18:13:39.42ID:+yUuwD4N
>>523
それはgotoじゃないよw
区別がつかないのは素人の証な
2020/10/07(水) 18:14:49.72ID:7nLWSAZj
>>518
システム/ソフトウェアの一部分を他の部分から切り離して
独立したものとしてテストする際の最小単位を単体と呼ぶ
何を単体とみなすかは扱う対象や組織によって異なる

既存のソフトを組み合わせて何らかのシステムを構築しようとする場合に
組み合わせる前の各ソフトを、他から切り離し独立してテストを行う最小単位ということにして
個々のソフトの機能をテストすることを単体テストと呼ぶのは割と自然だと思う
2020/10/07(水) 18:18:00.12ID:+yUuwD4N
「単体テスト」というのはちゃんとした定義があるが
それに反している会社があるという話
たいていそういう所はプロジェクトがめちゃくちゃ
2020/10/07(水) 18:22:28.03ID:ZV608qgt
.netでフォームアプリケーション作ってるんですが、ウインドウが非アクティブのとき(他の画面をクリックして操作しているとき)に処理がとまってしまいます

どういった原因が考えられるでしょうか??
■ このスレッドは過去ログ倉庫に格納されています