タグ

2012年10月16日のブックマーク (27件)

  • [C#] Enum と拡張メソッド <3 - 2008-01-24 - 当面C#と.NETな記録

    Enum と拡張メソッドって相性がいいですね。MSDN ライブラリでも取り上げられてますけど。 enum MyEnum { A, B } と定義した enum を文字列化するときに日語にしたいことがよくあって、static な関数を書いてたけど、拡張メソッドでちょっとだけきれいになりますね。 using System; class Program { static void Main() { var e = MyEnum.A; Console.WriteLine( e.ToString() ); Console.WriteLine( e.ToStringExt() ); Console.ReadKey(); } } public enum MyEnum { A, B } public static class MyEnumExt { public static string ToStri

    [C#] Enum と拡張メソッド <3 - 2008-01-24 - 当面C#と.NETな記録
    gin0606
    gin0606 2012/10/16
    "2008-01-24 - 当面C#と.NETな記録"
  • Android開発でのパフォーマンスTips(1) | Techfirm Android Lab

    googleは公式ドキュメントとしてAndroid開発におけるパフォーマンス設計のベストプラクティスを公開しています。 Designing for Performance | Android Developers どんなに優れたUIであってもパフォーマンスの悪いアプリはユーザにとって使いにくいものになってしまいます。 アプリのパフォーマンスチューニングは重要です。 今回は公式ドキュメントをベースにパフォーマンス設計のベストプラクティスのご紹介です。 Javaの世界で当たり前だったものが、Androidの世界では通用しないものも多々あるので覚えておきたいです。 基的な考え方 Androidで良好なパフォーマンスを得るための基的な考え方は 無駄な処理はしない 無駄なメモリは使わない ことです。以降に出てくる原則はすべてこれにのっとったものです。 オブジェクト生成は避ける オブジェク

    gin0606
    gin0606 2012/10/16
    "Android開発でのパフォーマンスTips(1) | Android Techfirm Lab"
  • Android開発でのパフォーマンスTips(2) | Techfirm Android Lab

    AndroidパフォーマンスTips、前回の続きです。 Android開発でのパフォーマンスTips(1) | Techfirm Android Lab 定数はファイナルで宣言する static int intVal = 42; static String strVal = "Hello, world!"; 上記のようにfinalなしで定数を定義した場合、intValを参照するときにフィールド走査が実行されるが、 static final int intVal = 42; static final String strVal = "Hello, world!"; このようにfinal宣言をするとintValは直接VMが参照できるようになるため、高速になる。 メソッドやクラスに関してはfinal宣言をつけてもコード保守の面では効果があるが、パフォーマンス面でのメリットはない。 また、ロー

    gin0606
    gin0606 2012/10/16
    >>実行時にはそれぞれの列挙子に対して、クラスの初期化が実行されてしまう。"Android開発でのパフォーマンスTips(2) | Android Techfirm Lab"
  • [Effective C#] 項目2 const よりも readonly を使用する | まさくらのブログ

    の違いについてです。(実際には、「項目1 アクセス可能なデータメンバの代わりに常にプロパティを使用すること」の通り、フィールドではなく、static プロパティを使う方がいいと思います) 両者ともよく似ていますが、const はコンパイル時にアセンブリに値が直接埋め込まれます。つまりは別アセンブリの定数を利用するのは危険だということです。 例えば、先ほどの例のコードが AssemblyA.dll に、次のコードが AssemblyB.dll にあるとします。 そして、MaxValue の値を 20 に書き換えて、AssemblyA.dll を差し替えます。 定数の場合は MaxValue の値は 15 として AssemblyB.dll に埋め込まれています。ですので、新しい AssmeblyA.dll を利用して、AssemblyB.dll を作り直さない限り、20 にはなりません。 変

    gin0606
    gin0606 2012/10/16
    "[Effective C#] 項目2 const よりも readonly を使用する | まさくらのブログ"
  • [Effective C#] 項目1 アクセス可能なデータメンバの代わりに常にプロパティを使用すること | まさくらのブログ

    なんか今日から Effective C# の復習でもやってみます。 日は「項目1 アクセス可能なデータメンバの代わりに常にプロパティを使用すること」です。 これはまあ、超当たり前というか。オブジェクト指向で大事なカプセル化というのは、外からは分からないように処理をはさめるようにすることでもあるので、フィールドを公開してしまうとこれができないというか。 でもまあ、スタイルとして、とりあえずフィールドで、必要が出てからリファクタを利用してプロパティに変更するとかいう手段もあります。 に変更するとかです。 この項目では、それじゃあかんよ! 常にプロパティを使うんだ! なんですよね。 理由は以下のようなものがあると述べられています。 Windows.Forms のデータバインド機構はプロパティのみに使える。 プロパティはインターフェイスのメンバ等としても宣言できる。 フィールドとプロパティにバイ

    gin0606
    gin0606 2012/10/16
    "[Effective C#] 項目1 アクセス可能なデータメンバの代わりに常にプロパティを使用すること | まさくらのブログ"
  • Sign in - Google Accounts

    gin0606
    gin0606 2012/10/16
    java/Android"6. パフォーマンスのための設計 - ソフトウェア技術ドキュメントを勝手に翻訳"
  • [Effective C#] 項目31 機能を最小限かつシンプルにすること | まさくらのブログ

    日の Effective C# は「項目31 機能を最小限かつシンプルにすること」です。 最小限かつシンプルにプログラムを書くのは非常に大事です。読みやすさの面からも。 でも、書籍での "最小限かつシンプル" は読みやすさではなく、パフォーマンスに言及して書かれています。 IL は JIT コンパイラでネイティブコードに変換されて実行されます。変換は実行時にすべて行うと時間がかかるので、呼び出されるメソッドのみ行われるそうです。 つまりは、だらだらと単一のメソッドに分岐をたくさん書いていると、実行されることのほとんどないところまで JIT コンパイラは変換を行うので、その分実行速度が落ちることがあるよということだそうです。 まあ、個人的には JIT コンパイラでの変換は、ただの一度だけで済むので、最初の処理がちょっと重いかな? 程度で大差ないと思うんですけどね。 次には、JIT コンパイ

    gin0606
    gin0606 2012/10/16
    メソッド短いほうがよい。ローカル変数も少ないほうがよい "[Effective C#] 項目31 機能を最小限かつシンプルにすること | まさくらのブログ"
  • C#の暗黙的コーディングルールまとめ | PITA Blog

    プログラミングにおけるソースコードの書き方としては、コンパイルさえできれば何でも良いが、 メンテナンスなど考慮してある程度、ルールを決めておくのが望ましい。 ただ、ここに書いてあることは理想であり、必ずしもこれに厳守する必要はありません。 また、このまとめは、正式なものではなく私の主観も入っています。そのため、正式なルールと間違ってることもあります。 見やすさを重視する。 変数名やクラス名の付け方にとあるルールを付ける。 役割を一つにする。 わかりやすい名前を付ける。 直感でわかる名前にする。 インデントやスペースを使って見やすいコードを書くことが一番重要。 次に変数名やクラス名は、それが何かわかるようにしておく。 このとき、ISample のように Iが先頭に付く=インターフェースであるなどのルールを決めておくと それが何を表すのか明確化できて良いです。

    gin0606
    gin0606 2012/10/16
    命名に便利な英単語みたいなのも載ってて良い "C#の暗黙的コーディングルールまとめ | PITA Blog"
  • C SharpとJavaの比較 - Wikipedia

    来の表記は「C#とJavaの比較」です。この記事に付けられたページ名は技術的な制限または記事名の制約により不正確なものとなっています。 この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方) 出典検索?: "C SharpとJavaの比較" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL(2024年2月) C#とJavaの比較(シーシャープとジャバのひかく)の記事では、プログラミング言語C#とJavaの比較について説明する。 言語[編集] オブジェクトの扱い[編集] いずれの言語もオブジェクト指向言語であり、その文法はC++に類似しているが、C++との互換性はない。メモリ再利用の手段として、従来の手動で解放す

    gin0606
    gin0606 2012/10/16
    "C SharpとJavaの比較 - Wikipedia"
  • [Effective C#] 項目11 foreach ループを使用すること | まさくらのブログ

    日の Effective C# は、「項目11 foreach ループを使用すること」です。 まあ、言わずもがなな感じがします。でも、勉強ですからきちんと読んでみます。 ちなみに、プログラムを書くときに大事なことの一つに局所化があると思います。foreach を使うことが局所化と言えるかどうかは分かりませんが、while/for のループに比べると、要素を必ず一つずつ処理しているのが明確になるのが大事だと思います。 while/for を利用するということは、foreach を使えないロジックであることが明確になるのも大事です。 さて、概念的なことは置いておいて、Effective C# では、foreach を使用する理由は、安全性やパフォーマンスを挙げています。 int [] foo = new int[100]; // ループ1: foreach (int i in foo) Co

    gin0606
    gin0606 2012/10/16
    "[Effective C#] 項目11 foreach ループを使用すること | まさくらのブログ"
  • .NET アプリケーションのパフォーマンスとスケーラビリティの向上 - 第 5 章 「マネージ コ ード パフォーマンスの向上」

    Recommendations on how to design and develop custom applications using the Microsoft platform Each patterns & practices offering contains a combination of written documentation and re-usable source code. Many also include a reference implementation. As the guidance is being developed it is reviewed and approved by internal Microsoft product teams and by external customers and partners. This produc

    .NET アプリケーションのパフォーマンスとスケーラビリティの向上 - 第 5 章 「マネージ コ ード パフォーマンスの向上」
    gin0606
    gin0606 2012/10/16
    ".NET アプリケーションのパフォーマンスとスケーラビリティの向上 - 第 13 章 「コードレビュー: .NET アプリケーション パフォーマンス」"
  • Amazon.co.jp: Effective C#4.0: .NET Frameworkを理解しC#を使いこなすための50の方法: Bill Wagner: 本

    Amazon.co.jp: Effective C#4.0: .NET Frameworkを理解しC#を使いこなすための50の方法: Bill Wagner: 本
    gin0606
    gin0606 2012/10/16
    C#の入門本買うよりもコレ買ったほうがいい気がしてきた "http://t.co/imOWxVYU: Effective C# 4.0: ビル・ワグナー,鈴木 幸敏: 本"
  • HugeDomains.com

    Captcha security check dollpaper.com is for sale Please prove you're not a robot View Price Processing

    HugeDomains.com
    gin0606
    gin0606 2012/10/16
    "C#で開発する時のちょっとしたTIPS 10個 | サラトガIT日記"
  • C#のコードを高速化するための方法

    以前のものの続き。 C#ならではのコーディングの際に注意するところまとめ。 ○クラスと構造体の選択方法 オブジェクトのインスタンス生成はかなり重たい処理であるよう。 で、C#にはオブジェクトをヒープ内でなく、 スタックに積むための「構造体」という仕組みがあるのですが、 http://www.atmarkit.co.jp/fdotnet/special/java2cs/java2cs_01.html 構造体は値型であるためそのサイズが大きい場合にはかえってその受け渡し時の コピーに負荷がかかってしまうよう。 http://www.atmarkit.co.jp/fdotnet/directxworld/directxworld06/directxworld06_04.html 構造体を使うかクラスを使うかの境界線はそのサイズで決まるようなの ですが、その境界は意外と低くて16バイト以上のものは

    gin0606
    gin0606 2012/10/16
    "技術情報の共有化: C#のコードを高速化するための方法"
  • C# パフォーマンスコーディング Tips - /* Grid Thinking */

    以下のTipsはC#プログラミング上パフォーマンス重視の場合覚えておいたほうが良いかもしれません。 1、try{ } catch { }ブロックでfinally句を使って、リソースの割り当て解除を確保する。 2、可能であればスレッドを共有リソースとして利用し、最適化した.NETスレッドプールを使用する。 3、サーバベースマルチCPU環境では、サーバガベージコレクターを使用する。 4、文字列を連結する場合、「+=」を使用しない。 5、using(obj)を使って、コーディングを簡潔化する。 using(obj)はtry{}finally{obj.Dispose(); }の同義語であり、使用後objの消滅を保証する。 6、スレッドを使う場合、スレッドプールを使用する。 WaitCallback methTarget = new WaitCallback(myClass.Method); Thr

    C# パフォーマンスコーディング Tips - /* Grid Thinking */
    gin0606
    gin0606 2012/10/16
    "C# パフォーマンスコーディング Tips - /* Grid Thinking */"
  • as演算子とキャストの違いは?

    これもobject型の参照をstring型の参照に変換している。as演算子では、その手前に変換したい参照を、後ろに変換したい型を記述する。キャスト演算子とas演算子の表記は、まったく違って見えるが、それぞれのコードを実行した結果は同じものとなる。 なお、正確には、文字列をobject型変数に代入している最初の行も暗黙的な変換を行っている。objectクラスは文字列型のスーパークラスであるため、このような操作は暗黙的に行える。 変換できないときの挙動の相違 キャスト演算子はC言語の流れを汲む多くのプログラム言語で使用でき、C#プログラムでも多用されている。これに対し、as演算子を使用したソース・コードを見かけることは多くない。しかし、キャスト演算子とは別にas演算子が存在するのには、それなりの理由がある。両者は、データ型を変換するという目的は似ているが、機能の詳細は同じではない。 第1の相違

    as演算子とキャストの違いは?
    gin0606
    gin0606 2012/10/16
    as演算子のほうがちょっと速い"@IT:.NET TIPS as演算子とキャストの違いは? - C#"
  • コーディングスタイルとプログラムの品質

    コーディングスタイルは、好みの問題だという人がよくいます。 また一方で、それは品質に大きく影響するひとつの要素であることも否定できません。 すなわち、プログラマの好みがプログラムの品質に大きく影響し、何を好むかがプログラマの能力と直結するということです。 コーディングスタイルというと、まず、ヘッダやコメントの記述,字下げ,改行など可読性に関わることが非常に重要な要素として挙げられまが、ここでは、それとは別に、バグを作らないためのちょっとしたテクニックを紹介したいと思います。 変数と定数を比較するときは、定数を左辺に 定数と変数を比較するときに、 if ( x == 0 ) { ... } のように、変数を左辺に,定数を右辺に記載するスタイルだと、 if ( x = 0 ) { ... } のように、うっかり、= をひとつ書き忘れてもコンパイルエラーとはならず、実行時に何らかの不具合が発生す

    gin0606
    gin0606 2012/10/16
    へ〜"コーディングスタイルとプログラムの品質"
  • 性能を考慮したJavaのプログラミング

    同じ結果を提供するプログラムであっても、プログラミング上の実現方法は一通りではありません。 プログラマは、それらの中から最適な方法を選択すべく考慮しなければなりません。 そのときのひとつの判断基準に「性能(処理速度,消費資源)」があります。 ここでは、Javaのプログラミングにおいて「性能」を意識したときに、いくつかの考慮すべき事項について、書籍「Javaの鉄則」から参考になると思ったものを紹介したいと思います。 Contents オブジェクトの作成のコスト 出来るだけ継承の少ないクラスを使う,作る オブジェクト生成時の処理を軽くする オブジェクトは必要なときに作成する そのオブジェクトが再利用可能な場合は再利用する 変数の処理性能 頻繁にアクセスする変数にはスタック変数を使用する 変数は出来るだけプリミティブ型を使う インスタンス変数の無駄な初期化はしない Javaコンパイラ,JITによ

    gin0606
    gin0606 2012/10/16
    "性能を考慮したJavaのプログラミング"
  • MVCモデルに基づいたプログラム構造の例

    昨今、MVCモデルに基づくプログラムというのが話題となっていますが、概念的なことはいいとして、我々プログラマにとっては、実際どのような実装になるのかが関心のあるところです。 そこで、MVCモデルに基づいた業務アプリケーションのプログラムの構造を考えてみたいと思います。 MVCモデル まず、MVCモデル についてあらためて整理しておきたいと思います。 MVCモデルとは、 Model …………… 業務仕様に関わる部分(個別の要求に対する処理ではなく、個々の業務仕様に対するソリューション) (Business Logic という場合もある) View …………… ユーザインターフェース等の外部からの要求およびそれに対する出力に関わる部分 Controller ……… 個別の要求に対する処理をする部分(Model を駆使して View に結果を提供する) の略で、プログラムをできるだけ独立した(相

    gin0606
    gin0606 2012/10/16
    最近MVCとか意識してない "MVCモデルに基づいたプログラム構造の例"
  • 【画像】 ロッテリアのタワーチーズバーガーの見本と実物が違いすぎる件 : 痛いニュース(ノ∀`)

    【画像】 ロッテリアのタワーチーズバーガーの見と実物が違いすぎる件 1 名前: スナネコ(新疆ウイグル自治区):2012/10/16(火) 00:01:44.75 ID:PcYl5KQh0 【画像あり】ロッテリアのタワーチーズバーガーの見と実物が違いすぎる件 http://rocketnews24.com/2012/10/15/257286/ 左:エビツリーバーガー(エビバーガー5段) 右:タワーチーズバーガー(絶品チーズバーガー5段) 2 : オシキャット(家):2012/10/16(火) 00:02:13.39 ID:KslhizwV0 餃子吹いた 5 : サビイロネコ(山梨県):2012/10/16(火) 00:02:58.14 ID:iz8ZhuTc0 グロすぎだろw 9 : ターキッシュバン(栃木県):2012/10/16(火) 00:03:18.28 ID:4DjSTFRK

    【画像】 ロッテリアのタワーチーズバーガーの見本と実物が違いすぎる件 : 痛いニュース(ノ∀`)
    gin0606
    gin0606 2012/10/16
    残飯っぽい "痛いニュース(ノ∀`) : 【画像】 ロッテリアのタワーチーズバーガーの見本と実物が違いすぎる件 - ライブドアブログ"
  • JK太もも画像ベスト10wwwwww

    gin0606
    gin0606 2012/10/16
    "JK太もも画像ベスト10wwwwww"
  • 孫社長がテレ朝に生出演 「もうNTTも恐くない」 – すまほん!!

    スプリント買収を正式発表したソフトバンク。 テレビ朝日の報道ステーションの生放送に出演した孫社長は、自信に満ちた表情で買収の意図や心中について語った。 今回の買収は、スマートフォン、LTEなど時代の転換期であり最もベストなタイミングであると認識。たったの金利1%で銀行も貸し付けてくれるなど、プロの目から見ても裏付けのある買収であり、これまでソフトバンクが、ウィルコムやVodafoneの赤字を解消してきた実績を強調した。 「田宗一郎氏や盛田昭夫氏はリスクを恐れず世界に打って出た」「以前は恐かったNTTは、もう恐くない」と買収への自信をみせつつ、ドコモを追い抜き世界で第三位の契約者数となったことについて、「ウィルコムやイーアクセスの契約者数を含めるかどうかは些細」「大ボラかもしれないが、1億か2億かという話になってきている」と冗談交じりで余裕をアピールした。 また、買収によって基地局インフラ

    孫社長がテレ朝に生出演 「もうNTTも恐くない」 – すまほん!!
    gin0606
    gin0606 2012/10/16
    "【速報】孫社長がテレ朝に生出演 「もうNTTも恐くない」 – すまほん!!"
  • GitHub - clips/pattern: Web mining module for Python, with tools for scraping, natural language processing, machine learning, network analysis and visualization.

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - clips/pattern: Web mining module for Python, with tools for scraping, natural language processing, machine learning, network analysis and visualization.
    gin0606
    gin0606 2012/10/16
    Pattern is a web mining module for the Python programming language. "clips/pattern · GitHub"
  • https://docs.sublimetext.info/en/latest/reference/keyboard_shortcuts_osx.html

    gin0606
    gin0606 2012/10/16
    "Keyboard Shortcuts - OSX — Sublime Text Unofficial Documentation"
  • 5pb.がソーシャルゲームに本格参入、第1弾『錬金マイスター』をGREEで配信 | ファミ通App【スマホゲーム情報サイト】

    ●配信開始は2012年10月25日を予定 MAGES.(ゲーム事業ブランド:5pb.)は、GREEプラットフォームにて、フィーチャーフォン及びスマートフォン向けのオリジナルソーシャルゲーム『錬金マイスター』を配信することを発表した。タイトルは、その名の通り“錬金術”をテーマにした錬金カードゲーム。魔物がはびこる王道のダークファンタジーの世界で、プレイヤーは身を守る手段として人工妖精“ホムンクルス”を作り出して対抗する。ダンジョン探索で得られる素材をもとに、このホムンクルスを生成、収集する要素が大きな特徴となっている。なお、配信開始は2012年10月25日の予定。 ◆公式サイトはこちら http://5pb.jp/games/social/renkin ●多数のイラストレーターの共演 ゲームで使用されているイラストには、キービジュアルを描く日野慎之助氏を始め、数多くのイラストレーターが参加

    gin0606
    gin0606 2012/10/16
    課金マイスターかと思った "5pb.がソーシャルゲームに本格参入、第1弾『錬金マイスター』をGREEで配信 - ファミ通App"
  • TECH PROjin

    セキュリティソリューション事業部からのお知らせ セキュリティソリューション事業部のブログサイトを新たに開設いたしました。 https://blog.sie-security.com/ 今後のセキュリティニュースの投稿は上記URLのサイトからとなります。よろしくお願いいたします。 担当:TY …More Read

    TECH PROjin
    gin0606
    gin0606 2012/10/16
    "Twitter Bootstrap はじめに見るべき10サイトまとめ | エンジニア転職・求人情報等も配信 SAK STAFF BLOG"
  • Sublime Text 2 のショートカット 12 選(Win、Mac両方) | クラスメソッド開発ブログ

    1ヶ月使って便利だと思った Sublime Text 2 のショートカット 12 選(Win、Mac両方) 今、巷で話題になっているエディタ Sublime Text 2 ですが、 最近社内のプロジェクトでも使用する機会が多くなってきました。 Sublime Text 2 http://www.sublimetext.com/ インターフェースがシンプルで高速、 機能を強化するパッケージも豊富で、Gitとの同期も快適です。 このブログでは、1ヶ月プロジェクトで使ってみて、 とても便利だと思ったショートカットを12個紹介します。 自分自身会社ではWindows、自宅ではMacなので、 Windows版とMac版の両方をメモ代わりとして記載することにします。 1. マルチセレクト このショートカットは複数の文字列をインタラクティブに選択し、一度にまとめて編集することができます。 OS X:⌘

    gin0606
    gin0606 2012/10/16
    "1ヶ月使って便利だと思った Sublime Text 2 のショートカット 12 選(Win、Mac両方) | クラスメソッド開発ブログ"