コロナ禍や時代の変化、自由な働き方の増加により、IT業界、IT企業、プログラマー、システムエンジニアに転職を考えている人は多いと思います。 何を隠そう私もそう考えた内の1人で、年齢30代でIT未経験でした。 そしてIT企業へ転職を試みた結果、見事に成功しました。 しかしその過程は決して簡単なものではありませんでした。 まず正直にお伝えすると、30代で業界も職種も未経験の場合、転職は非常に難しいです。 私も100社以上企業へ応募しましたが、そのほとんどが書類選考も通リませ
実践的なControllerを学ぼう 目的 リクエストからレスポンスまでの処理を構造的に理解 レスポンスからレンダリングについて理解 サービスクラスを理解 クッキーとセッションを理解 Railsにおけるコントローラー ルーティングによって処理されたリクエストを受け取り、ビューファイルなどをレスポンスとして返却する リクエスト→ルーティング→どのコントローラーのどのアクションで実行するか? レンダリング HTMLなどのビューファイルを画面に猫画 JSON レスポンス
すごく眠たかったけど、なんとか学習しました。 【実践的なViewを学ぼう】 目的 ビューファイルとコントローラーの関連性を理解 ヘルパーメソッドの仕組みを理解 Viewの構造を意識した復習 RubyにおけるビューはHTMLなどのレスポンスをブラウザに表示する →AcitonViewを搭載しているから コントローラーのインスタンス変数はActionViewに受け渡される ヘルパーメソッド form_withやlink_to HTMLに変換される モジュール クラスの
【基本的な使用方法について学ぼう】 正規表現 文字列が制約を満たしているかどうかを調べる 目的 正規表現の基本的な使用方法について学ぶ subメソッド 文字列の指定した部分を別の文字列に置き換える matchメソッド 引数に指定した文字列がメソッドを使用した文字列に含まれているか否か gsubメソッド 全てを置換するsub .match() [a-z] aからzまでのいずれかにマッチ \d 数字にマッチ {n,m} n個以上m以下 iオプション 大文字・
Ruby 【用意された機能を呼び出す方法】 Rubyに用意された機能について概要を知ること 機能を読み込んで、使用する方法を理解すること ライブラリ あらかじめ用意された機能のかたまり 標準ライブラリ Rubyに標準で用意されてる 組み込みライブラリ 標準ライブラリで特に利用頻度が高い 外部ライブラリ 別途インストール必要 gemとか require ライブラリ名 gem install gemの名前 【例外処理を学ぼう】 目的 例外処理の必要性を理解 例外処理を
【Rubyの記法をさらに学ぶ】 目的 if文以外の条件分岐について理解すること 繰り返し処理の構文を理解すること case文 if文よりシンプルにコードを書くことができる while文 条件が真である時に繰り返す処理 無限ループ 処理が永遠に繰り返される 抜け出す方法 if文などの条件分岐 break 【ブロックの理解を深めよう】 目的 ブロックとは何か理解すること メソッドでブロックを使う方法を理解すること ブロック do〜end {} yield メソ
【レスポンシブWebデザインを学ぼう】 表示領域の設定 viewport 画面サイズによってCSSを切り替える設定 メディアクエリ、ブレークポイント 画面サイズごとに適用するCSSを記述 【サイトをレスポンシブ化しよう】 横幅を大きくしていくと600px〜1024pxまでの間はタブレット表示時のレイアウト、 1025px以上にするとPC表示時のレイアウト 検証ツールのデバイスモードでは、様々なデバイスのサイズでWebサイトの表示が確認できること
レスポンシブWEBデザイン 画面幅によって見た目が変わるようにWEBサイトやアプリケーションのデザインを設計すること PC表示時のレイアウトを実装 Webフォント、GoogleFonts
【ChatAppのモデル単体テストコードを書こう】 RSpecモデルテスト Userモデル、Roomモデル、Messageモデル afterメソッド 任意処理の後に指定の処理を実行することができる 【ChatAppの結合テストコードを書こう】 ユーザー管理機能 チャットルーム管理機能 メッセージ投稿機能 の確認 click_onメソッド 引数に文字列を取り、一致するテキストなどを持った要素をクリックできるメソッド ユーザーログイン機能のテスト ユーザーのログイン
【画像投稿機能を実装】 アップロードした画像専用のテーブルを作成 投稿した画像を表示 投稿した画像の大きさを調整 目的 Active Storageをインストール 選択した画像を表示 画像の大きさを調整 画像かテキストどちらかが存在している場合はメッセージの送信を可能 Active Storage ファイルアップロードを簡単に実装できるGem ImageMagick、image_processing を導入 画像を保存するための記述 Active Storageのテ
【メッセージ投稿機能を実装】 目的 テキストの投稿機能を実装 投稿したテキストをメッセージ一覧画面で表示されること 投稿時刻を日本時刻へ変更 空の状態ではテキストを送れないように設定 チャットルーム名を一覧のヘッダーに表示 チャットルーム削除機能を実装 Messageモデルを作成 マイグレにカラム情報記載、実行 アソシエーションを記述、変更点をコミット 投稿したメッセージ情報をDBに保存 ルーティングとコントローラーの実装 投稿した内容をアプリで表示 1メッセージ情報
【チャットルーム情報をDBに保存】 中間テーブルを作成 rails g model room_user references railsで外部キーのカラムを追加する型 foreign_key: true has_many:モデル,through user_ids モデル名+idsで指定すると中間テーブルにも保存される コントローラーへ必要なユーザー情報を送信する実装 プルダウン select要素、option要素 ログインユーザーをプルダウン選択肢から外す モデ
【ChatAppのチャットルーム管理機能を実装】 目的 ユーザーと1対1でメッセージでやりとりができるチャットルームを作成 チャットルーム作成画面で「チャットルーム名の入力」と「ユーザーの選択」をして登録できる機能を実装 「チャットルーム」と「ユーザー」の関連をデータベースでどのように管理するか理解する チャットルームの新規登録画面を実装 チャットルームの新規登録機能を実装 【ビューファイルを表示】 ダウンロードファイルを配置 Roomモデルを作成 rails g
【ChatAppのフロント実装】続き チャット画面の実装 最後、Fetch originボタンをクリックしてもPull originボタンが出てこず、メンターさんに質問。 なぜかother branchにmasterが入っていた。 current branchにmasterを入れる必要がある。 settingからbranchesに入って、default branchでmasterを選択してupdate デスクトップGithubに戻ってもう一度マージし直してmasterに
【ChatAppのフロント実装】続き チャット画面の実装 コードをひたすら打ち続けて終わった為、 ここで書く事がほとんどなくてすいません。
【ChatAppのフロント実装】続き ユーザー名とチャット作成ボタンの表示 チャットルーム一覧の表示 気付き VSCodeで開いているタブを順番に切り替える方法 command + shift + [ # 前のタブに移動 command + shift + ] # 次のタブに移動