JavaScript で F5 キーを無効化する方法

F5 キーを無効化する

JavaScript で F5 キーを無効化して、再読込をさせないようにします。

いくつか方法があるので、お好みの方法で。

JavaScript で記述する場合

やや古典的な書き方。環境を問わず使える方法です。


window.onload = function () {  
    document.onkeydown = function (e) {  
        return (e.which || e.keyCode) != 116;  
    };  
}

jQuery で記述する場合

Common 等に追加しておくのが一般的でしょうか。


$(function () {  
    $(document).keydown(function (e) {  
        return (e.which || e.keyCode) != 116;  
    });  
});

BODY タグに書いちゃう

こんな方法もあります。ASP.NET の部分ビューのように、レイアウトを切り分けているのであれば、この方法もあり。


<body onkeydown="return (event.keyCode != 116)">

Visual Studio で「 1 つ以上のエラーが発生しました」が出てデバッグできない

1 つ以上のエラーが発生しました

デバッグアダプターを起動できませんでした。追加情報を出力ウィンドウで確認できる場合があります。

……出力ウィンドウで確認できませんでした。
こういう場合、ほとんどの場合、表示されているメッセージは意味がわからない。

ブラウザを変える

例えば、Chrome でデバッグをしていて、このようなエラーが出たとします。
デバッグは停止しているけど、他に開いている Chrome のウィンドウ(タブ)は無いだろうか?

全てのウィンドウを閉じて、深呼吸してから(少し時間をおいて、プロセスが終了するのを待つ)、もう一度デバッグを開始すると、何事もなかったかのようにデバッグできる場合がある。

それでもダメなら、ブラウザを変えてみる。

ツールバーにある「▶」ボタンの右端をクリックすると、Web ブラウザーの変更ができるので、他のブラウザー(Edge とか)に変更するとデバッグできるようになります。

……たぶん。(私はできた)

JavaScript で Alt キーや Ctrl キーと同時に押されたキーを取得する

JS でキーイベント(Ctrl, Shift, Alt)をキャッチする

Web システムにおいて、キーボードによるアクセスキーが要件にあった場合の対応。

キーの同時押し

Ctrl キー, Alt キー, Shidt キー等の押下は、event でキャッチする。
その後、同時に押されたキーを判定する。

なお、やや冗長に見える書き方ではあるが、if 文を & で一行にまとめようとするとうまくいかなかった。

$(function ($) {

    $(window).keydown(function (e) {
        // Alt キーとの組み合わせをキャッチする。
        if (event.altKey) {
            if (e.keyCode == 13) {
                alert("Alt + Enter");
                return false;
            }
        }

        // Ctrl キーとの組み合わせをキャッチする。        
        if (event.ctrlKey) {
            if (e.keyCode == 13) {
                alert("Ctrl + Enter");
                return false;
            }
        }

        // Shift キーとの組み合わせをキャッチする。        
        if (event.shiftKey) {
            if (e.keyCode == 13) {
                alert("Shift + Enter");
                return false;
            }
        }        
    });

});

ブラウザのショートカットキーは無効化できない

なお、上記方法では、ブラウザのショートカットキーは無効化できない。
例えば、誤動作を防ぐ目的で「Ctrl + W (タブを閉じる)を無効化」といったことはできない。

同時押しするボタンのキーコード一覧

キーコードについては、こちらのサイトに詳細な情報がありました。参考までに。

キーコード一覧
https://web-designer.cman.jp/javascript_ref/keyboard/keycode/

C# の input string was not in a correct format エラー

