プログラマになる

組み込みエンジニアで主にC言語、時々C#をやっている人の技術メモです。

C# BeginInvokeとInvokeの違い

はじめに WPFアプリ作成中にBeginInvokeとInvokeを使い分ける必要があったのでメモる。 Dispatcher.BeginInvoke スレッドでデリゲートを非同期的に実行、 Dispatcher に関連付けられています。 Dipatcher.Invoke 指定したデリゲートをスレッドで同期的に実行…

Android ADB 使い方

ADBコマンドの初歩的な使い方をメモります。 Emulatorの一覧を確認する adb devices シェルを起動する adb shell ファイルを送信する adb push local_file remote_path ファイルを受信する adb pull remote_file local_path アプリケーションをインストール…

C# WPFでミュージックプレイヤーを作った話

はじめに C# WPFを用いてミュージックプレイヤーを作成したので紹介します。 Android・iOSのアプリのUIをそのまま継承したようなアプリケーションです。 できること ライブラリ機能 再生、停止、一時停止、リピート flacとmp3とwaveファイルの再生 作ろうと…

デザインパターン 遅延読み込み(LazyLoading)

定義 Wikipedia 遅延読み込みによると以下の意味らしい。 遅延読み込み(ちえんよみこみ、英語: Lazy loading)とは実際にオブジェクトが 必要とされたときに後から初期化を行うソフトウェアデザインパターンの一つである。 Lazy Initialization 遅延読み込…

C# structとobjectをマッピングする

C#

概要 C#からC言語で記述されたDLLを呼び出す機会が少なからずある。 その時に必ずstruct定義を引数としてデータ設定・取得を行う。 組み込み系だと1バイトのビットフィールドに情報を詰め込むことがあり、 これをそのままアプリケーション側に渡すと使いづら…

C# Visibilityとは

C#

Visibilityを制御する必要があるUIを作成した際に調べたのでメモる。 Visibility列挙型 Collapsed 要素を表示しない、レイアウトの領域も確保しない Hidden 要素を表示しない、レイアウトの領域を確保する Visible 要素を表示する、レイアウトの領域を確保す…