C#, C♯, C#相談室 Part94 [無断転載禁止]©2ch.net

レス数が900を超えています。1000を超えると表示できなくなるよ。
2017/04/22(土) 15:36:53.26ID:S+KK7a41
■Visual Studio 2015 Community & Express (無償の統合開発環境)等はこちら
http://www.visualstudio.com/downloads/

■コードを貼る場合はこちら
http://ideone.com/

■前スレ
C#, C♯, C#相談室 Part92 (実質93)
http://echo.2ch.net/test/read.cgi/tech/1485589613/

■次スレは>>970が建てる事
建てられない場合は他を指定する事。
2017/07/26(水) 11:24:14.60ID:Pjw6cyms
>>502
言語仕様変えろって言うほうがおかしいだろw
頭大丈夫か?
2017/07/26(水) 11:26:18.98ID:Pjw6cyms
ありがちじゃないからこそ問題なんじゃないか
指摘されるまでそれが問題だなんて意識すらしてない
2017/07/26(水) 11:35:37.24ID:Cox8uos8
>>503-904
頭悪すぎて反論する気にもならん。
2017/07/26(水) 11:45:50.66ID:Cox8uos8
まああれだ、杞憂って言葉があるけど、>>504は今後一切外に出ない方がいいよ。
だって外に出たら、隕石が君の頭上に落ちてくる蓋然性は存在するからな。

そんなこと地球上で何十年に一人経験するかどうかってレベルのはずだが、>>504によれば
ありがちじゃないからこそ問題なんだよね。

指摘されるまでそんな問題が存在すると意識してなかったろうけど、
今ちゃんと指摘したよ?
2017/07/26(水) 12:02:11.22ID:Pjw6cyms
ここまでのアホは見たことない
触るだけ損だなw
2017/07/26(水) 12:04:27.95ID:Pjw6cyms
>>506
それだったらデバッグする必要ないよな
お前はテストも否定しそうだな
お前の言い方じゃ10年に一度起こるバグもほっとけばいいんだろ
2017/07/26(水) 12:10:17.45ID:iRPu4Cf2
>>505
お前のせいで904までアンカーついたぞ
死ねハゲ
2017/07/26(水) 12:14:59.82ID:86kwINRT
レスの多い方が勝ちだとでも思ってんのか
昼休み終わったらそれ以上続けるなよ
2017/07/26(水) 12:26:52.20ID:NHLh2Zn7
ばかvsばか
まさに熱い夏
2017/07/26(水) 12:41:56.40ID:k3AkEgWV
絶許狙いのガイジID:Cox8uos8に触れるな
2017/07/26(水) 20:08:10.13ID:qHYVpVTl
急に単発の煽りが増えたなぁ。そういえばゆとりは夏休みやな。
2017/07/26(水) 21:24:47.56ID:5gVt8qYH
thisつけないってヒトのレスは頭オカシイから
自分は今後はthisつけるようにする。
2017/07/26(水) 21:55:49.84ID:jF4Wb4A9
そんなあぼーん宣言みたいなしなくていいよ
負け犬臭い
2017/07/26(水) 22:02:24.09ID:/gzQVqUl
会社のルールとかじゃなければ自分の好きにしたらいいのに
何のために2chで「俺はこう書くぞ」宣言なんかするんだろ
2017/07/26(水) 22:02:24.86ID:Cox8uos8
それが自覚できないから言ってるんだから言っても無駄だよw

頭の悪い奴って総じて自分が見えてないし自分に突っ込む能力がないし
自分が他人からどう見えるのか考える能力が欠如してるから見てて笑えるけど、
なんか哀れだよね。
2017/07/26(水) 22:03:05.46ID:Cox8uos8
>>516
うん、絵に描いたような酸っぱいぶどうだねそれ
2017/07/26(水) 22:09:22.94ID:Cox8uos8
頭悪い奴ってさあ、議論で勝てないとすぐにこうやって問題をずらすんだよね。
そんあすっぱいぶどうを取る方法を議論してどうするんだ、ってねw

そんなことで勝ったつもりになれるところがまた頭の悪い所以でもあるんだけど、
それがただの幼稚な防衛機制でしかないことに本人がまったく気が付いてないところが
見てて哀れだよねほんと
2017/07/26(水) 22:18:53.17ID:0qyy9e35
頭悪い奴って毎回長文だよね
2017/07/26(水) 22:42:01.16ID:qHYVpVTl
逆やw ふつうは馬鹿のほうが長文は書けへんもんやw
2017/07/26(水) 22:42:41.57ID:kVXZn+TQ
>>521
2ちゃんは初めてか?
2017/07/26(水) 22:45:27.80ID:ZdFVUMtA
いやーだらだら書くだけなら簡単だよー
思いついたこと片っ端から書いていったらいいんだもん
もちろんいい長文は難しいけどね
2017/07/26(水) 22:51:57.92ID:qHYVpVTl
>>522
あほかこいつ。コテもつけず単発IDのゴキブリが話に入ってくんな。100年ROMってろや。
2017/07/26(水) 22:57:09.38ID:ZdFVUMtA
このスピードで単発煽りとかマジか
2017/07/27(木) 00:05:39.25ID:pBeXUKYV
ここ何のスレだよwww
527デフォルトの名無しさん
垢版 |
2017/07/27(木) 01:02:19.10ID:q1rhXXen
ID:0qyy9e35 = ID:kVXZn+TQ = ID:ZdFVUMtA = ID:pBeXUKYV

分りやすいwww
2017/07/27(木) 02:12:01.71ID:dT7rWBv0
>>524
コテつけろよ
2017/07/27(木) 05:07:47.58ID:8Pl9AOTH
ここの住人よりMS社員の方が信頼できる
2017/07/27(木) 06:41:15.13ID:dT7rWBv0
肩書程度で信じるなよ
2017/07/27(木) 06:42:14.60ID:DHwQ8OYH
ちょまどはMS社員と言っても営業みたいなもんでプロダクト作ってるわけじゃないからなあ
2017/07/27(木) 06:43:39.12ID:DHwQ8OYH
あと、MSの公式な見解としては「VSのデフォルトでは警告」という事実があるわけだし
2017/07/27(木) 12:44:28.47ID:dT7rWBv0
デフォルトで警告でるのか?
2017/07/27(木) 15:14:21.59ID:Z//NMKrJ
>>533
2015でも2017でもそんな記憶がない
2017/07/27(木) 15:43:58.34ID:rNF4SuJb
>>534
IDE0003ね
ちなみに.NET Coreのスタイル規約
https://github.com/dotnet/corefx/blob/master/Documentation/coding-guidelines/coding-style.md
2017/07/27(木) 15:59:54.41ID:dT7rWBv0
つまりthis書いても省いてもデフォルトじゃ警告でないってことだな
2017/07/27(木) 19:12:46.44ID:+34Fnjid
コーディングスタイルなんてどうでもよかねえか
パブリックAPIが標準から逸脱していない
クラス(1ファイル)の中で一貫性がある
これだぇ守ってくれりゃとくに苦もなく読める
それよりまともな構造を追求することに労力を使おう
構造がクソだとスタイルでどう頑張っても読めないよ
2017/07/27(木) 22:06:26.64ID:P8zzUyc0
>>537
お前が読めるかどうかなんてどうでもいい
プロジェクトに参加してるあまり程度の高くない協力会社のコーダーにも読めることが必要
まあコーディングルールの話に構造がぁって言う奴はたぶんうちが使ってる協力会社よりレベルは低そうだが w
2017/07/27(木) 22:11:23.55ID:aAe8+IMH
>>537
読めるかどうかじゃなくて、いろんな書き方されると読むのにいらん苦労するから
書き方のスタイルを決めましょう、って言うのがコーディングルール
いろんなスタイルの大量のファイルやクラス読まされてみ

ちゃんと動いてるコードが読めないようならプログラマ失格だな
540デフォルトの名無しさん
垢版 |
2017/07/27(木) 22:14:31.14ID:8Pl9AOTH
http://channel9.msdn.com/Events/de-code/2017/TL01
17:25〜this戦争
2017/07/27(木) 22:36:28.25ID:lpXAd1IH
C#実践開発手法という本が気になってるんですが、5000円越えと高価なので迷ってます。
この書籍、良書といえますか?
2017/07/27(木) 22:58:14.83ID:+34Fnjid
スタイル規約だけはしっかりしてるスパゲティコードを何度見たことか
構造がスッキリしてればスタイルの違いなんてなんの苦労にもならない
ユニット内で統一感が取れてれば十分
それがユニットというものだ
543デフォルトの名無しさん
垢版 |
2017/07/28(金) 00:44:11.19ID:OXiEJljk
>>542
スパゲティの意味が違うだろ。
2017/07/28(金) 01:22:34.38ID:zJzFrb+p
スパゲティ知らないやついるんだ。
ドン引き。
545デフォルトの名無しさん
垢版 |
2017/07/28(金) 04:25:03.23ID:OXiEJljk
多少わかりにくいレベルでスパゲティというやつがいるから困る。
2017/07/28(金) 04:42:25.21ID:OWwd/o6o
>>541
VSのフォルダに言語仕様書のWord文書が入っているがそれで十分な気がする
547kadesu
垢版 |
2017/07/28(金) 10:39:02.10ID:aEC8q9AI
■概要
HTML・JavaScriptを自動解釈してくれるライブラリやツールを探しています。

■詳細
疑似WEBブラウザを開発中です。

指定したURLへのHTTPリクエストを飛ばして返ってきたレスポンス(HTML・JavaScript)を自動処理して、
後続のHTTPリクエストも飛ばす、というものです。

1回目のクリエストを飛ばしてレスポンスを取得するところまでは開発が完了していますが、
そのレスポンスを自動で解釈して次のHTTPリクエストを発行する機能を作りたいのです。

これを愚直に行うと、
レスポンス内容の中からURLに該当する文字列をピックアップしてURLを抽出して後続のリクエストを飛ばす・・となってしまいますが、
近年JavaScriptが自動的にリクエストを飛ばす処理も多くみられますので、現実的ではありません。

なので、2回目以降のリクエストを自動的に行うために、
HTML・JavaScriptを自動解釈して、2回目以降のリクエストURLを抽出してくれるようなライブラリやツールを探しています。

良いライブラリやツールをご教授下さい。(URLやライブラリ名など)
厳密じゃなくても似たようなものでも結構です。
※ちなみにWEBブラウザのような表示機能は不要です。あくまでHTTPリクエストを飛ばしたいだけです。

■開発環境(本質問とはあまり関係ないですが一応掲載します)
Microsoft Visual Studio Express 2012 for Windows Desktop
C++ CLI(NET Framework)
2017/07/28(金) 11:03:17.06ID:H9Qo6cXw
>>547
どこかで最近見たような内容だな
ここはc#スレなのでc++はスレチ
2017/07/28(金) 11:09:50.96ID:4kYE+X2u
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q10177240120
2017/07/28(金) 11:11:01.88ID:epWJgUcs
>>547
要はスクレイピングやWebサイト自動テストの類だろ
Selenium使え
2017/07/28(金) 11:11:29.66ID:4kYE+X2u
stackoverflowにもあるなw
2017/07/28(金) 11:57:07.10ID:H9Qo6cXw
とんでもないマルチポスト野郎なのか
それとも誰かが勝手にやってるのかw
553デフォルトの名無しさん
垢版 |
2017/07/28(金) 16:43:43.52ID:AFEjF9o4
失礼しま〜す
どこかにあるかもしれませんが質問を。

C#を  というか、プログラミングを始めたばかりなんですが、
メイン処理のソースが、ほかのところに回せそうな処理で長くなってしまうのは
格好が悪いとおもうのですが、自力ではどうにもならないです。
なにか、分散させる方法のアドバイスがあれば、どうかご回答をお願いします。
2017/07/28(金) 16:47:10.00ID:6ZUJ6Gan
>自力ではどうにもならないです

