21/06/18 22:50:39.76 dSkONN1n.net
この板はプログラムを作る人のための板です。
あらゆる質問はまず
スレ立てるまでもない質問はここで
スレにしてください。
【前スレ】
スレ立てるまでもない質問はここで 156匹目
スレリンク(tech板)
次スレは>>980が立てること
2:デフォルトの名無しさん
21/06/19 00:11:43.77 /MxA8Vde.net
いちおつ
3:デフォルトの名無しさん
21/06/19 15:42:29.07 zDrgWeBe.net
O2
4:デフォルトの名無しさん
21/06/19 16:43:35.86 0AcJPfX0.net
VSCodeを開いたら、
「Do you trust the authors of the files in this folder?」
と表示されたウィンドウが開いたのですが、
「Yes, I trust the authors」
を選択してよいでしょうか?
自分のフォルダには自分で作ったファイル、もしくはコピーしたファイルしか
無いはずです
5:デフォルトの名無しさん
21/06/19 17:32:04.57 i4Zr6T12.net
「I'm fine, thank you. How are you?」を選択したほうがいいですよ。
6:デフォルトの名無しさん
21/06/19 18:19:09.98 yJFBMMPB.net
VSCode のスレで聞いてください!
7:4
21/06/19 18:35:24.28 0AcJPfX0.net
>>5
ふざけないで下さい
>>6
分かりました
8:デフォルトの名無しさん
21/06/20 15:07:57.69 FtZdChRW.net
URLリンク(codepen.io)
このコードをreact+styled-componentsで再現したいんですが可能ですか?
9:デフォルトの名無しさん
21/06/20 20:46:45.75 bGnn/scA.net
React のスレで聞いてください!
10:デフォルトの名無しさん
21/06/21 18:46:39.32 2n43edWZ.net
今現在C++を始めたところで最終目標は簡単なゲームを作ることなのですが
同時に数学も復習してます
ゲームプログラムで使う数学知識は高校までで大丈夫でしょうか?
11:デフォルトの名無しさん
21/06/21 19:25:08.62 6C6uvD3w.net
>>10
こんなところでC++が中途半端に出来るだけが自慢の専門卒みたいな連中に尋ねるよりも
大学の先生かチューターの院生に尋ねた方がいいだろう
進みたい研究室があればそこに行って訊くと良い
12:デフォルトの名無しさん
21/06/21 19:33:00.93 6C6uvD3w.net
>>10
2次元なら三角関数と複素数とベクトルは必ずやっておけ。
これがないと、ミサイル発射や回転運動ができないぞ。
3次元なら行列や四元数もやっておけ。
13:デフォルトの名無しさん
21/06/22 00:06:04.03 UYz9BERd.net
質問失礼します。
Windows10 PCA(クライアント:192.168.10.84)から Windows10 PCB(サーバー:192.168.10.91:24901)に、gRPCの接続が上手く行きません。
PCAにサーバーを立ててPCAのクライアントソフトからの 127.0.0.1:24901 指定での接続は行えました。
ネットワークとインターネット→状態→Windowsファイアウォール→ファイアウォールとネットワーク保護→詳細設定で「受信の規則」と「送信の規則」は指定済みです。
PCA、PCB共にアンチウィルスソフトは導入していません。
他にどのような設定を行えばローカルネット内で接続できますでしょうか?
分かる方よろしくお願いします。
14:13
21/06/22 03:33:26.88 UYz9BERd.net
自己解決しました。
PCBでlocalhostで待ち受けるのではなく、192.168.10.91で待ち受ける必要があったみたいです。
正常に通信できました。
15:デフォルトの名無しさん
21/06/22 17:48:24.46 zbI9o8nA.net
こいつのプログラムのさ、
#include <stdio.h>
int main(void)
{
int value1 = 10;
int value2 = 20;
printf("1:value1 %d\n",value1);
printf("1:value2 %d\n",value2);
{
int value1;
value1 = 30;
value2 = 40;
printf("2:value1 %d\n",value1);
printf("2:value2 %d\n",value2);
}
printf("3:value1 %d\n",value1);
printf("3:value2 %d\n",value2);
return 0;
}
実行結果がなんで
1:value1 10
1:value2 20
2:value1 30
2:value2 40
3:value1 10
3:value2 40
になるわけ? 最後は3:value2 40でなくて3:value2 20やないの?
16:デフォルトの名無しさん
21/06/22 18:06:37.17 IhZgQU+B.net
>>15
value2は{}でくくられたブロックスコープの変数じゃなく外側のスコープの変数
その変数に代入してるんだから{}ブロックの後に参照する変数も同じ
int value2 = 20;
{
value2 = 40;
}
printf("3:value2 %d¥n",value2);
↑value2だけを見れば{}を削除しても同じ
17:デフォルトの名無しさん
21/06/22 18:14:18.63 zbI9o8nA.net
>>16
それだったらvalue1も
同じ考えで、最後の出力結果が
1:value1 10
1:value2 20
2:value1 30
2:value2 40
3:value1 30
3:value2 40
になるんちゃうの?
value1だけみると最初の出力結果が10はわかるし、
次の出力結果が{}ブロックの30もわかるし、最後の出力結果は最初に宣言された10がそのままなのもわかるけど、
value1の値をベースに考えるならvalue2も20、40、20と変かするんじゃないの???
何かの優先順位とか無視されるとか関係がある?
18:デフォルトの名無しさん
21/06/22 18:26:51.71 gd06pWcX.net
{
int value1;ローカル変数外側からは触れない外側のvalue1とは別物
}
19:デフォルトの名無しさん
21/06/22 18:47:01.58 zbI9o8nA.net
value2は使えてて3回目でもそのままブロック内の表示なのがわからん
value1と同じ道理やないんかい…
20:デフォルトの名無しさん
21/06/22 19:35:16.74 VNXyPYaA.net
そのコードだとvalue1だけ同名で2つ宣言されてるから振る舞いが変わってるだけ
value2は1つしか宣言されてない
違うことを書いているから違う振る舞いをしているというのが道理だよ
21:デフォルトの名無しさん
21/06/22 19:40:46.28 zbI9o8nA.net
ブロック{}内がint value1;だけやわ
int value2もあるおもってた
ああああああああああああああああああああああぶぐぐぐぐぶtっちちブリブリブリブリュリュリュリュリュリュ!!!!!?!ブツチチブブブチチチチブリリイリブブブブゥゥゥゥッッッ!!!!!!!
22:デフォルトの名無しさん
21/06/22 19:42:26.31 zbI9o8nA.net
問題はなぜあると思ってたやけど、
ただコピペして実行して眺めてただけで自分で書いていないから気づいていなかったのかもしれない
23:デフォルトの名無しさん
21/06/22 23:01:13.33 zbI9o8nA.net
>>20
最も説明が上手だったのではなまるを進呈します
他はなにもしません。説明下手糞。
24:デフォルトの名無しさん
21/06/23 07:26:30.14 o1CBRtXz.net
GCCとかClangは-Wshadowつけてコンパイルするとすぐ気づけるよ
25:デフォルトの名無しさん
21/06/23 13:20:41.56 6jEPjWCz.net
こういう馬鹿を防止するために
python は global を使うことにした
26:デフォルトの名無しさん
21/06/24 23:28:11.86 2tLDl2Dd.net
入門レベルです
写経をするのが効果的な学習だと言うのでツイッターの写経をしたいのですがどうすればツイッターのコードを確認出来ますか?
それから競技プログラミングを始めてみたいのですがどのくらいの数学力が求められますか?また他に学習したほうがよい科目はありますか?
よろしくお願いします
27:デフォルトの名無しさん
21/06/24 23:38:58.07 KFTtHP2O.net
>>26
ツイッターはスマホアプリとウェブアプリの二種類ある。スマホアプリのツイッターの主要ソースコードは非公開。
ウェブアプリのツイッターは一部はHTMLとして閲覧可能。見たいならブラウザの「開発者ツール」の「HTMLソース表示」を選ぶ。しかし、見たとしても多分理解できない。
字数制限があり、画像が劣化するツイッターのコンテンツで学習するのは、間抜けのすることだ。
28:デフォルトの名無しさん
21/06/24 23:52:28.90 KFTtHP2O.net
>>26
ツイッターのソースコードそのものを見ることは出来ないけど、ツイッターのAPIでツイッターアカウントを操作することはある程度できます。「ツイッター API 使い方」で検索下さい。
29:デフォルトの名無しさん
21/06/27 12:18:36.39 nMVoFJ85.net
初心者です。
特定が怖いので言語は書けないですが、質問です。
連続するIf3つ(入れ子でも構わない内容ですが、質問の主旨とは関係ないので省きます)とフラグ変数があり、どのIfもELSEのときはフラグをfalseにします。
いずれかのIfがTRUEのときはフラグをtrueにします。
そこで先輩が書いたコードは、フラグを初期化せず、Ifの度にフラグにtrueかfalseを入れるでした。
自分ならフラグをfalseで初期化して、IfでTRUEを通るときにフラグをtrueにする、途中でフラグをfalseにすることはしないと考えました。
先輩に何故そのような書き方をしているのか質問したところ、お前と俺どっちでも変わらないだろ?と答えにならない答えが返ってきました。(指摘に対して逆ギレ感もありました。)
自分としては後者のほうが記載する行数が減るのではないかと思っています。
1.一般的には前者、後者どちらの書き方が好まれるのでしょうか?
2.前者の書き方は何故そのように書いているのでしょうか?(書いた本人ではないのでお門違いな質問だとは思いますが)
会社で質問していい人がその先輩だけで、会社では解決の見込みがないため、こちらで質問させていただきました。
30:デフォルトの名無しさん
21/06/27 12:36:28.03 U1pSP8r9.net
関数型なら先輩ωが多かったりする
31:デフォルトの名無しさん
21/06/27 12:40:48.52 fEg0B4MU.net
初期値アリがいい
初期値があるとルート間違えでセットされなくても安心(バグったとき一定の値になるだけだけど
整数値に初期値0で真は正/偽は負、判定のあとに本命のフラグをセットで初期値ならアサート、というのは偏執的か?カバレッジしたほうが良さそう
論理演算でセットする人がいるけど、読みづらいデバッグしづらいんで嫌い
32:デフォルトの名無しさん
21/06/27 13:03:11.10 QgJ3BdIm.net
>>31
> 論理演算でセットする人がいるけど、読みづらいデバッグしづらいんで嫌い
読み辛いのは慣れの問題だしデバッグし辛いとか意味わからん
33:デフォルトの名無しさん
21/06/27 13:03:50.67 Ik2VZPYL.net
先輩のコードがよくわかんないな
疑似コードで書いてほしい
俺ならこんな感じ
boolean f = a()
|| b()
|| c()
もしこれでデバッグしにくいと言われたらデバッガうまく使おうよと思う
34:デフォルトの名無しさん
21/06/27 13:20:33.09 fEg0B4MU.net
>>32
boolean flag = ((a==2) || ((b == 3) && (c == 4)) || ……)
とかあっても慣れれば問題ないとかいうならば、そうなんだろうな
貴方の中では
35:デフォルトの名無しさん
21/06/27 13:26:04.25 rwRscjwG.net
>>34
ごめん、その程度を読み辛いと言われるとは思わなかったわw
36:デフォルトの名無しさん
21/06/27 13:34:53.57 Ik2VZPYL.net
>>34
元のお題が3つの論理和なのに条件を大幅に複雑化して後出しされても共感できないや
37:デフォルトの名無しさん
21/06/27 13:53:01.68 Ik2VZPYL.net
>>36
いや …… の部分は3つ目の条件が省略されてるだけか
38:29
21/06/27 14:58:45.90 TNEQvhGc.net
みなさん、レスありがとうございます。
言語は関数型ではないです。
あくまでもイメージですが、↓が先輩と自分の書いたコードです。
if(a == 1) {
flg = true
} else {
flg = false
}
if(b == 1) {
flg = true
} else {
flg = false
}
if(c == 1) {
flg = true
} else {
flg = false
}
flg = false
if(a == 1) {
flg = true
} else if(b == 1) {
flg = true
} else if(c == 1) {
flg = true
}
39:デフォルトの名無しさん
21/06/27 15:39:34.81 LDeziwkB.net
>>38
それコードの動き違うだろ
パイセンのコードだとa, b関係なく
flag = c == 1;
と同じだし
40:デフォルトの名無しさん
21/06/27 16:31:27.12 FgMNC6o4.net
新人さんが勘違いしていると信じたい
じゃないとパイセン残念すぎる
ところでこういう書き方も割と好きだ
boolean flg = false
flg |= a == 1
flg |= b == 1
flg |= c == 1
41:29
21/06/27 16:38:36.74 5bWGSIm2.net
>>39
誤解させてすみません
>>29
連続するIf3つ(入れ子でも構わない内容ですが、質問の主旨とは関係ないので省きます)
書き直します。
あくまでもイメージですが、↓の上が先輩、下が自分の書いたコードです。
初期化とフラグを立てるコードの数についてご意見いただきたいです。
長いと言われたので分けます
42:29
21/06/27 16:39:23.02 5bWGSIm2.net
続きです。
if(a == 1) {
flg = true
} else {
flg = false
}
if(b == 1) {
flg = true
} else {
flg = false
}
if(c == 1) {
flg = true
} else {
flg = false
}
--------
flg = false
if(a == 1) {
flg = true
}
if(b == 1) {
flg = true
}
if(c == 1) {
flg = true
}
43:デフォルトの名無しさん
21/06/27 16:49:00.64 rwzQBskA.net
何を指摘されてるのかわかってないのか?
先輩も大変だろうな…
44:デフォルトの名無しさん
21/06/27 16:55:03.28 FgMNC6o4.net
if(a == 1) {
flg = true
} else {
flg = false
}
if(b == 1) {
flg = true
} else {
flg = false
}
ここまでの処理は全く意味がない
何故ならflgの値は以降の処理だけで決定されるから
if(c == 1) {
flg = true
} else {
flg = false
}
45:デフォルトの名無しさん
21/06/27 16:57:36.69 FgMNC6o4.net
模式的に簡略化して書くにしても、大事な部分の挙動が変わってしまうような変形をしては評価のしようがないんよ
46:デフォルトの名無しさん
21/06/27 17:02:13.93 5bWGSIm2.net
>>44
ありがとうございます
おききしたいことを無理やりコードに置き換えたのでおかしくなっていました
47:29
21/06/27 17:09:17.92 5bWGSIm2.net
>>46
スレ汚し失礼しました
消えます
48:デフォルトの名無しさん
21/06/27 20:05:10.85 H5H1GujA.net
state = test1()
if state:
state = test2()
if state:
state = test3()
…
で。
49:デフォルトの名無しさん
21/06/28 00:02:36.32 nAZQiB+h.net
windowsでueliというランチャーを使っています
このランチャーは検索がよくできていて、
「abc」と入力すると「a,b,cを名前のどこかに含んだアイテム」が表示されます
たとえばPowershell7を出したい時には「p7」だけでOKです
検索文字列を一文字ずつに分解してANDで検索する、
こういう検索のやり方に名前は付いているのでしょうか?
50:デフォルトの名無しさん
21/06/28 11:00:48.94 vBhG8qZi.net
フルページエクスペリエンスてどんな機能ですか。
直訳だと全ページ表示だそうですが、、、
51:デフォルトの名無しさん
21/06/28 12:34:06.03 bIZ7S0Sd.net
if(a & 0x001100 == 0x000000)...
if(a & 0x001100 == 0x000100)...
if(a & 0x001100 == 0x001000)...
if(a & 0x001100 == 0x001100)...
みたいのはマスク処理だろうから意味あるんだろうけど
if(a & 0x001000 == 0x000000)...とか
if(a & 0x001000 == 0x001000)...とか
見かけると無駄なことやってんなーって思いませんか?
52:デフォルトの名無しさん
21/06/28 12:36:05.18 bIZ7S0Sd.net
>>29
>>45
>お前と俺どっちでも変わらないだろ?と
辻褄が合わんな
53:デフォルトの名無しさん
21/06/28 17:53:32.13 d9trmbXj.net
>>28
ありがとうございます。
54:デフォルトの名無しさん
21/06/29 03:10:36.82 ttuED5qE.net
きついわ
55:デフォルトの名無しさん
21/06/29 14:49:07.22 edg19jFc.net
ユニットテストでテストデータ生成に処理を書いていいもんなの?
組み合わせが多いとベタ書きはかなりキツい
エクセルやスクリプトで事前に計算して結果データをベタ書きしたフリしてコピペするのはメンテナンス性が悪いからやりたくない
56:デフォルトの名無しさん
21/06/29 15:02:48.91 GKt8cNqa.net
不安ならユニットテストにテスト書けばいいのでは?
57:デフォルトの名無しさん
21/06/29 19:18:02.22 pMozYOt+.net
>>55
いいけど被テストコードを流用したら意味ない事ぐらいは理解してるよね?
58:デフォルトの名無しさん
21/07/02 08:14:09.77 rz2f8HXN.net
すみません
クラッシックASPというのでWebサーバー側でVBSを使っています。
そのVBSでエンティティクラスを作成して使おうとすると、設定している画面からセッションを介在して他の画面に遷移するとプロパティが拾えません。
クラス自体は別のファイルに切り分けて生成してセッションに設定している側の画面、セッションから読み取って値を取得している側の両方にIncludeしています。
値を取得する画面でセッションの内容をTypeNameで見てみると生成したクラスの名前が表示されているのでスコープ切れでは無さそうです。
どなたか、何故エンティティクラスのプロパティが拾えなくなるのか理由をご存知の方はいらっしゃいませんか?
出来ればどうすればプロパティを取得出来るようになるか解決策をご教授して頂けるとありがたいです。
59:デフォルトの名無しさん
21/07/02 09:31:56.49 vlGsvLXY.net
すげえ遺物で開発してるんだな
開発じゃなくて保守?
これが日本の惨状なわけだ
60:デフォルトの名無しさん
21/07/02 13:01:27.25 t4sxB6eQ.net
>>58
VBScriptのクラスはSessionやApplicationには入れられない
そういう仕様なので他の方法でページ間の受け渡しをするか
文字列とかにシリアライズしてからセッションに入れるか
61:デフォルトの名無しさん
21/07/02 14:10:40.18 rz2f8HXN.net
>>60
ありがとうございます
とりあえずエンティティクラスで受け渡すの諦めてディクショナリに値詰め込んで渡しましたが
何かみっともないのとバカっぽいのと悔しいのとでクラスを渡すのを諦めずにいました。
そうか、シリアライズですね。
.Netであればシリアライズ化する方法分かるんですが、
VBSってどうすればシリアライズ化出来るんでしょうか?
もしご存知であればご教授頂けませんでしょうか?
62:デフォルトの名無しさん
21/07/02 15:34:51.20 aGtO0vHn.net
Androidの生体認証って複数人に対応できる?
今やってる仕事がデバイスを店舗スタッフで共同利用する形なんだけど
アプリのログイン処理(&ロック解除)がID/パスワード入力だと面倒だから生体認証にできないかという話になった
単にログインするだけじゃなく誰がログインしたかまで特定したい
63:デフォルトの名無しさん
21/07/02 16:06:30.22 vlGsvLXY.net
誰かの指切り落として使いまわしたほうが早いよ
64:デフォルトの名無しさん
21/07/02 16:09:03.99 edy12P9h.net
指紋複数登録すればいいのでは
65:デフォルトの名無しさん
21/07/02 16:18:51.96 xu7tv1xS.net
まだASPで動いてるところあるのかω
最後にみかけたの10年以上前だわωωω
66:デフォルトの名無しさん
21/07/03 03:06:53.44 TQLM8oVL.net
レンタルサーバー(さくらインターネット、ロリポップなど)のDB数という項目は、
MySQLのテーブルをいくつ持てるか、ということですか?
67:デフォルトの名無しさん
21/07/03 07:05:10.51 qr4oP3Jv.net
>>66
DB数はそのままデータベースの数でしょ
テーブル数はMySQL自体は制限なしでストレージエンジンで制限されるけどInnoDBでは40億個だから普通に使ってて制限にぶち当たることはまずないかと
68:デフォルトの名無しさん
21/07/03 07:43:20.15 Kt4s/HLb.net
>>65
ある、というか初めて当たりました。旧VB6やVBAはやったことあるし、大体C#とかVB.Net、最近はPythonとかを使っていたので正直ビビりました。
何せサクラとか秀丸みたいな感じのテキストエディタに書いて作成して、ブレイクポイント仕掛けてトレースで追うことも出来ないのですから。
しかも元のがコードビハインドで書かれていないので、ソースがHTMLやJavascriptと混じってるんですよね。
69:デフォルトの名無しさん
21/07/03 07:52:02.26 4PjWt/vE.net
メモ帳だけで作れるのがクラシックASPのいいところだからな
70:66
21/07/03 08:46:49.47 TQLM8oVL.net
>>67
ありがとうございました
71:デフォルトの名無しさん
21/07/03 09:41:48.20 U4Ekmy5J.net
この五チャンネルって、どういう言語でできていて、作るの簡単なんでしょうか? 作成期間も併せて教えてください。ようするに博之、プログラマーとしてすごいのかどうかききたいです。
72:デフォルトの名無しさん
21/07/03 09:53:07.33 oEiEqodq.net
>>68
Visual Studioでデバッグできない?
昔はExpress的なやつでも出来てたよ
73:デフォルトの名無しさん
21/07/03 14:39:40.01 xrPgyhkt.net
>>68
asp.netも今は基本がC#だよね。
>>65
今もBlazorは、「asp.net Blazor」という名前だと思うが。
Blazorを使うためには、asp.netが必要でそのためには、基本的に
WindowsServerが必要となることが多い。
74:デフォルトの名無しさん
21/07/03 14:44:27.86 ATS+nays.net
嘘はよくない
75:デフォルトの名無しさん
21/07/03 14:47:02.84 xrPgyhkt.net
asp.net coreはLinuxでも使えるそうだが、最初からそれが使える状態の
Linuxサーバーは安いものでは少ない。
そして、それをインストールしてもWindowsServerではなかったような
不具合に苛まれることが予想されるので、結局起業は時間の無駄なので
WindowsServerを選択することになる。
それが個人開発者には高いコストとなる。
76:デフォルトの名無しさん
21/07/03 14:53:14.63 ATS+nays.net
嘘はよくない
77:デフォルトの名無しさん
21/07/04 00:05:03.14 aHJdtdht.net
>>71
5ch は、日本語はsjis とか、20年前の技術だから、
バグだらけで、現在に対応できていない
各サーバー毎に、挙動も異なるし、
書き込んだ文字列の後に、; が表示される事もある。バグ
単に文字列を表示するだけじゃなく、
フォントを変えたり、HTML を解釈するから、
普通の掲示板よりも、格段に難しい
78:デフォルトの名無しさん
21/07/04 00:31:07.73 I3mRy3sU.net
>>71
アホユキはスキル全然ないよ。
Youtubeでたまにプログラミングの話題になったときの発言を聞くと一発でスキルが無いのが分かる。
79:77
21/07/04 02:36:43.42 aHJdtdht.net
ホリエモン・ひろゆきは、プログラマーではない。
どういう技術が必要かとか、そういうのは調べているかも知れないけど
開発者と言うよりも、管理者
話している内容から、あまり知らないように思われる
80:デフォルトの名無しさん
21/07/04 10:28:47.88 pili1Lz/.net
>>73
>>77-79
URLリンク(bokurema.com)
81:デフォルトの名無しさん
21/07/04 15:47:52.65 gC/LMA5R.net
マコなり社長はプログラマーだったらしいがな
82:デフォルトの名無しさん
21/07/04 17:15:36.99 OXyMLYXe.net
>>81
その人もスキルは低い。
経営者に逃げる者はもともとプログラミングに向いていなかった。
83:デフォルトの名無しさん
21/07/04 21:29:47.64 aHJdtdht.net
YouTube で有名な、雑食系エンジニア・KENTA のサロンは、日本6位。
日本のトップは、KENTA
経歴
URLリンク(github.com)
TOEIC 820点だから、100以上の技術を学べる
Ruby on Rails なんて、ほとんど英語ができる文系。
ビジネス用のフレームワークだから、ほとんど英語で決まる。
英語 = 年収
ドラゴン桜と同じ
英語ができる文系が、東大理1 に受かる
英語では点差が開くけど、
数学ができても、点差が開かないから受からない
84:デフォルトの名無しさん
21/07/04 22:06:27.00 ZLI7DyBh.net
これ完全に本人やろ
ゴミは二度と来るなよ
85:デフォルトの名無しさん
21/07/05 14:53:28.83 zfQ+6anv.net
本人なら馬鹿
他人なら本人に迷惑だからやめれ
86:デフォルトの名無しさん
21/07/05 22:44:57.85 zXics9HJ.net
プログラミングしてる人におすすめのチートシート下さい
87:デフォルトの名無しさん
21/07/06 00:12:26.46 NJP4BZI0.net
Rubyおじさんは国産のAIだよ
5chとYouTubeで学習した結果壊れてしまった
88:83
21/07/06 00:37:35.73 AJxevGXU.net
雑食系エンジニア・KENTA 流・勉強方法のチート!
最も勉強時間を少なくして、効率的に稼ぐ方法
Web系エンジニアを目指す人のためのプログラミング学習ロードマップ、2021/2
www.youtube.com/watch?v=0TABrlhci5M
2021年のWeb系エンジニア転職を成功させる3つの技術要素、2021/4
www.youtube.com/watch?v=70VrB7LTe9g
Rails, Linux, Docker Compose, Node.js(Webpack, Babel), Bootstrap
VSCode(Remote Container, WSL2 ならRemote WSL), Heroku, CircleCI、データベース
今までは、Docker Composeまでが初心者用コースだったが、
最近は誰でも、Docker出来るから、
AWS Fargate, Terraform, React, Vue.js, TypeScript も加わった
だから、AWSのくろかわこうへいのサロンにも、入る必要がある。
KENTA流チートでは、1年の未経験者が、10年以上のプロよりも技術力が上になる!
実際に米国年収では、Railsの1,300万円を抜いて、
AWS Solution Architect が1,400万円と最高位になった!
一方、Node.js は900万円だけど、Railsの2倍募集はある
89:デフォルトの名無しさん
21/07/06 03:39:58.44 nSctAZgU.net
>>88
グロ
90:デフォルトの名無しさん
21/07/06 11:05:18.71 9I0L2pl5.net
やめろと言われてやめる様子も無いところを観ると本人か
91:デフォルトの名無しさん
21/07/07 00:37:18.43 uTLk5wKZ.net
AWS LambdaとかAzure FunctionsってJavaとかC#をサポートしてるけどさ
これって関数の呼び出しのたびにバイナリがロードされんの?
めたくそ遅くなりそうな気がするんだが大丈夫なのかな
92:デフォルトの名無しさん
21/07/07 00:48:30.37 1s6qCIV1.net
一度起動したコンテナはしばらく使い回されるから大丈夫
糞Azure糞Functions糞に至ってはIISでホストされる実質ごく普通のWebアプリケーションで、
そのHTTPのエンドポイントをサーバーレス関数に見立てているだけで全くもってサーバーレスではない
93:デフォルトの名無しさん
21/07/07 01:20:21.98 uTLk5wKZ.net
>>92
サンクス
リクエストない時は課金もないって聞いたから都度ロードしてると思ったけどそうじゃないのね
94:デフォルトの名無しさん
21/07/07 01:39:34.23 bUHYGk47.net
ひょっとしたら、メモリにはプログラムを数分間しか保持しないのでは?
10分ぐらいアクセスが無いと、プロセスを削除するかも
95:デフォルトの名無しさん
21/07/07 01:50:19.62 1s6qCIV1.net
>>93
AWS Lambdaはリクエストのない間プロセスが起動したままフリーズする
Azure Functionsには従量課金のプランと時間課金のプランがあり、時間課金の方は実質本当にただのWebアプリだから自明だろう
従量課金の方はLambdaと似た仕組みであると推測されるが、俺はほとんど時間課金の方しか使ったことないから詳しくは知らん
ただし糞Azure糞や糞Azure糞Functions糞は絶対に使うな
96:デフォルトの名無しさん
21/07/07 11:49:06.28 qVtaH2wa.net
A社が提供するCRUD API(カスタマイズ不可)
自社で管理する業務領域BのNoSQL鯖
自社で管理する業務領域CのNoSQL鯖
この3つの間でトランザクションを実装したい
そんなこと可能ですかね?
97:デフォルトの名無しさん
21/07/07 12:48:46.38 n7+/G6RR.net
有効な現行バージョン番号を持つ場所(X)を設けて、更新後の新しいバージョンはXが更新されるまで使用されないようにする
Xの更新はABCすべての更新が成功したことを確認した後に行う
98:デフォルトの名無しさん
21/07/07 14:16:24.72 vUBZA2na.net
>>96
もちろん可能
「saga transaction」で検索
99:デフォルトの名無しさん
21/07/07 15:02:32.83 uTLk5wKZ.net
>>97
Aが履歴管理してないのでちょっと無理そうでした
>>98
調べたんすけどすごい複雑すね
Aが削除APIをサポートしてないと補償できないっぽいのと、排他制御がかなり難しいのではという感想
100:デフォルトの名無しさん
21/07/07 18:34:58.88 opTZ3hwS.net
>>99
履歴管理されてないのがAだけなら、最後にAを更新して成功したらバージョン上げるようにすりゃいいんじゃね
Aの更新だけが反映されるタイミングが生じるのは避けられないけど、Aが即時のインプレース更新しかできないなら仕方ないでしょ
Aに好きなメタデータを持たせられるなら、Aに更新後のバージョンX+1を持たせといてA.XがXに一致しないときはエラーにするくらいはできるかもね
101:デフォルトの名無しさん
21/07/07 20:57:30.40 vUBZA2na.net
>>99
分散トランザクションの実現方法は
現実的には2フェーズコミットとSagaの2つしかないので
求める一貫性と同時実行性によってどちらかを選ぶ
Sagaがめんどくさく感じるかもしれないが
2フェーズコミットであってもやることは基本的に同じ
トランザクションが終わるまでリクエストをブロックするかどうかの違い
どちらを選んでも分散トランザクションそのものの複雑さはなくならない
102:デフォルトの名無しさん
21/07/08 18:24:52.83 jJ2baH5P.net
色んな機器を家のwifiに繋いでるせいかパソコンが遅いのでwifiルーターを増やせばいいのかと思ったんですけど、パソコンが1台しかない場合wifiルーターを増やしてもパソコンは遅いままですか?
103:デフォルトの名無しさん
21/07/08 18:33:40.40 Uj7a+mEi.net
プログラムを最適化すれば速くなるよ
104:デフォルトの名無しさん
21/07/08 18:53:17.82 zWBGj7ZC.net
オブジェクト指向を身に着けて
動画ファイルの整理しようと意気込んだのは良いけど
分類分けだとお目当ての動画を探し出すのが大変だと気づいた
どうしたらいい?
105:デフォルトの名無しさん
21/07/08 18:57:45.88 XtaqRsen.net
とあるメンテナンスされてないOSSライブラリに修正やカスタマイズを入れたいのてすが、
1. githubでfork
2. fork先でブランチ切って修正をpush
2. pull request出す際は、base repositoryがデフォルトではfork元なのを、自分の所に変更(したマージを積み重ねていく)
のは
a. お作法的に変でしょうか
b. fork元に通知など行ってしまうでしょうか(forkの時点で分かる件はこの際無視)
c. 仮にfork元のメンテナと連絡が付き、修正を一通り取り込みたいとなった場合、取り込みが面倒になったりしますでしょうか
fork元へのprと、共有リポジトリ的な使い方のお作法は検索で見つかったのですが、このパターンがよく分からず…
106:デフォルトの名無しさん
21/07/08 19:53:29.25 GuqICNe5.net
>>104
そのデータはオブジェクト指向的にis-aでは扱いきれないのでhas-aで考えるべき
たとえばあるファイルがhas-a例のプール、かつhas-aつぼみ、といったタグ付けの方向で考えるとうまくいく
107:デフォルトの名無しさん
21/07/08 20:30:23.06 d04v5wzF.net
動画静画の分類なんてエロ、1、数回、いっぱいの4つに分けるだけでいいと天原が言ってた
108:デフォルトの名無しさん
21/07/08 21:23:05.64 3cxWeTdK.net
動画ID : タグID は、Ruby on Rails で良くある、多対多では?
1つの動画には、複数のタグを関連付ける。
1つのタグは、複数の動画に関連付けられる
109:デフォルトの名無しさん
21/07/09 17:57:34.83 EuqbNmJ1.net
>>101
CAP定理だともう一つあったような?
なんだったっけ
110:デフォルトの名無しさん
21/07/09 18:03:54.51 w0l6CXLG.net
BASE
111:デフォルトの名無しさん
21/07/10 02:14:39.36 +NmTA3Oo.net
XSSとCSRFの違いがよく分かりません
どなたか説明をお願いしたいです
112:デフォルトの名無しさん
21/07/10 02:28:34.81 icE46eu/.net
「xss csrf 違い」で検索!
>>105
git の事は、gitのスレで聞いてください!
113:デフォルトの名無しさん
21/07/10 14:34:00.43 5XZ7T6Ma.net
MS ACCESSだと、例えば
SELECT COUNT(DISTINCT 商品価格) FROM 商品台帳;
みたく、COUNT句の中にDISTINCTを入れた書き方はできませんか?使えませんね
114:デフォルトの名無しさん
21/07/10 15:00:01.40 ZKZ1b0ji.net
>>111
間違えやすいので自分も間違ってるかもしれないが
XSS は同一オリジン制約をうまいこと回避して任意のスクリプトを実行させることが出来る脆弱性
CSRFは、その上でサイトの認証をうまいこと回避して任意の命令をサイトに実行させられる脆弱性
普通はXSSが実行できたとしても認証情報は守られているので、サイトに偽の命令を送っても実行されない
115:デフォルトの名無しさん
21/07/10 15:33:55.00 fOJ6OsHP.net
>>113
使えないのはググることもできないお前自身かと
URLリンク(ampeanuts.hate)nablog.com/entry/2018/05/09/014634
116:デフォルトの名無しさん
21/07/10 16:18:35.84 M8z6v9pM.net
これblenderで使うpythonなんですけどもう少し良い書き方あったりしますかね?
framenumber変数は実際に使うときは可変で数字がどんどん増えていくんですが
そこからtotalframe変数を引くと目的の数字が取り出せるんですが
このスクリプトだとwhile部分でマイナス以下になるまで計算を続けて
最後にelseで数字をマイナス以上にするという調整が入ってきてここが無駄な気がしてます
framenumber = 31
totalframe = 20
while framenumber > 0:
framenumber = framenumber - totalframe
else:
framenumber = framenumber + totalframe
117:デフォルトの名無しさん
21/07/10 17:18:24.97 hyh546Qk.net
>>116
割り算
118:デフォルトの名無しさん
21/07/10 17:20:58.47 aL5ZqWOz.net
framenumber %= totalframe
119:デフォルトの名無しさん
21/07/10 19:45:54.71 ++81KWKS.net
>>117
>>118
ありがとう なおしました
120:111
21/07/10 23:22:31.36 +NmTA3Oo.net
>>112
検索していくつかサイトを見てみましたがよく分かりませんでした
>>114
ありがとうございます
しかし完璧には理解できませんでした…
121:デフォルトの名無しさん
21/07/11 03:52:09.34 lhtTwFv6.net
すいません
動きのあるプログラムが作りたいのですがググってみると物理の知識が必要みたいでして
小中高まともに学習してなくて理科から�
122:ィ理基礎までまともに知識ないんですが ピンポイントでどっからどこまでやれば良さそうでしょうか?
123:デフォルトの名無しさん
21/07/11 04:50:45.74 KzRRh8fp.net
>>121
プログラミングやりたいって奴には基礎をないがしろにしてピンポイントな知識だけでどうにかしたい、どうにかできるんでないかと考えている奴をよく見るが、何でなんだろう
それでやりたいことが実現できると思ってるような奴には物理学もプログラミングも無理だから諦めろ
物理を理解したいなら数学もちゃんとやれ
124:デフォルトの名無しさん
21/07/11 05:28:09.78 E2vDaFku.net
>>122
お気に触ってしまったらすいません。
ご指摘の通り算数も数学も小学校から復習し直してます。
あまり頭が良いほうじゃないのでやらなくて良いものは出来るだけ避けたくて聞きました。
時間かけてでも真剣に習得したいのでよろしくお願いします。
125:デフォルトの名無しさん
21/07/11 05:40:19.44 q9j4Dajs.net
数学しらないてもできるとおもうぞ
たぶん いまから調べる
126:デフォルトの名無しさん
21/07/11 05:43:40.78 zgsq5Mo2.net
物凄くざっくりとした質問でピンポイントで教えろ!って凄いw
127:デフォルトの名無しさん
21/07/11 05:48:22.67 q9j4Dajs.net
HGIMG4 3.6β1プロ生ちゃんデモ版
スクリプト言語HSP(Hot Soup Processor)でプロ生ちゃんを動かすデモです。
HSP3の3D機能をサポートするプラグインHGIMG4と、3DゲームエンジンUnityを組み合わせることで FBX、VRM、MMDなど多彩な形式の3Dキャラクターを活用することが可能になります。
URLリンク(www.youtube.com)
Google製ライブラリLiquidFunを使った
HTML5物理演算入門
URLリンク(ics.media)
Javascript で動く軽量物理エンジン OimoPhysics と3Dレンダラ Three.js で書いた短いサンプルコード
URLリンク(qiita.com)
128:デフォルトの名無しさん
21/07/11 11:05:31.96 bBgxyDlv.net
最低限の労力で知識を得たいとき、知識の深さ優先探索とGoogleで割となんとかなると思ってる
129:デフォルトの名無しさん
21/07/11 20:04:08.11 ROy10d1B.net
C++で、floatやdoubleを文字列に変換したいんですが、
to_wstring()は使い易いものの、少数が6桁までしか変換されず、
0.0000001が0.000000となってしまいます。
例えば、0.000000123あればそのように変換されるようにするにはどうすればよいでしょうか?
理屈上はfloatやdoubleの指数部を参照すればそのような変換は可能だと思うのですが、
そのような変換を行う標準的な関数等はないでしょうか?
130:デフォルトの名無しさん
21/07/11 20:38:03.85 q9j4Dajs.net
自作すれば?
131:デフォルトの名無しさん
21/07/11 20:40:27.39 lZiRxAj0.net
C++ の質問は、C++のスレへ書き込んで聞いてください!
まず、float, double が、10進数で何桁まで表示できるか調べた方がよい。
2 ^ 10 = 1,024、約999 だから、10ビットが、3桁
それと、内部的には最大桁数まで持っていても、
出力すると、表示されない設定なのかも?
132:デフォルトの名無しさん
21/07/11 20:40:45.61 q9j4Dajs.net
1以上ならば、その整数部分を出力して0-1の数値だとして
10倍ずつしていれば1桁の整数が取り出せるからそれを点(.)の右にかけばいいだろう
133:デフォルトの名無しさん
21/07/11 20:44:35.88 q9j4Dajs.net
でも上のは足す、引く、掛けるを繰り返すことになるから誤差が心配だが
ちょくに内部表現にアクセスできたほうがいいのか
しらない
134:デフォルトの名無しさん
21/07/11 20:49:55.44 q9j4Dajs.net
frexp() - 浮動小数点値の仮数と指数の取り出し
double frexp(double x, int *expptr);
浮動小数点値 x を、正規化小数部を示すコンポーネント m と、指数部を示す別の項 n にブレークダウンし、m の絶対値が 0.5 以上、かつ 1.0 より小さいか、または 0 に等しくなるように、また x = m * 2n になるようにします。
関数は、expptr が指す位置に整数の指数 n を保管します。
戻り値
正規化小数部 m を戻します。
URLリンク(www.ibm.com)
135:デフォルトの名無しさん
21/07/11 21:39:57.27 p4EQuXU+.net
ウェブサイトに画像アップロード機能作ったんですけど、画像かどうかチェックしなくても問題ないよね
136:デフォルトの名無しさん
21/07/11 22:28:02.90 lZiRxAj0.net
画像チェック機能なしにするの?
Ruby on Rails のActive Storage で、
S3 へ画像をアップロードするとか、調べてください!
137:128
21/07/11 22:36:38.00 ROy10d1B.net
みなさん、ご回答ありがとうございます。
>>133を使って自作を試みてみます。
>>130
以後、気を付けます。
138:蟻人間
21/07/11 23:19:57.13 9u9MeYv0.net
>>134
違法コンテンツとか、攻撃の踏み台ってわかる?
139:デフォルトの名無しさん
21/07/12 22:36:26.12 YLoUVXD1.net
ビジネスが破綻する大半の原因は、 ”ビジネスを始める人の大半が、真の意味での
「起業家」ではなく、 起業したい、という熱に浮かれた「職人」として働いているに過ぎない。”
という事実にあります。
「職人」によって運営されているビジネスは、ビジネスが働くのではなく、彼ら自身が毎日働くこと
によって、成り立っています。
彼らは毎日、自分がやり方を知っている仕事を一生懸命にこなしていますが、「起業家」としての
視点が無いために、成長に限界が生まれます。
そして、生計を立てるために、彼ら自身がずっと働き続けないとならないのです。
誰もが必ず陥る罠
私が見ている限り、起業熱にうなされる人たちは、必ずと言ってもよいほど誤った
「仮定」を置いてしまうようだ。実は、のちに彼らが苦難の道を歩むことになるのは、
この、「仮定」が致命的に間違っているからなのである
致命的な仮定とは・・・「事業の中心となる専門的な能力があれば、事業を経営する能力は
十分に備わっている」ということである
私がこの仮定を致命的だと書いたのは、この仮定が間違っているからにほかならない
事業の中で専門的な仕事をこなすことと、その能力を生かして事業を経営することは
全く別の問題である。高い専門能力を持つ人にとって、独立は他人の為に働くという苦痛から
解放されるということを意味していた。それにもかかわらず、前提となる「仮定」が致命的とも
いえるほど間違えているために、彼らは自由になるどころか、自分が始めた事業に苦しめ
られるようになってしまうのである
マイケルEガーバー「はじめの一歩を踏み出そう」P28~29
140:デフォルトの名無しさん
21/07/13 02:02:18.68 nZiTM0Ei.net
興味本位の質問で申し訳ないのですが1つ
google翻訳の音声出力ってあるじゃないですか
あれのen出力って、検索結果画面から出力した場合とページを開いてから出力した場合で音に違いがあるんですよね
ページを開いてから出力した場合の音声はGoogle Text To Speech APIで動いているようなのですが、検索結果画面から出力した場合の音声はどこから出力されているのでしょうか
知っている方がいれば教えてください
141:デフォルトの名無しさん
21/07/13 21:08:43.80 aO3Sze2Q.net
データベースへの書き込み、読み出しを行うアプリケーションは接続時にテーブルの存在チェックなどは基本的にやるべき?
142:デフォルトの名無しさん
21/07/13 21:36:54.89 kDn3q6a/.net
そこで自前でチェックしたとして、エラーだったらどうしたいかを考えればいい
チェックしなかった場合と結果がどう変わるのかを検討する
「○○テーブルがありません」と、万に一つもありえないケースのためにエラー処理とメッセージを設計して、その奇跡のメッセージを目にしたユーザーは幸運であると祝いたいだろうか
チェックしなければSQLを受け取ったDBMSはテーブル不在時にエラーコードを吐き、使っているドライバは例外を投げるかもしれない
そのログをどこかに吐いてユーザーには想定外エラーと伝えるだけでいいなら事前の自前チェックは無用の長物になる
143:デフォルトの名無しさん
21/07/13 22:24:41.47 QsXB5/qu.net
>>140
ユーザーが自由にテーブル名を入力できる場合や
テーブル名が動的に生成される場合を除いて普通はチェックしない
なければエラーになるだけ
144:デフォルトの名無しさん
21/07/13 22:30:48.89 aO3Sze2Q.net
ありがとう
10年近く前に作られたプログラムを見る機会があったんだけど、データベースと接続したあとにテーブルのレコード数を確認することでテーブルが正常か異常かをチェックしてる箇所があって、このやり方が一般的なのだろうかと思っていたんだ
145:デフォルトの名無しさん
21/07/14 14:24:51.40 QC3eIOjv.net
スマホアプリ(マルチP)で書式やインライン要素(箇条書きの点、リンク、画像)などを扱えるリッチなテキストエリアが欲しいんだけど良いライブラリあります?
できればワードみたいに入力中にもリッチな表現にしたい
無理なら入力中はただのテキストエリア、非入力中はリッチテキスト表示(Markdown風)でも可
146:デフォルトの名無しさん
21/07/15 02:12:29.61 Bg4t7qF5.net
ACID特性も二層コミットなどITパスポートレベルの言葉すら出て来ないとか、このスレのレベル落ちたな
147:デフォルトの名無しさん
21/07/15 11:03:54.58 YvGaZ0G0.net
メソッドは単機能にして短く記述すべきってのは出来るだけ意識してる
でも例えば「あるテーブルのアップデート」って処理があったとして○○条件の場合は□□レコードを更新とか、分岐を含んで行数が嵩んだ場合は各条件毎にメソッドを切り出したほうが作りとしてはいいの?
個人的には「あるテーブルのアップデート」っていう単一の機能しか持ってないからここから更に切り出すとかえって可読性が落ちるのかなあとも思うんだけど綺麗な作りとしてはどっちなんだろうか?
148:デフォルトの名無しさん
21/07/15 11:52:41.02 53A1iuau.net
名前を見ただけで何やってるかわかるような、適切な命名さえできるならどこまで細かく分けてもいい
名前が思い付かないなら分けるな
149:デフォルトの名無しさん
21/07/15 12:24:06.60 Whn2w6xi.net
>>146
条件によって更新対象を決定
更新
更新を保存
この3つは分けるのが基本だよ
foo = 更新対象の検索()
foo.DoSomething()
保存(foo)
150:デフォルトの名無しさん
21/07/15 12:28:34.62 BCsPZE5b.net
データベースだとコミットでは?
151:デフォルトの名無しさん
21/07/15 15:01:31.10 38KkMSUU.net
>>146
クラス分割と同じで責務の分割とか関心事の分離と言われる視点が最優先
行数とかは二の次
与えられた条件によって更新対象を判断するという役割が
「あるテーブルをアップデート」するという役割の中に完全に隠蔽されるべきものなのかどうか
152:デフォルトの名無しさん
21/07/15 18:25:48.78 nUmkW7e9.net
>>148
>>150
言いたい事は何となく分かる
出来れば分けたいけど、テーブルをアップデートする処理に隠蔽される(必要なもの?)気もする
変数名は適当だけどこんな感じの処理を書いてる(C#)
やりたい事は配列内の要素の状態によってアップデートする内容を変えたい
これが10レコード分あってレコードが増える事は無い
似たような処理だから出来れば関数化したいけど、条件分岐する要素の数がレコードによって違ったりする(ifの中身が1つの時や3つの時もある)からこれを切り出す良い方法が思いつかない…
// 1レコード目の更新処理
var query = db.change_statuses.Single (x => x.id == 1)
if(bol[100]) query.enable = 1;
else query.enable = 0;
if(bol[35]) query.state = 1;
else{
if(bol[40] || bol[41]) query.state = 2;
else if(bol[42] || bol[43]) query.state = 3;
else query.state = 0;
}
db.SaveChanges()
153:デフォルトの名無しさん
21/07/15 19:42:34.78 Whn2w6xi.net
>>151
データアクセスに隠蔽されるべき分岐というのはあるよ
例えばポリモーフィックなオブジェクトの保存処理とかだね
派生クラスAはテーブルAに
派生クラスBはテーブルBに
それぞれ保存したい
しかしメソッドの引数は基底クラスで受け取ってどちらも同じように使えるようにしたい
とかね
こういった要求はデータアクセスの実装の都合によるものだ
その知識はデータアクセスの責務を担うクラスとメソッドが引き受けるべき
そのために分岐が必要なら分岐させるのが正しい
154:デフォルトの名無しさん
21/07/15 19:53:56.12 fWs3lP2K.net
Udemyの無料コースって登録し放題ですか?制限ありますか?
155:デフォルトの名無しさん
21/07/15 19:58:19.23 Whn2w6xi.net
>>151
int CalcEnable(bool[] bol) => bol[100] ? 1 : 0;
int CalcState(bool[] bol) {
if (bol[35]) return 1;
else if (bol[40] || bol[41]) return 2;
else if (bol[42] || bol[43]) return 3;
else return 0;
}
void UpdateFoo(Foo obj, bool[] bol) {
obj.Enable = CalcEnable(bol);
obj.State = CalcState(bol);
}
var foo = db.change_statuses.Single(x => x.id == 1);
UpdateFoo(foo, bol);
db.SaveChanges();
156:デフォルトの名無しさん
21/07/15 20:19:53.45 nUmkW7e9.net
>>154
すごい
分かりやすいしちゃんと分離出来てる
重ねて申し訳ないんだけど
>>151のコードを例にした場合、処理するレコードによって条件分岐の式(ifやelse ifの中身)が変わるときは、それぞれにメソッドを作るべき?
オーバーロードってやつを使えば良いんだろうか
// 2レコード目の処理
if(bol[36]) query.state = 1;
else{
//3つの要素を確認
if(bol[44] || bol[45] || bol[46]) query.state = 2;
//3つの要素を確認
else if(bol[47] || bol[48] || bol[49]) query.state = 3;
else query.state = 0;
}
// 3レコード目の処理
if(bol[37]) query.state = 1;
else{
//1つの要素を確認
if(bol[50]) query.state = 2;
//2つの要素を確認
else if(bol[51] || bol[52]) query.state = 3;
else query.state = 0;
}
157:デフォルトの名無しさん
21/07/15 20:32:04.05 Whn2w6xi.net
>>155
CalcEnable1 省略
CalcEnable2 省略
...
CalcState1 省略
CalcState2 省略
...
UpdateFoo1
obj.Enable = CalcEnable1(bol);
obj.State = CalcState1(bol);
UpdateFoo2
obj.Enable = CalcEnable2(bol);
obj.State = CalcState2(bol);
つうかその前にちゃんと意味が理解できる名前をつけたほうがいいよ
bol[35]はなんの真偽を表す値なの?
bol[40]の意味は?
1行目のレコードって何なのさ?
2行目とは何が違うの?
158:デフォルトの名無しさん
21/07/15 20:52:37.75 38KkMSUU.net
bolの知識に依存してるから
bolかbolをwrapしたクラスに聞けば
stateを答えてくれるようにするといい
(bolってなんか知らんけど)
テーブルをアップデートするメソッドは
stateやenableのような変数だけ受け取れば十分
159:デフォルトの名無しさん
21/07/15 21:08:05.11 nUmkW7e9.net
>>156
CalcEnableとCalcStateは中身に応じて複数作る必要があるってことだね
名前はごめん
ここに書くために適当な名前にしてる
bol[]は256点のビット信号を格納してる
例えばbol[1]は○○センサ、bol[2]は□□センサのON/OFFをtrue/falseで格納してるイメージ
データベースのテーブルは
id,name,enable,state
の構成になってて
1行目は1,機械A,0,0
2行目は2,機械B,1,0
みたいになってて
Aがテーブルのアップデートに参照するのはbol[35,40,41,42,43]
Bがテーブルのアップデートに参照するのはbol[36,44,45,46,47,48,49]
って違いがある
160:デフォルトの名無しさん
21/07/15 22:14:53.86 hgbJVeFb.net
GoFのテンプレートパターンかストラテジーパターンで綺麗に共通化できるよ
enableとstateの取り方を教えてくれるインターフェースを定義する
それをレコードごとに10個分実装する
更新ロジックはそのインスタンスとクエリーidだけ引数か何かで渡して貰えば、ひとつに集約できる
161:デフォルトの名無しさん
21/07/15 22:37:11.33 38KkMSUU.net
センサの信号の羅列を
アプリケーションにとって意味あるモデルに変換するのは
誰が担うべき責務なのかを考えるといいんじゃない?
DBにおけるリポジトリみたいにセンサの詳細を隠蔽するクラスを用意してそれにやらせるか
アプリケーション層に変換ルールを管理するクラスを用意して明示的に変換処理を挟むか
いずれにしろ永続化層でやる処理ではなさそう
162:デフォルトの名無しさん
21/07/16 21:41:12.04 DRuxLTuc.net
なにも作成しない、更新もないパターンがあるとき
コードはif使って仕組みを明示すべき?
サンプルコード見てると、わりと空打ちできるように作ってあって全部通すのを見るけど
(1)
if make_data():
__update()
(2)
new = make_data()
if new:
__update(new)
(3)
update(make_data())
(4)
make_data()
update()
163:デフォルトの名無しさん
21/07/16 22:18:52.61 J3IrN4Ey.net
>>161
make_data()って名前で何も作成しないのはちょっと勘弁
まあfind_hoge()としてhogeに変更を加えてrepository.update(hoge)する場合なら
updateにnullやempty的なものは渡さないので(2)が一番まとも
関数の役割分担や責任範囲をどう考えるか次第なのでケースバイケース
(1)や(4)のようにレシーバーも指定せずに暗黙的に共通リソースを変更するのはあまり良くない
164:デフォルトの名無しさん
21/07/16 22:28:44.32 VW9BmXd5.net
>>161
そんなのは業務要件次第だよ
165:デフォルトの名無しさん
21/07/16 22:35:19.90 DRuxLTuc.net
>>162
なるほど
了解しました
166:デフォルトの名無しさん
21/07/16 23:11:44.68 HlFxDsxb.net
windowsで複数ソフトをまとめてインストールして
システム環境変数を設定するプログラムを作成したいと思いますが、
どういった方法が良いでしょうか?
167:デフォルトの名無しさん
21/07/17 00:14:51.29 xmQE+uIu.net
タスクランナー・環境構築ツール
Linux, AWS なら、主にRuby 製のツール。
Vagrant, Chef, Itamae, Kumogata
Go 製のTerraform とか
Mac なら、Homebrew とか。
これも元々は、Ruby製
Windows なら、Chocolatey と言うのを聞いたことがあるけど、漏れは知らない。
漏れは、WSL2, Ubuntu 18.04, Docker を使うから
168:デフォルトの名無しさん
21/07/17 15:06:40.88 eTC1af8g.net
>>165
ム板的には
URLリンク(docs.microsoft.com)
169:デフォルトの名無しさん
21/07/19 23:55:11.42 jyJepTNx.net
>>166-167
たくさんそれ用のアプリがあるんですね。
ありがとうございます!
170:デフォルトの名無しさん
21/07/20 00:02:07.78 Pdhee8xy.net
>>166
一つ伺いたいんですが、DockerからWindowsアプリのインストール、使用環境構築など出来ますか?
初心者なため、アプリ開発環境の構築などアプリ開発者向けのツールだとばかり思ってました。
171:デフォルトの名無しさん
21/07/20 00:35:56.82 8+mWqGJv.net
dockerは基本的にリナックスのツールだよ
Windowsコンテナもあるけど使ってる人見たことないねぇ
172:デフォルトの名無しさん
21/07/20 23:40:50.39 /fp0B2mS.net
基幹システム(のUIというかユーザー側)ってどんなんが多いの?
Windowsアプリ?Web?
173:デフォルトの名無しさん
21/07/21 07:13:32.21 8pbFLQqb.net
基幹が何を指すのかにもよるだろうけど社内の業務系システムはほとんどWebだろ
174:デフォルトの名無しさん
21/07/21 07:53:06.92 eN61x/pR.net
個々の端末にインストールが不要でOSを問わないから他の方式に変わる未来はないな
175:デフォルトの名無しさん
21/07/21 08:37:52.19 KG1goB3t.net
そうでもないぞ
クラサバ(クライアント側はWindowsアプリ)も多いし、アポロ計画さながらの黒背景に緑色の文字(いわゆるバカ端末)なんてのもまだまだ生き残ってる
176:デフォルトの名無しさん
21/07/21 08:49:23.26 eN61x/pR.net
んな特殊すぎるクライアントは一般業務じゃ使わないかな
ちなみに特殊というのは開発者しか使わないA5:SQLみたいな類のクライアントを含む
177:デフォルトの名無しさん
21/07/21 08:56:59.33 KG1goB3t.net
一般業務という謎用語は知らんが、例えば一般的なERPパッケージでもWindowsクライアントアプリは普通に使われるぞ
178:デフォルトの名無しさん
21/07/21 11:53:18.71 cUhe3977.net
デフラグメンテーションとメモリコンパクションの違いはなんですか?
179:デフォルトの名無しさん
21/07/21 12:16:23.37 DbniEar0.net
>>174
dumb terminal のことを(バカ端末)と言っているのだろうけど
直訳通りのバカではないぞ
180:デフォルトの名無しさん
21/07/21 12:20:36.78 DbniEar0.net
>>177
花見の場所取りと風呂敷で例えると
風呂敷を隙間なく詰める操作がデフラグ
相席をお願いするのがメモリコンパクション
181:デフォルトの名無しさん
21/07/21 12:31:22.08 cUhe3977.net
>>179
列が複数か1つかってことなんですかね?
182:デフォルトの名無しさん
21/07/21 15:34:47.29 +gtmguIj.net
基幹システムって訊いてるのに一般業務向けシステムの回答が多いのは何故なんだぜ
基幹システムはWeb全盛ってことはないな
一部の社員しか使わないからインストールのコストが比較的小さい
入れ替えスパンが長いのでトレンドに左右されにくい
どちらかというと外部から接続させたくない類のシステムなのでWeb化の動機が薄い
画面内にデータをなるべく詰め込みたい
キーボードを多用するのでショートカットキーもニーズがある
てなわけでクライアントアプリにオーナードローでキビキビと一覧やグラフを出したほうが顧客に訴求しやすいと思う
183:デフォルトの名無しさん
21/07/21 15:45:09.63 UcFQB6f9.net
Googleの基幹系システムはどういうシステム?
Amazonの基幹系システムはどういうシステム?
基幹系という分類が役に立つ時代ではない
184:デフォルトの名無しさん
21/07/21 16:23:29.94 eN61x/pR.net
社内システムのクライアントもwebな時代に何言ってんだと
インストール不要ってことは、アプリのアップデートもサーバだけで行うから配布コストが激減という理由からwebでという要望になる
金融だと勘定系はやったことないんだけど、どうなんだろ?
基幹システムって何?という話になってくる
185:デフォルトの名無しさん
21/07/21 19:32:46.47 yQY7BCFe.net
>>177
似たようなものだが
デフラグは断片化したファイルが連続になるようハードディスクで適用
メモリコンパクションはガベージコレクションのことで
空き領域を削除してつめること
ファイルの断片化はそのファイルにアクセスした場合パフォーマンスが低下する
空き領域を削除するのは要するにメモリ空き領域の改善
186:デフォルトの名無しさん
21/07/21 21:05:05.86 Uy9noatQ.net
Web標準とやらのサポート期限がいつまでとか決まってるの?
187:デフォルトの名無しさん
21/07/21 21:42:16.70 1PajC+dW.net
AWS は、Amazon の基幹システム
元々、自社で使っていたものを、
クラウドとして貸し出す、業務を始めた
188:デフォルトの名無しさん
21/07/21 21:56:58.47 1PajC+dW.net
基本、システムはLinux でCUI のみを使う。
画面・GUI を使わない
Winows 10, WSL2 も、AWS と同じ。
Linux でサーバー・CUIしか使わないから、パソコンならWSL2 が良い
それに、Winows 10 Home 版でも、Docker を使えるようになった
コンテナをカスタマイズして、それをDockerイメージに保存して、
別の所へ持っていって使える。Import/Export
任意のLinuxディストリビューションをWSL2で動かす Clear Linux OSを動かすまで
URLリンク(impsbl.hatena)@blog.jp/entry/ClearLinuxOnWSL2
(注意。はてなブログの一発アク禁回避のために、念のために、URL 内に、@を入れました)
だから最近のPC は、メモリ16GB 以上が必須(32GB推奨)。
8GBじゃ、キツイ
189:デフォルトの名無しさん
21/07/21 23:13:25.03 eN61x/pR.net
>>185
コンピュータとかインターネットのサポート期限と同じ
190:デフォルトの名無しさん
21/07/24 03:15:13.97 mxtYPh7F.net
pythonを学び始めようと思っている高校生です。
webサイトでの支払いができないので、書籍を使い学習しようと考えているのですが、初心者には厳しいでしょうか?
また、学習の進め方や、得た知識をアウトプットする方法を教えていただけると幸いです。
191:デフォルトの名無しさん
21/07/24 03:17:00.45 mxtYPh7F.net
将来的には機械学習に触れてみたいと思っています
192:デフォルトの名無しさん
21/07/24 04:05:29.93 2jz91/WX.net
>>189
できるようになるかどうかは個人差があるからなんとも言えないけど、さっさと本屋で入門書を買ってやってみれば良いよ
まずは1冊、分かりやすそうなのを買ってみて、ただ読むのではなく書かれているコードを自分でも実際に書いて動かしてみる。ただ真似るだけでなく、ここを変えたらどうなるか、こうなるはず、なぜそうならないか、など考えながら理解を深めていくといい
あとは、目標には簡単に到達できなくて当たり前、時間のかかるものだというのは初めに覚悟しておくこと
193:デフォルトの名無しさん
21/07/24 04:27:14.45 bQJ+pJ3Q.net
>>189
書籍を買うくらいなら、まずはネットに転がってる資料をGoogle Colab で動かしてみるといい
深層学習も TensorFlow の公式は Colab でチュートリアルしてる
194:デフォルトの名無しさん
21/07/24 04:43:09.87 bQJ+pJ3Q.net
>>189
深層学習はColab使ってればいいけど、いずれは無料GPUの時間制限が気になってくる
そうしたらPCにAnaconda入れてCUDA対応TensorFlowライブラリとか入れてJupiterNotebookを整備すればいい
195:デフォルトの名無しさん
21/07/24 04:46:00.91 mxtYPh7F.net
>>191
ご回答ありがとうございます。勉強への姿勢は気になっていたので助かります。
特に目標達成は簡単ではないという考え方は、継続の励みとなるので非常に参考になりました。
196:デフォルトの名無しさん
21/07/24 04:51:32.29 bQJ+pJ3Q.net
まあ、Python嫌いだから深層学習以外に使う気は起きない
一つの事をやるのに何十と違う書き方があって、ブログやら記事やらサンプルコードやら読んでも役に立たないし
書き方もPythonのバージョンが違ってると動かないケースもざらな、そびえ立つクソ
197:デフォルトの名無しさん
21/07/24 04:54:28.67 mxtYPh7F.net
>>192 >>193
ご回答ありがとうございます。
初心者なのでGoogle ColabやAnacondaなどの有用な知識は非常に参考になります。
それぞれ調べてみて、まずは優先順位が高そうなものから触ってみようと思います
198:デフォルトの名無しさん
21/07/24 05:05:02.85 mxtYPh7F.net
>>192
度々失礼いたします。
素人質問で申し訳ないですが、「ネットに転がってる資料」というのはどういったものを指すのでしょうか?
また、その資料をどのようにしてGoogle Colabで扱うのかも教えて頂きたいです
199:デフォルトの名無しさん
21/07/24 07:31:30.24 bQJ+pJ3Q.net
>>197
例えばPython解説記事にはサンプルコードが必ずある
それを丸コピして動かしてみて、ある程度分かってきたらそれを改造してみる
Colabを勧める意図はMarkdownでメモとか書けるし、グラフライブラリでグラフとか画像出力も見れるし、Googleドライブに幾らでも保存して後で見れる
コマンドラインでPythonを叩くより自前の虎の巻を育てる方が勉強になり、colabで作ったノートブックはファイルなので実際に動作する資料として公開できる
200:デフォルトの名無しさん
21/07/24 07:39:46.91 mxtYPh7F.net
>>198
ご回答ありがとうございます。
Colobの利用価値が大まかに理解できました。非常に分かりやすい説明ありがとうございます。
201:デフォルトの名無しさん
21/07/24 07:41:39.88 bQJ+pJ3Q.net
>>197
colab 初心者 でググると
URLリンク(kakedashi-engineer.appspot.com)
とか
URLリンク(engineers-career.info)
といった記事があるから読むといい
202:デフォルトの名無しさん
21/07/24 08:15:49.17 mxtYPh7F.net
>>200
参照してみました。具体的な操作方法まで紹介してあったのでとても役に立ちました。
ありがとうございます。
203:デフォルトの名無しさん
21/07/24 10:33:03.70 a8zY8PyN.net
>>128
もう観てないと思うけど sprintf
204:デフォルトの名無しさん
21/07/24 10:46:21.23 Ce0VItIV.net
web系ってなんのアプリを作る人なの?
205:デフォルトの名無しさん
21/07/24 11:10:42.65 T4NKgITq.net
人によるだろ
今日の朝飯何食べたの?って質問と同じレベル
206:デフォルトの名無しさん
21/07/24 11:17:12.53 Ce0VItIV.net
>>204
なるほどw
ありがとう
207:デフォルトの名無しさん
21/07/24 12:41:15.90 zz8rVX09.net
web系でも、web制作はホームページを作るアルバイト。
販売システムなどではなく単純なもの。
Linux サーバーを知らない、画面だけを作る人
一方、web開発・自社開発系は、食べチョクみたいな若い女の子が、
1人で起業して、Linux で販売システムを作るような、複雑なもの
皆が勉強するシステムは、Ruby on Rails, Linux, Heroku, AWS。
よく知らないけど、Shopify で、お店を作れるかも
YouTube で有名な、雑食系エンジニア・KENTA のサロンでは、
基本情報技術者資格、Rails, Linux, Docker Compose, Node.js, Bootstrap
VSCode, Heroku, CircleCI、データベース
KENTA の本かサロン、動画を参照
208:デフォルトの名無しさん
21/07/25 11:53:06.99 e5avA9Jr.net
ケンタの本とは?
209:206
21/07/25 21:22:58.22 Ie3kKwwU.net
21世紀最強の職業 Web系エンジニアになろう
AI/DX時代を生き抜くためのキャリアガイドブック
勝又 健太、2020/11
YouTube・雑食系エンジニア・KENTA のサロンは、日本6位の2千人。
こんなニッチな領域で、2千人も入るのは前代未聞
KENTAは数万人も入っている、キンコン西野のサロンを目指している
210:デフォルトの名無しさん
21/07/26 15:10:53.20 H5g87deE.net
アプリ1はHogeのA, Bを更新したい
アプリ2はHogeのB, Cを更新したい
この場合クリーンアーキテクチャで言うところのUseCaseはどう作るのがベター?
こんな感じ?
UpdateHogeAAndBCommand { public int A ; public string B; }
UpdateHogeBAndCCommand { public string B; public DateTime C; }
UpdateHogeUseCase {
public void Handle(UpdateHogeAAndBCommand cmd) { ...
public void Handle(UpdateHogeBAndCCommand cmd) { ...
それともMapで属性名と値を渡すようにして1つにまとめちゃったほうがいいのかな
211:デフォルトの名無しさん
21/07/26 15:37:47.44 GiNSwniz.net
>>209
その2つを同じUseCaseに入れる意味がわからない
別のユースケースなら別でいいだろ
212:デフォルトの名無しさん
21/07/27 13:30:44.53 X5wO1kbR.net
OSはWin10 Pro 64bit 言語はC#(.net Framework 4.7.2)で、
アプリの設定をファイルベースのDBに保存したいのですが、SQLite と SQL Server 2016 LocalDBのどちらにするかで迷っています。
INSERT/UPDATE/DELETEは殆どなく、処理の90%以上がSELECTです。
テーブル数は27・カラムは合計179、最もレコードが多いテーブルでも2万レコード程度(増減は殆どしない)です。
SQLite と SQL Server 2016 LocalDBのどちらがよいでしょうか?
213:デフォルトの名無しさん
21/07/27 14:35:42.48 y5dQxW9i.net
SELECTはSQLiteがぶっ飛びで速い
214:デフォルトの名無しさん
21/07/27 14:45:19.08 TzN/PNfp.net
LocalDBはSQL Serverサービスを常時運用しなくても必要なときだけ立ち上がる開発用のSQL Serverサブセットで、実運用に使うようなもんじゃないぞ
MSに生涯の忠誠を誓い、実運用でSQL Serverを使うつもりである場合にのみ意味がある
215:211
21/07/27 15:04:07.96 X5wO1kbR.net
>>212-213
ありがとうございます!
気持ちがlocaldbに流れかけてたので本当に助かりました。
216:デフォルトの名無しさん
21/07/28 00:46:59.21 zPjSIPPt.net
2004年頃、UMLmemoというクラス図が描ける無料ソフトがありました。
これの進化版のような無料ツールがあれば教えて下さい。
※今で言うところのEnterpriseArchitectみたいなツールの無料版です。
必須の機能
・クラス図同士を矢印で繋げられる
・PowerPointのように図を縦や横で整列できる ←この機能はUMLmemoには無い
・クラス図自体は小さいが、クラス図をダブルクリックすると窓が開いて(外部ファイルを貼れたり)詳細について書ける ←この機能が欲しいです
今調べたところ、draw.ioには詳細を書ける機能はありませんでした。
お願いします。
217:デフォルトの名無しさん
21/07/28 10:20:47.51 I0vZ6ZDJ.net
GraphViz
218:デフォルトの名無しさん
21/07/28 11:32:06.53 zPjSIPPt.net
>>216
ありがとうございます。
GraphVizでコーディングするのは大丈夫です。
しかし、GraphVizで親が子を持つような入れ子構造を実現できますか?
今、検索してみましたが、そんな機能は見つかっていません。
↓ここが詳しいですが、そんな機能は見つかりません:
URLリンク(qiita.com)
イメージで言うと
URLリンク(renenyffenegger.ch)
Nested clusters
の起動後はParentだけ見えて
ParentをクリックするとChild oneとChild twoが見えて
Child oneをクリックするとaとGrand-Child oneとGrand-Child twoが見えるように出来ますか?
219:デフォルトの名無しさん
21/07/28 12:39:01.45 v8tX95iU.net
plantumlおぬぬめ
220:デフォルトの名無しさん
21/07/28 17:18:56.22 zPjSIPPt.net
>>218
PlantUMLは親が子を持つような入れ子構造を実現できますか?
検索してみましたが、そのような機能は見つかっていません。
クラス図
URLリンク(plantuml.com)
221:デフォルトの名無しさん
21/07/28 19:12:32.57 J8YGj+mJ.net
マルチコア環境でのマルチスレッドで同じ変数にアクセスする場合、
変数が32bitで書き込みをするスレッドが1つでも排他制御したほうがいいんですか?
222:デフォルトの名無しさん
21/07/28 19:28:35.22 JafAKvAD.net
>>220
場合によるけど、そんな質問をするレベルならおそらく排他制御は必要
変数の読み書きがアトミックかどうかと処理がスレッドセーフかは別問題であって、
明示的な排他制御を行わないマルチスレッド処理はかなり高度なタスクなので君にはたぶんまだ早い
223:デフォルトの名無しさん
21/07/28 21:54:14.08 DIkQ/nRv.net
変数の命名規則でローマ字を使うことってある?
業務アプリなんかで世間一般的な言葉じゃない用語を翻訳した英語の変数名にすると馴染みがなくてかえって分かりづらい部分もあるのかなと思うんだけどこの辺はケースバイケースって感じ?
個人の考えやプロジェクトの決まり事にも寄るんだろうけど…
224:デフォルトの名無しさん
21/07/28 22:12:52.01 3xUlZNw3.net
ない
225:デフォルトの名無しさん
21/07/28 22:23:17.66 lXzRz4D2.net
当然あり
特定の会社の独特な語彙や業界用語は必ずしも英語に訳せない
訳すと却って意味不明になる
KaroshiやSushi、Hentaiを英語で言い換えてもニュアンスが伝わらなくなってしまうのと同じ
プロジェクトはある程度の期間アサインされる
最初のうちはローマ字を見て悪寒が走ったとしてもすぐに気持ちよくなって自分から使いまくるようになるさ
226:デフォルトの名無しさん
21/07/29 08:37:32.88 DRuxLTuc.net
そりゃプロジェクトでいえば
xx03p325n0021みたいなやつもあるしな
関数名ファイル3巻の325ページの21番目
馬鹿だなとは思うけどカタカナだって全然あるでしょ
227:デフォルトの名無しさん
21/07/29 08:38:23.73 DRuxLTuc.net
お?
偶然か?
228:デフォルトの名無しさん
21/07/29 11:25:11.94 IP7To/2+.net
UIの質問です。
DBから取得したデータをDataGridViewに表示して、
[〇〇の昇順/降順] というソートと、[〇〇が××] という絞り込みをするUIを作りたいのですが、
ソート項目も絞り込み項目もかなり多い(両方30以上ある)為、それらを一覧表示すると目が痛くなるような状態です。
そういう多数の項目をスマートに表示されているサンプルを教えていただけないでしょうか。
Webサイトでもいいです。
229:デフォルトの名無しさん
21/07/29 12:36:17.53 Bm0Z0U0B.net
VSCode の拡張機能なら、
GrapeCity のExcel Viewer
RainBow Query Language(RBQL) を使った、Rainbow CSV
Edit csv
230:デフォルトの名無しさん
21/07/29 14:07:51.75 J3IrN4Ey.net
>>227
ソートはDataGridViewColumnSortModeのAutomaticでいいのでは?
絞り込みUIのメジャーな形式は以下の3種類
1. Excelのオートフィルタな的なUI
2. 検索ボックスで「拡張子:txt」みたいな式を受け付けるUI(Windowsのエクスプローラ)
URLリンク(support.hp.com)
3. フィルタ条件を可変個追加できるUI(MacのFinder)
URLリンク(support.apple.com)
↓DataGridにExcelのオートフィルタ的な機能を追加するライブラリ
URLリンク(github.com)
231:デフォルトの名無しさん
21/07/29 14:31:53.72 EOE1n8Rl.net
>>229
自分は227じゃなく単なる通りすがりだが為になった、ありがとう
既に227に似たDBとUIを作れてて、絞り込み項目を2個作ったが、
絞り込み項目は全部で15個必要なんでどう表示しようか迷っていたところ
オートフィルタ的なのでもいいし、MacのFinder形式でもいいな
232:デフォルトの名無しさん
21/07/29 15:10:25.07 J3IrN4Ey.net
そう言えばWebだとハンバーガーメニューのようなドロワーを使うケースもよく見るね
233:デフォルトの名無しさん
21/07/29 15:23:47.61 EOE1n8Rl.net
>>231
ああ、確かにハンバーガーメニュー = ドロワーメニューはよく見るね
それも検討しよう、ありがとう
234:デフォルトの名無しさん
21/07/29 17:01:14.73 tRu2KZQa.net
Accessの選択フィルタが好き
まあ、右クリックなんてイマドキ無理か
235:デフォルトの名無しさん
21/07/30 01:22:58.69 bAotqF4s.net
webUIは右クリックに頼れないからなぁ
機能を画面内に押し込むのに毎回腐心してる
236:デフォルトの名無しさん
21/07/30 07:39:31.67 rBsOkVJE.net
RedmineみたいにJavaScriptで右クリックメニューが出るとやっぱり便利
初見だとメニューが出せることに気付いてもらえないからBootstrapのPopoverみたいに小さなボタンやアイコンでトリガーしてもいい
237:デフォルトの名無しさん
21/07/30 12:01:28.18 0FXLVPIg.net
実行バイナリという言葉はどういう意味がありますか?
238:デフォルトの名無しさん
21/07/30 12:39:20.22 e0268UTk.net
実行は実行できるという意味
バイナリはテキストではないという意味
239:デフォルトの名無しさん
21/07/30 12:44:49.22 /M+TLqLl.net
>>237
実行できる直前のプログラムということですか?
240:デフォルトの名無しさん
21/07/30 13:09:18.53 ESPPHcdk.net
そんな意味は含まれておりません
241:デフォルトの名無しさん
21/07/30 13:12:47.37 e0268UTk.net
>>238
そこから実行できるテキスト(つまりスクリプトとか)を除外したイメージ
機械語やJavaクラスファイルや.Netアセンブリなどコンパイルされたもの
242:デフォルトの名無しさん
21/07/30 13:22:36.88 /M+TLqLl.net
>>240
スクリプトというプログラム以外のソースコードをコンパイルしたもの
ということですか?
243:デフォルトの名無しさん
21/07/30 14:58:10.32 n/UloM9p.net
例えば、a.rb みたいな、Ruby のソースコードを書いたものは、スクリプトファイルで、
端末で、ruby a.rb と入力すると、そのまま実行できる。
インタープリタ型言語
スクリプトは、人間が読めるテキストファイル。
人間が読めないバイナリファイルではない
一方、a.c みたいな、C のソースコードを書いたものは、そのままでは実行できない。
コンパイル・リンクして、実行バイナリにしてから実行する。
コンパイル型言語
244:デフォルトの名無しさん
21/07/30 16:30:54.55 /M+TLqLl.net
>>242
人間が書いたソースコードにコンパイルというのしたら機械がどう動けばいいかわかるようになる
っていうのが>>240での機械語だと思っているのですが、Javaクラスファイルとかはなんの話かわからないので>>241になりました
245:デフォルトの名無しさん
21/07/30 16:43:25.45 /M+TLqLl.net
>>243
実行バイナリというのはコンパイルを必要としていたコンパイル済みのプログラム?
ファイルの中にコードを書いて、コードがどの状態であるかによってバイナリーデータ、テキストデータというように呼ばれ方が変わる?
スクリプトの定義は今理解する自信がないです。
人間が読めるようにこんにちはとかテキストを表示できるコードもコンパイルというのをするとバイナリーデータになる?
コンパイルというのが不要なやつの一つにスクリプトファイルというものがある?
246:242
21/07/30 17:31:07.55 n/UloM9p.net
「インタープリター言語 コンパイラ言語」で検索!
247:デフォルトの名無しさん
21/07/30 17:41:52.60 /M+TLqLl.net
>>245
その2つの言葉の内容を覚えてみます
ありがとうございました。
248:デフォルトの名無しさん
21/07/30 20:27:17.62 B3QPD//L.net
>>241
とりあえず、そういうものと思っておけば問題ありません
混乱させちゃうかもだけど、たまにインタープリタでスクリプトとして動かせるけど、コンパイルすると爆速というものもある
Goとか
249:デフォルトの名無しさん
21/08/01 11:34:15.17 rndiCwYX.net
漢字の手書き判定ができるライブラリってあるのかしら?
フォントの美しい漢字に対して手書きの一致具合が数値で出せればいいのだけど。
250:デフォルトの名無しさん
21/08/01 13:08:58.79 RrS7g+U3.net
pythonもrubyもperlもコンパイルされて実行される
251:デフォルトの名無しさん
21/08/01 13:09:14.86 ekL5DYUO.net
漢字は無理だろ
複雑すぎる
252:デフォルトの名無しさん
21/08/01 13:11:49.48 RrS7g+U3.net
>>248
URLリンク(www.nhk-ondemand.jp)
URLリンク(www.nhk.jp)
253:デフォルトの名無しさん
21/08/01 19:19:06.52 bYcYr2zH.net
>>250
かなり昔からWindowsのIMEで手書き入力があるわけで、もうほとんど枯れた技術ではないか?
問題はフリーのライブラリがあるかどうかだけのように思う。
254:デフォルトの名無しさん
21/08/01 19:34:28.23 rndiCwYX.net
漢字テストアプリ的なもんを作りたくてさ、
手書きで解答させられたら理想なんだけどね。
自力で手書きデータ集めてディープラーニングして…となるとだいぶハードル高そうだなぁ…
255:デフォルトの名無しさん
21/08/01 20:01:08.18 TpUCZbso.net
>>253
とりあえずKMNISTをpix2pixで学習させて使い勝手を試す程度なら、どこぞの深層学習の初心者でもできるな
でも24x24よりデカそう(想像)だからそれなりにバッチサイズ削らんとGPUに乗らないような気もする
バッチサイズ削ると今度はエポックの計算時間が増えてくから何日か回さんと
256:デフォルトの名無しさん
21/08/01 20:07:22.20 TpUCZbso.net
>>253
原理的には漢字も数字も認識アルゴリズムは同じだから、独自に開発しなくてもpix2pixで行けるはず
もしかしたら学習済みモデルも既に公開されてるかも
257:デフォルトの名無しさん
21/08/01 21:39:47.35 dQpg7mz5.net
実物を試してみるとわかるけど、不特定多数の漢字を認識するには
全然使い物にならないよ。
今のモデルだと文字間の関係とか学習に使っていないよね?
っていうかそれをやろうと思うと学習データが決定的に少なすぎると思う。
258:デフォルトの名無しさん
21/08/02 00:01:01.34 OcsNknth.net
無理か
教師データが文字種数に対して圧倒的に不足してるんだな
ひらがなだけでもアルファベットに対して倍の数があるからさもありなん
国家事業としてやってくれないかな
259:デフォルトの名無しさん
21/08/02 01:01:22.03 J/tZaOg0.net
出題する文字が決まっているお手本ありの漢字テストなら文字認識せずにお手本とのズレを採点したらいいんじゃないかな?
260:デフォルトの名無しさん
21/08/02 07:26:37.33 IRCtBjRl.net
それだー
261:デフォルトの名無しさん
21/08/02 10:21:21.78 nmkqokJH.net
Free の OCR ソフトぶっこんで適当に処理
262:デフォルトの名無しさん
21/08/02 12:29:09.14 OcsNknth.net
とにかく実現には商業レベルのリソースが必要
自前でやるのは現実性に欠けるという意見が大半かね?
263:デフォルトの名無しさん
21/08/02 12:43:01.71 V94WLpPj.net
漢字テストアプリなんだろ
悪影響の可能性高すぎだわ
264:デフォルトの名無しさん
21/08/02 14:30:39.05 qZHdt7yP.net
ちょっと違うけど正解にしちゃうとか、
合ってるけど機械には間違ってるように見えて不正解とか、
そんなクオリティなら学習アプリとして欠陥品だよなぁ、、、
みんなありがとう、手書き以外のアプローチで再検討してみる。
265:デフォルトの名無しさん
21/08/02 16:02:50.25 2wqvORH7.net
一文字ずつマス目に合わせて回答させる
出題した文字ごとにある程度の粒度の格子で量子化
回答の文字も量子化して、ドットごとに正解との最短距離を集計して適当に重み付けてススコアリングする
そんな簡単なアルゴリズムだと精度はどんな感じだろう
文字の太さを調整するとハイスコアが狙いやすいとか、字が美麗でも小さかったり中心ズレてるだけでスコアが一気に下がるとかの対処が面倒か
266:デフォルトの名無しさん
21/08/02 16:17:49.70 OcsNknth.net
塗りつぶすと50点取れそう
267:デフォルトの名無しさん
21/08/02 18:08:50.13 2wqvORH7.net
そう?
正答になるピクセルを100%塗れてたとしても、正答から遠く大幅減点されるピクセル数のほうがずっと多いから累計点数がマイナス1000点超えとかになって切り上げで0点になりそう
でも大と犬を間違えてもスコアを大きく減点できないのは痛いな
268:デフォルトの名無しさん
21/08/02 19:01:08.46 C0MArw+q.net
TASさんの脳トレとか見てるとどこもいい加減な感じ
雑なアイデアだと一画一画の始点終点を書取りと見本で距離測るとか
269:デフォルトの名無しさん
21/08/02 19:50:20.02 2pS+scOh.net
TCP/IPでAsciiデータを送信するときに転送時間を短縮するため、データを圧縮する方法ってありますか?
270:蟻人間
21/08/02 19:53:56.42 LkFRX9kv.net
>>268
一文字7bitにしてzstdとかgzipに掛けるとか
271:デフォルトの名無しさん
21/08/02 21:04:03.31 qdvnGLBb.net
>>268
圧縮に時間かかっても良いならxz使うとか。圧縮率低くても速くやりたいならgzipとか。
272:デフォルトの名無しさん
21/08/02 22:09:29.23 2pS+scOh.net
>>269
ありがとうございます!
1文字を7ビットにするというのはどういった処理をしてやれば良いのでしょうか?
>>270
ありがとうございます
Wi-Fi経由での転送で30分以上かかったりしているクソバカコードを書いているので
圧縮にある程度時間がかかっても良いのですが
Swiftでxzの圧縮というのを調べても見つからなかったため、gzipが良いかもしれません
273:蟻人間
21/08/02 22:16:22.08 LkFRX9kv.net
>>271
ビットシフト演算です。
使わない最上位ビットを捨てて、余った1ビットに別の実データのビットをずらして格納する。
これでデータ量は約7/8倍。
274:デフォルトの名無しさん
21/08/02 22:25:56.44 lJJomUVT.net
>>271
SwiftならLZMAが使える(7zのやつ)
URLリンク(developer.apple.com)
275:デフォルトの名無しさん
21/08/02 23:35:00.18 2pS+scOh.net
>>272
ありがとうございます
不思議ですが、Asciiは1bitずらしても原型を保つのですね
勉強になります
>>273
gzipよりも圧縮率が高いみたいですね!
助かります、ありがとうございます!
276:デフォルトの名無しさん
21/08/03 01:15:30.36 +2OqpybX.net
WindowsCEのWordとExcelには
タッチペンで手書き入力出来てるんだから
マクロで作れないの?
277:デフォルトの名無しさん
21/08/03 06:39:47.81 juXUNReq.net
CDN でWEB高速化 コンテンツ圧縮(gzip)の設定と注意点
URLリンク(blog.redbox.ne.jp)
Can I use で調べると、HTTP header でgzipは、すべてのブラウザで対応している
gzip compression
This HTTP header is supported in effectively all browsers.
278:デフォルトの名無しさん
21/08/03 08:44:00.22 XGDJQv+W.net
Railsは、レンタルサーバーで動かすのは難しいという理解で合ってる?
1. rails serverが常駐する必要があること。プロセスの時間制限にひっかかり、
勝手に kill されてしまうかも知れない?
2. rails をインストールする時、時間が掛かってkillされてしまうため、
何度もやり直す必要があるが、ファイルが中途半端にインストールされて
間違ったファイルがインストールされてしまうかもしれない?
一方で、Djangoは、CGI形式が使えるからレンタルサーバーでも
使い易い?
279:デフォルトの名無しさん
21/08/03 11:40:06.01 JFQNdtCB.net
Rails使いたいならHerokuとかのPaaSでいいだろ
向き不向き云々以前に、ベターな選択肢があるから誰も見向きもしないだけかと
280:デフォルトの名無しさん
21/08/03 12:57:09.95 acfXmXQL.net
vpsでいいし
281:デフォルトの名無しさん
21/08/03 12:59:28.48 /S8mlA8D.net
if invalid_entries():
return
以下普通の処理
アーリーリターン用に否定を期する?関数書いた方が
一連の文章として自然な気がするんだけど、そもそも否定から入るって変な気もする
アリですか?無しですか? プロのグラマーではないので、普通はこうするみたいなのが分からないのです
if valid_entries():
_処理
__処理処理
___
else:
return
普通はこうだと思うんだけど,ネスト減らしたいし、アーリーリターンなのに遠くに行ったり
好きじゃないわという動機です
282:デフォルトの名無しさん
21/08/03 13:11:11.26 JFQNdtCB.net
>>280
アリというか基本そうすべき
一般に、異常系は真っ先に弾くのがベター
異常系の文脈を考慮しなければならない範囲を最小化することでテスト性可読性保守性が向上する
283:デフォルトの名無しさん
21/08/03 14:11:16.58 4EGDKMYd.net
not がある言語は if not is_valid()
ない言語は if is_not_valid() 作っちゃうな
否定演算子と== falseはなるべく使わない
invalidでもいいけどnotのがジャップにはわかりやすいと思うぞ(個人の感想です)
284:デフォルトの名無しさん
21/08/03 14:27:36.13 muBZNxXy.net
インポシブルとか
インポテンツとかわかるだろ
285:デフォルトの名無しさん
21/08/03 14:39:16.07 juXUNReq.net
>>277
Ruby on Rails は、レンタルサーバーでは動かない。
レンタルサーバーは、Word Press とか
食べチョクみたいな若い女の子が、1人で始める場合は、Heroku, Bootstrap。
食べチョクは、AWS だけど
AWSなら、くろかわこうへいのサロン�
286:ノも入る必要がある KENTA, 2021/3 女性エンジニア&個人開発者のだむはさんにインタビュー www.youtube.com/watch?v=ieljaqRC98A Heroku, S3, 決済はStripe, Docker
287:デフォルトの名無しさん
21/08/03 19:45:52.89 I3gKaej4.net
is_valid() == false はないな
not is_valid(), !is_valid() は使う
わざわざ is_not_valid() なんて関数増やすのはどうかと思う
288:デフォルトの名無しさん
21/08/03 22:33:44.64 /aKxYWHz.net
if not isvalid() より
if invalid()のが 認知負荷は少ないので
もしそのパターンしかないならinvalid書くかな
notにシンタックスハイライト当たるのもムカつく