1 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 21:30:48.55 ID:7U+HR4FY.net] 「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。 他のスレッドでは書き込めないような低レベルな質問、 質問者自身なんだか意味がよく分からない質問、 ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。 内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。 なお、テンプレが読めない回答者は邪魔なので後述のC#相談室に移動して下さい。 C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください >>980 を踏んだ人は新スレを建てて下さい。 >>980 が無理な場合、話し合って新スレを建てる人を決めて下さい。 ■前スレ ふらっと C#,C♯,C#(初心者用) Part133 mevius.5ch.net/test/read.cgi/tech/1510056685/ ■関連スレ C#, C♯, C#相談室 Part95 mevius.5ch.net/test/read.cgi/tech/1508180530/ ■コードを貼る場合は↓を使いましょう。 ideone.com/ https://dotnetfiddle.net/ ■情報源https://msdn.microsoft.com/ja-jp/library/gg145045.aspx https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/index https://msdn.microsoft.com/en-us/library/gg145045.aspx referencesource.microsoft.com/ - VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
809 名前:デフォルトの名無しさん [2017/12/19(火) 22:29:22.36 ID:f0lLnGqp.net] MVPクラスの人は居ますか?
810 名前:デフォルトの名無しさん mailto:sage [2017/12/19(火) 22:30:42.82 ID:MJol/7NU.net] >>792 >>779 をエントリーしといた
811 名前:デフォルトの名無しさん mailto:sage [2017/12/19(火) 22:30:56.03 ID:XIiNWcV9.net] >>791 余りにも寒いコードを見たものでなw
812 名前:デフォルトの名無しさん mailto:sage [2017/12/19(火) 22:32:05.29 ID:7vxZYYFe.net] VIP患者なら大勢いるねw
813 名前:デフォルトの名無しさん mailto:sage [2017/12/19(火) 22:35:08.57 ID:ySpyuYdG.net] >>794 誰と勘違いしているのでしょう・・・ IDはちゃんとチェックしましょうね^^
814 名前:デフォルトの名無しさん mailto:sage [2017/12/19(火) 22:38:19.96 ID:XIiNWcV9.net] >>796 >>779 の同類だろwww
815 名前:デフォルトの名無しさん mailto:sage [2017/12/19(火) 22:41:32.93 ID:ySpyuYdG.net] >>797 おやおや・・・ とても都合の良い解釈ですね^^ 右も左も分からない初心者に「センス無し、問題外」なんて冷たい言葉をかけるのはやめましょうね・・・
816 名前:デフォルトの名無しさん mailto:sage [2017/12/19(火) 22:50:03.39 ID:z/JS3u8x.net] まあ、自分が駆け出しの頃に上司にそう言われたことの腹いせにここで鬱憤晴らしてるんだろうなぁ....
817 名前:デフォルトの名無しさん mailto:sage [2017/12/19(火) 23:01:26.33 ID:MJol/7NU.net] 別にどう組んでも動くし 正解はないのかもな ただ、この言語で表現できる中規模のまとまりをそんなプロパティレベルのもんに使われると粒度の把握がし難いなと 結局設計の良し悪しなんてソイツの気分だからね
818 名前:デフォルトの名無しさん mailto:sage [2017/12/19(火) 23:48:04.54 ID:QDUgEa5j.net] 例が例だから粒度的におかしいけどこんなこともできますよ的な… Addで費用つっこんで使える Removeとか全部略 public class 費用リスト { long sum = 0; public long 合計 => sum; List<費用> list = new List<費用>(); public ReadOnlyCollection<費用> 品目 { get;} public 費用リスト() { 品目 = new ReadOnlyCollection<費用>(list); } public void Add(費用 hiyo) { if (hiyo == null) { return; } sum += hiyo.金額; list.Add(hiyo); } }
819 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 00:00:42.82 ID:+SxGwy2+.net] わざわざ費目をクラスで分けている理由のことじゃないの? >>801 だけなら別に必要ないかと。
820 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 05:02:03.39 ID:/+M3aR4Y.net] >>779 例として固定値を返していると仮定 金額が費用の状態によって複雑になるなら有な考え方だと思う
821 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 05:27:10.69 ID:uEdWuAdp.net] ねーな 業務上3000とか4000とか値扱ってる奴のが多いだろ こういう組み方見るだけでうげっとする じゃあ、構造を把握するためにクラス図でも見てみよーかって 資料開いた瞬間閉じるわ
822 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 06:24:16.03 ID:w7lpXa1y.net] プログラムセンスのあるヤツなら最初からやらない間違いで 残念ながら矯正不能なんだわ
823 名前:752 mailto:sage [2017/12/20(水) 07:08:03.81 ID:FojWkfgf.net] 費目が8個なのでサブクラスに各費目クラスを作ったのですが。。。 サブクラスは何個くらいが適当なのでしょうか 10個超えるとアウトでしょうか
824 名前:752 mailto:sage [2017/12/20(水) 07:15:48.78 ID:FojWkfgf.net] ちなみに費目をクラスで分けた理由は、費目ご
825 名前:とにちょっと込み入った算出処理をするので、それぞれを閉じ込めておきたいと思いました でも、費用が最小の粒度の方が一般的な雰囲気ですね 急遽プログラムをやれと言われた人間なのでセンスとか言われると厳しいです [] [ここ壊れてます]
826 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 07:35:47.88 ID:+xQghQuB.net] >>807 ならサブクラスでいいよ ここの連中は単純な家計簿みたいなツールを前提に話してる そうじゃなく対象が複雑なら話は変わる
827 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 07:42:10.14 ID:uEdWuAdp.net] >>808 変わるかなぁ? 日○とか三○でもそんなの見たことないよ ちなみにそこだと項目数が10万とか超えちゃってるかんね それ全部クラス作ったらw
828 名前:752 mailto:sage [2017/12/20(水) 07:53:51.41 ID:JgbCLwPB.net] >>808 クラス分けしても悪くはないですか ありがとうございます ただ、費用の抽象クラスを費用クラスにしてメソッドを各費目算出とすると、メソッドに「費用合計算出」を作っても違和感が無いかなとも思い プログラムは難しいとしみじみ思いました
829 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 07:59:44.59 ID:+xQghQuB.net] >>809 対象としてるドメインが違うだろ 呆れるわ
830 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 08:14:04.00 ID:XFxcCwxD.net] 業務アプリの設計なんかDFD描いてトランザクションスクリプトでいいよ 開発者全員が相当慣れてない限り、まともなオブジェクト指向でスケールさせるのは現実的に無理
831 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 08:17:09.42 ID:dzFn8RAE.net] 費目の数が10万!? ないわー w
832 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 08:20:29.69 ID:dzFn8RAE.net] >>810 > ただ、費用の抽象クラスを費用クラスにしてメソッドを各費目算出とすると、メソッドに「費用合計算出」を作っても違和感が無いかなとも思い 個々の費目で合計なんて求めようがないと思うが... 合計の算出は費目を束ねるクラスでやるべき話じゃね?
833 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 08:23:01.94 ID:TnQp+4qQ.net] それ以前に、費用の集計なんかSQLでいいよ
834 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 08:44:12.56 ID:uEdWuAdp.net] >>813 余裕っしょ 設定数100個の部品が100個あっただけでもう一万よ でかい機械で部品数たった100個とかありえないから10万は確実に超える もっとあるだろうなぁ
835 名前:デフォルトの名無しさん [2017/12/20(水) 08:44:55.30 ID:apLR0/3w.net] >>807 にわかプログラマーならオブジェクト指向に拘るより もっと単純な仕組みでやったほうが良いね 目的がオブジェクト指向になって簡単なものを複雑にしてる気がする
836 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 09:24:55.44 ID:CxRyWMoc.net] 急遽プログラムやれと言われてこれだけオブジェクト指向理解したならすごいな
837 名前:デフォルトの名無しさん [2017/12/20(水) 09:30:51.88 ID:apLR0/3w.net] 費目毎のクラス分けは目眩がするけど
838 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 09:30:52.50 ID:gjQwmCKz.net] >>806 ケースバイケース
839 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 09:33:53.14 ID:gjQwmCKz.net] >>810 非常にセンスが良い 自信持って良い 注意点はおかしな現場(こっちの方が多数派だったりするがw)へ行った時に絶望しないことかな
840 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 10:12:49.94 ID:IdA1DVd/.net] 授業でC言語ちょっとやっただけでオブジェクト思考はちっとも理解してないから>>779 がそんなに悪いのかわからない 費用ってクラスを使って家賃、光熱費のインスタンスを作るようにしたらいいのか?
841 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 10:28:45.17 ID:GdnGy9ZB.net] >>801 sum += hiyo.金額; エラー CS0019 演算子 '+=' を 'long' と 'メソッド グループ' 型のオペランドに適用することはできません と出るのですが、正解を教えて下さい。
842 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 10:30:50.20 ID:irahYJNV.net] 元の奴が金額がメソッドになってるけど それはプロパティになってる というか金額をメソッドにしちゃだめ 元のコードがダメ
843 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 10:36:11.97 ID:GdnGy9ZB.net] >>824 このエラーが出ている行を エラーが出ないように修正する方法を教えて下さい。
844 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 10:38:08.67 ID:irahYJNV.net] >>779 の
845 名前:@金額をメソッドからプロパティに書き直す [] [ここ壊れてます]
846 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 10:44:45.87 ID:N4PPX6u2.net] どーせ()忘れ
847 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 10:47:18.91 ID:GdnGy9ZB.net] >>826 >>827 文章で説明して頂いても理解出来ないので 完全版のコードを掲載して頂けると有難いです。
848 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 10:50:33.77 ID:irahYJNV.net] プロパティが自分で書けないならここからコード書いてても無駄だよ 早く勉強しろよ
849 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 10:53:01.07 ID:hctoYabD.net] >>828 hiyo.金額()
850 名前:デフォルトの名無しさん [2017/12/20(水) 11:01:57.32 ID:GdnGy9ZB.net] >>830 ありがとうございました。
851 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 11:04:38.98 ID:irahYJNV.net] 煽りでも何でもなく プロパティが自分で書けないならここからコード書いてても無駄だよ
852 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 11:11:07.65 ID:hctoYabD.net] あ、そすか。
853 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 11:19:04.73 ID:fz4ulcZ2.net] >>824 金額をメソッドにしちゃダメな理由を3行で
854 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 11:44:22.53 ID:EHvPlft0.net] まあ普通に考えればメソッドなら金額計算みたいに動詞的にしろよとは思うな 日本語メンバ名だと曖昧だけど
855 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 11:48:55.09 ID:884JsNpl.net] まだやっていたんだ、簡単なことを難しくするバカのお手本
856 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 11:50:57.09 ID:Wpgvy9KL.net] そうですか^^
857 名前:デフォルトの名無しさん [2017/12/20(水) 11:55:45.07 ID:yB/d6H1Y.net] >>836 同意する
858 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 11:57:47.91 ID:uig5CTB+.net] 初心者に説教するアホ多過ぎ 弱いものイジメはイクナイ(´・ω・`)
859 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 12:04:02.26 ID:Cxfy3ZNg.net] >>754 の人はたぶんネタなんだろうね。 結局何が聞きたいのか明確にしろって言っても答えないし ネタのつもりなら何が面白いのかさっぱり分からんが こんな曖昧な質問に曖昧なまま答える奴も頭どうかしてると思うけど
860 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 12:05:42.91 ID:MbxWSbMs.net] マジでネタと思ってる奴って頭どうにかしてるよね
861 名前:752 mailto:sage [2017/12/20(水) 12:15:20.79 ID:qNzSCdz1.net] >>840 費用のようなものを費目単位でクラス化したのですが、一般的にはどうなのでしょうかと質問したつもりですが、意図が伝わらなかったみたいですみません 結論としては、費用をクラスとし、費目メソッドを数分作る方が一般的なのかなという結論に辿り着きました 色々と参考になりました
862 名前:752 mailto:sage [2017/12/20(水) 12:20:38.93 ID:qNzSCdz1.net] >>840 モデリングの対象次第で答えが変わるもの、答えようが無いということなのでしょうね 最近やっと覚えた抽象クラスを使いたかっただけかもと言われたらそうかも知れません 反省しています
863 名前:752 mailto:sage [2017/12/20(水) 12:41:55.46 ID:qNzSCdz1.net] 最後にすみません。ある条件で作業時間×レートが費用になるので、費用クラスと作業時間クラスを費用算出メソッドを持つインターフェースで継承させようと思うのですが、インターフェース名が「費用算出」はセンスが無いでしょうか? インターフェースを使えばコードが仕様を語ってくれるのではと期待しているのですが基本情報資格も持っていない自分にはこれで良いのか解らず 実務経験豊富な諸兄にお尋ねしたい次第です
864 名前:デフォルトの名無しさん [2017/12/20(水) 12:45:22.87 ID:yB/d6H1Y.net] レートクラスは無いのん?
865 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 12:49:20.00 ID:dzFn8RAE.net] >>816 お前は費目の意味わかってないだろ... 部品一個一個に異なる費目がつくんじゃねーぞ w クラスとインスタンスの違いも理解してないと見た
866 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 12:51:34.80 ID:dzFn8RAE.net] >>839 てか、説教してるつもりの奴の方がレベル低いし w
867 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 12:53:14.86 ID:dzFn8RAE.net] >>844 俺は算出って用語をあまり見ないから少し違和感あるけどまあそれで違和感ないならいいんじゃね
868 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 13:49:49.11 ID:bqoc1RuE.net] >>846 違うよ こんな細かい項目クラスにしちゃって全体の粒度はどうなるの?って話
869 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 13:51:39.57 ID:bqoc1RuE.net] やっぱり設計のときにクラス図書かせるべきだな あまりにも小さい項目いちいちクラスで構えるつもりならそれも全部 クラス図として書いてもらおう
870 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 17:45:30.12 ID:dzFn8RAE.net] >>849 だから費目が10万とかはあり得んだろって話 うちの会社はそこそこの規模で結構色々手掛けてるけどそれでも経理関係の費目コードは50ぐらいしかない 当然大分類、中分類、小分類と階層化されてるからそれに合わせて継承させればいい まあうちの会社の情シスはそこまでやってなくて費目コードを見て分岐してそうだけど w
871 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 17:53:32.28 ID:kZMVhJ0h.net] >>851 じゃそれでもいいけど それだけで50個クラスできるんでしょ? クラス図どうなるの?クラス50個作るん? って言いたいわけよ 結局設計ってさ わかりやすいか わかりにくいか だけなんだよね 上下のわからんクラスって粒度を そんなちっぽけなもんに使うと 全体が見えなくなっちゃうんだよ 費目は少なくてってそれお前の環境がそうってだけの偶然でしょ? この方針はオススメできないね俺は まあ、どう組んでも動けばよいのであくまでオススメの域
872 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 17:57:31.91 ID:0mbmAU0+.net] 50個のクラスができるものをクラス使わずにごちゃ混ぜにしたら余計にわけわからんだろ こういう話題で数が増えたらどうするの?って反論するやつが必ず現れるけどそれ墓穴掘ってるだけだぞ
873 名前:752 mailto:sage [2017/12/20(水) 18:12:27.89 ID:PXZlLTCM.net] >>845 レートクラスは必要かも知れないですね まだまだ考慮不足でした
874 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 18:25:24.19 ID:AIjICjtT.net] データが構造を持ってしまうと、別の使い方をする時に手間が増えるだけなんだよ データはデータでクラスにする必要なんかまったく無い
875 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 18:31:13.93 ID:dzFn8RAE.net] >>852 > クラス図どうなるの?クラス50個作るん? 必要なら作るだけだろ > 上下のわからんクラスって粒度を > そんなちっぽけなもんに使うと > 全体が見えなくなっちゃうんだよ それお前さんの管理能力の問題... > 費目は少なくてってそれお前の環境がそうってだけの偶然でしょ? 世の中の会計ソフトとか見てみな もしくは自分の会社の経理担当者に聞けばわかると思うよ > この方針はオススメできないね俺は 別にお前もそうしろなんて言ってないから勝手にやってなよ
876 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 18:47:00.16 ID:n3mgdNKt.net] >>855 別の使い方する時点で分析設計ミス
877 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 18:56:33.13 ID:R/x04Nlq.net] >>856 残念ながら、世の中の会計ソフトなんかほぼ100%トランザクションスクリプトだよ
878 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 19:01:31.53 ID:6oreCn9e.net] >>853 好きなようにすればいいよ ただ、お前のクラス図に50個のクラスが並ぶだけ
879 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 19:08:20.84 ID:dzFn8RAE.net] >>858 なんの話をしてるんだよ w
880 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 19:13:04.16 ID:w7lpXa1y.net] 費目、時間単価、時間がそれぞれ独立したクラスか めまいを禁じ得ない
881 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 19:35:42.09 ID:n3mgdNKt.net] それらが同じクラスに混在する方が目眩するわ
882 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 19:59:30.76 ID:+lUILV8P.net] で、最終顧客がのぞむ要求に答えられるアプリケーションなのかと
883 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 20:00:24.04 ID:1pJRigF6.net] 全体を把握しないと作業に取り掛かれないなら 既にクラス設計として破綻してるとしか
884 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 20:45:21.17 ID:QInM5P3Y.net] 結局要件があいまいだから何とも言えんけど普通に考えれば費目ごとに派生するのはないね。 せっかくC#にはデリゲートがあるんだから、費目で違う処理はコンストラクタで デリゲート食わせて対応できるし、その上でプロトタイプパターン適用した方が分かりやすいと思うよ。 もちろん費目ごとの固有の処理が費目固有のプロパティに依存するような場合は
885 名前:継承を使うしかないけどね [] [ここ壊れてます]
886 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 21:00:51.80 ID:D80mgGFK.net] 費目はクラスじゃなくてデータにするべきものでは在るが、初心者が「そう言われたから」って理由でやるより 何故そうなのかを理解してやるのは悪いことじゃない 自分で考える人を挫くスタイルはあまり感心しないな
887 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 21:05:35.30 ID:n3mgdNKt.net] 種類によって振る舞いが違うって要件なのにデータで扱うとか呆れるわ どんだけswitchする気だよ
888 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 21:15:55.31 ID:dxH3+214.net] > 自分で考える人を挫くスタイルはあまり感心しないな マウントしたいだけやろ 今回は質問者の方がレベル高いからアホみたいなことになってるけど w
889 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 21:16:44.49 ID:R/x04Nlq.net] >>867 アホ 全く別のデータ項目をどうやったら混同できるんだ
890 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 21:22:03.45 ID:n3mgdNKt.net] >>869 全く別のものを混同して同じデータ構造でごちゃ混ぜに扱おうとしてるのがデータフロー派だぞ 俺や質問者は異なる物は異なるクラスにしろっていうオブジェクト指向派な むしろ真逆だわ
891 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 21:33:44.71 ID:6oreCn9e.net] >>870 何でこんなくだらないものいちいちクラスにするんだ クラス図書かないからこんな蜘蛛の巣みたいなクラス図作って平気な面してんだろお前
892 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 21:35:40.32 ID:R/x04Nlq.net] >>870 混ぜて使いたいからクラスにするんだと思ってたんだが違うのか? 全く別物として区別して扱うんなら行全体を1クラスにして複数のフィールドで持つのと大差ないと思うけど?
893 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 21:49:04.68 ID:ie4nb91k.net] 費用と言っても材料費、人件費、、減価償却費、貸倒引当金など性格や扱いの異なるものを同じ基底から派生させるのはどだい無理がある 集計したいだけなら金額を取得するインターフェイスを実装する方が賢い
894 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 22:10:01.13 ID:n3mgdNKt.net] >>871 アホほど条件分岐書いて平気な顔してるやつに言われたくない きみさクラス図どころかオブジェクト指向すらしたことないだろ? >>872 同じ規約で異なるものを集めるのと 異なるものをただひとつのものとするのと 全く違うことだ 混ぜるという言葉の使い方を見極めろ
895 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 22:10:03.47 ID:WriG98aZ.net] List〈string[]〉の型をstring[]の特定の列をキーにしてソートしたいんですけど List.Sort(x => x[1]); のような書き方はできないのでしょうか? List〈class〉を用意するしかないのでしょうか?多分Listの中の配列にもLINQ使えそうなんですが・・・ テストで試しに動かしたいだけなのにわざわざclassを書くのが大変なので・・・
896 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 22:18:17.41 ID:gjQwmCKz.net] >>875 Sortは過去の遺物 OrderBy使っときなさい
897 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 22:26:57.08 ID:6oreCn9e.net] >>874 でもさ クラス図書いたら君のはこんなくだらない処理でクラスが50個も並んでるんだぜ どの辺がいいプログラムなの? 他のも合わせれば5-600は行くんじゃない? 正しいクラス図なんて一度も書いたことないっしょ? おそらく資料見てもこのクラスは記述があるけどこのクラスは記述がないなぁ ってもんを平気で作っちゃうでしょ?
898 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 22:31:22.52 ID:n3mgdNKt.net] >>877 そのドメインがそういうものなら何百クラスだろうがクラスで書くのが正しい それがそのドメインでは最も簡潔で正しい姿なんだよ そこを曲げてデータ区分や条件分岐で雑なコードを書いたら クラス数は増えないかもしれないがコードの複雑度が爆発的に高まるだけ なぜなら数百クラスが個々に持つべき振る舞いが同じクラスに区別なく同居してしまうんだぜ? ろくなことにならないよ
899 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 22:32:30.67 ID:WriG98aZ.net] >>876 OrderByも試したんですがこのラム
900 名前:_式だと意図した動作にならないです とりあえずList〈class〉で素直に書いてみますが、ラムダ式のキーに配列やListのインデックス指定して使うのは無理なんでしょうか? [] [ここ壊れてます]
901 名前:デフォルトの名無しさん [2017/12/20(水) 22:33:13.38 ID:GdnGy9ZB.net] >>875 >型をstring[]の特定の列をキーにしてソートしたいん ってどういう事ですか? 型をソートするの意味が分かりません。 初心者なので詳しく教えて下さい。
902 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 22:35:03.12 ID:QInM5P3Y.net] 意図した動作にならないのをバグっていうんだと思いますw
903 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 22:36:47.64 ID:6oreCn9e.net] >>878 そもそも設計書で四角で囲って強調すべき単位なの?費目って オブジェクト指向も自分解釈でおおよそ一般人がオブジェクトなんてしない単位でオブジェクトを作ってるよね?
904 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 22:40:38.82 ID:D80mgGFK.net] >>878 結局DBに入れて永続化しなくちゃいかんわけで、その用途考えると数百のクラスとかありえんのさ EFで扱える範囲で物を考えたほうが良いよ
905 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 22:42:06.35 ID:WriG98aZ.net] >>880 ちょっと説明不足してたので補足 List〈string[]〉 { {"1", "aa", "1個目"}, {"2", "bbb", "2個目"}, {"3", "abc", "3個目"}, {"4", "dddd", "4個目"} } の形があった場合、string[1]のところを基準にソートさせたいってことですね public class test { public string id{get; set;} public string text{get; set;} public string discription{get; set;} } みたいな形式だった場合 list.OrderBy(x => x.text); と同じ動作にしたいということです
906 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 22:54:00.94 ID:QInM5P3Y.net] >>884 そこが分からない人はいないと思うよw 逆に何が難しいの list.OrderBy(x => Integer.Parse(x[0])); とか、 list.Sort((x, y) => Integer.Parse(x[0]) - IntegerParse(y[0])); ではダメなんですか?
907 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 22:55:43.46 ID:QInM5P3Y.net] あ、やってもーたw IntegerじゃなくてInt32ね
908 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 22:59:37.49 ID:WriG98aZ.net] >>885 classでも試してだめでした それで動かなかったので質問したのですが、classもソートされなかったのでデータ側の問題かもです さっきのダミーデータでちゃんと挙動するか試します
909 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 23:03:12.47 ID:n3mgdNKt.net] >>882 質問者のドメインでは書くべきものだよ 振る舞いが異なる別のものだからね それが数百種類でそれぞれ異なるような複雑なドメインなら書くんだよ 無理やり1つのレコードに押し付けちゃダメ 逆にドメインそのものがシンプルで1つのクラスで表現すべきならそうする きみのおかしな点は質問者のドメインを無視してきみの頭の中にあるシンプルなドメインを前提に話を進めようとするところだな 独りよがりってこと >>883 実装はどうとでもなる RDBにこだわる必要もない
910 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 23:06:38.88 ID:QInM5P3Y.net] >>887 classってのが何のことかよくわからないけど、OrderByの方使ってる? LINQのメソッドはコレクションをのものを並び替えるのではなくて 並び替えた列挙オブジェクトを返すんだけど、そこを誤解してるなんてオチではなくて?
911 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 23:17:47.14 ID:dFGD4M7x.net] >>887 https://ideone.com/5Vgtw7 できたよ
912 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 23:21:21.55 ID:lugKio2h.net] 書き方がわかりませんということだから並び替え方法とは違うように読めたけどな list = list.OrderBy(x => x[1]).ToList(); もしくは list.Sort((x, y) => x[1].CompareTo(y[1])); とかだろ OrderByはシーケンスが返ってくるからListにしたい場合はToListが要る Sortは直接並び替えてるので前の状態も欲しい場合は事前にコピーしておくかな
913 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 23:23:23.48 ID:WriG98aZ.net] >>890 ありがとうございます var a = 〜 って感じで受け取っててVSで中身無いけどどうなってるの?? IOrderedEnumerabel〈〜〉型ってなんだ?ってなってましたけどforeachに直接入れないとダメなんですね 使い方間違えてました >>889 これでした、すいません
914 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 23:26:14.46 ID:WriG98aZ.net] >>891 あぁToList()を忘れてました あやふやな記憶で使っててToList()使うって教わったのにすっかり忘れてました 型の返り方の説明見て、正しい扱い方覚えないといけないですねすいません ICollectionみたいなやつとか、抽象化されてるからToListでListに明示的に変換しないとあかんやつでした
915 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 23:29:58.52 ID:Xe3ly/H6.net] >>892 てかその構造のデータをstring[]で扱わなきゃいけない理由が何かあんの?
916 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 23:31:09.24 ID:Xe3ly/H6.net] あ、ごめん書いてたね
917 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 23:35:13.47 ID:WriG98aZ.net] >>894 試しにデータ群扱う時にclass宣言したり、大量のデータを型分けするのがめんどいからこういう扱い方できると楽ってだけですね この使い方ならcsv形式にsplitでListぶち込むだけでやれるので宣言項目少なくてテストするなら楽ってだけです DBから持って来るときは文字列型じゃなければToStringかけたりとかありそうですが 最近はEF使ってるので楽ですけどね
918 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 23:38:15.25 ID:nn3v7K50.net] Kotlin では、ある列の値で、レコードをソートするのは以下。 年齢・名前でソートする https://mevius.5ch.net/test/read.cgi/tech/1509462463/18
919 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 23:44:31.66 ID:Xe3ly/H6.net] >>896 Visual Studioならjsonからクラスを自動生成できるからクラスの方が扱いやすいけどね。stringとHashtableまみれのコードとか絶対メンテできない…
920 名前:デフォルトの名無しさん mailto:sage [2017/12/20(水) 23:49:35.45 ID:WriG98aZ.net] >>898 こんな機能あるんですね! interfaceのメソッド自動実装ぐらいしか知らなかったのでこういうの積極的に使いたいです
921 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 00:47:58.94 ID:HdSqx1Ax.net] yossk.hatenablog.com/entry/2015/02/23/070546 ここの「4-3散在する情報」のサンプルコード 川俣晶の本からのコピーなんだけど Runメソッド内で値設定したあと CalcDistメソッド先頭で値をリセットしてるから 常に計算結果0になるように見えるんだけど なんか俺読み間違えてる?
922 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 00:54:31.04 ID:h7wsiOnr.net] たしかに
923 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 03:28:09.32 ID:3KOuKcBo.net] >>888 はぁ?人件費がクラスに? センス悪いじゃん
924 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 05:44:12.11 ID:/dR3YALD.net] >>902 人件費と光熱費が異なる振る舞いをするなら別のクラスにするのが正しい センスの問題じゃない常識の問題
925 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 06:04:58.06 ID:gZ1XcqWP.net] >>903 はぁ? どう組んでも動きますが?
926 名前:デフォルトの名無しさん [2017/12/21(木) 06:50:24.48 ID:/eYbpg/S.net] オブジェクト指向は物事を複雑にするためにあるモノじゃ無いぞ。 オブジェクト指向を目的にしてどうするwww
927 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 06:50:56.44 ID:c0/BZHI9.net] 動く動かないとセンスの有無は別の話 理解力無さすぎだろ w
928 名前:デフォルトの名無しさん [2017/12/21(木) 06:56:56.39 ID:/eYbpg/S.net] どの世界でも原理主義者は物事を複雑にするw
929 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 06:57:03.08 ID:gZ1XcqWP.net] >>906 正しいとかおかしいよな どう組んでも動くし
930 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 07:00:31.05 ID:gZ1XcqWP.net] クラス図書かないやつは客観的に自分の設計を見ることができない だからこんなプロパティ単位のものクラスにして クラス図を蜘蛛の巣にしちゃっても それを汚いと反省する機会がない ただし、どう組んでも動くのであくまで俺の持論
931 名前:752 mailto:sage [2017/12/21(木) 07:13:38.51 ID:RBSPw/d+.net] 費用クラスの者ですが、色々なアドバイスありがとうございます 参考になります >>904 どう組んでも動くの精神で、前任のパートさんが凄いの組んでくれたので、オブジェクト指向を意識し始めました クラスどころかイベントリスナーのメソッドというのでしょうか? そこから共通関数すらなく処理されているので、なんとかしたかったのです ドメイン層とアプリ層とインフラ層が渾然一体となっていると、どう手を付けて良いのやら
932 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 07:25:44.67 ID:Mqu0aN7Q.net] 必要最低限だけ修正しろ コードのきれいさは主観 他人のコードはすべて糞コード
933 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 07:27:47.47 ID:gZ1XcqWP.net] >>910 お前のはプロパティ単位もクラスになってるからさらにカオスだな 初見で見た人間がそのたくさんあるクラスの依存関係がわかるといいな
934 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 07:42:54.80 ID:iiESRPBo.net] と、プロパティ単位とか意味不明のことをつぶやいており当局は措置入院の必要性があると判断している模様です
935 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 07:56:29.75 ID:h7wsiOnr.net] >>910 おまえ本当に未経験者かよwww
936 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 08:08:25.86 ID:gZ1XcqWP.net] 残念なのはおそらくこいつはコードレビューとかしたことないね クラス図と基本設計書との不一致とか設計書のレビューもやったことない このレベルでクラス図なんて書いたらごちゃごちゃしてなんだかわからないだろ 見難いよって誰からも指摘されたことないから当然伸びない 修正が聞かないまま今に至る
937 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 08:09:15.38 ID:gYUruymP.net] (キリッ
938 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 08:17:58.61 ID:81J6Ca8t.net] 新参だがここで聞くのは無駄だってことは分かった
939 名前:デフォルトの名無しさん [2017/12/21(木) 08:37:19.47 ID:VQD1Tiju.net] >>910 え〜、今更オブジェクト指向なの? c#はマルチパラダイム言語なのに
940 名前:デフォルトの名無しさん [2017/12/21(木) 08:40:09.55 ID:VQD1Tiju.net] >>917 ちゃんとした質問ならまともな答えが帰って来る。 トンデモ質問はスルーされるかネタにされて遊ばれるw
941 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 08:54:24.69 ID:upKQQwHx.net] 最近クラス図キチガイが湧いてるな
942 名前:デフォルトの名無しさん [2017/12/21(木) 09:04:04.27 ID:VQD1Tiju.net] >>914 素人だろうね。 ギョーミーなアプリ開発の経験者に費目毎のクラス化なんて発想はない。 社内のパソコンマニアに白羽の矢が立っただけ。
943 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 10:15:36.99 ID:VXvVb2gy.net] >>921 俺が言ったのは本当にプログラミング初体験なのかよってことな。
944 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 10:19:43.29 ID:iwfbZ4kw.net] javaの匂いが消えない
945 名前:デフォルトの名無しさん [2017/12/21(木) 10:33:22.61 ID:VQD1Tiju.net] >>922 大学出てりゃプログラミング初体験なんてことは無いだろうな。 プログラミング教育義務化なのでプログラミング初体験者ゼロの世の中になるw
946 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 10:41:24.50 ID:VXvVb2gy.net] >>807 >急遽プログラムをやれと言われた人間なのでセンスとか言われると厳しいです
947 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 12:03:45.23 ID:Q/EvmKMe.net] >>910 昨日も書いた((>>865 )けど、費目ごとに派生クラス作れ、なんて話は真に受けない方がいいと思うよw 処理の委譲はデリゲートでもできる。
948 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 12:50:57.69 ID:iiESRPBo.net] >>920 自称上級者なんだろ 今度はデリゲートとか言い出しちゃってるし 自分の知ってる単語ならべてるって感じ w
949 名前:752 mailto:sage [2017/12/21(木) 12:55:56.30 ID:Bs03k3IZ.net] >>925 急遽と言っても半年以上OJTの形で作っているので、変数、関数、クラスが何なのか程度は理解しています で、費用と費目は抽象クラスを使うのに絶好の課題ではと初めて使ってみて、世間様ではどう思われるか聞いてみたら、そんな関係には使わないと指摘された次第です
950 名前:752 mailto:sage [2017/12/21(木) 13:00:11.33 ID:Bs03k3IZ.net] ズブの素人でも手続き型プログラムを一ヶ月で作れるようになったのは、visual studioの支援とC#の解りやすさのおかげだと感謝してます ゆえに急遽突っ込まれたのかも知りませんが
951 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 13:29:10.16 ID:WNlCIVzg.net] >>928 結局ね、データってのはDBに保存したり手で入力したりするものなので データごとにクラスが変わったりすると破綻するんですよ クラス分けは集計には便利かもしれんが、全ての工程でどうなるか考えて設計しないとね
952 名前:デフォルトの名無しさん [2017/12/21(木) 13:38:55.98 ID:xinkvf3y.net] >>929 ズブの素人が1ヶ月でc#をそれなりにマスターするなんて凄いわ。 オレは無理だ (ーー;)
953 名前:752 mailto:sage [2017/12/21(木) 17:30:18.01 ID:68OBjHX8.net] >>931 最初の二ヶ月は前任の人が引き継ぎ兼トレーニングしてくれたのでブートは早かったと思います そこから半年でやっと継承を触ったので、成長曲線はそこまで急では無いかと 比較が解らないですが仮に成長が早いとするとC#が非常に取っ付きやすかったのが大きいと思います 基本情報試験のアルゴリズムとかさっぱり解らないので、プログラム能力は経験相応に低いと思います
954 名前:752 mailto:sage [2017/12/21(木) 17:42:42.42 ID:68OBjHX8.net] >>915 PM交え前任者とコードレビューをしましたが、三項演算子とLINQは見難いと指摘されました 手続き型より宣言型のが良いとネットで見たのですが 逆に前任者が書いた4重ネストのfor文にifelseが連ねてあるコードはいくら頭をひねっても理解できず 数字の動きはステップ実行で見れるのですが、だから何って感じになります ゆえに知識を整理したくなり初めて抽象クラスを意識した次第です
955 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 17:50:29.58 ID:c4/lwFQU.net] 優秀だね ここにくると馬鹿になるからもう来ない方がいいよ
956 名前:752 mailto:sage [2017/12/21(木) 17:56:25.54 ID:68OBjHX8.net] >>909 素朴な疑問ですがプロパティが大量に並ぶのとクラスが大量に並ぶのはどちらが好まれるのでしょうか 個人的には、クラス内にプロパティがギッシリという光景も凄いなと思うのですが 私の知らないテクニックで隠蔽できるのかも知れないので解りませんが なおデリケートはイベントリスナとして使われてる程度の理解しかなく使いどころがピンと来ていません 精進します
957 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 18:05:03.28 ID:Tz1RNGN4.net] プログラミングしたので評価してください archive.isに定期的にアーカイブさせるプログラムです https://dotup.org/uploda/dotup.org1417700.zip.html 👀 Rock54: Caution(BBR-MD5:1322b9cf791dd10729e510ca36a73322)
958 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 18:12:09.40 ID:Tz1RNGN4.net] 間違えてプログラムだけ上げてしまいました こっちはプロジェクトです https://www.axfc.net/u/3872901
959 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 18:14:54.74 ID:upKQQwHx.net] GitHubにあげてくれ
960 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 18:56:17.83 ID:VaR9+Vl3.net] ギフハブ?
961 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 19:01:00.92 ID:YYEMhcfN.net] >>935 そんなのトレードオフに決まってんじゃん
962 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 19:04:17.37 ID:Q/EvmKMe.net] >>935 何べんも言うけどさ、結局要件の詳細が分からないとどういう実装方法が ベストかなんて何とも言えんよ 妄想込みの印象論としては費目ごとに派生クラス作るなんて筋悪に感じるなとは言えるけど
963 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 19:09:52.65 ID:Tz1RNGN4.net] (´・ω・`) https://github.com/as123414/AutoArchiver
964 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 19:21:07.79 ID:iwfbZ4kw.net] md書け
965 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 19:22:33.42 ID:Ym9/Pn+0.net] いつから「評価してもらうスレ」になったんだよ せめて相談室でやれよ
966 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 19:37:28.56 ID:iwfbZ4kw.net] ちょっとだけ見たけどやはり初心者ですねとまだ短いにも関わらず読みづらいコードになりそうですねということかな 一行が長いところは絶対ダメとはいわないけど大体クソコード
967 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 19:41:21.29 ID:Ate4yeHH.net] >>935 もう手続き型の組み方で良いんじゃないの? オブジェクト指向はプログラムを分かりやすく保守しやすくするために出来たもの。 変なオブジェクト指向に拘って物事を複雑にするのは本末転倒。
968 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 19:46:25.90 ID:iwfbZ4kw.net] 意味なく一行が長いのを見るとどんなエディタで書いてるんだろうかと思う あとは一行でつなぎまくってるのを見るとデバッグがめんどくさいだろうなと思う
969 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 19:47:38.41 ID:Tz1RNGN4.net] >>947 120行目のことでしょうか それとも出だしのメッセージボックスでしょうか
970 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 19:52:03.68 ID:iwfbZ4kw.net] もう見るつもりはないから忘れたけど後ろの方にあったメソッドは内容をもっと見直したらいいと思う けど初心者はこんなもんだろ
971 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 19:52:34.81 ID:Tz1RNGN4.net] (´・ω・`)
972 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 19:57:53.60 ID:iwfbZ4kw.net] >>948 メソッドの結果を受ける段で概念的にわかりやすい名前で一度受けたほうがいいと思う 何々Textとか何々uriとか あとは個人的な感想として成功じゃなくて失敗をbool値で受ければいいんではないか bool 失敗=false catchで失敗=true >>950 まあこんなところで聞くやつが悪い
973 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 19:58:12.75 ID:HqNyhY75.net] >>935 小さなクラスが大量に並ぶのがオブジェクト指向の正解
974 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 20:10:11.41 ID:YYEMhcfN.net] >>952 俺はトレードオフがオススメ ちょっとした修正でクラス図まで書き直す必要ありますはお客に印象悪い どういう設計してんの?って聞かれる
975 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 20:12:10.78 ID:Mqu0aN7Q.net] クラス図なんて成果物にいれるからだ
976 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 20:16:53.37 ID:HqNyhY75.net] >>953 コードが変わるならドキュメントも同期させるって当たり前のことだよ ちょっとした修正だからドキュメントは変えなくていいって、それは本来ドキュメントに書かれてなければならない事が書いてないだけ 手続き型の設計ではそういう手抜きがよくあるけどね
977 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 20:17:38.91 ID:Tz1RNGN4.net] ここで頼まれて作ったよ(´・ω・`) hebi.5ch.net/test/read.cgi/news4vip/1513837259/
978 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 20:21:08.11 ID:YYEMhcfN.net] >>955 じゃあそうやって客に言えば? 俺とお前の資料を比べたときに 同じ修正量でもお前はセコセコ動いてなんだか余裕が無さそうに見えるから
979 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 20:21:36.24 ID:wimnqGen.net] 他人に誉めてもらわないと張り合いが出ないのはわかるが ここは初心者しかいないんだからレビューがまともに帰ってくるわけがない
980 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 20:23:37.18 ID:Tz1RNGN4.net] いまソースコードにコメント付けたので評価してください
981 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 20:32:06.58 ID:HqNyhY75.net] >>957 余裕がなさそうに見えるからwww わらっちゃった 余裕を演出するためにやるべきことをやらずに自分を追い込んで最後には余裕なくすんだろうなキミは
982 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 20:33:40.96 ID:YYEMhcfN.net] >>960 実際お前のやり方だと ほんのちょっとの変更でもう クラス図から手を入れなきゃじゃん これって変更に弱いってことじゃないの?
983 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 20:41:22.00 ID:YYEMhcfN.net] >>960 それでいいんだよ コードの綺麗さは人間の主観だろ だったら自分のコードじゃなくて人間を見なければ成長はしないよ
984 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 20:46:30.90 ID:HqNyhY75.net] >>961 手間がかかるから変更に弱いという考え方しかないのか? ショートコーディングが至高ならC#じゃなくてスクリプト言語やった方がいいぞ コード修正におけるOOPのメリットはタイプ量や作業量の少なさじゃ断じてない わかりやすく整理されたコードをわかりやすさを維持したまま変更できることがメリットな そりゃこだわらなきゃ手短に修正することは簡単だよ 例えばちょっとしたフラグ変数やif文を追加すればクラス構成を変えずに素早く修正して目の前の問題を解決することはできる ローカルな修正だからドキュメントの修正も軽微で済むかもしれん でもそれを積み重ねていくと気が付いた時にはもう手に負えなくなってしまうんだよ
985 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 20:51:53.83 ID:HqNyhY75.net] >>962 コードの綺麗さは計量可能 常識的なことだぜ 人間を見なければ成長しない(キリッ)なんて意識高いっぽいけど意味不明な戯言を言う前に まずは君の仕事を人並みにこなせるように基本的なことを勉強しなよ
986 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 20:52:40.67 ID:Mqu0aN7Q.net] そんなことはない オブジェクト指向はケースによって処理ががらっと変わるような場合の対処は得意だが 細部が細かいルールでちょこちょこ変わるようなのは大の苦手だ おとなしくIF文使ったほうがいいケースはたくさんある、というかそっちが普通 あとフラグ変数まみれになるのはたぶんOOP以前に構造化プログラムができてない
987 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 20:56:35.39 ID:Mqu0aN7Q.net] 計量可能とかうそだ
988 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 20:59:34.57 ID:iByWYmKo.net] >>879 んなこたあない
989 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 21:00:51.75 ID:Ate4yeHH.net] >>964 計量可能なのはコードの複雑さだろ。 将来的にはディープラーニングでカラオケマシン並みの採点ができるかもだが。
990 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 21:05:03.60 ID:iByWYmKo.net] >>929 あなたのレベルはこのスレを遥かに越えてる 汚物に汚染されない方が良いよ
991 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 21:06:20.65 ID:HqNyhY75.net] >>965 細部の修正はOOPの場合、メソッド内とかクラス内で完結するから、非常にやりやすい 苦手どころかむしろ得意な分野 手続き型だと逆に、同じ処理があちこちに分散する傾向があるから、些細な修正が思ったよりも広範囲で大規模な修正になることが少なくないね つうかまるでOOPではif文を全く使わないように聞こえるのが気になったな クラス内では普通に使うぞ
992 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 21:08:30.80 ID:HqNyhY75.net] >>966 コードメトリクスと言って割とポピュラーな分野だよ
993 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 21:09:04.02 ID:iByWYmKo.net] >>933 向上心の無い「おじいちゃん」達とは程々に付き合うのが吉
994 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 21:17:01.86 ID:YYEMhcfN.net] >>963 いや、変更に弱いじゃん クラスぶっ壊して組み直さなきゃいけないんだし
995 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 21:22:17.04 ID:HqNyhY75.net] >>973 クラスをぶっ壊すほどの変更ならなおさらだよ 今あるモデルが根本的におかしいという現状把握 新しいモデルへ推移するための道筋 オブジェクト指向ならこれがはっきり見える クラスがなかったらモデルもないのだから現状が正しいのかそうじゃないかの判断すらおぼつかない 新しいモデルもないからどうやって変更すればいいのかもぼんやりとしか見えない 現在地点も目標地点もよく認識できないんじゃこわくて動けんよ
996 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 21:30:04.52 ID:Y3l0yz+N.net] 今時こんなにオブジェクト指向を信仰してるやつも珍しいな
997 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 21:33:07.91 ID:VaR9+Vl3.net] 大昔はCだけでゴリゴリ書いてたんだけどなー
998 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 21:34:32.41 ID:YYEMhcfN.net] >>974 だってお前1メンバ変数1クラスの勢いでクラス作るじゃん 人件費なんてクラスにしねーだろ こんなことしてっからちょっと変更があったらもうクラス図書き直しじゃん 設計が悪いよ
999 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 21:43:02.15 ID:giWx2kxQ.net] >>935 > 素朴な疑問ですがプロパティが大量に並ぶのとクラスが大量に並ぶのはどちらが好まれるのでしょうか そもそもプロパティとクラスって全然違うものだからどっちがいいとかはない クラスとインスタンスの違いがわかってない奴の戯れ言だからそう言うのは無視でいいよ > なおデリケートはイベントリスナとして使われてる程度の理解しかなく使いどころがピンと来ていません デリケートは一部の処理を動的に変えたりしたい時や外部から必要な処理を与えたい時に使うものだから必要になるまで覚える必要はない >>865 とかは自称上級者のうぬぼれテクなので真似しなくていい > 精進します 今のままでいいから頑張ってね
1000 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 21:48:19.96 ID:giWx2kxQ.net] >>976 アセンブラガー って話になるからほどほどにしときなよ
1001 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 21:52:35.91 ID:Q/EvmKMe.net] >>978 いろいろ語るに落ちてるね。 こういう人ってARGBの組み合わせの数だけクラス作るのかなw 処理もデータと同じで変数に代入して柔軟に交換可能であるなんて 発想はCの時代からあるし、高度なテクニックでも何でもないけど、 この程度のことを理解してないから「自称上級者のうぬぼれテク」に見えちゃうんだろうね
1002 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 21:56:22.73 ID:HqNyhY75.net] >>977 そりゃするよ 1変数のクラスは超重要なものだ オブジェクト指向では絶対に欠かせないツール 1つの文字列変数を持った注文番号クラス 1つの数値変数を持った金額クラス 1つの日付変更を持った出荷予定日クラス などなど 僕たちがプログラムで扱うものはただの文字列や数値や日付じゃあないんだ そこをしっかりと認識してほしいね
1003 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 21:56:29.51 ID:VaR9+Vl3.net] char *p; p = 0; *p = 0;
1004 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 22:01:14.12 ID:h7wsiOnr.net] >>982 次スレよろ
1005 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 22:01:31.28 ID:Mqu0aN7Q.net] この上っ面だけのの現実とリンクしてない理解 主張をいうだけで論拠もへったくれもない態度 雑談スレで暴れてたやつか
1006 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 22:05:56.61 ID:h7wsiOnr.net] これでいいっぽいな ふらっと C#,C♯,C#(初心者用) Part134 mevius.5ch.net/test/read.cgi/tech/1511951038/
1007 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 23:30:24.92 ID:oDUVChgl.net] 大学入試程度の数学をよく理解できない人がいるのと同じように オブジェクト指向を理解できない人ってどうしてもいるわけで それはしかたがないことなのかもしれないね
1008 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 23:38:52.52 ID:HqNyhY75.net] >>984 現実から目をそらさず複雑性に立ち向かうためにOOPを使う 現実とリンクしてないなのはプリミティブタイプ
1009 名前:を使う人たちだな [] [ここ壊れてます]
1010 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 23:52:44.06 ID:+ZpzqfgR.net] ワードサラダとあんまり変わらんな
1011 名前:デフォルトの名無しさん mailto:sage [2017/12/22(金) 00:24:55.67 ID:sp7ymsVp.net] >>980 > こういう人ってARGBの組み合わせの数だけクラス作るのかなw 意味わからん > この程度のことを理解してないから「自称上級者のうぬぼれテク」に見えちゃうんだろうね いや、必要もないのにドヤッてるから自称上級者とかバカにされてるだけ w
1012 名前:デフォルトの名無しさん mailto:sage [2017/12/22(金) 00:30:23.73 ID:SpQ4O+yi.net] >>989 1を聞いて10を知る人間もいれば、0にしかならない君みたいな人もいるわけで。 君はデータと処理はまったく別物だと思い込んでるから「意味わからん」わけ
1013 名前:デフォルトの名無しさん mailto:sage [2017/12/22(金) 00:37:51.40 ID:H1xj7tcO.net] いや誰が見ても意味不明
1014 名前:デフォルトの名無しさん mailto:sage [2017/12/22(金) 00:46:44.98 ID:mdOvvC+t.net] 何で争ってるのかもわからないし 間に読み飛ばされた人がいたらかわいそうだな
1015 名前:デフォルトの名無しさん mailto:sage [2017/12/22(金) 01:07:14.36 ID:sp7ymsVp.net] 質問者は理解してるっぽいから大丈夫でしょ 一部の自称上級者様が頓珍漢なネタでドヤッてるだけ w
1016 名前:デフォルトの名無しさん mailto:sage [2017/12/22(金) 01:29:42.45 ID:agnD/jLF.net] >>981 馬鹿みたい 構造も変わってないのに クラス図を変更しなきゃいけない お前の組み方は無駄に変更に弱えーんだよ ただ、それだけじゃん
1017 名前:デフォルトの名無しさん mailto:sage [2017/12/22(金) 01:33:36.39 ID:agnD/jLF.net] なんかメリットあるのかよと 単にプログラム記述上のお前の勝手な都合だけだろw
1018 名前:デフォルトの名無しさん mailto:sage [2017/12/22(金) 01:35:03.42 ID:YbdIgSB6.net] classを使うメリットって入出力を共通化する為って意識が強かったんだけど違うのかしら・・・ 整理してないところで追加項目を一つ増やしたら他の関係ない場所にも追加項目を処理する機構を作らないといけなくなるみたいな
1019 名前:デフォルトの名無しさん mailto:sage [2017/12/22(金) 01:38:59.75 ID:YbdIgSB6.net] >>996 入力は追加するけど出力や処理はそのままでも動きますよって変更に対して修正しないと動かなくなるようなのを防ぐ意味合いで考えてた 追加した入力に対してはメソッド新しく作ったりして対応や既存のところに付け足すとか色々やり方はあるだろうけど
1020 名前:デフォルトの名無しさん mailto:sage [2017/12/22(金) 01:52:53.80 ID:SpQ4O+yi.net] 何度も言うけど、要件の詳細が明らかになってないから断定はできないが、 普通費目って聞いたら費目ごとに異なる処理(具体的な価格を計算するメソッド?) はせいぜい1つ程度だろうと想像する。 たった一つのメソッドの動作を上書きするために派生させるなんて愚の骨頂。 アホかと。ありえない。 そんなのOOPでも多態でも何でもないよ
1021 名前:デフォルトの名無しさん mailto:sage [2017/12/22(金) 02:30:17.88 ID:FmyxrnYE.net] うめ
1022 名前:デフォルトの名無しさん mailto:sage [2017/12/22(金) 02:30:29.41 ID:FmyxrnYE.net] うめ
1023 名前:デフォルトの名無しさん mailto:sage [2017/12/22(金) 02:30:41.94 ID:FmyxrnYE.net] うめ
1024 名前:デフォルトの名無しさん mailto:sage [2017/12/22(金) 02:30:49.17 ID:FmyxrnYE.net] うめ
1025 名前:1001 [Over 1000 Thread.net] このスレッドは1000を超えました。 新しいスレッドを立ててください。 life time: 23日 5時間 0分 1秒
1026 名前:過去ログ ★ [[過去ログ]] ■ このスレッドは過去ログ倉庫に格納されています