の意味がわからん
お前の書いたソースじゃないのか?
555デフォルトの名無しさん
垢版 |
2017/07/28(金) 16:58:23.24ID:AFEjF9o4
私が書きました。
でも、なんかダサい気がします。気がするんですがどう修正したらいいのかがわからなくて…
2017/07/28(金) 16:59:05.44ID:eCIIVBTi
動作を早くしたいのならループ中の余計な動作を減らすようにするとか
保守しやすいコードを書きたいのならデザインパターンなどを勉強するとかあるが
>>553
ソース示さずにそんなこと言っても自分のセンスの問題なんだからどうしようもないから諦めろ
557デフォルトの名無しさん
垢版 |
2017/07/28(金) 17:02:14.71ID:AFEjF9o4
>>556
ソース貼ろうか考えたんですが、ちょっと…

わがままです。ごめんなさい
2017/07/28(金) 17:10:32.68ID:6ZUJ6Gan
C#ならリファクタリングで処理を切り出したりしやすいし
リーダブルコードとか良いコードを書く技術とか読んで
いろいろやってみりゃいい
559デフォルトの名無しさん
垢版 |
2017/07/28(金) 17:17:37.98ID:AFEjF9o4
もっとソースみるなり勉強してきます。
ありがとうございました。
2017/07/28(金) 17:18:42.17ID:4kYE+X2u
短くしなきゃいけないという強迫概念に襲われてるやつ多いけど、別に長くてもいいよ。気にすんな
2017/07/28(金) 17:20:30.90ID:mbT3OJMo
ソースをhttps://ideone.com/みたいなとこに張ったら一発だよ
ここのお兄さんがたが知恵を絞って色々批判してくれるよタダで
そしてそれが、すこしの恥とひきかえにおまいを成長させる
562デフォルトの名無しさん
垢版 |
2017/07/28(金) 18:19:30.49ID:AFEjF9o4
>>560>>561
どうもありがとうございます
2017/07/28(金) 19:57:56.53ID:wfFGjuoD
前略main(引数略)
{
処理a;
処理b;
処理c;
処理d;
リターン
}
564デフォルトの名無しさん
垢版 |
2017/07/28(金) 20:32:00.92ID:AFEjF9o4
なにやら、「Stateパターン」というのを使えばきれいになりそうです
2017/07/28(金) 21:13:19.68ID:/6BVCD/F
Stateはアンチパターン
「状態は明示的かつ最小限に」が今風
566デフォルトの名無しさん
垢版 |
2017/07/28(金) 21:20:18.20ID:AFEjF9o4
へ〜。
じゃあどうするとよいのでしょうか...
2017/07/28(金) 22:10:55.08ID:2VdCpbf6
いいから>>561のサイトにお前の書いたコード貼れ
2017/07/28(金) 22:13:50.04ID:ItR12R6X
ろくにコード書かない初心者ばかりのスレに貼ってもしょうがないな
569デフォルトの名無しさん
垢版 |
2017/07/28(金) 22:42:33.73ID:AFEjF9o4
https://ideone.com/cHsNov

これでどうか。
どなたか優しくご教授になってくださるとうれしいです...
570デフォルトの名無しさん
垢版 |
2017/07/28(金) 22:44:40.17ID:AFEjF9o4
ほんとにはじめたてです。
VisualVasic使ってますが、機能がいまいち使いこなせません。
571デフォルトの名無しさん
垢版 |
2017/07/28(金) 22:49:28.94ID:AFEjF9o4
>>569
のやつ思った通りに動かないやつでした。
また貼りにきます
2017/07/28(金) 22:54:19.21ID:wndodTEE
長い... か?
573デフォルトの名無しさん
垢版 |
2017/07/28(金) 22:54:29.48ID:AFEjF9o4
https://ideone.com/C2DZMv
です。よろしくお願いします。
574デフォルトの名無しさん
垢版 |
2017/07/28(金) 22:55:23.06ID:AFEjF9o4
>>572
これから内容増やしまくるので、
本体から離したいです。
2017/07/28(金) 23:55:21.82ID:ai+ukChT
プロジェクトまるごとどこかにUPした方が口出ししてもらえるかもよ
576デフォルトの名無しさん
垢版 |
2017/07/29(土) 00:21:01.93ID:1x0TX8t+
>>575
そうですね、ありがとうございます
2017/07/29(土) 00:22:42.64ID:flgXEmXz
>>573
分岐条件と処理の対応表作って飛ばすだけじゃだめなの?
2017/07/29(土) 00:29:09.54ID:gp3BUyJn
長い処理は長くていいと思うが保守目的なら、parial使ってソースファイル分けるのがいいかな。
2017/07/29(土) 00:56:00.91ID:kJ48tJGw
これはどうしようもないとまで言えないけど
こんなもんだろ
2017/07/29(土) 02:51:51.63ID:gp3BUyJn
すまん、スペルミス。partial ね。
581デフォルトの名無しさん
垢版 |
2017/07/29(土) 12:30:26.46ID:1x0TX8t+
>>579
こんなもんなんですね!
では気にせず書いていきたいと思います

>>580
partialについて勉強して、良さそうだったら使ってみようかと思います

ありがとうございました
2017/07/29(土) 12:37:15.78ID:oSnm1RVH
長いかどうかというか責務が分割されてるかだよ
責務が分割されてるなら自然と短くなる
ショートコーディングを突き詰めるのはその後
583デフォルトの名無しさん
垢版 |
2017/07/29(土) 12:41:24.13ID:1x0TX8t+
処理を1つ1つのシーンごとに完成させたいんですが、
キーイベントと描画で、一緒に書きたい部分が分けられちゃってるんです。
それを、できたらどうにかしたいと思います。
2017/07/29(土) 18:43:03.15ID:gp3BUyJn
ベースとなるシーンクラスを作る。キーイベントや描画の仮想関数も入れとく。
個々のシーンごとに、継承してクラスを作り、そこにキーイベントと描画を実装する。
ストーリー進行管理クラス作り、そこでシーンクラスの切り替えを行う。
2017/07/29(土) 19:23:12.73ID:TPlqyDtD
キーイベントをコマンドに変換してモデルに投げるクラス
モデルを描画するだけのクラス

これは分けとかないと後で泣くよ
2017/07/29(土) 20:14:15.70ID:C4g3d83/
C♯を触ってるけど、独習C♯をちょっとかじって、作りたい物ちょこちょこ適当に作ってるから綺麗なコードってのがよく分からない
このスレの人達はサンプルソース見たりとかやりやすい作法とかどうやって見つけてますか?
2017/07/29(土) 20:31:18.14ID:TPlqyDtD
>>586
本を読む
コードを書く
レビューする
レビューされる
常に考える
2017/07/29(土) 20:41:15.53ID:C4g3d83/
>>587
レビューする、されるは考えた事なかったですねー
作ってる物が物なだけにあんまり同じ方向でやるような思考が無かったのもありますが・・・
ありがとうございます
2017/07/29(土) 20:41:31.78ID:iH5rcp7M
>>586
GitHubの有名なプロジェクト見てみ
2017/07/29(土) 20:45:58.77ID:C4g3d83/
>>589
あー、そういうところから見るって手もあるんですね
こういう管理系統のモノ入れても使っていませんでしたが、そういう使い方もしたいですね
2017/07/29(土) 21:02:11.91ID:zJVnUUbX
>>589
こういうアドバイスする奴は実は自分でソース見たことない奴だと思うわ
結構癖のあるソース多いし考え方って想像以上にバラバラだから初心者が見たら余計に混乱するだけ
2017/07/29(土) 21:08:27.57ID:nvDf8a0u
本読んで勉強するレベルの奴はきれいなソースなんて考えなくていいよ
まずは動くソースかけるようになれよ
動くの書けたらごっちゃなソースになってるだろうから、そこで余裕があったら考えりゃいい
昨日の質問の奴みたいにその書いたソースに合わせてな
2017/07/29(土) 21:21:04.34ID:AM/Q5FkU
>>586
ブログで成果物のコード公開してみたら?
コメント等で指摘してもらえたりするかもよ?
2017/07/29(土) 21:34:41.88ID:C4g3d83/
>>591
使いたい機能で備忘録とかサンプルみたいなのは見たりするけど、
プロジェクトレベルで無いかなーとかは思ってたので、どんな感じかは興味ありますね

>>592
動くものはそこそこ作ってるんですけど、オブジェクト思考とかまったく勉強してないので、
関数切り貼りとか汎用関数適当にぶち込んだクラス使い回しで、ほぼベタ書きみたいなもんなんですよね
たまーに少し凝って少しずつ汎用度は上げてますが

>>593
やっぱり公開するのが一番手っ取り早い上達方法だとは自分も思います
自分で改善するには、現状の自分のレベルよりも上の人からきっかけ貰わないとそもそも気付けないパターンのが多いですし

基本的にはスクレイピングしてDBにデータを集めて、それを色々と分析するようなプログラム書いてるだけなので、
ベタでも動かすのは大体問題無いんですよね
しかし、こういう作法は効率悪いよとか、こういう書き方すればいいじゃんみたいな参考コードから
自分のコードに付け足したいってイメージでした
2017/07/29(土) 22:32:29.25ID:1IyGodP3
>>594
そういうのはC#よりPythonなどのスクリプト使ったほうがいいんじゃないか?
圧倒的に手っ取り早く作れるよ
2017/07/29(土) 22:42:14.14ID:C4g3d83/
>>595
Rubyでスクレイピングしてる参考書買ってちょっと書いてた時期あるんですが、それが少し動作遅かったのでC♯で移植してからずっとC♯使ってるんですよね
後はC♯のchartクラスとかも少し触ったりしてます

Pythonは触ったこと無いですが、作業内容に合わせてコーディング時間調整できるぐらい色んな言語触れる用になるのは目標ではありますね・・・
2017/07/29(土) 22:50:27.83ID:d/bKk9xj
Pythonだとmatplotlib使えばクソ簡単に高品質なグラフ描けるよ
スクレイピングがスクリプトで遅いのはXPathをうまく使えてないんじゃないかな
スクリプトを使うなら重い処理は極力ライブラリに丸投げするのがコツだ
2017/07/29(土) 23:02:02.11ID:iH5rcp7M
>>591
これがいわゆる井の中の蛙ってやつです
2017/07/29(土) 23:12:38.60ID:TPlqyDtD
スクレイピングはjsだろ
600デフォルトの名無しさん
垢版 |
2017/07/30(日) 03:04:38.72ID:1m5312Xu
>>586
その独習C#とかで書かれてるようなのがいわゆる綺麗なコード。
まあ、有名ライブラリ書いてるコミッタとかでもそんな綺麗じゃない場合もあるので、ぶっちゃけ優秀な成果物作ったもん勝ちってのはある。
勝てば官軍。
行儀のいい無能より、素行不良でも有能な奴が好まれるのはどの業界でもよくある。

