むじんブログ ”3歩進んで2歩下がる”

37歳未経験からのエンジニア転職を目指す営業部長

データベースの修正・削除関連

【データベースの作り直し】 ・データベースの名称の誤り ・エンコードなどのデータベース設定の誤り 上記のような場合はデータベースを作り直すとよい。 ---------------------------------------------------------- 【作り直しの方法①:データベース削除…

最終課題で詰まったところ(更新中)

【GitHubでの流れ】 コミット→プッシュ→プルリクエスト→レビュー修正→LGTM→マージ →不要ブランチの削除→ GitHub Desktopでブランチをマスターに→Fecth 【カラム名のミス】 「下の名前」のカラム名を「last_name」としたままマイグレーションを行なっていたの…

ActiveHashについて

最終課題実装中に学んだ内容。 【ActiveHash】 都道府県のように、基本的に変わらないデータを取扱う際に用いる。 ・データが変わらないのでDBに保存する必要はない ・一方で、ビューファイルに記述するには可読性に欠ける ようなときに使うと良い。 ActiveH…

テストコードについて(まとめ)

TECH CAMPカリキュラムで学習したテストコードについて、 詳細を自分用にまとめ。 特に単体テストコードについてはかなり詳しくアウトプットしたので、 これを見ればテストコードの基礎は一通り把握できるはず。 【テストコード】アプリケーションがきちんと…

学習のアウトプット(オリジン間のリソース共有)

【スキーム】 http://localhost:3000 スキームとは、上記のhttp://の部分を指す。 httpsの部分はプロトコルで、一般にhttpプロトコルのことをスキームと呼ぶ。 【ホスト】 http://localhost:3000ではlocalhostの部分 https://www.google.comではwwwの部分を…

学習のアウトプット(Webアーキテクチャ)

【アーキテクチャ】 Webサービスを形作る構造のこと。 Webであれば、構成の元になっているブラウザ・HTTPやHTMLなどがアーキテクチャになる。 【アーキテクチャスタイル】 Webサービスを作る(アーキテクチャを決める)際の設計方針のようなもの。 アーキテ…

学習のアウトプット(システム運用の監視)

