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

レス数が1000を超えています。これ以上書き込みはできません。
1デフォルトの名無しさん
垢版 |
2021/02/20(土) 17:17:54.73ID:56yjs2OO
この板はプログラムを作る人のための板です。
あらゆる質問はまず
スレ立てるまでもない質問はここで
スレにしてください。

【前スレ】
スレ立てるまでもない質問はここで 155匹目
https://mevius.5ch.net/test/read.cgi/tech/1606439237/

次スレは>>980が立てること
2021/02/20(土) 21:41:46.12ID:Kl27cWFK
同じクラウド内なら通信量ってカウントされないよね?
2021/02/20(土) 23:09:51.97ID:U7pMbrRO
>>2
リージョンやゾーンも同じでpublic IP使わない通信なら基本カウントされない
2021/02/20(土) 23:59:48.80ID:laim+Sgf
>>1
いちおつ
2021/02/22(月) 01:07:56.31ID:rWKghkvi
スレチだったらすみません
スプレッドシートに COUNTA(L2:AAB2) という記載があったのですがAAB2はどういう意味でしょうか?
実際の画像です https://i.imgur.com/LbYig0B.png
2021/02/22(月) 01:32:40.89ID:Ro5b5b9M
Zの次はAA
2021/02/22(月) 01:33:57.29ID:UEjjQNjA
>>5
AAB列の2行目のセル
2021/02/22(月) 01:57:18.37ID:rWKghkvi
つまりはとても大きいってことですか
回答ありがとうございました!
9デフォルトの名無しさん
垢版 |
2021/02/24(水) 11:25:43.86ID:/7SVkk6c
rubyの正規表現で文中の数字の位置を調べるために、下記のように書きました。

"xyz243" =~ /(\D|^)\ d{3}(\D|\s|$)/

すると、
#=> 2
として結果の位置が3ではなくて2とずれて表示されたのですが、何故でしょうか?
2021/02/24(水) 11:37:17.35ID:9gaCPeun
z243にマッチするから結果は合ってる
正規表現が間違ってる
11デフォルトの名無しさん
垢版 |
2021/02/25(木) 06:44:07.67ID:6tXaXq4d
html のレイアウトって一々width指定しなきゃダメなの?
エクセルとかみたいにドラッグで幅変更できるソフトとかないの?
12デフォルトの名無しさん
垢版 |
2021/02/25(木) 10:25:30.79ID:GHF9B9DF
>>11
そんな機能はHTMLの標準機能で実装されていない。
そもそもHTMLはマークアップ言語であってプログラミング言語ではない。
基本的にレイアウトやデザインはHTMLではなくCSSで設定する。
動的なページを作りたければ、JavaScriptでコントロールしろ
という考え方。

Webページ作成ソフトの事を言っているのなら、HTMLの問題でなく
作成ソフトの問題。ホームページビルダー等でそういう事ができるか
どうかは知らない。
2021/02/25(木) 11:33:41.08ID:i+ckTACj
>>11
エクセルからHTML出力できるよ
2021/02/25(木) 23:32:48.58ID:NwngGk4h
サーバーって言葉には
1.サーバーソフトウェアのこと(ApacheとかNginXとか)
2.サーバーソフトウェアを動かしているマシン(ハードウェア)のこと
・・・の二つの意味があると思うのですが、ここで質問です。

サーバーソフトを動かしているマシン上ではサーバーソフトしか動かせないのでしょうか?
(サーバーソフトは特別なソフト?)

そんなことはなく、サーバーソフトを動かしているマシン上でも、
普通にソリティアやマインスイーパーで遊べたりできるんでしょうか?
(サーバーソフトは特別なソフトでもなんでもなく、ソリティアと同じレベルのソフト?)
2021/02/26(金) 00:06:07.77ID:Uu1lQaJf
>>14
サーバーは役割
OSはWindowsServerやLinuxが多い
しかしただのWindows10かもしれない

ハードウェアもサーバー向けが使われる事が多いが
そこらの自作パソコンやノートパソコンでも出来ないわけじゃない

まずは自作パソコンを組み立ててサーバー向けOSをインストールしてみたほうがいい
もしくは安く売っているようなサーバー向けPCでもよい
安い時は1万円程度で売っている

サーバーの勉強目的ならRaspberryPiは避けたほうがよい
2021/02/26(金) 00:21:41.11ID:Bk6XWue8
サーバも今だとホームサーバ、VPS、クラウドで分けて考えた方がいいね
公開しない、する、可用性と拡張性も気にするって具合で
2021/02/26(金) 00:52:59.40ID:tFK0PlkJ
>>14
>サーバーソフトを動かしているマシン上ではサーバーソフトしか動かせないのでしょうか?
いいえ

>普通にソリティアやマインスイーパーで遊べたりできるんでしょうか?
Windows Serverならできる
その他のOSでもGUIがあればだいたいできる
(サーバーとして使う場合はGUIを入れないことも多い)

>サーバーソフトは特別なソフトでもなんでもなく、ソリティアと同じレベルのソフト?
同じ面もあれば違う面もある
起動後はメモリに常駐してクライアントのリクエストに応じて
何らかの処理をして結果を返すのがソフトウェアとしてのサーバーの役割
複数のクライアントからのリクエストを同時に捌けるように作るのが普通
2021/02/26(金) 00:59:53.68ID:yh0R3Tzg
来週も、サービスっサービスぅ!
2021/02/26(金) 01:05:25.41ID:tFK0PlkJ
Wndowsサービスはサーバーの場合もあればそうじゃない場合もある
2021/02/26(金) 05:11:28.10ID:7gSGuGqY
WindowsServerは普通にOffice入れたりする
リモートデスクトップみたいなサービスもある
21デフォルトの名無しさん
垢版 |
2021/02/26(金) 10:01:35.52ID:dY7Klnj+
>>12
ありがとうございます!
2021/02/26(金) 13:46:55.17ID:wk7rpQA7
>>20
普通はOfficeは入れない
2021/02/26(金) 14:19:56.57ID:Uu1lQaJf
WEBアプリからDLL呼ぶから意外と入れる
ライセンス的にどうなんだろうね
2021/02/26(金) 15:03:42.55ID:6dBCfrid
>>23
クライアントがすべてライセンスを持ってるならライセンス的にはOKぽい
技術的には問題があるが
https://support.microsoft.com/en-us/topic/considerations-for-server-side-automation-of-office-48bcfe93-8a89-47f1-0bce-017433ad79e2
25デフォルトの名無しさん
垢版 |
2021/02/27(土) 05:30:01.63ID:hpJz9JUm
子プロセスを呼び出すプロセスは、そのプロセスがkillされたとき
自分が呼び出した子プロセスをkillするものだと思うけど
デフォルトでそうなってないのってなんで?
2021/02/27(土) 06:29:04.32ID:NdmEqzoY
逆に、親が死んだとしても子供が死ぬ謂れがないのに、なんで子供が道連れに死ぬものだと思うの?
2021/02/27(土) 07:17:12.57ID:xGn+rZN0
パイプライン・ジョブ・タスクランナーみたいな、
複数のプロセスで処理するものは、個別のプロセスに意味がない

だから親が止まれば、すべての子も止まるべき

流れ全体が、正常が異常かだけが重要。
データベースと同じ

全体が成功すれば成功で、
1つでも失敗すれば、全体をロールバックする
28デフォルトの名無しさん
垢版 |
2021/02/27(土) 07:24:00.97ID:hpJz9JUm
>>26
デフォルトの問題です。
当たり前ですが人間の話はしていません。

親プロセスが死んだとき、子プロセスだけが生き残っていて嬉しいことがありますか?
それは特殊な例だけでしょう
29デフォルトの名無しさん
垢版 |
2021/02/27(土) 07:26:30.81ID:hpJz9JUm
ディレクトリに当てはめれば
親ディレクトリが削除されたとき、下位ディレクトリだけ残っていて
なにか嬉しいですか?と同じ話ですよ
2021/02/27(土) 07:31:01.56ID:pn9T/JCU
>>25
コンソールベースのシステムは子が一緒にkillされるのが用途と直感に敵っていた
一方GUIベースのシステムでは子がkillされるのは多くの場合直感に反する
あるアプリがメモ帳を開いたとして、アプリが終了したときにメモ帳が勝手に閉じるのは不自然
MDIならさらに悪いことになる
31デフォルトの名無しさん
垢版 |
2021/02/27(土) 07:37:29.03ID:hpJz9JUm
>>30
だからデフォルトの話だって
MDIだってウインドウを閉じたら、中のウインドウも一緒に消えるはずだ
32デフォルトの名無しさん
垢版 |
2021/02/27(土) 07:39:27.74ID:hpJz9JUm
そもそもGUIのシステムでアプリが別のアプリを起動することは殆どない
2021/02/27(土) 07:43:41.52ID:NdmEqzoY
>>28
いや、そのデフォルトの話としてですね
プロセスに関して「死ぬ」と表現しているように、生命をそのモデルとしています
そして子供は親の所有物ではなく、関係しているだけです
親ディレクトリが削除されたファイルだって、実際にはlost+foundディレクトリに移されるだけというシステムもあれば、ファイルがあったらディレクトリは削除できないシステムもあります

で、親が死んだら子供も無理心中すべきではないのか?という思想にそれほどの蓋然性はあるのですか?
2021/02/27(土) 07:49:56.95ID:pn9T/JCU
>>31
デフォルトの話って何のOSの話をしてるの?
俺は普通にアプリからプロセス起動するけど

最初にクソレスがついて質問者が反発して意固地になってるパターンっぽいからこれもうメンドクセェな
2021/02/27(土) 07:51:03.46ID:pn9T/JCU
MDIの中のウィンドウはプロセスとは限らんよ
36デフォルトの名無しさん
垢版 |
2021/02/27(土) 07:52:42.43ID:hpJz9JUm
>>33
> プロセスに関して「死ぬ」と表現しているように、生命をそのモデルとしています

ソースでもあんの?そうしなければいけなかった理由は?
37デフォルトの名無しさん
垢版 |
2021/02/27(土) 07:54:10.80ID:hpJz9JUm
>>33
> で、親が死んだら子供も無理心中すべきではないのか?という思想にそれほどの蓋然性はあるのですか?

はい。親プロセスがいない状態で子プロセスだけが残ってることに
どれだけ意味があるんですか?まだこの質問に答えてもらってません。

例外があるのは知ってますので、例外的な例ならいらないです。
子プロセスを起動する殆どのプログラムに当てはまる例を聞いています
38デフォルトの名無しさん
垢版 |
2021/02/27(土) 07:55:15.29ID:hpJz9JUm
>>35
> MDIの中のウィンドウはプロセスとは限らんよ
じゃあなんであなたはMDIなんて例を持ち出してきたんですか?
2021/02/27(土) 08:02:14.39ID:pn9T/JCU
>>38
起動したウィンドウが子プロセスがどうかはエンドユーザーには見分けられない(コンソールなら一目瞭然)
そこでユーザがそのシングルプロセスのMDIアプリケーションで別ドキュメントを開いて閲覧や編集を始める可能性がある(まあMDIじゃなくても別ドキュメントを操作し始めることはある)
親と道連れでまるっとkillされると、ユーザーの意思で開いたドキュメントも閉じてしまってまずい
2021/02/27(土) 08:03:31.86ID:NdmEqzoY
>>37
君の主張こそが例外
現実を見よう

>>36
ライフサイクルって言葉を聞いたことないのかい?
41デフォルトの名無しさん
垢版 |
2021/02/27(土) 08:03:37.55ID:hpJz9JUm
>>39
ああ、基本的なことがわかってないのね

MDIは親ウインドウが閉じたら、子ウインドウは全て閉じます。

理解したら出直してね。
42デフォルトの名無しさん
垢版 |
2021/02/27(土) 08:04:26.32ID:hpJz9JUm
>>40
> 現実を見よう

だからその現実を教えてくれって言ってんの
親プロセスが死んだとき、子プロセスが残っていて何が良いことでもあんの?

現実を見よう。
ないから、何も言わないんだろ?
2021/02/27(土) 08:06:00.50ID:pn9T/JCU
>>41
いや一度深呼吸して落ち着いて読み直してくれ
俺はMDIは一蓮托生だからこそ困るケースになるという話をしてる
44デフォルトの名無しさん
垢版 |
2021/02/27(土) 08:08:20.03ID:hpJz9JUm
>>43
> 俺はMDIは一蓮托生だからこそ困るケースになるという話をしてる

じゃあ、MDIの子ウインドウだけ残っていて
アプリが適切に動く例が存在するんか?

MDIの子ウインドウだけ残っていてもまともに動かないだろ
CLIでも同じで、子プロセスだけ残っていてもまともに動かないから
親プロセスが死んだとき、子プロセスだけ残っていても意味がないだろって
話を出発点にしてるのに、

MDIだと子ウインドウだけ残っていて
まともに動くんか?
45デフォルトの名無しさん
垢版 |
2021/02/27(土) 08:09:30.44ID:hpJz9JUm
どうもMDIも知らんみたいだから画像貼り付けとくわw

https://www.atmarkit.co.jp/fdotnet/winexp/winexp01/winexp01_01.html
https://www.atmarkit.co.jp/fdotnet/winexp/winexp01/winexp01_02.gif

ファイルの保存などの機能は、親ウインドウがやってるから
親ウインドウが死ぬの、子ウインドウだけ残っていても意味ないの
46デフォルトの名無しさん
垢版 |
2021/02/27(土) 08:09:46.21ID:hpJz9JUm
親ウインドウが死ぬと、子ウインドウだけ残っていても意味ないの
47デフォルトの名無しさん
垢版 |
2021/02/27(土) 08:24:37.06ID:k03S0y+9
なでしこスレに投下したとこだけど、あそこ動いてないからこっちにも投下させてください
linuxにwineでなでしこ入れたのは良いけど、calc使いたくて
calc起動 でwindowsだとopenofficeやlibreofficeのcalcが起動するんだけど
linuxでは当然起動しない

何か起動する方法はないかと探してるけどどうだろう
2021/02/27(土) 08:37:16.83ID:pn9T/JCU
>>44
MDIの子ウィンドウだけ残るなんて話してないぞ
具体的に書こうか
親プロセスPが子プロセスCを起動したとする
Cは他人が作ったMDIアプリで、起動時の指定でドキュメントD1を開いたとする
ユーザーがCのウィンドウを見てD2を開いたとする
Pが終了したとき、Cも終了するとなると、D1とD2も当然閉じる
D1が閉じるのは意図通りだけど、D2が閉じるのはユーザーの期待に反する
そういうケースの説明のためにMDIを例示した

ただ俺のMDIへの言及は枝葉にすぎない
俺が伝えたい肝は、GUIシステムにおいて子プロセスがウィンドウを持つときユーザーからは子プロセスとして認識できないので誤解を生じるという点
もちろん子プロセスがウィンドウを持たないことも多いが、持つことも多い
どちらが多いなんて言い張り合いをする気はないが、デフォルトを決める上で勘案すべき事柄
49デフォルトの名無しさん
垢版 |
2021/02/27(土) 09:53:54.84ID:hpJz9JUm
>>48
どうでもいい情報ばかりで説明下手すぎ

> Cは他人が作ったMDIアプリで、起動時の指定でドキュメントD1を開いたとする
> ユーザーがCのウィンドウを見てD2を開いたとする

CじゃなくてMDI設定にしたエクセルでいいだろ
エクセル起動して、エクセルの中の1番目のウインドウでドキュメントD1が開く
同じくエクセルのウインドウを見てD2をが
エクセルの中の2番目のウインドウでドキュメントD2が開く

こーなりました。
https://docs.microsoft.com/ja-jp/office/vba/images/odc_xl15_ta_programmingthesdiinexcel2013_02.jpg
エクセルの中に、2つのウインドウがあるんだから
エクセルを終了したとき、2つのウインドウが閉じるのはユーザーの期待通りだ
50デフォルトの名無しさん
垢版 |
2021/02/27(土) 09:59:35.99ID:hpJz9JUm
>>48
> 親プロセスPが子プロセスCを起動したとする

親プロセスPが、シェル対して「ドキュメントを開く」のアクションを
実行するって話なら、親プロセスがCを起動してなんかいない

プロセスが他のプロセス(子プロセス)を開くという話と
プロセスがシェルに依頼してプロセスを起動してもらう話を
ごっちゃにするな
2021/02/27(土) 10:25:50.90ID:pn9T/JCU
こりゃもう口論が目的化してるな
当初の質問も理由が知りたかったのか、そんなデフォルトおかしいよねとただ共感してもらいたかったのか
2021/02/27(土) 10:37:10.60ID:Hg2wHc/X
Win32のCreateprocessはシェルを介さないで直接子プロセスを起動するだろう。
そこで親が先に死んだら子プロセスが親なしになるだけ。
53デフォルトの名無しさん
垢版 |
2021/02/27(土) 13:35:02.43ID:hpJz9JUm
>>51
じゃあ仕切り直し

25 自分:デフォルトの名無しさん[] 投稿日:2021/02/27(土) 05:30:01.63 ID:hpJz9JUm [1/15]
子プロセスを呼び出すプロセスは、そのプロセスがkillされたとき
自分が呼び出した子プロセスをkillするものだと思うけど
デフォルトでそうなってないのってなんで?
54デフォルトの名無しさん
垢版 |
2021/02/27(土) 13:44:30.37ID:hpJz9JUm
Wndowsでも親プロセスが死んだら子プロセスも殺したいんだって
みんなあれこれ悩んでるね。

なんでみんな望んでる動作をデフォルトにしなかったんだろうか
55デフォルトの名無しさん
垢版 |
2021/02/27(土) 14:11:49.68ID:Npk4kHio
みんなと言えるほど多くの人は望んでないから。
56デフォルトの名無しさん
垢版 |
2021/02/27(土) 14:23:18.53ID:hpJz9JUm
まーた口論することが目的のレスをする
困ったもんだねw
2021/02/27(土) 14:33:36.68ID:h9r4vamJ
ぼくの常識が世間の常識じゃないのは嫌!というだけのことだな
2021/02/27(土) 14:41:42.27ID:Hg2wHc/X
普通に考えて、子プロセスが生きている間それを起動したプロセスを終了できないという
制約があったらいろいろと面倒だと思うが。
親が死んだら子を殺す動作をオプションとして簡単に実現できるようにしてほしいという
要望ならわからんでもないが、そこは手間の問題。
2021/02/27(土) 15:13:28.59ID:HtPM28za
子プロセスを作った時点で、ハンドルを保存しておけば
親が閉じるときに子のハンドル使って閉じれば良いだけやん
60デフォルトの名無しさん
垢版 |
2021/02/27(土) 16:02:00.45ID:hpJz9JUm
>>58
俺は最初から親プロセスが死んだら子プロセスを死ぬ動作が
デフォルトのほうが良かったんじゃないかって言ってるんだが?

俺が言ってないことを、さも俺が言ったかのように書かないでくれ
61デフォルトの名無しさん
垢版 |
2021/02/27(土) 16:02:33.35ID:hpJz9JUm
>>59
Windowsの話に限定しないように
そもそもLinuxの話をしてたんだが
2021/02/27(土) 16:15:46.90ID:gpIUgjPn
ずっと板違いだし20回レスしているおかしいやつまでいるのかよ
2021/02/27(土) 16:17:07.40ID:Hg2wHc/X
>>60
子プロセスを自動的に殺すか殺さないか2つの案があるときに、デフォルトの動作として
どちらを選ぶかという話とデフォルトではない方の動作をオプションとして提供するかどうか、
その2つの話に分けて説明したつもりなんだが。
64デフォルトの名無しさん
垢版 |
2021/02/27(土) 16:21:22.18ID:hpJz9JUm
>>63
それは最初からわかっていてその後の話、
なんでデフォルトが殺さない方にしたのか
という話をしてる

> 親プロセスが死んだとき、子プロセスだけが生き残っていて嬉しいことがありますか?
> それは特殊な例だけでしょう
65デフォルトの名無しさん
垢版 |
2021/02/27(土) 16:22:38.95ID:hpJz9JUm
>>63
あと俺が言ってないのは
「子プロセスが生きている間それを起動したプロセスを終了できないという制約」
だからな。

俺はそんな制約があったほうが良いなんて一言も言ってない
どこからその話が出てきたのか全くわからない
2021/02/27(土) 16:52:11.78ID:Hg2wHc/X
伝わらんかな?

1. OS側で強制的に殺す
2. 殺さない(必要に応じてプロセス側でやる)
3. 両方選択できるようにしてどちらかをデフォルトにする

1は困る場面があるし3は手間の問題だと言っているんだが。
67デフォルトの名無しさん
垢版 |
2021/02/27(土) 16:58:48.93ID:hpJz9JUm
>>66
最初から2の話しかしていない。なんで2になってるのかという話をしてる
俺は1は候補にすら出してないから書くのはやめろ
3の話もしていない


今は親プロセスが死んだとき子プロセスは殺さないようになってるが
親プロセスが死んだとき、子プロセスだけが生き残っていて嬉しいことがありますか?
2021/02/27(土) 17:12:46.48ID:Hg2wHc/X
>なんで2になってるのかという話をしてる

消去法で2になるということをわかりやすく書いたつもりなんだが。

>親プロセスが死んだとき、子プロセスだけが生き残っていて嬉しいことがありますか?

ふつうに、デーモンとか起動した親とは別にバックグラウンドで動いてほしいプロセスとかあるじゃん。
69デフォルトの名無しさん
垢版 |
2021/02/27(土) 17:17:37.97ID:hpJz9JUm
> ふつうに、デーモンとか起動した親とは別にバックグラウンドで動いてほしいプロセスとかあるじゃん。

殆どのプログラムはデーモンじゃないし、バックグラウンドで動くことは親プロセスが死んでないからなんけいないし
子プロセスを苦労して殺す方法を、どの言語もあれこれ頑張るぐらいなら
デーモンとして残す方法を頑張ったほうが良いじゃん

これで言ってること理解できますかね?
2021/02/27(土) 17:18:40.13ID:NdmEqzoY
ライフサイクルやら殺す(kill)やら、生命に当てはめて見ているって話に反論はどした?
親が死んでも子は育つってな、世界的に一家心中なんて常識外で不自然なんだよ
現実を見よう
71デフォルトの名無しさん
垢版 |
2021/02/27(土) 17:20:36.27ID:hpJz9JUm
そもそもデーモンとして残す方法なんて簡単なんだわ
すでに親プロセスの付け替え機能はすでに実装されてるんだから

あとはデフォルトをどちらにするかの話
なんで、面倒くさいほうがデフォルトになってんの?
72デフォルトの名無しさん
垢版 |
2021/02/27(土) 17:21:58.99ID:hpJz9JUm
> ライフサイクルやら殺す(kill)やら、生命に当てはめて見ているって話に反論はどした?

>>28ですでに反論済み
> 当たり前ですが人間の話はしていません。
2021/02/27(土) 17:38:47.25ID:Hg2wHc/X
>>69
だからそれは両方の手段を提供するってことになるだろ?つまり>>66の3.

さすがにここまでくると、理由を知りたいというよりも自分が望む形になっていないことに対して
駄々をこねているようにしか思えない。
74デフォルトの名無しさん
垢版 |
2021/02/27(土) 18:06:56.29ID:hpJz9JUm
>>73
今現在も両方の手段を提供していて
なんで不便な方がデフォルトなのって
これが話の出発点

やっと俺の最初の話に追いついただけだよ
75デフォルトの名無しさん
垢版 |
2021/02/27(土) 18:16:07.47ID:hpJz9JUm
ちなみに今のやり方とコメント

1. デーモンを作る・・・用途としては少ないのでこれをデフォルトにする理由がわからない
2. ↑をつくる場合forkして子プロセス作って親は終了して・・・どちらにしろ面倒な仕組みが必要
3. これは今の親が死んでも子プロセスは残るというおかしな仕様をハックしたからだろう
4. 最初からデーモンをつくるAPIを容易すべきだった
5. そうすりゃ親プロセスが死んだ時に子プロセスを全部殺せた


親プロセスが死んだ時に子プロセスは全部死ぬという仕様をデフォルトにし
子プロセスを死なないようなAPIを、forkとか使う面倒なハックの代わりにすれば
シンプルに出来たはずなんだが

なんでそうなってるの?が最初から話をしている内容に
誰でも知ってるやろ的な技術的な説明を加えた言葉


> 25 自分:デフォルトの名無しさん[] 投稿日:2021/02/27(土) 05:30:01.63 ID:hpJz9JUm [1/27]
> 子プロセスを呼び出すプロセスは、そのプロセスがkillされたとき
> 自分が呼び出した子プロセスをkillするものだと思うけど
> デフォルトでそうなってないのってなんで?

> 28 自分:デフォルトの名無しさん[] 投稿日:2021/02/27(土) 07:24:00.97 ID:hpJz9JUm [2/27]
> >>26
> デフォルトの問題です。
> 当たり前ですが人間の話はしていません。
>
> 親プロセスが死んだとき、子プロセスだけが生き残っていて嬉しいことがありますか?
> それは特殊な例だけでしょう

↑特殊な例=デーモンであることぐらいすぐ気づけよ
2021/02/27(土) 18:43:48.49ID:Hg2wHc/X
>今現在も両方の手段を提供していて

両方?

>親プロセスが死んだ時に子プロセスは全部死ぬという仕様をデフォルトにし

あんたが望んでいるこれはオプションででも提供されていないと思うが?
あんたが言う面倒な手順ってのは、親が死ぬときに子を殺して回るとか、子が
親の死を検知して自殺するとかだろ?それは>>66の2.

>>75はもう「ぼくのかんがえたさいきょうのOS」の話なんでコメントはせんがw
77デフォルトの名無しさん
垢版 |
2021/02/27(土) 18:55:16.34ID:hpJz9JUm
>>76
自分で実装すれば出来るだろ
デーモンだって自分で実装してるんだし

それでなんで面倒くさいほうがデフォルトなの?
知らないなら知らないでいいじゃないか
無理して答えようとしなくて良いんだぞ
2021/02/27(土) 19:19:40.68ID:Hg2wHc/X
だからその機能が提供されていないから自分で実装することになっているんだと思うが。
さすがにここまで話が通じないとは。
2021/02/27(土) 19:20:09.41ID:gAEhUe3Y
要するに何もわかってない?
80デフォルトの名無しさん
垢版 |
2021/02/27(土) 19:26:12.38ID:1gWeBX/D
>>78
で何のために今まで実装されてないの?

最初からそれを聞いてる
2021/02/27(土) 19:50:16.37ID:Hg2wHc/X
まるで駄々っ子だねぇw
実装されていないってのはつまり、それぞれのOSの開発者はそれほど必要な機能だと
考えていないんだろう。
2021/02/27(土) 20:05:19.11ID:gAEhUe3Y
ファイルを開いたら閉じなくてはいけない
それはプログラマーが実装する
OSができることはガッベージコレクション
83デフォルトの名無しさん
垢版 |
2021/02/27(土) 20:06:33.62ID:lzDnqtNz
あわしろ氏は、そうは言っていなかったな。
2021/02/27(土) 21:06:45.81ID:vOMAq4pj
システムコールやAPIを設計するとき、できるだけプリミティブな機能として実現するというのは至極自然なことだろう。プロセスを殺すならそのプロセスだけを殺す。子供も一緒に殺したいならプログラマが明示的にそう書けばいいというだけのこと。
そんなのぼくはやだやだ!めんどくさい!なんて知ったことではない
2021/02/28(日) 00:07:23.43ID:xybIltek
>>47
Linux 板で聞いた方がよい

which calc
と、コマンドを打ってみれば?

グローバルにパスが通っていれば、そのコマンドの場所が表示される
2021/02/28(日) 00:12:10.19ID:xybIltek
Windows ではプログラムで、IE, Excel などの子プロセスが自動的に、kill されないのかな?

子だけが残った場合に、どのプログラムが起動したか分からないし、
子は何かで使っているかも知れないと思って、なかなか削除できない

どう扱えば良いのか、分からない
2021/02/28(日) 01:03:53.67ID:BkwKpqyL
されない
だからタコの作ったツールだと何個もExcelやらのインスタンスが残る>OLE
だから、つ SysInternalTools
2021/02/28(日) 02:04:10.78ID:jnT/TWe2
>>82
ガベージコレクションやるのはOSなのか?
フレームワークや言語がやる認識だったが
89デフォルトの名無しさん
垢版 |
2021/02/28(日) 02:34:00.51ID:XaglP2nw
>>88
プロセスを停止したら、そのプロセスが使っていた
リソースを解放するのはOSの仕事ですよ?
9086
垢版 |
2021/02/28(日) 06:17:53.34ID:xybIltek
GC は言語内で、その言語内で作ったオブジェクトの解放はするけど、

プログラム内で、IE, Excel などを起動したら、
別のプロセスとなって、その言語内のGC では追跡できない

だから、>>87
が言うように、多くのExcel のプロセスが残ってしまう
91デフォルトの名無しさん
垢版 |
2021/02/28(日) 07:07:50.83ID:A9mKhwpJ
COCOAが3億円で発注されたらしいが
あの内容だと1行当たりいくらになるんだろうな?
92デフォルトの名無しさん
垢版 |
2021/02/28(日) 08:48:22.87ID:Gc6Q6B7T
>>90
それは起動の仕方が違うから的外れ。IEやExcelを直接起動してるのではなく
シェル(OS)に依頼して明示的に子プロセスならない方法で作成している
93デフォルトの名無しさん
垢版 |
2021/02/28(日) 08:49:22.22ID:Gc6Q6B7T
>>90
COMとかOLEオートメーションを勉強したほうが良いですよ
プロセスツリーを見ればわかるように
子プロセスにはなってないですから
2021/02/28(日) 09:10:29.45ID:BkwKpqyL
……インプロセスサーバーとアウトプロセスサーバーの違いも分からん奴が人に勉強不足と言うのか
95デフォルトの名無しさん
垢版 |
2021/02/28(日) 10:01:29.70ID:Gc6Q6B7T
そうですね。勉強不足ですね。私は子プロセスではないといいました。ExcelやIEがどちらなのかよく考えてみましょう
http://docwiki.embarcadero.com/RADStudio/Sydney/ja/%E3%82%A4%E3%83%B3%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9%EF%BC%8C%E3%82%A2%E3%82%A6%E3%83%88%E3%82%AA%E3%83%96%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9%EF%BC%8C%E3%81%8A%E3%82%88%E3%81%B3%E3%83%AA%E3%83%A2%E3%83%BC%E3%83%88%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC


・インプロセスサーバー
クライアントと同じプロセス空間で実行中のライブラリ(DLL)。たとえば,Internet Explorer または Netscape で
表示されている Web ページに埋め込まれた ActiveX コントロールがこれに当たる。
つまり,ActiveX コントロールはクライアントマシンにダウンロードされ,Web ブラウザと同じプロセスの中で呼び出される


・アウトオブプロセスサーバー(ローカルサーバー)
クライアントと同じマシンの別のプロセス空間で動作している別のアプリケーション(EXE)。
たとえば,Word 文書の中に埋め込まれた Excel スプレッドシートがこれに当たる。
Word と Excel は同じマシン上で動作している 2 つの別個のアプリケーション
ローカルサーバーは,COM を使ってクライアントと通信する
2021/02/28(日) 10:09:30.03ID:hyPOQHlW
開発者向けスレ【スマートコントラクト】
https://fate.5ch.net/test/read.cgi/cryptocoin/1614432702/
2021/02/28(日) 10:16:35.68ID:xwhOcFRJ
>>89
参照不要になったゴミ部分だけを探して捨てていく仕組みをGCという
ガベージコレクション、文字通りゴミ収集ということ
プロセス終了時のような、占有していたものを全解放する行いはGCとは言わない、少なくともGCという言葉が使われてこなかった
ガッベージという読み方も一般的じゃないし原音とも合ってない
98デフォルトの名無しさん
垢版 |
2021/02/28(日) 11:50:34.07ID:Gc6Q6B7T
>>97
それはGCの話を始めたアホに言ってください
私はその話は全くしていません。
GCという単語すらこのレスより前に書いていません
2021/02/28(日) 15:50:09.32ID:xwhOcFRJ
>>98
俺はお前にはレスしてないぞ
100デフォルトの名無しさん
垢版 |
2021/02/28(日) 18:21:46.67ID:8z4Ob+XW
>>85
わかりました、きいてみます
なでしこユーザー少なくてこういうときは困ります
10186
垢版 |
2021/03/01(月) 02:20:34.60ID:6RQFswOZ
>>95
パッと読んだ感じでは、同一プロセス内のメモリ空間に配置されるものは、
一部分の部品をコード化した、DLL みたいにサイズが小さいもの

昔は、1つのプロセスの仮想メモリ空間は、4GB しかなかったから。
今は、どうか知らないけど

EXE 同士みたいなものは、サイズが大きいから、
別のプロセスとして起動されるのだろう
2021/03/01(月) 14:38:49.82ID:Gxj572y+
クラウドサービスを利用してる場合のテストってどうすればいいの?

前提として
・API互換性のあるオンプレ製品は無い
・E2Eテストなのでモックでは駄目

普通に考えると金を払ってテスト用のクラウドサービスを借りるしかないんだけど
テストのために余計な費用を払いたくない
2021/03/01(月) 15:32:57.73ID:EnwEHWfA
>>102
クラウドからでもオンプレからでもローカルPCからでもE2Eテスト実行すればええやん
何に困ってるのか分からん
2021/03/01(月) 16:10:57.96ID:UPXhvHyB
> E2Eテストなのでモックでは駄目
というのは思考停止

モックでいい部分(自社ロジック部分)のテストが絶対にある
本当にモックではだめな部分だけE2Eテストをするだけの話

1か0で考えるのはやめなさい
テストのために余計な費用を払いたくないんでしょう?
0にできないなら1にするんじゃなくて0.1にすればいいでしょう
2021/03/01(月) 16:25:54.42ID:56/Qlwnm
>>102
テストデータにはテスト用のフラグを付けて区別するとか、色々やりようはあるでしょ
2021/03/01(月) 16:29:27.70ID:MvU3YVh1
マシンリソースやネットワークリソースは使いたいけど金は払いたくないってこと?
プロダクションと違った形の節約はできるだろうが無料枠にでも収まらない限り金払わないのは無理だろ
2021/03/01(月) 17:55:42.04ID:lVBC54RE
https://i.imgur.com/92XMy0r.png
2021/03/01(月) 18:02:34.33ID:lUjHuGPy
>>107
スクール入会金
ウン万円
2021/03/01(月) 19:42:34.62ID:a7k6+LlL
こんな可愛いPMなんかいねーよ
2021/03/01(月) 22:28:54.04ID:q/O5cji9
テストってDBだけ入れ替えたら出来るよね?
111デフォルトの名無しさん
垢版 |
2021/03/01(月) 23:23:47.08ID:qIwpFI/L
質問・アドバイスよろしいでしょうか?
Pythonで統計分析をしたくてプログラミングの独学を始めて間もないのですが,パソコンが壊れてしまいました。買い替えにあたってパソコンの最低限のスペックやOSはどのようなものがいいでしょうか?様々なサイトを見てもWindowsがいいとかmacがいいとか,結局何がいいのかいまいちわからないです。ご教授いただけると嬉しいです。
2021/03/01(月) 23:27:41.28ID:6RQFswOZ
Ruby on Rails の実行環境は、
development, test, (staging), production

テストは、単体・機能・結合・システムテスト
2021/03/01(月) 23:32:43.03ID:6RQFswOZ
Python は知らないけど、
Ruby なら、Mac でメモリ32GB とか

Windows 10 pro版でも、WSL2, Linux, Docker で、メモリ16〜32GB。
8GB では足りない