勿論、綺麗なコード書けるに越した事はないけど。
2017/07/30(日) 04:38:20.28ID:9ZftmVJd
昔はDr.Dがレクチャーしてくれたのにな。
2017/07/30(日) 04:54:53.83ID:ZiKC4drW
スクレイピングはPowerShellでやってる
603デフォルトの名無しさん
垢版 |
2017/07/30(日) 05:57:53.68ID:1fafOaKT
「きれいなコード」とはまた違うのかもしれないけど、「C#らしい生産性の高いコード」ってなかなか書けないよね
C++やC++/CLIが高機能かつ安全になりすぎたせいもあってC#の優位性が失われた気がするんだよな
VisualStudioやVSCodeの補完機能の効きが違うせいでC++よりC#が使いやすいとか、機能が少ない分C#の方が他人の書いたコードが読みやすいとか、今となってはそれぐらいしかメリットが無い気がする
2017/07/30(日) 06:03:17.61ID:Qmd4c3j+
今のC++ってC#に匹敵するほど生産性高いの?
2017/07/30(日) 06:03:50.53ID:lj6eZdZL
生産性の高いコードは言語と無関係だと思うな
2017/07/30(日) 06:08:48.44ID:ynobldaf
>>598
お前が井戸からでて実際のコード見てから語れよ w
2017/07/30(日) 06:27:12.70ID:9ZftmVJd
生産性と保守性はトレードオフ。
2017/07/30(日) 07:18:45.15ID:hMQywZRx
>>606
見てないわけねーだろカスwww
2017/07/30(日) 07:57:39.53ID:ynobldaf
>>608
どこのソースを読んでどんなところがいいのか具体的に言ってみ
2017/07/30(日) 08:02:02.87ID:6NpzZP8L
さすがC#erはパッパラパーやな
2017/07/30(日) 08:08:37.81ID:lj6eZdZL
人のソース見てもたいていは小手先の表現しか参考にならない
汚いコードとの対比がないからな
人のソース見てそれ以上がわかるやつは相当デキル
2017/07/30(日) 09:04:32.55ID:zdXHYEze
>>609
Cakeでもいいから頭に入れてもらおうか
2017/07/30(日) 09:41:14.51ID:reLfmDHf
綺麗なコードは端的に読みやすくて再利用性が高いってイメージで使ってました
後から機能拡張し易い書き方とかもそうですね
基本的にはオブジェクト指向な感じです
2017/07/30(日) 09:42:29.47ID:ynobldaf
>>612
で、どんなところがいいのか説明してみ
名前だけならソースなんて見れないボンクラでも書けるし w
2017/07/30(日) 19:11:49.81ID:mbPMaYUG
webbrowserコートロールにedgeが使えるようになるのはいつ頃でしょうか?
2017/07/30(日) 19:15:45.46ID:lj6eZdZL
最初から使えるよ・・・
2017/07/30(日) 20:45:25.67ID:dej2VYm/
>>614
よおボンクラ
2017/07/30(日) 20:51:26.25ID:uWnLP08p
>>614にまともな返事がない時点で勝負は決した
敗者は頭を下げるように
2017/07/30(日) 20:58:34.14ID:dej2VYm/
>>618
Cakeって例が上がってるだろ
2017/07/30(日) 21:23:35.05ID:ynobldaf
>>619
日本語が理解できないのかな?

> 名前だけならソースなんて見れないボンクラでも書けるし w
2017/07/30(日) 21:38:52.09ID:hMQywZRx
>>620
うん、ボンクラだから理解力皆無ってことね
2017/07/30(日) 21:42:33.26ID:Xb1IyPJ1
>>620
ねえねえもしかしてCakeのソースすら見たことないのかな?
2017/07/30(日) 21:43:27.07ID:SibjNbLq
>>616
横レスだけど
https://social.msdn.microsoft.com/Forums/ja-JP/d0aeb9ca-c21e-43ea-8ed0-5eb309d96f9e/webview?forum=windowsgeneraldevelopmentissuesja
.NetFramework デスクトップアプリケーション用のWebView(WebBrowserコントロール)は以下の認識
でいますが間違いがないでしょうか?
1.Microsoft Internet Explorer 7が既定となっている。
2.レジストリ変更によりInternet Explorerのバージョンの変更が可能。
3.Internet Explorer以外のブラウザ(Microsoft Edge、Google Chrome)を使用できるコントロールはない。

このページの内容は間違っているの?
2017/07/30(日) 21:45:05.94ID:hMQywZRx
>>622
CakePHPとでも勘違いしてるんだろ
2017/07/30(日) 21:53:49.94ID:ynobldaf
>>618 で確定やね
2017/07/30(日) 22:55:14.27ID:75orpNSa
>>623
1、2はIEのコントロールのことであってる
3はedgeもchrome系もコントロールあるから間違ってる
2017/08/01(火) 18:41:49.84ID:ZyMYFMmz
質問。
これはどういうケースを想定したものなのか教えてくれ。

> フォーカス イベントと検証イベント
> (中略)
> マウスの使用、または Focus メソッドの呼び出しによってフォーカスを変更する場合、Control クラスのフォーカス イベントは次の順序で発生します。
> Enter
> GotFocus
> LostFocus
> Leave
> Validating
> Validated
> https://msdn.microsoft.com/ja-jp/library/86faxx0d(v=vs.90).aspx

現状固定的な画面のUIでやっていて、
ファイル名を入れるテキストボックスとその隣にopenFileDialogを呼ぶボタンを配置している。
まあ、よくあるUIだ。
これを、ボタンの領域をケチりたい(少しでも長くファイル名を表示したい)ので、
試しに動的なUIで「テキストボックスのEnterイベントでボタンが出現する」ようにしてみた。
ボタンはテキストボックスのLeaveイベントで消す。
ボタンを押すときは当然テキストボックスの外に出るので、
ボタンのEnterイベント、LeaveイベントでテキストボックスのLeaveイベントを -=, += している。
(後からMouseXXXXイベントも対応するから、今は突っ込まないでくれ)

さて、ここで、ボタンが押せない。
理由は簡単で、テキストボックスのLeaveの方がButtonのEnterよりも早く、ボタンがremoveされてしまうからだ。
これについて、上記を読む限り、Enterのほうが先、つまり、
ButtonのEnter -> TextBoxのLeave
だと思うのだが、とにかく、そうなってない。
上記ページはどういったケースについて記したものか、分かる人教えてよろしく。
或いはこのケースはどのページを参考にすべきなのだ?
2017/08/01(火) 18:49:25.41ID:yNdQgkwx
移動先のEnterが先っていう説明じゃなくて
当該コントロールに入ってから出るまでのイベント発生順序なんじゃないの
2017/08/01(火) 18:50:37.36ID:V7LkTZZN
visible
2017/08/01(火) 18:52:41.34ID:V7LkTZZN
というか
やり方が全くダメダメ
2017/08/01(火) 19:19:16.59ID:ZyMYFMmz
>>628
ああ、そういうことか。サンクス。
ただそれならFocusのGet/Lostで分離して書いていてくれれれば誤解無いのだが。

>>630
フォーカスは一つ(マウスは一つ)なのだから、
動的にadd/removeしても全く苦労しないし問題ないが。
当然visibleを使っても出来るが、同様にイベント順は見えるから同じ。(はず)
2017/08/01(火) 19:20:55.16ID:IDglmNpI
>>631
状況によって変わるものをどうやって書けと…

leaveとenterが常にセットで起こるとは限らん
相手が一つも限らない
2017/08/01(火) 19:29:13.42ID:ZyMYFMmz
>>632
どう考えてもEnterはLeaveより先なんだから、普通に以下でいいだろ。

----
マウスの使用、または Focus メソッドの呼び出しによってフォーカスを『得る』と、
次の順序で Control クラスのフォーカス イベントが発生します。
Enter
GotFocus

マウスの使用、または Focus メソッドの呼び出しによってフォーカスを『失う』と、
次の順序で Control クラスのフォーカス イベントが発生します。
LostFocus
Leave
Validating
Validated
----

もしかして、別々に書いているのは、Control内部で状態保持していて、
キーボードでフォーカスを得た際は、マウスでフォーカスを失っても、別順
Leave
Validating
Validated
LostFocus
という超絶糞仕様だったりするの?もしかして?

> 相手が一つも限らない
いやFocusは常に一つだよな?
2017/08/01(火) 20:23:22.15ID:mmKtfIMx
>>627
テキストボックスのMouseDownにボタン用のイベントを入れる
MouseDownされた座標を調べてボタンの位置でなかったら実行しない
で一応は実現できると思う。ボタンは位置を示すためだけの飾りになる
その前にコントロール重ねるのもイベントが衝突しかねないのも良くないとは思う
2017/08/01(火) 20:38:33.37ID:/TDpqH7O
前提条件を限定してエンジン側の仕様に文句言っても…
想定した前提条件に合致するように橋渡ししてやりゃいいんじゃない?
2017/08/01(火) 20:39:44.45ID:7d8zSu3L
>>633
変な考え方する人だな。

Enter発生後の状態って概念があるかどうかわからないけど仮にEner状態と呼ぶとして、
「EnterはLeaveより先」って仕様だと親子(入れ子)関係にない2つのコントロールが
同時にEner状態であることを許すことになるわけだけど、そのあたり考えて言ってるのかなそれ
2017/08/01(火) 20:54:59.71ID:ZyMYFMmz
>>634
実装はボタンを遅延消去(10ms)する方向で考えてる。
理由はそのほうがコードがスッキリするから。
コントロールは重ならない。
というかボタン出現時にテキストボックスをその分縮めるからだが。

>>636
知らんがな。
MSDN確認したらそう書いてあるからそう実装したら動かない、
じゃあ逆なんだろ、ってのは予想付くが、それで正しいのか?という疑問だ。
普通はLeave->Enterの順だと思うよ。HTMLはそうだし。
ただ.NETはそこら辺古くて、奇妙な仕様が残っていたりするから確認したかった。

ああ、だから、以下の書き方が一番いいのか。まあいいけど。

----
マウスの使用、または Focus メソッドの呼び出しによってフォーカスを変更すると、次の順序で Control クラスのフォーカス イベントが発生します。
LostFocus
Leave
Validating
Validated
Enter
GotFocus
2017/08/01(火) 21:06:26.55ID:7d8zSu3L
>>637
いや、仮にもエンジニアの端くれなら、「EnterはLeaveより先」って話を聞いたら
瞬間的に整合性がない(仕様バグ)話だなって思わないとまずいと思うよ
2017/08/01(火) 21:11:05.05ID:yKWQrIWU
自分で何ともならん時は、理不尽でもそれを受け入れるのが職業エンジニアじゃね?
2017/08/01(火) 21:12:41.25ID:ZyMYFMmz
>>638
> 仕様バグ
それは違うだろ。どっちが組みやすいかはさておき、どちらの仕様でも組めるはず。
勝手にオレオレ仕様に決めつけるほうがまずいだろ。

俺も逆なのか?とは思ったよ。最近はHTMLに慣れてしまったので。
ただ今回に関してはEnterが先の方がコードは単純に済んだ。
一概にどっちがいいというものでもあるまい。
2017/08/01(火) 21:28:30.68ID:7d8zSu3L
>>640
違わない。
自分で書いてるでしょ。
入力フォーカスを持つコントロールは常に一つだと。

Enterが何を意味しているのかMSDNに書いてあるか知らないが、
普通に考えれば自分自身または子コントロールが入力フォーマスを持たないのに
「Enter状態」になるのは変で、そうであれば上の入力フォーカスの仕様と矛盾する
2017/08/01(火) 21:33:10.29ID:yDQeZmLh
馬鹿が暴れてるw

マウスは瞬間移動可能
周りの領域を通らないでいきなりenterだけ発生させることも可能だし
逆にleaveだけもありうる
2017/08/01(火) 21:37:33.35ID:ZyMYFMmz
>>641
君がどう考えるのも自由だが、俺は同意しないよ。
定常的には「フォーカスを持つのは常に一つ」だが、過渡的には実装次第だろ。
直感的には「フォーカスを持つのは常に一つ」の方がいいからそっちに揃っていることが多いだけで。
他で有名なのはRadioButtonで、
俺の勘違いでなければ.NETは仕様を変えてる。
そういうのがあるから確認しただけ。

ああだからそういった意味だと
> 相手が一つも限らない (>>632)
は俺の読み違いだな。彼はそこを指摘したのか。すまんかった。
2017/08/01(火) 21:38:49.91ID:yDQeZmLh
Enterが先に起こるとフォーカスが同時に2つになってしまう
Enter内部でフォーカスのカウントしてたら困るだろ

