Android開発日記

【202010】
・入力チェック機能追加
 →バリデーションの組み方
  →Android Saripprライブラリの使用
   →設定方法検索

Amazon Lex(チャットボット)

【参考サイト】
■Amazonコンソール


【手順】参考サイト
①AWSアカウント作成。(クレジット情報必要)
②ルートアカウントのため、IAMでユーザーを作成。
③AWS CLIのインストール。
 コマンドプロンプトからAWSを動作させるためのツール。
④AWS CLIの設定→名前付きプロファイル
【参考サイト】
・Lex設定→Lamda設定→動作確認
 →Lamdaの設定方法が分かりにくい。
・参考サイト2

【やりたいこと】
・Alexaで家の色々指示してやってもらう。
【メモ】
・Slotsのnameは日本語✕英語〇
・最初の1年間は、最大で 10,000回/月のテキストリクエストと
 5,000回/月の音声リクエストが無料で使用可。
・インテント名とスロット名が同じ✕。
【課題】
・スロットに日本語はなんでも入る。日本語対応してない?

Dialogflow(チャットボット)

【ログイン】
■DialogflowGoogle Cloud Platformプロジェクトのセレクタページ
【作業手順】
①Dialogflowエージェント作成
②プロジェクト作成
③サービスアカウントの作成、キー作成
④環境変数の設定
⑤Cloud SDK をインストール
⑥Dialogflow クライアント ライブラリをインストール
【用語】
■Dialogflow
 言語を理解し分類する。言語解析エンジン。
■エージェント
 エンドユーザーとの会話を処理する仮想エージェント。
アプリやサービスが理解できる構造化データに変換する。
■インテント
 1 回の会話ターンにおけるエンドユーザーの意図を分類する。(マッチング)
 └ トレーニング フレーズ
 └ アクション
 └ パラメータ
 └ 回答
■フォローアップ インテント
 インテントのペアのコンテキストを自動的に設定出来る。

■エンティティ
 └ エンティティタイプ
    エンドユーザー表現のデータの抽出方法を指定する。
 └ システムエンティティ
    さまざまなタイプのデータに対応する事前定義。
 └ カスタムエンティティ
    カスタムデータを一致させる。

■コンテキスト
 ある人が「They are orange」と発話した場合、they が何を指すのかを理解するのに必要。
インテントを正しく一致させる。
 └ 入力コンテキスト
 └ 出力コンテキスト

■Dialogflow コンソール
 ウェブユーザー インターフェース
 ・エージェントを作成
 ・ビルド
 ・テスト
■Google Cloud Platform(GCP)Console
 Dialogflow リソースの設定と管理に使用する。
■プリンシパル
 リソースへのアクセスを許可できるエンティティであり、ID とも呼ばれます。
■ユーザー アカウント
  Googleアカウントとして管理され、開発者、管理者、Google Cloud とやり取りするユーザーのことを指す。
■サービス アカウント
 Cloud IAMによって管理されるもので、人間のユーザー以外のものを指す。
【参考サイト】
・Dialogflowとは動作原理料金プラン
・使用手順

Bacth関連

【Bacthコマンド】
■start
 複数のexeファイルを同時に実行したい場合
■call
 複数のexeファイルの終了を待って順番に実行する場合
■@echo off
 実行処理のコマンドを表示しない。

MySQL関連

【コマンドプロンプトのコマンド】
■MySQL起動・・・mysql -u ユーザー名 -h localhost -p
 ※上記はローカルホストの場合
■MySQL終了・・・quit
■データベース選択・・・use DB名
【SQL】
■データベース作成
 create database データベース名;

<ユーザー関連>
■ユーザー作成
 create user 'ユーザー名'@'接続先名' identified by 'パスワード';
 例)create user 'kuma'@'localhost' identified by 'bear';
■権限付与(GRANT OPTION 権限と PROXY 権限以外の全ての権限)
 grant all on *.* to ユーザー名@接続先名;
 例)grant all on *.* to kirin@localhost;

<テーブル関連>
■テーブル作成
 create table テーブル名 (カラム名1 型, カラム名2 型,・・・);
■カラム追加
 alter table テーブル名 add カラム名 型;
 例)alter table product add color varchar(10);

【参考】
■MySQLのダウンロード~DB作成~ユーザー作成

■バッチ作成

Java開発