メモリは、とにかく最大まで積む

Pythonのスレで聞けば?
114デフォルトの名無しさん
垢版 |
2021/03/01(月) 23:43:55.64ID:qIwpFI/L
>>113
ありがとうございます
2021/03/03(水) 19:02:36.46ID:K8zIHYhU
php勉強するんだけどphp民のおすすめエディタおしえて

ちなJavaはeclipseでフロントはvscode使ってる
116デフォルトの名無しさん
垢版 |
2021/03/05(金) 10:03:02.59ID:qGqr3pNV
どこで聞けば良いか分からなかったので教えてくだしあ

とあるasp.netからiisを経由して表示するプログラムがあるんだが
元々は問題なく動作していたんだ
そのうち1つのaspxファイルの一部をvisualstudioでコメントアウトして実行したら404が返ってきたので
そのコメントアウトを元に戻して実行したんだけど
やっぱり404が返されるんだ

念のため変更したaspxファイルをwinMergeで比較してみたが全く同じ
元々の動作する状態と変更後で何が変わったかサッパリなんだが
これって何が問題なのか可能性として挙げられるものを教えてくれないだろうか

asp.net自体初めて触ったのに誰も教えてくれない環境で詰んでる
ざっくりした質問で申し訳ない
2021/03/05(金) 10:17:04.23ID:SsMuuYFF
リポジトリ全体をロールバックしてみたら
118デフォルトの名無しさん
垢版 |
2021/03/05(金) 10:26:19.07ID:qGqr3pNV
>>117
git管理していないから無理な気がする
あと元に戻ったとしてもいずれ触らないといけない部分なので
できれば原因を追及したい……
2021/03/05(金) 10:50:50.07ID:7U7M/a2u
>>116
コメントアウトして実行ってのはどうやって実行してるの?

同じ環境と同じ実行手順で問題なく動作してたことをコメントアウト直前に自分で確認してる?
120デフォルトの名無しさん
垢版 |
2021/03/05(金) 11:01:11.98ID:qGqr3pNV
>>119
・変更直前に正常に動作したことは確認済み
・aspxファイルのある1つのtdタグ部分をコメントアウトした
・その他のコーディング部分はチンプンカンプンの状態だが
少なくともコメントアウトしたtdタグ部分を直接参照する部分は無い気がする
・コメントアウト前(正常起動時)とコメントアウトから戻した後(404リターン時)でaspxファイルの記述は完全一致
2021/03/05(金) 11:18:57.66ID:SsMuuYFF
URLが間違ってるんじゃないの
122デフォルトの名無しさん
垢版 |
2021/03/05(金) 11:28:54.54ID:qGqr3pNV
>>121
それならコメントアウトする直前に動作している以上
元に戻したときにも動作すると思うんだけど
asp.netってもしかしてコード部分以外で何か特殊なことをしてる?
無知で申し訳ない
2021/03/05(金) 11:50:02.79ID:/lmwOJl7
古いものは、キャッシュを表示していただけとか、

ファイルのタイムスタンプが変わったから、
ファイル名に付いている、ハッシュが変わったので、キャッシュから読み込まず、
再読み込みしようとして、古いファイル名が存在しなくなったとか

プロジェクトなら、何かを修正したら、
ファイル名に付いている、ハッシュなどが変わるので、
再デプロイしなくてはならないとか

そのプロジェクトのフレームワークによるかも?
124デフォルトの名無しさん
垢版 |
2021/03/05(金) 12:01:15.50ID:qGqr3pNV
>>123
なるほど
キャッシュが生きてたから動いていただけの場合
キャッシュを削除して実行していれば変更前の時点で既に404を返されていた可能性があるってことか

その場合然るべき場所に参照されるデータを再配置すれば解決するけど
それが一体何なのか調べる必要があるってことか……
うげー吐きそう

ありがとう試してみる
2021/03/05(金) 12:35:18.24ID:QWuUnW8Q
>>120
どういう環境でどういう手順で実行してるのか?

実行環境が変わったかコードが変わったかのどちらかしかないから両方精査して
tdタグコメントアウトしたくらいで404になったりしないから見にいってる場所が違うに1000ペリカ
2021/03/05(金) 12:35:43.34ID:si/4Bu18
自作のWindowsアプリに「起動時パスワード」を付けたいと思っています。
初期値はオフで、そのときはパスワードを求めないままにしたいです。

この機能を付けるとすると、
設定のオンオフ状態やパスワードの文字列は、
どこにどのように持たせるべきでしょうか。

他の設定と同じようにiniファイルやレジストリなどに入れると、
たとえ暗号化したとしても、その項目自体を消してしまえば、
設定が初期値に戻ってパスワードを求めないようになってしまいます。
2021/03/05(金) 12:52:52.98ID:piwKD6ZW
>>126
パスワードを設定するユーザーとパスワード入力を回避してアプリを使いたいユーザーが同じOS上の権限をもってるなら
ローカルに設定を保存してローカルで認証するする限りパスワードがあっても時間と手間をかければ破られる

できるのはその方法を分かりにくくしてより手間をかけさせることだけ
破られるのは仕方がない
2021/03/05(金) 12:54:24.58ID:piwKD6ZW
とりあえず設定が消されたらパスワード認証するように作っとけば?
2021/03/05(金) 13:34:10.21ID:QpDkjV+0
>>126
初期状態のキーを iniなど適当なファイルの更新時間を組み合わせてハッシュにしておく
初回実行時に上のキーは削除

ただし ini の初期状態のキーとファイルの更新時間も含めて復元されたら無効
2021/03/05(金) 13:36:59.93ID:si/4Bu18
>>127-128
解説ありがとうございます。

使用しているメールソフトにも同じような起動時パスワードの設定があったのですが、
レジストリに「設定するか」と「実際のパスワード(暗号化)」の二つが入っていて、
「設定するか」を手動で0に変更しただけで起動できるようになってしまいました。
この程度の仕組みしか作れないものなんですかね。

初期値はオフで、初期パスワードも存在しないので、
設定が消されたら認証というのも難しいでしょうし。
2021/03/05(金) 13:41:04.52ID:si/4Bu18
>>129
解説ありがとうございます。
アプリの外で書き換わっていたら無効化してしまうということですね。
2021/03/05(金) 14:58:26.70ID:SsMuuYFF
ローカルにあるアプリデータを暗号化するだけだよ
2021/03/05(金) 15:47:02.86ID:FExPofIl
起動時パスワードとかいう発想が意味不明なんだよな
2021/03/05(金) 17:36:39.95ID:M1VcZAqc
起動時パスワードはWEB側で管理するものだよ
2021/03/05(金) 18:44:02.64ID:rfD4qAER
言うまでもなく暗号化ハッシュ化はCRYPTREC電子政府推奨暗号リストを使わなければならない
2021/03/05(金) 18:48:53.32ID:Kddl3isq
メールソフトとかパスワード忘れました
対策のほうが重要だ
2021/03/07(日) 01:53:49.70ID:9WV6HKiO
来週閉鎖するホームページのミラーを保存したいんですがwgetやhttrackで保存しても画像が上手く表示されません
原因が良く分からないので詳しい方居たら教えて欲しいです
ちなみにこれがそのページです
https://www.revdol.com/special/
2021/03/07(日) 07:57:16.57ID:bNghcsY5
>>137
今、携帯からなので想像ですけど
リンク先を見たら商品ページ、だとすると画像とかはcgiで配信しているのかもしれません
保存ディレクトリに、image?id=123456 とかのファイルは無いでしょうか?
2021/03/07(日) 08:13:51.77ID:bNghcsY5
>>137
cgiに対応しているダウンローダーだと、画像URLとかの部分をうまく書き換えてくれますが、wget とかはそのままのダウンロードデータを保存するため上手く行きません
ブラウザは image?id... の image までをパス、?id... 以降は引数と解釈して参照するため、画像ファイルが見つからない事態になります
また、画像ファイルもそのurlのままに保存するので、url からの image?id=... というファイル名(urlエンコードされて%xx%xxとか読みづらいかも)そのままで保存されています
2021/03/07(日) 12:16:35.90ID:9WV6HKiO
image?id=...というファイルは存在しないですね…
元のwebsiteのhtmlで埋め込まれてる画像のURLを確認しても
https://www.revdol.com/wp-content/uploads/2020/12/sp_thum_2020xmas.jpg
とかになっててハテナは入ってないです
2021/03/07(日) 13:05:42.41ID:NGBp4E5a
wgetでindex.htmlだけ取得
index.htmlダブルクリック
で表示されるけど
2021/03/07(日) 14:33:53.65ID:9WV6HKiO
オフラインでプライベートブラウジングすると表示されないです
2021/03/07(日) 15:42:44.80ID:Htr3Z/NJ
>>137
chromeでctrl+sで保存じゃダメなのか?
2021/03/07(日) 15:48:47.98ID:9WV6HKiO
リンク先も保存したいので出来ればwget等のミラーリングツールが使いたいです
2021/03/07(日) 19:16:06.28ID:NGBp4E5a
>>140
> https://www.revdol.com/wp-content/uploads/2020/12/sp_thum_2020xmas.jpg
オフラインでサイトにあるデータにアクセスできるわけがない
../wp-content/
相対パスで
2021/03/07(日) 20:42:35.52ID:9WV6HKiO
http://***/wp-content/のところを../wp-content/に置換するスクリプト書くしかない感じですかね
2021/03/07(日) 20:52:29.64ID:LoC/rHxp
テキストエディタでちょこっと置換するだけのことじゃね
2021/03/07(日) 20:59:48.55ID:9WV6HKiO
ページがいくつもあるのと階層に応じて相対パス書き換える必要があるんでエディタでやるのはきつそうです
2021/03/08(月) 10:06:01.56ID:A+E7x4iR
>>146
wgetの-kオプション
2021/03/08(月) 14:10:21.22ID:CHREQTow
そのオプションは試したんですが上手く書き変わらないですね
WordPressが使われてるのが原因なんですかね
2021/03/08(月) 15:03:16.16ID:wHqvdvLW
>>150
俺の環境では書き換わるな
原因調べるか他の方法使うか好きにして
2021/03/08(月) 16:03:05.90ID:CHREQTow
どこが書き変わってるか知りたいのですが
index.htmlのdata-src="..."のところですか?
2021/03/08(月) 16:32:01.85ID:CHREQTow
どこがと言うよりindex.htmlのdata-srcset="https://*/wp-content/*";がdata-srcset="../wp-content/*"に書き変わるかが知りたいです
2021/03/08(月) 18:23:45.46ID:mZK0MLvW
data-* 属性は書き換え対象外なんじゃないかな
--follow-tags=list の仕様はそう読める
書き換えていい実ファイルなのかURNみたいな識別子なのかわからんし
https://www.gnu.org/software/wget/manual/html_node/Recursive-Accept_002fReject-Options.html#Recursive-Accept_002fReject-Options
2021/03/08(月) 23:11:47.76ID:CHREQTow
wgetはdata-*に対して何もしない感じなんですかね?
an internal table of HTML tag / attribute pairsがどういうattributeを集めてるのかが分からないですね
2021/03/09(火) 00:15:57.20ID:S5lnRcq1
ウタウダ言ってる間にちゃちゃっと置換しちゃったほうが早い
2021/03/09(火) 04:40:45.23ID:NUN2sKP0
data-* 属性は、ユーザーが使い方を決める部分

そこに入っているデータは、使い方が決まっていないから、何もできない。
そこにリンクを入れてるのは、その人独自の使い方と言うだけ

だから、そこは直接書き換えるか、置換プログラムを書くとか
2021/03/09(火) 09:11:05.45ID:K8yALR59
AWSのcodepipelineでcodebuildからelasticbeanへのデプロイが成功って出てるのにアプリがawsのサンプルになってしまうのですが、buildspecファイルのartifactの置き場所が違うとそうなる、とかありますか?
2021/03/09(火) 11:58:38.65ID:UEq7DsGd
ふとパワーシェルを勉強しようと仕事サボって遊んでるんだが、$_で躓いた

$obj=ls; echo $obj.PSDrive
は良くて
ls| echo $_.PSDrive
がだめな理由が分からん
暇な方いたら解説頼みたい
2021/03/09(火) 20:32:47.09ID:L1JhVdDy
ファイルが1個の場合はコレクションにならないのでパイプラインを通す意味がなくて、通常
(ls).PSDrive
で事足りる

敢えてパイプラインを通すなら要素1個のコレクションと考えて、
ls | % {echo $_.PSDrive}
2021/03/09(火) 21:24:30.91ID:FO598anN
>>160
サンクス
コレクションならforeachで要素を展開して動かすってのは直感的に分かるんだ

ただそうなると変数に格納した場合に動く理由が分からん
もし、コレクションに対してecho $obj.PSDriveで動くのなら、ls| echo $_.PSDriveも動いていいんじゃね?ってのが疑問
何か勘違いしてるんだと思うんだが自分じゃ気付けずモヤモヤしてる…
162デフォルトの名無しさん
垢版 |
2021/03/09(火) 21:55:31.31ID:sQfPg4KP
lsコマンドってpipe時はis -1になるからじゃない?
2021/03/09(火) 22:16:48.46ID:2BiJ5sGo
繰り返すけどその$objはコレクションじゃない
ファイル1個の場合と複数の場合とでそれぞれ$obj.getType()を確認してくれ

%に流せばそれなりに良きに図らってくれるけど本来固くやるなら明示的にコレクションに変換すべき
,(ls) | % {echo $_.PSDrive}

あと$_はそのような使い方はそもそも存在しないから確認して
もっと簡単な例で試すと
(0,1,2) | echo $_ # error
2021/03/10(水) 02:34:56.12ID:hr2yGgcj
>>158
デプロイしても、すぐに起動されるとは限らないのでは?

Kubernetes のrolling update とか、すべてが入れ替わるのに時間が掛かる
2021/03/10(水) 02:43:21.41ID:hr2yGgcj
JavaScript でよくある。
0, 1, 2以上で、型が変わるので統一的に書けないとか

0 ならnil を返して、1 なら単数形を返して、
2以上ならコレクションを返すみたいな、バラバラなAPI を作っている

それを統一的に書けるのが、jQuery。
jQueryオブジェクトに変換すれば、0でも空配列、1以上は配列になる

0以上で、すべてeach で書ける。
0なら何も実行されない
2021/03/10(水) 12:56:00.03ID:wBm3UJME
>>163
何度もありがとう

ファイル1つと複数でfileinfoとobject[]になってるのは確認したが、
$obj=ls; echo $obj.PSDrive
はどちらでも実行可能だった
聞きたいことの本質ではないのでここは割愛

>あと$_はそのような使い方はそもそも存在しないから確認して
ググってみるとパイプで渡されたオブジェクトを格納する変数とか書かれていた
意味わからんのでもう少し調べてみたら、processブロック内で参照できるように渡されたオブジェクトって記載を見かけた
awkにおける$0、無名関数における変数に近いのだとひとまず理解したつもりになったわ

ただそうなると以下の挙動がまた混乱した
最後のは機能してないんだけども…
OK: ls|echo
NG: ls|echo $_.Name
OK: ls|sort
OK: ls|sort $_.Name
これ以上は深みに嵌りそうだから一旦ここまでにするわ
167165
垢版 |
2021/03/10(水) 13:53:46.96ID:hr2yGgcj
>>165
に書いた

$_ は、パイプの前段から渡ってくるもの

パイプの前段が、nil なら、エラーになる。
nil.Name に、Name 属性はない

1つが返ってくると、単数型.Name。
2以上なら、配列.Name

nil, 単数型・複数型に、Name 属性があるかどうか、
3つの条件処理で分けないといけない

大文字に変換する、Ruby の1-liner、
ls | ruby -ne 'print $_.upcase'

これが動く原理は、-e オプションで、
print $_.upcase を、暗黙の内にループで囲むから

jQueryオブジェクトに変換してるのと同じ。
前段の戻り値が、0, 1, 2以上のすべてのパターンを一旦配列化して、each を呼ぶから

配列化して、each するから、必ず配列の要素型になるから、
3つの条件処理で分けなくてもよい

>>166
では、配列化して、each を使っていないから、

パイプの前段が、0のnil, 1の単数型・2以上の複数型と、
3つの条件処理で分けないといけない
168165
垢版 |
2021/03/10(水) 13:58:50.69ID:hr2yGgcj
一旦配列化して、each を使うと、
前段のパイプが、0のnil, 1の単数型・2以上の複数型と、どれを返しても正常に動く

jQueryオブジェクト、Ruby の1-liner と同じ原理

[ ].each
[ "a" ].each
[ "a", "b" ].each
169165
垢版 |
2021/03/10(水) 14:06:33.53ID:hr2yGgcj
[ ].each
[ "a" ].each
[ "a", "b" ].each

要素が0の場合は、処理なし。
要素が1の場合は、$_ に、a が渡ってくる

要素が2の場合は、1回目の$_ に、a が渡ってくる
2回目の$_ に、b が渡ってくる

だから一旦配列化して、each を使うと、
前段のパイプが、0のnil, 1の単数型・2以上の複数型と、どれを返しても正常に動く
170165
垢版 |
2021/03/10(水) 14:21:33.96ID:hr2yGgcj
例えば、JavaScript では、関数の戻り値が、

0個・該当無しの場合は、nil を返して、
1個の場合は、文字列を返して、
2個以上の場合は、配列を返すとか、

3つの型が異なる設計にしているから、
一々、3つの条件処理で分けないといけない

これが苦痛だから、jQuery オブジェクトが出来た。
0のnil, 1の単数型・2以上の複数型と、どれを返しても正常に動く

nilでも単数型でも、配列化してしまうので、each で処理できる
2021/03/11(木) 00:16:26.39ID:RchM98kf
>>166
ls|sort $_.Name
これが想像通りに動作していない理由は、sortの第一引数がソート対象のパイプライン対象データやコレクションではなく、-Property 引数だからだよ
ls|sort -Property $_.Name
と書いているのと同じで、プロパティ名として謎のリストが渡されている状態
ls|sort -Property $(if ($_ -eq $null) { "LastWriteTime" } else { "Length" } ) を実行してソート順をみると分かりやすい
$_ は $null になってる
ls | ForEach-Object { echo $_ } のようにコマンドレットのスクリプトブロック外で呼び出しても $_ は $null になっていて使い物にならない模様

echo 1
は当然エラーにならないのに対して
ls|echo 1 が ParameterBindingException になる理由はよくわからんけど、第一引数とパイプラインのどちらの形式でも渡すことができる同一概念のパラメーターを二重に渡しているのでコマンドレット内部で競合・混乱が起きるのかもね
2021/03/11(木) 00:21:47.20ID:RchM98kf
文が変なので訂正

ls | ForEach-Object { echo $_ } のようにコマンドレットのスクリプトブロック内で参照するのが正しい
ls | コマンドレット $_ のように外で $_ を参照しも $null になっていて使い物にならない
2021/03/11(木) 08:00:09.14ID:veC1m4UT
>>167
丁寧な解説痛みいる
背景的な内容は分かりやすかったが、すまんが俺の疑問は直接解決できんかった

>>171
分かりやすい回答ありがとう
> ls|sort -Property $(if ($_ -eq $null) { "LastWriteTime" } else { "Length" } ) を実行してソート順をみると分かりやすい
これは天才的な分かりやすさだった!一発で理解できた、マジでスッキリした

>>172
この内容、公式ドキュメントに書いておいて欲しいぐらいだわ…

レスしてくれた方々、非常に助かった
ありがとうございました
2021/03/11(木) 12:29:32.19ID:xLl2MnNI
すいません、AWSで仮想ルータ作成してIPsecなどのVPNを構築できますか?
2021/03/11(木) 12:48:39.66ID:7AhbbQuZ
>>174
AWS VPNっていうそのまんまなサービスがある
変な知恵を働かせようとするのはやめて猿のように完全マネージドサービスに頼るのがAWSの正しい使い方
176165
垢版 |
2021/03/11(木) 13:08:05.76ID:EP88fPM9
大文字に変換する、Ruby の1-liner、
ls | ruby -ne 'print $_.upcase'

これが動く原理は、-e オプションで、
print $_.upcase を、暗黙の内にループで囲むから

ls | ForEach-Object { echo $_ }
も、たぶん同じ原理で、
ForEachで、ループで囲むか、イタレータ・配列化してる

これによって、前段が、次の3パターンの型のどれを返しても、エラーにならない。
該当なし0, nil
1つの単数型
2以上の複数型・配列

jQuery オブジェクトも、同じ原理

Ruby では、オブジェクト.メソッドを呼ぶ時、
オブジェクトがnil の場合、nil.メソッドとなり、
nil には、そういうメソッドは存在しないという、エラーがよく出る

だから必ず、返すものが、0, 1, 2以上の個数の3パターンで、テストしないといけない
177デフォルトの名無しさん
垢版 |
2021/03/11(木) 14:16:17.15ID:Jwslfn/r
質問というか雑談やが
google画像検索ってくっそ精度低い
のに
二次元画像詳細検索はどうやってあそこまで
高い精度出してるんだ
分かるやつおる?
2021/03/11(木) 14:22:52.42ID:EP88fPM9
異なるものを使っているから。
たぶん、開発者も異なる

YouTube なんか、しょっちゅうデザインが崩れる。
漏れは、いつも通報してるけど、ひどい時は1か月も修正されない

ちゃんと開発できる香具師は、意外と少ない
2021/03/11(木) 14:48:03.38ID:z2KCe4yD
>>177
グーグルは画像からキーワードを抽出して文字列で検索しとるだけやろ
2021/03/11(木) 18:02:27.69ID:Q/MHSOVy
>>177
俺が雑に画像検索作るならこんなもんかな
1.ハッシュ値の検索
2.各色の比率、分布
3.アクセス頻度、ワード検索
2021/03/12(金) 15:11:58.40ID:87XOLJ3X
>>137ですが, pythonでwebクローラーを書いて解決しました
解答して下さった皆さんありがとうございました
2021/03/12(金) 20:42:26.28ID:JVJjAlGn
既存のソースコードの処理の流れを把握するのによく使われる調査ツールや分析手法とかありますか?
ttps://lvgl.io/ (組み込み向けのGUIフレームワーク)
の画像をレンダリングする部分を改造したいのですがこの規模のソースコードだと何かどうなっているのかさっぱり判りません・・・
2021/03/12(金) 21:02:17.58ID:REwpE7TJ
>>182
軽く見てみたけどかなり綺麗で読みやすいコードだな
ネーミングもコメントも神経質すぎるくらい丁寧
このレベルでさっぱり判らないならたぶん改造なんて無理だから諦めたほうがいいよ
2021/03/12(金) 21:04:29.96ID:uT2s1Yvs
>>182
リファクタリング
2021/03/12(金) 21:05:10.57ID:uT2s1Yvs
正確には調査的リファクタリング
2021/03/12(金) 22:23:00.78ID:U+iRPjP4
>>182
静的解析ツールでDependency DiagramやCall Graphを生成する
図にしてくれるやつは有償のが多い
無償ならdoxygen + graphvizとか
187182
垢版 |
2021/03/12(金) 23:58:48.24ID:JVJjAlGn
GUIフレームワークの裏側の知識なんて全くないしどこから手を付ければいいのか・・・
とりあえずシミュレータとやらを動かしてみるとか?
この類のプログラムだと動かすのも簡単ではなさそうだけど

改造内容は出力対象としてラインバッファを追加してメモリを節約出来ないかなと

>>183
確かにコードは見やすくコメントはよく書いてある方だと思いますが
フレームバッファに書いているのは何処なのか・・・

>>184-185
ググったら「レガシーソフトウェア改善ガイド」なる本が出てきましたが
今度本屋へ行ったときに見てみようと思います

>>186
それ良さそうですね。試してみます
2021/03/13(土) 02:00:09.73ID:EttNgG4o
競技プログラミングのスレ、人気スレのようだけど
ム板でもよさそうだけどなんでプログラマー板いっちゃった?
もともとマ板なんかネタスレしかなかったのに
いつのまにか立場逆転しとるやん
2021/03/13(土) 08:37:06.73ID:DIvgpMzo
競技プログラミング=ネタだから
2021/03/13(土) 08:48:03.00ID:+/gF4ceM
>>188
競プロのスレはアルゴリズムとか技術的な話はほとんどなくて、不正がどうのスコアやルールがどうの就活が〜〜とか、ム板にあったらマ板に行けって言われるような内容だぞ
2021/03/14(日) 13:18:59.65ID:dGW/zbvR
ちょっとマイナーかもしれませんが、pythonのgrapheneに関する質問です。
queryに指定されたレスポンスのフィールドがどれかを知ることはできるのでしょうか?
2021/03/15(月) 04:07:57.73ID:MNT36Itg
エンジンとライブラリってどう違いますか?
ググったのですが、参考になるページが出てこなかったので質問させてください。

たとえば、音声合成エンジン、音声合成ライブラリ、
――などの文脈で使われる、「エンジン」と「ライブラリ」は、
同じようなものですか?それとも全然別物でまったく違うものなのでしょうか??
2021/03/15(月) 06:33:29.52ID:3pdFxOVF
>>192
同じようなもの
言い切った者勝ち

でも他のプログラムに皮被せたようなものでエンジンとか言ってたら、俺は胡散臭い目で見ちゃう
なんちゃら(爆)速エンジンw
ライブラリと言っておけば安泰
194デフォルトの名無しさん
垢版 |
2021/03/15(月) 12:13:08.90ID:NUPkxmQY
javascriptのファイルをIEやchromeの開発者ツールで見えないようにすることは難しいでしょうか?
2021/03/15(月) 12:21:39.59ID:KUxKEAvv
モジュール・ライブラリは、いくつかの関連するクラス・関数などを、1つにまとめたもの。
例えば、CSV 関連のモジュールなど

一方、エンジンは、Unity ゲームエンジンとか、
上のモジュールなどを、大量に使って、1つのシステムにしたもの
2021/03/15(月) 12:43:26.35ID:YjBdAbou
>>194
こういうの使えば見られても解読されんよ
https://closure-compiler.appspot.com/home
2021/03/15(月) 13:21:46.12ID:sEBHDRmj
ヘルパー フレームワーク 似たような言葉がどんどん出てくるね
2021/03/15(月) 13:25:18.98ID:QmxS+DUu
英語ができない人は可哀想だな
2021/03/15(月) 15:08:52.10ID:W4mhVG7e
>>192
同じようなものの場合もあるが文脈的に強調したい点が違うか違うものを指すほうが多い気がする
エンジンという場合は対象の中核となる処理を実行するソフトウェアコンポーネントを指すことが多い
(中核となる処理を担いますよとアピールしたい場合にも使う)

音声合成エンジンは音声合成処理そのものを実行するコンポーネント
音声合成ライブラリはアプリケーションプログラムが音声合成機能を使いたいときに利用できるAPIを備えたライブラリ
音声合成ライブラリが特定の音声合成エンジンを含んでいる場合もあればエンジンは選択可能な場合もある

正規表現エンジンと正規表現ライブラリとかで考えればわかりやすいかと
200194
垢版 |
2021/03/15(月) 15:35:14.92ID:NUPkxmQY
>>196
ありがとうございます。
ただ、見にくくなるだけで、頑張って解析しようとしたら読めるんですかね?
ただ、.htaccessでjsに直接アクセスできないようにしても、F12ツールで見えてしまうでしょうし、これで読みにくいように持っていくのがベストでしょうかね?
2021/03/15(月) 16:13:13.56ID:KUxKEAvv
難読化ツールか。
7行テトリスとか、変数名を1文字にするだけでも読めない