Leaveが先に起こってカウント一個→0個→一個のほうがいい
2017/08/01(火) 21:53:10.60ID:yKWQrIWU
フォーカスが移った時、ユーザーが見ているのは移った先の方だから
enterの処理を先にやったほうがレスポンスが早く感じる

てか、enterが先のほうが正義という理屈も有るんだから現状をバグと決めつけるのはどうかと思うよ
仕様を決めた人の裁量の範囲
2017/08/01(火) 21:54:46.29ID:7d8zSu3L
排他的な状態変化に連動する状態変化が排他的じゃなかったら矛盾に決まってるわけだけど、
こういうロジカルは話は通じない人には全然通じないね...

たぶん数学苦手だったタイプの人だと思うけど
2017/08/01(火) 22:02:55.06ID:yKWQrIWU
ロジカルが全てならleaveとenterは完全に同時発生しないとおかしいわけで
先にleaveと言っている時点で既にロジカルから妥協しているだろ

多分数学が得意だと思いこんでいたタイプの人だね
2017/08/01(火) 22:13:48.41ID:yDQeZmLh
まだや
2017/08/01(火) 22:17:32.13ID:yDQeZmLh
途中で送ってしまった
が、それはどうでもいい

実際コードを書いて確認した
予想通りというか内容的には納得の内容の結果を得た

それになんでこんな仕組みになってるかも理解した
他に並んでいるイベントをよく見るとおやっと思ったのでそこをつついたらいい答えがでた
Enterは確実に後でなくてはいけない
理由がちゃんとある
てめえらで確認せえや
2017/08/01(火) 22:18:32.76ID:yDQeZmLh
>>647
実験の結果
同時に起こってはいけないという結論に至った
2017/08/01(火) 22:21:58.45ID:yDQeZmLh
そして
EnterやLeaveは過信してはならない
というか仕組みを理解しないで使ったらだめだなこれは
2017/08/01(火) 22:25:45.32ID:yKWQrIWU
>>651
シビアな場合はBeginInvoke噛まして、両方発生してから動かすのが吉だな
2017/08/01(火) 22:30:33.16ID:7d8zSu3L
>>647
よく考えてから人を批判した方がいいよ

仮に一時的にどのコントロールもフォーカスを持たない状態が出来ても
入力フォーカスの排他性と矛盾しないが、2つのコントロールが同時に
入力フォーカスを持ったら矛盾する
2017/08/01(火) 22:36:38.37ID:yDQeZmLh
君らも思い込みで話さないでテストしたらいい
しつこく何度もやってると思ってるのと結果が違うから
2017/08/01(火) 22:45:07.88ID:yDQeZmLh
英語圏の人間じゃないから感覚がわからなかった

leave left left

leaveであってleftじゃないってこった
2017/08/01(火) 23:04:17.70ID:ZyMYFMmz
>>653
それは君のオレオレ正義仕様でしかないだろ。
世の中にはそうでないものもあるってことさ。
有名なのはPHPの三項演算子が左結合とか。
http://y-uti.hatenablog.jp/entry/2013/03/10/101020

仕様ってのはそう決められていれば仕様であって、
効率的でない/直感的でない/矛盾しているとかは別の話。
とはいえ、これらの場合は糞仕様と呼ばれることになるが。
2017/08/02(水) 00:04:23.74ID:hty1cPip
だからオレオレとかそういう話じゃなくて、全体の仕様に矛盾があるかないかのっていうロジカルな問題なのw
好みが入り込む余地なんかどこにもないってのw

いってるそばからこれ>>646だね。
まさにバカの壁
2017/08/02(水) 00:32:50.52ID:hty1cPip
ボクシングでも何でもいいけど、排他的にしかタイトルホルダーになれないとしたら、
タイトルホルダーが誰もいないのは問題ないけど、同時に二人がタイトルホルダー
になるのはまずい。

だったら、「ダイトル返上」イベントの前に「タイトル獲得」イベントが発生する仕様は
破綻してるに決まってるじゃないの
2017/08/02(水) 00:37:07.47ID:FVLt41mC
>>658
破綻してはいないんだよ。
数学が得意なつもりだが実は馬鹿な人には分からないのだろうけど。
2017/08/02(水) 00:41:26.26ID:hty1cPip
まあバカの壁の向こう側の人に何言っても無駄だからこれ以上はどうぞお好きに。
自分の同僚にこういう人いなくてよかったw
2017/08/02(水) 00:47:00.95ID:hty1cPip
つーか、自分の学校時代の成績考えりゃ自分が数学脳の持ち主かどうかなんて
だいたい見当つくとおもうんだけどねw

どう考えてもロジカル思考が得意なタイプと思えんが、その自信はどっから来るのかねw
ネトウヨと同じ、抑圧された劣等感としての自己陶酔か
2017/08/02(水) 01:01:44.68ID:DEfit7Mb
2017/08/02(水) 01:29:41.48ID:FVLt41mC
>>661
むしろお前の自信の方が不思議だわ。
とはいえ罵倒しあうのも意味無いから、片をつける勇気があるのなら、具体的に、
・○○のケースでEnter->Leaveの時には『絶対に』実装できない
というのを見つけてみろ。

それが確かにどうにも実装できないのなら、Leave->Enterの順でなくてはならないことになる。
それを俺らの誰かが実装できた=解けたなら、君が馬鹿だという証明になる。
分かりやすいだろ。

俺はそういうのは無いと思っているから、
・君が何も言えなかったら俺の勝ち
・君が言った物を誰かが解けても俺らの勝ち
・君が言った物を誰も解けなかったら君の勝ち
となる。では出題よろしく。


>>654
ちなみにテストコードを書く元気があるのなら、
・フォーカスがある(Enter済)ControlをRemoveで親から剥がしてみな。
確認してないが、多分Leaveは発生しないと思う。
というかHTMLではそう。
だからガシガシ動的に書き換える場合は基本的にカウントするのは危険だったりする。(>>644)
この場合にLeaveが発生した方が楽なのかはよく分からん。
ただそれ以前にFormはHTMLとは違って
動的にControlを剥がしたりするように設計されてはいないから、
この辺をつつけば矛盾はボロボロ出るはず。
とは言っても、そういう使い方をするな、でしかないが。
664デフォルトの名無しさん
垢版 |
2017/08/02(水) 01:30:38.42ID:9QC/HzqE
プログラムって国語だろ必要なの
仕様読み書き
言語読み書き
2017/08/02(水) 02:27:05.38ID:i1VhoxA9
>>663
何か訳のわからないこと書いてるけど、

> ・○○のケースでEnter->Leaveの時には『絶対に』実装できない
> というのを見つけてみろ。

そういうケースがあるとか、そんな話誰もしてないでしょ。
ばっかじゃないの本当。

仕様の整合性がないと言っている。
言っちゃ悪いけど、こんな簡単な話が理解できないのは、たぶんこのスレで君ともう一人ぐらいだよ。
2017/08/02(水) 02:41:15.20ID:i1VhoxA9
なぜ重箱の隅をつつくような話のように見えても論理的な整合性が重要かって、
普通のプログラマは、他人の作ったフレームワークであってもきちんと論理的に
整合性のある仕様になってるはずだと期待してそういう前提でコードを書くからだ。

論理的な整合性がない、仕様バグのあるフレームワークであっても
必ずしもそれが原因で実現できない処理が存在するとは限らない。
問題はそれが直感的でないこと。
プログラマの期待に反する仕様がバグを湯初すること。
2017/08/02(水) 02:55:20.71ID:i1VhoxA9
まあ、さすがにこのレベルの話が理解できないのが多数派とは思えないので、
誰か何か言ってやってよw

どうしてLeaveよりEnterが先に発生するような仕様は仕様バグなのか。
これがそんなに難しい話かねえw
言っちゃ悪いけど、頭悪い奴の思考回路って分からん。
2017/08/02(水) 03:01:13.24ID:FVLt41mC
>>665
なんだ論点ずらしで逃げるのか。
ネトウヨを嫌っているのだからパヨクなんだろ?
まあパヨクが馬鹿で口だけなのはいつもだが。

俺は最初から.NETの仕様を問題にしている。
お前は「オレオレ仕様」と違うから勝手に「仕様バグ」だと喚いている。(>>638)
俺たちは「それは違う。バグではない」と言っている。(>>640,645)
理由は、それでも組める=仕様として成立する範囲だから。
お前は馬鹿だからそれが分からず、俺らが組める範囲でも無理だと思っているだけ。
だったら証明してみろ、と言ったら君は逃げた。典型的なパヨクだね。

>>666
論点は、「仕様バグかどうか」であって、「いい仕様かどうか」ではない。
お前はそれすら分からない馬鹿パヨクのようだが。

とはいえ君は本当に馬鹿だから、これでも通じないだろう。終わりでいいよ。
2017/08/02(水) 05:35:10.79ID:1rb6fE8N
夜中の3時にこんな長文投稿している方が
社会的に破綻した人間だと判断される可能性が高いから安心しとけ
2017/08/02(水) 05:39:02.58ID:3qnN0MvP
あガガイのガイ
2017/08/02(水) 06:34:20.03ID:A60ZNmc6
このスレに頭のおかしいのが複数住み着いているのはよくわかる
2017/08/02(水) 08:16:36.83ID:CjDj1Maa
一人二役でしょ
2017/08/02(水) 20:38:39.45ID:fngH3Ate
>>671
初心者スレにも同じ人が居着いてる
2017/08/02(水) 21:15:27.89ID:co6HfrMj
夏休みになると単発の低脳煽りばかりだな。
2017/08/02(水) 22:44:00.19ID:fngH3Ate
>>674=513,524
2017/08/02(水) 23:22:53.88ID:yCU00B7G
Enterイベントが発生した段階でフォーカスはまだ移動してない筈だし
Enterイベントが発生したからといってフォーカスを得る保障も無かったはずだけど

あとコントロール間のイベントの発生順序の保障も無かったと思ったがな
2017/08/02(水) 23:36:37.48ID:NxzTdQJw
>>676
だから試せと言ってるんだけど

思い込みはよくないそれと
上に出てたイベント発生順をよく見て理解できないところを埋めないと

おまえらに大ヒントだけどVのつくイベントを実装してから1テストしろ
そしたらleaveより先にenterが発生してはいけない理由がわかる
2017/08/02(水) 23:49:30.35ID:yCU00B7G
>>677
>思い込みはよくない

たしかに
たまたまテストした範囲でそうなったから保障されてるという
思い込みはよくないな
2017/08/02(水) 23:56:28.98ID:lkgPj6nz
お、そうだな。ちゃんとライブラリのソース読まないとな
2017/08/03(木) 00:02:17.81ID:htG5iQYE
ライブラリのソースを呼んでも、現在の実装がそうなっているというだけで
それが仕様として保障されてるかどうかとは別問題だけどな

まあ、現在の実装で確認できればほぼ問題ないケースがほとんどではあると思うが
2017/08/03(木) 00:06:05.76ID:c/ifKON2
保障以前にそれが何を意図してるのかを理解できなければ意味がない

leaveより先にenterが発生してはいけない
682デフォルトの名無しさん
垢版 |
2017/08/03(木) 20:33:39.14ID:4LsbjqBs
ID:fngH3Ate 毎年恒例の釣りに馬鹿が釣られてるw
2017/08/03(木) 20:37:34.70ID:JgW7vvvx
釣りバカ日記
2017/08/04(金) 00:00:37.68ID:kAe2l7FV
>>668
牛さん角さん懲らしめてやりなさい
2017/08/04(金) 00:13:41.84ID:XUqh6zlM
シススレ住民きてんね
686デフォルトの名無しさん
垢版 |
2017/08/06(日) 00:47:39.95ID:SnOBl72n
URIのパラメータって
2017/08/08(火) 08:49:43.39ID:/0ePqhWL
なんでいつもトンチンカンな議論が永遠に続くのかね。

