program study story

プログラムの勉強 アウトプット

エッセンシャルWPF_読んで、わからなかった用語_書き覚え

GUIとは

Graphical User Interfaceの略。

コンピューターの画面上に表示されるウィンドウやアイコン、ボタン、プルダウンメニューなどを使い、マウスなどのポインティングデバイスで操作できるインターフェース。

■マネージオブジェクトモデルとは

マネージオブジェクトとは人により、認識のばらつきがあるようです。

分解して、和訳すると、

▼マネージ

管理すること。経営すること。処理すること

▼オブジェクト

操作の対象となっているデータ、または、オブジェクト指向の考え においてプログラムが扱う対象のこと

▼モデル

型。模型

■メッセージループとは

 Windowsアプリケーションは、受け取ったメッセージを1つずつ処理する。すべてのメッセージを処理し終えると、また次のメッセージが来るのを待つ。

メッセージを待ち→受けとったらそれを処理→次のメッセージを待つ

これの一連の動作を、Windows用語で「メッセージ・ループ」と呼ぶ。

 

CLR型システムとは

Common Language Runtimeの略。

共通言語ランタイムのシステムのこと。

 

■ウィジットとは

ホーム画面上で、ひと目で情報を得られるように小型化されたアプリのこと。

 

■オンデマンドとは

ユーザの要求があった際に、その容共に応じてサービスを提供すること

 

■バッファリングとは

複数の機器やソフトウェアの間でデータをやり取りするときに、処理速度や転送速度の差を補ったり、通信の減速や中断に備えて専用の記憶領域に送受信データを一時的に保存しておくこと

 

■ハングアップとは

動作中のコンピュータやソフトウェアが機能を停止し、操作を受け付けなくなったり外部からの通信に応答しなくなること

サーフェスとは

面、表面、平面、水面、地表面、外見、上辺、(水面に)浮上する、表面化する、明るみに出る、平らにする、面をつける、などの意味を持つ英単語。

■ベクタベースとは

▼ベクタ

「方向と大きさ」のように、互いに独立な複数の異なる値の組み合わせとして表される量のこと。数学や物理学では、「ベクトル」のこと。

▼ベース

土台。基礎。基本。

アンチエイリアシングとは

サンプリングやダウンサンプリングでエイリアシングが起きないようにするための処理

エイリアシング

アナログ信号をサンプリングする際に起こる現象のこと。

▼サンプリング

標本化。リサンプリングの1つのこと。

連続信号を一定の間隔をおいて測定することにより、離散信号として収集すること。

 ▼連続信号

  実数値の定義域(通常、時間)の関数として表される変化する値(信号)のこと。

 ▼リサンプリング

  ある標本点系列でサンプリングされた信号を、別の標本点系列でサンプリングされた信号に変換すること

▼ダウンサンプリング

サンプリング周波数を下げる変換のこと。(対義語:アップサンプリング)

 

レンダリングとは

データ記述言語やデータ構造で記述された抽象的で高次の情報から、コンピュータのプログラムを用いて画像・映像・音声などを生成すること

■ネストとは

あるものの中に、それと同じ形や種類のものが入っている状態や構造のこと。

■セマンティックスとは

「データの意味」のこと。データの「中身」を指すこと。

シンタックスとの関係がある。

シンタックスとは

(データの形式や構造)に対応する概念。データの「枠組み」を指す。

セマンティックスとの関係がある。

エンコーディングとは

ある形式のデータを別形式のデータに変換する。

■インラインコードとは

サブルーチンを呼び出すためのコードの代わりに、直接コード内に記述された、サブルーチンの内容のこと

■ディレクティブとは

コンパイル時にコンパイラーに与える細く情報のこと

XML プレフィックスとは

XML名前空間を表す際に使われる<A:oo>のAの部分のこと。

<・・・xmls:プレフィックス="識別するためのURI">

    ・・

<プレフィックス:要素名>・・・・<プレフィックス:要素名>

 

XMLパーサとは

XML形式の文書やアイルから、テキストデータの部分だけを抜き出して、プログラムやアプリケーションソフトが利用しやすい形に変換するためのプログラムまたはソフトウェアのこと。

■シームレスとは

継ぎ目のない状態のこと。

例:

アプリケーションソフトの中で、それぞれの機能が区切られることなく一貫して操作することが出来る状態などのこと。

アクセラレートとは

「速力を速める」、「加速する」という意味。

オプションのハードウェアやソフトウェアを使いすることにより、システムの性能をさらに向上させる場合などに使われる。

■マテリアルとは

バイスが変わっても使いやすいシームレスな概念。

■ボイラーレポートコードとは

言語仕様上省くことができない定型的なコードのこと。

本質的なロジックでないため、アプリケーションを実装するうえで冗長なコードとなる。

■インクルードとは

あるファイルの中に別のファイルに記述された内容を追加する機能のこと。

■オーサリングツールとは

文字や画像、音楽、動画など、いろいろな素材を組み合わせたソフトウェアを作成するツール。

