propg さん プロフィール

  •  
propgさん: プロプログラマ
ハンドル名propg さん
ブログタイトルプロプログラマ
ブログURLhttp://propg.ee-mall.info/
サイト紹介文プログラマーを職業としてます。 Flex,Air,C#,Oracle,PHPの言語ノウハウを中心に情報発信していきます。
自由文最近は、ios, androidアプリ開発も進めてます。
iPhoneユーザーです。
参加カテゴリー
更新頻度(1年)情報提供29回 / 365日(平均0.6回/週) - 参加 2013/01/24 12:41

propg さんのブログ記事

  • [WPF] ComboBoxにVirtualizingStackPanelを指定すると表示が爆速になる
  • WPFのComboBoxに大量のデータをバインドさせると、コンボボックスを開くときにかなり待たされます。2回目以降はだいぶましになりますがそれでも遅いです。データ量が多いのだからしょうがないとあきらめ気味でしたが、VirtualizingStackPanelを指定すると描画がものすごく早くなることが分かりました。Comboboxのリスト部にはStackPanelが指定されており、バインドされたデータをすべて描画しています。そのため、特に初回の表示が [続きを読む]
  • [C#] LINQを使ったファイル一覧の取得方法
  • 指定したディレクトリ内にあるファイル一覧を取得する場合、var files = Directory.GetFiles(@"c:");このように書けば簡単に取得できます。このファイルの一覧の並び順はファイル名順?かと思いますが、並び順を指定したい場合、以前だとArrays.Sortを使用して独自ソート順を指定していました。ですが、LINQを使用すると、いとも簡単にソートして取得することができます。var di = new DirectoryInfo(@"c:");var files = di.GetFil [続きを読む]
  • SQLServerはNullと空文字を区別する
  • 今までずっとOracleを使ってきましたが、最近SQLServerを使うことが増えてきました。そこで、なんで?と思うことがありました。SQL Serverは空白、空文字(Empty)、Nullを厳密に区別するOracleだと、UPDATE xxxx SET cd=”;と指定しても、NULLで登録されます。ですが、SQLServerの場合は、そのまま空文字が登録されます。こちらの方が自然なのですが、Oracleに慣れていると逆に不自然です。条件指定する際には、IS NULLと=”を合わ [続きを読む]
  • [C#] EXEとDLLをマージして1つのEXEファイルにする
  • C#でプログラムを作成する際に参照設定で追加していると、ビルドフォルダにはDLLファイルがコピーされます。これらのDLLファイルがないと実行できないので、配布する際にはDLLと一緒にコピーする必要があります。大きなプログラムならそれでいいんですが、ちっさなおまけプログラムの場合、EXEだけコピーして実行できたら便利です。そういう時は、EXEファイルにDLLファイルをマージして1ファイルにすることができます。1. ILMerge [続きを読む]
  • [Excel] VLOOKUP関数の範囲はセル指定でなくてもよい
  • VLOOKUPの第2引数にはデータの参照先(テーブル)を指定しますが、ここはセル範囲でなくてもよいことに気づきました。CSVのような感じで指定すれば参照できました。以下ののような感じです。記載方法も画像を参考にしてください。各行に参照データを記載するので無駄ですが、数が多くないちょっとしたコードや区分の変換ぐらいだったら、いちいち別シートに変換テーブルを定義しなくてもよいので便利だと思います。変換用のシートを [続きを読む]
  • システム開発におけるステークホルダーとは
  • ステークホルダーという言葉があります。日本語では利害関係者という固い訳し方をします。利益や損害を得る可能性がある人となります。システム開発においては、関連する人や企業全てを表すことが多いと思います。システム開発においてのステークホルダーは、・そのシステム開発を発注した会社・システムを利用するエンドユーザー・システムを受注した開発会社と開発者 ・プロジェクトマネージャー ・システムエンジニア ・プロ [続きを読む]
  • [C#] null合体演算子
  • 値がNULLの時に代わりの値を代入する場合、if文や3項演算子でnull判定をして分岐をするif (value1 == null){ value1 = "";}または、value1 = value1 == null ? "" : value1;などとするのが普通だが、C#ではもっと省略できるvalue1 = value1 ?? "";知らないと何が書かれているか判別できないが、value1がnullの時は”??”の後ろの値をセットするという意味。OracleのNVL関数と同じようなものすごく省略できるけど、コメントで説明 [続きを読む]
  • [.NET] [NLog] ログ出力フォルダにコンピュータ名を指定する
  • .NET用のログライブラリ「NLog」です。ログライブラリと言えば、Log4xxxが有名ですが、今はあえてNLogを使っています。 特別な思い入れはありませんが、なんとなく使いやすいように思います。NuGetから簡単にインストールできますし。とはいえ、できることは基本的に変わりません。このNLogでログファイルを出力する際、フォルダ名にコンピュータ名を指定したいと思い、いろいろやってみた結果うまくいったので紹介します。config [続きを読む]
  • [Excel] セル内改行を簡単に取り除く
  • Excelではセル内の文字を改行して複数行入力することができます。とても便利ですが、この改行が邪魔になるときがあります。今までは、SUBSTITUTE関数で、改行文字を空文字に置き換えていたのですが、もっと簡単な関数がありました。CLEAN関数です。セル内改行と取るための関数で、引数に対象セルを指定するだけで済みます。SUBSTITUTE関数は文字列を置き換える関数ですが、いつもセル内改行の改行コードがなんであるか忘れてしまい [続きを読む]
  • Flash実装を試せるWonderflサービスが終了していた!!
  • このブログでも使っていたWonderflというサービスがありました。Web上でアクションスクリプトコードを書くとコンパイルされて動かせるというとても便利なサービスでした。試して実装してみるときや、実装内容を公開するときに便利に使っていたのですが、4月に入って久しぶりに開いてみたら、既にサービス終了していました。。。2017年3月まででした。https://www.kayac.com/service/other/94 アカウントを作っていくつかソースコー [続きを読む]
  • (いまさら) Windows10 Anniversary Update(1607)にアップデートできた!!
  • 昨年8月に公開されたWindows10 Anniversary Updateですが、ずっとアップデートできずにいました。原因は不明で、アップデート自体はうまくいったように見えるのですが、一通り処理された後、再起動していざ起動するかというタイミングで、起動せず延々と起動中画面になる状況でした。何かのドライバが問題ではないかと、つながっている機器を外してみたりして何度か試していました。もうかれこれ5回以上は「Update⇒システム復元で [続きを読む]
  • [python] Inflectorする(単数形を複数形に変換したり..)
  • クラス名、メソッド名などに使われる、キャメル形式やアンダースコア形式の定義を相互変換したり、単数形の単語を複数形に変換したりできる便利なライブラリです。自力でも実装できないことはないのですが、既にライブラリがあればそれを使ったほうが楽で間違いないです。特に、単数形⇔複数形はいろいろパターンがあると思いますので助かります。使用するにはとても簡単で、pipが使えればpip install Inflectorだけでインストール [続きを読む]
  • [Excel] オートフィル機能で○付き数字を連続コピーするには
  • Excelのオートフィル機能を使うと、連続した番号を一気に入力することができます。セルの右下をつかんで下にドラッグする操作です。ただし、オートフィルに対応している文字は決まっていて、例えば①は下にドラッグしても全部①になります。結局1つずつ入力する必要があり、面倒ですね。実は、オートフィル(連蔵データ入力)で対応する文字のパターンは追加することができます。メニューのファイル-オプションを開きます。ユーザー [続きを読む]
  • [Oracle] VARCHAR2型カラムのMAXを取得するときの注意
  • VARCHAR2カラムの値に対してMAX関数を使うと、思った結果にならない場合があります。たとえば、カラムに”9″と”10″が登録されている場合、MAX関数の戻り値は”9″になってしまいます。“11”や”89″などが登録されていてもMAX関数はやはり”9″を返してしまいます。文字列型の場合は、文字コードとしての判定を行うためです。回避方法としては(1) “009”、”010″のように桁を合わせて登録する(2) MAX(TO_NUMBER(***))のよう [続きを読む]
  • スーパマリオランが配信開始されます
  • あの任天堂がスマホ向けにゲームを配信するということで話題になってます。ゲーム的には、ぱっと見よくあるラン系ゲームですが、任天堂ならではの面白さがあると期待してます。これまで、コンシューマにこだわってきたのが、スマホ配信に向けて動き出してきてます。経営的にも無視できない状況になってきてると思いますが、任天堂にはこだわって欲しかったですね。ゲーム機開発はこれからも続けてほしいものです。性能が固定されて [続きを読む]
  • iOS10.1公開 アップデートしました
  • 2016/10/25にiOS10.1が公開されたので、早速アップデートしました。今回の目玉はApplePayでスイカが使えるようになったことなので、iPhone6の自分にはあまり関係ないですが、不具合修正もたくさんされてるようなので。ダウンロードはすぐに終わりましたが、アップデートは10分以上かかりました。白背景に黒のアップルマークが、ずっと続いたので、ハングアップして固まってるのかと焦りました。(最近iCloudにバックアップできてな [続きを読む]
  • SQL Server Managemet Studioインストール長すぎ
  • SQL Server 2016 Express Editionをインストール中。こちらは終わりました。引き続きManagement Studioをインストールしてますが、全然終わらない。かれこれ30分近く。ハングアップしてるんじゃないかと思いましたが、微妙に進んでいる様子。自分のパソコンだけなんでしょうか。いったい何をそんなに作業してるんでしょうか。謎です。Oracle Databaseのインストールより遅い。。>>30分以上かかって終わりました。長いです。必要に [続きを読む]
  • [Flex] Textコンポーネントの文字を改行する
  • 今更需要ないですが。。。。Flex Textコンポーネントに指定した文字列を改行する指定です。改行指定はn, rなのですが、文字列中にこの指定を含めてもそのまま”n”という文字が表示されています。改行指定として含める場合は、少し工夫が必要です。 actionscriptで指定する場合は、そのまま文字列中にnを含めます。逆に”n”という文字を表示したければ”n”とエスケープする必要があります。txt1.text = "値001n値002" [続きを読む]
  • Googleタスクは単独でも使える
  • Googleのサービスで一番有名なのはGmailだと思いますが、他にも便利なサービスがたくさん提供されています。その中で、ToDo機能というものがあります。正式名がいまいち不明ですが、「ToDo リスト」?これは、通常ですとGmailの画面から、ToDoを選択することで小さなポップアップが表示されます。 使い勝手はとてもよく、簡易的にタスクを登録でき、階層に分けて登録することもできます。ポップアウトすることで別ウィ [続きを読む]
  • [Windows10] iAStorDataSvcのCPU負荷が気になる
  • WIndows10にしてから、CPU負荷が常に20%以上になっており、いろんな処理が遅い状態でした。タスクマネージャーのプロセスで確認するとiAStorDataSvcというプロセスが常にCPU負荷をかけていて、その実態は、Intel Rapid Storage Technologyとなっています。しょうがないのかと思っていましたが、解決策がありました。Intel Rapid Storage Technologyのドライバを最新にするだけです。ダウンロードサイトから最新のドライバをダウン [続きを読む]
  • [Oracle] DISTINCTがエラーになる
  • 重複を取り除くのにとっても便利なDISTINCT句ですが、ORDER BY句を含めたSELECT文にDISTINCTを付けるとエラーになることがあります。例えばこんなSQLSELECT DISTINCT IDFROM TEST_TABLEORDER BY NAMEORA-01791: SELECT式が無効です。文法は間違ってないはずなのに。。。と原因がわからなくて困ることがあります。DISTINCTのつづりを間違えたかと何度も見直したり。これはDISTINCTを付ける場合、ORDER BYにそのカラムを指定する必要 [続きを読む]
  • [Eclipse] Tomcatを動かしていると、一定間隔で勝手にデバッグで中断する
  • EclipseのTomcatプラグインでTomcatを起動して動作確認をしていると、その最中に勝手にデバッグで止まるようになりました。進めてもまたしばらくすると同じところで止まります。身に覚えのない場所です。再起動すると収まりますがまたしばらくしたら止まるようになります。とりあえず止まらないようにするには、設定-Java-デバッグの画面で、キャッチされない例外で実行を中断チェックを外します。これで止まらなくなります。ただ [続きを読む]