そもそもMSDNに書かれてるイベントの順序は
ある一つのコントロールのフォーカスが当たってから
(もしくはアクティブになってから)
抜けるまでのイベント順が書かれてるだけで
コントロール間のイベントの推移が
書かれてるわけじゃ無いよ。
なんでleaveから始まらなきゃあかんのよ。

それが読み取れないのがそもそも
プログラマとしての適性が云々カンヌン…

テキストボックスのenterなどでボタンをvisible(テキストボックスのリサイズ?)、
ボタンのpressとleaveなどでボタンのhiddenとかテキストボックスのリサイズとしないから
コントロール間のイベント順なんて言う実装依存や環境依存に頼ることになって、
いらんバグの元をこしらえることになる。
2017/08/08(火) 10:07:43.25ID:nFsV2IUX
>>687
むしろいまごろになってトンチンカンなこと言ってるのは君だと思うよw
2017/08/08(火) 10:47:16.15ID:7cEhVOng
MSDNに順序書かれてたか?どこにある?
2017/08/08(火) 11:17:14.57ID:/0ePqhWL
>>689
日本語読めないのかな?

そもそもの質問が
>>627
> https://msdn.microsoft.com/ja-jp/library/86faxx0d(v=vs.90).aspx
『Windows フォームのイベントの順序』
についてだったんだが。

脱線しすぎてなんの議論してるかも忘れちゃったのかな?
2017/08/08(火) 11:17:49.60ID:N8eUuNcg
せいぜい>>627からの話なんだから読めよw
2017/08/08(火) 11:26:27.88ID:7cEhVOng
>>690
それかー
ここ1週間で読んだの最新3レスぐらいだったからなw
2017/08/08(火) 11:54:42.43ID:/0ePqhWL
>>627が1週間前で60以上も駄レスが続いてるのに
3つって。数も数えられないのかな?
2017/08/08(火) 12:00:16.14ID:7cEhVOng
>>686-689ぐらいしか見てないってことだよ。議論()になんて混じる気もない
2017/08/08(火) 12:14:14.78ID:oWXmYmGG
フォームアプリケーション作ってるとついついフォームのクラスに全部書き込んでしまうんですが、クラス分けの基準というか、指針はありますか?
2017/08/08(火) 12:55:26.31ID:nFsV2IUX
>>695
難しく考えない。
UIがWPFになってもUWPになってもそっくりそのまま使いまわせたらうれしいよね?

逆に言うと、そうなってないなら考え方が間違ってる
2017/08/08(火) 13:24:39.29ID:cZXE4hdD
それは違うんじゃないか?
普通のwinformsのアプリをMVVMにも使いまわせるように
なっているのはある意味おかしい

M層だけ使いまわせることになってるけど
実際はモデルの仕組みをMVVMよりに設計したりしないといけない
つまりMVVM知ってないとwindowsformでアプリ作れないって変なことになる

そういう目的なら最初からWPFなりUWPなりで作れと思う
2017/08/08(火) 13:28:24.18ID:oWXmYmGG
つ、つまりどうゆうことだってばよ
2017/08/08(火) 13:37:56.15ID:cZXE4hdD
質問者のレベルがわからないから答えられません
というのはやめといて
基本的に自分で糞コードいっぱい書くしかない

わからないときは人のソース見たりしてみたりもいい
その中でもクソだなって思ったり自分でも使いたいところがあると思う

そういった成長の後でリファクタリングに進めばいい
同じコードが何度も出てきたらメソッド化してみたり(VSにメソッド抽出機能があるので楽)
2017/08/08(火) 13:38:50.16ID:nFsV2IUX
>>697
一般的なMVVMが本当にそうなってるなら(なってないと思うけど)。それはMVVMが間違ってる
2017/08/08(火) 13:44:42.24ID:cZXE4hdD
>>700
ModelにINotifyPropertyChangedを実装してるか?
2017/08/08(火) 14:34:14.93ID:nFsV2IUX
>>701
意味がわからないけど...
2017/08/10(木) 09:00:34.80ID:EsQl4Iyt
今時ビジネスロジックなんか全部バックエンドにあるんだからフロントが何だろうがWeb API経由で完全疎結合だから問題にならないよ
あえて全部クライアントに置くような前時代的な設計を採用する場合、
それはアプリがクライアント端末のGUIやハードウェアに密接に依存していることが多いので
差し替えなんか考慮して作るのはそもそもナンセンスだ
2017/08/10(木) 09:04:16.83ID:CcnWoQiq
www
2017/08/16(水) 23:47:55.42ID:ey68s8sH
AutoMapperのInitializeがめんどくさいんだけど
初期化なしで使えるマッパーライブラリなんかないかい?
2017/08/16(水) 23:55:58.50ID:6BrFx9Fk
https://github.com/AutoMapper/AutoMapper/blob/master/README.md
AutoMapper知らなかったけどこのページのInitializeのことでいいの?
この程度ならリフレクションでやれば一発だろ
ジェネリックの代わりにTypeオブジェクトを引数に渡せるオーバーロードがあるのかは知らないけど、
それが無くてもMethodInfo.MakeGenericMethodで型引数を動的に指定できるよ
2017/08/19(土) 16:01:47.79ID:/HXXvel3
最近C#の勉強を始めました
プログラミングも初めてです
return ◯◯
で結果を返すという事について教えてください

画像のstring resultString="";の部分のresultStringという変数にresultString="グー";という文の値を代入するまでは分かるのですが、1番最後の行の結果を返すというreturn resultStringはどこに値を返すのでしょうか?

1番上に記述されているprivete string getComputerHand();というメソッド?にグーやチョキなどの値を返しているのでしょうか?

初歩的な質問ですいません
http://i.imgur.com/CBE1y8L.jpg
2017/08/19(土) 16:07:36.81ID:QD9DssYz
>>707
その画像の部分が結果を返すための一つのメソッド
他の部分で例えば
string str=getComputerHand(); //この場合はstrに結果の文字列が入る
みたいに書いてそのメソッドを呼び出す。
2017/08/19(土) 16:21:16.67ID:/HXXvel3
>>708
レスありがとうございます
この画像でいうとresultString=◯◯の結果の値が
getComputerHand();
というメソッドに返されていて

意味としては
getComputerHand();=グーorチョキorパー
というような解釈でよいでしょうか…?


また重ねて質問なのですが
string resultString=" " ;
の文で" "を使うのは何故でしょうか?
格納先がstring resultStringとstring型で指定されているので要らないのかと思っていました
2017/08/19(土) 16:44:58.20ID:QD9DssYz
>>709
メソッドに返すんじゃなくて「メソッドが返す値」
>getComputerHand();=グーorチョキorパー
だいたいあってる
>string resultString=" " ;
string resultString="" ; //半角スペースも何も入れない初期化
値が無い(未参照)の変数は返せないので必ず初期化が必要。これはコンパイラとかの制限
その程度だとここで聞くより自分で動かしてみたほうがダントツに早く身につく
2017/08/19(土) 18:18:58.14ID:A77+GeKR
>>707
C#の基本的なことがわかってないみたいだから本屋行って「独習C#」でも買ってこい
2017/08/19(土) 18:33:39.51ID:Czauz6JF
勝ってこい、だってさw
また「命令バカ」湧いてるのな
2017/08/19(土) 18:49:18.16ID:IbMc1Qsg
>>707
これは君のノートか?
最近の学生は手書きではなくワープロでノートを取るのか?
2017/08/19(土) 18:50:41.54ID:LdJ4mhMU
どう見ても教本やろ
2017/08/19(土) 18:56:58.49ID:jUKXp1iO
独習はいいぞ
2017/08/19(土) 22:01:48.42ID:3nnv/bQ1
webBrowser1_DocumentCompleted はブラウザが完全に表示される直前で呼び出される
と思いますが、完全にブラウザが表示した時を知るにはどうしたら良いですか?
2017/08/21(月) 18:30:42.33ID:ZisHBz7l
戻り値ってのはアキュームレータに設定される値と思えば良い。
2017/08/21(月) 19:51:35.44ID:KmAQXiSu
アキュムレーターっていつの時代よww
2017/08/21(月) 21:11:15.97ID:qdRqCzb3
今だってあるだろう
2017/08/21(月) 21:19:22.50ID:U+o1ClZt
yes and noだね
厳密に言えばあるが、恐らく>>717が想定しているような意味での
特権的なアキュムレーターは無くして直交性の高いデザインにしよう、
っていうのがモダンな(っていっても40年ぐらい前からだと思うけどw)考え方じゃないの?

知らんけど
2017/08/21(月) 21:21:19.34ID:JHCD9zk7
C#と何の関係があるの
2017/08/21(月) 22:22:34.16ID:eevSPQj8
アキュムレータって、x86のレジスタのEAXレジスタぐらいしか思いつかない。
2017/08/21(月) 23:01:13.02ID:edNFVMcB
アキュムレータレジスタあるCPUなんていっぱいあるだろ。
724デフォルトの名無しさん
垢版 |
2017/08/22(火) 18:32:27.69ID:hdluVQxJ
.Net Coreは良くなりましたか?
2017/08/22(火) 19:43:21.89ID:+pIOmFUn
うん
2017/08/24(木) 00:18:50.06ID:z2dH8u8+
C#erはタスク管理どうやってんの?
gradleみたいなツールが欲しいんだがdotnetランタイムだけで動作する類似品ツールはないのか
2017/08/24(木) 06:39:12.62ID:CEXjJv+U
>>726
タスク管理というと曖昧だな…ビルドツールのことを言ってる?
dotnetランタイムって言い方も普通しないけど、Cakeはどう?
https://www.cakebuild.net/
2017/08/24(木) 07:12:48.15ID:yRjhoaXK
遠慮せずにgradle使えよw
2017/08/24(木) 18:07:20.03ID:/9zT0lsJ
>>727
すごく良いですね
こういうのを探してました

>>728
JREに依存したくなかったので…
2017/08/24(木) 18:34:51.61ID:RXm0c/8O
>>729
cakeの採用例はIdentityServer、omnisharp-roslyn、NUnitと有名どころでも増えてきてるし、覚えといて損はないよ
2017/08/24(木) 19:31:41.54ID:nG5FC+BG
>>728
調べて損した
2017/09/02(土) 11:54:03.28ID:O1j4weut
注文明細の税込価格を計算して注文ヘッダごとに合計する
合計値が注文ヘッダに設定されている注文上限価格を超えている注文ヘッダを抽出する
抽出した注文ヘッダを注文日順に順位を付ける
順位が100位から200位までの注文ヘッダを抽出する
抽出した注文ヘッダに注文明細を内部結合する

EFでこういうクエリ書ける?
速度チューニングできる?
2017/09/02(土) 12:05:31.90ID:Tg9xTtAy
できる
2017/09/02(土) 12:20:52.90ID:O1j4weut
>>733
あなたならどう書きますか?
2017/09/02(土) 12:33:45.54ID:bF0cAHIp
それがおまえの仕事だろ。
2017/09/02(土) 14:05:57.18ID:PArSsv+v
>>734
733を雇えば全て解決
2017/09/02(土) 14:42:14.97ID:O1j4weut
なるほどつまりできないんですね
その程度でしたか
2017/09/02(土) 14:47:48.25ID:bF0cAHIp
その程度なんです。2chに仕事を丸投げしようとしたあなたがアホだったんです。
もしあなたがSIerならMSのサポートにチューニングに関する質問はするべきです。
2017/09/02(土) 14:59:00.54ID:O1j4weut
ではこのスレは終わりですね
簡単な質問にも答えられないようでは存在する必要ないですよ
2017/09/02(土) 15:10:27.17ID:bF0cAHIp
仕事ができないキミは会社では終わりかもしれないけどね。
2017/09/02(土) 15:20:05.79ID:O1j4weut
いえいえ
あなたほどではありませんよ
あなたの終わってる感はまさに別格です
2017/09/02(土) 15:48:07.94ID:u30btijY
なんだまたキチガイか
2017/09/02(土) 16:17:03.28ID:bF0cAHIp
馬鹿にしたり煽ったら教えてくれるだろうというみっともない期待は無駄だろうな。

