16/10/01 03:07:50.73 wBNDJc4Z0.net
>>796
なるほど、利用者目線ですか。
個人で開発していて、利用者側のほうは考えてませんでした。
どちらでも見やすくできるのですか!。
どう工夫すればどちらでも見やすくすることができるのでしょうか?。
811:デフォルトの名無しさん (ワッチョイ 27ce-ETlQ)
16/10/01 03:44:10.04 q3q/lNQ30.net
そもそもラベル100個表示して、それを見てユーザーがどう思うか考えろ
ユーザーの感想は恐らく「うわーナニコレ気持ち悪い」だよ
まずラベル100個から離れろ
次にユーザーが使う事を前提に考えろ
このままだとまるで頭のおかしい子だぞ
812:デフォルトの名無しさん (ワッチョイ 1f13-rzru)
16/10/01 03:48:04.09 rH9xy5Nb0.net
だからラベル100個も必要ならListView使えっつうの
813:デフォルトの名無しさん (アウアウ Sa17-uEQG)
16/10/01 04:18:56.28 zlQj50UYa.net
言っちゃ悪いけど、アホな中学生が友人に「お前○○(アイドル)に告られたらどうする?」
って聞く類のバカ話にしか聞こえんね。
814:デフォルトの名無しさん (ワッチョイ 47b5-RPp1)
16/10/01 07:10:23.61 VMhdEcdj0.net
C#と直接関係ないんだけどzipで配布するような単純なユーティリティソフトの場合
設定を保存する場所と形式ってどこが良いのかな?
一応Environment.SpecialFolder.ApplicationData以下にXMLで保存する方法と
exeと同一フォルダにiniで保存する2通り作ってみた
VS的にはapp.exe.conifgなんだろうけどなんか気持ち悪い
個人的にはiniの方がファイルが分散しないので好きだけど
今時iniで大丈夫なのか不安もあるので諸兄の意見を聞かせてくれまいか
815:デフォルトの名無しさん (ワッチョイ 9bdc-rzru)
16/10/01 07:51:06.67 rAdXsmVI0.net
>>802
ファイル形式と場所は別問題だろ
俺ならJSONでexeと同じ場所
816:デフォルトの名無しさん (ワッチョイ 47b5-RPp1)
16/10/01 08:05:14.50 VMhdEcdj0.net
>>803
iniの方がじゃなくて同一フォルダの方がだね悪かった
同一フォルダでやります
817:デフォルトの名無しさん (ブーイモ MM57-LGiF)
16/10/01 08:35:09.10 ERiJSEHrM.net
>>797
例題の設定がよくわからない
1つの画面がある
画面の状態によって画面内のラベルの数が変わる
画面の状態を変えるボタンが3つある
これで良いのか?
818:デフォルトの名無しさん (オッペケ Srb7-Xr8z)
16/10/01 10:04:44.50 5I4x+GEMr.net
ラベルとボタンに対応するオブジェクトを、それぞれItemsSourceにBindingで解決。
819:デフォルトの名無しさん (ワッチョイ 177b-RPp1)
16/10/01 12:47:01.78 wBNDJc4Z0.net
>>791
例には書いてませんが、位置、カラー、フォントなどがその場面場面で変わるので、ListViewではできないんじゃないでしょうか。
>>805
その解釈で間違いないです。
>>806
これからやってみます!
820:デフォルトの名無しさん (ブーイモ MM57-LGiF)
16/10/01 13:13:07.74 qYztZe37M.net
ボタンの配置方法に規則性がないなら
パターン毎にカスタムコントロールを作りそのコントロールの要素としてラベルなどを貼り付ける
作成した幾つかのカスタムコントロールを画面に配置する
押されたボタンによって各カスタムコントロールの表示非表示を切り替える
821:デフォルトの名無しさん (ワッチョイ 1723-RPp1)
16/10/01 14:21:29.02 7+OjnMag0.net
>>807
1.xamlで書く
2.オーナードローを使う
俺は1がお薦めだな
822:デフォルトの名無しさん (ワッチョイ 177b-RPp1)
16/10/01 18:45:47.86 wBNDJc4Z0.net
>>808
処理が重過ぎなければ、その方法で管理したほうがよさそうですね!。
>>809
xamlで書くとはどういうことですか。
823:デフォルトの名無しさん (ワッチョイ 1f13-rzru)
16/10/01 20:44:27.08 rH9xy5Nb0.net
>>810
WPFとかXamarinとか ->XAML
824:デフォルトの名無しさん (ワッチョイ 1f20-rzru)
16/10/01 21:36:18.35 8pjQj2AO0.net
C#好きなんだけど
Windowsが落ち目気味だし
そもそもプログラ厶作る人間は
賤業従事者みたいな空気が
なんか辛くなってきました
そんなC#最大の問題を
皆さんどう考えてますか
825:デフォルトの名無しさん (ワッチョイ 1f20-rzru)
16/10/01 21:39:36.33 8pjQj2AO0.net
面接で
C#やってました
と言っても
言語とか底辺の覚えることだし
興味ないから
SEとかやったことないの?
使えねえ
という空気が苦しいです
826:デフォルトの名無しさん (ワッチョイ 9ba6-68Ay)
16/10/01 21:55:14.00 oaKP8GxL0.net
それC#じゃなくてお前自身の問題じゃね?
827:デフォルトの名無しさん (ワッチョイ 1f20-rzru)
16/10/01 22:07:43.59 8pjQj2AO0.net
大手Sierの従兄妹の結婚式に出たら
彼女の上司が
○○ちゃんもプログラマを卒業して
SEになり と祝辞を言ってた
プログラムする人間なんて
社会経験の浅い若造ってことだなと
痛感したよ
少なくとも25歳超えてプログラマとか
IT業界じゃ負け犬という認識なんだなと思った28歳の秋
828:デフォルトの名無しさん (ワッチョイ 1f20-rzru)
16/10/01 22:09:38.38 8pjQj2AO0.net
プログラマの給与基準が
新卒レベルなのが
現実を物語ってるわ
829:デフォルトの名無しさん (ワッチョイ eb3c-ETlQ)
16/10/01 22:17:36.09 j4WTV/sN0.net
PGに限らず、国の体質として技術屋の地位が低い事については確かに思う所はあるが
まあなんだ マ板でやれ
830:デフォルトの名無しさん (ワッチョイ 27cb-rzru)
16/10/01 22:27:05.88 RzLhZEUm0.net
>>817
それでも品質No.1なんだなぁ
831:デフォルトの名無しさん (ワッチョイ 1f20-rzru)
16/10/01 22:27:24.97 8pjQj2AO0.net
マ板は、多重請負が酷すぎるという
書き込みしか見なくなった
LINQの機能に感動すら覚えるほど
C#が好きなのに
プログラマが先行きの怪しい業種と化していて悲しい
832:デフォルトの名無しさん (ワッチョイ 1f13-rzru)
16/10/01 22:38:25.09 rH9xy5Nb0.net
プログラミングやめたいならもうム板にもこなくていいだろ
833:デフォルトの名無しさん (オッペケ Srb7-Xr8z)
16/10/01 22:39:25.90 FxQOa5OAr.net
LINQ毛嫌いする人いるよなあ。
あんなに便利なのに。
ほんの少しの努力はいるけど。
834:デフォルトの名無しさん (アウアウ Sa17-uEQG)
16/10/01 22:47:05.90 IEObNzvoa.net
>>819
今はだいぶ少なくなったんだよw
前は本当にそういう恨み言だらけだった
正直、あの手の連中は自分の問題を企業や業界の問題に
摩り替えているだけにしか思えない。
プログラマって職業を舐めてる。
昔デモシカ教師って言葉があったけど、何を勘違いしたかデモシカでプ
ログラマになってる奴が多すぎるんだな。
835:デフォルトの名無しさん (スププ Sd8f-rzru)
16/10/01 22:47:20.08 UJVgAevHd.net
>>821
だってWhere().Select()で書いた方が短く書けるもん
836:デフォルトの名無しさん (ワッチョイ 1f20-RPp1)
16/10/01 23:25:00.17 8pjQj2AO0.net
LINQ便利だけど
統括する若い女SEが理解できないという理由で
Datasetとか使う羽目になった
多次元配列に二次元配列突っ込む大卒のSEと
Micro-ORMとLINQを使う中年高卒プログラマの俺
大卒とか、高卒中年の俺が目を回すような
新技術とか使ってくるのが普通だと思ってたんだけど
今の大学はプログラムなんてまともに教えてないんだろうなと感じた
まあ、底辺の賤業なんて、大学で学ぶ価値無いもんな
837:デフォルトの名無しさん (ワッチョイ 1f20-RPp1)
16/10/01 23:28:39.54 8pjQj2AO0.net
つか、女SEは、デリゲートどころか継承すら忌避するんだけど
大学ではもうプログラムの授業は必須じゃないのかね?
高卒中年には事情が分からんよ
838:デフォルトの名無しさん (ワッチョイ eb3c-rzru)
16/10/01 23:33:06.55 R05VqS280.net
>>825
そんな職場で働く自分を恨め
嫌なら転職しろ
839:デフォルトの名無しさん (ワッチョイ 1f20-RPp1)
16/10/01 23:37:51.58 8pjQj2AO0.net
>>826
プロジェクトが終わるまでは
付き合わないとダメかなと思うおれは、
やはり昭和の人間か
今の若者は、見切りが早そうだしね
現状に最適化されてるんだろう
840:デフォルトの名無しさん (ワッチョイ eb3c-rzru)
16/10/01 23:41:07.40 R05VqS280.net
>>827
継承を避けるのはまだわかるけどね
841:デフォルトの名無しさん (ワッチョイ 9bdc-dvmP)
16/10/01 23:45:00.08 rAdXsmVI0.net
>>827
お前の仕事はモノを納品することか? 違うだろ?
プログラマとして労働力を提供することだろ?
勘違いするな、黙って言われた通りに手を動かせ
842:デフォルトの名無しさん (ワッチョイ 475e-RPp1)
16/10/01 23:49:41.63 wYwnqMss0.net
ここ質問スレなんだから弁えてくれよ
ワッチョイ表示されているのにやめとこうとか思わないのかな
検索したら他の書き込みも見つかるんだよ
843:デフォルトの名無しさん (ワッチョイ 1f20-RPp1)
16/10/01 23:50:00.46 8pjQj2AO0.net
>>829
古い技術で冗長に作るのは構わないけど
それで完成を急がせるとか悪夢なんだよな
プログラマでも、夜10時には帰りたいんだよ
IT業界最底辺のプログラマの癖に
生意気な発言かも知れんけど
844:デフォルトの名無しさん (ワッチョイ 1f20-RPp1)
16/10/01 23:52:27.12 8pjQj2AO0.net
つか、最近この業界は女が多いな
元請けにだけど
SEの6割くらい女だ
845:デフォルトの名無しさん (スププ Sd8f-rzru)
16/10/02 00:10:23.06 7Va7E79+d.net
ウジウジ気持ち悪い奴だな
846:デフォルトの名無しさん (ワッチョイ 177b-RPp1)
16/10/02 02:04:45.52 6e8EcOa10.net
>>811
.NET以外を使うってことですね!。
レスありがとうございました。
847:デフォルトの名無しさん (ワッチョイ 4349-xqgw)
16/10/02 02:58:07.19 wunJRFms0.net
>>834
WPFは.NETなんだけど。
848:デフォルトの名無しさん (ワッチョイ 7fc6-JF6f)
16/10/02 04:46:38.35 HmiRIMtE0.net
>>827
それじゃプログラマじゃなくてコーダーじゃん
849:デフォルトの名無しさん (ブーイモ MM57-LGiF)
16/10/02 12:12:47.44 VPKGbKQDM.net
>>824
DataSetで書かれた難解で長いプログラムはわかるのにLinqで書かれたシンプルで短いプログラムはわからないなんて不思議だよね
850:デフォルトの名無しさん (ワッチョイ 6748-uvlU)
16/10/02 12:41:22.23 Y2xoqUni0.net
単純だから容易というわけではない、シンプルとイージーの違いネ
851:デフォルトの名無しさん (ワッチョイ 9730-PJif)
16/10/02 12:47:36.32 O3UtDhl/0.net
先週この板で一番狂ってるのはjavascriptスレって書いたけど
ここ2~3日はふらっとC#とC#相談室の両スレもいい蒸留してるよ
852:デフォルトの名無しさん (アウアウ Sa17-uEQG)
16/10/02 12:55:43.94 XDiD4uyfa.net
というより、他人(あるいは数か月後の自分)視点を意識してコードが書けるかどうかの違いでしょ。
読みづらいコードもそれなりに可読的なんだよ。
書いてる時に書いてる本人にとっては。
使う技術は関係ない。
クエリ式もラムダ式もこういう意識がない奴にかかったら読みづらくてしょうがないものが出来上がる。
853:デフォルトの名無しさん (ワッチョイ 27cb-rzru)
16/10/02 13:45:15.31 rG0Iec2X0.net
>>840
このスレでlinqやらラムダ式やらひたすら質問しまくってるくせに
他人
854:がそれをわからない可能性を欠片も想像できないんだよな 彼はお前のコードは読みにくいって言われたときにそれを受け入れることはできるんだろか?
855:デフォルトの名無しさん (ワッチョイ 4b90-fN+R)
16/10/02 13:47:23.31 qYaftGvG0.net
Dockのようなランチャーを作りたいんですが何を使って作ったらいいのか検討もつきません
何を使えばいいでしょうか?
856:デフォルトの名無しさん (ワッチョイ 475e-RPp1)
16/10/02 14:30:26.31 eLKM9Z4N0.net
>>842
どういうことをしたいのかまとめるのを先にやらないと
C#のForm内で実行する外部アプリのウィンドウを表示させるのは多分出来ない
複数のアプリの起動・終了・アクティブ化くらいならProcessとかで出来る
857:デフォルトの名無しさん (オッペケ Srb7-rzru)
16/10/02 15:56:40.74 y4aGXedMr.net
たまにプログラム書いたことないSEっているよね?
どういう経緯でSEになれるの?
あと仕事になるの?
女でもプログラム書けないSEがいるんだが…
858:デフォルトの名無しさん (ワッチョイ c7d4-js6q)
16/10/02 16:20:08.90 U5FzGUog0.net
日本の一部の会社では営業のことをSEって言ってるんだと思えばいいんだよ
営業だと総合職になるので出世コースを用意させられそうなところ、技術職の名目で用意しないって寸法よ
859:デフォルトの名無しさん (ワッチョイ eb3c-RPp1)
16/10/02 16:41:27.15 laSZMLZ30.net
ふらっと C#,C♯,C#(初心者用)
860:デフォルトの名無しさん (オッペケ Srb7-rzru)
16/10/02 17:02:42.62 y4aGXedMr.net
>>845
そういうことなのか…
可愛い顔してSEっていうからプログラム脳なのかと思ったら違ったから意味不明だったわ
861:デフォルトの名無しさん (ワッチョイ 4349-xqgw)
16/10/02 21:00:35.43 wunJRFms0.net
実際、会社説明会行ったら、進行役の人がSEを紹介する時にシステム営業って呼んでたことがあった。
言われた瞬間のSEの人の顔が面白いことになってたが。
862:デフォルトの名無しさん (ワッチョイ 5b17-fN+R)
16/10/02 21:05:09.85 nHcCPZ2m0.net
別に SE に限らず、外に出る人は全て営業て認識は間違いではないような。そういうのを理解してないのが多すぎるけど。
完全にスレチだが。
863:デフォルトの名無しさん (ワッチョイ 27cb-rzru)
16/10/02 21:37:39.14 rG0Iec2X0.net
>>849
そういうのいいんで営業通してもらえます?
864:デフォルトの名無しさん (ワッチョイ c7d4-js6q)
16/10/02 21:39:31.23 U5FzGUog0.net
外に出ればなんでも営業の側面があるのは確かだろうけど、働く側にしてみれば総合職なのか一般職なのかの違いは重要だろう
一般的にいう営業 = 総合職で雇った新人の取引先へのお披露目を兼ねてるセールスマン
名ばかりSE = 技術職の名前でおだてられている出世なしのセールスマン
865:デフォルトの名無しさん (ワッチョイ eb3c-ETlQ)
16/10/02 21:46:08.51 iDLKJ1fp0.net
マ板でやれって
866:デフォルトの名無しさん (アウアウ Sa17-uEQG)
16/10/02 23:28:14.98 i2p2EOqEa.net
昨日も書いたけどさ、くだらない恨み言を書いてる奴は
本人は会社や業界の問題点を指摘してるつもりかもしれないけど、
他人から見たらうだつの上がらない自分自身を語るに落ちてるだけに見えてるって
いい加減気が付いた方がいいと思うよw
867:デフォルトの名無しさん (ワッチョイ 9730-PJif)
16/10/02 23:29:21.56 O3UtDhl/0.net
配列(int[10000])のメモリを確保する仕事を繰り返してるうちに頭がやられたんだろ
そんな忠告通じるかい
868:デフォルトの名無しさん (ワッチョイ 1f20-RPp1)
16/10/03 00:26:29.74 AAbakoPq0.net
C#を勉強していて
インターフェースなる概念を学んだのですが
メソッドの実装が無い時点で
インターフェースを継承したクラスを作る各人が
好き放題実装を書くことになるんですよね?
実装方法の違う同名メソッドを
みんなで作るのは工数の無駄のように思いますし
収集もつかなくなるような気がするのですが
理解が誤っているでしょうか?
869:デフォルトの名無しさん (ワッチョイ fb3a-RPp1)
16/10/03 00:57:50.23 DydELLCK0.net
>>855
インターフェイスは名前通り、モジュールとモジュール(或いはクラスとクラス)の境界を定義する機能
同じ意味合い(データを取得)の別メソッド(顧客データをDBから取得/顧客データをファイルから取得)みたいなものを作って、
柔軟に差し替えができる。
使う側はインターフェイスだけ意識すれば良い。
使い捨てで柔軟性を必要としないプログラムを作ってるなら、工数の無駄かもね。
870:デフォルトの名無しさん (ワッチョイ fb3a-RPp1)
16/10/03 01:01:47.75 DydELLCK0.net
あれ?釣られた?
871:デフォルトの名無しさん (ブーイモ MM57-LGiF)
16/10/03 01:01:53.62 IYpgz1/LM.net
言語的には確かにインターフェースにはメソッドの呼び出し規約しか存在しない
でも設計書にはこのインターフェースを実装するクラスは何々しなきゃダメよといったより抽象的な規約が書かれているはずだ
インターフェースを使う側は規約のみに依存すれば良い
インターフェースを実装するクラスは規約を満たすことのみを考えれば良い
インターフェースがあれば各クラスの領分をハッキリと分離できるんだ
そして規約を満たしていれさえいればインターフェースの実装方法に制限はないため強い互換性が獲得できる
つまりプログラムにSOLIDな特性が発生して強靭でしなやかな作りになるんだ
872:デフォルトの名無しさん (アウアウ Sa17-uEQG)
16/10/03 01:27:29.89 Pw6tjCZia.net
>>855
うだうだ考えてるより実例を見た方が早いよたぶん。
とりあえずIComparableあたりがBCLでどうやって利用されてるかでも調べたらどうかな
873:デフォルトの名無しさん (ワッチョイ 27cb-rzru)
16/10/03 01:28:57.92 DRFx4tO40.net
まあ、もちろん
インターフェースの提供側と使用側が金銭レベルで分かれてる環境でしか機能しない
自分や隣の席に座ってる奴にインターフェースなんてこさえてやっても時間の無駄だ
874:デフォルトの名無しさん (ワッチョイ 27cb-rzru)
16/10/03 01:40:30.28 DRFx4tO40.net
現実的な話として作成中に
インターフェースの引数じゃたりないんすけど?
ってなったら増やすしかない
じゃ、いつもの関数と変わんねーじゃんなにが柔軟なんだよってのもその通りで提供側と使用側がはっきり分かれていないと
恩恵は全くわからない はず
875:デフォルトの名無しさん (ワッチョイ 1f13-rzru)
16/10/03 02:08:33.30 0EHB0e2M0.net
いやいや、自分一人でコーティングするプロジェクトでもインターフェイスは多用しますって
876:デフォルトの名無しさん (ワッチョイ 477b-eUFH)
16/10/03 02:30:26.02 a2PPRqH/0.net
インターフェースとは、ダックタイピング。
アヒルのように鳴くものは、アヒルとみなす
呼ぶ側は、cry を呼ぶから、
呼ばれる方は、cry を実装しておいて下さい、という決め事
A.cry, B.cry が実装してあれば、A, B はアヒルとみなす。
ここで、A, B は一般的に、継承関係のないクラス
継承関係のないクラスに対して、同じ関数名を強制する
877:デフォルトの名無しさん (ワッチョイ c77b-JF6f)
16/10/03 04:30:45.81 hKZ6axFq0.net
>>863
ところがだ
最近はdynamicを使う
878:デフォルトの名無しさん (ワッチョイ 27cb-rzru)
16/10/03 06:23:38.11 DRFx4tO40.net
>>862
意味ねー
関数の引数なんて必要とあらばいつでも変更すればいいだろ
879:デフォルトの名無しさん (ワッチョイ 4742-RPp1)
16/10/03 06:24:45.16 xbCUt/Ve0.net
多態するだろw
880:デフォルトの名無しさん (ワッチョイ 27cb-rzru)
16/10/03 06:28:14.08 DRFx4tO40.net
>>866
インターフェースの本来の使い方何だろか?
881:デフォルトの名無しさん (ワッチョイ 4742-RPp1)
16/10/03 07:14:57.14 xbCUt/Ve0.net
そうだよ!w
本来というのが何を指すのか知らんが大きなメリットのひとつ
それに多態しなくても依存性を断ち切っておけば
その後のコードの切り回しのしやすさが段違い
一人でも使いまくる
882:デフォルトの名無しさん (ワッチョイ c394-6fmH)
16/10/03 12:09:00.68 sK18CVwJ0.net
自分でインターフェース作らない人でも恩恵には預かってるんじゃないの
IEnumerableとか
883:デフォルトの名無しさん (アウアウ Sa77-7Sel)
16/10/03 12:39:51.14 wG2YSR7Ja.net
道具っつーもんは使い方を覚えて初めて便利だと思えるもんだからなぁ
884:デフォルトの名無しさん (ドコグロ MM2f-rzru)
16/10/03 14:40:25.35 UhPwVzIDM.net
>>868
ひとりで組んでるときにそんなことするの無駄じゃない?
組み方や仕様に迷いがあるからくだらない汎用性付けようとするわけで
885:デフォルトの名無しさん (ワッチョイ 4f90-RPp1)
16/10/03 14:42:17.86 2dHs/sIj0.net
IEのユーザエージェントをいじってスマホにして遊んでました。
その後、サイトにアクセスすると見づらいので元のIE(PC)のユーザエージェントに
戻したいのですが、どうすれば最新のIEのユーザエージェントが分かりますか?
ネットでぐぐってもIEの最新バージョンのユーザエージェントを公開しているところがありません。
886:デフォルトの名無しさん (ワッチョイ 7b19-GPCj)
16/10/03 14:44:44.28 whgMhbbL0.net
スレ違いなのでWindows板のInternet Explorerスレ辺りに行ってきて
どうやってUA変えたかも書くんだぞ
887:デフォルトの名無しさん (スププ Sd8f-rzru)
16/10/03 17:21:41.87 pR9GPAtgd.net
>>867
多態使わないのかよw
if文シコシコ羅列してクラス型ごとに動作変えるのは大変でしょうに
888:デフォルトの名無しさん (ササクッテロ Spb7-LGiF)
16/10/03 17:47:34.85 OopphbkDp.net
>>863
ダックタイピングはアヒルの様に見えアヒルの様に振る舞うならばそれはアヒルであるとみなす考え方で、C#ならばdynamicを使う
一方インターフェースはアヒルの様に振る舞うとしても「アヒル」インターフェースを実装してなければアヒルとは認めないという考え方
どちらも多態性を提供するが混同すべきじゃない
889:デフォルトの名無しさん (アウアウ Sa67-uvlU)
16/10/03 18:21:37.63 BG7c9nZ4a.net
ガンダムでお願いします
890:デフォルトの名無しさん (ワッチョイ eb3c-ETlQ)
16/10/03 18:37:30.20 WmAakHDe0.net
「アイカメラがツインアイ + ブレードアンテナが額から伸びる2本の角型」 なら何でもガンダムと見做すのがダックタイピング
「外観を問わず、(鉄オル準拠で)ガンダムフレームが組み込まれている物」 をガンダムと定義するのがインターフェース
891:デフォルトの名無しさん (ワッチョイ eb3c-ETlQ)
16/10/03 18:37:57.43 WmAakHDe0.net
尚、ブレードアンテナの形状について
∀を持ち出しての反論は受け付けない物とする
892:デフォルトの名無しさん (ワッチョイ c7d4-js6q)
16/10/03 18:38:07.30 debxKRu60.net
オンラインIDEでC#の補完がちゃんとできるやつってないかな?
一度入力したオブジェクト名やメンバ名を保管してくれるのはあっても、ローカルIDEみたいに全て補完してくれないのだらけだ・・・・
893:デフォルトの名無しさん (アウアウ Sa67-uvlU)
16/10/03 18:58:31.57 BG7c9nZ4a.net
C#諦めました…
894:デフォルトの名無しさん (ワッチョイ 27cb-rzru)
16/10/03 18:59:14.80 0mzqHUL00.net
>>874
いや、逆に分岐条件を明示しないことで何やってるのか組んだ奴にしかわからんほうが嫌なので
895:デフォルトの名無しさん (ワッチョイ eb3c-ETlQ)
16/10/03 19:05:52.04 WmAakHDe0.net
ええ……
896:デフォルトの名無しさん (ワッチョイ fb7b-S4Np)
16/10/03 19:35:51.50 DGeMMOSU0.net
そんな現場やだ
897:デフォルトの名無しさん (オッペケ Srb7-rzru)
16/10/03 19:44:54.54 2NCq6u8sr.net
動けばいいんだよ
898:デフォルトの名無しさん (ササクッテロ Spb7-LGiF)
16/10/03 19:47:20.06 OopphbkDp.net
>>881
うわぁ…
899:デフォルトの名無しさん (ワッチョイ 5b5b-9qEq)
16/10/03 19:57:52.60 HeYPjqdu0.net
新人でも自分で理解できる可読性を優先させるのはありっちゃあり
900:デフォルトの名無しさん (ブーイモ MM57-LGiF)
16/10/03 20:11:25.46 SRnyVZlvM.net
>>881
君の釣り針はいつもデカいな
901:デフォルトの名無しさん (ワッチョイ fb42-RPp1)
16/10/03 20:24:02.26 E6Z8Y8f50.net
>>871
まあそのとおりなんだが
いっときInterface病にかかって全部のクラスにIFつけてた
今見ると無様
でも迷ってても実装が進むし柔軟性はあったぞ!
902:デフォルトの名無しさん (ワッチョイ 27cb-rzru)
16/10/03 21:14:05.48 o5lyUn4M0.net
>>887
正論過ぎて反論できないだろ?
903:デフォルトの名無しさん (ブーイモ MM8f-LGiF)
16/10/03 23:35:40.82 lhwmhlCDM.net
テスタビリティ考えると1人作業でもアプリケーションコードではインターフェース必須なんだよね
インターフェースが必要ないのはPOCOで依存がないドメインオブジェクトとかFCLのようなコアライブラリだけ
904:デフォルトの名無しさん (ワッチョイ 27cb-rzru)
16/10/04 00:33:22.83 /FCIPvE20.net
>>890
それやるのに実装まで影響がでるってとこに納得行かない
方針が間違ってるんじゃねーの?
ぶっちゃけ俺も誰がどんな場面想定してこんなゴミ作ったのか知らんけど
905:デフォルトの名無しさん (スププ Sd8f-rzru)
16/10/04 01:02:29.71 UQnVBbe6d.net
インターフェイスがゴミとか言ってんのお前だけだぞ
>>891
906:デフォルトの名無しさん (ワッチョイ 4742-RPp1)
16/10/04 06:38:56.74 hihlaoI70.net
>>891
文章のパーサを切り替えたり
AIのコアのアルゴリズムを入れ替えたり
ゲームのキャラを一括で扱ったり
DIしたり
もうないと生きていけないレベルで必要
907:デフォルトの名無しさん (ラクッペ MM37-rzru)
16/10/04 07:24:11.99 hVjLfR/3M.net
インターフェイスの使いどころを
質問した者ですが
インターフェイスは継承した
クラスで内容の違う同じ名称の
メソッドを作る
つまりオーバーライドのように
使う物と考えて良いのでしょうか
908:デフォルトの名無しさん (ワッチョイ 27cb-rzru)
16/10/04 07:28:36.70 /FCIPvE20.net
>>893
わざわざこんな仕組みでやる必要ねーし
っていうかそんな仕様あったの?
どうせいつもの妄想だろ?
909:デフォルトの名無しさん (ワッチョイ 4742-RPp1)
16/10/04 07:42:39.26 hihlaoI70.net
え…仕様って…
910:デフォルトの名無しさん (アウアウ Sa77-7Sel)
16/10/04 07:48:20.97 tSzkB+1za.net
兄より優れた弟など存在しねぇでお馴染みのジャギさんきてんね
911:デフォルトの名無しさん (ドコグロ MM2f-rzru)
16/10/04 07:55:32.96 rdpgIcW9M.net
>>896
だから、実際そういう需要(仕様)があったうえでの話をしてるの?
912:デフォルトの名無しさん (スッップ Sd8f-rzru)
16/10/04 08:10:36.41 8gRIuvr1d.net
>>898
インターフェイス便利だよ。
ReaderとWriterだけでも。
中身気にせずパイプ的な感じで多段の処理書ける。
出口がコンソールでもファイルでも気にせずwrite出来る
913:デフォルトの名無しさん (アウアウ Saff-uEQG)
16/10/04 09:52:54.27 Jehw2I/Ta.net
>>894
筋が悪いお方
だから、うだうだ考える前に実例を見てみた?
914:デフォルトの名無しさん (オッペケ Srb7-rzru)
16/10/04 10:31:36.54 mvK6O6xLr.net
だから!
動けばいいんだよ
915:デフォルトの名無しさん (アウアウ Sa17-RPp1)
16/10/04 10:32:30.59 2uMugtE2a.net
みんなUIフォントを何にしてる?
メイリオがいいよね?メイリオがいいよね?
916:デフォルトの名無しさん (アウアウ Sa77-7Sel)
16/10/04 12:24:47.15 BdiZqdxfa.net
メイリオがいいけど、XPで崩れるのが嫌だなぁ
917:デフォルトの名無しさん (ワッチョイ fb3a-RPp1)
16/10/04 13:15:35.75 Ii0olsrw0.net
>>894
Sortに対するIComparerの役割考えてみ
interface は class に『実装する』ものであって、
『継承する』ものではないよ
918:デフォルトの名無しさん (ワッチョイ 1717-RPp1)
16/10/04 17:28:27.23 15dXMmmi0.net
Yu Gothic UI...
919:デフォルトの名無しさん (ブーイモ MM8f-LGiF)
16/10/04 18:15:29.26 5GHWHTroM.net
なんとなくわかったぞ
インターフェース使わない人って関数型プログラミングしてるってことか
920:デフォルトの名無しさん (ラクッペ MM37-rzru)
16/10/04 19:35:41.31 PfynBLRqM.net
>>906
自分は勉強で小さいプログラ厶しか
組んでいないので
一つのクラスにメソッドを複数
作って呼んでるだけです
ゲッターセッターも
作り方しか知りません
インターフェイスや抽象クラスなど
使いどころに困っています
921:デフォルトの名無しさん (アウアウ Sa3f-RPp1)
16/10/04 19:50:12.09 6z/A7PWoa.net
インターフェイスはオブジェクトが他のオブジェクトを使う場合に必要となるものなので
自作オブジェクトの中で使う必要がない場合が多い
初心者は.netフレームワークを使う中で要求されて実装することがあるぐらい
922:デフォルトの名無しさん (スップ Sd0f-rzru)
16/10/04 20:20:56.44 kGjg20Jhd.net
最近Xamarinでプラットフォームごとに実装分ける時はよく使うな
923:デフォルトの名無しさん (ワッチョイ 4742-RPp1)
16/10/05 00:22:15.46 75mjlcKq0.net
かたっぱしからインターフェース付けて
メイン関数でレゴブロックみたいにくっつけるの楽しい
インターフェース使わないと
自分でこさえた部品の再利用とか全然できなくないか?
924:デフォルトの名無しさん (スププ Sd8f-rzru)
16/10/05 01:16:22.12 Vyx32qgzd.net
必要になったらあとでインターフェイス追加する派
925:デフォルトの名無しさん (ワッチョイ 27cb-rzru)
16/10/05 01:25:15.80 IoO2jnrO0.net
>>910
設計した時点で決まってるだろ普通
926:デフォルトの名無しさん (ブーイモ MM57-LGiF)
16/10/05 01:31:08.90 1NkBv1zKM.net
その物次第としか言いようがないな
StringBuilderみたいなそれだけで完結しててインフラへの依存もないなら抽象化は別にいらない
インフラ依存のクラスなら注入のために抽象化して欲しい
IEnumerableみたいにバリエーションが豊富で多態のメリットが大きければ抽象化したい
フレームワークぐらいの規模ならカスタムクラスのための抽象モデルを用意すべき
927:デフォルトの名無しさん (ワッチョイ 27cb-rzru)
16/10/05 07:00:17.83 IoO2jnrO0.net
>>913
そんな開発があってたまるか
設計した時点で決まってるだろ
928:デフォルトの名無しさん (ワッチョイ 9730-PJif)
16/10/05 07:19:45.11 EDqQ344L0.net
お兄さん宇宙クジラでも釣るのかぃ
929:デフォルトの名無しさん (ブーイモ MM57-LGiF)
16/10/05 07:26:43.73 v2hJAbmaM.net
>>914
どんな開発のことを言ってるの?
君が言うようにインターフェースは設計時に概ね決まってるよ
930:デフォルトの名無しさん (ワッチョイ 9bdc-dvmP)
16/10/05 07:30:41.56 R0+6OfJG0.net
設計時に決まってるからこそインターフェースが使えるんだよ
インフラを抽象化(というかプラガブルに)するのは基本的に単体テストのため
実際の運用で差し替えるというのは、ミドルウェアの類なら無くはないけどアプリでは現実にはまず無い
931:デフォルトの名無しさん (ワッチョイ 4742-RPp1)
16/10/05 07:41:19.00 4VDP98LD0.net
個人のちっこいマクロ程度のプログラムでも結構使うぞ
つけときゃいつでも内部の処理を他を修正することなく差し替えられる
行き当たりばったりのときこそ必要だろ
932:デフォルトの名無しさん (ワッチョイ 9bdc-rzru)
16/10/05 08:16:36.43 R0+6OfJG0.net
>>918
汎用的なコンポーネントを作ろうとするのは典型的なアンチパターンだ
ちゃんと設計しないんならベタに実装して後で必要に応じてリファクタリングする方が効率がいい
・インターフェイスを定義してみたものの、後で変更が入ってその度に影響範囲の大きい修正が発生した
・インターフェイスを定義してみたものの、後で実装が増えることは無かった
・インターフェイスを定義してみたものの、むしろ差し替えたいのはプラガブルにしてなかった箇所だった
・インターフェイスを定義してみたものの利用側の要件に合わず、辻褄合わせの汚い処理や重複が発生した
心当たりはないかな?
933:デフォルトの名無しさん (スッップ Sd8f-rzru)
16/10/05 12:08:30.16 djABpgcvd.net
俺は既に継承関係が決まってて継承使えないときだけ使ってるな
IEnumerableみたいなイケてるインタフェース設計は超人に任せる
934:デフォルトの名無しさん (アウアウ Saff-uEQG)
16/10/05 12:45:41.97 X1NPzznla.net
もはや元の質問そっちのけのやりとりだな
インターフェイスの設計で俺が時々悩むのは、最大公約数的な物がいいのか
最小公倍数的な物がいいのかだな。
基本的には最大公約数が正解だと思うんだが、でもBCLの中にも
平気でNotImplementedException投げるメソッドがあるからなあ。
935:デフォルトの名無しさん (ワッチョイ 1f13-rzru)
16/10/05 13:28:11.90 +Mzxp0lF0.net
絶対インターフェイス
936:使わないとか言ってんのはCOBOLかVB6から入ったプログラマーだな
937:デフォルトの名無しさん (ワッチョイ 5b5b-9qEq)
16/10/05 18:55:50.81 +d6vVLNb0.net
>>903
>Windows XP 向け ClearType 対応メイリオ
URLリンク(www.microsoft.com)
938:デフォルトの名無しさん (ブーイモ MM57-LGiF)
16/10/05 19:32:14.92 Gemt2Ly0M.net
>>919
そういう苦い思い出があるならそれって君が残念な子ってだけなんじゃ…
道具のせいにする人って結構いるよね
939:デフォルトの名無しさん (ワッチョイ 4f90-RPp1)
16/10/05 19:33:55.37 dDDwv4Tw0.net
ランサーズに仕事だしたら糞グラマばかりでうんざり。
940:デフォルトの名無しさん (ワッチョイ 4b35-PJif)
16/10/05 20:56:39.52 TApQaAYe0.net
ランサーズの思い出なんて
「遅れてるくせに仕事中にランサーズ見てんじゃねえよお前!!!!」って督戦先の会社でキレた思い出しかない
その程度の意識の奴しかいないと思ってる
941:デフォルトの名無しさん (ワッチョイ 4742-RPp1)
16/10/05 22:00:38.22 tHsuIkay0.net
俺にぴったりだ!!www
942:デフォルトの名無しさん (ワッチョイ a3e2-f+x4)
16/10/05 22:30:06.28 OwO3ociO0.net
int k = 100;
int a = Enumerable.Range(0, 10).Where(x => x % 2 == 1).Select(x => k = k + x).Sum();
label1.Text = string.Format("k={0} a={1}", k, a);
aが555なのはわかりますがなんでkは125なんですか?なんで100 + 1+3+5+7+9
みたいな計算になるんですか?
943:デフォルトの名無しさん (ワッチョイ 4742-RPp1)
16/10/05 22:38:04.32 tHsuIkay0.net
KはSumで合計されてないよ
Selectが(1,3,5,7,9)で走って
k = k + 1 = 101
k = k + 3 = 104
k = k + 5 = 109
k = k + 7 = 116
k = k + 9 = 125
944:デフォルトの名無しさん (ワッチョイ a3e2-f+x4)
16/10/05 22:46:08.43 OwO3ociO0.net
>>929
わかりましたありがとうございます
945:デフォルトの名無しさん (ワッチョイ 9e90-lsIp)
16/10/06 00:04:55.93 Fc4cuwun0.net
ランサーズでかなりレベルの高いプログラマがいたよ。
仕事は出来るがあまりにも常識が無いヤツだった。
946:デフォルトの名無しさん (アウアウ Sa43-TInN)
16/10/06 01:35:54.20 x4N6nEfma.net
HttpClient.GetAsyncを途中で強制的にキャンセルする方法はないでしょうか。
以下のコードでGetHtmlAsyncメソッドででかめのHtmlファイル(10MBくらい)を取得してみたのですが
client.GetAsyncが待機中にキャンセルボタンをクリックして_cts.Cancel()を呼んでも
即時キャンセルされません。
結局ファイルを完全にダウンロードするまで止まってくれないようで、困っています
private CancellationTokenSource _cts;
private async Task GetHtml(string url)
{
_cts = new CancellationTokenSource();
using (HttpClient client = new HttpClient())
{
try
{
HttpResponseMessage res = await client.GetAsync(url, _cts.Token);
string html = await res.Content.ReadAsStringAsync();
}
catch (OperationCanceledException e)
{
Debug.WriteLine(
947:デフォルトの名無しさん (アウアウ Sa43-TInN)
16/10/06 01:37:33.35 x4N6nEfma.net
catch (OperationCanceledException e)
{
Debug.WriteLine("cancel");
}
catch (Exception e)
{
Debug.WriteLine("例外発生:{0}", e);
}
}
}
public async Task GetHtmlAsync(string url)
{
await Task.Run(() => GetHtml(url));
}
948:デフォルトの名無しさん (ワッチョイ a685-TInN)
16/10/06 01:54:05.56 Mzv6j6zu0.net
HttpResponseMessage res = await client.GetAsync(url, _cts.Token);
string html = await res.Content.ReadAsStringAsync();
clientのGetAsyncはレスポンスヘッダを受信したらreturnするんじゃねぇの?
レスポンスボディは読みこむ前に。
だから、実際、君がキャンセルしてるのはres.Content.ReadAsStringAsync()の最中で
すでに手遅れ。
949:デフォルトの名無しさん (ワッチョイ a685-TInN)
16/10/06 01:57:11.53 Mzv6j6zu0.net
ストリームで読み込んで自分でキャンセルするしかない。
var stream = await res.Content.ReadAsStreamAsync();
while (var bytesRead = await stream.ReadAsync() != -1)
{
_cts.Token.ThrowIfCancellationRequested()
}
950:デフォルトの名無しさん (ワッチョイ a685-TInN)
16/10/06 01:58:21.32 Mzv6j6zu0.net
await client.GetAsync(url, _cts.Token);
のキャンセルはサーバーがなかなかレスポンス自体を返さないような時の
キャンセルでしょ。タイムアウトする前にキャンセルするとか。
951:デフォルトの名無しさん (ワッチョイ f4cb-xaNP)
16/10/06 02:08:33.27 8JIhT6+t0.net
>>924
そもそも要求されたわけでもないのに作るインターフェースって全部変になる
それお前が組みやすい機能しか提供してねーだろ的な
952:デフォルトの名無しさん (アウアウ Sa43-Nuoi)
16/10/06 02:09:29.62 x4N6nEfma.net
レスありがとうございます。
それが、
HttpResponseMessage res = await client.GetAsync(url, _cts.Token);
で本体も取得しているような感じなんです。
ブレークポイントを貼ってみましたが、GetAsyncで10秒くらい止まった後に
string html = await res.Content.ReadAsStringAsync();に移ります。
(ReadAsStringAsyncは一瞬で終わります。)
そしてGetAsync中のCancelが効きません…
953:デフォルトの名無しさん (ワッチョイ d9c9-gCaQ)
16/10/06 11:00:29.01 bdU4oXz50.net
ツールバーのような(MS-IMEのような)フォームを作りたいのですが
どのようにしたらいいのでしょうか。
メインのフォームがあって、最小化するとツールバー化するようにしたいのです。
どなたかよろしくお願いします。
954:デフォルトの名無しさん (ワッチョイ fc5e-lsIp)
16/10/06 18:39:28.71 sSah5I1h0.net
>>939
SizeChangedのイベントで見てFormWindowState.Minimizedだったら望む大きさにフォームのサイズを設定してFormWindowState.Normalにする
戻す時にどういうUIにするかの方がメンドクサイ
955:デフォルトの名無しさん (ワッチョイ c62a-xaNP)
16/10/06 22:36:48.00 ZQZztg7H0.net
>>938
ヘッダだけとるのはオプション指定しないと。
956:デフォルトの名無しさん (ワッチョイ 98d4-lsIp)
16/10/07 16:01:09.05 egEWpdwg0.net
VBをC#に移植してるんですけど
下の拡張メソッドは、C#だとどうやって書きますか
<System.Runtime.CompilerServices.Extension()>
Public Function AppendLine(ByRef text As String, ByVal appendtext As String) As String
text &= appendtext & Microsoft.VisualBasic.vbCrLf
Return text
End Function
Stringを拡張してあって
Dim A As String = ""
A.AppendLine("ABC")
とかやると、AにABCが改行付きで入っていく拡張メソッドらしいのですが。
public static string AppendLine(ref this string value , string text)
ってやろうとしたら叱られてしまいました。
957:デフォルトの名無しさん (ワッチョイ 1030-VEeh)
16/10/07 16:16:11.06 /rv9SwD50.net
これ嫁
URLリンク(msdn.microsoft.com)
refが余計
958:デフォルトの名無しさん (ワッチョイ 6f85-TInN)
16/10/07 16:45:30.93 33b7S5w40.net
それはわかってんじゃねぇの・・
VBはrefつけれる?のかしらんが付いてるからC#ではどうやって同じ事するのかと。
959:デフォルトの名無しさん (ワッチョイ 98d4-lsIp)
16/10/07 16:58:55.89 egEWpdwg0.net
public static string AppendLine(this string value , string text)
{
value += text + '\n';
return value;
}
だと
String A = "";
A.AppendLine("ABC");
しても、Aは""のままなんだ。
参照渡しになってないせいかと思ったんだけど。
960:デフォルトの名無しさん (ワッチョイ d919-hgF0)
16/10/07 17:13:45.03 Bnk5ZDGO0.net
C#だと同等のことはできないね
thisとrefは同居できない
諦めて呼び出し元側で代入するしか
// どうでもいい
961:けどvbCrLfと等価なのは\nじゃなくて\r\nだぞ、と
962:デフォルトの名無しさん (ワッチョイ f99f-JwEk)
16/10/07 17:16:48.78 ISMNMdE40.net
AppendLineしたいならStringBuilder使えばいいんでね?
963:デフォルトの名無しさん (アウアウ Sa76-juU9)
16/10/07 18:53:42.82 CEJTQ2Toa.net
むしろVBって>>942みたいなことができるのかw
でも出来てもやりたくないねw
964:デフォルトの名無しさん (ワッチョイ d9c9-gCaQ)
16/10/07 18:56:12.96 1OPRlje/0.net
>>940
レスありがとうございます。
if (FormWindowState.Minimized == true)とかだとダメですね。
FormWindowState.Minimizedの見方から調べてみます。超初心者ですみません。
通常フォームとツールバー型のフォームの2つを使って切り替えようかと考えています。
ボタンで切り替えだとうまくいくんですが、最小化ボタンだとできてません。
なかなか難しいです。ありがとうございました。
965:デフォルトの名無しさん (ワッチョイ fc5e-lsIp)
16/10/07 19:27:53.16 92EIQdHi0.net
>>949
(this.WindowState == FormWindowState.Minimized) な。そのままググればすぐ出てくるはずだが
URLリンク(dobon.net)
URLリンク(dobon.net)
実際最小化ボタンを非表示にして専用ボタン作った方が実装は楽だと思うよ
UIとか具体的な実装方法とかは個人の好みの範疇だけど
966:デフォルトの名無しさん (オッペケ Sr4d-xaNP)
16/10/07 19:29:15.46 wvXFsDA2r.net
なんか急にプログラミングができるようになった
967:デフォルトの名無しさん (ワッチョイ ab49-LThL)
16/10/07 22:59:55.08 SqK/35OL0.net
>>946
Environment.NewLine使うべきだな。
968:デフォルトの名無しさん (ワッチョイ c37b-jLml)
16/10/07 23:13:59.50 2s8k82fa0.net
HTTPのヘッダ直書きしてるならEnvironment.NewLineじゃまずいしケースバイケース
969:デフォルトの名無しさん (アウアウ Sa76-juU9)
16/10/07 23:18:43.10 CEJTQ2Toa.net
>>953
話の文脈にそったこと言わないとダメよw
970:デフォルトの名無しさん (ワッチョイ 353c-lsIp)
16/10/08 00:28:06.65 hitB9rm00.net
初めてC#やりはじめたんですが、
while(1) がエラーになるくさいです。boolはboolとして独立してしか使えないみたいな抽象化になってるのでしょうか?
while(1==1) と書けば動作しましたが、きもいと思ったので良い書き方教えてください。
971:デフォルトの名無しさん (アウアウ Sa76-juU9)
16/10/08 00:33:59.09 O/OBbGYaa.net
>>955
ある程度自分で勉強した上でわからないところを質問するのでないと
10年掛かっても終わらないよw
URLリンク(msdn.microsoft.com)
972:デフォルトの名無しさん (ワッチョイ 05a1-pu+C)
16/10/08 00:34:32.56 1Wan9RxM0.net
むしろCの方が特殊
while (true)
973:デフォルトの名無しさん (ワッチョイ 353c-lsIp)
16/10/08 01:00:48.75 hitB9rm00.net
>>956-957
そうですね
ありがとう
974:デフォルトの名無しさん (ワッチョイ f97b-lsIp)
16/10/08 01:27:55.54 KfBpvv2w0.net
新しい言語を覚える場合、他力本願なやりかたが許されるなら、
知ってる言語で作って、それを誰かに翻訳してもらったやつを一つづつ検索して覚えるのが早い。
問題は誰もそんなことしてくれない事だが。
975:デフォルトの名無しさん (ワッチョイ 6b3c-lsIp)
16/10/08 01:28:56.62 CJmbrFm/0.net
まぁ地道に頑張ります
976:デフォルトの名無しさん (ワッチョイ c3c0-lsIp)
16/10/08 01:48:19.29 mt2d0mm+0.net
今時の言語で数値で真偽判定する奴なんてあるのかよ
977:デフォルトの名無しさん (スフッ Sda8-xaNP)
16/10/08 02:02:00.46 eN8IA8WYd.net
>>952
場合による
978:デフォルトの名無しさん (ワッチョイ 1220-lsIp)
16/10/08 08:45:19.03 vL+1Z5yj0.net
object o = new { test = 1 };
というコードから
testの値を取得したいのですが
どのようにすれば良いのでしょうか?
object o = new { test = 1 };
int a = (int)o.test;
とか悪あがきしてみたのですが
無理でした 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)
979:デフォルトの名無しさん (ワッチョイ 1030-VEeh)
16/10/08 09:51:06.96 i5kDCKwM0.net
全然確認せずに書くけどobjectじゃなくvarで受ければ取れません?
あとdynamicに代入するとか
980:デフォルトの名無しさん (ワッチョイ 1220-lsIp)
16/10/08 10:10:22.36 vL+1Z5yj0.net
>>964
var o = new { test = 1 };
int a = o.test;
で取れました。ありがとうございます
しかし、varとかダックタイピング?で
便利とは思いますが、本質を知らないので
いずれ理解不能なバグに陥りそうで
ちょっと不安に思いました
981:デフォルトの名無しさん (ワッチョイ 1030-VEeh)
16/10/08 10:21:10.63 i5kDCKwM0.net
なら使わなければいいさ
君の問題が解決できなくなっても俺には関係ないしー
982:デフォルトの名無しさん (ブーイモ MM01-pu+C)
16/10/08 10:26:33.50 18NoRfw9M.net
varはローカル変数でしか使えないからトラブルのもとになりようがない
983:デフォルトの名無しさん (オッペケ Sr4d-/Z78)
16/10/08 10:51:20.85 3B0HEkdwr.net
クラス名が無い、見えない
と考えるのが簡明。
984:デフォルトの名無しさん (ワッチョイ 1220-lsIp)
16/10/08 11:05:51.73 vL+1Z5yj0.net
>>966
自分の理解力に対する不安なので、その通りです
便利過ぎる機能の挙動をろくに知らずに頼ると
のちのち危ないかなという自戒の意味で
985:デフォルトの名無しさん (スフッ Sda8-xaNP)
16/10/08 11:09:44.82 1QC8bxppd.net
Visual Studioならvarの上にマウスカーソル持ってきたら実際の型が表示されるでしょ
986:デフォルトの名無しさん (ワッチョイ f4ce-yd9a)
16/10/08 11:27:47.42 fiaM9vLl0.net
pertialって便利だな
C++時代はまさにこれが欲しかったんだ
987:デフォルトの名無しさん (アウアウ Sac5-Nuoi)
16/10/08 11:36:24.37 yHD53V8fa.net
この前のpertial論争が始まるぞw
988:デフォルトの名無しさん (ササクッテロ Sp4d-pu+C)
16/10/08 11:37:00.58 ayps/0ahp.net
>>965
コード的にそのオブジェクトに意味があるなら面倒でもクラスか構造体をちゃんと名前を付けて宣言しとけ
意味がない単なる一時的な入れ物なのならそれが必要のないコードを書け
型が明らかじゃないからとりあえずobjectで受けるなど型の把握が困難なコードは禁止
型を把握でき明確な意図がある場合でも後日見た時にその意図がわかるとは限らないから必ずコメント書いとけ
varは型推論される型を自分ではっきり把握できていて右辺を見たとき誰が見ても型が明らかな場合はガンガン使って良し
コードを遡って探さないと型がわからないようならきちんと型指定して変数宣言しろ
dynamicはWebAPIなどから定義の曖昧なJSONを受けるなどの場合のみ使用可
静的型付け言語に不慣れならこれぐらいの縛りをかけて型を把握する習慣をつけるといいと思うよ
989:デフォルトの名無しさん (ワッチョイ 1030-VEeh)
16/10/08 11:40:55.64 i5kDCKwM0.net
3行以上はキチガイって本当なんだよなあ
990:デフォルトの名無しさん (ワッチョイ ab49-LThL)
16/10/08 11:45:34.34 CGodlZX10.net
>>971
pertialって、何ぞ。スペルミス?
991:デフォルトの名無しさん (ワッチョイ ab49-LThL)
16/10/08 11:57:10.60 CGodlZX10.net
>>965
深く考えずにobject使ってる方が余程問題。
992:デフォルトの名無しさん (ブーイモ MMa8-pu+C)
16/10/08 12:07:12.25 160QOg/GM.net
>>973
ローカル変数の型はコンパイラが認識してればいいよ
ローカル変数の型を明示化しないと開発に支障が出るならオブジェクト志向がうまくできてないんだと思う
それかいちいち見返さないと把握できなくなるくらい長いメソッドや大量の変数を書いているとかね
993:デフォルトの名無しさん (ワッチョイ f4ce-yd9a)
16/10/08 12:10:40.49 fiaM9vLl0.net
partialか
googleさんが指摘してくれたのスルーしてしまった
仮組みだけしたのから何も考えずに着せ替え人形遊びができる辺り評価してる
994:デフォルトの名無しさん (アウアウ Sa76-juU9)
16/10/08 12:27:25.04 2PQahk1ea.net
partの派生語だって普通わかるでしょw
partって言葉も知らなかったのかなw
995:デフォルトの名無しさん (ワッチョイ 21dc-xaNP)
16/10/08 12:31:13.54 vrZNWqvT0.net
C++はメソッドの実装をどこにでも書けるからpartialなんかなくても遥かに柔軟に分割できるでしょ
最悪includeもあるから何でもアリ
C++分かってないだけじゃないのか
996:デフォルトの名無しさん (ワッチョイ 1213-xaNP)
16/10/08 12:39:19.14 UAR+qVnl0.net
>>980
私もそう思いました
997:デフォルトの名無しさん (ワッチョイ 1220-lsIp)
16/10/08 16:33:41.11 vL+1Z5yj0.net
>>976
利用したいメソッドの引数がobjectなので
この辺はやむなくなんです
998:デフォルトの名無しさん (ワッチョイ f4ce-yd9a)
16/10/08 17:20:37.33 fiaM9vLl0.net
パーシャルでまず思い浮かぶのはパーシャル冷凍だし
それとパートは全くの別物だし日本語英語舐めたらあかんよ?
999:デフォルトの名無しさん (ワッチョイ f4ce-yd9a)
16/10/08 17:21:55.16 fiaM9vLl0.net
>>980
C++は実装はどこでも書けるけど、クラス宣言は一緒の場所にかかなあかんでしょ
それよ
1000:デフォルトの名無しさん (ワッチョイ f4ce-yd9a)
16/10/08 17:26:30.91 fiaM9vLl0.net
C++で同じように着せ替え人形やろうとしたら完成した物に手を加えるか別の手段になる
C#のpartialなら色んな着せ替え遊びを元を汚さずできるし、そのまま部分納品できる
1001:デフォルトの名無しさん (ワッチョイ 353c-xaNP)
16/10/08 17:27:27.19 4V/qdcpF0.net
>>983
ばーか
1002:デフォルトの名無しさん (ワッチョイ 353c-yd9a)
16/10/08 18:35:39.75 vKGCFZZ10.net
>>981
次スレ
1003:デフォルトの名無しさん (ワッチョイ e14a-UMne)
16/10/08 19:59:41.17 GFZJqN+P0.net
webBrowserで表示したHP内ソースの下記のURLを自動でクリックしたいのですがどのように書けばよいでしょうか
<iframe src="URL"></iframe>
1004:デフォルトの名無しさん (ワッチョイ c37b-jLml)
16/10/08 20:03:28.06 hcv7mE9D0.net
URLもiframeもクリックするものでは無い
遷移したいならそのiframeをDOMでたどってsrc属性取ってきてNavigateすればいいんじゃね?
1005:デフォルトの名無しさん (ワッチョイ 5cfd-n03B)
16/10/08 20:31:03.30 5ZaOsIWw0.net
広告を自動でクリックしたいのか
1006:デフォルトの名無しさん (アウアウ Sa76-juU9)
16/10/08 21:11:14.28 sdir2poUa.net
>>983
よっ発展途上人
1007:デフォルトの名無しさん (ワッチョイ f97b-lsIp)
16/10/08 21:26:38.44 KfBpvv2w0.net
今からスレ立ててきてやるが、
テンプレの書き換えとか、Partのミスとか直す点はあるか?
30秒待つ
1008:デフォルトの名無しさん (ワッチョイ e14a-UMne)
16/10/08 21:28:25.28 GFZJqN+P0.net
>>989
ありがとうございます。
<a href="URL" target="_blank">url</a>
なら
webBrowser1.Document.Links[0].InvokeMember("Click");
などでクリックできますが、難しいようですね
1009:デフォルトの名無しさん (ワッチョイ f97b-lsIp)
16/10/08 21:33:56.26 KfBpvv2w0.net
スレリンク(tech板)
1010:デフォルトの名無しさん (ワッチョイ fc5e-lsIp)
16/10/08 21:46:09.45 2+oa719n0.net
>>994
スレたて乙
1011:デフォルトの名無しさん (ワッチョイ c63c-xaNP)
16/10/08 22:01:26.17 T/Z20i9z0.net
>>983
> それとパートは全くの別物だし
ちょっとググれば恥をかかなくて済むのに w
partial
⇒ part「部分」+ -al《名詞・形容詞をつくる》
URLリンク(gogengo.me)
1012:デフォルトの名無しさん (ワッチョイ c63c-xaNP)
16/10/08 22:41:35.53 T/Z20i9z0.net
>>963
もう解決してるみたいだけど
> object o = new { test = 1 };
> int a = (int)o.test;
なら
var a = o.GetType().GetProperty("test").GetValue(o);
でとれる
1013:デフォルトの名無しさん (ワッチョイ f97b-lsIp)
16/10/09 04:08:54.25 nhxFjm5j0.net
うめとこか
1014:デフォルトの名無しさん (ワッチョイ fc5e-lsIp)
16/10/09 09:02:00.80 G17UML8q0.net
次スレも少し書き込んでくれ
こっちは埋めとく
1015:デフォルトの名無しさん (ワッチョイ fc5e-lsIp)
16/10/09 09:05:06.47 G17UML8q0.net
埋め
1016:デフォルトの名無しさん (ワッチョイ fc5e-lsIp)
16/10/09 09:06:05.91 G17UML8q0.net
次スレはこちら
ふらっと C#,C♯,C#(初心者用) Part125
スレリンク(tech板)
1017:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています