C#, C♯, C#相談室 Part94 at TECH
[2ch|▼Menu]
[前50を表示]
850:デフォルトの名無しさん
17/10/11 22:24:38.71 CxvWYCvq.net
>>825
普通に開くってどうやって開くの?
サンプルコード教えて。

851:デフォルトの名無しさん
17/10/11 22:30:16.87 jolrOeyH.net
>>826
普通にバイナリファイルとして開く
コードも仕様もそこらにあるからぐぐれ
もともと印刷用だから癖はあるが簡単に読めるぞ

852:デフォルトの名無しさん
17/10/12 05:18:07.24 FxEVeaRl.net
あれってAPI提供されてないの?

853:デフォルトの名無しさん
17/10/12 05:55:22.63 cp/CfqWL.net
OfficeやPDF テキスト抽出について
URLリンク(qiita.com)
うらる抽出は頑張って

854:デフォルトの名無しさん
17/10/12 15:07:41.48 o8TlX9Z0.net
>>823
1. そのままgrep (e.g. grep -a “URLリンク(www)” pdf-file)
2. pdfgrep
3. pdftotext/pdftohtmlしてgrep
C#関係ないけど用を足すには十分
ハイパーリンクのurlとlink textを紐付けて抽出したいならpdftohtml

855:デフォルトの名無しさん
17/10/12 15:30:48.87 orqgo34x.net
C#宣伝してる奴がうざいんですが、どうしたらいんでしょうか?

856:デフォルトの名無しさん
17/10/12 15:38:31.04 iyTaH+M7.net
>>831
板違いなのが分からなければ諦めよう

857:デフォルトの名無しさん
17/10/12 16:03:05.22 o8TlX9Z0.net
>>831
F#をマスターしてF#を宣伝する
所詮マウンティング合戦だから
新しいマウンティングで対抗しよう

858:デフォルトの名無しさん
17/10/12 16:34:04.71 yeVmMHMU.net
>>832
>>833
了解です

859:デフォルトの名無しさん
17/10/12 20:17:41.14 rmq6lCFL.net
>>831
WindowsならC#を推奨するのは間違っていないが?

860:デフォルトの名無しさん
17/10/12 20:25:21.77 6wxZWyrC.net
>>835
おまえみたいに読めない奴がうざいって意味であって、C#自体に文句を言ってるわけじゃないでしょ

861:デフォルトの名無しさん
17/10/12 20:29:17.66 rmq6lCFL.net
>>836
自分でC#と言ってるのに、その人のことをC#と表現するからおかしい。
そんな解釈が難しいやりとりが普通の人間はプログラミングなんてやめた方がいい。

862:デフォルトの名無しさん
17/10/12 20:35:24.74 QAc7UiBI.net
そもそも、たかが1言語についてそこまで固執したり拒絶するのって、病的だよ。
たかが道具に、なんか人生を預けるレベルで考えてるのがキモイ。
自覚がないのが可哀想。病院で治るのかしらんけど。

863:デフォルトの名無しさん
17/10/12 20:40:12.22 wRjHo3Vb


864:.net



865:デフォルトの名無しさん
17/10/12 20:42:29.44 QAc7UiBI.net
そういうときだけなんか書く俺みたいなバカが多いからだな

866:デフォルトの名無しさん
17/10/12 20:52:00.07 ILNtvg14.net
>>838
単にC#推奨してるだけで固執とか言い出す奴の方が病的じゃね?
C#使えなくて解雇でもされたのかよ w

867:デフォルトの名無しさん
17/10/12 21:04:55.84 cp/CfqWL.net
かなり良い言語だと思うんだけどなあ