apple をみかん、orange をリンゴの数にするだけでも、理解するのに苦痛
202194
垢版 |
2021/03/15(月) 16:47:38.40ID:NUPkxmQY
ありがとうございます。
ここを使えばだいたい読めなくなりますね。ありがとうございます。
ttps://javascriptobfuscator.com/Javascript-Obfuscator.aspx
203デフォルトの名無しさん
垢版 |
2021/03/15(月) 16:48:15.07ID:AOv43n/m
横浜駅近辺か以南で東プレとかHHKとかのプログラマ御用達キーボードの実機が触れるお店があったら教えて下さい
(このご時世アキバまで行きたくないです
2021/03/15(月) 19:27:35.09ID:QmxS+DUu
Amazonとかで2万円で試せると思う
2021/03/15(月) 20:33:47.84ID:esGaOKmu
今はどっちも2万じゃ無理では?
2021/03/17(水) 11:02:52.72ID:tiNitlKG
複雑なロジックが絡む認可処理ってどこでやればいいんだ?
例えば勤務データ登録システムがあるとして
・部長以上はすべての勤務履歴を変更可能
・チームリーダー以上は3ヶ月以内のチームメンバーの勤務履歴を変更可能
・平社員は当月の自分の勤務履歴を変更可能
みたいな感じで条件に合わない場合は403

A. 他の認可と同じようにWEBフレームワークのミドルウェアでやる
B. ドメイン層でやる
C. その他
2021/03/17(水) 11:59:23.51ID:ilMOdSUD
認可としてはロールの名前だけ持たせて、ドメインロジックで制御する
208デフォルトの名無しさん
垢版 |
2021/03/17(水) 21:59:18.03ID:kWcDxPo7
procfs以外で他のプロセスのシグナルマスクの状態を見る方法ある?
macOSで知りたい。言語は何でもいい。
2021/03/17(水) 22:44:39.39ID:12LzxBGv
>>206
一般的には認可はアプリケーション層でやる

その例なら”勤務履歴変更”のユースケースの中で認可処理をキックする
認可ルール/ポリシーの管理や可否を返すメソッドは独立した認可サービスに切り出してまとめる
2021/03/17(水) 23:08:34.27ID:cfyQhyzB
>>209
認可サービスはどこに置く?
アプリケーション?
ドメイン?
2021/03/18(木) 00:53:57.46ID:/B4L4J97
どれだよ
2021/03/18(木) 23:49:03.68ID:wqSEV4VX
>>210
アプリケーション層

アプリケーションロジックじゃなくドメインロジックとして捉える考え方もあるだろうけど
アプリロジックとしてアプリケーション層にまとめておいたほうが何かとスッキリしやすい

認可サービスという独立したBounded Contextのアプリケーションを作って
その中のドメイン層で扱うというやり方もある(WindowsのActive Directory的なもの)が
一般的なアプリだとオーバーキルになる
2021/03/19(金) 00:15:19.34ID:z1gdjZk4
データベースにログインするようにしたら
個人でログインするとかドメインで管理するとか
好きにすればいいじゃない
2021/03/19(金) 00:29:23.47ID:ugVJrA7w
>>212
的外れなことを言うかもとは思うけど、
まず、認可の前提としての認証は自前では持たずにOAuthに任せるって方針の所もあるよね(俺とかも)
そう考えると認可(権限)の管理とかも今後は自前ではやらずに、認証に対する権限リストの保持までは他所のサービスを使うってのは、いずれはオーバーキルとも言えなくなってはこないだろうか?
認証を内製するより外注しといたほうが安全で楽なように、権限処理も定型的だから外注したほうが安全で楽だろう
2021/03/19(金) 00:43:48.97ID:ZleoXut0
>>214
いや、認可ってのはあくまでフラグを立てるだけでしかない
そのフラグをどう解釈するかは完全にアプリ次第
2021/03/19(金) 00:55:02.15ID:ugVJrA7w
>>215
だからそのフラグを使う部分だけは内製するけど、認証と結びつけておくデータベースとか管理ツールは外注している認証側に移行していかないかな?という話
定型的と書いたのは、フラグ管理は認証した相手をグルーピングすることで行うだろうけど、グループ分けに特段のビジネスロジックは不要だから共通サービスとして提供できるだろうと
まあ、要するにオープン化されたADサービス?
2021/03/19(金) 02:48:32.09ID:ysVgQ22g
>>214
AWSのIAMみたいのでしょ
認可って汎用的にするとそれだけで結構複雑になんだよね

外部とインテグレーションするオーバーヘッドが出てくるのもあるし
特定のアプリケーションで必要になる認可ポリシーがアプリケーションとは全く別のところで管理されるので
両方を見ないと全体を把握できなくなるみたいなデメリットもある
その辺りを考えてもメリットがあるかどうかってところ
2021/03/19(金) 10:05:16.85ID:A2FC3wYP
アプリケーション層で管理するほうが人気か…
自分としては認可ってドメイン層だと思うんだけどな
誰がどんな条件で何をしていいかなんてのは
システムがなくたって業務ルールとして存在してるわけじゃん
ならそれはドメイン層としか思えんのだが

・ドメインサービスの入口で認可検証
・拒否ならAuthz例外を投げる
・アプリケーション層は認可ルールの詳細を把握せず例外を403に変換するだけ

こっちのほうがよかないか?
2021/03/19(金) 10:18:54.73ID:A2FC3wYP
アプリケーション層に認可があると移行の問題もある
例えばWEBフレームワークをJava EEからSpring bootに変更したい場合とかね

認可がアプリケーション層にあるとフレームワークに合わせて認可を大幅に書き換えないといけない
認可の業務ルール自体は全く変わっていないにも関わらずだ
それってなんだかおかしくないか?

ドメイン層に認可を置いておけば移行の際に認可は全く変更しなくていい
ただ例外をレスポンスに変換する処理を切り替えるだけ
それはアプリケーション層の仕事としては妥当だ
2021/03/19(金) 11:10:58.80ID:isOHUPOf
WebフレームワークはDDDやClean Architectureで言うアプリケーション層とは違うぞ

WebフレームワークのControllerをアプリケーション層として利用すればその2つが密結合する
メリットもあるのでトレードオフを判断して選択するもの
2021/03/19(金) 17:39:18.57ID:+RPcY+jV
TCPのコネクションって切断接続繰り返すの良くない?秒間何十回とか
2021/03/19(金) 18:45:19.76ID:9tRqQibJ
>>221
良くないというか無駄じゃろ?
2021/03/19(金) 19:01:54.56ID:+RPcY+jV
>>222
すまん、無駄なのは知ってる
HTTPリクエストごとにTCPコネクション確立するのはサーバー攻撃に該当するか?ってのが知りたい
頻度は例えば秒間80回とか
2021/03/19(金) 19:08:37.48ID:zfX0YSnj
ちゃんとしたシステム程そういう短い期間に多数のリクエストを送るホストを遮断する
2021/03/19(金) 19:10:14.73ID:ao22suim
トレ○ドマイクロのことですね
2021/03/19(金) 20:47:33.56ID:3OSa/Ffn
>>223
それは相手次第だから一概にはなんとも言えん
感覚的には攻撃とみなされても文句は言えないレベルだと思うぞ
2021/03/19(金) 21:07:41.10ID:+RPcY+jV
>>224-226
そらそうだよなあ
面倒だけど問題起きる前に修正しとくか…
2021/03/19(金) 21:07:55.18ID:+RPcY+jV
サンクス
2021/03/19(金) 23:12:56.84ID:gtzZCHhj
その昔はサイトに対して警告が来たもんだが
最近は、最悪いきなり訴訟かもしれないからなあ
2021/03/20(土) 19:06:44.35ID:V661mPJv
>>223
同じ場所から秒間80回だとsyn-floodとまでは言わないけど、WindowsだとTIME_WAITの
デフォルト時間が4分らしいので、何か処理して切ってって繰り返してもセッションが
19200発生するので、良くないって言うか攻撃だと判断される可能性が高いと思うよ
2021/03/20(土) 19:34:22.31ID:DA77laUl
MDISみたいな技術力の低い三流会社が作ったサイトだと一秒に一回のアクセスでもサービス停止を引き起こして告訴される
2021/03/20(土) 20:34:52.41ID:MkV/e5E1
あれはアクセス頻度とは関係ないバグだったからな
日本はSIerも警察も図書館も技術力だけでなく倫理観も底辺クラスだったことが露呈した歴史に残る事件
2021/03/20(土) 21:24:14.84ID:ecDBcKi/
日本のITが世界に後れをとる原因となった事件の1つ
2021/03/20(土) 21:48:18.65ID:DA77laUl
MDISというかM系列会社ってトレンドマイク○使ってるんだよな信じがたいが
2021/03/21(日) 00:29:10.59ID:he5zjlJ+
C++でコードを書いていって、途中から プロセス間のIPCの処理を追加したくなりました。
で、IPCの際、データをマーシャルするということでprotobufというものを知り、現在protobufで
データを定義中 <- 今ココ、なんですが、

IPCの際、元からあるオブジェクトをいちいちprotobufで定義するオプジェクトに変換、およびその逆
をしないといけないような?
ひょっとして、最初からprotobufで定義するオブジェクトでコードを書けば良かったのかな?
2021/03/21(日) 00:33:33.93ID:nSGJEJyH
そもそもOSは何なの?
2021/03/21(日) 00:39:11.43ID:ejnWrGNO
普通は変換するよ
通信のためのデータ構造とアプリケーションのためのデータ構造は別物だからね
2021/03/21(日) 08:19:52.84ID:he5zjlJ+
>>236
Linuxですが、そこは重要ですか? macOSやAndroidでも動かす予定ですが。

>>237
はい、実際 protobuf の範疇では元のオブジェクトを完全に定義することは不可能で、
今はオブジェクトの属性をロジカルに書き出して、それをprotobufのmessageとして定義し、
IPCでやり取りした後オブジェクトに反映、みたいな処理かなあ、という感じになってます。
2021/03/21(日) 11:09:39.55ID:nSGJEJyH
C++なら共有メモリでええやん
2021/03/22(月) 11:55:12.29ID:c10Em98H
>>230
TIME_WAITの待ち時間の間、TIME_WAIT状態のTCPコネクションが残るため、待ち時間240秒なら秒間80回x240秒=19200のコネクションが残るって話?
でもこれはアクティブクローズ仕掛けてる側の話だから、クライアントからアクティブクローズしてるならサーバーサイドじゃ問題にならないよね?
クライアント側が動的ポート食いつぶして自滅する可能性はあるけど…
2021/03/22(月) 20:09:35.44ID:jm0Zy2RZ
秒間80じゃ攻撃と見られても仕方ない
2021/03/23(火) 18:27:50.33ID:DozAEiY7
ラインのあのニュースで、実況板とかニュース板に日本のプログラマーはレベルが低いとか
書かれててむかついた
2021/03/23(火) 18:29:19.16ID:j3AAJwdY
実際低いと思うが
2021/03/23(火) 18:43:22.27ID:JYWjaBOr
>>242
板のローカルルールが理解できないお前のレベルが低いのは間違いない
2021/03/23(火) 20:03:34.91ID:9H2nLt0o
GitHubのコミットランク見ると米を筆頭に中国まで入り交じってずらずら並んでいる中
日本人の最上位は大分さがってMatzって時点でいろいろお察し
もっとも個人と言うより社会構造の問題だと思うけどね
2021/03/24(水) 00:39:48.57ID:2XA9+Wji
属人化の排除とか言ってるうちは日本はダメだ
2021/03/25(木) 12:02:00.02ID:uUMoHwzC
vuejs勉強するんだけど3系ってまだまだ不安定?
2と3の大きな違いも分からんけどどっちやるべきか
2021/03/25(木) 12:21:56.06ID:Pky8hc2u
Vue自体がオワコン気味だからなあ
わざわざ手間かけて3へ移行するくらいならReact他へ行くってとこが多いんじゃないかな
2021/03/25(木) 13:04:39.66ID:rjYYjYhZ
>>248
なに嘘言ってるの
reactの方が日本では受けてないやん
2021/03/25(木) 13:10:10.28ID:fY5X1PQI
最近は五分五分ぐらいだろ
というか日本と中国以外ではreactが圧勝してるしねえ
2021/03/25(木) 13:27:49.44ID:zrKz1Lho
推奨NGワード: あわしろ
推奨NGワード: デル男
推奨NGワード: KENTA
推奨NGワード: ケンタ
推奨NGワード: Ruby
推奨NGワード: Rails
2021/03/25(木) 21:38:36.75ID:Q90m2+0Z
>>249
それはなにかのデータに基づいた話?
2021/03/25(木) 21:58:16.63ID:rjYYjYhZ
>>252
単に募集とか見ていての感想
そもそもreact言ってる連中って本当に仕事で使ってるのかと思うわ
趣味でやる分にはお好きにどうぞだが
現実は使えるエンジニアが居ないわけだし
どっちにしてもvueもそうだけど日本じゃ言う程流行ってない
2021/03/25(木) 22:03:35.17ID:Q90m2+0Z
>単に募集とか見ていての感想

その程度で他人に嘘だとか言ってんのか
2021/03/25(木) 22:30:04.88ID:jOSAbtJI
エンジニアですらないんだろ。
スルーして差し上げろ
2021/03/25(木) 22:58:28.71ID:rjYYjYhZ
>>254
スレみてる?
vueがオワコンとか言ってるからreactの方がオワコンやんって話やのに
2021/03/25(木) 23:09:53.39ID:Q90m2+0Z
要はなんの根拠も持っていない人同士が思い込みで仲良く殴り合いしているだけという
2021/03/27(土) 01:00:47.33ID:fWD/Qk/S
DBからデータ持ってきてリアルタイムにグラフを表示するシステムを作りたいです
・エクセル→現システム 遅い、重たい
・BIツール→グラフの種類が少ない,やれることが少ない(以下の必須機能がつけられない)
・必須機能
 日付の範囲指定(1日〜2ヶ月の間)
 自動更新機能(3分に1回)
 スライサー機能

なのでグラフを画像として保存しhtmlに貼り付けようと思っています

一応構想としては
@3分に1回コンソールアプリでDBのデータをCSV化する
AASPで日付の範囲指定ボタンを押す
 →CSVの中から欲しい範囲のグラフを画像で保存
BASPの帳票ボタンを押す
 →グラフの画像を表示


ここからが質問です

・AのCSVからグラフ化するのに一番早い方法を教えてください(データを扱うのはPythonが早いとのことですが真偽が分かりません)
・この構想以外にいい方法があったら教えていただきたいです
2021/03/27(土) 01:05:35.76ID:SZdLqkvO
BIツールでいいよ
単にリサーチ不足
PowerBIとかMetabaseとか色々試してみろ
2021/03/27(土) 01:52:34.02ID:iAa+X6Ug
こういうのってデータだけ渡してクライアントで描く方が良いのでは?
2021/03/27(土) 07:23:03.89ID:jB646XGh
HTMLに貼るならChart.jsやCHARTIST.JSみたいなJavaScriptのグラフ描画ライブラリを使うのが早いんじゃない?
WebAPI側は慣れてる言語で作る
Excelもツボを抑えて書き直せば余裕で桁違いに速くなりそうだけど、あんまり継続的に保守はしたくないね
2021/03/27(土) 10:38:19.71ID:cpUHfD3R
>>258
DBのデータをわざわざCSV化せずに
範囲指定した必要なデータだけをてDBから直接取得してグラフを更新する処理を書いてそれを定期実行すればいい

Excelで遅いのは作りが悪い可能性が高い
3つあげてる必須機能はExcel以外にもGoogle Sheetsでも一般的なBIツールでもできる
Webアプリ化したいならPythonよりJavaScript
2021/03/28(日) 11:04:04.41ID:S6joBK3i
すまんどこで聞くべきかわからんからここで聞いちゃうけど
サービス運用についてどうやって勉強すればいい?
プログラミングはそれなりにできるようになったと思うがサービス運用がまったくわからない
セキュリティやらモニタリングやら色々とやらなきゃならないんだろうけど具体的に何をすればいいのかサッパリ
会社の同僚・先輩もみんな同じようなレベルでプログラミングはまあまあできるんだけどねって感じで頼りにならない
2021/03/28(日) 11:32:33.36ID:spxldOS4
サービス運用なんて適当でいいんだよ
どうせ客にはわからん
そして適当にやって間違ったらごめんなさいすればいいだけ

どれだけ巨大なシステム組んでも裏はどうしようもないほど酷いシステムだからな
2021/03/28(日) 12:14:14.35ID:QLEvYPs8
SLA満たすという数値目標あるだろ?
2021/03/28(日) 12:25:43.57ID:g33aZznQ
ITILとかか?
狙ってる気がする
2021/03/28(日) 13:21:06.18ID:IES6ITrg
ITILはうまくいった例を挙げているだけ
現実の問題ではかなりの応用力を問われる
独特なセンスを要求されるな
ある意味プログラミングと同じ
向いている人と向いていない人がはっきりしている
2021/03/28(日) 14:17:11.86ID:ycCgcz1y
>>264
重要な個人情報を扱う分野なのでテキトーでは困る…

>>265
数値目標のたてかたすら手探り
どんな数字を見れば役に立つのかさっぱり
2021/03/28(日) 14:18:48.16ID:ycCgcz1y
>>266
>>267
ググった感じ大掛かりな仕組みっぽくて目眩がするけどITIL調べてみるわ
2021/03/28(日) 14:21:54.03ID:Ah6uwjvI
>>263
「運用設計の教科書」(近藤誠司) を読んで見れば?

運用設計に必要な視点を網羅的に把握できる
ログ収集基盤の実装方法みたいな技術的な詳細を求めてるなら向かない
あとは実際に自分の会社で運用してる社内外のシステムで実践して知識を身につけるといいと思う
2021/03/28(日) 14:25:44.53ID:Ah6uwjvI
個人情報の扱いならISMSとかPマーク認証を学べば必要な視点は分かるはず
ただ具体的な実装となると会社によって千差万別なので実際に運用してるシステムから学ぶしかない
2021/03/28(日) 16:11:49.93ID:8opBNcIh
>>270
評判よさそうなので買ってみた
273デフォルトの名無しさん
垢版 |
2021/03/28(日) 17:47:45.81ID:wq/sCKbI
デーモンのような形態のプログラムについて質問。
ログギングモジュール、設定ファイルモジュールがあるとして、どっちを先に初期化するべきだろう。
設定ファイルを先に初期化すると、設定が壊れているときに、適切なログを出力できない。
ログギングを先に初期化すると、設定ファイルを反映できない。
卵だか鶏だかで困った。
2021/03/28(日) 18:11:24.29ID:Ah6uwjvI
>>273
ログ周りの設定が壊れてるときにどうハンドリングしたいかによるんじゃない?

起動時にstdout等にエラー吐いて即停止でよければ設定モジュールから初期化
ログ出力して処理を継続したいならユーザー設定じゃなくシステム設定でまずロギングを初期化
次にユーザー設定を読み込んで設定を更新
2021/03/28(日) 18:39:41.38ID:NjmNZXxg
>>263
たいてい、この2つのサロン

YouTube で有名な、雑食系エンジニア・KENTA のサロンが月千円

くろかわこうへいのAWS サロンが、月3千円。
彼は、Docker も教えているとか

大企業は、AWSの資格を全社で800持つ、クラスメソッドに頼むとか。
この会社には、AWSの12資格すべてを持つ、ジェダイマスターが7人もいる!

AWSの資格の教科書とか
276デフォルトの名無しさん
垢版 |
2021/03/28(日) 18:42:44.33ID:wq/sCKbI
>>274

後者がのちに停止させるとしても汎用性が高くてよりよくにみえる。
初期化手順の定石とかはないのかな。
本当はなにか物差しがあるといいのだけど。
277デフォルトの名無しさん
垢版 |
2021/03/28(日) 19:27:07.19ID:wq/sCKbI
うん。
コンソールログ初期化
設定ファイル読み込み
設定ファイルを入力としてログ再初期化

この手順にしよう
ありがとう
2021/03/28(日) 19:34:43.21ID:A0lj2cxG
>>275
来るなカス
279デフォルトの名無しさん
垢版 |
2021/03/28(日) 19:48:11.72ID:wq/sCKbI
>>277

自己レス。二度めの初期化がライブラリ的にできない。。どうすっかな
280デフォルトの名無しさん
垢版 |
2021/03/28(日) 20:23:28.06ID:yHCir1no
シングルトン。
2021/03/28(日) 21:06:55.27ID:Ah6uwjvI
>>279
loggerを分ければ?

ライブラリの制約はよくわからないけど
bootstrap時のログ出力とログ周りのユーザー設定を反映した後のログ出力は別扱いした上で
ユーザー設定項目のうち不都合があればfatal errorとして処理を落とすべきものを明確にしておけば
方針が立てやすいと思う
282デフォルトの名無しさん
垢版 |
2021/03/28(日) 21:48:45.40ID:wq/sCKbI
>>281
そだね。。
まあ、初期化のわずかな時間だし、
結局stderrにwriteしたいだけなので、別枠で出力するのが現実的にみえてきた。
Rustのfernってライブラリ使っているのだけど、どうも複数のloggerを同時に駆動できないっぽい。かつ二度めの初期化は許されない。
どうしてもこれでどうにかってなるとこのスレの守備範囲を越えかつ、論点がずれると思うので、これでクローズ。
ありがとう。
283デフォルトの名無しさん
垢版 |
2021/03/28(日) 22:29:09.92ID:wq/sCKbI
ちげええ
ちげええ
設定ファイル読み込み中にログを吐こうとするのが誤っている。
設定ファイルがおかしなときは、エラーを一旦格納しておいて、
次にロギングの設定を行いフォールバックした設定で、初期化する。
その後、設定ファイルのエラーを改めて書き出せばよいのだ。
俺の頭が悪かった。
2021/03/29(月) 00:50:31.22ID:kW6kUd5H
>>283
>次にロギングの設定を行いフォールバックした設定で、初期化する。

ここでエラーが発生したらどうなるの?
285デフォルトの名無しさん
垢版 |
2021/03/29(月) 01:20:40.59ID:FvwB/lXm
>ここでエラーが発生したらどうなるの?

ここはパニックするしかないと思ってる

>>277
>コンソールログ初期化
>設定ファイル読み込み
>設定ファイルを入力としてログ再初期化

最初の手順でも同じことなだと思っているけど、
結局、最小限(==フォールバックした設定==コンソールログ)でもログを吐けないなら、何もできないとおもた。

いまのところ次を想定してる
コンソールログ: 100%出力できる。できなきゃパニックしかねえ。echo hogehoge >>stdout に似ているものだと思って。
設定ファイルの読み込み: エラーすることはある。必ずしも信用できない。例えば logfile = "/var/log/logfile" みたいを思い浮かべて。
設定ファイルの設定を踏まえたログ: エラーすることはある。echo hogehoge >>logfile をおもっちゃって。

>>277 の手順で、
まずエラー報告をできる姿勢にして、他のエラーするかもしれない設定をやるのつもりだった。
コンソールログにはlinuxでいうとこの、early_printkみたいな役割を担わせるつもりだった。
2021/03/29(月) 14:55:42.52ID:eHkwZkun
ブラウザ(SPA)用APIとネイティブ用APIで入り口を分けたほうがいい?
ブラウザでは安全性を考慮してCookie認証(httpOnly, https, sameSite) + CSRFトークンにしたい
しかしネイティブではこれは無意味なので扱いが簡単なヘッダ認証にしたい
2021/03/30(火) 20:23:03.63ID:7oWyLX7t
デジカメの撮影データが加工されたか生なのかって解析できますか?
288デフォルトの名無しさん
垢版 |
2021/03/30(火) 20:32:01.49ID:dIxbRizb
>>287
撮影日が解れば、特定の形式のJPGデータなら解る
2021/03/30(火) 21:25:04.50ID:R6g6oTte
>>287
大抵のデジカメはJPEG画像にEXIF情報を追加する。EXIFの有無などを解析すれば改変の有無を判定できるかも。
2021/03/30(火) 22:50:54.50ID:krVjY3IQ
加工の種類や方法によっては検出可能
https://belkasoft.com/forgery-detection
https://ampedsoftware.com/authenticate-features
291デフォルトの名無しさん
垢版 |
2021/03/31(水) 11:23:44.58ID:FoEJ8r8W
WindowsやMacで、ユーザーからアクセスできないフォルダをプログラムで作成することは出来ませんか?
サーバー上からダウンロードした画像データなどをゲーム内でのみ使用させるために特定のフォルダに配置したいのですが
2021/03/31(水) 11:30:43.72ID:Vc5hrOQS
>>291
出来ません
293デフォルトの名無しさん
垢版 |
2021/03/31(水) 11:35:40.15ID:FoEJ8r8W
>>292
>>292
ゲーム販売等のプラットフォームのSteamなどは、違法ダウンロードに対抗するために
それに近いことをやっているんじゃないかと思うのですが、あれはめちゃくちゃ頑張って何とかしてるってことなんでしょうか?
2021/03/31(水) 11:48:40.08ID:YNK+IKVT
>>293
ネット認証+暗号化されたデータをエンコードならともかく、「WindowsやMacで、ユーザーからアクセスできないフォルダ」なんか作ってどうやって使うのよ
295デフォルトの名無しさん
垢版 |
2021/03/31(水) 12:04:10.07ID:FoEJ8r8W
>>294
iOSなどにはユーザーがアクセスできないけどアプリ側からはアクセスできるフォルダが存在するので
恐らく技術的には可能なはずで、WindowsやMacにもあるのかなと思ったのですがないんですね、すみませんでした
2021/03/31(水) 12:45:19.82ID:1K4SHGhs
技術的に可能だと思うんならその仕組みをまず調べたらいいと思うんだけど、なんで調べないの?
297デフォルトの名無しさん
垢版 |
2021/03/31(水) 13:07:58.61ID:FoEJ8r8W
>>296
あなたもその書き込みをする前に調べたらその書き込みをする必要なく自分だけの知識に出来たのでは?
2021/03/31(水) 14:31:16.33ID:YTeB5kzi
>>297
ごめんよー、ググれカスの婉曲表現が通じないとは思わなんだ

自分が知らないから他のやつも当然知らないと思ってるみたいだけど
iOS開発者なら誰でも知ってることなのでググってね、カス
2021/03/31(水) 14:34:01.94ID:YTeB5kzi
脱獄してなくてもアセットの読み取りくらいは簡単に出来るんだけどね
300デフォルトの名無しさん
垢版 |
2021/03/31(水) 15:22:31.30ID:HRm2CLYI
>>298
訳「私は知りません。」ってことやね
2021/03/31(水) 15:45:52.92ID:OS2YkfHB
わざわざヒント書いてくれてるじゃんw
恥ずかしすぎる
302デフォルトの名無しさん
垢版 |
2021/03/31(水) 16:10:52.45ID:FoEJ8r8W
脱獄したらapplication supportとかbundleフォルダの中身も全部抜き取れるの?
2021/03/31(水) 18:12:29.67ID:pqJDTOP0
>>302
それは脱獄しなくてもできる
304デフォルトの名無しさん
垢版 |
2021/03/31(水) 19:51:43.52ID:FoEJ8r8W
>>303
どうやってですか?
Apple公式ではユーザーはアクセスできないと言ってますよね?
2021/03/31(水) 20:02:46.33ID:qNH4nG2x
javaでgui作るんですけど今の主流や最新って何ですか?
前はSwingで作ってて今回は一先ずJavaFXでサンプル動作くらいまではやったんですが
2021/03/31(水) 20:05:10.73ID:osVfrPFt
pythonのコルーチンとfutureとtaskの違いがよくわかりません
2021/03/31(水) 20:07:21.57ID:k0t0X50G
>>305
html
2021/03/31(水) 20:11:59.50ID:Dmfl5kzC
>>305
javaFXは正直流行ってるとは言えず
現時点ではjavaでGUI開発は時代遅れかと思う
環境を変えて良いならelectronとか別のクロスプラットフォームなものにした方が良い気がする
2021/03/31(水) 20:19:27.46ID:qNH4nG2x
回答ありがとうございます
>>307
調べたら埋め込みできるみたいですね
>>308
どっちも微妙だなぁとは思ったんですがやっぱりですか
環境は叩きたいjarがあるので上回るメリットがないと意味がないですね
2021/03/31(水) 20:41:04.64ID:9YkxM+j+
>>308
そうなんですか?
win32api の世界の複雑怪奇なお作法でガリガリ書くくらいなら、java で GUI するほうが快適だと思っています…
2021/03/31(水) 20:45:36.67ID:k0t0X50G
なんだかんだで.NETが楽だよ
Xamarinでクロスプラットフォーム
Java相互運用も今後サポートされていくはずなのでJava資産も取り込める
2021/03/31(水) 21:14:34.01ID:ReAmowfY
>>304
言ってません
313デフォルトの名無しさん
垢版 |
2021/03/31(水) 22:21:52.29ID:FoEJ8r8W
>>312
ユーザーからアクセスできないという表現は誤解を生む可能性のあるものだったかもしれないけどユーザーに"公開されない"フォルダは存在しますよね?


これがAppleの公式ドキュメントだけど

https://developer.apple.com/library/archive/documentation/FileManagement/Conceptual/FileSystemProgrammingGuide/FileSystemOverview/FileSystemOverview.html

Use the Library subdirectories for any files you don’t want exposed to the user. Your app should not use these directories for user data files.

少なくとも、ユーザーに公開したくないファイルはlibraryフォルダ(application support)に保存してくださいと書いているように見えるんですが、違うんですか?Appleはユーザーには非公開のフォルダがあると言ってますよね?
私は何か間違ってますか?
公開されないだけで、外部プログラムからアクセス可能なんですか?私にはそうは見えないんですけども
314デフォルトの名無しさん
垢版 |
2021/03/31(水) 22:38:03.53ID:FoEJ8r8W
プログラミングしたことない無職のゴミしかいないスレで聞いたことが間違ってたわ、すまんな
2021/03/31(水) 22:40:53.77ID:Dmfl5kzC
>>314
ガイジは来るな
2021/03/31(水) 23:08:57.30ID:gjCDZf2L
>>313
間違ってる
自分の都合よく拡大解釈したいんだな

マジでiOS開発者なら誰でも知ってることだぞ
ユーザーから秘密にしておきたいシークレットを素で保存したりするなよww

信じられないならチケット使ってAppleに問い合わせるといいよ
2021/03/31(水) 23:09:56.17ID:9YkxM+j+
>>311
どっちかというと、保守的な文法のJava8 の範囲で C# のライブラリをサポートしてくれるとうれしいのですけど…
2021/03/31(水) 23:10:40.56ID:gjCDZf2L
バックアップ対象なんだしちょっと考えただけでもわかりそうなもんだけどなぁ
2021/04/01(木) 17:09:27.99ID:zfuxMBQH
Androidで開発に使うadb.exeですが、ソースはApacheライセンスだそうですが
Googleが提供しているバイナリはアプリや独自IDEなどにバンドルするのは駄目
だそうです。
そこで、どこかで、誰かが独自にビルドしたバイナリがダウンロードできない
ものでしょうか?
ウイルスなどが入ってないと思えるようなものでないと困りますが。
320デフォルトの名無しさん
垢版 |
2021/04/01(木) 17:13:43.58ID:o5XCnMGW
自分でビルドすればいいだろ
2021/04/01(木) 19:25:41.75ID:NLtnaoPL
DBからとってきてJson返すだけみたいなドメインがスカスカなシステムってどこをユニットテストすりゃいいんだ?
2021/04/01(木) 20:40:57.35ID:49uqYWRg
>>321
E2Eだけでいいよ
実際にテスト用のDBに接続して、リクエストハンドラが期待通りの結果を返すことを確認するテストを書け
テストを書けと言われたら、中の方の極一部のテストしやすいロジックだけ単体テストを書くアホがよくいるが、そんなものよりE2Eの方が遥かに重要で効果的
2021/04/02(金) 09:33:31.57ID:hcKppiRt
>>321
テストフェーズ関係なくどういう種類のテストをしたいのか、もしくはするべきなのかをまず考えて
次にそれらをどうフェーズ分けするのがいいかを考える

何をテストすればいいのかがわからないならその原因を考える必要がある
2021/04/02(金) 09:49:59.74ID:sr96G99p
>>321
まず今それはどうやって実装されてるのか?

下手なやつはAPIの数だけ同じようなロジックをコピペする
それが本当にDBからJSONを返すだけなら共通化出来る
間に多少のロジックが入る場合があったとしても大抵はほとんどなにもないはずだ

そうなると簡易的なDSLが作れる
define_api "POST" <endpoint> みたいな使い方ができるdefine_api関数を作れる

そして define_api が正しくAPIを作れるかどうかをユニットテストすればいい
ユニットテストは、実際にはエンドポイントに通信を行わず(モックを使う)
テスト用に作ったエンドポイントに想定したパラメーターを渡せるか
戻り値をちゃんと受け取れるかをテストする

あとはずらずらとdefine_api "POST" <endpoint>を並べるだけ
これをテストするかどうかは任せる。単なる定義でしかないので俺は不要だと思うが、
やりたいならAPIが定義できてるかとかdefine_apiをモックして
ちゃんと呼び出してるかをテストすることになるだろう

まあユニットテストとして重要なのはこの define_api だ。
いくらAPIが増えたとしても、この関数は増えないので手間ではない

そしてまれにあるJSONをちょっと加工する必要があるものは、
それをちゃんと加工しているか?をテストすれば良い
一番マヌケなのは、中身スカスカなのに、それにたいしてスカスカなテストを繰り返す書くこと
全てをテストすることのは重要なことではない。
テストを書かなければ不安なところだけやるのが正しいテストだ
2021/04/02(金) 09:51:28.29ID:wd8HVT89
>>321
そんなプログラムだって
・リクエストを受けとる
・DBからデータを取得する
・JSONとして整形する
・レスポンスとして返す
という詳細設計項目はあるだろ
単体テストは詳細設計に対応するテストだから、その項目が正しく実装されているかをテストする
テストをどうしたらいいのかなんて悩んじゃうのは、設計とテストの対応を理解してないだけだよ
2021/04/02(金) 09:56:46.17ID:sr96G99p
define_api api1 "POST" <endpoint>
define_api api2 "POST" <endpoint>
define_api api3 "POST" <endpoint>
みたいな定義コードをテストしないことが納得できないなら
これが定義ファイルだと思えばいい

定義ファイルに従ってAPIを作る
では、その定義ファイルをテストするか?

俺は、定義ファイル(YAMLファイルなど)に「この定義が書いてあるか?」を
テストしている例を見たことはない
2021/04/02(金) 11:11:59.88ID:p/gaZSt4
reactjs使ってもユーザビリティが向上するわけではないですよね
2021/04/02(金) 11:17:41.66ID:OEtq4Z2B
むしろUX悪化するまである
2021/04/02(金) 23:53:58.88ID:WscKa11H
VBA前提です。

購入品が発生する仕事で、プロジェクト毎に購入実績をエクセルブックにまとめています。
購入品単体の実績を確認しようと思った時、
ブックを一つ一つ開いて探さないといけないのが現状です。

これに大して検索システムを作ろうと考えていますが、
検索する度に他ブックを参照するか、一端全データを抽出してそこに大して検索をかけるかで
悩んでいますが、検索速度など考えた時後者の方が早いでしょうか。

また、他に何かいいシステムがあれば教えてください。
2021/04/03(土) 00:00:53.75ID:YB/KO+42
エクセルを検索できるフリーソフトなら
いくらでもあるだろ
2021/04/03(土) 06:18:53.95ID:Cw69re+2
なんか気づいたらletsencryptが更新失敗してた
原因はポート80をapacheで使ってるため
80(http)から443(https)にリダイレクトさせるなんて止めないとダメになったのか?
cronでは一時的に停止して更新させるべきなのか?
どうしてる?
2021/04/03(土) 08:41:33.29ID:Cw69re+2
>>331
結局、--pre-hook でhttpdをstop
2021/04/03(土) 14:05:00.90ID:WR1zR6HO
>>313
iOSでもAndroidでも同じなんだけど、今のOSは必ずユーザのIDでアクセス
できる領域を制限しているのね
で、一般的になユーザではアクセスできず、管理者や特定のIDを持った
プログラムしかアクセスできない領域っていうのがあらかじめ決めてあって、
そこに書き込んだ場合には、アプリからはアクセスできるけどユーザは
アクセスできないとか出来るようになっているのね

だけどWindowsとか素のLinux(Macの場合はBSDベースだからLinuxじゃない
とかは置いといて)では、一般のユーザ以外に管理者権限でアクセスする
方法が提供されていて、管理者権限って名前の通り、どのような設定を行って
いてもあらゆる領域にアクセスすることができる機能があるのよ

iOSとかAndroidでは通常、管理者権限で操作をすることは出来ないように
なっていて、ユーザから見えない領域にアクセするプログラムは、その領域に
アクセスできる権限を与えることによってアクセスコントロールしている

なので、iOSでは脱獄、Androidでroot化って言われる処理をすれば管理者
権限が使用できるようになるので、どのように制限された領域でもアクセスできる
ようになるし、WindowsやMac OSみたいにユーザが管理者権限を普通に取得
できるOSでは、ユーザから完全にアクセスできない領域を作ることは
出来ないって話しになるだね

処理中のメモリの内容を隠蔽してデータの入力と出力しか出来ないようにする
トラステッド領域処理とかって言うものも最近は存在するけど、Windowsや
Macでローカルストレージに置いたデータを、暗号化などによってわからなく
することは出来ても見れなくすることは無理なので
2021/04/03(土) 18:19:12.30ID:G1tvYMqy
>>333
頑張って調べたのかもしれないけど>>313と同じで間違ってるよ

モバイルでも3rdパーティのアプリがデータを読み書きするフォルダやファイルは脱獄やroot化しなくてもユーザー(=デバイス所有者)は閲覧可能だから
iOSのアプリごとのLibrary/やAndroidのshared_prefsフォルダに書き込むのにroot権限使ってたら大変だよね
2021/04/03(土) 18:34:52.15ID:hqV+Figq
ルートじゃなくてポート1194も開いてない(ウェブとかメール用のポートは開いてる)サーバでopenvpn動かすことってできますか
2021/04/03(土) 19:36:07.49ID:RE1SrDkO
ブートローダのアンロックやrootを取れる機種限定で良いのでAndroidスマホのシステム周りを
デバッグするチュートリアルとか技術資料ってないですかね
アプリケーションの開発に関する情報は腐るほど出てきますが、OSや標準機能のデバッグに
関する情報はさっぱり見つかりません
例えば今でもしばしば目にしますが「特定のキャリアでVoLTEが使えない」みたいな場合です
別のキャリアでは動く以上、プログラムの修正を要したとしても少量、ひょっとしたら
設定ファイルの変更だけで済みそうですが何処で転けているのか判らないことには対処が難しいです
2021/04/04(日) 14:50:32.07ID:euN+A9Un
>>334
あんな、WinとかMacでユーザに読み取られないフォルダは作れないって話であって、
iOSで特定のフォルダにアクセスするのに特権がいるとかいらないとかって話してないぞ

>>335
openvpnのサーバ?クライアント?ポート1194が開いていないってFirewallの話かな?
vpnサーバを立てるっていう話ならば1194はwellknownポートじゃないので、一般
ユーザでも自分の書き込み可能な領域にvpnサーバのプログラムを入れれば動くと思う
Firewallでポートを開けなくても使えるって話ならば、使えるポートを待ち受けに使えって
話しだし、クライアントならばサーバ側でpnサーバが動いているば使えるんでない
1194が開いていないっていうなら違う話かな?

>>338
多分最近始まった携帯サービスがVoLTE必須で自分のでは使えないとかいう話
なんだろうけど
AndroidOS自体のデバッグとかは、基本的にAndroidOpenSourceProjectのところを
見て、OSのビルド方法とかから勉強しないと話が始まらないです
まぁ、あそこの資料はお約束的に量が多い割りに中身が薄いので、いきなり読んでも
まったく分からないとは思うけど
なのでAndroidのカスタムOSとかで検索して色々調べると分かるようになるかも
あと、こういった情報で日本語のものは、やり方をコピペしているだけの情報が
多いので、書いてある通りやってうまく行かないとそれ以上は自分で勉強して試行錯誤
する必要があるけど、詳しい情報はXDAみたいな英語のサイトとか台湾人や韓国人の
技術者が書いてくれているブログなんかがほとんどなので、日本語ベースの情報は
ほぼないよ
VoLTEについてはOSというより、Androidスマホに搭載されているSoCのモデムが
対応しているか(ここ2、3年のQualcommのSoCならばほぼ大丈夫なはず)と、
機能の有無を制御するEEPROMの設定を変更するって作業が必要で、やり方は
機種ごとに違うので、自分の機種で「VoLTE enable」とかで検索すると情報が
見つかるかも
多分qpstとかで書き換える方法とかに行き着くかもだけも、その手のツールは失敗
するとハードブリック(完全に修復不能な状態)するので気を付けてね
2021/04/04(日) 14:51:29.59ID:C0fdEpC0
誰と会話してるんだ
2021/04/04(日) 17:42:31.45ID:5yUAN7k9
初心者でも見分けられる知ったかぶりの7つの特徴

1. 要点に対して無駄に長文
2. 不必要に上から目線(マウンティング第一主義)
3. 主題には明確に答えず枝葉末節にへの指摘や反論、薀蓄語りをしたがる
4. 質問や指摘を意図的に軽んじることで自分の優位を保とうとする
5. 自身の間違いや勘違い、無知を正直には認めない
6. 権威主義的で有名人や有名企業などを持ち出したがる
7. 相手を否定する言葉で会話をはじめがち(例「いや、〜」)
2021/04/04(日) 20:27:41.61ID:xUGHmBNZ
>>339
>>339 の全文そのものが >>339 の基準を十分に満たすように思えてならないのは気のせいですか?
2021/04/04(日) 20:52:07.80ID:0bEQEHuo
しっ
2021/04/05(月) 03:09:41.31ID:VixPxvD5
いや、冷静に考えると4以降はまるで該当してないな
前半の印象だけでの予断はよくないぞチミィ
現物をよく見よと本田宗一郎も仰っておるからな
2021/04/05(月) 11:39:01.20ID:3HQ81ZvQ
自分から当てはまりにいくユーモアのセンスは称賛しよう
344336
垢版 |
2021/04/06(火) 19:10:14.52ID:0VxVWOV2
>>337
アンカーがおかしくね?内容的に自分宛で良いのかな
調べてみたいスマホはdocomoのSO-04G(3.5Gスマホ)でauの4G SIM(3G不可)でVoLTEを使えるが
楽天のVoLTEは不可って所。ついでにVoLTEがらみでXperiaのグローバルモデルも調べたい
ビルド環境を用意しないことには始まらないのはその通りで、別件でSONY Developer World見ながら
ビルド環境の準備を進めていて最近PCを用意してLinux入れて・・・とやっていたところだった
で低レイヤーのデバッグ環境も準備したいがさっぱり判らん状態

ハードウェア的にはVoLTEが使えるはずなのでソフトウェアや設定の問題ではないかと思うのだけど・・・

>qpst
一理ありそうだけどどのパラメータがどのような意味なのかを把握せずにいじり回すのは
かなり危険に感じるんだよな。流石に気軽には試せない
2021/04/07(水) 02:40:43.73ID:g0cTo5ct
レンタルサーバー上で顧客管理をPostgreSQLで行うcgiを作りたいのですが、
仮に後からカラムを追加するような場合、安全に行うにはどうすればいいでしょう。
いったん、cgiを停止させてから、ssh(リモートシェル)を使って、
手作業でカラムを追加してから、バージョンアップしたcgiに差し替えるので
しょうか。
その場合、cgiをどうやって停止させるかが問題となりそうですが、あらかじめ
停止できるような仕組みを作っておくのか、それとも、ftpなどでcgiを削除
してしまえばいいでしょうか。
かなり微妙で安全に行うのは難しそうですが、予め完成されたソフトを買えばいいのかな?
2021/04/07(水) 03:32:44.38ID:keBvs1o2
メンテナンスモードのチェックをしてからメンテナンスならメンテナンスですみたいな画面を出して処理しなきゃ良いだけでは?
2021/04/07(水) 11:44:49.11ID:g0cTo5ct
cgiにおいて、PostgreSQLなどのテーブルをロックしたいんですが、
ロック中にそのcgiが途中でダウンした場合、ロックが解除されずに
残るのか、それとも、解除されるのかどちらでしょうか。
仮に解除されないままになった場合、どうやって解除すれば良いんでしょう?
2021/04/07(水) 12:28:38.32ID:T/7kn+II
まずrdbの基本的な事から勉強してください
トランザクションも分からない段階じゃ何を説明しても無駄
2021/04/07(水) 13:07:53.00ID:XZ4egoAQ
RDBも平日勤務にして土日祝休みにすべきだよ
国のシステムはどれも平日しか使えないだろ
36協定見習うべき
2021/04/07(水) 16:07:35.06ID:IKflwJ+i
>>347
ネットワークレベルで接続が切れるような死に方をすれば
DB側もすぐ検知できるのでそのタイミングでロールバックされる

ハングアップするような中途半端な状態になった場合は
idleなトランザクションのタイムアウト値をみて判断される

それでも対応できないような稀有なケースは手動で該当セッションを切断する
351デフォルトの名無しさん
垢版 |
2021/04/07(水) 16:17:54.17ID:g0cTo5ct
>>350
ここに質問した後に、transactionの存在に気付いたのですが、
やはり、lock table(?) より、基本的にはまずそっちを使うんでしょうかね。
transanctionの場合、whileやifや変数(?)のようなものを使ってSQL自体で
プログラミングするんでしょうか。
2021/04/07(水) 17:01:22.57ID:c1pdqECQ
>>344
AndroidはLinuxの上にAndroidっていうJava互換サブセットのアプリが動いている
構造なので、一番低いレイヤーのデバッグっていうとAndroid端末上でkdbを使える
ようにして作業することになる

でも、VoLTEはさらに低レベルのSoCに内臓されるモデムのファームウェアと、
関連するパラメータの設定で制御しているらしいので単純にOSの制御じゃないとか

VoLTEは端末側で自由に使用できるものではなくて、携帯キャリアでこの機種使って
良いですよって確認とって有効化しなければならないものらしいので、日本では
キャリア販売端末以外では使えないのが普通らしい

なので、APN設定で選択するとVoLTEが使えるようになる機種以外は、Qalcommの
SoCに関係する設定を変更するしかない場合が多くて、それを行うには非常に
危険だけどQPSTを使う必要があるらしいよ

問題のある/なしは分からないけど「zenfone volte qpst」で検索すると、強制的に
VoLTEを使えるようにする方法が色々引っかかってくるので、その情報をベースに
目的の端末の情報を調べてみて
2021/04/07(水) 22:47:33.41ID:LKaymI6+
就活のネタにwebブラウザを自分で作ってみましたっ☆

ってアピールしたいけど、エクセルでif文と四則演算ができます。って技術力で、
ドメインだとか名前解決とかipアドレスv6(?)意味があんまり分からない状態。
そんな状態で1か月〜2か月あれば作れるものなのかしら。。。
2021/04/07(水) 22:59:24.00ID:MMKQHkD0
付け焼き刃よりも今までやってた事を突き詰めたほうが良い
エクセルならそれでも行けるとこは行けるだろ?
就職先次第
2021/04/07(水) 23:02:24.01ID:MMKQHkD0
ブラウザの作り方のハウトゥー見ながら作れたとして、それで評価されるとしおもえないんだが
話術、知識が凄くて、プログラム素人が全然ばれないならなんとかなるかもしれないが
それだったらブラウザ作らずとも行けるかと
2021/04/07(水) 23:09:14.34ID:T/7kn+II
まー就職活動で目を止めてもらえるレベルのものは無理
簡単なのはC#でwebコンポーネントを貼り付ける事だろうけど、そんなのはアピールにはならんでしょIEベースだし
2021/04/07(水) 23:48:03.32ID:aaoJ0C8Y
面接官にそんな話してアピールになると思い込んでるなら就活失敗しそう
2021/04/07(水) 23:48:22.97ID:qb1sB/x9
>>353
OSSのがあるからclone
デザインとか微調整してビルド
2021/04/08(木) 00:00:05.95ID:x35EtLun
あーそうか、、githubちゃんがあるから作りましただけだとアピールにならんか。
どんな仕組みで動くかレベルで言わんと技術力のアピールにはならんか。。
むむーぅー。
360デフォルトの名無しさん
垢版 |
2021/04/08(木) 00:01:32.94ID:x35EtLun
ご意見ありがとうございます。
勉強にはなると思うのでやってみます。
2021/04/08(木) 10:03:06.42ID:RD6Ac6a7
OSSにしてgithubなんかに公開してることが発覚したら、即、作用面接落としてやる。
2021/04/08(木) 10:21:03.80ID:RoF2HrXB
OSSプロジェクトの一つ二つも作れない採用担当者おつおつ
2021/04/08(木) 11:12:36.97ID:RD6Ac6a7
1行追加しただけ、100行の汚いコードを追加しただけでOSSプロジェクト
作りましたってか。
2021/04/08(木) 11:14:35.61ID:RD6Ac6a7
フルスクラッチでOSSプロジェクトを立ち上げても不採用にする。
技術がどんなに優れていても。
2021/04/08(木) 11:27:19.58ID:zlso3ipm
出来上がったものがショボくても
自分が問題意識を持ってる事に取り組んでるやつが評価される

そういうのが無いやつは今ならあざとくコロナ関係やっとけ

ただ新卒なら4〜5月で面接して6月頭に内定が出るのが普通だから
今からネタ作りするのは手遅れ
2021/04/08(木) 12:28:47.99ID:93ffqPLh
1からブラウザ作りましたってんなら即採用じゃね
たった2ヶ月で何人月の仕事をしたのか想像も付かないレベルの偉業
2021/04/08(木) 13:21:38.32ID:oJ0Y+Q5F
>>365
そんなときのためのフォークでしょ
2021/04/08(木) 16:53:20.72ID:eSL736QZ
>>353
Webブラウザのコンポーネントを使って何とかサービスのフロントエンドを作って
みましたって言うならば、出来がよければアピールになるかもしれないけど、
Webブラウザを作りましたは言った瞬間にお祈りメール行きだぞ

今の世の中にブラウザはGoogle ChromeとMozilla FireFoxしか存在しなくて、
巷にあふれるブラウザはどちらかのカスタマイズなのでWebブラウザを
作りましたじゃなくて、こういう事柄とかに特化した何々をベースにした
カスタムブラウザを作りましたならありだけど
2021/04/08(木) 18:03:37.37ID:9dA8V6RD
そんなことやっているから日本のIT産業はアメリカどころか中国にすら負けるんだろうね
2021/04/08(木) 18:25:42.91ID:DvDXhVMc
パーサーとレンダラーから書いた自作ブラウザなら評価されるだろ
2021/04/08(木) 18:41:50.28ID:9dA8V6RD
てか日本での最大シェアはApple Safariじゃないの?
2021/04/08(木) 21:20:09.90ID:lDvnXqCb
基本、技術自慢の香具師は、即不採用。
HTML, CSS で、何か月も掛けて、サイトを作りましたみたいな香具師

それよりも、Bootstrap でコピペして作りましたの方が採用される

非効率で他人の何倍も苦労して、低品質なものを作った人・技術自慢などは嫌われる。
なぜかと言うと、独自で作ったものは保守できないから

そういう製品は、個人商店のもの。
製品が特定の人に属しているもの・属人性

会社みたいな組織では使えない。
会社では属人性がダメ。交換可能じゃないといけない

採用されるのは、その会社についての製品愛があるかどうか。
Ruby on Rails, Bootstrap で、その会社の商品を発展させたものが良い

その会社と無関係な技術自慢は、してはならない。
会社にとって、時間の無駄だから

自分本位のアピールじゃなくて、会社側に立って、アドバイスをする。
MBA・中小企業診断士などの立場で、会社にアドバイスする
2021/04/08(木) 21:25:30.02ID:xGv2dDTB
意訳。私は技術力がない
2021/04/09(金) 00:19:37.31ID:LD9YfXoP
愛が重すぎるのも考えものだねえ
2021/04/09(金) 00:39:35.07ID:WVsLSubX
技術バカはダメだが技術軽視で良い理由はない
376デフォルトの名無しさん
垢版 |
2021/04/09(金) 09:24:53.67ID:ndeuG/ap
同一の言語、同一のロジックであっても、
配列のような変数セットにおける最後のカンマが要るケースと要らないケースがありますが、
内部処理的に扱いがどう異なるのですか?

[1,2,3,4,5,]
[1,2,3,4,5]
2021/04/09(金) 09:36:49.52ID:G/iU/2tK
空要素を許すか、その要素は指定されていないものとして扱うか、だけの違い
2021/04/09(金) 09:38:30.39ID:N8DfP4lZ
>>376
要るケースと要らないケースが両方存在する言語って何よ?
その前提がわからないのにどうやって内部のことを語るんだよ
2021/04/09(金) 09:43:50.69ID:J6bfp+GS
>>376
大抵の言語では全く違いはない
末尾にカンマを入れることが許されているのは、一要素ずつカンマの直後に改行を入れたときにその方が楽だから
最後の要素だけカンマがないと、コピペが面倒だったり、後で末尾に要素を追加したときに直前の行まで変更が必要になってgitでコンフリクトしやすかったりする
2021/04/09(金) 09:48:02.53ID:G/iU/2tK
補足すると言語における構文の定義による

言語によっては [1,,,2]といった空要素を許容したりする
その場合は最後の,は最後ではなく空要素が続く指定になる

また別の言語では最後の,は除去されるとするものもある
複数の要素を改行して表記したいときに最後の行の末尾に,が付いていても構文エラーにしないという糖衣構文
2021/04/09(金) 14:18:44.81ID:K7Kl+Zor
tupleで(1,)みたいにカンマが必要なことを言ってると想像
2021/04/09(金) 20:47:13.85ID:gfgLYvn3
案件を識別する番号振ってる方、どんなルールでやっています?
2021/04/09(金) 20:59:31.47ID:J6bfp+GS
一般論としては、物事に対して管理番号的なものは振るな、説明的な名前だけで管理せよ
どうしても振らなければならない場合は、その理由を明確にせよ
目的が明確になっているならルールは自ずと決まる
2021/04/09(金) 22:57:34.93ID:dGYKPA0N
シンクライアントにリモート接続する魔法ってないんか?
2021/04/09(金) 23:24:21.80ID:ylihegww
>>384
リモートデスクトップですか?
プロトコルは何でスカ?
2021/04/09(金) 23:28:39.63ID:FFJWOs+9
>>384
シンクラのクラのほうにリモート接続したらええんちゃうか?
2021/04/11(日) 14:14:20.79ID:WZaxHJJN
PCでエクセルを開いたとかPDFを開いたとかの
アプリを起動した時のイベントを記録したいです
その時、できれば対象となったファイルも記録したい。
開発はwindows10、VB or C#で
2021/04/11(日) 15:05:01.08ID:r97L2GDh
WMIクラス
watch for creation
2021/04/11(日) 22:19:48.17ID:UuI8h9HM
pythonだと
c = wmi.WMI()
process_watcher = c.Win32_Process.watch_for('creation')

同じことはC#で
https://docs.microsoft.com/ja-jp/dotnet/api/system.management.eventquery
2021/04/13(火) 19:04:48.78ID:gWbnUgF3
NginxのリバプロってOAuthベースの認可できる?
何の保護もされてない丸出しAPI鯖があるんだが
Nginxでルーティングするついでに認可もしたい
391387
垢版 |
2021/04/13(火) 20:05:22.74ID:u8+Pcrh1
>>388>>389
ありがとう!!
2021/04/13(火) 20:32:22.08ID:5ucR1c1v
前に WMI Code Creator を使ってたけど、バージョンアップしてないしもうオワコン?
2021/04/14(水) 02:42:32.31ID:d4l6wVLA
https://developer.android.com/studio/terms
3.5 Use, reproduction and distribution of components of the SDK licensed
under an open source software license are governed solely by the terms
of that open source software license and not the License Agreement.
訳してみると、
「OSSライセンスの下にライセンスされているSDKの構成成分の使用/再生成/配布は、
 単にOSSライセンスによってのみ左右され、「ライセンス同意」によっては左右されない。」
Android SDK のほとんどはApacheライセンスに基づいているんですが、Android SDKの
「ライセンス同意」には、例えば、他のSDKの開発のためには用いては良くない(may not)
と書かれていますが、Apacheライセンス的には、自由に使用/配布できるとされます。
矛盾しているようで、理解できません。
may not は、must not より緩いとされているので、禁止ということではないということ
なんでしょうか。
2021/04/14(水) 02:52:16.79ID:d4l6wVLA
>>393
「may not」は立場が上にあるものが、上から目線で「してはいけません」という
時に使われる言葉だと解説しているサイトがありました。
また、3.5は、「components」に関していっていることなので、SDK全体の
ことはさしていないと解釈することもできます。なので、adb.exeや
xxx.jar のようなSDKの中の一部分だけなら自由に配布/使用してもいいが、
SDK全体では駄目、と解釈することも出来るかも知れません。
Android SDKのソースは、AOSPにおいて大部分がApacheライセンスで配布
されているとされ、ApacheライセンスはBSD系ライセンスとされているので、
プロプライエタリなソフトを作りたい人目線ではかなり何でもして良い緩い
ライセンスです。
AOSPのソースコードは100GBあり、ビルドにはさらに150GBも必要とされ、
ダウンロードするのもビルドするのも大変です。
ソースはどう使うのも自由だが、バイナリにどんなライセンスを与えるのも
自由とも解釈できます。「配布を妨げてはならない」などいうような条項は
無かったと思いますので。
結局、良く分かりません。
395デフォルトの名無しさん
垢版 |
2021/04/14(水) 10:14:14.50ID:GNdqlmcr
JavaScriptを知らないのにいきなりTypeScriptを勉強するのと、
JavaScriptを勉強してからTypeScriptを勉強するのとでは、
どちらが早くTypeScriptを習得できそうですか?

※ ちなみに、他の言語はCやC#やPythonなど10年ぐらい経験があります
2021/04/14(水) 10:16:01.80ID:LK5tZoqm
TypeScript
397デフォルトの名無しさん
垢版 |
2021/04/14(水) 10:22:32.32ID:GNdqlmcr
>>396
前者ということですか?
理由もお願いします
2021/04/14(水) 10:29:49.91ID:LK5tZoqm
別の言語だからです
399デフォルトの名無しさん
垢版 |
2021/04/14(水) 10:41:56.14ID:GNdqlmcr
この人ダメです
他の人お願いします
2021/04/14(水) 10:44:44.60ID:pk3Ilzgy
javascript自体は理解しておいた方がいいよ
javascriptが消えることは無いけど、typescriptのようなjavascriptにトランスパイルする為のものはそもそもずっと使えるかどうかなど分からないし
401デフォルトの名無しさん
垢版 |
2021/04/14(水) 10:52:05.18ID:GNdqlmcr
>>400
ありがとうございます
なるほど、納得です
それは大きな弊害ですね
それとTypeScriptから始めるとJavaScriptとTypeScriptの境界が分からなくなりそうですし、
やっぱりJavaScriptから始めてみます
2021/04/14(水) 10:52:41.03ID:LK5tZoqm
別の言語だから
これでわからないならノーセンス

英語を学ばないといけないのですが
ラテン語と英語どっちを先に勉強したほうがいいですかね?

それらは別の言語です
英語を習得したいなら英語を学びなさい

C言語を学ばないといけないのですが
アセンブリ言語とC言語どっちを先に勉強したほうがいいですかね?

それらは別の言語です
C言語を習得したいならC言語を学びなさい
403デフォルトの名無しさん
垢版 |
2021/04/14(水) 10:57:14.74ID:GNdqlmcr
なるほど、TypeScriptとJavaScriptの関係を知らない人が回答していたんですね・・・
恥ずかしくないんですかね・・・?
2021/04/14(水) 11:10:25.44ID:0xQQ9slV
We frequently see the question “Should I learn JavaScript or TypeScript?“.

The answer is that you can’t learn TypeScript without learning JavaScript!

https://www.typescriptlang.org/docs/handbook/typescript-from-scratch.html#learning-javascript-and-typescript
405デフォルトの名無しさん
垢版 |
2021/04/14(水) 11:42:20.28ID:GNdqlmcr
>>404
OK, I'll learn JavaScript first, then move to TypeScript.
2021/04/14(水) 12:20:43.88ID:2bkEPAcW
あらら
時間を無駄にしたな
2021/04/14(水) 12:23:23.81ID:2bkEPAcW
つうか10年やってきてJavaScript知らないというのは少々非現実的な設定だ
自演したいならもう少しキャラ設定には気をつけたほうがいいぞ
408デフォルトの名無しさん
垢版 |
2021/04/14(水) 12:38:10.88ID:xXGuyyXk
Javaを知らないのにいきなりKotlinを勉強するのと、
Javaを勉強してからKotlinを勉強するのとでは、
どちらが早くKotlinを習得できそうですか?

※ ちなみに、私は失礼無礼な>>395ではありません
2021/04/14(水) 12:39:14.52ID:LK5tZoqm
>>408
Kotlinを勉強したほうが早いですよ
当たり前ですよね
410デフォルトの名無しさん
垢版 |
2021/04/14(水) 12:48:18.85ID:xXGuyyXk
>>409
でもJava自体は理解しておいた方がいいと思うよ
Javaが消えることは無いけど、KotlinのようなJavaにトランスパイルする為のものはそもそもずっと使えるかどうかなど分からないし
2021/04/14(水) 13:35:30.54ID:0xQQ9slV
Kotlin/JSはトランスパイラだけど
Kotlin自体はトランスパイラじゃないぞ
412デフォルトの名無しさん
垢版 |
2021/04/14(水) 15:33:57.73ID:Pbf/d/ID
トランスパイラという言葉が使いたかっただけだ。
どういう意味だ?
2021/04/14(水) 15:43:09.85ID:7tHprJG0
別言語のソースコードに翻訳するプログラム
その別言語で動かしたり、更にコンパイルしたりする
2021/04/14(水) 15:46:14.74ID:6m/g2QhI
コンパイラが翻訳で
トランスレートも翻訳
415デフォルトの名無しさん
垢版 |
2021/04/14(水) 16:45:03.36ID:hz0wFRHA
デジタルトランスフォーメーション
デジタライズ
デジタライゼーション
それぞれの違いを教えてけれ
2021/04/14(水) 16:49:21.41ID:5X9wql4C
>>415
ググレカス
2021/04/14(水) 18:09:31.12ID:PDgXMls3
git cloneでダウンロードしたVS C++のソースをコンパイルしようとするとutf8のファイルが文字化けしてエラーになります。

BOMを付ければ良いそうですが、ソースが大きい為、手動ではとても全部はできません。
git cloneの段階でBOMを付ける指定などできないでしょうか

またはutf8のファイルに自動でBOMをつけてくれるツールなどはないでしょうか
2021/04/14(水) 19:22:44.82ID:7tHprJG0
メイクファイル、ましてや/utf-8でコンパイルできないような妙なソースを拾ってくるんじゃありません
拾ってきた場所に返してきなさい
2021/04/14(水) 19:51:00.20ID:pdM3M1hI
株式市場の板みたいなのって大量にリクエスト受信しますよね?
どうやってさばいてるのですか
2021/04/14(水) 20:12:16.65ID:sHj0LWwc
リクエストをロードバランサーで大量のサーバーに振り分けてる
2021/04/14(水) 20:42:59.37ID:OxyawpZe
専用の機械もあるし、ソフトウェア的なバランサーもある
2021/04/15(木) 01:20:58.49ID:cZFDZm7R
CDNとか使ってるんじゃないの
2021/04/15(木) 07:03:08.77ID:S1KqOAhX
>>417
ム版だし、ここは自作したら?
ファイルの先頭に3バイトつけるだけの簡単なお仕事

いろんな文字コードが混ざってるならちと面倒くさいけど
2021/04/15(木) 07:08:54.91ID:/ORclnPB
UTF-8自動判定させようとしてBOMって言ってるんだろうから加工じゃなく418がベストだと思うがなぁ
2021/04/15(木) 07:42:45.67ID:7TaslGvt
いろんな国の人が関わってちゃんぽん状態だから
utf8の必要な部分と、アスキーでいい部分と混在してるんですよね
2021/04/15(木) 08:16:42.67ID:/ORclnPB
ん、チャンポンだとそれこそメイクファイルあるんじゃないのか?
git pull からの make 出来ないと不便だろ
2021/04/15(木) 11:56:37.12ID:aY5ixRTL
gitでコンパイルまではしなくて
別にコンパイル用のwindowsのバッチがあってそこで
VSのコンパイルをする部分に問題があります。

BOMがないと文字化けするのはVSに問題があるそうです。
2021/04/15(木) 12:06:51.91ID:/ORclnPB
メモ帳すらもBOM無しが標準となった現代で、VSに責任転嫁するのは無理がある
UTF-8とShiftJISの自動判定は理論上不可能で、コンパイルオプションで明示してやる必要があるのは、それこそ常識に近い
エンコーディングを意識していないメイクファイルしか入ってないプロジェクトじゃ、メンテナンスの品質もお察し
そこを踏まえての>>418なんだよな
2021/04/15(木) 12:25:59.06ID:M2GgSeCL
本当にアスキーとutf-8だけなら区別する必要無いんじゃね
2021/04/15(木) 13:09:15.34ID:/ORclnPB
>>429
内部でのコードは統一されるので文字列リテラルの文字化けが問題
コメントなんて化けても良いんだが
なお、識別子に全角文字使うのは馬鹿としか言えないので考慮の外
2021/04/15(木) 14:56:45.68ID:/QulLIfB
>>417
> またはutf8のファイルに自動でBOMをつけてくれるツールなどはないでしょうか

Notepad++で出来る
https://www.howtonote.jp/notepadplusplus/install/index7.html

あと、>>423が言ってるように自作するならここに答えがある(bash, sed, VBAなど複数の方法がある):
https://stackoverflow.com/questions/3127436/adding-bom-to-utf-8-files
2021/04/15(木) 15:02:55.26ID:aY5ixRTL
>>431
ありがとうございます
2021/04/15(木) 16:26:12.89ID:EZSEqAIC
2021/04/15(木) 17:44:55.89ID:dgW7AWVD
もういい加減utf-8に統一できないのだろうか…
435デフォルトの名無しさん
垢版 |
2021/04/15(木) 18:05:39.42ID:KOHmz8sB
日本語には不利だ
2021/04/15(木) 19:10:43.25ID:/ORclnPB
エンコードもだけど、新規の案件なのにSubversion使うのはやめてほしい
2021/04/15(木) 20:27:23.34ID:EtuEe8Ai
>>436
そんな現場じゃ他にもっとゲロクソな要素山盛りでしょ
Subversion自体は
2021/04/15(木) 21:18:23.41ID:hEZqbZva
>>428
内容を自然言語処理すれば理論的には可能だが
2021/04/15(木) 22:06:53.01ID:ddLCV2xW
>>434
使う人々の問題だからね。
OS側に文句を言っても解決しない。
2021/04/15(木) 22:11:37.35ID:g6O5KoeO
git で、指定したhash値の位置にresetしたいんですがhash値がテキストファイルに書かれていた場合ワンライナーでどのように書けばいいですか?


因みに以下では無理でした
cat hoge.txt | git reset --mixed
2021/04/15(木) 22:18:48.30ID:/T4/urV+
--mixed `cat hoge.txt`
とか
2021/04/15(木) 22:26:11.24ID:g6O5KoeO
>>441
ありがとうございます!
2021/04/16(金) 11:13:26.52ID:2Nn8ILTQ
勉強で作ってるプロジェクトで
OAuthアプリのidとsecret keyを書いたファイルをうっかりgirhubにpushしてしまいました
アプリは新しく作り直してキーを再取得して、環境変数から読むようににファイルを修正して再度pushしました
ただ、当然ですが前のid等を書いたファイルは履歴から辿れてしまう状態だし
コミット履歴は消せないみたいなので
諦めてリモートもローカルもリポジトリ自体を消して作り直す方がいいですか?
2021/04/16(金) 11:30:17.42ID:ZlbAbtfH
もうキー変えたんだったら放置でいいだろ
GitHubのサポートに連絡すれば消してくれるらしいけど、そこまでするくらいならリポジトリ作り直すわ俺なら
2021/04/16(金) 11:34:15.01ID:2u59kp0K
svnの取り消しのVって何の略?
2021/04/16(金) 12:07:57.66ID:2Nn8ILTQ
>>444
ありがとうございます
キーは変えたけど、こういうのがずっと履歴に残るのって問題ないのか不安だったんです
大丈夫ならこのまま進めます
2021/04/16(金) 12:26:27.22ID:k5zYfJVI
Linux や、VSCode, サクラエディタも、BOM付きUTF-8 には対応していない

世界標準は、UTF-8 だけ。
それ以外のソースコードは、古いから危険!

まず、すべてのファイルを、UTF-8に変換した方が良い
2021/04/16(金) 12:37:42.09ID:VxhI1wCX
>>446
仮にもプログラマなら不安じゃなく事実で判断しろ
当時のキーがいつでも参照できる状態にあるという事実、それ以上でも以下でもない
それが問題になるかどうかは君次第
2021/04/16(金) 12:45:50.01ID:LKJL4H3x
>>446
消したいならrebaseすりゃいいよ
2021/04/16(金) 12:58:24.75ID:v/sZV+ho
>>449
GitHubにキャッシュが残るから、サポート依頼が必要
docs.github.com/en/github/authenticating-to-github/removing-sensitive-data-from-a-repository
2021/04/16(金) 14:56:00.09ID:8JlkmWn5
>>445
Vがどこに現れるか知らんけどrevertじゃない?
2021/04/16(金) 18:53:53.45ID:2u59kp0K
revertだと前のリビジョンに戻すイメージなんだよな
単に書きかけのものをやっぱりなしにするだけ
2021/04/16(金) 19:19:06.30ID:8JlkmWn5
svn revertってそういうコマンドだろ
git revertはまた違うけど
何をどこからどこに戻すかの決まりが違うだけで
revertという英単語のニュアンスに反してない
2021/04/16(金) 21:30:26.96ID:tzgTaw2u
リベートリベートうっさいわ
2021/04/16(金) 22:27:19.51ID:auYEG8kr
誰もリベートなんて言ってないんだが
釣りか?
2021/04/17(土) 12:46:25.27ID:3fA8iAMy
何が問題だったか簡潔に述べよ。
@ 日本のプログラマーの低レベルさ 
A 出来もしない仕事を持ってきた営業のミス
B @Aを雇っている社長

【COCOA受託業者 1200万円返納】
ttps://yahoo.jp/yIs0wa
新型コロナ対策の接触確認アプリ「COCOA」の不具合に関し、厚生労働省から保守運用を受託していた業者のパーソルプロセス&テクノロジー社。
同社は16日、業務対価1200万円を自主返納すると発表した。
2021/04/17(土) 12:54:29.79ID:HcGBP4JZ
テスト環境ないからテストせずにリリースしよう
ということを決めた奴がいて、そいつが犯人
2021/04/17(土) 14:19:15.99ID:U6hwmM2O
1200って何%だ?
459デフォルトの名無しさん
垢版 |
2021/04/17(土) 15:53:40.45ID:9UAdok9q
プログラミングの技術力とはなんですか?

一通りWEBアプリなどを作れるようになりました。
わからないことがあれば、調べて実装すればいいこともわかってきました。
多分、大抵のことは調査すればできるようになるのではないかと思ってきました。

そこで技術力を上げろと言ってる人たちが、よくネットにいますが
なんの事を言ってるのでしょうか?

一度作って理解してしまえば、次に作るとき早く作れるようになります。
技術力とは作成するスピードの事を言っているのですか?
それなら理解できますが
実際、技術力とはなんのことを言ってるのでしょうか?
2021/04/17(土) 15:56:47.44ID:kk9IIxNl
>>459
お前天才だからもうやることないよ
コンプリートしたってこと
別の業界行け
2021/04/17(土) 16:08:42.20ID:HcGBP4JZ
日本最強プログラマー学生選手権やるから参加してみたら
2021/04/17(土) 16:10:19.70ID:U6hwmM2O
>>459
営利目的としてシステムを動かしてみればわかるよ
2021/04/17(土) 16:47:03.87ID:6GAIvEwc
>>459
>多分、大抵のことは調査すればできるようになるのではないかと思ってきました。

技術力とはなんのことを言ってるのか調査してもわからなかったの?
2021/04/17(土) 17:15:06.39ID:5r9RCF4j
プログラム作れるはスタートライン
そこからが大変
2021/04/17(土) 18:27:41.48ID:WIbW6nPA
実際のサービスをやることを考えたら負荷やら色々問題が出るのに動けばokは素人しか許されないよね
インフラどうするかとかはプログラマーは管轄外だとしてもソフトウェアのパフォーマンスチューニングとかはどこに負荷がかかってるのか調べたり色々やることはあるからね
>>459レベルだとSQLもよく分かってないでしょw
2021/04/17(土) 18:53:05.70ID:RcoXWRlB
>>459
そういう業界談義はマ板でやれよ
板の主旨すら読み取れないのに技術がどうとかバカじゃないの
467デフォルトの名無しさん
垢版 |
2021/04/17(土) 21:01:10.12ID:9UAdok9q
>>462
こういう答えなんだよな
まったく具体的じゃないから、なんのことかわからないんだよ


>>465
つまり、効率よく動かす事を技術力というのか
2021/04/17(土) 21:29:41.83ID:+bbd78zs
>>467
技術力を上げろを実力を上げろに変換すれば
ネットで調べたらだいたいできるよねとか
慢心することもない
2021/04/17(土) 23:13:46.68ID:kk9IIxNl
完全に理解した奴が現れたわけだ
2021/04/17(土) 23:38:47.85ID:U6hwmM2O
>>467
具体的にしたら本何冊にもなる
だから自分で何が必要か考えて文献を紐解くしかねえんだ
思考停止した時点でおわり
頑張ってな
2021/04/18(日) 00:39:34.65ID:+5Vr0CNc
一人でWebアプリを作れて問題が出ても自己解決できるメンバーはかなり頼りになる
もう少し上のレベルになると困ってから調べるんじゃなくて、事前に一通り知ってたり勘所を押さえてるから無駄なく効率的で、想定漏れのバグもほとんど作り込まない
高スキルの人になるとネットの質問に回答が付いていないような情報の少ないミドルウェアやライブラリのバグやその迂回方法なんかもすぐに答えにたどり着く
2021/04/18(日) 00:50:40.72ID:+5Vr0CNc
セキュリティや性能なんかは技術力の低いチームだと知らない間に下手こいていて、問題に気付いてないことも多々ある
要件が緩いなら別にいいけど、本来1秒で済む処理を毎回1分掛けてたら作業効率は下がる
保守性が高くメンテしやすい設計やソース、開発環境が整備されていると生産性も品質も底上げされる
2021/04/18(日) 05:57:52.63ID:8BgTcnje
医学でもそうだけど、技術なんて無限にある。
何万冊もの本・論文が出てる

個人じゃ太刀打ちできないから、
大事なのは、歴史・先人の成果を流用すること

Ruby on Rails から、Elixir のIoT・Nerves へ進んでいるのは、その証拠。
サーバー側も、RubyからGo へ

つまり技術力とは、無限の範囲があるから無意味。
自分ができる、限られた範囲で答えるしかない
2021/04/18(日) 11:23:18.59ID:CxPtqAGS
おいおい、お前がRuby見捨ててどうする
2021/04/18(日) 15:13:24.79ID:8qgOOFVo
イメージボタンの表示についてだけど、例えばスピーカーに斜線の図柄とかみたいな奴なんかがすんごく困る
現在がミュートという状態を示しているのか?
それとも、ボタンを押すとミュートするという機能を示しているのか?
UXの取り決めとしてコイツはこう、と決めてる規約はあっても、それはその団体が強権的に決めつけてる話
そんな規約なんて知らんという、団体ごとに変わってくる

状態と機能、どちらを示している方が多いと思う?
2021/04/18(日) 15:31:36.04ID:+5Vr0CNc
状態を表すほうが多いと思う
でもアイコンの変化だけで状態を表すのはオシャレ感重視の悪いUIが多いんじゃないか
デフォルトでまず斜線のないスピーカーが表示されている場合、そのボタンがミュート機能を表すということが伝わりにくい
(ただ、ミュートの例に限ってはこのスタイルが一般的に認知されてるので例外ではある)
トグルスイッチであればトグルスイッチのUI部品を使うべきとするデザインガイドラインが優れていると思う
2021/04/18(日) 15:57:13.64ID:ZsDsAuud
電灯のスイッチがonとoffで赤と緑が切り替わるんだけど、
どっちの色がどっちを示しているか毎回判らなくなる
2021/04/18(日) 21:50:22.92ID:H2FK2rvZ
javascriptで簡単なパズルゲームを作りたいと思っています
ゲーム内容の描画にはcanvasを使うつもりです

ここまでは決まっているのですが、最近Reactを公式のチュートリアルで少し勉強したのでせっかくなのでそれも取り入れたいと思いました

そこで気になったのですが状態の変更によって色々なコンポーネントを再描画するReactで単一のコンポーネントであるcanvasを管理するのって相性としてどうなのでしょうか

調べてみてもReactとcanvasを使ってゲームを作ってる人がいなかったのであまりいいやり方ではないのでしょうか
2021/04/18(日) 22:20:29.05ID:8qgOOFVo
どうなんだろ?
Reactは投げたクチなんで深いところは理解してないけど、仮想DOMでのコンポーネントの一般化が肝じゃないのか?
それに対してゲームで使うCanvasAPIはグラフィックコンテキストで描くAPIだからDOMとはレイヤーからして違うんじゃない?
2021/04/18(日) 22:56:07.88ID:88/rPoS4
ReactでCanvas扱うライブラリあるよ
Konva.jsのReact版はHooks対応
2021/04/18(日) 23:18:37.50ID:8qgOOFVo
うーん、これ使うならSVG書くかなー
482デフォルトの名無しさん
垢版 |
2021/04/19(月) 23:05:22.70ID:XxiWqLWU
PHPやってて、Laravelというフレームワークを使ってみたら
bladeとかあって便利だと思ったんですが
フロントエンドにVueとか、Reactとか使うメリットって何があるんですか?
表示するだけなら使わなくてもいい?
それとも使ったほうが便利になったりする?
2021/04/19(月) 23:08:25.20ID:UiFLtBUU
なんでこんなに言語増えるの
2021/04/19(月) 23:14:55.31ID:PUY12mOS
メリットはコンポーネントを作りやすいこと
あとはフロントエンドとバックエンドが綺麗に別れてるので理解しやすいこと
2021/04/19(月) 23:18:22.21ID:7YJjHWKI
>>482
bladeである程度開発して経験してから再度質問してみてね
何も知らないのにVueの方が優れてるので今すぐ採用しましょうとか言っても
分からないかと思うので
486デフォルトの名無しさん
垢版 |
2021/04/19(月) 23:57:03.64ID:XxiWqLWU
>>485
もうLaravelでアプリ完成させたから
次の技術使ってみたいんだよね
bootstrapも使ってみて便利だった

だから、次はVueとか使ってみたいんだけど
何が便利なのか知りたいです

ちなみにJavaScriptとか、ほとんど使ったことないです
フロントエンドにあまり労力を使いたくない
ただ、bladeやbootstrapみたいに楽できるなら使いたいです
2021/04/20(火) 00:01:53.79ID:rfXnx8JL
めんどくせぇ奴だな
イライラする
2021/04/20(火) 04:38:17.14ID:7xfghfsY
Ruby on Rails では、Bootstrap, jQuery, React、
規約だけのフレームワーク・Stimulus

Vue.js はほぼいないので、やらなくてよい
2021/04/20(火) 16:10:44.80ID:ysyB9KS4
MySQLやJavaには有料版が有りますが、企業は、もし無料版で機能的に
足りる場合で、ライセンス的にも一見問題ないような場合でも
安心感やライセンス的なトラブルを避けるためなどのため
有料版を買いたがるものでしょうか?
2021/04/20(火) 16:19:42.69ID:uATsLQNo
>>489
大きく「うん」
主には延長サポート目当て
問題発生時にお金で解決出来る可能性が高いのは大きい
2021/04/20(火) 16:24:13.28ID:ysyB9KS4
>>490
「サポート」とは、電話やメールでの技術的な問い合わせのことでしょうか。
それとも、不具合があった時に「報告できる明確な窓口がある」程度でも
安心材料になるものでしょうか。
492デフォルトの名無しさん
垢版 |
2021/04/20(火) 16:29:55.07ID:Q3U1x8DZ
>>491
お前が担当者として全責任を取りますって宣言するか?
してもお前の価値次第だがな
2021/04/20(火) 16:52:52.60ID:uATsLQNo
でも大昔は酷い所もあった
明らかなバグでOSが例外吐いて落ちるんだが、そのサポート回答(有料)が、「次のメジャーバージョンでは直っていますので購入してください」
潰れたんだがDEC
2021/04/20(火) 16:54:06.25ID:ftz4Kapn
24時間無停止サーバーなんかだと「〇〇のケースは再起動は必要ですか?」
みたいな質問をサポートに投げなきゃいけない場合もある
再起動するだけの根拠をかき集めないといけない
それなりの規模でやってたらOracleでも不具合に当たってパッチ作ってもらうなんて年に1回ぐらいは当たる

社内でサポートセンター作って、そこから一本化してベンダーサポート結んでたりもあるよ
2021/04/20(火) 17:04:46.35ID:ysyB9KS4
無料版Javaは、GPLで、ソースさえ開示すれば何をやってもいいというライセンス
だったはずですが、「AndroidのJavaはこれまでの互換性のエコシステムを破壊した」
とされて、Googleは裁判に負けて一兆円を払うことになるかどうかの瀬戸際(?)
なようですが、無料版だとそのようなリスクが有ることも企業は直感的に警戒
しているのかも知れないと思うのですが、いかがでしょうか。
2021/04/20(火) 17:13:47.59ID:V6GKEm6n
気にせんなぁ
問題あったら乗り換えるだけだし
2021/04/20(火) 17:14:50.23ID:YwVDfnEJ
OSについて質問です

Windowsが入っている市販のPCに、Linuxをリブートするのは
リスキーでしょうか?
止めた方がいいでしょうか?
2021/04/20(火) 17:18:28.04ID:uATsLQNo
今時はマルチブートするより仮想マシンにインストールするよなぁ
2021/04/20(火) 17:19:49.51ID:uATsLQNo
更にはDockerコンテナでいいんじゃね?まである
500497
垢版 |
2021/04/20(火) 17:39:33.12ID:YwVDfnEJ
すいません、リブートでなくマルチブートでした…
リブートだと再起動になっちゃいますね
2021/04/20(火) 17:43:07.53ID:xQRY3YOZ
リブートをマルチブートに置き換えても間違った文章だけどな
502497
垢版 |
2021/04/20(火) 17:53:42.57ID:YwVDfnEJ
>>501
えっ?
2021/04/20(火) 18:12:55.11ID:7xfghfsY
Windows 10 Home 版でも、WSL2, Linux, Docker を使えるようになった

CPU-i7、メモリ16〜64GB ぐらいあれば
2021/04/20(火) 18:23:55.26ID:ysyB9KS4
>>498
仮想マシンって、何割程度の速度低下で動くの?
2021/04/20(火) 18:51:57.74ID:uATsLQNo
>>504
チューンとか色々と要因があるね
https://docs.vmware.com/jp/VMware-vSphere/6.5/com.vmware.vsphere.resmgmt.doc/GUID-FD71CBCA-E97C-4EFA-8A1B-32C09D5DF2A1.html
あたりから見てみたら?
2021/04/20(火) 19:12:37.24ID:ysyB9KS4
>>505
実際に使ってみてる人の声を聞きたい。
大体どれくらい遅いのか。
2021/04/20(火) 19:41:40.01ID:xQRY3YOZ
Javaとか使ったらそれはもう仮想マシンだしな
2021/04/20(火) 20:21:04.77ID:kRKfc0q4
>>506
https://camo.qiitausercontent.com/357185db12afa27cf60971c8148409561e44fa59/68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f3434383137322f62363038376661302d636137312d636434662d626363342d6265666564633334386562322e706e67
509コルム
垢版 |
2021/04/20(火) 20:36:25.57ID:rvQsrFur
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q10241982575についてご教授いただけないでしょうか?すみません。以下は、質問です。
「import32.lib」から呼び出すのは「MessageBox()」という機能の実体ではなく「利用する為」の呼び出しです。 「MessageBox()」という機能を利用する際「MessageBox()」というプログラムから「import32.lib」内にある情報を参照する必要があります。 つまり参照先のプログラムからさらに別のファイルの情報を参照しているだけです。画像の写真です。どういう意味でしょうか?ご教授いただけないでしょうか?すみません。
510コルム
垢版 |
2021/04/20(火) 20:38:30.03ID:rvQsrFur
すみません。
以下のURLです。余計な部分があったので、訂正させて頂きます。
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q10241982575
ご教授いただけないでしょうか?
2021/04/20(火) 20:48:48.01ID:kRKfc0q4
messageboxはwindowsのuser32.dllにあるから
ダイナミックリンクになるしかない
としかわからない
2021/04/20(火) 21:03:28.41ID:KMnW7zDR
import libraryとは何かを調べればいい
https://docs.microsoft.com/ja-jp/windows/win32/dlls/dynamic-link-library-creation
2021/04/20(火) 21:24:50.48ID:ysyB9KS4
>>508
ありがとう。
514497
垢版 |
2021/04/20(火) 23:13:02.84ID:YwVDfnEJ
お礼が遅くなってすいません
答えてくれた方ありがとうございました
ラズパイ検討しようと思います
2021/04/21(水) 01:03:58.47ID:SVTBKWZf
質問させて下さい

Linuxの仮想環境を作成したいと思い、調べながらやっていたのですが、
途中で詰まってしまいました…
具体的には、光学ディスク選択の箇所で、
ubuntu-ja-20.04.1-desktop-amd64.isoというisoファイルが表示されなければ
いけないみたいですが、表示されません

どうしたらよいでしょうか?
2021/04/21(水) 01:17:32.09ID:NCTKtzNH
>>515
ubuntu の公式サイトにそのisoファイルがあるから、ダウンロードしてくる(来てる?
国内のミラーから落とした方が断然速い
https://www.ubuntulinux.jp/products/JapaneseMirrors
んで、そのファイルを指定する
2021/04/21(水) 01:23:42.37ID:NCTKtzNH
>>515
富山大学あたりがどうだろう?
http://ubuntutym2.u-toyama.ac.jp/ubuntu/groovy/
バージョンは最新なので、ちょっと上がってる
518515
垢版 |
2021/04/21(水) 02:24:52.47ID:SVTBKWZf
返信ありがとうございます

はい、ubuntuのisoファイルは既にダウンロードしてあります
してあるのですが、候補に表示されないんです…

以下参考画像です
https://i.imgur.com/XTBl6LN.png
2021/04/21(水) 06:23:18.01ID:NCTKtzNH
>>518
左上の追加ボタンを押すとファイルダイアログが出ると思うので、それでisoファイルを置いたフォルダまで辿って選択してみて
2021/04/21(水) 08:46:53.04ID:MYDHtM6Q
素直にvagrant使えばいいのでは?
2021/04/21(水) 09:18:40.91ID:NCTKtzNH
大規模な組織で水平展開するなら意味はあっても、個人での試用で使うにはちょっと……
導入自体にハードルあるよね?
2021/04/21(水) 10:50:11.03ID:a9YIoDQQ
母艦がLinuxとMacならハードルは全く無いよ
WindowsだとDockerと競合して動かない場合がけっこうあるからハードル高いね
2021/04/21(水) 13:16:09.98ID:P7LSpcTG
Linux の質問は、Linux板へ書き込んでください!

Vagrant を使うこともできる。
メモリ16〜64GB なら、Windows 10 Home 版, WSL2, Docker もある。
Mac なら、メモリ32〜64GB

山浦清透、1/15

Docker超入門講座 合併版 | ゼロから実践する4時間のフルコース
www.youtube.com/watch?v=lZD1MIHwMBY

Windows 10 Home 版, WSL2, Ubuntu 20.04 LTS,

Docker Compose, VSCode, Heroku, Ruby on Rails, Git, CI/CD, CircleCI
2021/04/21(水) 18:05:15.35ID:n35Ewbnt
AJAXリクエスト発行するときひょっとして勝手にOPTIONSメソッドも実行される?
普通にGETメソッドを実行したつもりなんだけどエラーになってログみたらOPTIONSメソッドはサポートしてないって書いてある
2021/04/21(水) 18:13:37.70ID:NCTKtzNH
>>524
CORSではないか?
2021/04/21(水) 18:15:45.93ID:n35Ewbnt
>>525
確かにクロスオリジンだけどクロスオリジンだと勝手にOPTIONS送ってしまうん?
2021/04/21(水) 18:21:52.08ID:n35Ewbnt
ググったら解決した
プリフライトリクエストとかいうのをやってんのね
2021/04/21(水) 18:22:47.69ID:NCTKtzNH
>>526
GETアクセスでもCORSの設定が必要
S3とかストレージサービスでも設定がある
2021/04/21(水) 18:23:52.40ID:n35Ewbnt
>>528
助かったわ
d
2021/04/21(水) 19:42:11.53ID:YA3PmkpH
Docker使って仮想環境で色々勉強したいんだけどマシン自体のメモリって16GBじゃ不安?
仮想環境使ったことないからよく分からん
2021/04/21(水) 20:13:51.51ID:U7I+mJcY
普通にDocker Desktop for Windowsを使ってるなら問題ない
自分でVirtualBoxとかHyperVに仮想マシンを立てるなら苦しい
2021/04/21(水) 20:23:04.53ID:NCTKtzNH
16GBあるなら充分すぎる
でもDockerはコンテナだから仮想環境入門としてはどうなんだろ?
デスクトップ使うには X サーバ立ち上げて、X でログインしないとならないんじゃなかったか?
意味がわからないなら、VertualBox とかで仮想マシン立ち上げてそこにインストールして Linux を勉強すべき
2021/04/21(水) 20:28:38.12ID:NCTKtzNH
GUIじゃなくCUIならDockerでいいのか…?
でもコマンドしか使えないのは初心者的にどうなん?
それとも今時のDockerはGUIサポートしてるん?
2021/04/21(水) 21:43:59.16ID:U7I+mJcY
>>532-533
誰もそんな話はしてない
的外れだから話に参加してくるな
2021/04/21(水) 22:15:34.01ID:hZhPN+RC
最近SEからPLっぽい事やり始めたんですが、ステップ数の考え方で迷ってます。

例えば
コミット1、ファイルA:ソース1ステップ
コミット2、ファイルA:+50ステップ
コミット3、ファイルA:-49ステップ

のような場合、コミット毎に前回バージョンと比較してステップ数を累積するのと、
コミット1と3で比較するのとではステップ数が異なりますよね?
どちらで比較するのがスタンダードなのでしょうか?
2021/04/21(水) 22:29:22.41ID:U7I+mJcY
>>535
論理ステップ数で比較するのが一般的です。

https://e-words.jp/w/%E3%82%B9%E3%83%86%E3%83%83%E3%83%97%E6%95%B0.html

ソースコード中の改行文字を単純に数え上げたものを物理LOC(Lines Of Code:コード行数)というが、
多くの言語ではコード中にコメントや空行など何も行わない行や、
コードブロックの開始や終了(中括弧{}やbegin/endなど)など実質的な処理を行わない行を記述できるため、
一定の基準を定めてこうした行を数え上げから除外する。こうして数えた行数がステップ数で、論理LOCとも呼ばれる。
2021/04/21(水) 22:34:08.39ID:hZhPN+RC
>>536
すみません、論理ステップ前提です。
上の+50、-49は全て論理ステップと思って下さい。ちなみにcloc使ってます

前バージョン比較で累積すると新規50ステップ
1-3間で比較すると新規1ステップ

どちらでカウントするのが一般的かというのが知りたいのです
2021/04/21(水) 22:36:02.33ID:NCTKtzNH
>>534
仮想環境の勉強とか言ってるレベルの人に、CUIしかない(と思う)環境を勧めていいのか?と言ってる
コマンド叩いてサクサク操作ができる人なら、そんなこと聞かないだろと思うから

いや、俺の認識が古くて今では GUI が使えるようになったのなら問題はないんだが
2021/04/21(水) 22:37:54.75ID:U7I+mJcY
>>537
目的によります。

同じことを実現するのに
・ステップ数が多い(無駄が多い)方を評価したいなら、ステップ数が多い方を選びます。
・ステップ数が少ない(無駄が少ない)方を評価したいなら、ステップ数が少ない方を選びます。

ただし相手が評価されるのが嫌な場合は逆を選びます。
2021/04/21(水) 22:41:26.40ID:U7I+mJcY
ちなみに、クソコードを50行消して
改善したコードを50行追加した場合、
その人は100行の素晴らしいコードを書いたことになります
クソコードを消すのはプラス評価です。
2021/04/21(水) 22:42:31.42ID:hZhPN+RC
>>539
なるほど。
因みに目的はバグ密度やテスト密度、生産性などのメトリクス分析なんですが、
この場合あなたはどちらの比較が適してると思われますか?
2021/04/21(水) 22:45:13.36ID:U7I+mJcY
>>541
ステップ数は全く意味がない値なので何にも適しません。
2021/04/21(水) 22:46:40.01ID:hZhPN+RC
>>542
それは流石に嘘・・・
2021/04/21(水) 22:47:20.46ID:U7I+mJcY
クソコードを削除すると生産性は上がります。
この事実に結びつかないメトリクスは
意味がありません。
2021/04/21(水) 22:49:51.23ID:hZhPN+RC
>>544
普通に組んでたから気持ちはわかるが暴論よ・・・
レビューの結果糞コードに変身する場合もあるんですよ><
2021/04/21(水) 22:53:43.72ID:NCTKtzNH
近頃は面倒なんでカバレッジ率ぐらいしか見てないな
ステップ数は顧客に報告する時だけ…
2021/04/21(水) 22:55:34.22ID:U7I+mJcY
ステップ数はただの「量」です。
家の中にモノがたくさんある。これはいいことでしょうか悪いことでしょうか?
モノはゴミかもしれません。多いことが良いことかどうかなんてわかりません。

メトリクスは量を除いて計測します。
そして良いものがこれくらいある。
ゴミがこれくらいある。という言い方しかできません

メトリクス分析するなら、量の概念は除いて計測します。
2021/04/21(水) 22:58:53.03ID:wGFkmeDC
量じゃないメトリクスってなんだ?
2021/04/21(水) 22:59:45.21ID:YcNEV+yo
>>535
もちろんコミット1と3の差分でカウントするよ
一度書いたけど採用しなかったコードなんて計測する意味はない
最終的に採用したコードのステップ数に応じてテストの件数を計画・評価するんだから当然じゃん?
遠回りしようが近道しようが、同じだけの改変には同じだけのテストが要る
2021/04/21(水) 23:07:36.61ID:hZhPN+RC
>>549
ありがとう。
確かに無駄コード分、必要テスト数が増えてしまうもんね。
その方向でまとめてみる。thx!
2021/04/21(水) 23:53:32.96ID:n9Psf8QY
フローで評価したいならコミット1から現在のコミット3の間に発生した+50と-49の変化を分母にする
ストックで評価したいなら評価時に残ってる2ステップを分母にする

新規50ステップや新規1ステップはどっちつかずで微妙だし
必要テスト数を出すためにステップ数やテスト密度使うのも微妙だなぁって感じる
552518
垢版 |
2021/04/21(水) 23:54:32.93ID:SVTBKWZf
>>519
出来ました!
ありがとうございました
2021/04/22(木) 04:38:17.22ID:gbeL+P6Z
ステップ数とテストの数に相関関係はないぞ
リファクタリングしてコードを減らしても
動作は変わらないんだからテストの数は変わらない
2021/04/22(木) 04:40:05.35ID:gbeL+P6Z
長いコードを関数に分けると関数呼び出しのためにステップ数は増えるが
長いコードに含まれるフローパターンの組み合わせが
関数にすることで減らすことが出来るのでテスト数は減る
2021/04/22(木) 07:53:53.72ID:7fx4Mbba
PLがステップ数とかメトリクスとかバク密度とか言い出したらもうダメだな
2021/04/22(木) 09:30:25.81ID:pnqsiiWe
ifとかforの数を数えてプログラムの複雑さを表現する方法を
なんて言ったっけ?
2021/04/22(木) 09:32:28.26ID:m2zuaeSV
循環的複雑度とか?
2021/04/22(木) 09:49:05.95ID:weUUVdM3
C0, C1 として使ってる奴だね
2021/04/22(木) 10:13:50.59ID:WMdOWH0O
メトリクスは以前と比べてどう変化したかを見るのに使う分にはいい
数字を単独で見てそれが良いだの悪いだの言い出したらもうダメだな
2021/04/22(木) 10:38:59.64ID:Usd5IZeQ
まあステップ数が尺度として非常に劣った存在であることは確かなんだけどさ、それでしか評価・理解できない組織もあるし、伝わらない相手もいる
ステップ数とFPの両面からバグ密度やテスト密度を出して、説得力を増強できる場合もある
同じような人海戦組織が作れば同じようなステップ数が出る傾向はあるし、乖離があっても個別に説明がつけばいい

いずれにしてもステップ数の功罪なんて今回は聞かれてなくて、ステップ数を図って評価に使うなら最初と最後の差分で取りますよって話だ
2021/04/22(木) 10:40:44.97ID:Usd5IZeQ
最初の質問に対してこうも脱線話ばかり盛り上がるところを見ると、あのブランコ開発の風刺イラストを思い出すわ
2021/04/22(木) 11:05:13.74ID:fYKo/KH7
>>560
>ステップ数を図って評価に使うなら最初と最後の差分で取りますよって話だ

1000ステップ追加して1000ステップ削除したら差分はゼロってことなの?
2021/04/22(木) 11:35:08.43ID:WMdOWH0O
それでいいんじゃね
実質的に大して意味のない尺度なんだから、どうしても必要なんだったら手間が少ない方がいい
2021/04/22(木) 12:47:09.81ID:Usd5IZeQ
>>562
いやいや、削除分をどう算入するかという話と、差分の道のりを測定すべきか距離を測定すべきかというのは別の話だよ

たとえば機能Aを追加して、それとは別に同じ規模の機能Bを削除したとしたら、プログラム全体の規模を表すステップ数はプラマイゼロ
だけどその開発の品質評価に使うときは削除量は無視する
だってまるごと削除した機能のテストなんてほとんど要らないから、必要なテストはAの追加分に近似される

差分の取り方の話は、最初のコミットで100ステップ書いたあと、次のコミットでまさにその100ステップを消すことがある
この瞬間的な変動はカウント不要

ステップ数は糞ってことで思考停止してる人がいるけど、今書いた話はFPやほかのメトリクスでも換言できる
2021/04/22(木) 14:22:01.59ID:fYKo/KH7
>>564
それだと変更の意味解釈が必要になるから機械的には計算できないよね

意味解釈をやるのに一番簡単な方法は各コミットを変更内容で分類しておくことなので
結局差分の道のりを含めて集計することになる
2021/04/22(木) 15:01:23.09ID:FJ25hTkO
foo(); bar();
baz();

この2行のステップ数は3なんだが
gitの差分でそれがわかるわけがない
2021/04/22(木) 15:02:40.77ID:FJ25hTkO
>>564
ステップ数に意味がないのだから
適当な数でもいいではないかって話だろ?
2021/04/22(木) 15:03:27.79ID:FJ25hTkO
つまり>>566のステップ数は本当は3だが
2でもいいって話ね。ぶっちゃけ1でもいいw
2021/04/22(木) 17:56:41.20ID:JAiqm9b4
>>560
だから日本はIT後進国なんですね
2021/04/22(木) 19:23:41.51ID:lA0hV636
まあ見積もりは相手を見てどれぐらい出せそうか判断してから決めるんだけどな
赤字が見込まれるのなら受けないだけ
571コルム
垢版 |
2021/04/22(木) 19:47:43.53ID:JzuxwhsV
「import32.lib」から呼び出すのは「MessageBox()」という機能の実体ではなく「利用する為」の呼び出しです。 「MessageBox()」という機能を利用する際「MessageBox()」というプログラムから「import32.lib」内にある情報を参照する必要があります。 つまり参照先のプログラムからさらに別のファイルの情報を参照しているだけです。とはどういう事でしょうか?ご教授いただけないでしょうか?すみません。
以下のURLです。解説願います。ご教授いただけないでしょうか?
https://oshiete.goo.ne.jp/qa/12319888.html
2021/04/22(木) 20:28:48.34ID:weUUVdM3
>>571
実際に処理する実体はDLLというファイルに入っています
それを呼び出すためのサブルーチンがlibに入ってます
(DLLを呼び出さないサブルーチンもあります)

libはおおむね関数ごとのobjファイルを纏めたもので、ビルドの段階で自分のソースをコンパイルしたobjと、必要なobjをlibから取り出してリンクすることで実行ファイルを作ります

処理する実体をアプリに入れてしまうと実行ファイルは数MBに肥大したり、脆弱性が見つかる度にアプリをバージョンアップする必要があります
しかしDLLはWindowsUpdateでアップデートされるので、アプリ側では気にする必要がありません
同様の仕掛けはLinuxでも存在し、そちらはsoファイルと呼ばれます
2021/04/22(木) 20:45:39.32ID:114k4RtJ
ダイナミックリンクとスタティックリンクの話を
スタティックリンクの関数からダイナミックリンクの関数を呼び出す話で
説明してるからわかりにくい
2021/04/22(木) 23:41:16.34ID:j6FG0GAM
WindowsAPIを使う為の設定やらダイナミックリンクやら調べたら直ぐ分かりそうなのに
今時のプログラマはその辺理解出来ないのかw
VisualStudioで該当ヘッダ書いているのに未解決になるのは何故ですか?よりは
マシな質問なのかなw
2021/04/22(木) 23:55:19.52ID:vpBTX9F/
静的リンク←オンボのグラボ
動的リンク←ビデオカード
2021/04/24(土) 00:45:39.02ID:3AAdU7vF
マルチポストイクナイ・・・はともかくとして
プログラマを名乗っている人でもリンカやローダーに理解がある人ってほとんどいなくね?
DLLの使い方は判っていても動作を説明せよと言われたらギブアップしてしまう人が大半に見える
その辺に限らず低レイヤーの解説記事はググってもほとんど出てこないし
2021/04/24(土) 19:39:30.97ID:7lpOLCJL
フォルダを参照して
処理用の関数に渡すための色々なデータを取得してひとつの変数に配列として格納した
この変数の名前はなんてつけるのが普通?
temp? database? container?
2021/04/24(土) 20:09:22.96ID:AS27cm7/
一つならdataだろ
2021/04/24(土) 20:36:07.88ID:RPGHdVOi
>>577
クラス名・変数名に迷ったら書き込むスレ
https://mevius.5ch.net/test/read.cgi/tech/1494147712/
2021/04/24(土) 20:59:32.26ID:7lpOLCJL
>>579
おーセンキュー移動します
581デフォルトの名無しさん
垢版 |
2021/04/25(日) 20:39:42.54ID:VnIulT8w
100秒かかる処理を90秒減らして10秒で終わるようにしたら、10倍に高速化されたことになるわけだけど
その10秒かかる処理をあとたった9秒減らすだけで、100倍に高速化されたことになるのが納得できない

100秒の処理が
100倍高速化したら、うわっ!速ぇ!!!ってなるけど
1000倍高速化しても、お、さっきより速いね。ぐらいにしかならないだろ?
10000倍高速化しても、速いかなー?ってなって
100000倍高速化しても、さっきと違いがわからんってなると思う

10倍ずつ高速化してるのに、どんどん価値が下がっていくwww
582デフォルトの名無しさん
垢版 |
2021/04/25(日) 20:57:31.21ID:tX5v4AJc
>>581
対数定規。
ハイ論破。
583デフォルトの名無しさん
垢版 |
2021/04/25(日) 23:07:05.65ID:VnIulT8w
>>582
対数定規はいいけどさ
みんな○倍高速化!っていうやろ?
あれ実質詐欺やろ?たいして速くなってないやん
584デフォルトの名無しさん
垢版 |
2021/04/25(日) 23:11:13.74ID:VnIulT8w
思うにバージョンアップ毎に、前バージョンより10倍高速化!っていうより
初期バージョンを遅くして、初期バージョンより○倍高速化!って言ったほうが宣伝になるよね

v1より10倍高速化!、v2より10倍高速化!、v3より10倍高速化!、v4より10倍高速化!

v5はv1より10000倍高速化!1万倍高速化!
2021/04/26(月) 01:50:44.97ID:3hvqDDCn
そんな興奮するような話?
10000倍高速化すれば10000万倍のデータでも適度な処理時間で捌けるようになって価値がある
性能向上する必要のないところで頑張ってもメリットはない
それだけのことだよ
2021/04/26(月) 02:16:33.75ID:F4ZyRyR2
>>585
現実には1万倍高速化と100倍高速化が大差ないことが多いという話

嘘だと思うなら10秒かかる処理を1万倍と100倍高速化し比較してみよう
2021/04/26(月) 02:25:55.19ID:wMKnR+sa
嘘も何も当たり前の話だろ
100倍で十分に目標を達成できてるならそれ以上の性能向上は効用が一気に逓減するというだけの話
588デフォルトの名無しさん
垢版 |
2021/04/26(月) 06:11:07.39ID:F4ZyRyR2
効用が逓減してるのに同じ100倍なんだよなw
2021/04/26(月) 15:31:34.10ID:ofH/VCky
1000日かかる計算が100日で済む
10日で済む、1日で済む
2時間で済む、20分で済む
2分で済む、2秒で済む

書いてみればいかに高速化できたか
実感できると思うんだが
2021/04/26(月) 16:39:06.17ID:wMKnR+sa
倍率と絶対数の関係はリニアじゃないから面白いよねっていうのはドラえもんの「バイバイン」で学んだよ
小学校低学年には割とトラウマ物なSFショートショートだった
製品の不良率や純度を90%から99%に改善することはできても、さらに99.9%まで改善するには別次元のコストが掛かるっていう話にも通じるかもね
2021/04/26(月) 18:52:03.72ID:ukdj+zo5
>製品の不良率や純度を90%から99%に改善することはできても、さらに99.9%まで改善するには別次元のコストが掛かるっていう話にも通じるかもね
不良ゼロなどと吠えて利益を減らす情弱経営者が日本にはいっぱいいるように見えるが
2021/04/26(月) 20:47:59.12ID:lWm2yHzp
そこは日本の消費者が完璧なサービスと安心安全が当たり前だと信じて疑わないから仕方ないかもね
2021/04/26(月) 23:07:40.63ID:34+rcCw8
入力、前処理系をまとめたInputクラス
それを受けてGUIを生成するAppクラス
GUIの操作を出力する系のOutputクラス

これってどう繋いだらいいのでしょうか?
dat = Input()
app = App(dat)
app(GUI)上でOutput呼びだし?

??
2021/04/26(月) 23:17:26.84ID:zGgkgXPQ
フロントエンドとバックエンドのことなら
3つのクラスは違う
自分で作るアプリなら好きにつないだらいいんじゃ
>GUIの操作を出力する系のOutputクラス
難解すぎてわからない
2021/04/27(火) 06:12:06.33ID:dGvAJVA2
>>593
MVCとかMVPとかMVVMとか調べて自分が使う実行環境に合わせて使えばよろし。
2021/04/27(火) 08:48:39.36ID:QlcIXrvM
>>594
出力に関係する関数グループはGUI上で呼ぶってことだろう
2021/04/28(水) 18:20:00.95ID:c0w2coaF
2021/04/28(水) 18:37:00.49ID:a9uMhLuq
このスレにいる人なら5chのスレを荒らすスクリプトって何分ぐらいで書ける?
599デフォルトの名無しさん
垢版 |
2021/04/28(水) 20:22:08.25ID:l1/D6DLv
どなたかドットインストールをバレずにダウンロードできるスクリプトを作ってくれませんか?
個人使用のみの目的です。
2021/04/28(水) 21:03:24.55ID:KzNJGFbu
>>598
Selenium使って良けりゃ30分もあればできるんじゃね?やらんけど。
2021/04/29(木) 18:36:59.42ID:/fNSw2zM
SPAの反対というか昔ながらのMVCとかJSFとかASP.NETとかRailsみたいなレガシーなウェブアプリって何て呼べばいいんだ?
602デフォルトの名無しさん
垢版 |
2021/04/29(木) 18:47:35.78ID:aTZmoNVK
MPA
2021/04/29(木) 20:51:22.09ID:2aNgQ2En
なぜシングルページにこだわらないといけないんです?
2021/04/30(金) 00:53:51.71ID:NBApg7VD
二十年ほどの経験から、ページ遷移ってバッドノウハウじゃね?と、かなりの技術者が思うようになったから

三行じゃ説明できない
2021/04/30(金) 04:54:18.26ID:OOQWIiqB
ぶっちゃけ始めるのにいい言語て何 part4
https://mevius.5ch.net/test/read.cgi/tech/1615612545/557-558

今までは、Ruby on Rails, Bootstrap, Docker Compose, Heroku あたりのポートフォリオで良かったのが、
未経験者の実力が上がりすぎて、AWS, Docker, Capistrano, CircleCI も必須になってきた。
AWS Fargate, Terraform なども必要

さらに、SPA対策で、TypeScript, React, Vue.js も

今や、Udemy, YouTube のKENTA・くろかわこうへいのサロンなどによって、
教育革命が起きて、未経験者が10年以上のプロ以上になってしまった!

今の未経験者の戦いは、ものすごいハイレベル!
2021/04/30(金) 08:56:25.52ID:j+EX+6Vx
>>604
じゃあなんでページごとにURLがあるんです?
2021/04/30(金) 09:12:38.23ID:NBApg7VD
>>606
は?
「シングル」ページ、つまりSPAでは「ページごと」にはならんのだから、何を言いたいのか分からない
リソースを特定する識別子がURIなんだから、ページごとにURLがあるのは説明以前の話なので、別の意味で言ってるんだろうが
2021/04/30(金) 10:35:55.20ID:7VhEvZ/Q
android の EditText 要素って、長押しすると「貼り付け、切り取り」などの
メニューが出てくるけど、Undo(取り消し) (Windows の Ctrl+Z みたいなやつ)
はどうやってやればいいの?
もしかしてAndroidでOSが用意している入力要素には、標準ではUndoの機能
が存在しない?
2021/04/30(金) 10:36:51.24ID:7VhEvZ/Q
>>608
iOSでは、本体のシェイクや3本指で Undo のメニューが出てくるらしいけども、
Androidでは無理なの?
もしかして、それが Androidが売れない原因?
2021/04/30(金) 22:19:37.42ID:j+EX+6Vx
>>607
なんでSPAなのにマルチページであるかのように
見せかけるんです?
2021/04/30(金) 22:27:57.35ID:NBApg7VD
>>610
いや「シングル」なんだからマルチページに見せかけるなんてしない
そちら?が、ページごとになんでURLがあるんですか?とか間の抜けたことを言うから日本語通じないのかなと
2021/04/30(金) 22:35:15.15ID:9cqxfo3+
>>610
URLを指定するのがapiを叩くことになってる
2021/04/30(金) 22:40:38.44ID:GH8o4V6X
>>610
履歴を戻ったり進んだり
ある状態のページを人にシェアしたりするため

SPAはページ全体のローディングを最小限にしてUXを向上させるためにやるもの
別にこだわる必要はない
Amazonだって一部はSPA的に処理してるけど大半はMPA
2021/05/02(日) 17:34:34.68ID:xmIaeX3S
いま実行中のJSのプログラムのグローバル変数の値をそのまま維持したまま
GETパラメータ(?)の部分が異なるURLに対して処理を続行することって
できたっけ?
2021/05/02(日) 17:39:56.07ID:xmIaeX3S
>>614
あ、GETパラメータに状態変数を渡して、そこから状態変数を復帰
させればいいからグローバル変数は維持する必要は無いね。
「REST API」というのか、URLの中に状態を含めてしまって、プログラムの中に
状態を持たないような流儀があるけれど、その流儀において、
基本的にJS自らが、URLアドレスを変えたアドレスにブラウザをナビゲート(?)
した場合、新しいURLに対してHTMLが再読み込みされてJSは最初から実行し
始めるが、キャッシュがあるからネットから再ダウンロードはされないって
感じなのかな?
2021/05/02(日) 17:44:06.36ID:hSgvj4Ff
散らかりすぎて文章の中身が全く頭に入ってこない
2021/05/02(日) 17:45:46.21ID:hSgvj4Ff
キャッシュされるかどうかは簡単なJS書いてブラウザで試せばすぐわかるよ
2021/05/02(日) 17:49:50.42ID:xmIaeX3S
RESTful な流儀にする場合、サーバーでCGIを動かして、URLの中の
GET PARAMETERは、HTTPプロトコルでCGIで処理して、クライアント側
では、その辺の処理は余りクライアント側のJSでは行わないのが基本なのかな?
サーバーサイドのCGIで十分というか。
2021/05/02(日) 18:29:51.32ID:GmZFM6c4
>>615
History APIというものを少し調べてみてからもう一度質問するといいんでないかな。
2021/05/02(日) 18:37:55.34ID:D4zHZeZr
Web Storage API を使ってもいいかもね
621デフォルトの名無しさん
垢版 |
2021/05/02(日) 20:39:28.31ID:xUy+uSsS
angular8で自作のコンポーネントを外から.remove()で消してもngOnDestroyが実行されん
どうすりゃ良いの
622デフォルトの名無しさん
垢版 |
2021/05/02(日) 20:40:18.58ID:JUq9yodc
usageの書き方を教えて
あるコマンドcmdがあったとして
・一番目の引数は必須
・二番目の引数は省略可能で、省略しない場合はfooまたはbar
・三番目以降の引数も省略可能、省略しない場合は二番目の引数は必要
っていう場合どう書いたらいいの?
2021/05/02(日) 22:47:25.27ID:0BS/cOos
>>622
決まりは聞いたことがないけど、manのガイドラインとかあったりするのかな?
よく見るのは正規表現っぽい奴

参考以下にしかならないけど、
$ cmd first [(foo|bar) [third ...]]
じゃダメだろうか?
2021/05/02(日) 23:34:53.19ID:hSgvj4Ff
書き方はココを見るといいと思う
http://docopt.org/

>>623のような書き方になるんだけど
わかりにくいので二番目の引数はポジショナル引数じゃなくオプション引数にしたほうがよさそう
2021/05/03(月) 05:44:10.47ID:rJ+KtEzb
>>622
いわゆるBNFで書かれることが多いかな?
626デフォルトの名無しさん
垢版 |
2021/05/03(月) 11:41:33.14ID:6OKMVCkT
>>623
> $ cmd first [(foo|bar) [third ...]

(foo|bar)って書いてあるの見ます?
2021/05/03(月) 12:07:41.44ID:vnYCOkle
>>626
見るよ >>624 で紹介されてる先でも(set|remove)とか例があるじゃん
628デフォルトの名無しさん
垢版 |
2021/05/03(月) 12:10:08.45ID:6OKMVCkT
>>624はusageからパーサーを生成するというツールなので
usage自体が独自定義のDSLになってます。
これ以外で見かけますか?
2021/05/03(月) 12:31:58.51ID:h5k5+/JO
gitのhelpでも見てみれば?

例えばgit help branchの [(--merged | --no-merged) [<commit>]]とか
(-m | -M) [<oldbranch>] <newbranch>とか
2021/05/03(月) 13:22:24.55ID:aV7aDLTY
そもそもボタンなどを押して状態が変化するたびにURLが変化する
ものをSPAというのは定義上有り?
それとも、そのようなものにはMPAと言うべき?
631デフォルトの名無しさん
垢版 |
2021/05/03(月) 13:56:26.94ID:6OKMVCkT
>>629
へー、はじめてしったよ。ありがとう

[--contains [<commit]] [--no-contains [<commit>]]

>を省略する記法もあるんだな。
それともリダイレクトかな?
2021/05/03(月) 15:16:24.89ID:rJ+KtEzb
だからBNF(バッカスナウア記法)にしとけば間違いないよ。
2021/05/03(月) 15:22:12.36ID:o1Kfwn88
BNFというと終端記号/非終端記号を使うと思うが、そんなusageは見たことがないな。
634デフォルトの名無しさん
垢版 |
2021/05/03(月) 15:30:16.70ID:2YZ2w1Eu
>>632
お前、ばっかすなぁ
2021/05/03(月) 15:46:17.10ID:aV7aDLTY
バッカス記法は、アルファベットが斜体かどうかで term かどうかを区別する
流儀と、<term>のように書いて区別する流儀があるが、ASCII文字では
斜体をかけないので後者で書くことになり、そうすると、コマンドラインの
リダイレクトの記号と混乱し易くなることがある。
それと、ちょっと長くなって分かりにくくなったり、直感的でない場合が
あったりする。

任意個の項目を表す時、BNFだと
aaa_list = aaa <aaa_list>_opt
みたいに書く流儀が有る(というよりそれがBNFなのかも知れない)が、これは、
aaa_list = [aaa ...]
みたいに書いたり、正規表現みたいに
aaa_list = <aaa>+
みたいに書いたりとか、色々あると思う。
2021/05/03(月) 15:50:11.50ID:aV7aDLTY
>>635
バッカスナウア記法にもさまざまな亜種があるようで、同じような意味でも、
aaa_list ::= aaa <aaa_list>_opt
aaa_list ::= aaa | aaa <aaa_list>
の他、
- 省略可能なアイテムは角括弧で囲む。例えば、[<item-x>]
- 0回以上繰り返すアイテムは中括弧で囲む。例えば、<word> ::= <letter> { <letter> }
- 1回以上繰り返すアイテムには '+' を後置する。<word> ::= <letter>+

などがあると、Wikipediaには書いてあるようだ。
2021/05/03(月) 15:55:21.34ID:2YZ2w1Eu
usageがばっかすうあなのなんて無いからどうでもいいよ
2021/05/03(月) 16:14:04.60ID:aV7aDLTY
>>637
Watcom C++のコンパイラやライブラリアンのusageは、BNFに近いものだった記憶があるが。
2021/05/03(月) 16:57:23.58ID:2YZ2w1Eu
>>624って前からそういうのがあるのは知ってたんだけど使いやすいのかな?
単純な例ではうまく行くと思うけど、普通オプションって指定したときに
関数呼び出したりバリデーションかけたりするじゃん?
そういう情報を埋めていったら結局ヘルプの内容とかけ離れちゃうと思うんだけど
そういう高度なことはできないってことなのかな?
2021/05/03(月) 17:07:13.69ID:2YZ2w1Eu
https://github.com/docopt/docopt/blob/master/examples/validation_example.py

見つけた。これかな。
やっぱりヘルプに書くのは限界みたいで、別のところに書いてあった。
2021/05/03(月) 17:15:17.79ID:aV7aDLTY
<term> の <や>はリダイレクト、「または」の意味の a | b はパイプと
混同してしまいそうなことがあり、余り厳密に書こうとしても無理かも知れない。
例えば、tee コマンドの説明は、
コマンド名 パラメータ | tee ファイル名
見たいに書かないと意味が分からないかも知れないが、その | は「または」の
意味ではないので BNF ではない。
2021/05/03(月) 17:38:08.03ID:APFHCyDf
現実問題としてリダイレクトやパイプと混同しそうだと思ったことはないなあ
文法表記の中にリダイレクトが現れることはないし、コマンド利用例の中ならリダイレクトしか現れない
文脈で普通にわかると思う
ついでに空白の有無でも区別されるし
2021/05/04(火) 12:03:19.59ID:+5RR6bsJ
ググっても古い記事しか見当たらなかったんだけどjsの厳格モードって一般的に使われてる?

使われてるとしたら新規で何か作るときにあえて厳格モード記述しない場合ってあるの?
2021/05/04(火) 12:06:31.45ID:W048Vkz1
普通に使うよ
あとGoogleは普通に検索対象期間を絞れるから活用するといいよ
2021/05/04(火) 12:16:42.35ID:+5RR6bsJ
ありがとう!
646デフォルトの名無しさん
垢版 |
2021/05/05(水) 10:54:08.80ID:JCnyTaBn
テックアカデミアと侍エンジニアを除外
647646
垢版 |
2021/05/05(水) 10:55:49.83ID:JCnyTaBn
Googleの検索結果からテックアカデミアと侍エンジニアを除外 する方法って無いもんですか?
SEO対策しているのか常に上位に役に立たない情報を載せてるページが上がってきて鬱陶しいです
2021/05/05(水) 12:16:47.97ID:ng8M7HT4
urlをマイナス検索とか?
2021/05/05(水) 13:40:56.89ID:j7c7JTax
拡張機能使えるならuBlacklistとか
2021/05/05(水) 14:04:26.72ID:djSa+04/
普通にマイナス検索するのはダメなの?
651デフォルトの名無しさん
垢版 |
2021/05/06(木) 12:18:21.50ID:GHdSH9fo
sejuku も除外でいいよ
2021/05/06(木) 15:08:45.70ID:DK/TJHM3
リモートデスクトップって鍵ペア認証はできへんの?
今どきパスワード認証オンリーとか、ないわーって思うんやけど
653デフォルトの名無しさん
垢版 |
2021/05/06(木) 15:51:38.81ID:Zxv0K5Ik
板違い
気持ちは判る
2021/05/06(木) 18:58:05.02ID:wT5/oYmn
ログインの穴になるから
2021/05/07(金) 03:40:02.23ID:vAByX/Kb
なんで、5chの投稿欄のtextareaって、wrap=offになってるの?
それで改行無しの文が右端で折り返されないから自分でEnterキーで改行すると
馬鹿にされるし。
2021/05/07(金) 05:45:16.39ID:yTzFS6IQ
オンゲーでチート使うハッカーを見て憧れて取り敢えずC++のコンソール入門を覚えたのですが
次に何を勉強すればいいのか全く検討つきません。具体的なアドバイスをください
オンゲーはアウトでしたらオフゲーでチート使うには何を学べばいいか教えて欲しいです
2021/05/07(金) 06:14:56.58ID:re5QpdZI
オフゲーでセーブデータの改造かな
2021/05/07(金) 07:54:07.17ID:uXbPiGGM
>>655
適当なテキストエディタで文章作ってからコピペしたらどうか
ブラウザのテキストボックスで長文こさえてたら操作ミスで失うこともある
2021/05/07(金) 08:02:17.91ID:qKdKJXyz
チートとか改造の方法教えるのって犯罪教唆に当たるんちゃう?
クラッキングでしょ?
2021/05/07(金) 10:09:17.39ID:YbE8dk5k
オフゲーなら無問題
うまくしたら、未来のMOD作者を育成出来るかもしれん
2021/05/07(金) 10:12:51.90ID:ZRrNnGl7
改造チートするのにひとまずC++は使わん。
逆アセンブラとバイナリエディタ使え。
2021/05/07(金) 10:16:08.22ID:YbE8dk5k
ただMODを許可してないゲームのツールは、売ったり公開しちゃ同一性保持権の侵害で訴えられるから注意な
2021/05/07(金) 11:49:17.17ID:LLoVRXd1
REST APIの設計を初めて任されたんだけど
readはともかくcreate update deleteを外向けに公開したらドメインロジックめちゃくちゃならん?
httpの流儀に従う分セキュアなのはわかるけど
実態はぼぼDB丸出しに近い印象を受けたんだがこれでいいんだろうか…
2021/05/07(金) 12:06:59.32ID:re5QpdZI
APIキーで認証と認可ができてるから
2021/05/07(金) 12:07:58.14ID:re5QpdZI
あと、WebAPI はDBアクセスというよりストアドプロシージャ実行だし
2021/05/07(金) 12:38:27.81ID:2LmD+oJg
>>664
権限での制御は大雑把すぎない?

エンティティEの状態S1とS2があってS1もS2もその時点で見れば正しい状態である
しかしS1からS2に状態遷移させるには特定の業務プロセスXを通過させなくてはならない

みたいな要求はよくあるわけで
そうなると公開しなきゃいけないのはXであって不正なプロレスを防ぐためにEのcreate update deleteは公開してはならない
と俺は思うんだが

Xのようなプロセスがドメインに全く存在しない場合にはcreate update deleteも公開していいと思う
もちろん権限は管理するものとして
2021/05/07(金) 13:47:59.10ID:KFAHU5j/
更新削除できるapiはよく見かけるが
2021/05/07(金) 13:59:28.63ID:re5QpdZI
>>666
それはレコードを直接に書き換える概念に囚われているのではないか?
Eはユーザに直接には公開せず、仮想なエンティティS1を作成
その後にエンティティS2にアップデートさせれば良いと思うが
2021/05/07(金) 14:03:31.45ID:z1031SHW
ブログ、メモアプリのバックエンドみたいに、データ同士の関連が希薄、満たすべき業務条件もほとんど無い
といった場合はCRUD丸出しでいいと思う
2021/05/07(金) 14:05:19.14ID:re5QpdZI
>>666
例えばゲームのセーブデータ(E)
ニューゲーム(S1)を作ってゲームを進行させる(X)ことで途中データ(S2)にする
セーブデータを直接に操作はさせない
2021/05/07(金) 14:07:13.93ID:O1URPzeE
>>666
Eのupdateの中でプロセスXを通過させるだけでいいように見えるけど
そうすると何か不都合がある?
2021/05/07(金) 14:07:49.59ID:z1031SHW
>>671
EのupdateとXはパラメータが違う
2021/05/07(金) 14:12:41.37ID:O1URPzeE
>>672
それ関係あるのか?

EやXみたいな記号で一般化するとコンテキストが共有できないから説明用の具体例に落としてくれ
2021/05/07(金) 14:27:52.27ID:O1URPzeE
顧客(E)の与信限度額を変更するには与信審査プロセス(X)を通過させなくてはならない
こういうやつなら顧客をupdateするより与信限度額の変更要求をcreateしたほうがいいかもしれない
2021/05/07(金) 14:40:44.13ID:z1031SHW
>>674
そう例えばそんな感じだ
直接エンティティをCUDしていい業務なんて、珍しいと思うんだよね(エンタープライズは特に)
だからRは公開してもいいけど、CUDはインターナルにしておくべきというのが俺の考え
2021/05/07(金) 14:46:06.24ID:z1031SHW
送金とかもそうだろ
口座残高を直接updateしたりしない
送金というタスクをリクエストすると思うんだ

直接CUDしちゃうと何故CUDしたのかという大事な情報が失われる
何故そうしたのかがわからないと適切なプロセスを通せない
2021/05/07(金) 15:06:06.09ID:O1URPzeE
>>675
与信限度額の変更要求をcreateしたほうがいいのは
認証/認可とは関係なくて変更要求自体を独立したエンティティとして管理した上で
要求を出した側もAPI経由で状態を確認できるようにするため

いずれにしろ変更要求が承認された後に顧客をupdateする処理は必要なので
それ用のREST APIを用意して一部の内部アプリで使うかもしれない
その辺は作り方次第
2021/05/07(金) 16:38:51.99ID:z1031SHW
>>677
うん
インターナルなAPI自体はあっていいと思う
問題はパブリックなAPIだな
2021/05/07(金) 19:29:10.93ID:psJuDR7M
>>656
WIRESHARKでパケット解析か?
TCPIPから勉強かね
2021/05/07(金) 19:44:01.73ID:re5QpdZI
ROで会話ログを取るツールを作って使ってたけど、セキュリティ対応で読んだパケットを解析できなくなった
方式も鍵の在りかもわからんので諦めた
単にTLSならローカルにプロキシ作って抜けばいいと思うけど、そんな単純でもないだろうと
2021/05/08(土) 17:06:41.76ID:3vrEhaHR
>>660
不正競争防止法という目障りな奴を吊し上げられる最強の法律があってだな
682デフォルトの名無しさん
垢版 |
2021/05/09(日) 13:44:17.81ID:WMytKT+1
>>656
MITM
2021/05/09(日) 18:54:58.54ID:UzJfW4LG
Cookieに関する正しい解答を選ぶ問題で、正解はbとdになってるんですけど、合ってます?
dの状況設定がかなり微妙な気がするんですが

a Web ページなどに埋め込まれた小さな画像であり、利用者のアクセス動向な
どの情報を収集する仕組みである。
b いつ、どの Web サイトを見たかといった履歴や、パスワードなどのログイン
情報などを利用者の PC やスマートフォンで使うブラウザごとに保存する仕組み
である。
c いつ、どの Web サイトを見たかといった履歴や、パスワードなどのログイン
情報などをサーバ側に保存する仕組みである。
d 個人を特定する情報が Cookie に含まれなくても、使う側の企業が他の名簿
データなどと組み合わせれば、個人を特定できる可能性がある。
2021/05/09(日) 19:03:48.72ID:4LqFqyf/
可能性があるって凄えー曖昧な表現だからまあ○でいいんじゃね
可能性ゼロじゃなきゃ○だよこんなもん
2021/05/09(日) 19:22:03.91ID:QPL6EqlE
dは、クッキー 名寄せ で検索すると詳しい話題
2021/05/09(日) 20:44:01.13ID:QngfRO5p
どんな情報でも個人を特定する情報になるから
クッキーの中身が何もない状態で
名寄せできるのだろうか?
2021/05/09(日) 23:03:18.29ID:MVBjVGaC
dは全然微妙じゃないと思う
むしろbを正解に含めるほうが微妙

一般的には
パスワードなどのログイン情報をCookieに保存したりしないし
いつ、どのWebサイトを見たかといった履歴もCookieに保存したりしない
(3rd party cookieは識別IDを保存するだけ)
2021/05/10(月) 01:27:03.51ID:ZN2PoVCE
そういやインターネットに必要なものはなにか?という問題で
DNSという候補があったな

事実上必須だけど、なくてもできないことはない
お前らならどう答える?
2021/05/10(月) 01:34:03.09ID:PNRDo5CI
電気
2021/05/10(月) 01:34:46.48ID:Cq8Tuej3
ノード
2021/05/10(月) 03:35:39.00ID:VOP1Kg+H
必要と答える
.comや.co.jpなくして今のインターネット(WWW)はなかった
ただ設問が択一問題だったりすると答えが変わるかもしれない
2021/05/10(月) 06:25:33.50ID:hSqSKkF5
paiza.ioでサンプルコードを写経してるんですが、
PHPのバージョンを4とか5に変更することはできませんか?
693デフォルトの名無しさん
垢版 |
2021/05/10(月) 11:00:00.36ID:ijuR9GM5
MVCでソフトウェアを書いてみたくて勉強中です

ボタン押したらデータベースからデータ持ってきて加工、表示に反映 をさせたい

V(ボタン押したらMにオーダー)→M(データ取得と成形して返す)→V(受け取って表示)

ですか? Cはなにをするの?
V→C→M→C→V が正解な気もするけど、その場合、Cがあいだに挟まる意味はなんですか?
2021/05/10(月) 11:15:33.05ID:XsYpa6BG
>>693
決まってない
https://qiita.com/os1ma/items/66fb47f229896b32b2e8
でも読むといい
2021/05/10(月) 11:52:00.48ID:Ofl3us4D
ちょww
斜め上過ぎて噴き出したわ
2021/05/10(月) 12:31:36.10ID:XsYpa6BG
結局はビジネスロジックをどこに書くのか
コントローラに全部書くのは問題がある
でもコントローラを廃止して他に持っていくのは問題外
結局は銀の弾丸はないという古来言われている類いの話

しいて言うならコントローラは「主に」ビジネスロジックを実装する部分と考えるしかない
2021/05/10(月) 13:35:23.24ID:Qz+CRcrD
> でもコントローラを廃止して他に持っていくのは問題外
コントローラーを廃止しないで、他に持っていけばいいやん

なんで朝食は、ご飯じゃなければパンしかない
パンはありえないからご飯しかない
みたいな話してるの?
2021/05/10(月) 16:17:28.42ID:1dDQoHV+
今でもハンガリアン記法はチームの開発では一般的ですか?
変数名でグローバルのセットうにg_つけるとか
2021/05/10(月) 16:22:57.64ID:XsYpa6BG
そんなシステムハンガリアンっぽい命名を使う奴は情弱
二十年くらい前からすでにアプリケーションハンガリアン使えと言われてるから
2021/05/10(月) 17:12:25.15ID:PEznfPue
質問があれば自分もよく知らない事柄にも関わらず
とにかく上から目線で回答をしたがる人ってどういう精神構造なの?
2021/05/10(月) 17:17:37.02ID:XsYpa6BG
間違ってるなら指摘すりゃいいだけなのに、人格攻撃に走りたがる人ってどういう精神構造なの?
2021/05/10(月) 17:18:28.27ID:ro06Xyvc
>>698
一般的かどうかは分からないが、ハンガリアン記法を上手く使ったアプリのソースコードを始めてみた時、なんと分かり易いコードだろうと思った。
2021/05/10(月) 17:50:01.25ID:Z6bOR+7k
ハンガリアンはスコープを表すためにはまだ生き残ってるし言語によっては強制されるものさえあるよ。
さすがにかつてのMSがやってたような型まで厳密に表記するようなハンガリアンは見なくなったけど。
2021/05/10(月) 21:31:14.25ID:Xq63WIFj
長い変数名にするのがどうも好きになれないんですよね、個人的に
ノートも詰めて書くタイプ、狭い面積に集約された情報がひと目で見れるのが好きというか
スクロールバーをあまり動かしたくないというのもあって
2021/05/10(月) 23:01:25.41ID:NpiN7QoU
ローカル変数は名前を極力短くして
その代わりスコープを狭くして
見える範囲に定義を置く

それができない大域変数は
長めの名前をつけて
名前だけで意味がわかるようにする
2021/05/10(月) 23:21:59.49ID:ViCp850r
>>693
MVC なら皆、YouTube で有名な、雑食系エンジニア・KENTA のサロンで、
Ruby on Rails をやってる

M・Vは用途がはっきりしてるけど、C はそれら以外の何でも屋

V→C→M→C→V
この後ろのC は、条件でルーティングを変える

例えば、データベースへ問い合わせて、
管理者なら、管理者用のビューへ、
一般ユーザーなら、一般ユーザー用のビューへ、ルーティングを変える
2021/05/11(火) 02:14:22.86ID:1enRFFJU
> M・Vは用途がはっきりしてるけど、C はそれら以外の何でも屋
いや、Cはコントローラーという用途にはっきりとしてるが?
それがわからんとはその健太とかいうのも大したこと無いな
2021/05/11(火) 02:44:14.51ID:PqdJAW37
自分だけが読むノートをマイルールで短縮して書くのは賢いと思う
チームで協力して作り上げる緻密で壮大なドキュメントに本人しか分からないマイルールを持ち込まれると困る
常識的な範囲内ならその人の癖なんだなと思う程度

スコープの狭い変数には短い名前をつけてほしいけどついレビューで毎度スルーしてしまう
2021/05/11(火) 05:02:50.34ID:ntA9kUuo
目標に対してフワッとしたソースコードのイメージだけ脳内で作ってコーディング途中にどんどん変更するクセが付いてるんですが、これはどうすれば治りますか?
今の所、メソッドやクラス単位の実装が殆どなので仕事では困ってないですが、先々怖いです。
2021/05/11(火) 07:29:29.72ID:tw3oDY8j
メソッドやクラス単位での実装が無いってのはバグ修正とかやってんのかな?

仕事なら普通メソッドやクラス単位の実装の前段階として設計があってそこで頭の中のフワッとしたソースコードのイメージを具体的なロジックに落とし込むからまずは設計を意識してみたらいいんじゃない?

あとは単純にその言語の知識が浅くて考えてた実装じゃ動作しないところが出てきて当初の構想とのギャップが大きくなってることが考えられるけどそこは経験積むしかないと思う
2021/05/11(火) 08:34:06.31ID:hFxGyLe7
>>693
かつてはコントローラーも独立したモジュールだったけど、今でははとんどフレームワークがやってくれるのでデスクトップやスマホアプリではViewとControllerはごっちゃになることが多いよ。いわゆるDocumentViewやViewControllerみたいな。
どうしてもViewを分離したいならMVVMの勉強したほうが良いと思う。
2021/05/11(火) 09:20:53.20ID:j9Zfa2es
>>709
それでいいよ
2021/05/11(火) 10:58:43.07ID:BEtvw8dr
メソッドとクラス単位だとカバレッジ回すことくらいじゃない?
714デフォルトの名無しさん
垢版 |
2021/05/11(火) 11:23:13.32ID:FWZS8iTB
>>704
めっちゃ判る
++
2021/05/12(水) 15:30:41.45ID:BYsP6rEK
MSクラウドというかAzureって Visual Studioと共に扱う(プログラミングする)のが普通?
それともVSなしで使うことも多い?
2021/05/12(水) 17:42:05.41ID:heOXda5C
MSスタックで固めるのが普通だね
それ以外を使おうとするととんでもなく糞品質なので、AWSかGCPを選択すべき
2021/05/13(木) 03:08:18.57ID:WkGNAmpl
>>716
そういうことより、Azureを自らの手によるプログラミング無しで使うケースはあるのかどうかが知りたい。
2021/05/13(木) 09:21:46.61ID:jG3Ok9VP
そりゃストレージとして使うとかパッケージソフトを入れて使うだけというのはクラウドの使い方として普通にあるよ
特にAzureは業務系の客がほとんどだからAWSやGCPに比べてもそういう使い方は多いだろうね
2021/05/13(木) 09:28:55.99ID:jG3Ok9VP
あとAzureの場合はActive Directoryのためだけに使うというのもよくあるよ(これも業務系)
極一部の忠誠度の高いMSフォロワーを除いて、開発者にとってはあまり好まれないプラットフォームだね
2021/05/13(木) 09:47:04.91ID:i4261GGU
見え見えベンダーロックイン
まぁGCPでもGoは親和性やら優遇されてるから同じようなもんか?(Firebaseが強力だわ
2021/05/13(木) 10:28:06.61ID:pdmRhsyU
まあロックインされてしまえば余計な判断が減って楽という面もある
IBMやOracleやジャップSIerなんかに比べればMSはぼったくらないし品質も低くはないから、ロックインを受け容れるならMSは悪くない選択だ
俺はそういう思考停止が嫌で前職のC#erばかりの会社を辞めたけど、利点があるのはよく理解している
2021/05/13(木) 11:28:09.12ID:0pD51twu
この流れに乗って質問だが、
この比較↓によると、AWSがダントツトップってことでOK?

AWS/Azure/GCPサービス比較 2021.05
https://qiita.com/hayao_k/items/906ac1fba9e239e08ae8

この比較だとサービスの有無しか分からんよね・・・
○△×で示してほしいんだが・・・
肝心な価格の比較が無いし・・・

あー、AWSが一番サービス多いなー(棒・・・ぐらいの印象しか無い
こういう人はAWS、こういう人はGCP、こういう人はAzureみたいなのは無いの?
2021/05/13(木) 11:43:40.79ID:i4261GGU
GCPは有料で仮想マシンを借りないとAppEngineベースでスピンという機構を理解する必要があるから、止めとけとしか
でもGCPはサービス提供できるレベルでの無料枠が貧乏人としてはありがたい
(ほぼ無料(ドメイン関連以外)で2サービス運用してる
2021/05/13(木) 11:50:40.76ID:pdmRhsyU
>>722
自分でコード書いて動かすのに使う前提でいうと
開発や運用にWindowsと.NETを使用し、それ以外を未来永劫使うつもりがないならAzure
上に該当せず、エンタープライズ系のお硬い案件だったり、システム基盤として継続的に運用していく必要があるようなものの場合はAWS
TCP/IPなどインフラ周りの基本的なところに明るくないならGCP
スマホゲームなど、単独のアプリを手っ取り早く世に出したいならGCP
いずれにも当てはまらない場合はAWS
2021/05/13(木) 14:41:22.15ID:ItPDnKAp
>>718
「Microsoftが提供するクラウドサービス・Microsoft Azureの利用率が通常時と比べて775%も増加していることが明らかになりました。これは新型コロナウイルスの影響で急増中のリモートワーカーや、インターネット利用率の増加によるものです。」
とあったけど、これは、Azureを利用するプログラマが使った量というわけでなく、Azureを使ったサイトをプログラマではない人々(+プログラマ)が使った量のこと??
2021/05/13(木) 14:42:14.97ID:pdmRhsyU
>>725
それはOffice365の影響
主にTeamsのテレカン
2021/05/13(木) 14:48:46.29ID:ItPDnKAp
>>726
クラウドの「使用量」というものはややこしい量だね。
2021/05/13(木) 15:03:20.57ID:pdmRhsyU
>>727
というか意図的にミスリードしてるんだよ
MSはOffice365を含めることでAzureのシェアを水増ししてるの
729722
垢版 |
2021/05/13(木) 19:13:51.51ID:0pD51twu
>>723
ありがd
基本、自分は無料枠しか使わないんだが、クラウドに関しては有料でもいいかなと思ってる
AWSだけは無料枠でプログラム組んでたんだけど足りなくなって毎月数十円だけ課金されるようになった
GCPはGoogle Laboratoryがあるから、そのうちGPU/TPU使うために毎月支払うことになるかも
730722
垢版 |
2021/05/13(木) 19:37:01.24ID:0pD51twu
>>724
ありがd
個人的にはLinuxも使うし、Azureは無いかな
継続的に運用していくシステム基盤が必要かは場合による
TCP/IPとUDPは大学ん時にC言語でクラサバ予約システム作らされたんで暗くはない

その感じだと自分にはAWSかな

AWSのGPUの価格は↓これで分かった
https://qiita.com/m0ch1m0ch1/items/81b136b8eac1395c82ba
でも、これって自分ひとり占有って考えていいんだよね?
誰にも邪魔されないよね?

GCPのGPUは1,072円/月で比較的お得だけど、
他の人がたくさん使ってたら待つことになるから速さは保証できないって書かれてた
731デフォルトの名無しさん
垢版 |
2021/05/13(木) 20:40:15.90ID:SdYNz8ux
8進数の代表的な用途って何がありますか?
16bitコンピューター以外で
2021/05/13(木) 20:45:11.34ID:i4261GGU
>>731
パーミッション
2021/05/13(木) 21:53:55.12ID:NATYYilK
Amazon Linux で、MySQL, Postgresql が数倍速くなる

YouTube で、くろかわこうへいのサロンで勉強できる。
Amazonの講習では、3日で21万円

GCP は、Tensor Flow

Azure の利点はない
2021/05/13(木) 22:30:04.77ID:ybfO81Zh
Lets encrypt←ドメインジャックされたらなり済まされる
CV、EV証明書←ドメインジャックされてもなり済まされない(証明書の企業情報で偽物とわかる)

これであってる?
2021/05/14(金) 01:18:45.41ID:678S/iU6
>>728
一見、AzureがAWSに迫って来てるように見えても大部分が Office365 の貢献だったりしてな。
詐欺だな。
2021/05/14(金) 04:59:16.00ID:v82vkmQG
文とステートメントとキーワードって
呼び方が違うだけで、同じ意味ですか? それとも全然違う意味ですか?

例えば、ある本・サイトでは
var文

別の本・サイトでは
varステートメント

また別の本・サイトでは、
varキーワード

などと書かれており、よくわかりません

意味が違うのなら、どういう意図でつかいわけがされているのですか?
2021/05/14(金) 05:46:53.98ID:L5IZjefz
毎朝5:30になったらデータ更新する

というアルゴリズムが思ったよりシンプルに書けない
時刻と更新済みフラグで判定して実行するのはいいとして、
次の日にフラグをリセットする処理をどうしたもんか
2021/05/14(金) 06:20:17.21ID:GWgcGB6j
×シンプルに書けない
○書けない
2021/05/14(金) 07:01:09.60ID:QMgVBpCt
>>736
式はexpression で、文はstatement

式は値を返すけど、文は返さない
2021/05/14(金) 07:20:06.50ID:L5IZjefz
質問者は式については書いてないけどな

varと書いてるから変数名のことなのだろう
そういう場所には識別子(identifier)と書くのが一般的

日本語の式は多義的すぎて、こういう場所に使うのは無理だと思う
expressionとequationの区別ができない時点で致命的
expressionはイコールを含まない式、equationはイコールを含む式
formulaは複数の変数を含むequation
2021/05/14(金) 07:38:33.63ID:qQzvrKNd
リセットしようとするから
実行済み日付を登録していけば?
2021/05/14(金) 07:53:37.05ID:b7pYGFY+
>>740
どのプログラミングか明確にしないで用語の議論しても仕方ないんじゃね。
少なくとも数学的な意味での用語の話ではない。
そこで言うイコールは代入の演算子か、等価の比較の演算子か。いずれにせよそれらも含めてすべてexpression(日本語訳は式)と呼ぶのは多くの言語で良くあることだろう。
2021/05/14(金) 07:54:18.15ID:b7pYGFY+
>>742
プログラミング → プログラミング言語
2021/05/14(金) 09:16:15.31ID:wlHwvB3M
>>736
文とステートメントは同じもので、ここでは変数宣言のためのvarを含む行全体のこと。
キーワードは特別な意味をもつ単語、つまりvarという単語を指す。
2021/05/14(金) 09:23:57.10ID:L5IZjefz
キーワードもidentifierの意味
varそのものは予約語(reserved word)
2021/05/14(金) 10:54:06.08ID:0kdm8qdh
>>737
単に毎朝5:30に実行すればいいだけなら更新済みフラグを判定する必要はない
コードを書く以前に要求仕様を明確にできてないように見える
2021/05/14(金) 11:02:39.53ID:L5IZjefz
もう少し正確に言うと、毎朝5:30に*一度だけ*実行する
無限に実行していいなら簡単

何かの処理をすると記述する箇所全てに一度だけと書くのは面倒じゃないか?
748デフォルトの名無しさん
垢版 |
2021/05/14(金) 11:06:35.79ID:pLRygybZ
>>747
>>741
2021/05/14(金) 11:24:37.13ID:qQzvrKNd
日次バッチで頻出するワークだからな
ちょっと高級になると日付と開始時刻、終了時刻を記録する
バッチが終了してないのにタスクが終了してたらロールバックして再開させなきゃならんことが多い(トランザクションとは別の話
2021/05/14(金) 11:31:34.69ID:3vx6Xu7K
こんなバカが用語の議論には熱心に参加してるの恐ろしいね
2021/05/14(金) 11:49:30.93ID:L5IZjefz
フラグとして持たせるのではなくて、最終更新日時を持たせる場合
時刻 >= 更新時刻 and (時刻 - 最終更新日時) > 適当な時間
なら更新する

適当な時間というのがどうしても登場して、
これが結局、更新時刻から適当な時間が過ぎたらフラグをリセットするのと意味的には変わらない
2021/05/14(金) 11:56:52.48ID:0kdm8qdh
>>747
>毎朝5:30に*一度だけ*実行する

例えば常駐プログラムで1分おきに時刻をチェックして5:30ならデータ更新処理を実行すればいい
これで不都合があるならその状況と対応方法をまず仕様化すること
実装方法を考えたりコードを書くのはそれから
753デフォルトの名無しさん
垢版 |
2021/05/14(金) 12:08:39.59ID:pLRygybZ
>>751
日付だけで時刻はいらないぞ
2021/05/14(金) 12:29:28.06ID:TrZlHS7o
うん、フラグの代わりに最終更新日を持てばいいだけだね
755736
垢版 |
2021/05/14(金) 12:30:00.03ID:v82vkmQG
>>744
ありがとうございます。
744さんの回答が最もシンプルで、最も私が求めていた回答です。
ありがとうございました。
2021/05/14(金) 12:39:39.16ID:xhQE0k+a
>>737
スケジュール管理は自分でプログラミングせずにCRON、バックグラウンドジョブ管理サービスなどを利用するといい

フラグではなくイベントを記録することで実行を制御する
イベントは追加Onlyにし、更新も削除もしない
イベントは最低限、以下の3種類
・プログラムが開始された
・プログラムが成功で終了した
・プログラムが失敗で終了した
2021/05/14(金) 12:58:13.60ID:L5IZjefz
シンプルに書きたいのに大掛かりになっていく

問題のややこしい点はもう一つあって、更新タイミングが日付の変わる直前ということ
(5:30は30時間制ではまだ前日の29:30)
まだその日のうちに翌日のデータを取得する必要があり、記録される日付は前日のものになる

それだけなら、当日に更新が無いことを条件にできるけど、実際には日付変更時以外にも、
任意のタイミングで更新はしてよいので、日付は当日になってしまう
2021/05/14(金) 14:11:15.28ID:0kdm8qdh
>>757
>任意のタイミングで更新はしてよいので、日付は当日になってしまう

それで何が困るの?
2021/05/14(金) 17:37:59.47ID:hkg2iu74
やりたいことは実はドシンプルではなくもう少し複雑だったというなら相応に手を加えるだけよ
日を跨ぐ時刻の判定にオフセット掛けるのは足し算でできるでしょ
もっと条件があるなら経過時間なり時間帯なりに判定を増やせばいい
2021/05/14(金) 18:39:57.23ID:L5IZjefz
些末な部分はどうでもよくて
何かそれは思いつかなかった的なアイディアがありそうな気がするんだけどな

現状の実装では、更新時刻の1分前になったら更新済みフラグをクリアする
その状態で更新時刻になると更新される
1分間クリアし続けるというのがいかにも汚い
不等号一発ではなくて、時間の幅を持たせて、という処理がどうしても付きまとう
761デフォルトの名無しさん
垢版 |
2021/05/14(金) 19:50:54.89ID:sCsXtIcF
>>758 に答えろよ
2021/05/14(金) 21:03:00.71ID:HZsGTEZ+
仕様を明確にしろと指摘されてるのに
ふわっとした要望だけ次々と追加

そりゃ書けないわな
2021/05/14(金) 21:58:40.24ID:qv+fvLmo
勿体ぶらずにサンプルコード出せよ
2021/05/14(金) 22:11:00.85ID:SGxg0iSp
一日一回データ更新するプログラムで
何が問題になるのか
フラグをクリアしたのにフラグが立ってて
クリアし続けないといけない恐怖話
2021/05/15(土) 00:21:09.70ID:Eqqjc3fM
脱初心者を目指すならフラグ変数を使わずに書けないか意識した方がいい
人のソースを見ているときに boolean execFlag なんて現れるとがっかりする
2021/05/15(土) 02:19:46.64ID:TcBunKlm
だから言ったろ?
シンプルに書けないか以前に「書けない」んだって
2021/05/16(日) 12:24:08.32ID:i0aHhWnL
https://ezoeryou.github.io/cpp-intro/#%E3%82%A4%E3%83%86%E3%83%AC%E3%83%BC%E3%82%BF%E3%83%BC%E3%81%AE%E5%9F%BA%E7%A4%8E

「std::end(v)はvectorの変数vの最後の次の要素を指し示すイテレーターを取得する。
最後の次の要素を指し示すイテレーターに対して、*で要素にアクセスを試みるとエラーになる。
int main()
{
 std::vector<int> v = {1,2,3,4,5} ;
 auto i = std::end(v) ;
 *i ; // エラー
}

と書かれているのですが、そもそもコンパイル時エラー? ランタイムエラー?
C++はrange checkしないはずですが、本当にエラーになるとしたらどういう仕組みですか?
768デフォルトの名無しさん
垢版 |
2021/05/16(日) 19:02:12.07ID:LkZOTUXR
アマグラマーです
プログラマーに聞きたいのですが、こんなコードはクソっていう書くときの指針(反面教師)があれば教えてください
アマなのでプロの経験談から学びたい
2021/05/16(日) 19:26:05.99ID:Hgwjinll
>>768
私のコードがよい反面教師になるでしょう、とくとご覧あれ
https://mevius.5ch.net/test/read.cgi/tech/1434079972/
2021/05/16(日) 19:46:24.28ID:Hgwjinll
>>767
こちらで試した例
https://ideone.com/2WVu4k ……@

@の実行結果は ideone でも、私のローカル環境でも、いろいろ変わりますね

>C++はrange checkしない
これは正しいです。そしてコンパイル時エラーはおこりません。

>最後の次の要素を指し示すイテレーターに対して、*で要素にアクセスを試みるとエラーになる。
は、その文章でいう「エラー」という言葉が具体的に何を表現しているかが曖昧模糊と言う意味で正確ではありません

1)実行時エラー: *p でアクセスしようとすると「Segmentation Falut」等で、実行プロセスが OS により強制終了させられる
2)実行時エラーすら発生せず、シレっと値を読み込むが、その値は書き手のコントロールの外であるから適当かつ予測できない値だったりする
3) その他(どんなパターンがあるかは私にもわからない)

@ではイテレータ p が v.begin() を超えてもしばらくは上記 2) 、おもむろに 1) が発生して終了しました
いろいろ言いましたが、イテレータが意味のある領域を指していることを保証するのはプログラマの責任ということです、それができなかったときのエラーの様態は千差万別で一つに定めることは不可能でしょう
2021/05/16(日) 21:28:38.45ID:59l26Czq
イテレータのendは終端であって内部領域を指してないからアクセスすんなよ!とmanに書いてないか?
772デフォルトの名無しさん
垢版 |
2021/05/17(月) 01:32:17.53ID:GHG/4QhJ
イテレータの話が出たのでちょっと聞きたいんだけど
いつも関数化するときどこまで書いたらいいのか迷います

例えばループ処理で配列xを得るとき
for i in source:
x += myfunc(i)

x = myfunc(source)

なんかコードはできるだけその場に書いてあるべきとも聞くので、あまり隠すのもよくないんでしょうか
2021/05/17(月) 20:10:51.62ID:st/b0vQm
Visual Studio 2019 & C# でWindousアプリを作ったんだが、
これにサブスクを実装したいんだけど検索しても方法がわからず困ってます

Stripeは過去のAPIを使えばサーバー側の実装をせずにexeスタンドアローンで
サブスク機能を実装できたっぽいんだが、現行のStripe.net APIでは不可能で、
どなたか実装方法を知っている方、教えて下さい
774デフォルトの名無しさん
垢版 |
2021/05/17(月) 21:01:46.61ID:243nH9hZ
スタンドアローンのサブスクって…
性善説信じてるの?
2021/05/18(火) 04:03:58.05ID:+FyE0C2M
opamでocamlformatがインストール出来ないんだけどおま環かな?
Bad checksumとか出てきて、ファイルのダウンロードに失敗してるっぽいんだけど…
2021/05/18(火) 09:15:39.42ID:+FyE0C2M
>>775
自己解
直りました、一時的な物だったようです
2021/05/21(金) 02:45:54.58ID:qNmCc5X8
デザインパターンとMVVMではどちらを覚えた方が役に立ちますか?
2021/05/21(金) 06:06:11.26ID:9A/Jin+2
デザインパターンは教養なので一通り目を通しとこうね
詳細まで覚える必要はないと思う
解決策があるパターンについての知識
2021/05/21(金) 11:54:01.77ID:S8JLTe/p
JavaのHttp Clientは今だと何が良いの?
標準のHttpClientでいい?OkHttp?Google?
780デフォルトの名無しさん
垢版 |
2021/05/21(金) 14:37:35.10ID:VGYuthZE
MVVMとは?
2021/05/21(金) 14:46:17.00ID:vIFGBvJ6
V0_0V
2021/05/21(金) 15:06:40.89ID:9A/Jin+2
>>780
マイクロソフトが提唱してるビューモデルを組み込んだMVCの一種
一般にはmodelとviewを明示的に分離する機構の概念
個人的にはVMはGUIスレッドだけどディスパッチを工夫すると単体テストを容易に書けるんで便利
2021/05/22(土) 04:30:03.30ID:pp5tL189
PHPの開発環境(サーバーソフト、PHP、DB)をそろえようとしています。

ApacheのバイナリをDLするところなのですが、
Apache LoungeとApacheHausで配布されているものに
なにか違いはあるのでしょうか?
2021/05/22(土) 06:35:35.35ID:wMryifzt
個別に入れるくらいならそもそもXAMPP入れればいいのでは?
2021/05/22(土) 09:39:06.65ID:2qYnhM4e
質問には答えず自分の意見押し付ける奴ってアスペなの?
2021/05/22(土) 11:58:17.03ID:QJRx2RSn
アシベです
2021/05/22(土) 13:26:56.92ID:Kmk+JOPD
>>778
ありがとうございます。
詳細までは不要とのことですが、どの程度やればいいのでしょうか?
Javaでは結城浩さんの本で演習も含めて一通りやってみたんですけど、
実用するには至っていません。
2021/05/22(土) 13:35:02.58ID:DX4sJHIx
デザパタなんて1冊目を通せば十分だよ
演習とかで手を動かす必要もない
デザパタってかなり古い古典だからな
今あらためて見ると、こんなん逆にメンテ性下がるだろ、みたいなものも少なくない
2021/05/22(土) 14:10:44.57ID:yRhz4OAW
結城浩のデザパタ本はさっさとゴミ箱に捨てたほうがいい
デザインパターンは実装方法じゃなく背景にある考え方を学ぶのが重要だから
2021/05/22(土) 14:15:58.77ID:QJRx2RSn
デザパタ本はささっと目を通せば理解できる人が読むもの
読んでも理解できない人は、まだデザパタを使えるレベルにない
上級者レベルになってから、流し読みするのがデザパタ本
2021/05/22(土) 14:17:10.41ID:wMryifzt
デザインパターンなんて先に知ってから使うものでは無く
色々なものを作っていくうちにこんなのお前らが勝手に名前つけるなよw
ぐらいの感覚の方が本当は自然だよなぁ
2021/05/22(土) 14:18:29.67ID:wMryifzt
>>785
はぁ?分からん奴に説明なんてしてられんやろw
アホかよw
それならお前が一から十まで解説しろよカス
2021/05/22(土) 14:25:02.21ID:1YsSfc50
質問スレですよ上級プログラマーさん
2021/05/22(土) 14:48:17.77ID:ddu3mui0
>>787
こんなかんじの問題は見たなぁ、と漠然に思い出せれば検索できる
どのみちサンプルを丸ごとコピーして解決できるほど甘くないから、その時になってから深く調べても問題ない
2021/05/22(土) 18:33:17.62ID:SsIEQKpS
>>770
試してくれて有難う。
なるほど、まとめると、実際には
・コンパイルエラーにはなら無い。
・実験して見ると、実行時エラーも範囲を少し超えたくらいではならなかった。
・範囲を物凄く超えたところでたまたまメモリアクセス保護例外が起きた。
ということですね。
2021/05/22(土) 18:38:59.22ID:5+25tO+n
プログラム知識ゼロスタートで他人のLua scriptプラグイン2シーズンくらい触って、自分好みに書き直し移植する遊びやってたんだけど
一つも用語分からないからWebサイトのLua用語調べたら専門用語の方が遥かに難しくてナニコレ分からん状態
専門用語という名の日本語の方が難しいわ
2021/05/22(土) 19:38:59.05ID:XT/wolzt
>>789
私は結城は気に入っていますが、何か他にいい本があるのでしょうか?
(結城本+自分で課題設定をして書く+Java のほかC++ でも書く、みたいな工夫はしました、サクッと読んでお仕舞いでは習得は無理かと)
798デフォルトの名無しさん
垢版 |
2021/05/22(土) 23:54:19.73ID:aF1HHEjB
結城浩はウツ病らしいですよ。
1990年代に心の病系ホームページの掲示板に書き込みをよく見た。
2021/05/22(土) 23:58:52.64ID:B4OaYn/w
>>797
QZは何の病気なんですか?
2021/05/23(日) 07:34:45.90ID:zmSGPUw1
C++ でも、Scott Meyers のEffective 本があるけど、
デザインパターンを簡単に書けない、その言語特有のハック。
古臭い技術で、他の言語に転用できないのが欠点

一方、Ruby では、ほとんど実現されているから、背景にある考え方を学ぶ方が大事

例えば、MVC で、モデルに実装したら、モデルが肥大化した(Fat Model)ので、
サービスオブジェクトに分けましたとか

1つの関心事につき、1つのクラスとか
2021/05/23(日) 18:55:47.64ID:cyPeT6Ng
>>799
スキゾフレニア
802デフォルトの名無しさん
垢版 |
2021/05/23(日) 20:26:45.52ID:Wj1m5SX3
これってなんの言語ですか?
パイソン?
https://i.imgur.com/xlefspP.jpg
803デフォルトの名無しさん
垢版 |
2021/05/23(日) 20:53:33.13ID:GSf5lhyc
Yep
2021/05/23(日) 21:01:04.62ID:RNjOm9Rv
ペェソン
2021/05/23(日) 21:39:22.51ID:Te3MIS70
PythonとかJavaとかCとか
なにが違うの?言語によって作れる作れないがあるの?
806デフォルトの名無しさん
垢版 |
2021/05/23(日) 21:42:02.74ID:C7srCdl0
>>803-804
サンキュー
2021/05/23(日) 22:00:15.34ID:w+wJvB0G
>>805
Pythonはインタプリタ言語で、JavaとCはコンパイル言語。Javaは仮想マシンで動作し、C言語は機械語に翻訳されて実行される。
2021/05/23(日) 22:03:22.43ID:w+wJvB0G
簡単で柔軟な処理を書きたいならPython。機械やOSに近い処理をしたいならC言語。実行環境を自由にしたいならJava。
2021/05/23(日) 23:09:32.89ID:Te3MIS70
>>807
はえーよくわかんないけど
教えてくれてありがとう
810デフォルトの名無しさん
垢版 |
2021/05/23(日) 23:21:58.20ID:egmLXi/j
Kotlin もよろしく。
2021/05/24(月) 00:08:07.95ID:gquLa7i5
ttps://pubgmap.io/erangel.html?/v2/30/4ftla8/BLeG
こんな感じのローカルで使えるアプリを作りたいのですが開発も保守もなるべくお手軽に済ませたいです
良さそうなフレームワークとかあったら教えてください
現状ネイティブアプリにするかWebアプリにするかも決まっていません
2021/05/24(月) 03:53:11.11ID:uBa1LY8b
ゲームエンジンなら、Unity
2021/05/25(火) 12:50:06.92ID:eFv7Fs8Z
設計思想とかデザインパターンとかの技術書の種類が豊富な電子書籍サービスありますか?
本当は技術書は紙媒体の方がいいんだろうけど満員電車にスマホで読むつもりなんで電子書籍がいいです
2021/05/25(火) 13:00:39.43ID:wv0vSqE+
cygwinのsetupで、library パッケージをインストールする時、
括弧書きの中にdevelopmentやruntimeと書かれているものが有るけど、
違いは何?
2021/05/25(火) 14:04:06.95ID:L5PEm/bx
>>813
オライリー
2021/05/25(火) 18:03:25.58ID:kHXG2r5z
>>814
runtimeが実行用の本体
developmentは開発用でヘッダーファイル等
コンパイルするのに必要なファイル群
runtimeのファイルを含むかは知らない
2021/05/26(水) 03:13:01.88ID:d9C9piab
>>816
有難う。
ところで、clangがリンク段階でエラーになってしまうのが直らない。
cygwinは64BIT版のみになってしまったけど、clangは32BIT版のライブラリを
必要とするかららしい。
考えてみれば、64BIT版の実行ファイルを作成すればいいのかな。
818デフォルトの名無しさん
垢版 |
2021/05/26(水) 03:24:50.15ID:d9C9piab
>>817
実際は、むしろ逆に64BITの実行ファイルを作成しようとしていて、
cygwin64 で、
$ clang -v t.c
とした時、
/usr/bin/ld: cannot find crtbegin.o: No such file or directory
/usr/bin/ld: cannot find -lgcc_s
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: cannot find crtend.o: No such file or directory
と出るので、-v で verbose してみたら、

Target: x86_64-unknown-windows-cygnus

"/usr/bin/ld" -m i386pep --wrap _Znwm --wrap _Znam --wrap _ZnwmRKSt9nothrow_t --wrap _ZnamRKSt9nothrow_t --wrap _ZdlPv --wrap _ZdaPv --wrap _ZdlPvRKSt9nothrow_t --wrap _ZdaPvKSt9nothrow_t -Bdynamic --tsaware -o a.exe /usr/lib/crt0.o crtbegin.o -L/usr/lib/gcc/x86_64-pc-cygwin/9.2.0 -L/usr/x86_64-pc-cygwin/lib -L/usr/lib -L/usr/lib/w32api /tmp/t-c40327.o -lgcc_s -lgcc -lcygwin -ladvapi32 -lshell32 -luser32 -lkernel32 /usr/lib/default-manifest.o crtend.o

と出た。crtbegin.o や、libgcc などがないということらしいけど、どうやったら直るんだろう。
2021/05/26(水) 05:04:07.54ID:d9C9piab
>>818
自己レスだが、その後、調査したら、

/lib/gcc/x86_64-pc-cygwin/10

に crtbegin.o や、libgcc.a があることが分かり、

$ clang -L /lib/gcc/x86_64-pc-cygwin/10 -B /lib/gcc/x86_64-pc-cygwin/10 t.c

とすると直ったわ。
2021/05/26(水) 06:55:25.77ID:XGTO2klA
Windows 10 Home, WSL2, Linux, Docker,
VSCode(拡張機能・Remote WSL, Remote Container)もある。

Windows Home版でも、Dockerを使えるようになった

WSL2 は、本物のLinux サーバーが動く。
ただし、CUI のみ。GUI は無い

メモリは、16GB は欲しい
2021/05/26(水) 12:49:08.85ID:Qr9i9spQ
>>820
サイズがでかすぎてインストールするのが辛い。
というか自分の環境では現実的に不可能。
822820
垢版 |
2021/05/26(水) 21:05:36.83ID:XGTO2klA
YouTube で有名な、雑食系エンジニア・KENTA のサロンでも、
Ruby on Rails で、今の未経験者は、Linux, Docker, VSCode が必須

Docker Compose までが初心者用コース。
各学校のカリキュラムもそう

Dockerできないと採用されない。
それどころか、AWS Fargate, Terraform まで言われている

よって開発用PC のメモリが、
Windows 10 では16GB 以上、Mac で32GB以上になった。
Windowsでも、32GBが推奨

8GBじゃ、Docker Composeがキツイから
823820
垢版 |
2021/05/26(水) 21:13:33.60ID:XGTO2klA
未経験者のRuby on Rails では、

YouTube で有名なKENTA のサロン、
AWS のくろかわこうへいのサロン、
Udemy などで教育革命が起きて、

今の未経験者は、Linux, Docker, VSCode が誰でもできる。
10年以上のプロよりも、技術力が上になってる!

さらに、AWS Fargate, Terraform まで言われている。
この辺が、未経験者の主戦場

米国年収でも、Railsは、1,300万円で、
AWS Solution Architect は、1,400万円でRailsを超えた!

Node.js は900万円だけど、Railsの2倍の求人がある
2021/05/26(水) 22:31:02.16ID:Gw0GQCqH
知ってる!KENT!サロン有名!ユーチューバーサロンKENT!
2021/05/27(木) 15:34:12.18ID:nhyDHcNr
Excelに日々追加されていく発注データをよその部署と共有したい。
データは極力いじってほしくなくて、複数箇所から同時に開くことができて、その部署の人間に有用なデータのみ加工して表示したい。

ということでエクセルデータを読み込んで表示できるhtmlファイルを用意して共有フォルダに入れとくのが良いかもしれんと思ったんですが、やはりhtmlだけじゃなくjavascriptを書く必要がありそうですかね?
2021/05/27(木) 15:41:44.56ID:PvZCRO+r
>>825
GoogleスプレッドシートとGoogleフォームでいいよ
Office365入れてるならそれでもいける
プログラミングなんぞ不要
2021/05/27(木) 16:11:02.44ID:iyj+Su0Y
htmlやcsvでエクスポートしたら?
見るだけでいいならpdf
2021/05/27(木) 16:20:25.70ID:6XTubEPX
その手のはGSuiteやOffice365の他にもSalesforceとかKintoneとか腐るほど選択肢がある
自分で作り込むのは論外として、会社で既に契約してるサービスを使えないかをまずは確認してみては
2021/05/27(木) 17:03:14.36ID:goD1Dj5M
>>825
用件定義が曖昧なので必要な処理が良く分からないけど、表示できるhtml
ファイルって言うのはエクセルファイルのリンクURLを書いたファイルを想定して
いるのかな?
だとしたら何か条件を満たすために書く必要があるのはjavascriptではなくて、
エクセルのマクロとかVBAスクリプトじゃないかな
共有フォルダに入れるならhtmlファイルを用意しなくても読み込み専用なら
エクセルファイル直でも良い気がする

データ極力いじらないっていうのは通達でルール化するとかなら分かるけど、
機械的にやるならいじれる人/いじれない人を明確に定義して、ファイルの
アクセス権設定するのかなって話でスクリプトの話じゃないかなとか、
エクセルファイル共有してみんなでいじると競合が発生しないようにする
必要があるとか

部署の人間に有用なデータのみ加工して表示したいは、それこそエクセルの
中身をいじる話なのでjavascriptではないかなとか

>>828のいうように社内で使っているソリューションとかにエクセルファイルを
読ませて要件に合った処理をしてくれるものを探すのが良いと思うけど、
まずはやりたいことを明確(極力とか有用なみたいはフワっとした感じじゃ
なく)にしないと何が必要か言えないかな
2021/05/27(木) 17:09:43.03ID:lb8CrCgA
GraphQLって関数のサポートってある?
例えば、あるプロパティに文字列が入ってるんだけど、これを大文字に変換して取得、みたいな感じ
もちろん、実際には大文字化どころでなく、もっと複雑な計算が必要になる
GQLで取得したのをJSかTSでまた変換して〜てな感じでやるしかないかな?
2021/05/27(木) 17:40:00.59ID:VvsV/KIv
>>825です。
元の表は外注先・商品名・社内担当者・納品日などなどのデータベースです。データ入力の担当者以外は直接参照しないように言われてます。
進行状況をグラフィカルに知りたい人たちがいたので、この表からガントチャートを作って表示できるVBAマクロを作りましたが、shapeを大量に表示するのでやや重くて不評でしたので簡便に表示できる方法を探していました。
老人たちが多すぎて「ここをダブルクリックすると見られます」以上に複雑な説明は不可能なので、今使ってないサービスを新規に利用するとか、元表の運用方法自体を変えるってのはナシの方向です。
状況が特殊なので、自分で調べてなんとかします。
すみませんでした。
832デフォルトの名無しさん
垢版 |
2021/05/27(木) 18:06:17.50ID:oUYWih0l
だからexcel をhtmlとして保存するだけだろ
2021/05/27(木) 21:25:46.25ID:uWNxEgvG
>>725
リモートワークに対応している企業
F#(38)
Haskell(35)
Purescript(13)
https://github.com/erkmos/haskell-companies
834デフォルトの名無しさん
垢版 |
2021/05/28(金) 20:40:09.32ID:yAnFtbcz
SPAっていうのが流行ってるみたいだから
Vue.jsでやってみたんだけど、v-forでデータ取り出す部分だけ遅くなって不自然になった
これって改善できるの?

あといちいちJSONにしなきゃいけない理由もわからない。
Laravelでそのまま渡せた
2021/05/28(金) 21:46:10.68ID:NBcE/coZ
PHPなんてCGIに毛の生えた化石じゃん
2021/05/29(土) 09:48:03.20ID:nTYZXgcl
PHPはもとからCGIを使わないのが売り
2021/05/29(土) 11:59:05.69ID:T6353Tmf
それ自身がスクリプトを動かすCGIとして書かれてるだろPHPは
そりゃ他のCGIつかわんのは当然
2021/05/29(土) 12:02:51.01ID:DLhoEVoU
他のCGIってなんだよw
2021/05/29(土) 12:07:50.02ID:T6353Tmf
PHPだけで済ませるから他のCGIプログラムをホストしてつかわんという意味だよ
2021/05/29(土) 13:01:47.18ID:nTYZXgcl
>>837
PHPが登場した当初にアピールしていたのは
CGIではなくApacheモジュールを使うから高速であるということ
CGIの仕組み自体を使っていない
2021/05/29(土) 13:15:02.83ID:HJC/ZOcF
CGIに毛の生えた化石という論評の是非はさておき、それに対して、元からCGIを使わないのが売りという反応は噛み合ってないな
2021/05/29(土) 14:27:55.78ID:ehKbAfuY
>>834
日本6位、YouTube で有名な雑食系エンジニア・KENTA のサロンでは、

Ruby on Rails, Linux, Docker, Node.js(Webpack, Babel), Bootstrap,
VSCode(拡張機能・Remote WSL, Remote Container)、データベース、
Heroku, CircleCI までが初級カリキュラム

さらに最近では、AWS Fargate, Terraform, SPA(React, Vue.js), TypeScript も入る

女性1人で、Rails, Heroku, Bootstrapで起業していたのが、
最近では、Fargate, Terraform, SPA も必須になってきた

どこかの学校が新技術を採用したら、転職の競争上、すべての学校も採用せざるを得ない。
今では、1年の未経験者が、10年以上のプロよりも、技術力が上になってる!
843デフォルトの名無しさん
垢版 |
2021/05/29(土) 16:36:36.98ID:eCdX3xcf
cgi.rb : えっ君らこれ本気で使ってるの?
2021/05/29(土) 23:55:16.84ID:nTYZXgcl
>>841
登場時点でCGIを使わないという本質的に違うものに対して
CGIに毛が生えた程度というのはおかしいってことだよ
2021/05/30(日) 00:08:47.75ID:ClvkxSVZ
はいはいCGI2.0ね
2021/05/30(日) 00:24:47.48ID:iekbxZ9w
>>844
CGIを使わない⇒本質的に異なるとな?
自分でも苦しいと思わないのだろうか
ありがちな例文「素人に毛が生えたような役者」の場合でいうと、素人≠役者(プロ)でも使えるのは自明じゃん
CGIとPHPの役割や立ち位置が同じだと元の発言者が思ったならこの表現は成立するし、反論するならそっちの妥当性だろ
2021/05/30(日) 12:47:19.86ID:DbVDrryp
>>846
本人がそう思ったからで成立するなら
CGIとGoogleのクラウドサービスも役割や立ち位置が同じだから
GoogleのクラウドサービスはCGIに毛が生えた程度のものっていう理屈も言えるんだが?

どちらにしろCGIに毛が〜って言ったやつが
技術を何も知らない素人だという証明にしかならん
技術を知っていればCGIとそうでないものを同一視したりしないんだよ
2021/05/30(日) 13:09:31.06ID:ClvkxSVZ
>>847
「ところで、カモノハシが卵を産むのは知っているか?」
2021/05/30(日) 14:03:12.70ID:b5JrJ9vZ
>>847
「反論するならそっちの妥当性だろ」としたとおり
俺はPHP(の用途や役割)がCGIに毛が生えたものという主張が妥当かどうかには興味ないよ
これまでも論旨自体に賛否を一切示してないことをもう一度強調しておくわ
筋違いのズレた反論をしているからズレてると指摘しただけだ
命題が真が偽かということと、CGI≠PHPであるという前提の中で、語の用法が適切で文として成立しているかどうかは別のこと
プログラミングしたことあるなら流石にわかるよな?
いやときどきこういう区別が本当に理解できてるのかあやしいやつ結構いるよな…
2021/05/30(日) 14:34:27.31ID:DbVDrryp
>>848
知ってるけどそれが今の話となにか関係あるの?w
2021/05/30(日) 14:36:11.80ID:DbVDrryp
> 俺はPHP(の用途や役割)がCGIに毛が生えたものという主張が妥当かどうかには興味ないよ
興味がないならお前には関係ないじゃん

PHPの役割がCGIに毛が生えたものじゃないって話をしてるんだから
PHPの役割例・・・wikipedia、wordpress
2021/05/30(日) 14:38:05.79ID:DbVDrryp
そもそもCGIというのがなにかわかってないんだろう
言語じゃないぞ。

ウェブページを表示する仕組みの中で、とても遅い仕組み
だから今では使われていない
2021/05/30(日) 14:49:12.26ID:x7z1bfzn
DI(dependency injection)について質問です
どうも存在価値がわからないのです
世間一般ではよく使われているので、自分の理解が足りていないのは自覚しています。
DIの何が便利なのかを教えてほしいです。

kotlinの以下の記事を使わせて頂きます。
https://qiita.com/klriutsa/items/3989b280ce659df18e2c
この記事には以下の3種類のコードが提示されています。
・1.依存性の注入が無いAndroidのコード例
・2.DIを使わずに書いた場合
・3.DIを使って書く

1番目を2番目にする事は理解出来ます
2番目から3番目にする事が「DI」と呼ぶらしいですが、メリットが分からないです

差分を取ってみました。
https://i.imgur.com/yDX4Pdh.jpg
「ArticleClient().create()」だった部分がDIを使ったコードだと「service」の変数一つになっているのは理解できますが
それ以外にinjectする処理が増えて、トータルではマイナスになっているように見えます。
DIのメリットで「テスト時に処理を差し替え出来る」とも聞きますが、この例ですとDI前も後もArticleServiceクラスに依存していて何も変わっていないように見えます。

インスタンスを呼び出すメソッドを作ってインスタンスを呼び出す事に比べて、DIというのは何が優れているのでしょうか
2021/05/30(日) 15:01:19.37ID:DbVDrryp
>>853
DIを文字通り依存関係を注入するものだと思っているからわからない
下手なやつが使うと日付オブジェクトまで外部から注入しようと考えるからアホらしいw
DIは基本的にビジネスロジックに使うもの

DIを理解する前に前に適切な設計というのを理解しないといけない
適切な設計というのはクラスごとの役割・責務がちゃんと分離されているということ

そういう場合にこのクラスのビジネスロジックは、別のクラスのビジネスロジックを"利用する"という時に、
別のクラスをテスト用のクラスに差し替えられるようにしておけば、別のクラスを使わずに単体テストが可能になる
テストというのはなるべく小さな状態で行うもの。そうしないとどこに原因があるのかわかりづらくなる

テストクラスへの差し替えが簡単にできる言語であればDIは必要ないが
そういう場合でもDIを使っていれば、ここで差し替えてテストすることを意図してるんだなとわかる
2021/05/30(日) 15:07:57.29ID:McAyMcZB
>>853
君の疑問はもっともで、この記事が悪い
ArticleServiceが具象クラスなら特にDIを使って注入する意味はない
DIする場合、普通ArticleServiceはinterfaceにしておいて、場合によってバックエンドAPIからArticleを取得する実装と、テスト用のモック実装とを差し替えたりする
2021/05/30(日) 15:21:52.08ID:x7z1bfzn
>>854-855
うーん、とりあえずわかりました。
テスト(等)時に実装の差し替えを、最低限のコストで行う手段 と、覚えておきます。

確かに現状はテストも何もなく 実装コードを書くだけで満足してますが
ちゃんとテストを書いて、最低限の変更で実装を切り替えするようになれば理解出来る・・かな
2021/05/30(日) 15:28:54.83ID:QVEYwMBG
DIは依存関係を減らすというものだが
実際それが必要なのはテストぐらいだよねってこと
2021/05/30(日) 15:38:52.15ID:XTsG4vqP
DIなんて普通の開発ではまず使わない
そもそもこれって簡単に機能を切り替えられる仕組みってだけだし
2021/05/30(日) 15:42:57.18ID:B0xK2QHY
>日本語訳では依存性の注入と呼ばれていますが、実際はオブジェクトの注入が正しいです。

この筆者はなんか誤解してる気がする。DIで言う依存性ってのはSOLID原則のDと基本的に同じだろ。
オブジェクト間の依存関係とかじゃなくて具象型への依存をコードの外に出す話。
2021/05/30(日) 15:53:45.95ID:ClvkxSVZ
詭弁のガイダンス
って知らんのか
2021/05/30(日) 15:56:27.36ID:McAyMcZB
>>859
インスタンスをシングルトンにするみたいなDIコンテナによるライフタイム制御のことを言ってるんじゃないの
DIとは無関係と言ってもいいオマケ機能なわけだけど、この筆者は使い方だけ教わって変な理解しちゃったんだろうな
2021/05/30(日) 15:59:39.65ID:mZRTgvtG
DIってのは単純な話で
今取り組んでるクラスにとって本質ではない処理を
都合のいいインターフェースで切り出して外部化へ追い出すことにより
そのクラスの本質だけを残すことによって
開発や保守をしやすくする
ということだよ

そのほうがテストしやすいとか
開発環境でダミーを使うときに便利とか
そんなのは二次的なメリットでしかない
2021/05/30(日) 16:18:12.11ID:Hj1QGeYh
おまえら・・・
酷いな

>>853
参照する記事が悪すぎる
とりあえずwikipediaを読んで分からなかったら戻ってくればいい
https://ja.wikipedia.org/wiki/依存性の注入
2021/05/30(日) 17:18:26.56ID:EoN0M48D
Reactの環境を整えて最初は普通にbluid出来ていたのに、試しにmaterial-uiを導入してbuildしてみたら

(プロジェクト名)\node_modules\enhanced-resolve\lib\Resolver.js:14
Resolver.prototype = Object.create(Tapable.prototype);

TypeError: Object prototype may only be an Object or null: undefined
at Function.create (<anonymous>)
at Object.<anonymous> ((プロジェクト名)\node_modules\enhanced-resolve\lib\Resolver.js:14:29)
(グレーアウトされたエラーメッセージ)
at Object.<anonymous> ((プロジェクト名)\node_modules\enhanced-resolve\lib\node.js:5:16)

というエラーが出るようになってしまってmaterial-uiをremoveしても消えないのだけどこれはいったいどうしたらよいのでしょう?
2021/05/30(日) 18:24:28.22ID:r7/HTnYk
>>851
興味がないという単語に対して部分否定と全否定を区別できず、脊髄反射で反応
そういうところだぞ
2021/05/30(日) 18:27:08.70ID:QVEYwMBG
>>865
その後の本題にはレスしないのかよw

それこそ脊髄反射
2021/05/30(日) 22:17:51.61ID:XTsG4vqP
>>864
node_modulesの中身消しても無理?
2021/05/30(日) 23:47:19.92ID:Hj1QGeYh
>>864
エラー自体はTapable.prototypeがundefinedなのが原因

undefinedになるのはmaterial-uiのdependencyでtapableが新しくなって
古いバージョンのenhanced-resolveと合わなくなったからだと推測する
その14行目のコードが残ってるのは相当古いバージョンだったので
webpackのバージョンを見直したほうがいいと思う
2021/05/31(月) 08:58:39.96ID:sBIewd8V
たとえばwindows付属のメニューバーの色やメニューバーの文字の色、
書き込む部分の白い色、スクロールバーの色だけを狙って変更したい。
windowsのテーマを変更するとかという方法ではなく。
具体的にどのようにしたらいいか。
870デフォルトの名無しさん
垢版 |
2021/05/31(月) 13:08:18.00ID:wgV7aZpD
アプリの製作元と交渉してソースファイルを入手し必要な箇所を書き換えて再構築する
2021/05/31(月) 13:25:33.66ID:siYzGVpE
IMEのシステム辞書の中身って書き出せませんか?
2021/05/31(月) 13:26:27.46ID:R3lKsytn
>>869
メニューバーについては、hBrushにWin32のBRUSHオブジェクトを作成しておいて
以下の様にすれば可能。

https://stackoverflow.com/questions/215211/changing-win32-menu-colors

MENUINFO mi = { 0 };
mi.cbSize = sizeof(mi);
mi.fMask = MIM_BACKGROUND|MIM_APPLYTOSUBMENUS;
mi.hbrBack = hBrush;

HMENU hMenu = ::GetMenu(hWnd);
SetMenuInfo(hMenu, &mi);
2021/05/31(月) 13:29:19.34ID:R3lKsytn
>>872
スクロールバーについては、以下の様にすれば可能 :
case WM_CTLCOLORSCROLLBAR:
if(HIWORD(lParam)==CTLCOLOR_SCROLLBAR) {

SetBkColor(hdc,(LRESULT)CreateSolidBrush(RGB (color[0],color[1],color[2])));
return (LRESULT)CreateSolidBrush(RGB (color[0],color[1],color[2])) ;
}
return TRUE;

参考 :
https://docs.microsoft.com/en-us/windows/win32/controls/wm-ctlcolorscrollbar
https://social.msdn.microsoft.com/Forums/vstudio/en-US/486105a1-9e9c-4f8d-9978-5cf575126660/how-to-set-scrollbars-color?forum=vcgeneral
2021/05/31(月) 13:32:51.23ID:R3lKsytn
>>873
Menuの文字の色については、WM_DRAWITEM、MF_OWNERDRAW、MFT_OWNERDRAW
などを使えば可能 :

https://groups.google.com/g/comp.os.ms-windows.programmer.win32/c/IArldfiTyFs
875デフォルトの名無しさん
垢版 |
2021/05/31(月) 13:40:36.18ID:R3lKsytn
>>871
辞書自体は、imjp10u.dic にあるらしいので
2021/05/31(月) 13:41:10.64ID:sBIewd8V
>>869
補足
自分が作るアプリではなく、
すでに起動しているアプリ、例えば起動しているメモ帳のメニューバーやスクロールバーの色を変えたかった。
AutoHotKey等を使おうと思っているが、原理というかすでに起動しているソフトの色は変えることができるのか知りたかった。
なお、ウィンドウタイトルを名指ししてウィンドウを透明化することはできた。

>>872からの説明感謝
2021/05/31(月) 13:43:48.44ID:sBIewd8V
>>876
追加、なおWindowsのテーマを変更して(つまり全体的に色を変えることはしない)の色変更ではなく。
878デフォルトの名無しさん
垢版 |
2021/05/31(月) 13:45:34.90ID:siYzGVpE
>>875
それは見つけ出したけど、その先がどうにもならんのですな
せめてユーザー辞書に変換できればいいんだけど、ままならにぃ…
2021/05/31(月) 13:47:13.65ID:R3lKsytn
>>876
それは、
SetWindowsHookEx() という Win32 API を使って、そのアプリの WindowProc
をフックして >>872 から書いた方法で処理すれば可能は可能。
2021/05/31(月) 13:49:03.09ID:sBIewd8V
>>877
重要なのか聞忘れてた、本来はスクロールバーを削除したかった。
(技術的に出来るかどうかはわからないけれど。なので色変更で見た目だけでも変えようと思っていた)

>>879
ありがとう。なんとかやってみる。
2021/05/31(月) 13:57:05.62ID:R3lKsytn
>>880
削除するのは、ScrollBarを持っている Window Handle(HWND) を見つけ出して、
その HWND の style の WS_VSCROLL BIT を OFF にすると良い。
それには、次の 2 つの関数を、nIndex = GWL_STYLE にして呼び出して、
C の BIT 演算子 & を使って、
SetWindowLong( hWnd, GWL_STYLE, GetWindowLong(hWnd, GWL_STYLE) & ~WS_VSCROLL );
のような感じにすると良い。

LONG GetWindowLong(
HWND hWnd, // handle to window
int nIndex // offset of value to retrieve
);

LONG SetWindowLongA(
HWND hWnd,
int nIndex,
LONG dwNewLong
);
882デフォルトの名無しさん
垢版 |
2021/05/31(月) 14:07:44.18ID:siYzGVpE
>>871
申し訳ありません、取り下げます
著作権を考慮してなかった
2021/05/31(月) 15:41:46.83ID:JG/9UOlz
>>881
詳しすぎて怖い
884デフォルトの名無しさん
垢版 |
2021/05/31(月) 16:03:21.67ID:RzB7O/B5
MVCでGUIアプリ作ってるとして
たとえばclickbuttonでupdateview()するとき

buttonはVに置いてあって
イベントハンドラとview作成・更新関数はどちらもCに置かれると思うんですが、
特にview作成・更新系はviewの側にある方がわかりやすくないですか? なぜCなのですか?
なんかctrl内で全部viewの操作だけしてる関数書いてると、これviewに置いて呼んだらいいんじゃ…ってなるんですが
2021/05/31(月) 16:10:45.68ID:C2PTAmxw
常識
2021/05/31(月) 16:52:44.20ID:yuRQ4tlS
>>884
viewの作成と更新は別
クライアントサイドのMVCの場合、viewの更新はview自身で行う

viewはmodelをobserveしておいて更新通知があれば
modelのデータを参照して自身の表示を更新する
887デフォルトの名無しさん
垢版 |
2021/06/01(火) 18:07:08.61ID:TvRQnady
いまファイラーみたいなの作ってるんですが
もしかしてWindowsと macて並び順ルール違う…?
888デフォルトの名無しさん
垢版 |
2021/06/01(火) 18:46:29.83ID:jlPUop4R
あれwindowsだけが特殊なんだっけ?
unixとlinuxとappleが同じ?
889デフォルトの名無しさん
垢版 |
2021/06/02(水) 09:40:46.56ID:GaQmuxPP
Windowsでも違うよ
fatとntfs
win2000とwinXPのエクスプローラー
890デフォルトの名無しさん
垢版 |
2021/06/02(水) 10:09:42.28ID:qtmfAhQ7
國際的な統一ルールって無いだろ
ある意味ソート順は文字コードより深刻
2021/06/02(水) 10:52:53.45ID:mu/qOIRp
文字コードは深刻
https://temita.jp/wd/92610
2021/06/02(水) 10:57:53.92ID:OB6uFVNq
>>884
V でプログラミングしては、いけない。
コード・ロジックを書いちゃいけない。
単純なものだけを書く

C でも同じ。
ビジネスロジックは、M に寄せる

そうすると、Skinny Controller, Fat Model になるので、
サービスオブジェクトなどに分ける

Ruby on Rails ではデザインパターンを、10年以上論争してる
2021/06/02(水) 12:32:53.15ID:CU1CYdh8
Fat Modelって需要あるのか?
大きいサイズ用?
894デフォルトの名無しさん
垢版 |
2021/06/02(水) 12:46:41.93ID:sSbsV05j
俺はMにV渡さないで
パーツインスタンスをまとめたVC作って
VCでV系のコードを書くのが好き
そうするとVとMでいい感じのコードバランスになる
C自体はユーザーからのアクションの受けだけする
895892
垢版 |
2021/06/02(水) 13:14:23.79ID:OB6uFVNq
Ruby on Rails では、

V は単純に、M はDB とのインターフェースだから、
C にビジネスロジックを書いていた。
そこで、Cが肥大化した

そこで、ビジネスロジックをモデルに移した。
それが、Skinny Controller, Fat Model。
そこで、Mが肥大化した

それで、サービスオブジェクトへ分離するようになった

フォームオブジェクト・サービスオブジェクトなどは、
Railsが作ったデザインパターン

Railsは議論・デザインパターンの宝庫だから、
初心者が最初に学ぶべきフレームワークとして推奨されている

プログラミングの筋が良くなるから。
全言語の底上げになる
2021/06/02(水) 13:37:04.27ID:TLQmjHpv
Rails案件も減ってRubyの人気も低迷してしまっているこのご時勢にあえてRailsから入る奴はいないよな
他の言語ではRails以降に作られた優秀なフレームワークがあるんだし
897デフォルトの名無しさん
垢版 |
2021/06/02(水) 17:40:34.57ID:qtmfAhQ7
vue.js
2021/06/03(木) 00:45:27.16ID:KAyuKPOb
LLVM なんかの external hidden 属性の意味が分からん。
static int s_a;
と書いた場合、そもそも、s_a のシンボルは、そのファイルの *.o の外には
export されないので、他の object からは extern しても見ることが出来ない。
なら、external hidden とは何をやっているんだろう。
リンカに -shared を指定して、複数の *.so を 1 つのshared library libaaa.so
にまとめた場合の話なんだろうか?
libaaa.so の外には export されないが、libaaa.so の中に入っている *.o
同士では見えるというような?
2021/06/03(木) 12:04:35.12ID:QPjYtuh2
情報流出のニュースがよく流れてるが
ブラウザやフレームワークはかなり安全になってるし脆弱性を作り込むことあるかね?
2021/06/04(金) 02:46:12.39ID:T0+OILo8
JSで月を入力して日数を表示するようにしたいんだけど
nisssu = [0,31,28,31,30,31,30,31,31,30,31,30.31];
tuki = prompt("月を入力してください");
alert(nisssu[i]);
この構文だとエラーが出て正しくはalertt(nisssu[tuki]);になるらしいだけど、入力した値からnissuの配列に合わせたiを表示させたいって考え方って間違ってる?
正解の(nisssu[tuki]の流れが腑に落ちないんだけど
2021/06/04(金) 07:16:14.42ID:HA+SG9aG
iはどこから来たのか
tukiはどこへ行くのか
表示したいのは何者か

何ひとつ腑に落ちない
2021/06/04(金) 07:16:25.36ID:56OCEghC
>>900
iという変数は出てきてないよね
promptの結果をtukiに入れてる
だからそれが使われる
2021/06/04(金) 08:41:42.14ID:5QdjaX9T
iを配列の添字の変数だと思っているのかな
for文でみんな説明もなくiを使うから……
904デフォルトの名無しさん
垢版 |
2021/06/04(金) 09:40:51.24ID:6dOQNCq3
データを置く階層は深いところよりも浅いところの方がプログラムの処理速度は速いですか?

例えば、C:\Users\xxxxx\Documents\Product_A\Lot_B\Each_C\の下の\Dataフォルダよりも
C直下に置いた\Dataフォルダの方がプログラムの処理速度は速いですか?
それとも処理速度は同じですか?

コンパイル後に
C:\Users\xxxxx\Documents\Product_A\Lot_B\Each_C\ が
直アドレスに変換されているなら速度は同じだと思うんですが・・・
2021/06/04(金) 09:53:20.89ID:BzCokzlM
>>904
理論的には、ファイルパスが長いとその分ファイルパス自体に対するメモリアクセスが僅かに遅くなったり、
ディスク上のインデックスを探索してファイルを探すのが経路が伸びて僅かに遅くなったりする可能性はある
しかし現実にはファイルの中身の読み書きの方が圧倒的に時間がかかるため、「全く」影響しない
2021/06/04(金) 15:52:56.72ID:T0+OILo8
>>901-903
別の問題の配列に5,3,7,8,9を入れて全ての数字を表示させなさいっていうのでは、numの{}内の数がiに置き換わってるんだけどこれはどういうこと?
num = [5,3,7,8,9];
for(i=0; i<5; i++) {
alert(num[i]);
}
これに倣って>>900のnissuの[]内もiに置き換えることが出来るんだと思ってしまったんだけど
2021/06/04(金) 15:55:44.80ID:T0+OILo8
すみません、タイプミスしてたんでもう一度投稿しました
>>901-903
別の問題の配列に5,3,7,8,9を入れて全ての数字を表示させなさいっていうのでは、numの[]内の数がiに置き換わってるんだけどこれはどういうこと?
num = [5,3,7,8,9];
for(i=0; i<5; i++) {
alert(num[i]);
}
これに倣って>>900のnissuの[]内もiに置き換えることが出来るんだと思ってしまったんだけど
2021/06/04(金) 17:15:35.77ID:T0+OILo8
すまん、理解した
for文だとカウンタ変数としてiが使われるけど[]内が全てiに置き換えられるわけじゃないってことか
流れで勉強してたからごちゃごちゃになってしまった
どうもありがとうございました、すっきりしました
909デフォルトの名無しさん
垢版 |
2021/06/04(金) 18:48:06.96ID:0c0chM5J
やっぱり最初は変数宣言が必須の言語
がいいね
2021/06/04(金) 23:39:50.39ID:6dOQNCq3
>>905
何億回とアクセスするので、その僅かが気になるんですけどね。
パスの長さで差があるのであればやはり短くします。
ありがとうございました。
2021/06/05(土) 00:15:38.71ID:Bf3C1+0O
そんな質問してる程度のレベルならそんな無意味なオナニーよりももっと他にいくらでも遥かに速くできる余地があるはず
まあその辺の感覚はいずれわかってくる
2021/06/05(土) 00:27:10.73ID:f5S9H8yw
>>910
>>905に書いてるのはファイルアクセスのたびに差が出る項目じゃないでしょ
本当に気になるなら実測すればいい
2021/06/05(土) 00:37:40.19ID:qhZUuBmz
GHzってCPUの能力のスケール感がわかってなさそう
2021/06/05(土) 01:27:20.96ID:wpsN2NXu
1
1,000 = K
1,000,000 = M
1,000,000,000 = G

1秒間に 1,000,000,000 回命令を実行できるんだYO!
1,000,000,000 っていうのは 10億回だYO!
2021/06/05(土) 06:02:44.65ID:N52Z5yzZ
かもしれない運転で最適化しはじめたらキリがない
2021/06/05(土) 08:09:28.70ID:Is+ZM/MZ
コンピュータの世界で1Kが1000とか冗談やろ?
1024と言えよ
2021/06/05(土) 10:38:59.26ID:5ExJ61TU
ほんとうの問題点は、プログラマたちが誤った場所と誤った時点での効率について苦労して、多くの時間を浪費してしまったということにあります。プログラミングでは、時を得ない最適化は諸悪の根源なのであります。(すべてではないにしても、少なくとも悪の大部分と言えるでしょう。)
─ドナルド・クヌース
2021/06/05(土) 10:42:30.14ID:5jYpQazu
>>916
君こそ冗談やろww
2021/06/05(土) 11:02:57.99ID:4ow2Od2a
CPUの処理能力の問題じゃなくてアルゴリズムのオーダーの問題
2021/06/05(土) 11:17:55.32ID:5ExJ61TU
コンピュータサイエンスに限らず、実測してみる、定量的に判断する、そういう科学的なリテラシーが身に付かなかった人は伸び悩むと思う
921デフォルトの名無しさん
垢版 |
2021/06/05(土) 11:35:19.11ID:wpsN2NXu
>>917
> プログラミングでは、時を得ない最適化は諸悪の根源なのであります。

可哀想なことを言うなよ・・・
Googleだって自分らがやってることに意味があるんだって
必死に最適化した理由をひねり出してるんやで

Google、「Chrome 91」は23%高速化 V8エンジン改善で
https://www.itmedia.co.jp/news/articles/2105/31/news070.html
>  Googleは「これらの新機能により、Chromeは最大23%高速になり、
> 毎日のCPU時間を17年間以上節約できることになる」としている。

ほらな、最適化することで毎日のCPU時間を
17年間以上も節約できるんや。17年間やで17年間。
凄いやろ?


Chromeユーザー33億人全員の累計時間だけどな
17年=536,112,000 秒 ÷ 30億人 = 一人あたり1日 0.18秒の節約
2021/06/05(土) 12:29:56.42ID:CL+eGbWy
エコだね
素晴らしい改善効果だ
2021/06/05(土) 13:40:34.07ID:Fz1ER27V
>>921
ネタにマジレスですまんけど、それは時を得ないという前提条件を満たしてないな
性能とセキュリティ、プライバシーは現代のブラウザシェア争いの主戦場でもある
それとも>>904が作るプログラムがChrome並に世界中で稼働するという主張かな?
2021/06/05(土) 15:09:40.69ID:kVxFyEBS
ボトルネックがどこか分かって最適化するんなら普通の話だな
925デフォルトの名無しさん
垢版 |
2021/06/05(土) 18:25:56.31ID:wpsN2NXu
>>923
ん?何の話をしてるのかわかってない?

1日でたったの0.18秒しかCPU時間が減ってないのに
それを大幅にCPU時間の削減したように見せかける
Googleの涙ぐましい努力(笑)って話をしてるんだけど
2021/06/05(土) 19:09:17.63ID:ZdF2Vraf
>>925
俺の引用に対して「可愛そうなこと言うなよ」という話の持って行き方は噛み合ってなくて無理があるってツッコミだよ
改善の結果が技術的には小さなものだっとしても顧客や市場が好意的に反応するならその戦略は正しくペイしている
もし市場が好意的な反応を示さなかったことが判明しているならGoogleがアワレな言い訳をしているという主張にも理解するよ
Chromeの話が個人的に面白いと感じて誰かに言いたかったんだろうなということはよく伝わった
927デフォルトの名無しさん
垢版 |
2021/06/05(土) 20:04:48.90ID:wpsN2NXu
Googleが誤った場所と誤った時点での効率について苦労して、多くの時間を浪費してしまってるってことが
わかってないのか。

1日でたった0.18秒の節約。たった
2021/06/05(土) 20:28:50.98ID:f5S9H8yw
原文読めないってのは悲しいね
929デフォルトの名無しさん
垢版 |
2021/06/05(土) 21:07:38.83ID:wpsN2NXu
"毎日"17年間節約っていうのを疑問に思わなかったんだろうなw
原文見ればどういう計算なのか明らか
2021/06/06(日) 05:32:12.41ID:sH+YYhze
DBサーバーからデータ取得する際、多数の項目で絞り込みが必要になってます。
例えば、ユーザーマスターから、下記条件を満たすユーザーを検索する場合です。
※全部 AND です。

・登録日がA月B日〜C月D日の間
・パスワードの最終更新日時がA月B日〜C月D日の間
・都道府県IDが1〜10の間 (都道府県コードは1(北海道)〜47(沖縄県)みたいに割当)
・誕生日がA月B日〜C月D日の間
・結婚日がA月B日〜C月D日の間
等々・・
こういう場合、一番最初の WHERE の条件で、出来るだけ絞り込むのがいいと思うのですが、
どの条件で一番絞り込めるのか不明な場合、どうすればよいのでしょうか?
2021/06/06(日) 06:16:52.71ID:XtTAwPVN
順番は関係ないし、DBMSのオプティマイザがよしなにやってくれる。
選択性の良いインデックスが張られている列に条件をつけているかどうかは考慮した方がいいが。
932デフォルトの名無しさん
垢版 |
2021/06/06(日) 11:21:12.75ID:9mmqAG88
>>910
ネタだろうけど
path長いのが嫌だからって
全部rootとか浅いところに持って来て
一つのディレクトリ内のエントリ数増え過ぎると
アホみたいにパフォーマンス落ち始めるときもある
933デフォルトの名無しさん
垢版 |
2021/06/06(日) 11:23:17.64ID:9mmqAG88
>>920
++
2021/06/06(日) 22:11:28.49ID:dJTGKVPN
デザインパターンとか設計思想とか全く分からないんだけど入門?としてこれ見るといいよってサイトとか書籍あれば教えて
935デフォルトの名無しさん
垢版 |
2021/06/07(月) 10:56:46.23ID:BLDePS2Q
>デザインパターンとか設計思想とか

普通の人は入門が済んでから手をつける
2021/06/07(月) 11:53:04.81ID:TrlL7E54
分かりづらくてすまん
デザインパターンの入門としておすすめの物が知りたい
プログラムはjava silverレベルで書ける
2021/06/07(月) 11:53:34.78ID:pl6618+T
デザインパターンの宝庫は、MVC(Model/View/Controller)のRuby on Rails。
15年ぐらい、ずっと議論してる

MVCの他に、Form オブジェクト・Page オブジェクト・Service オブジェクトとか、
MVCが肥大しないように、どんどん分離していってる

ただし、Railsはプロ用。
自社開発Web 系へ転職する人用

YouTube で有名な、雑食系エンジニア・KENTA のサロンが有名。
Rails, Linux, Docker Compose, Node.js(Webpack, Babel), Bootstrap
VSCode(Remote Container, WSL2 ならRemote WSL), Heroku, CircleCI、データベース

他にも、Udemy の山浦清透も、Railsを推奨している。
AWS Fargate を使うのなら、AWSのくろかわこうへいのサロン
938デフォルトの名無しさん
垢版 |
2021/06/07(月) 13:32:28.41ID:7qZ7vyBh
disp1に入力があればstate=loadedなので
if displ1.get():
__loaded時の処理
みたいなコードがそこそこあるんですが

is_loaded():
return bool(disp1.get())
みたいな関数作るのってどうですか。ダメですか?読みやすくなるけど…
939デフォルトの名無しさん
垢版 |
2021/06/07(月) 15:15:53.66ID:ZOzskMEE
AGPLライセンスのライブラリを使いたいのですがどこまでソースコードを公開すればよいのでしょうか?

1, moduleA.js - AGPLのライブラリを利用
2, moduleB.js - AGPLのライブラリは不使用
3, app.js - ルーティング処理
2021/06/07(月) 15:20:58.75ID:Fq1IXycO
AGPLはその趣旨からいってぜんぶ公開しないとだめだろ
2021/06/07(月) 15:22:58.27ID:TK3hG12A
>>938
disp1.get()に副作用がないならそういうメソッド抽出はありだと思うが
def is_loaded(self):
__return self.state == ‘loaded’
みたいに書ける設計のほうがベターだと思う
942デフォルトの名無しさん
垢版 |
2021/06/07(月) 16:49:27.94ID:ZOzskMEE
>>940
moduleBも公開しないとだめなんですね
ありがとうございます
943デフォルトの名無しさん
垢版 |
2021/06/07(月) 22:40:04.08ID:qUd3zbRZ
ttps://twitter.com/ozuma5119/status/1401851808939606022
これはどういう意味なのでしょうか?
https://twitter.com/5chan_nel (5ch newer account)
2021/06/07(月) 22:52:23.23ID:pXntu6ca
>>943
https://www.yodobashi.com.warui.net
始まりじゃなくて終わりが大事
みたいなことじゃ
2021/06/08(火) 00:53:14.54ID:u53qbkBm
ローカルネットワーク上のWindowsマシン同士でシンプルなTCP通信を行うプログラムを作成しているのですが、
ポート番号はどの範囲を使えばよいのでしょうか?

wikiによると、

0〜1023:一般的なポート番号
1024〜49151:登録済みポート番号
49152〜65535:自由に使用できるポート番号

となっており、49152〜65535を使えば良いかと思ったら
そこはWindowsが動的ポートとして使っているので使えないという情報があり、
それじゃあ全部使えないじゃないか、となっています・・・。
2021/06/08(火) 01:26:00.59ID:TOKjPAZ1
一般には
https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xml
とか眺めて使うといい

んで、皆さん勝手に使ってて衝突もざら
だから余程のメジャーなサービスが無いなら気にするほどのことじゃないと思う
2021/06/08(火) 06:48:16.57ID:dOMi6vvz
環境変数・コマンドライン引数で渡すとか、YML などの設定ファイルに書いておけば良い

そうすれば、ユーザーが自由に変えられる
948945
垢版 |
2021/06/08(火) 08:32:05.82ID:Ke53ZRWk
>>946-947
そういうことだったんですね!
ありがとうございました!
2021/06/08(火) 17:27:58.53ID:l2BAfpwt
>>945
基本的には>>946の言う通りなんだけど、サーバプログラム側の待ち受けポートに
0-1023は原則的に使ってはいけない
Wellknownポートといってシステムが使う範囲ということになっているので
950945
垢版 |
2021/06/08(火) 21:05:01.68ID:Ke53ZRWk
>>949
ありがとうございます!
さすがにそこは避けようと思ってました^^
951デフォルトの名無しさん
垢版 |
2021/06/08(火) 21:07:05.99ID:/pGHNa0l
既得権益を、、、ぶっ壊す!
2021/06/08(火) 21:14:25.34ID:TOKjPAZ1
そういや、ゾロ目の前後は競争率が高いとか散布図で図示した人って居なかったっけ?
別の話だったか?
2021/06/10(木) 01:48:32.39ID:WxJUiwPc
データベースの物理設計と論理設計ってどう違うんでしょうか?
どちらもテーブル間のリレーション設計するだけだと思うんですが
2021/06/10(木) 09:27:45.31ID:flmyYOFU
物理設計は具体的に何社のどれぐらいの容量のHDDをどこに置くか
もちろん電源容量とかコンセントの数が足りるかとかとか考える

論理設計は具体的にどういう論理的割り振りにするか考える
2021/06/10(木) 10:10:59.52ID:/rzZEgjK
実際明確な違いはないから気にしなくていいよ
基本的に、コピペで工数を水増しするための無意味な重複工程だと思っていい
>>954の言うようにハードウェア構成にまで踏み込むのが本来の物理設計なのだけど、
島猿SIではその辺はだいたいインフラの仕事なんでそこまで厳密にDBの設計との整合性は気にしないで適当に大きなハード買って適当にクォータ設定しちゃうケースが多い
956955
垢版 |
2021/06/10(木) 10:30:46.41ID:/rzZEgjK
ちなみに>>954を読むと物理設計としてハードウェアの枠を予め設計した上でその中身を論理設計するように読めるけど、これがまさに実態を表している
本来は全く逆で、論理設計の結果に基づいて物理設計でそれをどうハードまで落とし込むか決めるんだよ
オラクルとかのベンダーはまず自社の高い製品を買ってそれを前提に考えてほしいから逆にしたがる
2021/06/10(木) 11:50:52.24ID:8j/+Fuuo
>>953
シンプルに言うとどのHDDにデータを置くかって話だ
自作PCでも起動ドライブはSSDでデータはHDDだったりするだろ?
DBだとどこにデータを置いたら高速になるかとか、インデックスがピンと張れる方法だとか
どのドライブに何月のデータを置けばいいのかとかだよ
OracleMasterSilverぐらいの知識があれば多少は何をするのかわかると思う
まずはデータベースのテーブルがどこのHDDにあるのか、テーブルごと、インデックスごとにどういう割り振りに出来るのか
そういうところからはじめてみてはどうか?
2021/06/10(木) 14:33:39.07ID:dKgFtdxH
これが日本の現状なのか
それともこの板だけ異常に低レベルなのか
2021/06/10(木) 14:38:57.39ID:vnbWNdgf
>>953
一般的なプログラマーはDBの論理設計の経験がないから物理設計との違いをよく理解してない

DB板で聞くか自分でググれ
ついでにリレーションの意味もググれ
2021/06/10(木) 20:18:57.75ID:S0Lqp3Qd
>>955
でもお金で解決できるなら何も問題はないのでは?
下手にケチってピーキーに設計すると泣くぞ
2021/06/10(木) 20:21:09.20ID:S0Lqp3Qd
足りなきゃ買えばいいんだよ、それが今のクラウド
しっかりとした物理設計なんて、ほとんど意味のない害悪
2021/06/13(日) 16:57:15.84ID:STYy7gJY
>>881
ちなみに横からなんだけど、
文中のSTYLE) & ~WS_Vにある

) & ~
この部分ってどういう意味?
963デフォルトの名無しさん
垢版 |
2021/06/13(日) 17:05:30.29ID:Ldya/JSY
) and not
2021/06/13(日) 20:56:19.05ID:STYy7gJY
>>963
すまん、ありがとう。
いや、そもそも横からなんだけどって言いかたが間違ってた。
普通に質問でよかった。
880あたりの書き込みは俺なのだが(880で書いてる一連のIDも俺)、
いま全力でCUIアプリからCについて勉強してる。
というより、このあとC++に進んでWINAPIもやらないと881にして頂いた話は何も進めないので、
正直泣きながらだ。
というより挫けてる。
Autohotkeyを使ってもGUI作成や32apiを使う点でつまるところWINAPIとセットでCやC++学んだほうがよさそうということで
はじめてはいるが、試練だなこれは。
よくわからん謎の開発環境?(VSではない)で、ウィンドウだけ出して喜んでるだけで、
その後が進まない。いや進めることができていない。
2021/06/16(水) 19:45:11.88ID:181t9wct
昔のPS3やPS2のオフラインゲームでチートを作りたいから
アセンブラを学ぼうと思ってるのですが
https://gyazo.com/c0df66fb2407b84711fe5b62890f58a2
↑こういうの見て理解が出来るようになるにはx86アセンブラというのを覚えればいいんでしょうか?
2021/06/16(水) 21:37:33.32ID:AzDBz8je
>>965
そもそもアセンブラレベルでパッチあてたりするには相当な理解力が無いと無理だから諦めたほうがいい
2021/06/16(水) 22:17:06.52ID:181t9wct
>>966
オフラインのゲームなので
ollydbgやcheat engineの中身が読めるようになればいいです。
そこまで難しいレベルのことはやろうとしてないです
2021/06/16(水) 22:40:53.92ID:7CrzTbcp
>>965
いわゆるリバースエンジニアリングと呼ばれる分野だが質問内容を見る限り全然足りていないように見える
コンピューター内で計算はどのように行われるのか、データの移動はどうするのか、周辺デバイスやOSの利用は
どうするのかなど低レイヤーの理解が無いと全く歯が立たないと思う
ちなみにCPUだがPS2はMIPS系、PS3はPPC系だ
以前に見たPS3のゲームを解析レポートだと確かIDAにPPCのプラグインを組み合わせて静的解析していたかな
それでもそれでも結構な知識と経験がいると思うが
とりあえずOSやISAの違い無視してもOllyDbgでWinゲームの改造は朝飯前くらいじゃないと話にならないのでは
2021/06/17(木) 07:38:07.73ID:B6QT+gV0
x86アセンブラを覚えるには他のプログラミング言語同様
ハローワールドからやって覚えていくもの?
それともPCのオフラインゲー解析してたら覚えられるんでしょうか。
2021/06/17(木) 07:46:05.74ID:IuszbmHt
アセンブラはCPUごとのレジスタやらメモリマップやらアドレッシングやら命令ごとのフラグへの影響やら、基礎を固めないと何もできない
2021/06/17(木) 07:57:57.58ID:hZaFEnho
>>965
すでにそういうツールやノウハウがあるんだったら
そのツールの解析からはじめたほうがいいと思う
2021/06/17(木) 08:42:16.10ID:B6QT+gV0
>>971
ツールの使い方はググって何とかなるのですが
https://gyazo.com/63c5590c01c304c07ff3a5c17a5d46ac
こういうの全く読めなくて手も足も出ない状況です・・
これに出てきてるのは何系のアセンブラなんでしょうか?
2021/06/17(木) 08:59:56.36ID:MdpjMllh
>>972
ググって答えが見つかることしか分かりませんて状態なら、無理だから諦めろと言いたい
基礎的な知識がまったくない状態だから、遠回りしてでも基礎から地道に積み重ねるしかない
2021/06/17(木) 09:45:33.10ID:hZaFEnho
>>972
SPU Assembly Language Specification
2021/06/17(木) 10:55:12.84ID:B6QT+gV0
>>973
学ぶ意欲はあるので遠回りしてでも習得したいのですが
基礎的な必要知識がなんなのか分かってない状態です
2021/06/17(木) 11:04:32.10ID:MdpjMllh
>>975
必要なところだけピンポイントで足場を固めて積み上げるなんてできないから、広く浅くでコンピュータやプログラミングの全般的なことを学びながら、段々に自分に必要な物が見えて来るようになるからそちらを深掘りしていくようにしたら?
2021/06/17(木) 11:54:29.83ID:hZaFEnho
念のため補足しとくけどドキュメントの名称だからな
ここに全部書いてあるから
2021/06/17(木) 13:47:27.99ID:xNFu7F8M
wikipediaでx86を調べて
そこでわからない単語を片っ端から
wikipediaやググってみたら?
2021/06/17(木) 15:36:52.47ID:rI4RyUy5
PS2やPS3のゲームを改造したいのになぜx86なのか。それが判らない
2021/06/17(木) 17:14:07.40ID:ooZzmu2N
>>972の内容は、まぁexeだしレジスタ名称とかニーモニックからX86だろうけど
アセンブラって基本的な部分はある程度同じなんで、いきなりX86とかMIPSとか
PPCとかフル機能のCPUのアセンブラから勉強しようとするとすぐに詰むよ