仕事のことで、一人でチューニングもできないスキルレベルなら素直にMSに聞きたまえ。

これが相談室でのマジメな回答だ。チューニングは簡単ではない。経験が必要だ。
なのに経験しようとせず丸投げするおまえは開発に向いてない。別格のアホ。
2017/09/02(土) 16:26:58.13ID:Fj2dIxIY
土曜に休日出勤してまで仕事やってんだ
あんまイジメないでスルーしてやれ
2017/09/02(土) 16:31:49.27ID:kzFfMUaR
>>741
休日出勤か
しんどいな
お大事に
2017/09/02(土) 17:05:15.13ID:ddWhtgi2
仕事の内容を2chで質問すること自体正気だとは思えない
2017/09/02(土) 17:10:42.94ID:HjwTbkJP
なんか例によって質問者に小姑みたいにクドクド絡んでる
バカが大量に湧いてるけど、こういう馬鹿な連中ってそういう自分が自分で嫌にならんのかね。
哀れというか人間的に終わってるというか
2017/09/02(土) 17:23:30.43ID:ddWhtgi2
>>747
それが2ch。だからそんなところで仕事の質問するのがおかしい
2017/09/02(土) 17:24:58.52ID:kzFfMUaR
>>747
そんな相手に一節ぶつけるのは
さぞ爽快であろ
2017/09/02(土) 18:02:01.77ID:Tg9xTtAy
>>739
簡単な質問を自分で解決できないなんて存在する理由ないですね
2017/09/02(土) 18:49:07.18ID:T/CezPj/
LINQやTask絡みの質問してもまともな回答もらえないしな
このスレは.NET2.0時代の人多そう
2017/09/02(土) 18:50:59.18ID:MtYDTdDm
正直リンクやタスクはいらないかな
2017/09/02(土) 19:02:48.38ID:PArSsv+v
>>752
.NET2.0時代の人ですねお疲れ様です
2017/09/02(土) 19:09:06.41ID:gVudpib6
>>747
何年も嫌み言い続けてるお前ほどしゃねえだろ
2017/09/02(土) 19:20:51.60ID:NNIj3FL4
ここでvarの登場
2017/09/02(土) 19:28:39.75ID:V/n1RF7c
ふらっとでやるのは困るが、ここでなら好きなだけやれw
2017/09/02(土) 19:32:27.30ID:SvMhViqK
質問に答えられないけどできるって言ってしまったお
どうするお
そうだ!相手を口撃してうやむやにするお!
俺って天才だお^_^

まあこんなところでしょうね
2017/09/02(土) 20:31:51.91ID:Vm2KDGbo
ID変わった。俺がデキルと言ったんだが、あれを見てどこにデキナイ要素がある?
敢えて言えば一番難しいのは速度チューニングだけど条件ないからどんだけ遅い結果になってもチューニングしたといえばおkだしできるだろ
2017/09/02(土) 21:04:59.93ID:KSbwYPK0
質問じゃなくて単なる仕事の丸投げだもんな。
そんなのにコード起こして答える奇特な人は滅多にいないだろ。
宿題スレでも行った方がまだ良いんじゃないか。
2017/09/02(土) 21:29:10.36ID:/nmV1Veo
>仕事の丸投げだもんな
仕事の丸投げでもいいと思う。
おもしろそうならやってみるだけだし、おもしろそうじゃなかったら放置。
ただそれだけ。
2017/09/02(土) 21:47:11.46ID:tR4oKf4K
C#始めるのです。
コンパイラはマイクロソフトが無料で配ってるなんちゃらって統合環境。

んで、検索とかしてやってみたらCUIとかは普通にできそうだったけど、
GUIがいまいち作り方わからんかった。
と言うか何と言うやつの中の何という奴を使えばいいのかすら分からんから検索のしようもない。


そこでGUIとかその辺のアプリ的な感じのやつは本に頼ろうと思うので、おすすめの本教えてください。
2017/09/02(土) 23:01:57.02ID:PfNbROPa
こうかな
たぶんもっとスマートな書き方があると思うけど
select * from 注文ヘッダ
join 注文明細 on 注文ヘッダ.注文ID = 注文明細.注文ID
where 注文ヘッダ.注文ID in (
 select 注文ヘッダ.注文ID from (
  select 注文ヘッダ.注文ID, rank() over (order by 注文日) as 注文日順 from 注文ヘッダ
  join 注文明細 on 注文ヘッダ.注文ID = 注文明細.注文ID
  group by 注文ヘッダ.注文ID, 注文ヘッダ.上限価格, 注文ヘッダ.注文日
  having 注文ヘッダ.上限価格 < sum(注文明細.価格*税)
 )
 where 注文日順 between 100 and 200
)
2017/09/02(土) 23:09:50.15ID:LVvUpSa+
LLVMに対応しないかなぁ
2017/09/02(土) 23:14:56.17ID:OnLEDDtF
monoは前からLLVMに対応しているし、llilcというプロジェクトもある
2017/09/02(土) 23:47:52.46ID:w/8WFsta
>>762
グルーピング弄ればinを回避できるよ

問題はこれをEFでどう書くの?
チューニングはどうするの?
ってとこなんだけど
SQL書いた方が生産性高いよなぁ
766デフォルトの名無しさん
垢版 |
2017/09/03(日) 01:48:04.82ID:f9fpJevd
むしろVSいれればGUIのほうがまんまやればいいだけじゃないのか?
今時はVBAすらやったことないのが普通なんかね
2017/09/03(日) 14:11:58.86ID:1sNsxWX6
>>761
C#だと何検索しても大体WinFormのやり方がHitするのにどんな検索したのか不思議
2017/09/03(日) 14:43:51.11ID:SkKZ7pGs
WPFはヒットしないのにな。
2017/09/03(日) 15:06:32.42ID://yg3dAk
WPFはエヴァンジェリストのオモチャ
コーダーには不向き
2017/09/03(日) 15:24:32.41ID:jdcIxspg
そーいやWPF関連はググると大抵MVPのサイトがヒットするわ
なるほどそういうことか
2017/09/03(日) 16:04:03.56ID:0sJDT6fH
WPFさえなければもっとC#が普及してて
C#の地位が高かったかもしれないと思うと悔しい

MVPの人たちはどう思ってるんだか
2017/09/03(日) 16:33:39.93ID:lr6Mo9Zf
MVPの連中はとっくにWebへ移ったよ
C#ってWeb開発の言語としては意外と普及してるんだぞ
2017/09/03(日) 16:43:00.54ID:62GYYLc/
>>772
お勧めの資料は何?
774デフォルトの名無しさん
垢版 |
2017/09/03(日) 17:20:41.31ID:3gHqT14e
WCFがサーバーアプリで活躍してるのかな?
775デフォルトの名無しさん
垢版 |
2017/09/04(月) 08:10:46.21ID:MfpzE0zt
Winアプリは最終的に一番難しいのはGUIだよ
最初は細かい事分からず適当配置して出来た気分でいるんだろうけど
あとからあとから不具合が見つかって修正する事になる
GUIは環境によって見た目や動作が変わってしまうのでデバッグで再現させる事が
困難な事も多い
2017/09/04(月) 08:32:05.29ID:LRLL3VtB
>>775
よく簡単に「一番難しい」なんて断言できるね、大したもんだ
2017/09/04(月) 18:19:57.89ID:LsDphsoK
自分の体験した少ない範囲が全ての世界なんだろうな
初心者がちょっと自信つけ始めたころなんだろ
2017/09/04(月) 18:41:14.80ID:AjqafOmQ
30年以上プログラミングしてるが俺も最終的にはUIだと思う。>>775と理由は違うが
2017/09/04(月) 18:41:44.52ID:CRF6xnAl
ハマるとキツイのはマルチスレッド絡みかなぁ
何せ落ちた所のプログラムが正常だったりするからな
mallocのサイズ間違ったバグは忘れないわ
2017/09/04(月) 18:43:46.07ID:CRF6xnAl
>>778
面倒だし時間はかかるが、バグったときに見えるから不具合見つけやすい
2017/09/04(月) 19:10:43.88ID:2WJ6m4B/
揚げ足取るのは建設的じゃないと思うのであえて>>775の意図を忖度してみる

どうしても非ユーザーコードの比重が大きくなるから、
どうしてもバグを回避するバッドノウハウ的なものが必要になりがちって意味では確かに「難しい」かもね。

Win Formなんか2.0で追加されたコントトールバグてんこ盛りだよね。

自分全然触ってないけど、Webなんか今でもあいかわらずバッドノウハウの塊でしょ?
2017/09/04(月) 19:13:34.90ID:sRlsGpo+
コード書くわけでもなくここで机上の空論やっていたら十分非建設的
2017/09/04(月) 19:59:16.66ID:ws3TkDjE
コントトールバグってなに?
2017/09/04(月) 20:13:02.91ID:nXa8x8o4
それぐらい文脈からわからなければただの馬鹿だね・・
2017/09/04(月) 20:15:48.40ID:ws3TkDjE
>>784
答えれば済む話でしょ。いちいち幼稚園児みたいな低脳煽りはいらないから知ってたら教えてよ。
2017/09/04(月) 20:24:51.33ID:7ymyOIx0
知りたきゃ低能アピールしてないで追加されたの+注意点とかでぐぐれよ
2017/09/04(月) 20:25:20.57ID:ws3TkDjE
>>784
答えずに逃げたのかよ、チンカスが。
2017/09/04(月) 20:27:05.85ID:ws3TkDjE
なんだ同一人物かよ、クソが。失せろカス。

ID:2WJ6m4B/ = ID:nXa8x8o4 = ID:7ymyOIx0
2017/09/04(月) 20:28:36.51ID:3+O8Ku+c
>>779
> 何せ落ちた所のプログラムが正常だったりするからな
これはシングルスレッドでもメモリーをぶっ壊すとかすると発生する
マルチスレッドのバグは再現性がなかったりするから厄介
何度も痛い目にあったから日頃からできる範囲でトレース入れる癖がついたわ
2017/09/04(月) 20:33:18.22ID:nXa8x8o4
それぐらいも文脈から推測できない馬鹿だったか・・
2017/09/04(月) 20:33:56.34ID:3+O8Ku+c
>>785
横からだけど普通に考えたら

追加されたコントロール(は)バグてんこ盛りだよね

だろ
あえて煽るほどの話には見えん
2017/09/04(月) 20:37:00.17ID:ws3TkDjE
まだ自演続けるのか。こんな過疎スレでバレバレなんだよ。
2017/09/04(月) 20:41:19.57ID:7ymyOIx0
完全にキチガイw
2017/09/04(月) 21:01:32.04ID:IabL/aby
datagridviewのチェックボックスの挙動がおかしいくらいしか思いつかないけど、てんこ盛りってほどバグが放置されているとは思えない
バグがあったところでwinFomsで組むのならそこを何とかするしかないしどうでもいい
コントロール周りの不具合なら>>780の通り目に付くからすぐわかるしな
2017/09/04(月) 21:12:21.96ID:7ymyOIx0
コントロールにバグというか使用上の注意なんていくらでもあるだろ
例えばカレンダーだと何も考えずに配置して表示してるとこんな風に表示がおかしくなる
ttps://i.imgur.com/8dX0KcJ.png
2017/09/04(月) 21:33:24.91ID:ckceu5N+
使用上の注意とバグは違うだろ
2017/09/04(月) 21:41:45.10ID:7ymyOIx0
「これは仕様です」ってならそれは仕様の不具合だから、使用上の注意もバグも似たようなもんだよ
2017/09/04(月) 21:55:00.09ID:F+isrQ7Q
>>785
揚げ足取りかと思ったら本当にわからないのかよ…
799デフォルトの名無しさん
垢版 |
2017/09/05(火) 01:16:35.06ID:nPfvfHCk
誤植を指摘されて発狂自演とか底辺PGらしくて微笑ましい
2017/09/05(火) 02:28:06.44ID:e94nPpfB
誤植って出版絡みの人?www
2017/09/05(火) 06:54:17.90ID:+ack9lyL
誤植ならちゃんと校正しないとね
>>799みたいなアホ文章はちゃんと校閲しないとダメだけど
2017/09/06(水) 17:02:54.42ID:WyFA8tpv
C#を独学で勉強し始めました
プログラミング自体初めてです