868:デフォルトの名無しさん
17/10/12 22:36:31.58 5L9LK4sR.net
つーか、最強でしょ(他の言語知らんけど

869:デフォルトの名無しさん
17/10/12 23:51:17.58 r624txD7.net
>>831
javaスレにご迷惑おかけしているようで

870:デフォルトの名無しさん
17/10/13 00:09:38.51 5nsLU4Yv.net
>>839
プログラマ以外でも参加できるから

871:デフォルトの名無しさん
17/10/13 00:12:46.20 9ootMMuk.net
盛り上がってると思って、またvarかと思ったらバカだった

872:デフォルトの名無しさん
17/10/13 00:42:33.07 /02if2W5.net
varを採用してからというもの、C#は今はもうマイナーオワコン言語だからな。
マカー同様スレチで普及したがるのも無理はない。

873:デフォルトの名無しさん
17/10/13 01:45:16.88 lGm8W5z8X
System.Net.WebClient wc = new System.Net.WebClient();
wc.DownloadFile(url, nnn);

この2行目で例外が出る原因の詳細は何かでわからないの?
メッセージは「要求で例外が発生しました。」なんだけど。

ブラウザでURL直接叩いてDLできるのは確認した。

874:デフォルトの名無しさん
17/10/13 01:43:46.38 l1jERKvk.net
>>847
お前Javaスレのキチガイか?

875:デフォルトの名無しさん
17/10/13 02:27:14.63 DqOAXvoj.net
人気の証拠やね

876:デフォルトの名無しさん
17/10/13 02:51:53.86 GlXmqXn2.net
C#って、普及してる割にgithubのリポジトリ数が少ないと思うんですが、やっぱりサラリーマン向け言語だから趣味でコード書いて公開する人が少ないんですか?

877:デフォルトの名無しさん
17/10/13 03:18:45.27 2WV6tJ0M.net
業界談義はプログラマー板でってローカルルールすら守らないのは何で?

878:デフォルトの名無しさん
17/10/13 03:30:12.26 hGij+Jvi.net
ここ数年はGitHubランキング的なのを8-10位あたりでふらふらしてるけど
普及している割にというか「そんなもんじゃね?」という感覚だな

879:デフォルトの名無しさん
17/10/13 03:38:06.62 /02if2W5.net
事実から目を背けるなんてまるでマカーのようだ。フフフ、笑える。

880:デフォルトの名無しさん
17/10/13 07:49:55.20 1BwGqO5B.net
別にネガキャンとかじゃなくて普通の話題として振るけども
俺の周りの(趣味で)C#やってる人間がみんなKotlinに浮気しだしたんだが
そいつら曰く、
KotlinはなんとなくC#的な雰囲気あって良い
って薦めてくる
まだ触ったことないんだけど、実際のとこどうなの?

881:デフォルトの名無しさん
17/10/13 08:21:22.07 0vilsSxc.net
KotlinはなんとなくじゃなくてC#を名指しでリスペクト(公然と丸パクリ)してる
C#もこれまで拡張を繰り返してきて綻びや変えたいけど互換性の問題で今更変えられない部分が沢山出ているので、
それを全面的に見直して綺麗に整理してある
難点を挙げるとすれば、今のところ全体的には素直で普通な言語にまとまってはいるけど
Kotlinがパクリ元のC#やScalaによらずリリース後に独自に入れている部分については
節操がなくあまりセンスが良くなくてScala化の兆しが見えていることかな
あの調子だと結局はScalaみたいに破綻すると思うよ

882:デフォルトの名無しさん
2017/


883:10/13(金) 08:23:13.20 ID:vLRRsIkM.net



884:デフォルトの名無しさん
17/10/13 08:41:24.05 0vilsSxc.net
C#が優れてるのは、独自路線の大きな拡張を長期にわたって繰り返し続けているのに
大きな破綻なく複雑にもなりすぎず言語を維持できているという点だ
他の言語の悪いところを見つけるのは簡単だが、トップランナーとして新しいものを作っていくのは遥かに難しいんだよ
その意味ではKotlinは粗探しは非常に上手いが、後者のセンスはC#のように天才的なものは感じないね

885:デフォルトの名無しさん
17/10/13 10:40:17.30 c2xsGjmq.net
C#に対する不満てほとんどは
Windows自体か.NET Frameworkに対する文句だからな

886:デフォルトの名無しさん
17/10/13 10:42:45.04 kWGNHU+4.net
>>844
処分して、頼むわ

887:デフォルトの名無しさん
17/10/13 11:05:21.86 iKXV2/QB.net
linqのクエリ構文が出た時はどうなることかと思ったが、
メソッド構文が出て良かったよ

888:デフォルトの名無しさん
17/10/13 11:19:12.84 mWlYF3iB.net
MicrosoftはいまC#よりTypeScriptに力入れてんじゃないの

889:デフォルトの名無しさん
17/10/13 12:10:11.58 DI18WdpZ.net
>>862
どっちも
c#はほぼ.NET Coreと.NET Standardに全振り

890:デフォルトの名無しさん
17/10/13 12:21:05.14 rXsVXlwO.net
VSCodeは使いやすすぎてびっくりする
TypeScriptでインテリセンスが効くのはわかるが、型書いてない普通のJSでも余裕で効く
エスパーかと思うレベル
このままいくとVSもVSCodeに吸収されそうだね

891:デフォルトの名無しさん
17/10/13 12:36:56.29 /02if2W5.net
>>858
Javaが出てときと同じこと言ってる。同一人物か。

892:デフォルトの名無しさん
17/10/13 12:41:01.56 hGij+Jvi.net
VSもVSCodeに吸収されそうの意味がさっぱりわからんが
フォントレンダリングだけはちゃっちゃと同じにして
ちゅーかもういい加減Windows全域でフォントのヒンティング切っとけや
本来にもう少しマシなレンダリングできるのに完全に癌になってるじゃろ

893:デフォルトの名無しさん
17/10/13 13:12:20.54 n8HgMJNJ.net
やる気があればVistaの時点でやってただろうねw
どうしてMSみたいな大企業が作ってるOSがフリーのLinuxより酷い品質なのかちょっと理解できないけど

894:デフォルトの名無しさん
17/10/13 13:17:51.90 O16XdCSv.net
VScodeってそんな魅力的じゃないよ
どちらも使ってるけど総合力じゃ今のVSのほうが数段上
VSCodeも最初と比べるとどんどん起動が遅くなってきてる

895:デフォルトの名無しさん
17/10/13 13:42:36.90 mWlYF3iB.net
そらそうやろ

896:デフォルトの名無しさん
17/10/13 15:21:15.25 bQrnObX5.net
vscodeって単なるエディタだろ

897:デフォルトの名無しさん
17/10/13 15:37:07.18 vLRRsIkM.net
vsも単なるエディタだよね・・・

898:デフォルトの名無しさん
17/10/13 15:58:23.34 /02if2W5.net
C#がVB化してユーザーも低スキル化、DQN化したのが嫌われる原因だな。

899:デフォルトの名無しさん
17/10/13 16:05:55.56 qYIJYs/2.net
VBとC#なんか変わらんしユーザーというかこの板に変なのがいるだけ
>>871
vsってエディタは聞いたことない

900:デフォルトの名無しさん
17/10/13 16:12:38.74 /02if2W5.net
>>873 ←こいつです。

901:デフォルトの名無しさん
17/10/13 17:50:46.71 k6fDlhS2.net
マルチプラットフォームなwebプログラミング向けエディタ
って触れ込みだったのに今はVSと比較される様になったのか

902:デフォルトの名無しさん
17/10/13 18:32:29.21 KDqUmvjk.net
言語だけぽこぽこ新しいのがでてくるが、
そろそろ言語+標準クラスライブライというか、.NETやJavaみたいな新しい実行環境でてこねぇかな。
いまなら負の遺産を一掃してもっと素晴らしいやつができるはず

903:デフォルトの名無しさん
17/10/13 18:38:11.70 tXRzEGrt.net
要は.NETをJVM化すればいいのか?
Coreがもう少し充実すればええんでね?

904:デフォルトの名無しさん
17/10/13 18:54:32.24 GNictDD2.net
>>871
IDEって知ってる?

905:デフォルトの名無しさん
17/10/13 18:58:38.89 n8HgMJNJ.net
JavaはともかくC#や.NETにガラガラポンが必要とは思わないな

906:デフォルトの名無しさん
17/10/13 19:15:51.57 vLRRsIkM.net
>>878
SATAに駆逐されたデータ転送規格だろ。そんくらい知ってるわ

907:デフォルトの名無しさん
17/10/13 19:34:09.07 r6+I6nXN.net
>>880
おもろないわー

908:デフォルトの名無しさん
17/10/13 21:44:12.59 /02if2W5.net
関西人がそんなヘタな突っ込みをするわけがない。

909:デフォルトの名無しさん
17/10/13 22:05:01.47 DPD6/A6x.net
>>873
まあ俺はほとんどエディタ代わりに使ってたりするけど... w

910:デフォルトの名無しさん
17/10/13 22:07:27.85 6pOkahl4.net
C#もそろそろ新言語への乗り換えの時期じゃないか
いつまでも残ってるダサい互換性を切ってnot nullとか新しい機能を導入してさ
C#は実験場にすればいい

911:デフォルトの名無しさん
17/10/13 22:12:20.87 /02if2W5.net
プラットフォームが先細りだから無駄な足掻き。
パソコンは名ばかりでもはやオフコン。業務でしか使われない。

912:デフォルトの名無しさん
17/10/13 22:32:01.44 HAAysV2z.net
kotlinの読み方って
ことりん
でOK?

913:デフォルトの名無しさん
17/10/13 22:42:29.74 7WqKL+Sr.net
C#使い始めて何年も経つけど未だに乗り換えようと思うほど使いこなせない
思った通りのもの作れるし

914:デフォルトの名無しさん
17/10/13 22:43:43.87 l1jERKvk.net
>>884
c#8.0

915:デフォルトの名無しさん
17/10/13 23:06:44.79 /02if2W5.net
>>886
日本ではなべやかんって言われてる。

916:デフォルトの名無しさん
17/10/14 08:13:04.21 Sngz5bnk.net
我流で必要に迫られて始めたものの、汚いいVB6ちっくなコードしか書けない…
キチンとセオリーに則って基礎からやり直したい
とは言え、(どうせ、この先自分以外の誰かがソース開くことなんかねぇだろな…)と思うと、まぁいっか、と逃げてしまう

917:デフォルトの名無しさん
17/10/14 08:20:33.00 +XwGR1nT.net
>>886
ことぅりんっ

918:デフォルトの名無しさん
17/10/14 10:44:36.38 SVCVJk+z.net
>>890
惰性でいくら書いても無駄
良いコードを書くには良書を読むに限る

919:デフォルトの名無しさん
17/10/14 11:36:43.44 iAy6fmRl.net
目的がきれいなコード書くことならそれに向けて努力すべきだけど
動くものが作りたいならそんなのは遠回り

920:デフォルトの名無しさん
17/10/14 11:44:43.92 SVCVJk+z.net
動けばいいと言う奴のプログラムはえてして正しく動かないものだ

921:デフォルトの名無しさん
17/10/14 11:58:17.97 QGlvjmmK.net
オラクルのJavaシルバーに合格した。
C#も勉強したいが少し不安。
似てる部分が多いだけに頭が混乱しそう

922:デフォルトの名無しさん
17/10/14 16:02:23.40 1NT+cnAj.net
その場で書いて動かして後のこと考えなくていいなら汚いコードでもいいけど
長期的にメンテナンスすること考えたら多少手間でも綺麗なコード書いたほうが結局近道

923:デフォルトの名無しさん
17/10/14 16:03:40.35 POcZZiww.net
>>892
おすすめの良書教えて下さい

924:デフォルトの名無しさん
17/10/14 16:09:34.83 F+wwiVHB.net
>>896
C#なんてすぐバージョンが上がって推奨されてない書き方です、とか
時代についていけない老害とか馬鹿にされるんだぜ。使い捨てのコードを書く言語だよ。

925:デフォルトの名無しさん
17/10/14 16:11:41.65 0bz5HDJB.net
俺も動くものは作れるけど、汚いコードや一箇所仕様変更すると他の関数にまで影響が出て整備がほぼできないコード量産してるわ
整備不可なコードの山を見て、整備しやすいコードの書き方勉強しようとしてるけど、イディオム本読んだりデザインパターン少し調べてもイマイチ理解が深まらなかった
インターフェイスや継承はまったく使ってなかったけど、最近取り入れようとサンプルコード書いてます

926:デフォルトの名無しさん
17/10/14 16:26:44.70 gHhUphNv.net
リファクタリング(マーティンファウラー)
エリック・エヴァンスのドメイン駆動設計
C#の本じゃないけどな

927:デフォルトの名無しさん
17/10/14 17:13:18.55 RBWq+qGD.net
>>898
そんなことないよw
基本メソッドの中なんてブラックボックスで構わんが、
メソッドの切り分け方とか全体の設計方法に影響を与えるような変更なんか
そうしょっちゅうあるわけじゃないから。
2.0以降考えてもジェネリkック、ラムダ式、非同期メソッド、
あと強いて言えばオプション変数、これぐらいしかないでしょ

928:デフォルトの名無しさん
17/10/14 17:23:48.06 Gt2cFrms.net
taskとasync/awaitを忘れてるぞ

929:デフォルトの名無しさん
17/10/14 17:26:58.34 Gt2cFrms.net
>非同期メソッド
書いてあったわ

930:デフォルトの名無しさん
17/10/14 17:40:04.26 ipiotHZI.net
ジェネリック
ラムダ
var
System.Linq
匿名型
オーバーロード解決の強化
非同期
2.0使うとこの辺りが欲しくなる

931:デフォルトの名無しさん
17/10/14 17:41:10.18 GRARGOD6.net
最近はC++でさえ、がんがん新しい機能取り入れてるからな
無理やり感は否めないけど

932:デフォルトの名無しさん
17/10/14 17:42:42.97 0bz5HDJB.net
まぁ実際すぐ動くもの欲しくなったら仕様変更考えない作りにする感じはある
余裕ある時じゃないと設計とか考えないから全然身に付かないけど
大手は分からないけど中小で入ったところは上層はコード共通化したがってたけど、PGはライブラリ各個で作って新機能追加の度に客先別コーティングしてたし、整備性を加えるのはそこそこ手間が掛かるのかなって印象

933:デフォルトの名無しさん
17/10/14 17:48:33.48 ipiotHZI.net
標準ライブラリとオープンソースをラップしてプロジェクト用のライブラリを作る
作業効率最適化とリスクを考えるとどうしてもこのラッピング作業が必要になる
社内ライブラリに変わったとしてもこのラッピング作業は必要だからプロジェクトの工数は減らせない
それどころかバグの多さやドキュメントの少なさを考えると社内ライブラリは害悪にすらなりうる

934:デフォルトの名無しさん
17/10/14 18:23:25.93 EAXt6Ted.net
refとかoutって使う?

935:デフォルトの名無しさん
17/10/14 18:33:33.69 +aeiapeN.net
>>908
TryParseが最初からout使う前提
refは呼び出し先でデータ加工して返すときに無いと面倒
あとどっちもwinapiとかアンマネージのライブラリのときによく使う印象

936:デフォルトの名無しさん
17/10/14 18:40:32.10 09BRVdeW.net
あと、2つ以上値を返すときは、今までrefかout使うのが便利だったが
タプルさ


937:ん新型で、その需要は大分減ったかもしれんね



938:デフォルトの名無しさん
17/10/14 18:41:14.11 wCRGPfd0.net
俺は綺麗に書こうと努めてるが、他人のすごいスパゲッティコードを見たとき、
ある意味これはこれですごいなと思う。
俺なら発狂しそうだし、こんな長いコードよくメンテできるなと
これはこれですごいなとは思う。

939:デフォルトの名無しさん
17/10/14 18:56:56.78 XRdStdss.net
>>908
多用はしないけどないと困らない?

940:デフォルトの名無しさん
17/10/14 19:08:22.69 GDzf5CCz.net
>>911
同意
多分IQはあいつらの方が高いんだろうなって思う
彼らは複雑なものを複雑なまま扱えるからシンプルに置き換えて考えようって気にならないのかもしれない

941:デフォルトの名無しさん
17/10/14 19:35:40.73 2nqvspLu.net
メソッドの戻り値によく処理成否のエラーコードと処理結果のオブジェクトや例外情報をプロパティにした自作クラス使っているんだけど、C#7以降はValueTuple使ったほうが楽なのかね

942:デフォルトの名無しさん
17/10/14 20:04:11.88 TEHxzWsT.net
>>914
それは普通に例外使え

943:デフォルトの名無しさん
17/10/14 20:13:50.41 eGxiRqCm.net
>>909
>>910
ありがとう
>>912
今までは困ってなかったんだけど、あまり使い方を知らなかったせいだとおもう

944:デフォルトの名無しさん
17/10/15 10:21:44.73 g/8BaPWP.net
>>911
そういう人って、書いてから何年もごぶさたなコードだって苦もなく修正できるのかな?
だとすれば無条件に感心するけど
自分も作ってすぐのほかほかスパゲティなら勝手わかってるけど、ごぶさたで冷めた
スパゲティはさすがに細部がどうだったか覚えてなくて、麺をほぐすのに苦労するw

945:デフォルトの名無しさん
17/10/15 10:34:18.66 jiVarmiT.net
>>917
文系の記憶力を甘く見ない方がいい
あいつら暗記だけで受験や大学卒業まで乗り切ってきたんだぜ
数年前のスパゲティでもここどうなってんのって聞けばちゃんと答えを返してくる

946:デフォルトの名無しさん
17/10/15 10:38:44.41 pPHSVA6w.net
プログラミングも暗記がすべてだぞ

947:デフォルトの名無しさん
17/10/15 12:31:37.62 6sAES7rz.net
>>917
1ヶ月たってたら厳しいw

948:デフォルトの名無しさん
17/10/15 13:52:28.53 VwZ2wYnP.net
>>919
暗記で何とかなるプログラムしかやらないんだな

949:デフォルトの名無しさん
17/10/15 13:55:30.87 XWjA+gHr.net
staticタスクをwhileでずっと回してデータリストのデータを監視しててエラーがあったら注意喚起のフォームを開いたりフォームのラベルを変更したりしたいんだけど
staticだからタスクからインヴォーク使えないし、メインフォームに作ったフォーム開いたりするメソッドをデリゲートしようとしても静的フィールド〜でできなくて詰まった・・・
設計見直したほうがいいレベル?

950:デフォルトの名無しさん
17/10/15 14:09:37.18 Bo2AAy/J.net
TaskScheduler渡しとけばいいんでない

951:デフォルトの名無しさん
17/10/15 14:21:36.95 uH5IYLUj.net
>>922
意味不明だから言いたいこと整理して
1ステートメントは短く簡潔に
複数行に分けてもいい
「〜である。」「〜だと思う。」「〜したい。」「〜してくれ。」をハッキリして

952:デフォルトの名無しさん
17/10/15 14:41:20.38 yD0afN8z.net
静的イベント定義してタスクはそれを発生させる
受け取り側各位はイベントを受けて適当にハンドルする
でいいんじゃね

953:デフォルトの名無しさん
17/10/15 14:43:54.89 khkF9f68.net
>>924
お前以外はわかってる

954:デフォルトの名無しさん
17/10/15 14:46:56.01 XWjA+gHr.net
□メインフォーム
データリストを保持してる
一定間隔でデータリストをデータベースから取ってきて更新する
□バックグラウンドタスク
メインフォームのコンストラクタで起動する
メインフォームを閉じるまでwhileで動き続ける
メインフォームのデータリストに異常値を見つけたら注意喚起フォームを開く
□注意喚起フォーム
データが異常値だから直せ〜のメッセージが表示してある
オーナーはメインフォーム
バックグラウンドタスクのメソッド上で注意喚起フォームを普通に開こうとしたらクロススレッド〜で開けない
タスク上にインヴォークを記述するのはタスクがスタティックだから使えない
フォームを開く処理をメインフォームに書いてタスクにデリゲート処理を記述するのもタスクがスタティックだから静的なフィールド〜でできない
メインフォームはスタティックじゃないけど作りの問題でタスク側でnewするわけにはいかない
どうやってタスクからイベントを投げてメインフォームでハンドルすればいいか教えてください
>>924
これで理解できる?

955:デフォルトの名無しさん
17/10/15 14:48:02.73 uH5IYLUj.net
>>926
それはわかってるつもりになってるだけだよ

956:デフォルトの名無しさん
17/10/15 14:52:56.88 uH5IYLUj.net
>>927
後半が意味不明
タスクがスタティックってどういうこと
タスクはオブジェクトだろ

957:デフォルトの名無しさん
17/10/15 15:10:29.08 XWjA+gHr.net
static修飾子知らないってマジモンの素人やん
そら説明しても理解できませんわ
>>925
ありがとう
ちょっと調べてみる!

958:デフォルトの名無しさん
17/10/15 15:42:51.61 6FiFCoKL.net
バックグラウンドタスクをシングルトンパターンにして、
メインフォームから起動すればいいんちゃうか

959:デフォルトの名無しさん
17/10/15 15:48:03.42 hZRxEBGG.net
>>927
>バックグラウンドタスクのメソッド上で注意喚起フォームを普通に開こうとしたらクロススレッド〜で開けない
UIスレッドからタスクを実行してるならawaitでUI処理できるよね?
タスク一回終わらしてUI処理してからまたタスク起動する形にすれば簡単だと思う
それかイベントにするか
>メインフォームのコンストラクタで起動する
これって普通?コンストラクタで起動するのはちょっと気持ち悪い

960:デフォルトの名無しさん
17/10/15 15:54:54.78 uH5IYLUj.net
Formが抱えてるデータを走査してるんだから
Formインスタンスは持ってるんだろ
ならInvokeするだけじゃねえかアホかこいつ

961:デフォルトの名無しさん
17/10/15 15:59:42.50 Tx63GDtf.net
バックグラウンドタスクっているの?

962:デフォルトの名無しさん
17/10/15 16:05:38.00 uH5IYLUj.net
インヴォーク(FormインスタンスのInvokeメソッドのことでいいんだよな?)を記述できないスタティックなタスク
という記述から一般的な意味でのstaticメソッドではないスタティックなタスクと名付けられたもの固有の事情があることは明らか
なぜなら非UIスレッドで実行中のstaticメソッドからFormインスタンスのInvokeメソッドを呼び出せないということはないからだ
そもそもInvokeは非UIスレッドからUIスレッドに処理を移譲するための機構だ
まずはそこ(スタティックなタスクと呼んでいる何かについて)を説明しろ

963:デフォルトの名無しさん
17/10/15 16:11:46.40 64liGYG7.net
綺麗なコードって何なんだろうと思う
俺のかいたコードじゃないことは確か
クラス設計もきちんと学んだことがなく
いつの間にか親子関係がおかしくなってそれぞれをコンポジションしたり
よくよく見たらstaticでいいよなって思うものが生えてくる
状態なのか具象なのかが混とんとしてくる
参考にしようと小さなソフトのgithubみたら100行に満たない小さなクラスが100も200もあったりする
どうやってこれの役割覚えて管理してるのかと感心する

964:デフォルトの名無しさん
17/10/15 16:31:12.04 Tx63GDtf.net
>>936
製作者がクラス図書いてなきゃ
そこで終了な案件
ソースからクラス図を生成するツールがうまく動いてくれればラッキー
動かなかったら地道に書いて見るしかない

965:デフォルトの名無しさん
17/10/15 16:31:43.29 XWjA+gHr.net
>>932
コンストラクタで起動するのが気持ちわるいのは超同意
でもコンストラクタで立ち上げて常駐する形じゃないとダメー!!!らしいのでしゃーなしでやってる
タスクの処理をUIスレッドでawaitして返り値で処理するのを繰り返す形が正解なのは理解してるんだけど
>>934
ぶっちゃけボタンかタイマーで起動してawait繰り返せば済むしコードも読みやすいし実装も楽だし拡張性も上がるんだけど
「おじいちゃんはバックグラウンドという言葉が大好き」なのでしょうがない

966:デフォルトの名無しさん
17/10/15 16:34:15.07 SUmdrC/e.net
>>936
小さいクラスはたくさんあっても困らない
見れば何やってるかすぐにわかるから
それに小さいクラスは1つの役割に集中していることが多い(それが良い設計)
なのでクラス名を見れば何をやってるクラスなのか大体わかる


967: 何千行もある巨大なクラスは見てもよくわからない 大抵の場合、様々な役割が1つのクラスに詰め込まれているので、名前も曖昧になる こういうクラスは1つでもあるとプロジェクトが大混乱する



968:デフォルトの名無しさん
17/10/15 16:39:42.12 Tx63GDtf.net
>>939
俺はわからんかった
細切れソースは俺は読めない
資料書いてくれ

969:デフォルトの名無しさん
17/10/15 16:41:28.87 SUmdrC/e.net
>>938
そもそも繰り返すのは正解じゃない
入力系イベントで同期的に検証すればいいだけの話
今回の場合は入力ではなくデータ取得なので取得したあとにデータを検証ればいい
検証なんてほとんど時間がかからないんだから非同期にする必要はない
データに変化がないのに何度も繰り返しデータが正しいか検証したってしょうがない

970:デフォルトの名無しさん
17/10/15 16:45:10.71 SUmdrC/e.net
>>940
そうか
長いクラスを読むのはもっと大変だろうね

971:デフォルトの名無しさん
17/10/15 16:46:24.51 64liGYG7.net
俺が見たのは何とかジェネレーターというの沢山あるものだった
AジェネレーターがBジェネレーターをつくりそのクラスからCジェネレーターが出来て…と
とてもとても理解不能だった
なぜなんとかジェネレーターが必要なのかどうかがわからない

972:デフォルトの名無しさん
17/10/15 16:48:21.34 eZM6bYju.net
コンパクトなクラスが読めないのは能力云々より
設計か命名の問題だと思う

973:デフォルトの名無しさん
17/10/15 16:49:26.63 Tx63GDtf.net
>>942
そういう問題じゃなくて意味があるまとまりにしてくれないと困る
んでおそらく形成されているであろうツリー構造がソースから把握できない

974:デフォルトの名無しさん
17/10/15 16:53:40.20 Tx63GDtf.net
>>943
単ー複の複が増減するんだろうねw
クラス図だと「ー●」確かこんな関係?

975:デフォルトの名無しさん
17/10/15 16:58:24.70 64liGYG7.net
コンストラクタ+メソッド1個みたいのもたくさんあった
単機能を実装したらこういうことになるんだろうとは思うけど
クラスが現実世界のものを表してるならこんな感じにはならない

976:デフォルトの名無しさん
17/10/15 16:59:23.02 HL16aayQ.net
>>945
クラスは意味のあるまとまりだよ
クラスのグルーピングは名前空間でやってるでしょ
名前空間使ってないなら命名規約でわかるようになってるんじゃないかな
どっちも無いならちょっと不親切だね
ちなみにどのリポジトリ?Githubだったよね?

977:デフォルトの名無しさん
17/10/15 17:01:23.72 Tx63GDtf.net
>>947
作るの勝手だけど
そういう奴に限って設計書のクラスの
記述漏れてんだよなぁ
プチクラス作れば作るほど
設計書書くの大変なのに

978:デフォルトの名無しさん
17/10/15 17:03:33.64 Tx63GDtf.net
>>948
githubなんてアクセスしたら警告表示が出ちまうよ

979:デフォルトの名無しさん
17/10/15 17:03:58.81 HL16aayQ.net
>>943
それはジェネレーターではなくファクトリーでは?
DIフレームワークを使わない硬派なプロジェクトだと大量のファクトリーが作られる

980:デフォルトの名無しさん
17/10/15 17:06:39.12 Tx63GDtf.net
>>951
たくさん種類があるんじゃね?

981:デフォルトの名無しさん
17/10/15 20:01:37.79 pPHSVA6w.net
無駄にこだわりが多かったりプライド高いやつのは汚いソースになるな

982:デフォルトの名無しさん
17/10/15 20:21:58.89 7EwQRwAf.net
>>908
使わない
過去の遺物
ヒープ汚したく無い時のstruct用はあるが例外やね

983:デフォルトの名無しさん
17/10/15 20:24:26.52 7EwQRwAf.net
>>914
今ならOptionやらなんやらやね

984:デフォルトの名無しさん
17/10/15 20:41:56.58 T+wcAuKm.net
>>954
過去の遺物ってことは無いな
C#7で参照戻り値と参照ローカル変数が追加されたくらいだし

985:デフォルトの名無しさん
17/10/15 22:31:21.56 9R+c2v2L.net
C#はコードを使い捨てにする言語だからな。
殴り書きの汚いソースでも動くように最強のIDEがサポートしてくれる。

986:デフォルトの名無しさん
17/10/15 22:39:13.51 Gr3hJnkQ.net
それには同意できない
殴り書きでいいならpythonつかえと

987:デフォルトの名無しさん
17/10/15 22:44:28.44 9R+c2v2L.net
おまえに命令される筋合いはない。おまえこそCOBOLでも使ってろよ。

988:デフォルトの名無しさん
17/10/15 22:47:00.42 iejCBPTQ.net
ちょっとワロタ

989:デフォルトの名無しさん
17/10/15 22:52:11.14 gXUARaWp.net
業務系でC#使う上で最強のプロジェクト管理・ソース管理はどれですかね?

990:デフォルトの名無しさん
17/10/15 22:57:23.96 s9CmER57.net
個人プレーならzipでソルーション丸ごと固めるのが結局最強

991:デフォルトの名無しさん
17/10/15 23:01:23.07 9GFvcsU0.net
>>961
GitHub Enterprise

992:デフォルトの名無しさん
17/10/15 23:04:37.66 9R+c2v2L.net
TFSは死んだのか。

993:デフォルトの名無しさん
17/10/15 23:17:33.61 dd5lceIv.net
今やMSもGithubだからなあ

994:デフォルトの名無しさん
17/10/15 23:17:50.60 9GFvcsU0.net
>>964
VSTS

995:デフォルトの名無しさん
17/10/15 23:52:49.16 9R+c2v2L.net
C++保守用に未だVSS使ってるわ。新規で作ることないから移行する気がない。
個人ではC#のコードは使い捨てだから変更履歴なんかいらないよな。バックアップだけで十分。

996:デフォルトの名無しさん
17/10/16 00:06:28.84 jGcPR8aa.net
バックアップ目的だけでもgitのほうが楽だわ
何も考えずプッシュするだけ

997:デフォルトの名無しさん
17/10/16 00:10:00.94 TyZJj4Kq.net
VCSに対してCVSとかSVNとかのイメージを引きずってるなら、
Gitは食わず嫌いしないで一度試してみるべきだな
本当に手軽に使え、全く負担にならない

998:デフォルトの名無しさん
17/10/16 00:35:37.42 pMOr9sAk.net
>>969
gitって非公開で使うにはお金かかるんですか?

999:デフォルトの名無しさん
17/10/16 00:38:16.40 7ho3Goo/.net
gitは今はVSにもデフォルトで入ってるんじゃないか?ネットワークないローカル環境でも使える
githubはしらね

1000:デフォルトの名無しさん
17/10/16 00:47:42.36 eZI1RZBb.net
githubは非公開はお金がかかる
そういうサービス使わないで自分でgit使って自前のgitリポジトリ利用はタダ
好きなように運用したらいい

1001:デフォルトの名無しさん
17/10/16 00:49:28.23 TyZJj4Kq.net
gitはローカルで使いながら必要に応じてリモートと同期取るもんだけど、
無料でプライベートリポジトリが持てるホスティングサービスとしてはbitbucketが有名
github的な機能が不要で本当にgitリポジトリのホスティングだけでいいならAWS CodeCommitとかも無料で使える

1002:デフォルトの名無しさん
17/10/16 01:22:35.89 TG+ykm1v.net
個人でVSTS使おうと思うけど無料なん?
プライベートリポジトリ。

1003:デフォルトの名無しさん
17/10/16 01:35:49.09 pMOr9sAk.net
gitと、githubって別物だったのかw

1004:デフォルトの名無しさん
17/10/16 01:38:02.07 1MDONeW4.net
>>974
うん

1005:デフォルトの名無しさん
17/10/16 02:22:04.00 7CHwAcHs.net
乱立しすぎ。

1006:デフォルトの名無しさん
17/10/16 02:25:43.57 TG+ykm1v.net
>>976
試してます。ありがとうございます。

1007:デフォルトの名無しさん
17/10/16 08:21:49.44 dwD3mD07.net
>>977
世の中はGitで完全に統一されてるよ
どんなホスティングサービスだろうがツールだろうが扱うのはGitリポジトリ
Gitでバージョン管理されているディレクトリをどこに置くか、GUIクライアントに何を使うか、の違いに過ぎない
移行も空のリポジトリ作ってプッシュするだけだ

1008:デフォルトの名無しさん
17/10/16 08:36:34.51 7CHwAcHs.net
まんまとこの糞ボケに騙されたわ。
gitは糞複雑すぎる。

1009:デフォルトの名無しさん
17/10/16 08:49:18.18 dwD3mD07.net
>>980
だったら全世界がお前を騙してることになるぞ
今時Gitなんか開発者にとってはHTTPと同レベルの常識
Gitできない時点でまともにプログラム書けるのか疑われるレベルだぞ

1010:デフォルトの名無しさん
17/10/16 10:04:14.42 rPeh4Mh4.net
>>980
プログラマ向いてないよ

1011:デフォルトの名無しさん
17/10/16 10:04:38.76 qSwuY79x.net
うーん、やっぱりgitは日本語入れると死ぬなぁ
俺だけ?

1012:デフォルトの名無しさん
17/10/16 10:10:42.73 rPeh4Mh4.net
>>983
日本語で

1013:デフォルトの名無しさん
17/10/16 10:14:51.68 qSwuY79x.net
>>984
git、日本語のフォルダとかファイルとか


1014:ると駄目だわ



1015:デフォルトの名無しさん
17/10/16 10:16:55.41 7CHwAcHs.net
>>981-984
もはやスレチじゃ。gitスレに帰れ、アホども。

1016:デフォルトの名無しさん
17/10/16 10:32:00.46 rPeh4Mh4.net
>>986
そうだね、Gitも使えないんじゃc#スレにいてもしょうがないね

1017:デフォルトの名無しさん
17/10/16 10:57:45.62 qSwuY79x.net
みんな日本語設定なんでうまくいくの?

1018:デフォルトの名無しさん
17/10/16 10:58:32.74 FZpcfz8T.net
VSに統合されてるし
変わったことしようとしなければ難しくないと思うけどな

1019:デフォルトの名無しさん
17/10/16 11:26:00.31 Bpg1BMlQ.net
なんでGit使うの?
MSの無料のなんちゃらファウンデーションの方がよくない?

1020:デフォルトの名無しさん
17/10/16 11:36:48.49 1Xir09k9.net
>>990
バージョン管理とホスティングを混同してるだろお前

1021:デフォルトの名無しさん
17/10/16 11:37:48.11 Bpg1BMlQ.net
>>991
うん、多分わかってないわ

1022:デフォルトの名無しさん
17/10/16 11:38:48.59 ts6qmxVh.net
>>988
糞古いの使ってないか?たしか1.6ぐらいまでは日本語不具合あったと思う。詳しくはこっちできけ
Git 16©2ch.net
スレリンク(tech板)

1023:デフォルトの名無しさん
17/10/16 11:39:33.27 1Xir09k9.net
>>992
VSTS(TFS)を使う場合でも、バージョン管理は基本的にGitやで

1024:デフォルトの名無しさん
17/10/16 19:35:11.46 3WbDhRse.net
>>956
それが例外の特殊必要例やね
積極的に使うものではなくてある特定の人向けのもの

1025:デフォルトの名無しさん
17/10/16 19:50:32.43 BHf6I/rR.net
結局使う場面があるってことやね

1026:デフォルトの名無しさん
17/10/16 19:51:44.84 eZI1RZBb.net
みんなTryParseって使ってないのかな?

1027:デフォルトの名無しさん
17/10/16 20:15:08.82 snIoncYK.net
gitlabは確か無料だぞ
OSSだから自分で鯖立ても出来たはず

1028:デフォルトの名無しさん
17/10/16 20:20:36.66 oJ8YHn8m.net
>>997
それは普通に使うな

1029:デフォルトの名無しさん
17/10/16 21:39:17.75 uXI4Esj0.net
Dictionary.TryGetValue も

1030:デフォルトの名無しさん
17/10/16 22:18:18.74 7CHwAcHs.net
>>993
向こうで何があったか知らないがgitスレはIP表示にしてるからこっちで暴れてるのではないか。
git関連は巣に戻れ。

1031:片山博文MZ
17/10/16 23:46:42.68 XYyvKIYb.net
終了。

1032:1001
Over 1000 Thread.net
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 177日 8時間 9分 49秒

1033:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています


最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

1603日前に更新/250 KB
担当:undef