アセンブラを眺める程度ならHP拾い読みでも良いけど、開発とかを行うならば
もう少し簡単なPICとかのアセンブラをしっかり勉強してからの方が近道だと思うよ

そして根本的な話でPS2とかPS3とかの開発をしたいならば別にアセンブラを
使わなくてもC++のSDKとか開発されているので、よほど低レベルな部分の
開発を行うのでなければアセンブラ必要ないよ

ps2 sdkとかps3 sdkで検索してみて
981デフォルトの名無しさん
垢版 |
2021/06/17(木) 19:05:41.15ID:JkvBpemd
>>980
コンパイラが吐いたフル機能使いまくりのコードを
逆アセして読み解こうとしている天才がいるんだよ
アセンブラの命令すらマニュアル無しで解読する能力の持ち主なんだ
すごいだろ?
2021/06/17(木) 19:46:46.81ID:mjY/8PfV
チートの程度にもよるけど、やねうらおの書籍「解析魔法少女 美咲ちゃん」は参考になったよ
2021/06/17(木) 20:28:00.57ID:IuszbmHt
その昔の素朴なCPUだと16進ダンプを直読みする強者が
2021/06/18(金) 11:44:25.11ID:DLEaHmmC
日本では、情報処理試験の仮想アセンブラ・CASL2 が基本。
世界では、LLVM のサイトで、仮想アセンブラを学ぶ