コンピュータでいわゆるメディアコンテンツを作るためのアプリケーションソフトウェア

AdobeDirectorがその代表。

 

 

 

 

C#_$文字列補間について

♦補間とは

 数値表や観測で得られた値に基づいて、その間にある、表が載せないまたは観測していない数値に対する値を算出すること。

リテラルとは
 数値や文字列をコードに直接記述したものをリテラルと呼ぶ。
例えば、整数(1...10...100など)や、"Hello World!!"などの文字列をコードに直接書かれたデータがリテラル
(注)
 コードに直接書かれるため、値の変更がないものであるが、定数(const)ではないということを認識する。
 
文字列リテラルを挿入文字列と認識するため、先頭に「$」記号を追加する。
 
■補間式の構造 
 {<interpolationExpression>[,<alignment>][:<formatString>]}
 []内は省略可
using System.Windows;
 
namespace ConsoleApp1
{    
     class Program
    {
        static void Main(string[] args)
        {
            Random rnd = new Random();
           int[] numbers = new int[4];
       int total = 0;
         for (int ctr = 0; ctr <= 2; ctr++)
       {
         int number = rnd.Next(1001);
          numbers[ctr] = number;
         total += number;
        }    
          numbers[3] = total;
        object[] values = new object[numbers.Length];
           numbers.CopyTo(values, 0);
        Console.WriteLine($"{values[0]} + {values[1]} + {values[2]} = {values[3]}",
           values);
        }
    }
}

 

 

 

 

C# 複合書式指定について_String.Format("{0}")

 String.Formatメソッドとは?

第1引数に指定した書式で第2引数以降のオブジェクトを変換して出力表示する。

using System.Windows;
 
namespace ConsoleApp1
{    
     class Program
    {
        static void Main(string[] args)
        {
           string format = String.Format("{0}", 10);
           Console.WriteLine(format);
        }
    }
}
 
書式内では中カッコ(「{ }」)とインデックス番号を使って記述します。
{index[,aligment][:formatString]}
これを複合書式指定と呼ぶ。
※[,aligment][:formatString]は省略可能。
 
indexは、第2引数以降のオブジェクトのインデックス番号を指定します。
 
aligmentについて
書式設定フィールドの幅を指定する。
 
FormatStringについて
書式指定子を指定する。
 
:書式内で文字として{}を使いたい場合
 
using System.Windows;
 
namespace ConsoleApp1
{    
     class Program
    {
        static void Main(string[] args)
        {
           string format = String.Format("{{{0}}}", 10);
           Console.WriteLine(format);
        }
    }
}
 
■ 書式指定子とは?
各書式指定子にフォーマットを変更する。
C#_書式指定子 一覧
-----------------------------------------------------------------------------------------

 指定子  呼び名    説明

 G    General    一般

 N    Number     数値

 F    Fixed-point    固定小数点

 E    Exponential   指数

 P    Percent    パーセント

 D    Decimal     10進数

 X    Hexadecimal   16進数の大文字

 x    Hexadecimal   16進数の小文字

 C    Currency    通貨

-----------------------------------------------------------------------------------------

■ カスタム書式指定子とは

数値を0埋めで出力したり、3桁で区切ることができる。

-----------------------------------------------------------------------------------------

C#_カスタム指定子 一覧
指定子   呼び名         説明
0     ゼロプレースホルダ   0埋めで出力

#     桁プレースホルダ    桁数の指定

,      桁区切り記号      3桁区切り

.      小数点         小数点以下の桁数を指定

%       パーセント       パーセント表示

;     セクション区切り記号   書式を複数指定する場合に区切りで使用

-----------------------------------------------------------------------------------------

using System;

namespace ConsoleApp1

{

     class Program
    {

        static void Main(string args)

        {

                string names = { "Adam", "Bridgette", "Carla", "Daniel",
                                                                 "Ebenezer", "Francine", "George" };
                decimal[] hours = { 40, 6.667m, 40.39m, 82, 40.333m, 80,16.75m };
                                                                                   

                Console.WriteLine("{0,-20} {1,5}\n", "Name", "Hours");
                for (int ctr = 0; ctr < names.Length; ctr++)
                Console.WriteLine("{0,-20} {1,5:N1}", names[ctr], hours[ctr]);

        }

    }

}

 

XAML_簡単構成について_基礎知識

XAMLWindowsアプリケーションを作成するには

少なくとも2つの.xamlファイル(=拡張子が「.xaml」のファイル)が必要。

・ウィンドウを定義した.xamlファイル

・アプリケーションを定義した.xamlファイル

 

例1

・MainWindow.xaml(ウィンドウを定義した.xamlファイル)

<Window
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
Title="MainWindow" Height="450" Width="800">
Hello World
</Window>

・app.xaml(アプリケーションを定義した.xamlファイル)

<Application
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
StartupUri="win.xaml"
/>

XAMLでは、プロジェクト・ファイル(.projファイル)を記述し、ビルド・ツール (MSBuild.exe)を使って実行ファイルを作成する。