【監視システム】 サービスが正常に動いているかどうかを自動で確認してくれるシステム。 サービスの提供において最も重要な「サービスが正常に動くこと」を、人の力を使わずに行うことができる。 (人が行うと、膨大な労力が必要かつミスなども起こりやすい…

学習のアウトプット(サーバーとデプロイ)

【サーバーの定義】 サーバーという言葉は2種類の意味で用いる。 ①クライアントの要望に応じたデータを送るソフトウェア・プログラム。 Ruby on Railsで作成したWEBアプリケーションなどがこれに当たる。 ②WEBサービスなどを提供するパソコン本体。 Herokuな…

学習のアウトプット(開発の管理手法)

【開発の種類】 大きく分けて2種類。 ・アジャイル開発 一度にまとめてではなく、1〜4週間のスプリントと呼ばれるスパンで開発を行い、 作業の確認やユーザーへのリリースを実行した後、さらに次のスプリントで変更や更新を行うような手法。 アジャイルは「…

学習のアウトプット(SQL文の基礎)

【SQL】 RDBを動かすための言語。 ターミナルで操作・シークエルプロで操作のいずれも可能。 簡単な操作はGUIで行えるが、複雑な操作はコマンドで行う。 SQLの命令は、DDL・DML・DCLの3つに大きく分かれる。 (以前のカリキュラムで少し学んだ内容) -------…

学習のアウトプット(インターネット・Webの基礎)

【Webの知識】 WebはWorld Wide Webの略で、コンピュータを使って文書と文書を結びつける仕組みのこと。 この文書はHTMLで記述されたハイパーテキストと呼ばれる。 ハイパーテキストには、他の文書に遷移させる記述を行うことができ、 これをハイパーリンク…

学習のアウトプット(Railsのフロントエンド開発)

今日の内容は少し難解。 【ブラウザの表示】 ブラウザの表示で使える言語は下記の4つのみ。 ・HTML ・CSS ・JavaScript ・WebAssembly サーバーサイド側ではERBなど様々な言語が使えるが、最終的にブラウザに表示させる段階では上記の4つだけにしなければ反…

学習のアウトプット(書きやすいコードについて・コマンドの仕組みと管理ツールについて)

コマンドの仕組みと管理ツールの項目は少し理解に時間がかかった。 【リファクタリングを行う理由】 ・個人やチームの可読性を向上させる ・保守を行いやすくする ・柔軟な開発体制が構築できる これまでのカリキュラムでは意識していなかったが、 今後は他…

学習のアウトプット(Issueについて)

今日はIssueの解消、レビュアーへのプルリクエストを行なった。 実際の現場でも頻出する工程になるだろう。 【Issue】 Gitの機能の1つで、今後の課題や行うこと、コードの履歴などをリストアップしてまとめておくことができる。 アプリケーションの保守など…

学習のアウトプット(Basic認証機能)

【Basic認証】 HTTP通信にデフォルトで備えられている認証機能。 設定すると、ユーザー名とパスワードを知っているユーザーのみがサーバーにアクセスできるようになる。 ただしBasic認証は必要最低限のセキュリティなので注意。 ・ログアウトの機能がない(…

学習のアウトプット(Herokuへのデプロイ)

【デプロイ】 WEBアプリケーションを世の中に公開すること。 具体的には、用意したサーバーにアプリケーションを乗せて、他の人が使える状態にすることを指す。 サーバーはAmazonやGoogleなどの企業からレンタルすることもできるが手間がかかる。 Herokuを使…

学習のアウトプット(JavaScript6 )

【前回までの流れ】 下記の流れで、非同期通信の実装を行なっていた。 ・JavaScriptからリクエストを送信 ・ルーティングを経由してコントローラーに届ける ・ブラウザからのリクエストとJavaScriptのリクエストが重複しないようにする ・json形式でJavaScri…

学習のアウトプット【Rubyドリル・その他基礎】

TECH CAMPにはRubyドリルという基礎問題集があり、 今日は2問解いた中で学んだことをまとめ。 【Rubyドリル29】 特定の倍数の時に表記を変更するRuby問題。(Fizz_Buzz問題として有名?らしい) while文・剰余演算子の使い方を学んだ。 ・15の倍数はnum % 15…

学習のアウトプット【セキュリティについて】

【脆弱性】 アプリケーションなどで、弱点となる部分。 脆弱性をついて、様々な方法で攻撃をされるため、対策としてのセキュリティが必要。 ・JavaScriptによる攻撃 ・セッションによる攻撃 ・不正リクエストによる攻撃 ・SQLによる攻撃 について学んだもの…

学習のアウトプット【10の位だけを取り出す方法(Ruby)】

【10の位の数字の取り出し方(Ruby)】 Rubyドリルにて出題。 途中でこちらのサイトを参照。 https://qiita.com/eve1224/items/cc0bcabea60e9ac7ab1d 10の位を取り出す場合 →対象の数字を10で割って、出た数字をさらに10で割った余りを取得すればOK 例) (96…

学習のアウトプット(JavaScript5)

前回の続き。 短いが、一旦カリキュラムが空く予定なのでまとめ。 【preventDefault】 非同期通信の実装においては、ブラウザからのリクエストとJavaScriptからのリクエストが重複しないように ブラウザからのリクエストのキャンセルを行う必要がある。 prev…

学習のアウトプット(JavaScript4+その他)

【プルダウンメニューの表示・非表示(前回の続き)】 〜中略 pullDownButton.addEventLestener('click', function() { if (pullDownParents.getAttribute("style") == "display:block;") { pullDownButton.removeAttribute("style", "display:block;") } el…

学習のアウトプット(JavaScript3)

【script要素】 HTMLのタグの1つで、headタグの中に記述する。 JavaScriptだけで使うものでは無いようだが、基本的にはJavaScriptのコードを埋め込んだり参照したりするのに使うらしい。 <script src=ファイル名></script> とする事で、ファイル(今回は○○.jsという名称のJavaScriptファイル…

学習のアウトプット(JavaScript2)

【関数】 Rubyでいうメソッド。 ・Rubyの場合 def メソッド名 処理の内容 end ・JavaScriptの場合 function 関数名(引数) { 処理の内容 } ※引数がない場合でも()は記入が必要であることに注意。 例) function sayHello(){ console.log("こんにちは”) } …

学習のアウトプット(JavaScript)

新しい言語であるJavaScriptの学習に入った。 Rubyとの相違点などを整理しながら、比較するRuby自体の理解度も高まるように 掛け合わせて学びたい。 【JavaScript】 世界で最も使用されているとされるプログラミング言語の1つ。 実際にほとんどの現場で使用…

学習のアウトプット(モデルの深掘り)

モデルの深掘り。 複数の用語が出てきて、それぞれの関係性を理解するのに手間取った。 モデルによるデータベースの操作は、 ActiveRecordというオブジェクトによって実現している。 ActiveRecordはORMという技術に分類される。 【RDB】 リレーショナルデー…

学習のアウトプット(ヘルパーメソッド復習)

ヘルパーメソッドの復習。 form_withとlink_toが以前から苦手だったが、今回の復習とまとめで理解が出来た。 【ヘルパーメソッド】 HTMLでタグを出現させたり、テキストを加工させたりするのに使うメソッドで、 主にビューで使う。 ヘルパーメソッドは、使え…

学習のアウトプット(TECH CAMP 発展コース序盤)

今日は時間割学習で、朝から夜まで10時間学習。 アウトプット量もかなり多くなった。 【学習宣言】 明日は4時間学習する。 ---------------------------------------------------------------------------------- 【indexメソッド】 コントローラーアクショ…

学習のアウトプット【部分テンプレート・配列要素のカウント】

今日はエラーの解消に時間がかかった。 ミスしていたのは、部分テンプレートの引用をする対象のファイル名。 誤:_messages.html.erb 正:_message.html.erb これまでも「message」というワードはスペルミスや 単数形と複数形の誤りがあったので、今後注意し…

学習のアウトプット【細かい内容諸々】

過去カリキュラムの振り返りを行っていたので、 基礎的な内容がメイン。 【クラスメソッド】 メソッドを定義したクラス自身が使うことができるメソッドで、 クラス名.メソッド名で定義する。 メソッド定義時は下記のように記述する。 def self.メソッド名 (…