超入門用の本を2冊買って最後まで読み終えたのですが、勉強を進めて行く上でオススメの本などはありますか?
2017/09/06(水) 17:18:06.32ID:MsDWplbB
本読むより手を動かせ
2017/09/06(水) 17:23:53.50ID:RXvp/CNY
本読まなくてもプログラムのスキルは身につくけど本読むだけではいつまでたっても上達しない。料理みたいなもの
2017/09/06(水) 17:52:57.79ID:5Fvz8IOs
>>802
VSフォルダの下の方にC#の言語仕様書がWord文書で置いてあるので熟読しなさい
2017/09/06(水) 22:33:25.43ID:LeFS08p/
>>802
猫以下?
2017/09/12(火) 09:02:11.74ID:EOOe72TQ
○次受けが多いほど退場率が早くなる。高くなる

直受けの50万 客:いつまでもうちにいていいよ
3次受けの50万(客は90万払ってる) 客:短期延長していい?
5次受けの50万(客は150万払ってる) 客:作り終わったらとっと出てけ できなかったら即退場だ 
長時間労働 高稼働 高スキル要求が多い

フリーランスサイトを運営している零細ITの自称エージェントは労働市場から流れてくる案件を転売してるだけだった。
労働市場に加入すれば誰でも案件に応募することができた。収入が40万50万台にならなくて済む

エンド - ユー子 - エージェント-JIET 公表価格 90~60 - エージェント×3 = 言い値50万以下
エンド - ユー子 - エージェント-JIET 公表価格 90~60 - エージェント×1 悪質な言い値で50万以下
エンド - ユー子 - エージェント-JIET 公表価格 90~60 - JIETに加入して公表価格で応募できる

eJobgo JIET JISA で検索

優良エージェント・優良サイト

首都圏IT(PE-BANK) クラウドテック プログラマーズ
2017/09/16(土) 10:45:35.58ID:Zk6Irz58
本が読みたいのかプログラミングしたいのかどっちなんだ?って感じだな
2017/09/16(土) 10:47:43.75ID:DjFVi2hv
勉強の仕方がわからないだけだよ
2017/09/16(土) 10:52:43.21ID:dNmf7aOR
道具とか本とか形だけ揃えて満足する人は多い。なぜかそこまでが目的な人も
2017/09/16(土) 14:15:15.65ID:3905ntF4
自分も手始めに色々(書籍)買い揃えてしまうほうだけど、スキルアップした時は既に旧版扱いで入手困難だったりするから身の丈合わなくても旬なうちにハードル高い物も買ってしまってる
2017/09/16(土) 15:28:11.94ID:QE5Dhgdp
独習C♯軽く読んで簡単な動かし方覚えてから、とりあえずDBやライブラリ等色々ネットで調べながら動くもの作ってたけど
後から修正しようと思っても一から作り直した方が早そうなプログラムを量産してます

SEやPGでも無いし、自分用にしかプログラム作らないので特に納期とかも気にしなくていいけども
生産性を上げれるなら上げたいと思ってます
皆さんは後から修正するかもって思った時はどんな事に気をつけてますか?
2017/09/16(土) 15:35:52.66ID:ONgAFYB5
>>812
機能毎にクラス分け
2017/09/16(土) 19:31:38.33ID:rWX0O503
>>812
>>813 のそれぞれをインターフェースで結ぶ

…でもやりすぎるとかえってめんどくさかったり…
そのあたり上手くやれるのが経験だったり、才能だったりするんだろうな
と思う俺も趣味プログラマ
2017/09/16(土) 19:40:35.37ID:DjFVi2hv
できるだけ汎用的に使えるように>>813だな
今回使うための用途じゃなくて、ほかにどんなことに使えるか考えつつそれも視野に入れてクラス組む
そしてできたのは自分用のライブラリとして保存
2017/09/16(土) 19:41:42.49ID:QE5Dhgdp
>>813
>>814
クラスとインターフェースですか
コレクションとか凄いなぁって見ても、自分でインターフェース作った事無いですね・・・

一応、クラスは分けて作ってますが
クラスが増えすぎて、どれで何してたのか分からなくなってくる管理状況です
抽象化も出来てないので、似たような仕組みが分散しすぎてて、なんか勿体無いところも
かといって一部使いまわそうとするとクラスの数珠繋ぎで依存性が出てくるので管理が大変に
2017/09/16(土) 19:52:54.47ID:Zk6Irz58
まあ、あんまり考えすぎてもしょうがないと思うけどね
これがベストと思った書き方も、将来スキルがあがったらもっとベターなやり方
思いついたりもするし
とりあえず考えとく事は、クラスだなんだというよりももっとシンプルに、個々のパーツ間の
依存関係を極力シンプルにして、コードの見通しをよくしてメンテしやすくすること
他のプログラムに流用できそうな部分は、実際独立したパーツとして流用できるような
作りにしておくことくらいかな
2017/09/16(土) 19:57:25.63ID:QOgyryHO
>>816
CommonClassとでも名付ければよか
2017/09/16(土) 20:10:04.77ID:QE5Dhgdp
>>817
実際、部分的に使いたい時に前はこの書き方してたけど、今はこっちの書き方覚えたからこっちで少し最適化するかって感じで書いてたりしますね
そんな事しないで共通化出来るように抽象化したいですが・・・

>>818
staticでそれやってましたけど、なんか違うなぁって感じでファイル読み込みや書き込みはそのままで、ソートやループ処理での計算などはクラス毎に埋め込んでますね・・・
それとも自分が考えてる様なコモンクラスと別物ですか?
2017/09/17(日) 18:17:33.06ID:PsKGEjCI
>>812
> 後から修正しようと思っても一から作り直した方が早そうなプログラムを量産してます
これを止めて無理にでも流用するようにすれば、何が問題なのか体感できる。
それを次に生かせば、流用しやすい構成で組めるようになり、生産性が上がる。
2017/09/22(金) 15:17:35.43ID:lkenNsuH
オブジェクト指向でいう再利用性って、新しいものを作るときに
既存のソースファイルやDLLをコピペして使うというのとはちょっと意味合いが違うんだけどね
端的に言えば、同じ役割のクラスは同じクラスであるべき、ってことだ
あまり実感ないだろうけど、大規模な開発になってくると必ずそれが崩れてくるんだよ
822デフォルトの名無しさん
垢版 |
2017/10/11(水) 22:06:03.34ID:CxvWYCvq
C#でPDFファイルのテキストやそのテキストに張ってあるハイバーリンクのURLを
取り出したいんだが、どんな方法で可能でしょうか?
2017/10/11(水) 22:13:48.35ID:Qsqjym7k
>>821
東京-大阪間の飛行機と新幹線は同じクラスであるべきなんですか?
2017/10/11(水) 22:20:56.76ID:jolrOeyH
>>822
普通にファイル開いてそっからコピー
825デフォルトの名無しさん
垢版 |
2017/10/11(水) 22:24:38.71ID:CxvWYCvq
>>824
普通に開くってどうやって開くの?
サンプルコード教えて。
2017/10/11(水) 22:30:16.87ID:jolrOeyH
>>825
普通にバイナリファイルとして開く
コードも仕様もそこらにあるからぐぐれ
もともと印刷用だから癖はあるが簡単に読めるぞ
2017/10/12(木) 05:18:07.24ID:FxEVeaRl
あれってAPI提供されてないの?
828デフォルトの名無しさん
垢版 |
2017/10/12(木) 05:55:22.63ID:cp/CfqWL
OfficeやPDF テキスト抽出について
https://qiita.com/mash0510/items/caa41b1f1d8dc4b31ac6

