タグ

ブックマーク / atmarkit.itmedia.co.jp (28)

  • https://atmarkit.itmedia.co.jp/fdotnet/chushin/introwpf_index/

  • 連載:[完全版]究極のC#プログラミング - @IT

    第2回 簡潔なコーディングのために (2017/7/26) ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21) Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基の「キ」をマスターしよう 第1回 明瞭なコーディングのために (2017/7/19) C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える Presentation Translator (2017/7/18) Presentation TranslatorはPowerPoint用のアドイン。プレゼンテー

  • 第3回 新しい繰り返しのスタイル - yield return文とForEachメソッド(4/4) - @IT

    制約の真相:見た目と違う真実の姿 これまで、反復子ブロックを使った際のいくつかの制約について見てきたが、それらはすべて「反復子ブロックは普通のブロックではないから」と説明した。では、具体的にどう違うのだろうか? その疑問に答えるのは難しくない。 見掛け上の姿と真の姿の差は、逆コンパイラ・ツール「Reflector」を使うことで簡単に見ることができるからだ。 実際に、リスト2をデバッグ・ビルドした実行ファイルをReflector for .NETによりC#のソース・コードとして表示させた例を以下に示す。 まず、Rageクラス内に生成されている、元のソース・コードになかった「<GetEnumerator>d__0」というクラスのメンバ一覧(リスト10)を見てみよう。そこにはC# 1.x時代におなじみだったMoveNextメソッドやCurrentプロパティが生成されていることが分かると思う。 [

  • .NET開発者のためのDirectX連携手法 - @IT

    2006年8月14日~15日にシアトルで開催されたGamefest 2006にて「XNA Game Studio」が発表され、同月30日に「XNA Game Studio Expressベータ版」のダウンロードが開始された。 ちょうどこのころ日国内のゲーム開発者向けイベントであるCEDEC 2006も開催されていたのだが、3日目に当たる9月1日のマイクロソフトによる基調講演では、さっそくXNAについて大きく取り上げられたことから、ニュース・サイトなどでXNAについてすでに目にされた方も多いのではなかろうか。 今後の連載では.NETからのDirectX開発(具体的にはXNAを用いたDirectX開発)というテーマを取り扱っていくが、まず今回はこのXNAとはどのようなものかについて紹介し、.NETにおけるそのほかのグラフィックス・テクノロジと比較して、その使い分けの指針を提示する。 1.

  • 「3Kは大した問題ではない」――今年の学生は模範的?

    情報処理推進機構(IPA)は5月26日、主催イベント「IPAX2009」で、学生とITプロフェッショナルの対談会を開催した。テーマは「今、IT業界の見える化を志向する」。IT業界が具体的に何をしているか、学生たちに見えにくいのではないかという問題意識のもと、討論が行われた。討論会は今回で4回目。 パネリストとして登壇したのは、日アイ・ビー・エムの明石雅典氏、日立システムアンドサービスの石川拓夫氏、SAPジャパンの大岩康志氏、東京海上日動システムズの高木靖史氏、日電気の高橋伸子氏、マイクロソフトの高橋秀樹氏の6人。これまでの討論会と異なり、パネリストは現場で働く人々だ。職種もITスペシャリストやコンサルティング営業、人事など幅広い。 学生は、九州大学、公立はこだて未来大学、静岡大学、筑波大学から各2名の大学院生が参加。インプレスビジネスメディアの田口潤氏がコーディネーターを務めた。 10

    「3Kは大した問題ではない」――今年の学生は模範的?
    Masao_hate
    Masao_hate 2009/05/27
    長く続くと問題点が「反省」されて、予定調和でつまらなくなっていく好例。
  • インサイド .NET Framework [改訂版]

    連載は、以前の連載を.NET Frameworkの新しいバージョンである「.NET Framework 1.1」に対応させ、全面的に加筆・修正を行った改訂版です。

  • ファイル名に使用できない文字をチェックするには?[2.0のみ、C#、VB] - @IT

    Windowsでは「"」「<」「>」「|」「:」「*」「?」「\」「/」といった文字や、文字コードが0~31番の文字などはファイル名として使えない。このため、ユーザーにより入力された文字列などをファイル名として用いる場合には、これらの文字を取り除いたり、別の文字に置き換えたりする必要がある。 .NET Framework 2.0のクラス・ライブラリでは、Windowsでファイル名に使用できない文字の一覧を取得するためのGetInvalidFileNameCharsメソッドがPathクラス(System.IO名前空間)に用意されている。このメソッドは文字の配列を返す静的メソッドである。 次のサンプル・プログラムはGetInvalidFileNameCharsメソッドを使用した例である。このプログラムのValidFileNameメソッドは、パラメータとして渡された文字列に含まれる無効な文字を「

  • 長いパスを8.3形式の短いパスに変換するには?[C#、VB] - @IT

    Windows OS以前のMS-DOSシステムでは、フォルダやファイルの名前に8.3形式の短い名前(以降、短いパス)しか利用できなかった。現在のWindows OSでも、一部、8.3形式の短いパスの命名規則が用いられている個所(例えば、レジストリの値など)が存在する。そこで「TIPS:8.3形式の短いパスを長いパスに変換するには?」では、短いパスを、Windowsで使われる通常の長いパスに変換する方法を紹介した。TIPSでは、その逆に、長いパスから短いパスに変換する方法を紹介する。 長い形式のパスを短い8.3形式のパスに変換する方法 長いパスを短いパスに変換する機能は、.NET Frameworkでは提供されていないので、Win32 APIを呼び出す必要がある。具体的には、kernel32.dllファイルのGetShortPathName関数を呼び出す。 GetShortPathName

  • https://atmarkit.itmedia.co.jp/fdotnet/dotnettips/045getbytes/getbytes.html

  • Tempフォルダの場所を変更する

    Windows OSのtempフォルダとは? Windows環境ではさまざまな「環境変数」が定義され、使われている(Tech TIPS「OSの種類によってバッチファイルの処理を切り替える方法」参照)。その中でもよく使われるのは「TEMP」もしくは「TMP」環境変数ではないだろうか。アプリケーションが一時的な作業用のファイルを作成する場合、通常はこのTEMP環境変数の指し示す場所(以下「tempフォルダ」と呼ぶ)に作られるからだ。 tempフォルダに作成されたファイルは、アプリケーションの終了時には削除されることになっている。だが、実際にはプログラムが終了しても削除されずに残っていることがある(特にログファイルなど)。tempファイルは、既存のファイル名とは重複しないような名前で新規作成されることになっているため、システムの起動や終了などを繰り返していると、tempフォルダの中に多くの一時フ

    Tempフォルダの場所を変更する
  • 連載:.NETで簡単XML 第9回 オブジェクトをXMLでシリアライズ(1)(1/3) - @IT

    今回のサンプル・プログラムについて 今回もサンプル・プログラムは、Visual Basic .NET(以下VB.NET)とC#で記述したものを用意した。VB.NETのサンプルを掲載するとともに、VB.NET、C#それぞれへのサンプルのリンクを張ってあるので、必要に応じてダウンロードしてほしい。開発環境としてはVisual Studio.NET 2003を使用することを前提にしている。 サンプル・プログラムはすべてWindowsアプリケーションとしてプロジェクトを作成後に、フォームのLoadイベントに実行するコードを書き込み、Trace.WriteLineメソッドで結果を出力する。結果の確認は、統合開発環境(IDE)の出力ウィンドウで行う。ただし、クラスだけはフォームのクラス外に別途記述する必要がある。それぞれのソースの先頭には、以下のコードが書かれているものとする。 オブジェクトの永続化

  • 【C#】時間のかかる処理をバックグラウンドで実行するには?[2.0のみ、C#、VB] − @IT

    Windowsアプリケーションでは、時間のかかる処理(以下、重い処理)はアプリケーションのメインのスレッドとは別のスレッドで行わなければならない。これは重い処理がアプリケーションのユーザー・インターフェイス(UI)をフリーズさせてしまうからだ。 たとえユーザーがその処理の完了まで待つ必要があるとしても、その間にウィンドウの移動や最小化ができなければならないし、可能であれば処理の進ちょく状況をプログレス・バーなどで表示すべきである。 .NET Framework 2.0では、そのような処理を容易に実装するための「BackgroundWorkerコンポーネント」が新しく追加されている。これを使えばスレッドをほとんど意識することなく、重い処理を別スレッド(バックグラウンド)で実行させることができる。 稿では、BackgroundWorkerコンポーネントを利用し、進ちょく状況を表示しながら、重

  • 【C#】 @IT:.NET TIPS Windowsフォームで別スレッドからコントロールを操作するには? - C# VB.NET VS.NET

    連載目次 Windowsフォームでスレッドを作成した場合、フォームやフォーム上のコントロールに対しては、そのスレッドからの操作(フォームやコントロールが持つメソッドの呼び出しやプロパティの読み書き)は動作が保証されない。稿ではそのような処理を<安全>に行うためのプログラミングについて解説する。 フォーカスの移動を行うサンプル・プログラム 例えば、Visual Studio .NET(以降、VS.NET)でWindowsアプリケーションのプロジェクトを新規作成し、次の画面のように、2つのテキストボックス(TextBox1とTextBox2)と1つのボタン(Button1)を配置したとする。

    【C#】 @IT:.NET TIPS Windowsフォームで別スレッドからコントロールを操作するには? - C# VB.NET VS.NET
  • .NET開発者のためのDirectX連携手法(2/3) - @IT

    連載 .NETWindows Vistaへ広がるDirectXの世界 第3回 .NET開発者のためのDirectX連携手法 NyaRuRu Microsoft MVP Windows - DirectX(Jan 2004 - Dec 2006) 2006/10/04 ■Windows Presentation Foundation(WPF) WPFの特徴は、次のようなものだ。 デザイン・ツールや豊富なサンプル、GUIコンポーネントなど、ウィンドウ・アプリケーション開発での生産性に重点が置かれている ハードウェア性能に応じて、最適な描画方法が内部的に使用される WPFがリアルタイム・アプリケーションに不向きかというとそういうことはなく、むしろWPFは時間変化のあるコンテンツを積極的に使っていこうという設計になっている。また、ムービーをテクスチャに貼り付けるといった、従来から不可能ではないが

  • Vista到来。既存C/C++資産の.NET化を始めよう! ― @IT

    最上位エディションのUltimateを初め、Business、Home Premium、Home Basicの各パッケージが置かれている。 さてさて、2007年はVistaの年となりました。(記事日付では)昨日1月30日のWindows Vista発売早々、さっそくインストールした方も少なくないことでしょう。すでに家電量販店には製品パッケージが大々的に陳列されています。最上位エディションであるVista Ultimateともなると5万円超、なかなか強気な価格設定です。 筆者は無線LANでインターネットにつないでいるのですが、まだドライバがVistaに対応してくれていないので格稼働はしばらくお預け。対応アプリケーション&ドライバが増えてくればVistaの普及に拍車がかかるでしょうね。 ■Vista時代にC/C++はもはやお払い箱なのか? 16bit Windowsの時代からWindows

  • MFCから.NETへの実践的移行計画(1/5) - @IT

    前編では、ネイティブ・コードとして記述したC/C++ライブラリをマネージ・コードであるC++/CLIでラップし(すなわち.NET化)、それをC#やVisual Basic(以下VB)などの.NET言語から呼び出す手順について解説しました。 この後を受けて、中編ではその応用としてVisual C++(以下VC++)による.NETアプリケーション構築の1つの戦術を紹介します。 ■C++/CLIによるWindowsフォーム・アプリケーション .NET FrameworkとVisual Studio-IDEの助けを借りて、VC++だけで.NETWindowsフォーム・アプリケーションを組み上げることはもちろん可能です。ですが筆者はVC++のみでのWindowsフォーム・アプリケーション構築には少なからず疑問を感じています。 それについて議論するために、まずはVisual Studio 2005(

  • iPhoneでC#アプリが審査に通るワケ OSS実装「Mono」で広がる.NETの応用 − @IT

    2009/01/29 iPhone向けにC#で書かれたゲームが40以上存在する――。2009年1月7日付けのブログ投稿で、こんなにわかに信じられない現象を伝えるのは、メキシコ出身のオープンソース開発者、ミゲル・デ・イカザ(Miguel de Icaz)氏だ。iPhoneアプリケーションの開発といえば、アップルが提供するSDKに含まれるObjective-Cを使うか、Webブラウザ上でのみ動作するJavaScriptで実装するかのいずれかだった。 C#のような実行時にランタイム(.NET Framework)を必要とするプログラミング言語は、iPhoneでは使えない。なぜなら、任意のコードを実行できるランタイムを配布パッケージに含めることを、セキュリティ上の理由からアップルが禁じているからだ。 ではなぜ、C#アプリケーションが審査に通るのか? この背後には、オープンソースプロジェクト「Mo

  • 「IT業界の未来」から「10年泥の真意」まで、学生と経営者の最後の討論会 ― @IT

    IT業界の未来」から「10年泥の真意」まで、学生と経営者の最後の討論会:IPA Forum 2008 情報処理推進機構(IPA)は10月28日、IPA Forum 2008で「学生と経営者の討論会」と題したパネルディスカッションを開催した。IPAによる同企画は2007年10月、2008年5月に続いて3回目。 学生側は、東海大学専門職大学院、東京工科大学、名古屋大学、早稲田大学、日工学院八王子専門学校から各校2人ずつ、計10人が登壇した。経営者側は、パナソニック 常務役員 兼 オートモーティブシステムズ 社長の津賀一宏氏、伊藤忠テクノソリューションズ(CTC) 代表取締役社長の奥田陽一氏の2人がパネリストとして登壇。IPAから理事長の西垣浩司氏が参加し、司会をインプレスビジネスメディア 取締役の田口潤氏が行った。 学生と経営者の討論企画は今回が最後 田口氏は冒頭で、「今回でこの(学生と経

    「IT業界の未来」から「10年泥の真意」まで、学生と経営者の最後の討論会 ― @IT
    Masao_hate
    Masao_hate 2008/10/29
    今回は、良い感じの討論会だったように見える。
  • 「漢字からビットマップ変換について(BDF、PCF)」(1) Insider.NET - @IT

    IT 会議室 Indexリンク Windows Server Insider Insider.NET System Insider XML & SOA Linux Square Master of IP Network Java Solution Security & Trust Database Expert RFID+IC リッチクライアント & 帳票 Server & Storage Coding Edge @ITクラブ Cafe VB業務アプリケーション開発研究 @IT SpecialPR

    Masao_hate
    Masao_hate 2008/10/01
    .Netでフォントからビットマップを作成する方法が載っている。
  • 「ソフトウェアの部品化」が失敗する理由 ― @IT

    経済産業省のとある外郭団体の委員をしている方と話をしていたら「我が国のソフトウェア産業を改革するためには、ソフトウェアの部品化を推進しなければならない」と話していた。うーん……ソフトウェアの部品化かぁ……。正直、頭をよぎったのは1980年代後半に国内のソフトウェア部品の集積を目指して立ち上げられたが、失敗した「Σ(シグマ)プロジェクト」だ。 Σプロジェクトから20年の歳月を経て同じコンセプトが出現するには理由がある。日の輸出を支えている製造業で、製品におけるソフトウェアの比重が高まるに伴って、業界全体がソフトウェア・エンジニアの不足および、ソフトウェア関連の障害の多発に悩まされているからである。 外注先企業が作ったソフトウェア障害に悩まされている製造業の視点から見れば「なぜ、ソフトウェアはこんなにトラブルが出るのか? 部品化して、それぞれの部品の品質チェックをもっと厳しくし、その上で再利