アプリケーション

アプリケーションの流れ

 

企画、要件定義、設定、開発、保守運用の流れ

 

企画はどんなアプリを作るか決めること

 

要件定義はどのような機能を実行するのかを言語化すること。

 

設計は実際にどのようなアプリや新機能を作っていくのか手順や必要な設計図を作る工程

 

開発後に行う動作デプロイ

作ったアプリを外部サーバーに移して世界中からアクセスするように設定すること。これは保守運用で行う

 

保守運用はアプリが正常に動いているかを定期的に確かめることや、トラブルが発生したら処理を行うこと。

 

ペルソナは架空の人物像を作り出して使用するユーザーを決めること

年齢、職業、趣味などを具体的に炙り出してサービスの利用者を具体的にする

プラスでユーザーストーリーで追加する。

例えば、ペルソナはSNSに写真の管理にものすごく困ってていて、簡単にまとめて引き出せるサービスが欲しいなど

 

次に要件確認をおこなう

要件確認とは具体的にページで何を実装するのかを言語化していく。

例えばサインイン・ログインページへ移動できるボタンを作るなど

 

次に行うのは基本設計

 

これまでの開発に必要な内容をまとめること

 

詳細設計は実際に書くべきコードを洗い出す作業。

図を利用してルーティングはここに記述するなどまとめたりするとわかりやすい

 

DB設計 開発で使用するDBの表を設計すること

エンティティはサービスで扱われるデータのこと、

 

 

データベース設計

エンティティを洗い出すポイントはデータが登録されるときに着目っしてみる

エンティティは具体的に分ける

 

NOT NULL制約を

設定することで空欄で保存ができなくなる。

class CreateUsers < ActiveRecord::Migration
  def change
    create_table :users do |t|
      t.string :name, null: false
      t.timestamps null: false
    end
  end
end

 

 

一意性制約はテーブル内で同じデータが重複するのを防ぐ

 

 

次は外部キー制約

必ず外部キーを必要とするキー。

foreign_key: trueと記述する

class CreateTweets < ActiveRecord::Migration[6.0]
  def change
    create_table :tweets do |t|
      t.string :name
      t.string :text
      t.text :image
      t.integer :user_id, foreign_key: true
      t.timestamps
    end
  end
end

 

チェック要素

条件を指定して満たしていれば実行できる要素

 

 

 

 

 

 

 

DBを図にする

 

ER図

https://tech-master.s3.amazonaws.com/uploads/curriculums//59fb94d12262ba211cdb8577bfc8a1fe.png

f:id:shinsaku_nezu:20210501093749p:plain



 

このような図を作ることで管理がしやすい

 

アプリケーション

アプリケーションの流れ

 

企画、要件定義、設定、開発、保守運用の流れ

 

企画はどんなアプリを作るか決めること

 

要件定義はどのような機能を実行するのかを言語化すること。

 

設計は実際にどのようなアプリや新機能を作っていくのか手順や必要な設計図を作る工程

 

開発後に行う動作デプロイ

作ったアプリを外部サーバーに移して世界中からアクセスするように設定すること。これは保守運用で行う

 

保守運用はアプリが正常に動いているかを定期的に確かめることや、トラブルが発生したら処理を行うこと。

 

ペルソナは架空の人物像を作り出して使用するユーザーを決めること

年齢、職業、趣味などを具体的に炙り出してサービスの利用者を具体的にする

プラスでユーザーストーリーで追加する。

例えば、ペルソナはSNSに写真の管理にものすごく困ってていて、簡単にまとめて引き出せるサービスが欲しいなど

 

次に要件確認をおこなう

要件確認とは具体的にページで何を実装するのかを言語化していく。

例えばサインイン・ログインページへ移動できるボタンを作るなど

 

次に行うのは基本設計

 

これまでの開発に必要な内容をまとめること

 

詳細設計は実際に書くべきコードを洗い出す作業。

図を利用してルーティングはここに記述するなどまとめたりするとわかりやすい

 

DB設計 開発で使用するDBの表を設計すること

エンティティはサービスで扱われるデータのこと、

 

 

データベース設計

エンティティを洗い出すポイントはデータが登録されるときに着目っしてみる

エンティティは具体的に分ける

 

NOT NULL制約を

設定することで空欄で保存ができなくなる。