文字列が変換できなかった場合に発生するエラーで、
例えば、string.Format で変換対象となる文字列の中に「{(中かっこ)」等の「意味がある」文字列が混ざっていると、このエラーとなる。

// エラーが発生する
var s = string.Format("{今日の日付:{0}", DateTime.Today.ToString("d"));

文字列を組み合わせてから変換をかける場合などには、入っているデータに注意が必要。

Excel で入力した文字に勝手に取り消し線が入る

……次の行には、取り消し線は要らない。普通の文字を入力するぞ。

なんでやねん。

「データ範囲の形式及び数式を拡張する」を解除

これは、Excel のお節介機能のひとつ。
オプションを開き、[ 詳細設定 ] - [ 編集オプション ] にある、
「データ範囲の形式および数式を拡張する」のチェックを外す。

この機能は、同じ形式(この場合は取り消し線)が 3 行以上続いた際、次のセルにも自動的に同じセルの形式を適用するオプションのようです。

このオプションを解除して、他のセル(取り消し線の書式がないセル)をコピーしてから、もう一度入力してみます。

今度は大丈夫です。

Mac 版 Excel の環境設定

Mac の場合、画面上部にあるメニューの「Excel」をクリックして環境設定を開きます(「command + , (カンマ)」 でも開きます)。

「編集」を開きます。

Mac 版 Excel の環境設定

「編集オプション」にあります。

Windows 10 でネットワークにある NAS が表示されない

このサイトにアクセスできません

エクスプローラーのアドレスバーに、「¥¥192...」という感じで NAS の IP アドレスを入力して Enter を押すと…

なせかブラウザが起動して、アクセスできない現象が出ました。

ツールバーのアドレスからアクセス

タスクバーの「アドレス」を表示

タスクバーを右クリックし、[ ツールバー(T) ] - [ アドレス(A) ] をクリックすると、タスクバーに「アドレス」という入力領域が表示されます。

タスクバーの「アドレス」から NAS にアクセス

ここに IP を打ち込んでみると…

NAS のファイルを表示

エクスプローラーから、対象の NAS が表示されました!

タスクバーの「アドレス」と、エクスプローラーのアドレスバーの違いはよくわかりませんが、ひとまずこれで目的は達成できたのでよしとします。
Windows 10 のよくわからない挙動です。

コピーした行の挿入が表示されない時はフィルタされていないかチェック

コピーした行の挿入が表示されない

Excel を使っていて、右クリック時に「コピーした行の挿入(コピーしたセルの挿入)」が表示されないことがあります。

「並べ替えとフィルター」 で表示される行を絞っていないか?

並べ替えとフィルター

並べ替えとフィルターで行の絞り込みをしている場合、「コピーしたセルの挿入」はできないのです。

コピーした行の挿入

並べ替えとフィルターを解除しないと、行全体のコピー & 挿入はできません。

Mac の エラーコード-50 は、ファイル名が長すぎるのでリネームする

ファイルをコピーしようとして発生。
短い名前にリネームしたらコピーできました。

テレワークで眠くなったので CO2 モニターを買ってみた

働き方が変わったことで、日本でもテレワークが一般的になってきました。
開発現場でも、ようやく在宅勤務が許可されるケースも増えてきたのではないでしょうか。

テレワークは眠い

在宅勤務は、通勤が必要なかったり、自分の生活スタイルで仕事をすることができたりと、メリットもありますが、在宅勤務を始めてから、現場に出て仕事をするよりも眠くなる(ぼーっとする)ように思いました。

睡眠時間が足りないという話ではなく、ひょっとして自室の二酸化炭素濃度に原因があるのでは? と考えるようになりました。

厚生労働省のビル衛生管理の指針

厚生労働省は、ビルの衛生管理の指針として、基準を発表しています。
これによると、温度は 17℃〜28℃、湿度は 40%〜70%、
そして、二酸化炭素濃度は 1,000ppm 以下を推奨しています。

そもそも、二酸化炭素濃度が高まると、健康には以下のような悪影響があると言われています。

  •  450ppm 許容範囲
  •  600ppm 匂いや空気のよどみを感じる
  • 1,000ppm 軽い眠気が生じる
  • 2,500ppm 健康への悪影響が想定される

CO2 モニターを買ってみた

CUSTOM CO2 モニター

まず、仕事をしている自室の二酸化炭素濃度を計測するため、
CO2 モニターを購入してみました。

私が購入したのは、気温と CO2 濃度が交互に表示され、
CO2 濃度によりランプの色が変わるシンプルな CO2 モニターです。

使い始めて驚愕したのは、部屋を締め切って作業をしていると、あっという間に 1,000ppm を超える数値だったことです。この状態で数時間作業をしていると、二酸化炭素濃度は、1,500ppm を超えていきます。

なにより、就寝中に締め切った状態でいると、
朝には 2,000ppm 近くまで CO2 濃度が上昇していました。

最近の建物は機密性が高いといいますが、こういった悪影響もあるのですね。。

生産性を高める工夫に投資せよ

CO2 モニター購入後は、時折 数値をチェックし、
二酸化炭素濃度が 1,000ppm を超えていた場合は換気するようにしました。

以前より、頭が冴えるように感じます。

意外に盲点なのですが、テレワークで生産性を上げるには、
自室の二酸化炭素濃度に注目してみてはいかがでしょう?



【 参考 】

blogger robots.txt によりブロックされました

Google Console エラー

Blogger でサイト運営を行っていると、Google Search Console から時々このようなメールが来ます。

結論から言うと、なにもしなくてもよい、みたいですね。

Bloggerでインデックスカバレッジの問題が検出される理由と対処について

VLCでも修復できないAVIを再構築する

VLC を使った AVI ファイルのインデックス再構築

破損した AVI ファイルは、フリーソフトの VLC で修復することができます。

VLC を使った AVI ファイルのインデックス再構築

ほとんどの場合は VLC で修復できるのですが、稀に VLC でも修復できない(修復に時間がかかる、または途中で止まる)ことがあります。
そんな時に役立つソフトウェアが DivFix++ です。

AVIファイルのインデックスを再構築

DivFix++ は、破損した AVI ファイルのインデックスを再構築します。
フリーソフトで、Windows だけでなく、Mac と Linux にも対応しています。

「DOWNLOAD」から、ダウンロードできます。

DivFix++を使った AVI ファイルのインデックス再構築

ダウンロードしたファイルを解凍し、「DivFix++.exe」を実行します。

英語表記ですが難しいことはなく、
「Source Files」に破損した AVI ファイルをドラッグアンドドロップし、
「Fix」ボタンをクリックすると AVI ファイルを自動的に修復してくれます。
(修復したファイルは、対象の AVI ファイルと同じ場所にコピーされます)

VLC でも AVI ファイルのインデックスの修復ができなかった場合はお試しあれ。

Excel のグループ化でオブジェクトが折りたたまれない

図形の書式設定
Excel のグループ化は便利です。

オブジェクトが折りたたまれない

たまに、オブジェクトが折りたたまれないという残念な状況になります。
そんな時は「図形の書式設定」を開き、プロパティで「セルに合わせて移動やサイズ変更をする」に設定すればちゃんと折りたたまれるようになります。

マカフィーを解約した

ウィルス対策として McAfee を使っていましたが、初期設定では自動更新されるんですね。 McAfee 自体に不満はありませんが、2 年間使用して、そもそも McAfee があったから助かった! というシーンがなかったので、解約しました。

解約はチャットか電話で、時間は 9 時から 18 時だけ


自動更新されてしまっていても、返金条件を満たしていれば返金(解約)できます。

マカフィー個人向け製品の払い戻し(返金)に関する規約
ドキュメント ID: TS102426


私はチャットで解約しました(電話の場合、通話料がかかります)。
チャットならレンスポンスも早く楽でした。土日でも大丈夫みたいです。

ちなみに、登録していたカード情報も削除してくれました。
サービスは良かったので、また機会があったら使ってみたいですね。

日本企業にありがちな、解約方法が分かりづらかったり、つなぎ止めをされるという馬鹿な話がなくて好感もてます。

VIsual Studio のインストール容量を減らす

Visual Studio も 2019 になり、インストール時に必要となる容量はかなり減りました。開発する環境だけインストールするように柔軟に選べるようになったからでしょう。
(初期の VS では CD-ROM 5 枚組で半日作業でしたね。MSDN のヘルプもローカルにインストールしていましたしw)

とはいえ、HDD 容量の少ないモバイルノートでは、数ギガ単位でもインストール時の容量を減らしたいものです。

ダウンロードキャッシュを無効にする


Visual Studio Installer

Visual Studio のインストールは、オンラインインストーラーになり、ファイルをダウンロードしながらダウンロードする方式になっています。
このため、ダウンロードしたファイルをローカルにキャッシュする機能が備わっています。

これは変更時にいちいちダウンロードしなくて良い、ということで便利さもありますが、当然 HDD を圧迫します。

チェックを外すと、インストールや変更時に再度ダウンロード作業が発生するということなので、ローカル HDD の容量を少しでも削りたい場合はチェックを外しておくといいですね。

【 変更方法 】
  1. Visual Studio Installer を起動
  2. インストール済みコンポーネントの [変更] をクリック
  3. [インストールの場所] にある、ダウンロードキャッシュの「インストール後にダウンロードキャッシュを保持します」のチェックを外す

ASP.NET MVC Bundle で読み込みパフォーマンスを改善

外部ファイルとした JavaScript や CSS ファイルを大量に読み込ませようとすると、サーバーへの要求が多く発生し、ページの読み込みが遅くなります。
 ASP.NET MVC の Bundle 機能を使うと、これら静的ファイルの読み込みのパフォーマンスを改善させることができます。

バンドルとは

ソリューションの中にある、App_Start フォルダ下に BundleConfig というファイルがあります。これは、ページに読み込ませる JavaScript, CSS のファイルを管理するためのもので、Bundle と呼ばれており、ASP.NET MVC 特有の機能です。

複数のファイルをまとめる(バンドル)

Bundle すると、読み込ませる JavaScript(スクリプトファイル)、CSS をひとつにまとめてくれます。ページ要求数を減らすことでパフォーマンスの向上を狙っています。

ファイルのミニファイ化
また、JavaScript, CSS ファイルの中にあるコメントや空白を削除して(ミニファイ化)ファイルサイズを減らすことで、ネットワーク負荷も低減させてくれます。

BundleConfig の設定方法

設定方法は、BundleConfig クラスの RegisterBundles メソッド内に、以下の文を加えるだけです。 true にすると、JavaScript, CSS ファイルがミニファイ化されてしまい、デバッグ時に追えないため、リリース時のみ有効にする設定がオススメです。
#if DEBUG == false
            BundleTable.EnableOptimizations = true;
#endif

Windows 10 で ファイルに付けた評価の星を消す

Windows エクスプローラー の評価
Windows のエクスプローラーで、間違えてクリックして「評価」が付いてしまうことがあります。消そうと思って、星のマークをクリックしても、全ての星を消すことができません。

評価は、「プロパティや個人情報を削除」 というメニューから消します。

ファイルのプロパティを消す

「このファイルから次のプロパティを削除」 を選択し、「評価」 にチェック。 「OK」 ボタンをクリックします。
ファイルのプロパティを消すことができた
評価自体を消すことができました。
間違えて高評価にしてしまっても慌てなくて大丈夫です。

Office アプリケーションを正しく起動できませんでした (0xc0000142) を修復する

アプリケーションを正しく起動できませんでした (0xc0000142)
Excel が起動できなくなりました。
Windows のアプリと機能から、オンライン修復を行うことで直りました。

Office をオンライン修復する

プログラムの追加と削除を起動します。

Windows アプリと機能
アプリを検索します。「Office」や、365 の場合は「365」とタイプすると出てきますので、「変更」ボタンをクリック。

Office プログラムの修復
「クイック修復」を試してみて、ダメだったら「オンライン修復」を選択してみましょう。解決するはずです。

新しい Blogger で HTML モード に切り替える

今までの Blogger エディター
 
新しい Blogger

新しい Blogger エディター
変わりすぎ……

新しい Blogger

HTML エディターの切り替えボタン

これは所見ではわからない。


新しい Blogger は、使い勝手が変わりすぎて、今までに慣れた人ほど使いづらさを感じる。

しかし、待望の? iPad(Chrome) でも編集できるようになったのは良いね。

エディターが変更されました(2020/7/18 追記)

Blogger HTML ビューに切り替え

今度はタイトルの下、一番左のマークをクリックすると HTML モードになります。
コロコロ変えすぎ……。

ASP.NET と .NET Framework の関係と将来性

ASP.NET と .NET Framework 業務アプリではどれを選ぶべき?

ASP.NET と .NET Framework 業務アプリではどれを選ぶべき?


2020 年。.NET Framework が登場してから 20 年近くが経過しました。
そして、テクノロジーの進歩と時代の要求に合わせて、.NET Framework は大きな変化の時を迎えました。

私は .NET Framework 1.1 が登場した頃から .NET に関わっていますが、
今、ASP.NET と .NET Framework を選定する際にどうすれば良いかをまとめました。

.NET Framework と .NET Core、そして.NET


まず、プラットフォーム(アプリケーション開発・実行環境)の話から。
大きなポイントはこの通り。
  • .NET Framework は 4.8 で最終バージョン
    今後は、セキュリティパッチ等の提供のみ行われます。
  • .NET Core は、2020 年秋に登場する「.NET 5」に統合
    新機能は .NET 5 に追加されていく。

もう少し詳しく説明すると、以下の通りです。

.NET Framework


Windows サーバーに対応した、(従来までの).NET Framework。
サポート期間は、それぞれの OS のサポートライフサイクルに従うため、OS のサポートが続いている限りセキュリティパッチがリリースされます。

.NET Core


マルチプラットフォーム(Linux でも動く)に対応した .NET Framework。
.NET Core は、3.1 が最終バージョンです。
3.1 は LTS(Long Term Support)で、リリースから 3 年間(2022 年 12 月まで)サポートされます。

.NET 5


.NET Core をベースに、Xamarin、Unity、IoT、AI 全ての分野、あらゆるデバイスをサポートする意欲的なプラットフォームです。
今後 マイクロソフトの .NET 投資全てはこちらに注がれます。
.NET 5 以降は、.NET 6, .NET 7...とリリースされていく予定です。


ASP.NET は複雑な状況


さて、.NET の Webアプリケーションフレームワーク である ASP.NET はどうでしょう。詳しく知らないと、どれを選べば良いのかよくわかりません(笑)。

  • ASP.NET Web Forms
  • ASP.NET MVC
  • ASP.NET Core MVC
  • ASP.NET Razor ページ
  • Blazor

それぞれのフレームワークの説明は、こちらにまとめています。


採用するプラットフォームに分類すると、シンプルになります。

  • NET Framework
    • ASP.NET Web Forms
    • ASP.NET MVC
  • .NET Core (.NET 5 以降)
    • ASP.NET Core MVC
    • ASP.NET Razor ページ
    • Blazor

※ ちなみに、.NET Core の場合、フロント側は、React や Angular という選択肢もあります。



ケース別 推奨するフレームワーク


フレームワークは、顧客が求めるものによって決まるのかな、と思います。

保守的な顧客

  • 安定性重視
  • 閉域網で提供される、社内向けシステム
  • 外部に公開しているサービス(BtoB)
  • 極力モジュールのアップデート等は行いたくない
  • 機能改修は行うけど、作ったら 5 年 10 年の単位でそのまま使う

こんな感じの顧客の場合、以下の選択しかありません。

.NET Framework 4.8
ASP.NET MVC

自動テストを入れておくと、保守フェーズに入り、ちょっとした機能改修の際にも品質を担保しやすくなります。


やや保守的な顧客


  • 安定性重視
  • 外部に公開しているサービス(BtoB または BtoC)
  • モジュールのアップデートは行っても良い

.NET Framework 4.8
ASP.NET MVC

または

.NET Core
ASP.NET Core MVC

基本的には安定性重視だけど、モジュールのアップデートや機能追加は定期的に行いたい場合です。
今後、トレンドを追いかけたいなら .NET Core がオススメです。

進歩的な顧客

外部に公開しているサービス(BtoC)で、とにかく「今風」のイケてるアプリが欲しい。アジャイル開発も全く抵抗がない。

.NET Core
React, Angular(Blazor も検討)


顧客が何を求めているのかを考えよう


最後に、あえて言うことでもありませんが……

.NET Framework が登場した時には、ASP.NET Web Forms しか選択肢がありませんでしたが、今ではたくさんの選択肢があります。

ただし、ここに挙げた話は、あくまで「作る側」の話であり、顧客からすると「どうでもいい」話です。

顧客が望んでいる予算と納期で、最高のものを提供するにはどうすればよいか、という視点を持って選定を行いたいものです。

ASP.NET 業務アプリ開発時のフレームワーク選定

ASP.NET 業務アプリ開発時のフレームワーク選定

現在の ASP.NET の状況


2020 年。
.NET 5 の登場を控え、フレームワークとしての ASP.NET を列挙してみると、これだけ種類があります。
  • ASP.NET Web Forms
  • ASP.NET MVC
  • ASP.NET Core MVC
  • ASP.NET Razor ページ
  • Blazor

もう少し詳しく説明しましょう。



1. ASP.NET Web Forms


Web の概念を意識させず、Windows Forms のアプリケーションを作成するように、高い生産性で Web 開発が行えたのは衝撃的でした。
一方で、マイクロソフト独自の独特な「お作法」が多く、そこは色々と批判も多い部分ですが、手軽に Web アプリケーションを作れるメリットは、今でもあります。

ViewState によるパフォーマンス問題はありますが(これはけっこう大きいですけど……)、今でも解説書の新刊が発売されている状況から、まだ現役で使っている現場もあるのかもしれません。

2. ASP.NET MVC


MVC パターンによる Web アプリケーションの開発を行えます。
Web Forms とは概念が全く異なっているため、登場時、Web Forms 開発者はかなり戸惑いました(学習を諦めた技術者も少なくありません)。

テストのしやすさ、メンテナンスのしやすさ、そして、パフォーマンスの大幅な改善。
エンタープライズ向けアプリケーション開発の現場では、.NET 開発におけるメインの選択肢となるでしょう。

3. ASP.NET Core MVC


もともと、ASP.NET MVC 6 として開発されていたものです。名前が変わって、Core MVC となりました。
.NET Core で ASP.NET MVC を選択すると、このフレームワークになります。

API、非同期、タグヘルパーといった機能が強化・追加され、従来までの ASP.NET MVC で「イケてない」部分が細かく改良されています。
今後は、こちらが主流になっていくものと考えられます。

4. ASP.NET Razor ページ


MVC ではなく、Web Forms に近い概念をもっています。.aspx と .aspx.cs に別れていた Web Forms の考え方に近いです。
「ページ」に対してのコーディングに集中でき、Web Forms と MVC の「あいのこ」みたいな感じです。
まだそれほど実績がないため、今後どうなるのかに注目です。

5. Blazor


フロント部分も JavaScript ではなく、C# で記述できます。
流行の SPA(Single Page Application)を作る際には、React や Angular も検討されますが、今後、ASP.NET で SPA を作る場合は、最有力となるかもしれません。

そして、Blazor は、Web Forms の後継としての役割も担っています。Web Forms のマイグレーションを行う場合、今後は Blazor を使うよう推奨されています。

プラットフォームにより選択できるフレームワークが異なる


なお、説明したフレームワークは、Visual Studio で新規プロジェクトを作る際に、選択できるものが異なってきます。

.NET Framework 4.8 を選択した場合

  • ASP.NET Web Forms
  • ASP.NET MVC

.NET Core(.NET 5 以降)を選択した場合

  • ASP.NET Core MVC
  • ASP.NET Razor ページ
  • Blazor
  • React, Angular

どれを選択するかで工数も変わってきます。
そして、募集をかけた際に面談に来る技術者も変わってきます。

顧客の要件と照らし合わせた、総合的な判断が求められます。

Excel セルの列幅を自動調整するには Alt + HOI (ホイ)

Alt + HOI(ホイ)で列幅を自動調整


Excel で、入力した内容(文字)に応じてセルの列幅を調整するには、マウスでダブルクリックしているかもしれません。
これをマウスを使わずショートカットキーで行うと一瞬です。

※ このコマンドは、選択されているセルに合わせます。

対象のセルにカーソルを合わせて、キーボードの Alt + H + O + I を押します。Alt + ホイ です。

もう覚えましたね。

Apple Music の曲を再生するためには Apple Musicにサインインする必要があります。

Windows Store

Windows Store でアップデートにエラーが出ていないか?

iTunes のエラーメッセージ

Windows 版 iTunes で音楽を再生しようとした時に、こんなエラーが出た。
もちろん、サインイン済み、Apple Music を購読中。

まず試したのは、一度サインアウトして、再度サインインする方法。
 → 解決せず。

次に試したのは、[ iCloud ミュージックライブラリをアップデート ] の実施。
(メニューの [ファイル] - [ライブラリ] )
 → 解決せず。かつ、アップデート中は激しくマシン負荷がかかる。

最後に試したのは、iTunes のアップデート。

iTunes のアップデートは、Windows Store 経由で行う。
Windows Store を開き、アップデートをかけてみると……エラーが発生!

再試行したら、今度は成功。
iTunes を再起動させたところ、無事に症状が解決。

Windows アップデートに絡んだエラーなのか?
Windows もイケてないが、iTunes もダメすぎる。

モックアップツールのおすすめ (開発者目線)

モックアップツール
業務アプリの世界では、開発者が画面もデザインすることが多々あります。
ただし、(残念ながら)ほとんどの業務アプリは、デザインのセンスが全くない、「ダサい」画面だったりします。

スマートフォンの Cool なアプリに慣れ、一般人でもデザインに対して目が肥えている現代。
業務アプリであっても、少しは画面デザインを Cool にしたい。

UX のこともあるけれど、まずは小綺麗な画面を顧客に提示するためには、モックアップツールが便利です。

開発者目線のモックアップツール

モックアップツールを検索してみると、以下のことが分かりました。

  • ツールは英語のものがほとんど(国産のツールは、ほぼない)
  • モバイル向けに特化しているものも多い(Web 画面をデザインしたい)
  • 利害関係者たちにすぐに確認してもらえるよう、オンライン版が主流(ブラウザで、すぐ確認してもらえる)。
  • 見た目はデザインできるけれど、その画面の後に「開発」が待っているのです。
    テキストボックスやボタンに処理を入れることを考えてほしい。

私が使っても良いな、と思ったおすすめは次の通りでした。


MockFlow


MockFlow

テンプレートが豊富。Bootstrap 用のテンプレートを選択すれば、ASP.NET MVC の画面デザインも簡単。画面遷移図、ワークフローも作成可能。
英語ツールだけど、なんとなくわかる。

タイプ:オンライン型(ブラウザ上で操作)
言語:英語
価格:1ユーザー $14 /mo, 3 ユーザー $29 /mo(フリープラン有)


Bootstrap Studio


Bootstrap Studio

ASP.NET MVC 向けの画面デザインをするためにあるようなツール(笑)。
レスポンシブ時のデザイン確認も一発でできる。
顧客に提示するモック作成に最適。最終デザインとの齟齬がない。

インストール型で、買い切り型というのも安心。

タイプ:インストール型
言語:英語
価格:$29 (1年間のアップグレード), $60(永続的にアップグレード可)
※ 日本の代理店から買うと上記値段ではない。かなり高い



検索するとよく出てくる以下のツールは、私の要望には合わなかった。

prott
オンライン型の国産ツール。
デザイナーファースト。モバイルアプリに特化。
コンシューマー向けのアプリ開発などでは使えるかもしれない。
あと、言語が日本語なのがメリット。

moqups
オンライン型の海外ツール。
基本的にはモバイルアプリ向け。
たぶん高性能なのだろうけど、直感的に使えない。
そもそも、英語なのでとっつきにくい。

Prototyper
インストール型。
使い勝手は良い。
Bootstrap を使わないのであれば、こちらのツールの方がいいかもしれない。
メニューは英語なので、使い方を習熟するのに時間がかかる印象。



モックアップツールは顧客確認のための工数削減


そもそもなぜモックアップツールを使うのでしょうか?

顧客には、「画面を見たい」という要望があります(初期の段階であっても)。
その際に、手早く画面を作って顧客に見せることで安心感が生まれ、その後の作業(確認や、デザイン変更時の折衝)が楽になったりします。

あまり工数をかけたくないけど、
顧客に出せるクオリティの成果物を作るには、モックアップツールは強力な武器になるでしょう。

PowerPoint や Excel でもいいんですけど…… HTML 化できないですからね。

VB はいつまで使える? → もう新規開発で使うのは止めよう

なつかしの VB6

Microsoftは、今後 Visual Basic に新機能は追加しないことを明言しました。
ただし、サポートは継続するそうです。

Microsoft Plots the End of Visual Basic
https://www.thurrott.com/dev/232268/microsoft-plots-the-end-of-visual-basic

.NET 開発は C# で行うことになりますね。
今でも事実上そうなのですが、VB.NET を採用している業務アプリも、たまに見かけます。ただ、今後は VB を使っての新規開発は、いよいよ選択しづらい段階に入ったと言うべきです。

ひとつの時代が終わった気がしますね。

C# DataTable の先頭に行を追加する

DataTable に行を追加する


DataTable に行を追加する場合、対象の DataTable に対して NewRow() することで、行を追加できます。その際、追加する方法によって、好きな場所に行を追加することができます。

そのまま追加する(末尾)

var dt = new DataTable();
// DataTable に行を定義する
dt.Columns.Add("CD", typeof(int));
dt.Columns.Add("Name", typeof(string));

var addRow = dt.NewRow();
addRow["CD"] = 10;
addRow["Name"] = "山田太郎";
// 行を追加
dt.Rows.Add(addRow);

DataTable の先頭に追加する


先ほどの例で追加した行の前に追加してみます。
var dt = new DataTable();
// DataTable に行を定義する
dt.Columns.Add("CD", typeof(int));
dt.Columns.Add("Name", typeof(string));

var addRow = dt.NewRow();
addRow["CD"] = 10;
addRow["Name"] = "山田太郎";
// 行を追加
dt.Rows.Add(addRow);

addRow = dt.NewRow();
addRow["CD"] = 1;
addRow["Name"] = "山本一郎";
// 先頭(ポジション が 0 の位置)に追加する
dt.Rows.InsertAt(addRow,0);

ちなみに、指定したポジションに既に行データがある場合、
その行の後ろに追加されます。

上記の例でポジションに「1」を指定すると、「山田一郎」は 2 行目に追加されます。

資料作成に役立つアイコン(商用利用可)


PowerPoint で資料を作る際に使えるアイコンを配布しているサイトのまとめ。
SVG形式のアイコンは、拡大縮小も きれいにできます。

ICOOON MONO

シンプルで使いやすいアイコンを配布しています。
商用利用可能なアイコン素材をフリー(無料)ダウンロードできます。
使用条件を守れば、クレジット表記、許可なしで利用可能。

ぱっと見、白黒のアイコンだけ? と思われますが、ダウンロードする際にカラーを自由に設定できます。

https://icooon-mono.com/


HUMAN PICTOGRAM2.0

「ヒト」に特化した素材を提供しているサイト。
スポーツ、店舗、イベント等、様々な素材があります。

http://pictogram2.com/

ICONFINDER

英語サイト。とにかく量が多く、カラーアイコンも多数 掲載されています。
配布しているアイコンは、有料・無料、どちらもあります。

https://www.iconfinder.com/


Simple Icons

英語サイト。企業のロゴを使いたいならこのサイト。

https://simpleicons.org/