x86 なら、OllyDbg・やねうらお・うさぴょんが有名
985デフォルトの名無しさん
垢版 |
2021/06/18(金) 12:03:44.02ID:7Huy+AZL
漏れもやねうらは好きな方だが
初心者ならやねうらより
ISBN 4839909865
2021/06/18(金) 12:32:20.21ID:194Cy0xO
CASLはどうみても68系ベースの簡略版で、68プログラマーでもあった俺はインストラクション眺めただけで楽勝だった
2021/06/18(金) 12:35:29.33ID:/PK0wqbC
gyazoとかいうゴミで画像貼んな
988デフォルトの名無しさん
垢版 |
2021/06/18(金) 13:39:45.56ID:WThQkiL7
func(list):
_if list[0]=a:
__for i in list:
____conv_a(i)
____write(i)

_elif list[1]=b:
__for i in list:
____conv_b(i)
____write(i)

空撃ちしたときと本番で処理違うみたいなので
こう書きがちなんだけど、よくないなっていう自覚があります
配列→微妙に異なる処理→出力 のとき、どう書いたら上手いですか?
2021/06/18(金) 13:46:33.95ID:Jo75oGSb
>>988
仕様がクソならコードもクソにしかならん
そういう状況になるのはたいてい抽象化がヘタクソ
990デフォルトの名無しさん
垢版 |
2021/06/18(金) 14:15:44.89ID:ru+U9KL5
python で代入文は if の条件に描けないぞ
2021/06/18(金) 14:18:50.64ID:H41XlXnl
>>988
Pythonぽいけどdefないし等号も違うから何の言語か分からなかった
Pythonみたいに関数を変数に入れられる言語なら最初に適用する関数を決めるとすっきりしそう