【開発環境】
フレームワーク・・・SpringBoot
Html・・・Thymeleaf
DB・・・MySQL
DB接続・・・mybatis
Webサーバー・・・Joboss
統合開発環境・・・Eclipse
PC・・・Windows10
【おススメサイト】
・CMAN・・・HTMLの各項目が見やすい
・初心者向けCSS(スタイルシート)入門・・・CSSの仕組みを初心者向けに分かりやすく説明している。
【開発手順】
①Eclipseインストール
②EclipseへのSpringBootの
 インストール
 ※Eclipseマーケットプレース検索時に、
  複数のspringがある場合、
[参考サイト]
・Eclipse、STSインストール~プロジェクト起動JDK、JRE設定

③新規プロジェクト作成
[参考サイト]
・spring bootプロジェクト作成

④JBoss(Webサーバー)ダウンロード
[参考サイト]
・Red Hat JBossダウンロード
 ※20200423現在 コロナの影響かダウンロードできない。

⑤MySQL(DB)ダウンロード


【その他】
・フレームワークが消えた場合。
 →フレームワークのダウンロード
【アノテーション】
<springアノテーション>
アノテーションが付与されたクラスをSpringのDIコンテナにbeanとして登録する。

■@Controller
 ・画面遷移の制御
 ・ドメイン層の Service の呼出 (主処理を実行する)
 ・リクエストの窓口になるクラス
 [参考]
  ・Controller、Service、Repositoryの違い

■@Service
 ・業務処理を提供する。
 ・ビジネスロジックを実装するクラス

■@Repository
 ・データ層のクラス(DAO等のDBアクセスを行うクラス)に付与する。
 ・データ永続化を行うクラス

■@Component
 ・Spring MVCに限らず、SpringのDIコンテナに
  beanとして登録したいクラスへ付与する。

■@RequestMapping
 ・Controllerの処理対象のパスを指定
 [参考:各種属性]
 └ ■Post
    
 └ ■Get

■@SpringBootApplication
 下記のアノテーションが使用可能となる。
 ・@Configuration・・・設定を記述するクラス
 ・@EnableAutoConfiguration・・・
 ・@ComponentScan

■@ModelAttribute
 メソッド内の処理よりも先に実行される。
 画面の値をコントローラーで使用する。

■@Autowired

■@AssertTrue
 boolean型メソッドの作成。


------------------------
<入力チェック>Validation
Controllerに下記を記載する。
■@Validated
 チェックしたいFormに付加する。

Formに下記を記載する。
■@NotNull
■@Max,@Min
■@Size(max=5,min=1)
■@Pattern
■
■
【Javaクラス】ビジネスロジック
-----------------------------
<単語>
■Model
 データの値を格納

■redirect

■model
 入っている値を画面(html)に返すための変数


■Map
 Javaでキーと値をセットにして扱いたい時に使うデータ構造

■messages.properties
 メッセージを設定する。このファイルからメッセージを取込み表示する。
 [参考]
  ・設定手順
  ・バリデーションでの設定

■enum
 [参考]
  ・基本設定~リスト設定
  ・ラジオ・チェックボックス
  ・enum値からデータを取得配列(Object型)

■List

■for
 [参考]
  ・拡張for文...etc

----------------------------
<各条件>
■画面遷移
 参考:構成

■セレクトボックスから値を取得
 [参考]
  ・チェック、ボタン、セレクトから取得
【HTML】画面に表示する内容の設定
■h1~h6
 見出しタグ・・・h1=大きい文字~h6=小さい文字
■span
 グループ化タグ・・・表示する文字をグループ化して、文字色などを変える。
 例)<span style="color:red">赤色</span>
■div
 グループ化タグ・・・文字の高さや幅、改行など、細かく設定できる。
 参考サイト:https://saruwakakun.com/html-css/basic/div-span
■meta

■button(デフォルトtype=submit)
 innerHTMLで見た目をcssで自由に設定できる。
 └submitとbuttonの違い
  submit・・・押しただけで送信される。
  button・・・何も指定しなければ、押せるだけで、何も送信できない。

■input
 [参考:type]

■form
 入力・送信フォームの作成。
 └ method
   └ post・・・値のみを送信する。
          サーバー側のデータを変更するような送信の場合。
   └ get・・・サーバー側のデータを変更せずに取得する場合。
 [参考:各属性methodの違い]

■table
 テーブル(表)を作成。
 └ TR・・・行
 └ TD・・・列
 └ TH・・・見出し
 [参考]
  ・テーブル、枠、CSS
  ・セル結合