class CreateUsers < ActiveRecord::Migration
  def change
    create_table :users do |t|
      t.string :name, null: false
      t.timestamps null: false
    end
  end
end

 

 

一意性制約はテーブル内で同じデータが重複するのを防ぐ

 

 

次は外部キー制約

必ず外部キーを必要とするキー。

foreign_key: trueと記述する

class CreateTweets < ActiveRecord::Migration[6.0]
  def change
    create_table :tweets do |t|
      t.string :name
      t.string :text
      t.text :image
      t.integer :user_id, foreign_key: true
      t.timestamps
    end
  end
end

 

チェック要素

条件を指定して満たしていれば実行できる要素

 

 

 

 

 

 

 

DBを図にする

 

ER図

https://tech-master.s3.amazonaws.com/uploads/curriculums//59fb94d12262ba211cdb8577bfc8a1fe.png

f:id:shinsaku_nezu:20210501093749p:plain



 

このような図を作ることで管理がしやすい

 

アプリケーション

アプリケーションの流れ

 

企画、要件定義、設定、開発、保守運用の流れ

 

企画はどんなアプリを作るか決めること

 

要件定義はどのような機能を実行するのかを言語化すること。

 

設計は実際にどのようなアプリや新機能を作っていくのか手順や必要な設計図を作る工程

 

開発後に行う動作デプロイ

作ったアプリを外部サーバーに移して世界中からアクセスするように設定すること。これは保守運用で行う

 

保守運用はアプリが正常に動いているかを定期的に確かめることや、トラブルが発生したら処理を行うこと。

 

ペルソナは架空の人物像を作り出して使用するユーザーを決めること

年齢、職業、趣味など

 

diciseの使い方

 

diviseを導入してモデルを作成する

・gemのインストール

・設定ファイルの作成

・Userモデルの作成

 

まずはgemファイルの一番下にgem 'devise'と記入する

外次はgemをインストールするので bundle installを入力してインストール

ターミナルでは、rails g devise:install と入力する

 

最後にUserモデルを作成するので

rails g devise userと入力する

 

最後にターミナルにrails db:migrateと入力して」して」

ツイートを保存しよう

form_withはオプションに指定されたインスタンス変数によりリクエストを送るアクションを判断してる

 

 

ストロングパラメーターは指定したキーを持つパラメーターのみ受け取るよに制限するもの。これを使わなければ意図しないデータの更新をされるようになる。

 

プライベートメゾットはクラスの外から呼び出すことのできないこと

 

バリデーションとはデータを登録する際に一定の制約をかけること

ライブラリを導入しよう

目的はgemの理解

 

ライブラリはプログラミングに置いて拡張機能のことをいう。複雑なプログラムを一つのセットにしてアプリに読み込ませることにより簡単に実装できる。

rubygems

ライブラリを管理するシステム。rubyのほとんどのシステムがrubygemsに集められる。

 

gemfile

アプリケーションでしようするバージョンと名前を記載して保存できる。

必要なgemと一緒にダウンロードする。

 

gemfile.look

bundle installによってダウンロードされた情報を記録するファイルのこと

アプリケーションを立ち上げる

今回行うのがpic tweetというアプリケーションを制作する。

・目的はデータベースの仕組みを理解する。

・アプリケアプリケーションの作成からサーバーの起動までを復習すること。

 

今回学習する内容は

・ツイート表示

・投稿

・削除

・編集

・詳細表示

・新規登録/ログイン

・コメント

・検索

 

モデルの比較

tweet 投稿したツイートを管理・保存するテーブルの管理

・user ユーザーの情報を保存するテーブルの管理

・comment コメントの管理

 

新規アプリの作成の仕方

cd projectsのファイルで

rails _6.0.0_ new pictweet -d mysqlを入力する

 

データベース作成の仕方

運用環境は3種類ある

development 開発環境

test テスト環境

producion 本番環境

 

encoding データベースの容量の大きさを表している

データベースを作成するコード

rails db:create これを打ち込むことでデータベースを作成することができる

 

RDB リレーショナル・データベース

意味は表形式でデータベースを管理すること

行をレコード 列をカラムと言う

 

RDBMS RDB マネジメント・システム

RDBを管理するシステム

 

My SQL これはR DBの一種類

多くの企業で使用されている

拡張機能が多い

柔軟性が高い

 

サーバーを起動する方法

rails s を入力する