func(list):
 # 適用する処理(conv)を設定
 if list[0] == a:
  conv = conv_a
 elif list[1] == b:
  conv = conv_b

 # リストに処理を適用して出力
 for i in list:
  conv(i)
  write(i)

aとbでlistのインデクスが違うのが気になったけど無視する
2021/06/18(金) 14:22:04.15ID:EhVYURYt
変数名に list 使うな

func(l):
if l[0] != a && l[1] != b: return
f = (conv_a, conv_b)[l[0] != a]
for i in l:
f(i)
write(i)
2021/06/18(金) 14:27:15.83ID:rMpkljNE
>>990
正確には
Pythonでは代入は文なので、条件式には入れられない。
Cなどでは代入が式なので条件式にも入れられる。
2021/06/18(金) 14:40:28.04ID:dSkONN1n
>>988
>配列→微妙に異なる処理→出力 のとき、どう書いたら上手いですか?

高階関数を使う
995デフォルトの名無しさん
垢版 |
2021/06/18(金) 15:01:02.87ID:WThQkiL7
すいませんpythonスレじゃないので曖昧な書き方のがいいのかなと思って…
def func(l):
_if l[0][0] == 0:
__for i in l:
___write(conv_a(i))

_elif[0][0] == 1:
__for i in l:
___write(conv_b(i))

です.ほんとは各処理もうちょっと関数続くんですけど
いずれにせよ途中だけが微妙に違うほぼ同じ処理をきれいに書きたい

>>991
おー.見やすいです
996デフォルトの名無しさん
垢版 |
2021/06/18(金) 15:45:26.03ID:PuJK3NPt
>>991 は仕様(実装)にバグがある
2021/06/18(金) 17:03:01.08ID:194Cy0xO
うん、>>992のようにチェック入れるべきだね
でもreturnより例外吐くべきでは?
2021/06/18(金) 18:04:22.88ID:tKtuqq6N
責務の分離が上手くできてない関数の中身だけいじくり回してもキレイにはならないよ
呼び出し側やデータ構造なんかも含めて考え直さないと
2021/06/18(金) 18:38:56.71ID:9pPslW7o
メインルーチンとサブルーチンを明確に意識して
メインルーチンは処理の流れがわかるように
サブルーチンはテストして結果が出ればよしと分ける
1000デフォルトの名無しさん
垢版 |
2021/06/18(金) 21:22:28.52ID:FdpzvR5V
>>998
もっと具体的に言わないと役に立たないと思うが
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 118日 4時間 4分 34秒
10021002
垢版 |
Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況