■iframe
  分割された各フレームに表示するファイルと表示方法を指定。
  [参考:http://www.htmq.com/html5/iframe.shtml]

■submit
 送信処理。押下時に即送信される。
 [参考]
  ・

■メッセージ読み込み
 [参考]
  ・html直接参照
  ・エラーメッセージ

■if
 [参考]
  ・複数条件のif文
  ・空文字の判定方法
  ・真・偽判定

■block
 [参考]
  ・block,each,if,with,

■#クラス名(ユーティリティオブジェクト)
 [参考]
  ・#string,#objects・・・etcフラグメント
 mainのhtmlに別のhtmlに記述している内容を呼び出して表示する。
 [参考]
  ・
■eachattr・・・定義されていない属性値の設定ができる。
■href(<a>タグの属性)・・・出発点を記述する。「到達点」として指定のできるのはname属性やid属性。

■style
 ・styleタグ・・・cssの中身をすべてHtml上に記載する。
 ・style属性・・・各タグにcssのプロパティを書き込む。

■$,#,@,*の使い方th:utext・・・改行コードを含む文字列で改行コードをエスケープせずに表示する。(messages.propertiesに定義している値も使用可能)
 注意・・・XSS攻撃の危険有り
【その他】
■ポートの使用状況確認方法(8080)
https://qiita.com/hirorin/items/e26d3aec0bfc97b9a173

■ファイル内文字の文字化け
 ①ファイルの文字コード=UTF-8か確認。
 ②Eclipseの当該ファイルプロパティが
  UTF-8か確認。

■色コードテーブル各行色分け
【CSS】文字色やフォント、固定文字の設定ファイル
 ・CSSの使い方(基礎)
【JavaScript】
■document
 htmlの内容を取得する。
 [参考]
  ・各種プロパティ、
  ・使用例/チェックボックス、ラジオボタン等
  ・各種プロパティ2

■function
 [参考:function,ボタン,リンク,input]

■replace
 置換

■値取得
 
■const
 「定数」。値は再代入による変更はできず、再宣言もできません。

■ifgetElementById
【Eclipse】
■ショートカット
 └ インシデント・・・Ctrl + i (範囲選択必要)
 └ getter/setter・・・Alt + Shift + S → Generate getters and settersを選択

【DB接続手順】
①MySQLセットアップ~データベース・テーブル・ユーザー作成
 参考:https://sibrog11.com/2020/04/27/mysql関連/

②設定ファイルの作成(java)
 ■application.properties・・・MySQL接続設定
 ■entity・・・テーブル情報設定
 ■Mapper・・・select等のsql文の設定
 ■controller・・・データの取得等の処理記述
 ■xml・・・select等のsql文の設定
 ■html・・・controllerから取得したデータを元に画面表示設定
 参考:DBデータ表示


【XML】
■SQL文
 [参考:updateupdate2]

■select、update、delete・・・etc
 [参考]
  ・パラメータ

 └ parameterType = "map"
    Javaでキーと値をセットにして扱いたい時に使うデータ構造
    [参考]
   ・select使用例

クラウドプラクティショナー(AWS認定試験)


【勉強方法】
参考サイト
 ・試験概要~準備・勉強方法
 ・勉強方法
 ・問題集

問題集
 ・https://learn-aws.cafe
 ・https://it試験合格.tokyo/2019/09/15/awsクラウドプラクティショナーの勉強法/


awsトレーニング
 ※AWSアカウント作成後にAmazonアカウント作成必要

問題集

【AWSホワイトペーパー】日本語版
・アマゾン ウェブ サービスの概要クラウドコンピューティングのアーキテクチャAWS 料金体系の仕組みその他のホワイトペーパー一覧

【おススメ参考書】

<AWS認定 クラウドプラクティショナー>
・勉強方法から説明してくれるため、完全に初めて勉強する方におススメ。
※Kindle版で買った場合、本文をコピーできないため、URLのコピー&ペーストが出来ず不便な部分がある。

amazon:AWS認定 クラウドプラクティショナー

WordPress関連


参考書:


word pressページの表示方法


参考書:WORDPRESS 仕事の現場でサッと使える!デザイン教科書

php編集方法:https://lightup-works.com/top-page-edit


【Word pressの仕組み】

[トップページの表示]

①font-page.php、②index.phpの優先順位で表示される。(すべてのページが同じデザインで良い場合はindex.phpだけの記述で可能)

【header.php】

[wp_head関数]
プラグインなどを使うため、
headタグ内に常に記述が必要。
[wp_footer関数]
プラグインなどを使うため、
bodyタグ内に常に記述が必要。

[テンプレートファイル一覧]

  • font-page.php—Webサイトのトップページを表示
  • single.php—投稿の記事ページを表示
  • page.php—固定ページを表示
  • category.php–カテゴリーページを表示
  • search.php—検索結果ページを表示
  • archive.php—記事一覧を表示
  • 404.php—404エラーページを表示