C#
続くといいながら、パワポは飽きた&もういいかな的で終了です。 代わりにまたこれ!Effective C# 4.0作者: ビル・ワグナー,鈴木幸敏出版社/メーカー: 翔泳社発売日: 2011/02/16メディア: 大型本購入: 12人 クリック: 73回この商品を含むブログ (13件) を見…
Firstメソッドにはパラメータありとなしがあって、ありを使えばWhere(条件).First-->First(条件)でいける FirstOrDefaultを使えば、存在有無とデータ取得の両方を実現できる。Where()+First()-->FirstOrDefault() SortしてFirstすれば最小値が取れるが、これ…
射影・・・・・Enumerable.Range(1, 9).Select(c=>c*2) 射影*2・・・・Enumerable.Range(1, 9).SelectMany( (l)=>Enumerable.Range(1, 9), (l, r)=> l +"x"+r+"="(l*r)) SkipWhileとWhereの大きな違いは、SkipWhileはスタート位置がスキップされるだけで、そ…
さて、ショートコーディングも読み終えたんで、積ん読より以下を今日からやってみます。【省エネ対応】 C#プログラムの効率的な書き方作者: 川俣晶出版社/メーカー: 技術評論社発売日: 2012/01/19メディア: 単行本(ソフトカバー)購入: 1人 クリック: 9回こ…
読むとやるとでは、大きな違い。いざ書いてみると書けない。 Encoding.GetEncoding("Shift_JIS")も日本ロケールでの読み込み限定とすれば、Encoding.Defaultにできる versionとれ。FileVersionInfo.GetVersionInfo( Assembly.GetExecutingAssembly().Locatio…
もう金曜ですか・・・。 Parallel.For( startIndex, EndIndex, action )による計算はコア数により処理分散される Dictonaryクラスはスレッドセーフではないので、スレッド処理させたいならConcurrentDirectoryクラスを使う ConcurrentDirectoryクラスはスレ…
今日は消えないことを祈りつつ・・・ ディレクトリ内の全ファイルのうち、一つだけ参照するならDirectory.EnumerateFiles( path ).First()・・・パフォーマンスたかす 同じことはディレクトリでも言えるけど、そんなサブフォルダ数の多いフォルダも少ないDir…
消えてもた・・・ もう一回書くのって凹む。 あー凹む。やっぱ[確認する]押す前にクリップボードいれとかなあかんね。 stringで"123456"とか入れてるやつを、foreach( var s in strHoge )でとれたりする FilePathを組み立てる際、"\"を走査するくらいなら、P…
string変数にモノが入っている状況でnullとか空とかチェックする場合、string.IsNullOrWhiteSpace(str)で一発で済ます 上記にてwhiteSpaceはオKな場合はstring.IsNullOrEmpty(str)で済ます Splitしたいとき、デミリタ指定の次のパラメータでStringSplitOptio…
さて本日もまいりますよwww LINQ中の列挙からToDictonary()でDictonary型のインスタンスを作成できる。 2つの配列夫々に対して加算とかの処理したい場合、配列1.Zip(配列2, (x,y)=>x+y)とかできる args[]はEnviroment.GetCommandLineArgs().Skip(1)で列挙 Di…
さて本日も勉強は続く。 配列の要素毎でのループ処理をしたい場合、特定のループ回数をスキップしたければs.SkipWhile((x,i)=>i==n) 数値配列の合計とかもループでゴリゴリ加算せず、int[] x = {1, 2, 3}; x.sum();でスッキリ(条件いるならWhile(...).Sum())…
TimeSpanがあるなら、Total系のプロパティ(TotalDaysとか)で見る 今月末の日付が知りたいなら、今日の月初をまず求め、AddMonth(1).AddDays(-1)する int[] arのような配列の再配列は、 ar = ar.Where((x)=>(x>0)).ToArray () で解決 Dictionary型とかでkeyが…
C#ショートコードプログラミング (MSDNプログラミングシリーズ)作者: 川俣晶出版社/メーカー: 日経BP社発売日: 2011/01/13メディア: 単行本購入: 2人 クリック: 72回この商品を含むブログ (12件) を見る・・・というか・・・入手したのって、いつだっけ的な…
再認識させられました。 親クラスはオブジェクトがどのようなものであるかを表現し、インターフェイスはそれがどのような挙動をするかを表現する。 どんな機能があるのかは、どんなインターフェイスを実装したクラスかでわかるっちゅーこと。 Java屋じゃない…
わかってたつもりでしたが、こんなとこでもという話。 Console.Write( "{0}", 5 ); ええ・・・これ?って感じでした。 Console.Write( "{0}", 5.ToString() ); これでおkです。確かに・・・そうですよね。
というのも、デフォルトコンストラクタだけなら良いのですが、やはりオーバーロードにより、複数個のコンストラクタが実装されることもあるかと思います。 このような状況下において、全てのコンストラクタで初期化が正しく行われないことを懸念し、コンスト…
forやwhile等でぐるぐる回すしかないなら別ですが、コレクションを対象としているなら、foreachで処理すると、いいことが色々ある。ってゆーかコレクションに対してはforeach以外推奨されないらしい。まずパフォーマンス。 int[] nums = { 2, 4, 6 }; に対し…
この間、改訂(C#4.0として)されて出版されましたが、それの前のを去年の冬に買ってまして、漸く読む状況となり読んでます。Effective C#作者: ビルワグナー,Bill Wagner,鈴木幸敏出版社/メーカー: 翔泳社発売日: 2009/12/17メディア: 大型本購入: 5人 クリッ…
LINQ メソッド形式のFirstは見つからなかったら例外を投げるので、FirstOrDefaultがベタ
属性 [Conditonal("TEST")]:#if TESTより簡単&コンパイラも手助け [Obsolete]:互換のために残しているのをWarning WorkerThread 追加:ThreadPool.QueueUserWorkItem( func, param ); 数増:ThreadPool.GetMinThread( out num, out io );ThreadPool.SetMi…
この間、図書館で以下を見つけて読んでます。プロフェッショナルマスター VISUAL C# 2010 (MSDNプログラミングシリーズ)作者: 川俣晶出版社/メーカー: 日経BP社発売日: 2010/07/22メディア: 単行本購入: 1人 クリック: 44回この商品を含むブログ (6件) を見…
foreach( var x in 列挙オブジェクト)を、System.Array.ForEach( 列挙オブジェクト, 繰り返し用メソッド)で。繰り返し用メソッドはラムダ式で実現できる。 メリットはたくさんありますが、みんなが使うソースではせんほうがいいでしょう。
実務がC++なんでC#は意識しないとどんどん忘れちゃって。 今日から、復活しようと有給とって復習してきました。・・・復習って集中力がかなり欠けるということが分かった。で読み始めるのはこれから 1年ぐらい前に読んだんですが、お気に入りです。で再確認…
System.Configuration.Installです。 これ・・・使ってんですかね。 一般的に。どうもVSについてる的なInstallerって使われていないような気がします。 →どうなんでしょう? 13.MCTS 70-536取得 - System.Configuration.Install.ppt
System.Configuration、これも勉強するまで知らなかった、いや忘れてました。実際に設定が必要なアプリを携わらないと、モノにできそうにありませんが、以外と奥深いことできたりします。 12.MCTS 70-536取得 - System.Configuration.ppt
今回はAppDomainですが、70-536取得に向けた勉強で初めて知りました。 必要となるんだろうか・・・実務以外では用途は少なそう。 11.MCTS 70-536取得 - System.AppDomain.ppt
サービスです。 全然マスターできてません。 これはサービスが必要なアプリ開発して、マスターするしかないんでしょう。 MCTS 70-536取得 - WindowsService.ppt
Threadです。 大きいから見難いですね。 ケースバイケースで使い分けるんでしょうか・・・ MCTS 70-536取得 - System.Thread.ppt
次は『何ができるか』でおなじみのInterfaceです。 有名どころぐらいしかありません。 MCTS 70-536取得 - System - Interface.ppt
次は例外です。難しいですよね。 ApplicationExceptionはあかんとか話題になりましたが、 詳細には書いてないので、ヒットしていません。 MCTS 70-536取得 - System - 例外.ppt