--------------------------------------------------------------------------------------------------

ウィンドウ定義(MainWindow.xaml)とアプリケーション定義(app.xaml)とプロジェクト・ファイル(hello.proj)

ビルド・ツール(MSBuild.exe)

実行ファイル(HelloWorld.exe)

--------------------------------------------------------------------------------------------------

というexeファイル生成の流れ。

 

XML名前空間の基礎知識

XMLは、各要素が属する名前空間をxmlsという特別な属性を使って表す。

例2 --------------------------

<タグ1>
    xmlns="MyNameSpace"
    属性1="……" 属性2="……" >
  <タグ2>
    ……
  </タグ2>
</タグ1>

--------------------------------

例2においては、<タグ1>要素と、その子要素である<タグ2>要素はMyNameSpace名前空間に属していることを表している。

 

例1のMainWindow.xamlでは、

<Window
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

……

という名前空間に属していることを指示しています。

 

■ プロジェクト・ファイルの記述

(例) _プロジェクト・ファイル

--------------------------------------------------------------------------------------------------

<Project
xmlns="http://schemas.microsoft.com/developer/msbuild/2003"
DefaultTargets="Build" >

<PropertyGroup>
<AssemblyName>HelloWorld</AssemblyName>
<OutputType>MainWindowexe</OutputType>
<OutputPath>.\</OutputPath>
</PropertyGroup>

<ItemGroup>
<ApplicationDefinition Include="app.xaml" />
<Page Include="MainWindow.xaml" />

<Reference Include="System" />
<Reference Include="WindowsBase" />
<Reference Include="PresentationCore" />
<Reference Include="PresentationFramework" />
</ItemGroup>

<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<Import Project="$(MSBuildBinPath)\Microsoft.WinFX.targets" />

</Project>

--------------------------------------------------------------------------------------------------

<AssemblyName>HelloWorld</AssemblyName>

 ↑のタグは、.exeファイルに使用される名前。

<ApplicationDefinition Include="app.xaml" />

 ↑のタグは、アプリケーションを定義した.xamlファイル。

<Page Include="MainWindow.xaml" />

 ↑のタグは、アプリケーション定義が必要とする.xamlファイル。

 

WPF_C#_Xaml_基礎_DataContextを設定する方法

WPF:DataContextを設定する方法

■プロパティに設定する方法

・csファイルのコンストラクタにおいて、DataContextプロパティを直接設定する方法。

ViewModelを生成するだけでなく、初期設定等を行う場合

XAMLにDataContextを記載しないので、XAML上でDataContextに何が設定されているかあらかじめ知っている必要があることになる。

MainView.xaml.cs

namespace WpfApplication.View
{
    using System.Windows;
 
    public partial class MainView : Window
    {
        public MainView()
        {
            this.InitializeComponent();
            this.DataContext = new WpfApplication.ViewModel.MainViewModel();
        }
    }
}

 

XAMLに記載する方法

XAML上で設定する方法。

初期化時にあれこれはできないが、XAMLとコードがキレイに分離できている。

MainView.xaml

<Window x:Class="WpfApplication.View.MainView"
        xmlns:local="clr-namespace:WpfApplication.ViewModel"
        Title="MainWindow" Height="125" Width="210">
    <Window.DataContext>
        <local:MainViewModel />
    </Window.DataContext>
    <Grid>
    </Grid>
</Window>
 
1.Windowsタグ内にDataContextで使用するクラスのネームスペースを定義する。
<Window
    xmlns:local="clr-namespace:ここにネームスペース"
>
</Window>
2.Windowsタグ内のxmlns:local="clr-namespace:ここにネームスペース"のnamespaceに含まれるクラスはビルドしておく。
 
3.Windows.DataContextタグ内にDataContextのクラスを指定する。
<Window
    xmlns:vm="clr-namespace:ここにネームスペース"
>
    <Window.DataContext>
        <local:ここにクラス名 />
    </Window.DataContext>
</Window>
 

psqlについて_一般的なオプション実行

コマンドプロンプトより、psqlを実行する場合、

オプションが用意されている。

オプションの一覧 

--- 一般的なオプション ---

・-c,-command=コマンド

(SQLまたは内部)単一のコマンドを1つだけ実行して終了

・-d,-dbname=DB名

接続するデータベース名

・-f,--file=FILENAME

ファイルからコマンドを読み込んで実行後、終了する

・-l,--list

私用あのうなデータベース一覧を表示して終了する

・-v,--set=,--variable=名前=値

psql変数'名前'に'値'をセット(例:-v ON_ERROR_STOP=1)

・-V,--version

バージョン情報を表示して終了する

・-X,--no-psqirc

初期化ファイル(~/.psqlrc)を読み込まない

・-1(数字の1),--single-transaction

(対話形式でない場合)

単一のトランザクションとして実行する

・-?,--help[=options]

ヘルプを表示して終了する

・--help=commands

バックスラッシュコマンドの一覧を表示して終了する

・--help=variables

特殊変数の一覧を表示して終了する