Output Diary

プログラミング × 読書 のアウトプットを発信しています

【システム開発】フレームワーク

システム開発において一番トラブルの原因になるのが、 発注者と受注者の認識の違いです。 意味をとり間違えてしまったり、お互いの認識相違で間違った方向に開発が進んでしまったりすることもあります。 そうならないための取り組みとして、 フレームワーク…

【SQL】SQLとは

SQL

SQLとは、Structured Query Languageの略で、 データベースを操作するために開発された言語です。 SQLを用いることで、 データの検索、データの登録、削除といったことまでデータベース操作のほとんどをSQLで行うことが出来ます。 SQLには、ISO(国際標準化…

【SQL】データベース

SQL

データベースとは、 データを大量に保存し、 効率よくアクセスできるようにしたデータの集まりのことをいいます。 例えば、 名前や住所、メールアドレスを登録しておくだけで、 どんなときでも・すぐに、欲しいデータを取り出すことが出来ます。 データベー…

【Rails】ER図とは

ER図とは、 「データベース設計(データモデリング)で使う設計手法」のことです。 もっと簡単にいうと、 テーブルとテーブルを線でつないで関係性を見やすくしたものです。 英語では「Entity Relationship Diagram」と呼ばれています。 ER図の構成 ER図は、…

【システム開発】開発モデル

開発には様々なやり方があります。 その中でも代表的な開発手法について紹介をしていきます。 ウォーターフォールモデル 一つひとつの開発工程を完了させて次にすすむ開発です。 各工程を確実に終わらせるので手戻りは生じず、大規模な開発でよく用いられる…

【Rails】オブジェクト指向

オブジェクト指向は、 システム化そのものに着目した開発手法です。 効率的に開発をすすめていくために以下のことを意識する必要があります。 オブジェクト指向で覚えておきたいキーワード ・カプセル化 ・継承 ・抽象化 ・ポリモーフィズム カプセル化 カプ…

【Rails】オブジェクト

オブジェクトって何?ってなったので、 オブジェクトについて調べてみました。 オブジェクトとは IT用語辞典バイナリによると、 オブジェクトとは、操作の対象となっているデータ、または、オブジェクト指向の考え方においてプログラムが扱う対象のことであ…

【Rails】MVCモデル

MVCモデルのMVCは、 「Model」「View」「Controller」の頭文字から来ています。 MVCとは Webフレームワークのことで、 「アプリケーション設計」を整理するための概念の1つです。 「アプリケーション設計」が必要な理由は、全体を理解してコードを書いてい…

【Rails】Gemについて

いろいろなプログラムで共通して使える便利なプログラムを ライブラリと呼びます。 Rubyの世界にもライブラリがあり、Gemと呼ばれています。 Gemはrubygems.org で公開されています。 ■ Gemのインストール Gemをインストールするにはgem iコマンドを利用しま…

【システム開発】開発手法

ソフトウェアを開発する際、さまざまな開発手法があります。 構造化手法 構造化手法は、 システムの機能に着目して、大きな単位から小さな単位へとプログラムを分割して開発する手法です。 「構造化プログラミング」ともよばれます。 オブジェクト志向 オブ…

【Rails】Railsアプリの動作のしくみ

Railsアプリの動作を図にすると次のようになります。 1. ブラウザのURL欄にアドレスを入力してEnterを押すとリクエストが飛んでいく。 2. リクエストを受け取ったRailsアプリはHTMLをつくり、レスポンスとして返す。 3. レスポンスを受け取ったブラウザはHTM…

【システム開発】システム開発プロセス

■ システム開発の流れ " data-en-clipboard="true"> " data-en-clipboard="true">要件定義 ↓ 設 計 ↓ プログラミング ↓ テスト ↓ 運用・保守 このような手順でシステム開発は進められています。 (ウォーターフォール開発の場合) 要件定義 利用者の要求から…

【本要約】リーダブルコード

本書では、「読みやすいコードを書くためにはどうしたらいいの?」という初学者に向けて、分かりやすく、丁寧に解説をしています。 この本の目的 読みやすいコードを書くことの重要性を理解すること。 他人がすぐ理解できるコードが書けるようになること。 …

【Rails】関係演算

" data-en-clipboard="true"> " data-en-clipboard="true">関係演算とは、 表の中から特定の行や列を取り出したり、 表と表をくっつけて新しい表を作り出したりする演算のことをいいます。 選択 選択は、行を取り出す演算です。 特定の部署の行を取り出しま…

【Rails】データベース

データベースとは、 データの蓄積・保存が容易にできるように整理された情報の集まりのことです。 データベース管理システム(Data Base Management System)とは、 データベースの機能をアプリケーションから簡単に扱えるようにしたミドルウェアです。 はい…

【Rails】ロールバック

" data-en-clipboard="true"> " data-en-clipboard="true">ロールバックとは、 マイグレーションファイルを使って上げたバージョンを、 何らかの事情で戻す(=バージョンを下げる、適用したマイグレーションを取り消すこと)ことをいいます。 複数人で開発…

【Rails】インジェクション

" data-en-clipboard="true"> " data-en-clipboard="true">インジェクションとはなんでしょうか? " data-en-clipboard="true"> " data-en-clipboard="true"> " data-en-clipboard="true"> " data-en-clipboard="true">ウェキペディアによると以下のように定…

【Rails】セキュリティ

" data-en-clipboard="true"> " data-en-clipboard="true"> " data-en-clipboard="true"> " data-en-clipboard="true"> Webアプリケーションは便利な反面、使用する際にリスクも発生します。 例えば、 ・ユーザーアカウントを奪われた ・不正なコンテンツが…

【Rails】国際化

" data-en-clipboard="true"> " data-en-clipboard="true">さまざまな国に使えるよう基盤を整えることを国際化と呼びます。 ユーザーごとに言語を切り替えたり、 その国ごとのタイムゾーンを使用したりします。 タイムゾーンは、 ・Time.zone.now ・Time.cur…

【Rails】ルーティング

ルーティングとは、 Railsアプリケーションのコントローラへ指示を出すための道筋 のことです。 ルートを構成する5つの要素 ルートの読み取り方 get '/login', to: 'sessions#new' これは、 GETメソッドで、'/login'というURLに対してリクエストが来たら、 …

【システム開発】調達計画

" data-en-clipboard="true"> " data-en-clipboard="true"> " data-en-clipboard="true"> " data-en-clipboard="true"> " data-en-clipboard="true">調達とは、 " data-en-clipboard="true">業務に必要なハードェアやソフトウェア、ネットワーク機器、人、設…

【Rails】テスト

" data-en-clipboard="true"> " data-en-clipboard="true"> 開発を進めるたびに、 開発した機能を確認するためにテストを同時に書いていく必要があります。 テストを書かないと、最初の方は問題なく動いていても機能を追加したときに新機能だけでなく既存の…

【Rails】セッションとCookie

" data-en-clipboard="true"> " data-en-clipboard="true">セッション " data-en-clipboard="true"> " data-en-clipboard="true">セッションとは、 1つのブラウザから連続して送られている一連のリクエストの間で「状態」を共有できるようにしたものです。 …

【Rails】トランザクションとは

" data-en-clipboard="true"> " data-en-clipboard="true">トランザクションとは、 複数の処理をまとめて1つ大きな処理として扱う機能です。 処理の1つで例外が発生した時、 複数の処理を巻き戻すことができます。 トランザクションの使用イメージ ATMに入…

【Rails】コードバックについて

コールバックとは、 あとで読んで欲しい処理をあらかじめ指定しておく仕組みを指すプログラミング言語です。 ちょっと後で振り返るかもしれないぞ!ってところに付箋を貼ってみる感覚です 登録や削除の大きな変更の前後にこのコールバックを挟むことが多いで…

【Rails】データベースとは

データベースとは、 データを保存する場所のことをいいます。 Railsでは、 3種類の「環境」が用意されています。 環境の種類 環境のシステム名 用途 開発 development 開発時の動作確認 テスト test 自動テスト 本番 production ユーザーが利用可能な形で稼…

【Rails】Railsとは

" data-en-clipboard="true"> " data-en-clipboard="true"> " data-en-clipboard="true"> Railsは、プログラミング言語であるRubyを使用してWebアプリケーションを構築するオープンソースのWebアプリケーションのフレームワークです。 " data-en-clipboard="…

【Ruby】覚えていると便利!シリーズ👏

" data-en-clipboard="true"> " data-en-clipboard="true"> 本日は、これらを少し覚えておくだけで コードを書く時間が少し減るよーシリーズになります。 見た目もスッキリするかも。。! 1.nillガード number || = 77 これは、以下のコードと同じ意味になり…

【Ruby】継承とは

" data-en-clipboard="true"> " data-en-clipboard="true"> " data-en-clipboard="true"> " data-en-clipboard="true"> 継承のイメージとしては、 一つのクラスを起点として、それらを引き継いで具体的なクラスを作っていくというイメージです 下に進めば進…

【Ruby】インスタンスメソッドとクラスメソッド

クラスを作るメソッドは2種類あります。 その2種類とは、 「インスタンスメソッド」と 「クラスメソッド」です。 これら2つの違いは、 インスタンスをレシーバとするか、 クラスをレシーバにするかという違いです。 レシーバとはナニ? レシーバとは、 メ…