■
20190110
1 内容
Scaffolding機能について
2 Scaffoldingとは
3 CRUDとは
はい。偉そうにCRUDとか書いてますが自分は読み方すら知りません。なんで勉強してきました。
クラッド(CRUD)とは、システムに必要不可欠な"生成"(Create)"読み取り"(Read)"更新"(Update)"削除"(Delete)の頭文字を並べた用語のことを言います。何をするために作られた用語かというと"確認"です。
システムというものは、かなり複雑な機能で構成されています。そうするといずれ"あ!この機能が無い!"みたいなうっかりミスが出て来るものです。(しょうがないね、にんげんだもの)このようなミスをできるだけなくすためにCRUD機能を用いて確認をするのです。
世の中には様々なシステムがありますが、それらにはまず間違いなくこの機能が組み込まれています。
■
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
20190109
Table of Contents
2 コントローラ関連の命名規則
種類 | 概要 | 名前(例) |
コントローラークラス | 先頭は大文字で、接尾辞に"Controller" | HelloController |
コントローラークラス(ファイル名) | コントローラークラスを小文字にしたもの、単語の区切りはアンダースコア | hellocontroller.rb |
ヘルパーファイル名 | コントローラー名に接尾辞"helper.rb" | hellohelper.rb |
テストスクリプト名 | コントローラ名に接尾辞"controlletest.rb" | hellocontrollertest.rb |
3 モデル関連の命名規則
種類 | 概要 | 名前(例) |
モデルクラス | 先頭は大文字で単数形 | Book |
モデルクラス(ファイル名) | 先頭は小文字で単数形 | book.rb |
テーブル | 先頭は小文字で複数形 | books |
テストスクリプト | xxxxxtest.rb(先頭は小文字で複数形) | booktest.tb |
4 雑談
金がほしいなぁ。Macを買う用の貯金がどんどん少なくなっていく。て、何だこれ表が表示されてない!!??
■
ruby on rails の memo 20190108
2 Controller classの基本
Railsでの開発を行う上でController classは基点みたいなものです。
Modelを呼び出すのも、それをViewに引き渡すのもController classの役割です。
3 ルーティングの基礎
4 ビューの基本
railsにおいて最終的な出力はERBテンプレートを使用するのが基本です。これはHTMLにRubyスクリプトを埋め込むための仕組みです。
以下のような特徴があります。
- 1.任意のRubyスクリプトを埋め込めるので、条件分岐や繰り返し構文などの処理も自由に記述できる
- 2.ビューヘルパーを利用することで、データベースから取得した値に基づいたリンクやフォーム要素などをシンプルなコードで生成できる
テンプレートファイルは/app/viewディレクトリ配下に「コントローラー名/アクション名.html.erb」という名前で保存する必要があります。(例:helloコントローラのviewアクションに対応するテンプレートであれば/hello/view/heml.erbとする)
6 O/Rマッパーとは
O/R(Object/Relational)マッパーとは、リレーションデータベースとオブジェクト指向言語との橋渡しを受け持つライブラリのことです。
本来データベースが用いているリレーショナルモデルとアプリ側のオブジェクトモデルでは構造が決定的に異なっています。
以前はそれらを手作業で割り当てたりしていました。
しかし、この構造差によって開発生産性を大きく減少させていました。(この構造差のことをインピーダンスミスマッチという)
そこで、この構造差を解消するためにO/Rマッパーというツールが使用されています。これはデータベースのリレーションモデルをオブジェクトモデルに変換することができます。これによりアプリとデータベースの両方をオブジェクト同士でやり取りできるようになり、ギャップを少なくすることができます。
■
ruby on rails の memo 20190107
Table of Contents
1 内容
これはRuby on Rails アプリケーションプログラミング(技術評論社出版)(以下"参考書"として表記)の備忘録みたいなものです。
(Ruby on Rails とはアプリケーションフレームワークの一種であり、その名の通りアプリを作るためのフレームワークのことです。)
unreal engine c++ tutorial 2018/11/28
SetupPlayerInputComponent(class UInputComponent* PlayerInputComponent) : Pawnで定義されている入力値を処理するためにセットアップメソッド
PlayerInputComponent : アクタコンポーネントの入力にかかわる情報を格納するオブジェクト(?)コンストラクタはUInputcomponent()
BindAxis関数
PlayerInputComponentに含まれる関数
FInputAxisBinding & BindAxis
(
const FName AxisName,
UserClass * Object,
typename FInputAxisHandlerSignature::TUObjectMethodDelegate< UserClass >::FMethodPtr Func
)
直訳だけど軸を割り当てるということでいいのかな?
例:PlayerInputComponent->BindAxis("MoveRight", this, &AMyPawn::MoveForward);
AddMovementInput関数
virtual void AddMovementInput
(
FVector WorldDirection,
float ScaleValue,
bool bForce
)
要するにScaleValueだけ移動させる。
bForceはわからん。
例:AddMovementInput(GetActorForwardVector()//アクタのルートコンポーネントのZを取得する関数,Value//引数);
なんだこれ難。情報がないとは聞いていたが予想以上やったわ。
unreal engine c++ tutorial 2018/11/28
SetupPlayerInputComponent(class UInputComponent* PlayerInputComponent) : Pawnで定義されている入力値を処理するためにセットアップメソッド
PlayerInputComponent : アクタコンポーネントの入力にかかわる情報を格納するオブジェクト(?)コンストラクタはUInputcomponent()
BindAxis関数
PlayerInputComponentに含まれる関数
FInputAxisBinding & BindAxis
(
const FName AxisName,
UserClass * Object,
typename FInputAxisHandlerSignature::TUObjectMethodDelegate< UserClass >::FMethodPtr Func
)
直訳だけど軸を割り当てるということでいいのかな?
例:PlayerInputComponent->BindAxis("MoveRight", this, &AMyPawn::MoveForward);
AddMovementInput関数
virtual void AddMovementInput
(
FVector WorldDirection,
float ScaleValue,
bool bForce
)
要するにScaleValueだけ移動させる。
bForceはわからん。
例:AddMovementInput(GetActorForwardVector()//アクタのルートコンポーネントのZを取得する関数,Value//引数);
なんだこれ難。情報がないとは聞いていたが予想以上やったわ。
Unreal Engine 4 c++ tutorial 11月27日
Unreal Engine 難しすぎる。
いろんなサイトだったり、図書館の本だったり漁ってみたけれどYouTubeのtutorialシリーズが一番わかりやすいと考えた。ただ英語なので少し時間がかかるなぁ。
BeginPley() : ゲーム開始時に呼び出される。返却値なし。
Tick() : 通常1フレームに1回という一定の間隔で呼び出される。60frame/1secondのゲームなら一秒に60回呼び出される。
FVector型 : 3次元を表す。すでに定義されている構造体みたいなもの X,Y,Z(float)の3つの要素。
GetActorLocation() : 現在のアクタの位置を返す。FVector型。
SetActorLocation(const FVector &NewLocation) : NewLocationの位置にアクタを移動する。bool型(成功すれば1、失敗すれば0)他にも受け取る引数が存在する。ここでは省略。
UPROPERTY() : どうやら権限に関する設定をする文法らしい。例えば、UPROPERY(EditAnywhere)なら、レベルエディタ、ブループリントエディタでの、閲覧、編集が可能になる。
UStaticMeshComponent型 : UStaticMeshのインスタンスを作るために使われる。UStaticMeshについてはよくわかってないが、移動等の編集を可能にするためのものと解釈した。
CreateDefaultSubobject : コンポーネントの生成に使われる。(コンポーネントとは部品みたいなものAI component,Audio componentとかがある)例えば、上のUStaticMeshComponent型で"MyMesh"という名前で生成したければ、CreateDefaultSubobject
近日にインターンの面接があるから対策しなくちゃ。
The Ultimate Unreal C++ Tutorial Series - #1
The Ultimate Unreal C++ Tutorial Series - #1