.NET Clips - C#のタグがつけられたエントリー
1
CLIPS

C#で書かれたパーサージェネレーターSpracheを使ってみた - tuedaの日記

1976日前に更新 aoki1210aoki1210 1984日前に登録
2012年04月23日 GMT 2012年04月15日 GMT
■[C#] C#で書かれたパーサージェネレーターSpracheを使ってみた この間見つけたSpracheを試してみた。 SpracheはBison/Flexなどと同じ自分だけのDSLを作るためのパーサーを作るライブラリ。 この手のパーサーを1から書くのは非常に手間暇かかる作業で通常はやるべきではない。 (ただし本職のコンパイラ書きを除く) SpracheはC#のみで書かれC#自体の強力さと相まって非常にシンプルにDSLをパースするクラスを作成できる。 ここでは試しにkey = value形式で書かれたファイルをパースする。 あまりにつまらない例だがゲームのコンフィグファイルとかこれで十分なことが多い。 ↓パースしたい文字列。 speed = 300 health = 100 weapon = 20 ↓パース後のクラス public class Property { public string key {get; private set;} public int value { get; private set; } ... (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 65 | コメント | | ソースサイト: d.hatena.ne.jp
タグ: C#
1
CLIPS

マージソート - Gushwell's C# Programming Page

1976日前に更新 aoki1210aoki1210 1984日前に登録
2012年04月23日 GMT 2012年04月15日 GMT
整列してある2つの配列を合併(マージ)して、整列された配列を作るのは比較的簡単です。 マージソートは、これを利用して、配列をソートする手法です。 簡単にその手順を示します。 1. データを2分割する。 2. 各々をソートする (再帰的にこの手順を適用する) 3. 2つのソート済みのデータ列をマージする。 手順2で、再帰的にこの処理を適用するわけですが、分割した後の要素が 1個ならば、 整列済みとなるので、再帰的な適用は行いません。 このマージソートは、非常に速度が安定しており、最悪計算量が、O(n log n)です。 整列データに対し、インデックスを指定してランダムにアクセスする必要がないのが特徴です。 そのため、ここでは、IEnumerable& (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 17 | コメント | | ソースサイト: gushwell.ifdef.jp
タグ: C#
1
CLIPS

Null非許容 « ++C++; // 未確認飛行 C ブログ

1983日前に更新 aoki1210aoki1210 1988日前に登録
2012年04月16日 GMT 2012年04月11日 GMT
先週、「C#にもNull非許容な型が欲しい」という話をされたものの「うん、欲しいね」としか返せなかったり。要望は昔からあるけども、実際入れようと思うと結構大変。という話、説明しておいた方がいいんだろうなぁと思ったので、ブログにしてみることに。 先に結論の要旨だけ書くと、以下のような感じ。C#だけで完結する問題じゃなく、.NETレベルで対応するのは今からだときついCode Contracts使って契約プログラミングするのがいいよ 以下詳細。公式の見解 Anders Hejlsberg も、「もしもの話」として、1からの再設計が許されるなら C#/.NET をどうしたいかという質問に対して「Null 許容性の見直し」を挙げています。 一時期、結構頻繁にそういっていたと思います。少し検索して出てきたのでいうと、以下の Q&A インタビューの、1:00:00 からのくだり。Anders Hejlsberg: Questions and Answers1:00:00 aL -> What features would you like to remove from C# as it is today? ... (詳細)
カテゴリー: アーキテクチャ/デザイン/OSS | クリック数: 4 | コメント | | ソースサイト: ufcpp.wordpress.com
タグ: C#
1
CLIPS

neue cc - Visual Studio 11の非同期(”C#, ASP.NET, Web Forms, MVC”)

2004日前に更新 aoki1210aoki1210 2011日前に登録
2012年03月26日 GMT 2012年03月19日 GMT
C# - 12.03/18 世の中ひどぅーきひどぅーきと騒ぐばかりで、猫も杓子もNode.js。でもですね、【デブサミ2012】16-A-5 レポート ソーシャルアプリケーションにおけるNode.jsの活かし方(1/2):CodeZineなんかを見ても、そこで独自に作りこんでる例外処理だの非同期フロー管理だのは、そりゃあ必要ですよね、まずはそこから始めるのは当然ですよね、と思いつつC#は最初から備えているんですよね。むしろ色々とC#のほうが、とか思ったりするわけですが(勿論Node.jsのほうがGoodなものもありますが)、こんなところで嘆いていても始まらないのでC#流の非同期の活かし方を見ていきましょうか。HttpTaskAsyncHandler ASP.NETの非同期ハンドラはIHttpAsyncHandlerなわけですが、VS11ではそれをTask(つまりC# 5.0 async/await)で扱いやすくした基底クラス、HttpTaskAsyncHandlerが用意されています。例えばTwitterの検索を叩いて返すだけどのものは以下のようになります。publicclass Twitte... (詳細)
カテゴリー: アーキテクチャ/デザイン/OSS | クリック数: 13 | コメント | | ソースサイト: neue.cc
タグ: C#
1
CLIPS

vallog: C#でREPL(Windows)

2013日前に更新 aoki1210aoki1210 2022日前に登録
2012年03月17日 GMT 2012年03月08日 GMT
string.Formatのフォーマット指定子全部覚えてます?Enumerable.Range(0, 10)の結果が0から10までなのか0から9までなのか覚えてます?僕は覚えてないのでググるか、試しに書いてみます。consoleプロジェクト作って試したり、今書いてるソースに応急的に書き足して試したりするのって面倒じゃないですか?みんなどうやってんの?ConsoleApplication58.csとか作ってやってんの?REPL欲しくないですか? vallog: csharp repl なのでvpsにmono入れてsshでcsharpを使って試してました。が、monoのwindows向けのバイナリ入れればいい話でした。アホ過ぎた。csharp.bat叩けばcmdでreplが立ち上がるのでお手軽。 (詳細)
カテゴリー: ツール(VisualStudio/Expression) | クリック数: 8 | コメント | | ソースサイト: valvallow.blogspot.com
タグ: C#
1
CLIPS

Eric Lippertのクイズ - 猫とC#について書くmatarilloの雑記

2025日前に更新 aoki1210aoki1210 2032日前に登録
2012年03月05日 GMT 2012年02月27日 GMT
Eric Lippertのクイズ C# | A Simple Puzzle - Fabulous Adventures In Coding - Site Home - MSDN Blogs が面白かった。 度数分布表を作成するメソッドのバグを見つけられるか?というもの。 一応、度数分布表を説明しておくと、こういうやつね。階級度数 (人)160cm未満2160~164cm4164~168cm22168~172cm17172~176cm8176~180cm6180cm以上1 ただし今回のメソッドでは、最小値未満のデータや最大値以上のデータは無視して、こんな感じの表を得るという仕様。階級度数 (人)160~164cm4164~168cm22168~172cm17172~176cm8176~180cm6/// /// /// (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 6 | コメント | | ソースサイト: d.hatena.ne.jp
タグ: C#
1
CLIPS

[C#] VB6.0風にC#でデフォルトプロパティを作る | Moonmile Solutions Blog

2031日前に更新 aoki1210aoki1210 2036日前に登録
2012年02月28日 GMT 2012年02月23日 GMT
← [のだめ開発] 指揮者 coductor の役割とは投稿日:作成者:masudatweet VB6.0の頃は、デフォルトプロパティというものがあって、 http://akihitoyamashiro.com/VBA/CreateDefaultProperty.htm なところにあるように、「Attribute Value.VBUserMemId = 0 」という属性(みたいなもの)を設定して、オブジェクトのプロパティを決めていました。まあ、大ざっぱに言えば、「obj.Item(10)」のように配列にアクセスするときに、「obj(10)」のように、Itemメソッドを省略できるという技です。普通は Item というメソッドが使われるのですが、このメソッド名は「Attribute Value.VBUserMemId = 0 」を付けメソッド(プロパティ)の場合は、これが省略できるという仕組みです。 で、これを C#, VB ならばどうやるか、という話を少し。 private void button1_Click(object sender, EventArgs e) { Defau... (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 8 | コメント | | ソースサイト: www.moonmile.net
タグ: C#
1
CLIPS

関数的なMapReduceによる問題解決 via WEB+DB PRESS vol67 - かずきのBlog@Hatena

2032日前に更新 aoki1210aoki1210 2036日前に登録
2012年02月27日 GMT 2012年02月23日 GMT
関数的なMapReduceによる問題解決 via WEB+DB PRESS vol67 C#, LINQ WEB+DB PRESS vol67が家に届いたのでぼちぼち読んでます。特集の所で「関数的なMapReduceによる問題解決」ということでHaskellを使ってMapとReduceで問題を解いてみようというのがありました。コードはこんな感じでした。 let ret1 = zip [0..] [10, 20, 30, 40, 50] let mul (i, x) = x * i let ret2 = map mul ret1 foldl (+) 0 ret2 これで結果が400になるという感じですね。ということでさくっとC#でも書いてみました。無限リスト作るのにGenerateメソッドがほしかったのでInteractive ExtensionsをNuGetで参照に追加しています。namespace CSSample { using System; using System.Linq; class Program ... (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 5 | コメント | | ソースサイト: d.hatena.ne.jp
タグ: C#, Linq
2
CLIPS

neue cc - とあるRoslynではないC# Parser、NRefactoryの紹介

2036日前に更新 moonmilemoonmile 2036日前に登録
2012年02月23日 GMT 2012年02月23日 GMT
C# - 12.02/23 ロッズリーン、はっじまらないよ~。というわけでMicrosoft “Roslyn” CTP、Compiler as a Service。NuGet - Roslynでも手に入るので、サンプル類やC# Interactiveとかはなしで、とりあえずScriptingやCompilerを触ってみたい、ということなら、お手軽です。しかし、まあ未実装も少なくなく、まだまだ先は長そうな雰囲気ではある。今すぐ欲しいのに!切実にC# Parserが!というわけで、今日はその良き代替となる(かもしれない)NRefactoryを紹介します。 NRefactoryはNuGet - NRefactoryからも入ります。verは5.0.0.4、「This is an alpha release. Expect bugs and breaking changes in the future.」とのことで、こちらもまだまだこれからのよう(MonoDevelopの新しいC#エディタで使われる予定、だそうです)。とりあえずNuGetで参照してみませう。 参照するとMono.Cecilが入ったり名前... (詳細)
カテゴリー: Web(ASP.NET/SL/IIS/IE) | クリック数: 11 | コメント | | ソースサイト: neue.cc
タグ: C#
1
CLIPS

Ctrl-Cを押すまでコンソールアプリを終了させない方法 【▲→川俣晶の縁側→ソフトウェア→技術雑記】

2038日前に更新 aoki1210aoki1210 2042日前に登録
2012年02月21日 GMT 2012年02月17日 GMT
▲→川俣晶の縁側→ソフトウェア→技術雑記total 79 count Written By: 川俣 晶  コンソールアプリ終了時、結果を見る前にウィンドウが閉じることを回避するために、何かするまで止まっているようにする方法はいろいろありますが。  さるサンプルソースで見た方法。  この手もあったのか。 Console.WriteLine("Press Ctrl-C to terminate..."); using (ManualResetEvent manualResetEvent = new ManualResetEvent(false)) {     manualResetEvent.WaitOne(); }Facebookキーワード【 ▲→川俣晶の縁側→ソフトウェア→技術雑記】【技術雑記】の次のコンテンツ(ありません)【技術雑記】の前のコンテンツ完璧を目指すよりまず終わらせろ3days 61 count total 418 count【技術雑記】のコンテンツ全リスト【技術雑記】の表紙このコンテンツを書いた川俣 晶へメッセージを送る ... (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 9 | コメント | | ソースサイト: mag.autumn.org
タグ: C#
1
CLIPS

素因数分解小町:Gushwell's C# Dev Notes

2038日前に更新 aoki1210aoki1210 2044日前に登録
2012年02月21日 GMT 2012年02月15日 GMT
WebサイトGushwell's C# Programming page に、「素因数分解した結果が小町になる数を求める」を掲載しました。 これは、ある整数 N を素因数分解したときに、因数が1-9をひとつずつ使っている Nを求める、 というものです。いくつかの制約を加えて、C#で解いています。 世の中に小町数マニアのような人がいるのかどうかわかりませんが、小町数に関するこの手の 数学パズル問題はいろいろあります。 このGushwell"s C# Programing Page のプログラム小品集でもこれまでに、この問題も含めて 7つ取り上げています。 こんな面白い小町数問題があるよ、という方がいれば、是非お教えください。 (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 10 | コメント | | ソースサイト: gushwell.ldblog.jp
タグ: C#
1
CLIPS

Blogインデックス - Gushwell's C# Programming Page

2174日前に更新 aoki1210aoki1210 2178日前に登録
2011年10月08日 GMT 2011年10月04日 GMT
ブログ Gushwell's C# Dev Notes にアップした記事の中から、役に立つと思われる(Gushwellがかってに思っている)記事へのリンク集です。もともと自分の備忘録的な意味合いがあるブログの記事であるため、玉石混交かもしれませんが、なにかのお役に立てればと思います。(現在、作成途中) (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 8 | コメント | | ソースサイト: gushwell.ifdef.jp
タグ: C#, まとめ
1
CLIPS

C#と諸々 DDD のフレームワークを CodePlex で公開しました

2290日前に更新 aoki1210aoki1210 2299日前に登録
2011年06月14日 GMT 2011年06月05日 GMT
先日公開した DDD サンプルアプリのアプリケーションアーキテクチャを、フレームワークとして CodePlex で公開しました。 DDDProjector - Home フレームワークと言っても、クラスライブラリとしてではなく、C# ソリューション (を作成するツール) として提供します。なので、フレームワークのソースコードを直接カスタマイズすることが可能です。 サンプルアプリでは... (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 18 | コメント | | ソースサイト: csharper.blog57.fc2.com
タグ: C#, DDD
1
CLIPS

neue cc - Tester-DoerパターンとCode Contracts

2330日前に更新 aoki1210aoki1210 2339日前に登録
2011年05月05日 GMT 2011年04月26日 GMT
僕と契約して安全性の高いソフトウェアを作ってよ!というだけじゃ、何か、弱い。動機付けに足りない。という、分かったような分からないようなCode Contracts。困ったところは、で、何が嬉しいの?にたいする積極的具体的な動機付けを提供しにくいということ。契約をしっかり行うことで、強固なソフトウェアが設計出来ます。うーん、理念は分かりますけど実用的に便利ー?if hoge==null throw に毛が生えた程度のものだったら、ちょっとよくわからない。// こういうコード見るともう目も当てられなくて、画面の半分が引数チェックで埋まってるよ!publicvoid Hoge(string arg1, string arg2, string arg3){if(arg1 ==null){thrownew ArgumentNullException("arg1"); }if(arg1.Length== 0){thrownew ArgumentException("arg1"); }if(arg2 ==null){thrownew ArgumentNullExcept... (詳細)
カテゴリー: アーキテクチャ/デザイン/OSS | クリック数: 18 | コメント | | ソースサイト: neue.cc
タグ: C#
1
CLIPS

Ito Blog » メモリリークのまとめ(Dispose Finalize パターンと応用)

2342日前に更新 aoki1210aoki1210 2349日前に登録
2011年04月23日 GMT 2011年04月16日 GMT
前回は、メモリに関する基本的になことをまとめました。 今回は、Dispose Finalize パターンについてと、その応用についてです。 Dispose Finalize パターンとは、Finalize メソッドを利用して、Dispose メソッドを呼び出すというものです。 以前、通常のインスタンスは、マネージヒープメモリに格納され、どこからも参照されていないインスタンスは GC によって自動的に回収されることについてまとめました。 Finalize メソッドは... (詳細)
カテゴリー: アーキテクチャ/デザイン/OSS | クリック数: 40 | コメント | | ソースサイト: blogs.bitlan.net
タグ: C#
1
CLIPS

Linq to Twitter を試してみた。:ビジネスをデザインするブログ:ITmedia オルタナティブ・ブログ

2346日前に更新 aoki1210aoki1210 2355日前に登録
2011年04月19日 GMT 2011年04月10日 GMT
Botを開発する際、Twitter API の利用で少々苦労したのですが、その終盤において、Linq to Twitter なるものがあるのを知り、ショックを受けたのですが、便利そうなのでメモ。 まず、Twitter API を利用するためには、認証のためのTokenなどを取得する必要があります。以前はBasic認証が使えたのですが、今はOAuthのみのようですね。 OAuthをC#でやるのはいろいろ大変だったのですが、そのあたりも、全部Linq to Twitter がやってくるので、それだけでも利用価値があります。 が、そもそも、... (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 89 | コメント | | ソースサイト: blogs.itmedia.co.jp
タグ: C#, Linq, Twitter
1
CLIPS

C#のコード品質を上げるフリーツール8本 - ITは芸術だ

2349日前に更新 aoki1210aoki1210 2356日前に登録
2011年04月16日 GMT 2011年04月09日 GMT
読みにくいコードや複雑なコードをメンテナンスするのってイヤですよね。 コードの品質を上げる方法の一つにコードレビューがありますが、すべてのソースコードを人力でチェックしていくのは大変ですし、レビュアーのスキルや好みにも大きく依存してしまいます。 そういう場合はツールを使って自動化するのが有効です。 ツールを使えばあっという間に完了しますし、実施者のスキルや好みに左右されることもありません。 しかし、あまりお金がかかるツールだと、ちょっと気軽に導入しにくいです。 そこで今回はC#のコード品質向上に有効なフリーツールを紹介します。 実際のプロジェクトで使用したことがあるものばかりなので、どれも「使えるツール」だと思いますよ。 ところで、ツールを紹介する前にTipsと注意点を簡単に挙げておきましょう。 ツールを利用する際のTips自分の書いたコードのみを対象とし、ツールが作成したコードは対象外にしましょう。Projectやネームスペースを別にして、自分の書いたコードとツールが自動生成したコードを簡単に識別できるようにしてお... (詳細)
カテゴリー: アジャイル/チーム/TDD | クリック数: 58 | コメント | | ソースサイト: d.hatena.ne.jp
タグ: C#
1
CLIPS

Facebook C# SDK を使ってプログラミング–Part 1 « 原水商店

2347日前に更新 aoki1210aoki1210 2356日前に登録
2011年04月18日 GMT 2011年04月09日 GMT
NuGet を 2 回に分けて紹介をしました。そして 2 回目にインストールしたのは、実は Facebook C# SDK として提供されているライブラリで、 http://facebooksdk.codeplex.com がプロジェクトのサイトになります。このまま一気に Facebook のアプリケーションとしての Hello World 的なものを作っていきます。 Part 1 ということで Facebook サイト側の設定を紹介します。というのも、Facebook アプリを作るためには、Facebook に開発者登録をする必要があります。今回は apps.facebook.com の配下で動くアプリケーションを作る形です。初回は本人認証ということで、電話番号認証 or クレジットカード認証が求められるので、どちらかで完了してください。http://www.facebook.com/developers/createapp.php アプリケーション名には今回作るアプリケーションの名前を入れてください。アプリケーションを作るためには当然「同意」しないといけません。 セキュリティチェックで表示... (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 19 | コメント | | ソースサイト: haramizu.jp
タグ: C#, Facebook
2
CLIPS

ドラゴン曲線 - Gushwell's C# Programming Page

2394日前に更新 gushwellgushwell 2406日前に登録
2011年03月02日 GMT 2011年02月18日 GMT
フラクタル図形の一種であるドラゴン曲線です。 どんな図形なのかは、以下の Solve ボタンを押してみてください。 大抵の人は、「ああ、見たことある」と思う有名な図形です。 以下、ソースコードの簡単な説明です。 DragonCurve クラスが、ドラゴン曲線を描くクラスです。SilverlightのWriteableBitmapに依存していますが、依存しているのは、線を引く部分だけなので、そこを書きかえれば、他の環境でも動作するクラスになると思います。 DragonCurve クラスには、Execute メソッドがあり、これに、ビットマップと 世代数 generationを入れることで、 ドラゴン曲線をビットマップに描き、ビットマップを返します。 Executeメソッドは、描画の基準となる2つの点を求め、Drawメソッドを呼び出し、ドラゴン曲線を描いていきます。 Drawメソッドは、再帰メソッドになっていて、 引数 generationは、再帰メソッドを呼び出す深さを表し... (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 37 | コメント | | ソースサイト: gushwell.ifdef.jp
タグ: C#, Silverlight
1
CLIPS

MVC、C#、SQL Serverを利用した最新「高速」データベース開発法 - データベース新基礎知識:ITpro

2427日前に更新 aoki1210aoki1210 2434日前に登録
2011年01月28日 GMT 2011年01月21日 GMT
データベースは企業システム内に閉じたデータを統合管理していればいい、という時代ではないのかもしれません。今回は、マイクロソフトの最新手法「ASP.NET MVC」を使ってみます。Webデータベースシステムの短納期開発が狙えます。  データベースシステムは様々な形態のものが作られ、使われてきました。ファイル共有型の小規模システム、より本格的なデータベース管理システム(Database Management System、DBMS)を使ったクライアント/サーバー型のシステム、そして21世紀に入って主流になってきたと言えるのが、Webデータベースシステムです。 (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 24 | コメント | | ソースサイト: itpro.nikkeibp.co.jp
タグ: ASP.NET, C#