うらる抽出は頑張って
2017/10/12(木) 15:07:41.48ID:o8TlX9Z0
>>822
1. そのままgrep (e.g. grep -a “http://www” pdf-file)
2. pdfgrep
3. pdftotext/pdftohtmlしてgrep

C#関係ないけど用を足すには十分
ハイパーリンクのurlとlink textを紐付けて抽出したいならpdftohtml
2017/10/12(木) 15:30:48.87ID:orqgo34x
C#宣伝してる奴がうざいんですが、どうしたらいんでしょうか?
2017/10/12(木) 15:38:31.04ID:iyTaH+M7
>>830
板違いなのが分からなければ諦めよう
2017/10/12(木) 16:03:05.22ID:o8TlX9Z0
>>830
F#をマスターしてF#を宣伝する

所詮マウンティング合戦だから
新しいマウンティングで対抗しよう
2017/10/12(木) 16:34:04.71ID:yeVmMHMU
>>831
>>832
了解です
834デフォルトの名無しさん
垢版 |
2017/10/12(木) 20:17:41.14ID:rmq6lCFL
>>830
WindowsならC#を推奨するのは間違っていないが?
2017/10/12(木) 20:25:21.77ID:6wxZWyrC
>>834
おまえみたいに読めない奴がうざいって意味であって、C#自体に文句を言ってるわけじゃないでしょ
836デフォルトの名無しさん
垢版 |
2017/10/12(木) 20:29:17.66ID:rmq6lCFL
>>835
自分でC#と言ってるのに、その人のことをC#と表現するからおかしい。

そんな解釈が難しいやりとりが普通の人間はプログラミングなんてやめた方がいい。
2017/10/12(木) 20:35:24.74ID:QAc7UiBI
そもそも、たかが1言語についてそこまで固執したり拒絶するのって、病的だよ。
たかが道具に、なんか人生を預けるレベルで考えてるのがキモイ。
自覚がないのが可哀想。病院で治るのかしらんけど。
2017/10/12(木) 20:40:12.22ID:wRjHo3Vb
なんでコード関係ない話だと盛り上がるんだろうな
2017/10/12(木) 20:42:29.44ID:QAc7UiBI
そういうときだけなんか書く俺みたいなバカが多いからだな
2017/10/12(木) 20:52:00.07ID:ILNtvg14
>>837
単にC#推奨してるだけで固執とか言い出す奴の方が病的じゃね?
C#使えなくて解雇でもされたのかよ w
841デフォルトの名無しさん
垢版 |
2017/10/12(木) 21:04:55.84ID:cp/CfqWL
かなり良い言語だと思うんだけどなあ
2017/10/12(木) 22:36:31.58ID:5L9LK4sR
つーか、最強でしょ(他の言語知らんけど
2017/10/12(木) 23:51:17.58ID:r624txD7
>>830
javaスレにご迷惑おかけしているようで
2017/10/13(金) 00:09:38.51ID:5nsLU4Yv
>>838
プログラマ以外でも参加できるから
845デフォルトの名無しさん
垢版 |
2017/10/13(金) 00:12:46.20ID:9ootMMuk
盛り上がってると思って、またvarかと思ったらバカだった
2017/10/13(金) 00:42:33.07ID:/02if2W5
varを採用してからというもの、C#は今はもうマイナーオワコン言語だからな。
マカー同様スレチで普及したがるのも無理はない。
2017/10/13(金) 01:43:46.38ID:l1jERKvk
>>846
お前Javaスレのキチガイか?
848デフォルトの名無しさん
垢版 |
2017/10/13(金) 02:27:14.63ID:DqOAXvoj
人気の証拠やね
2017/10/13(金) 02:51:53.86ID:GlXmqXn2
C#って、普及してる割にgithubのリポジトリ数が少ないと思うんですが、やっぱりサラリーマン向け言語だから趣味でコード書いて公開する人が少ないんですか?
2017/10/13(金) 03:18:45.27ID:2WV6tJ0M
業界談義はプログラマー板でってローカルルールすら守らないのは何で?
2017/10/13(金) 03:30:12.26ID:hGij+Jvi
ここ数年はGitHubランキング的なのを8-10位あたりでふらふらしてるけど
普及している割にというか「そんなもんじゃね?」という感覚だな
2017/10/13(金) 03:38:06.62ID:/02if2W5
事実から目を背けるなんてまるでマカーのようだ。フフフ、笑える。
2017/10/13(金) 07:49:55.20ID:1BwGqO5B
別にネガキャンとかじゃなくて普通の話題として振るけども

俺の周りの(趣味で)C#やってる人間がみんなKotlinに浮気しだしたんだが
そいつら曰く、
KotlinはなんとなくC#的な雰囲気あって良い
って薦めてくる

まだ触ったことないんだけど、実際のとこどうなの?
2017/10/13(金) 08:21:22.07ID:0vilsSxc
KotlinはなんとなくじゃなくてC#を名指しでリスペクト(公然と丸パクリ)してる
C#もこれまで拡張を繰り返してきて綻びや変えたいけど互換性の問題で今更変えられない部分が沢山出ているので、
それを全面的に見直して綺麗に整理してある
難点を挙げるとすれば、今のところ全体的には素直で普通な言語にまとまってはいるけど
Kotlinがパクリ元のC#やScalaによらずリリース後に独自に入れている部分については
節操がなくあまりセンスが良くなくてScala化の兆しが見えていることかな
あの調子だと結局はScalaみたいに破綻すると思うよ
2017/10/13(金) 08:23:13.20ID:vLRRsIkM
Kotlin [無断転載禁止]©2ch.net
http://mevius.2ch.net/test/read.cgi/tech/1456505161/
2017/10/13(金) 08:41:24.05ID:0vilsSxc
C#が優れてるのは、独自路線の大きな拡張を長期にわたって繰り返し続けているのに
大きな破綻なく複雑にもなりすぎず言語を維持できているという点だ
他の言語の悪いところを見つけるのは簡単だが、トップランナーとして新しいものを作っていくのは遥かに難しいんだよ
その意味ではKotlinは粗探しは非常に上手いが、後者のセンスはC#のように天才的なものは感じないね
2017/10/13(金) 10:40:17.30ID:c2xsGjmq
C#に対する不満てほとんどは
Windows自体か.NET Frameworkに対する文句だからな
2017/10/13(金) 10:42:45.04ID:kWGNHU+4
>>843
処分して、頼むわ
2017/10/13(金) 11:05:21.86ID:iKXV2/QB
linqのクエリ構文が出た時はどうなることかと思ったが、
メソッド構文が出て良かったよ
2017/10/13(金) 11:19:12.84ID:mWlYF3iB
MicrosoftはいまC#よりTypeScriptに力入れてんじゃないの
2017/10/13(金) 12:10:11.58ID:DI18WdpZ
>>860
どっちも
c#はほぼ.NET Coreと.NET Standardに全振り
2017/10/13(金) 12:21:05.14ID:rXsVXlwO
VSCodeは使いやすすぎてびっくりする
TypeScriptでインテリセンスが効くのはわかるが、型書いてない普通のJSでも余裕で効く
エスパーかと思うレベル
このままいくとVSもVSCodeに吸収されそうだね
2017/10/13(金) 12:36:56.29ID:/02if2W5
>>856
Javaが出てときと同じこと言ってる。同一人物か。
2017/10/13(金) 12:41:01.56ID:hGij+Jvi
VSもVSCodeに吸収されそうの意味がさっぱりわからんが
フォントレンダリングだけはちゃっちゃと同じにして

ちゅーかもういい加減Windows全域でフォントのヒンティング切っとけや
本来にもう少しマシなレンダリングできるのに完全に癌になってるじゃろ
2017/10/13(金) 13:12:20.54ID:n8HgMJNJ
やる気があればVistaの時点でやってただろうねw
どうしてMSみたいな大企業が作ってるOSがフリーのLinuxより酷い品質なのかちょっと理解できないけど
2017/10/13(金) 13:17:51.90ID:O16XdCSv
VScodeってそんな魅力的じゃないよ
どちらも使ってるけど総合力じゃ今のVSのほうが数段上

VSCodeも最初と比べるとどんどん起動が遅くなってきてる
2017/10/13(金) 13:42:36.90ID:mWlYF3iB
そらそうやろ
2017/10/13(金) 15:21:15.25ID:bQrnObX5
vscodeって単なるエディタだろ
2017/10/13(金) 15:37:07.18ID:vLRRsIkM
vsも単なるエディタだよね・・・
2017/10/13(金) 15:58:23.34ID:/02if2W5
C#がVB化してユーザーも低スキル化、DQN化したのが嫌われる原因だな。
2017/10/13(金) 16:05:55.56ID:qYIJYs/2
VBとC#なんか変わらんしユーザーというかこの板に変なのがいるだけ
>>869
vsってエディタは聞いたことない
2017/10/13(金) 16:12:38.74ID:/02if2W5
>>871 ←こいつです。
2017/10/13(金) 17:50:46.71ID:k6fDlhS2
マルチプラットフォームなwebプログラミング向けエディタ
って触れ込みだったのに今はVSと比較される様になったのか
2017/10/13(金) 18:32:29.21ID:KDqUmvjk
言語だけぽこぽこ新しいのがでてくるが、
そろそろ言語+標準クラスライブライというか、.NETやJavaみたいな新しい実行環境でてこねぇかな。
いまなら負の遺産を一掃してもっと素晴らしいやつができるはず
875デフォルトの名無しさん
垢版 |
2017/10/13(金) 18:38:11.70ID:tXRzEGrt
要は.NETをJVM化すればいいのか?
Coreがもう少し充実すればええんでね?
2017/10/13(金) 18:54:32.24ID:GNictDD2
>>869
IDEって知ってる?
2017/10/13(金) 18:58:38.89ID:n8HgMJNJ
JavaはともかくC#や.NETにガラガラポンが必要とは思わないな
2017/10/13(金) 19:15:51.57ID:vLRRsIkM
>>876
SATAに駆逐されたデータ転送規格だろ。そんくらい知ってるわ
2017/10/13(金) 19:34:09.07ID:r6+I6nXN
>>878
おもろないわー
2017/10/13(金) 21:44:12.59ID:/02if2W5
関西人がそんなヘタな突っ込みをするわけがない。
2017/10/13(金) 22:05:01.47ID:DPD6/A6x
>>871
まあ俺はほとんどエディタ代わりに使ってたりするけど... w
2017/10/13(金) 22:07:27.85ID:6pOkahl4
C#もそろそろ新言語への乗り換えの時期じゃないか
いつまでも残ってるダサい互換性を切ってnot nullとか新しい機能を導入してさ
C#は実験場にすればいい
2017/10/13(金) 22:12:20.87ID:/02if2W5
プラットフォームが先細りだから無駄な足掻き。
パソコンは名ばかりでもはやオフコン。業務でしか使われない。
884デフォルトの名無しさん
垢版 |
2017/10/13(金) 22:32:01.44ID:HAAysV2z
kotlinの読み方って
ことりん
でOK?
2017/10/13(金) 22:42:29.74ID:7WqKL+Sr
C#使い始めて何年も経つけど未だに乗り換えようと思うほど使いこなせない
思った通りのもの作れるし
2017/10/13(金) 22:43:43.87ID:l1jERKvk
>>882
c#8.0
2017/10/13(金) 23:06:44.79ID:/02if2W5
>>884
日本ではなべやかんって言われてる。
2017/10/14(土) 08:13:04.21ID:Sngz5bnk
我流で必要に迫られて始めたものの、汚いいVB6ちっくなコードしか書けない…
キチンとセオリーに則って基礎からやり直したい
とは言え、(どうせ、この先自分以外の誰かがソース開くことなんかねぇだろな…)と思うと、まぁいっか、と逃げてしまう
2017/10/14(土) 08:20:33.00ID:+XwGR1nT
>>884
ことぅりんっ
2017/10/14(土) 10:44:36.38ID:SVCVJk+z
>>888
惰性でいくら書いても無駄
良いコードを書くには良書を読むに限る
2017/10/14(土) 11:36:43.44ID:iAy6fmRl
目的がきれいなコード書くことならそれに向けて努力すべきだけど
動くものが作りたいならそんなのは遠回り
2017/10/14(土) 11:44:43.92ID:SVCVJk+z
動けばいいと言う奴のプログラムはえてして正しく動かないものだ
2017/10/14(土) 11:58:17.97ID:QGlvjmmK
オラクルのJavaシルバーに合格した。
C#も勉強したいが少し不安。
似てる部分が多いだけに頭が混乱しそう
2017/10/14(土) 16:02:23.40ID:1NT+cnAj
その場で書いて動かして後のこと考えなくていいなら汚いコードでもいいけど
長期的にメンテナンスすること考えたら多少手間でも綺麗なコード書いたほうが結局近道
2017/10/14(土) 16:03:40.35ID:POcZZiww
>>890
おすすめの良書教えて下さい
2017/10/14(土) 16:09:34.83ID:F+wwiVHB
>>894
C#なんてすぐバージョンが上がって推奨されてない書き方です、とか
時代についていけない老害とか馬鹿にされるんだぜ。使い捨てのコードを書く言語だよ。
2017/10/14(土) 16:11:41.65ID:0bz5HDJB
俺も動くものは作れるけど、汚いコードや一箇所仕様変更すると他の関数にまで影響が出て整備がほぼできないコード量産してるわ

整備不可なコードの山を見て、整備しやすいコードの書き方勉強しようとしてるけど、イディオム本読んだりデザインパターン少し調べてもイマイチ理解が深まらなかった
インターフェイスや継承はまったく使ってなかったけど、最近取り入れようとサンプルコード書いてます
2017/10/14(土) 16:26:44.70ID:gHhUphNv
リファクタリング(マーティンファウラー)
エリック・エヴァンスのドメイン駆動設計

C#の本じゃないけどな
2017/10/14(土) 17:13:18.55ID:RBWq+qGD
>>896
そんなことないよw

基本メソッドの中なんてブラックボックスで構わんが、
メソッドの切り分け方とか全体の設計方法に影響を与えるような変更なんか
そうしょっちゅうあるわけじゃないから。

2.0以降考えてもジェネリkック、ラムダ式、非同期メソッド、
あと強いて言えばオプション変数、これぐらいしかないでしょ
2017/10/14(土) 17:23:48.06ID:Gt2cFrms
taskとasync/awaitを忘れてるぞ
2017/10/14(土) 17:26:58.34ID:Gt2cFrms
>非同期メソッド
書いてあったわ
2017/10/14(土) 17:40:04.26ID:ipiotHZI
ジェネリック
ラムダ
var
System.Linq
匿名型
オーバーロード解決の強化
非同期

2.0使うとこの辺りが欲しくなる
903デフォルトの名無しさん
垢版 |
2017/10/14(土) 17:41:10.18ID:GRARGOD6
最近はC++でさえ、がんがん新しい機能取り入れてるからな
無理やり感は否めないけど
2017/10/14(土) 17:42:42.97ID:0bz5HDJB
まぁ実際すぐ動くもの欲しくなったら仕様変更考えない作りにする感じはある
余裕ある時じゃないと設計とか考えないから全然身に付かないけど
大手は分からないけど中小で入ったところは上層はコード共通化したがってたけど、PGはライブラリ各個で作って新機能追加の度に客先別コーティングしてたし、整備性を加えるのはそこそこ手間が掛かるのかなって印象
レス数が900を超えています。1000を超えると表示できなくなるよ。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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