~プログラミング]初心者エンジニアが1ヶ月スタートアップでDB設計からAPI実装まで学んだ話プログラミングTwitterFacebookはてブPocketLINE2018.12.04プログラミングを始めて11ヶ月で、スタートアップの自社サービス開発を初めて経験しました。入って1ヶ月目で「DB設計」→「マイグレーション」→「API実装」までを経験したので、それを通して学んだことをアウトプットします。API本体Rspecの実装DB設計DB設計は最初に、「このDB・テーブルはどのような目的・方法で使用するのか?」を理解して、仕様を考えることが重要。仕様・テーブル設計がまとまった早い段階でレビューをもらうと差し戻しなどの無駄な時間が大幅に減り、スムーズに仕事が進むことを学んだ。エンティティの定義DBに保存する全てのデータを洗い出す。入りうるデータを想定し制約を決めていく。ER図に起こすMySQLworkbenchなどのツールを使って、1〜4までのまとまった内容をER図におこす。-リレーション・・・エンティテ...qiita.comDB設計をRailsマイグレーションに落とすここは、レビューなどで確認をとったER図を指定通りに、Railsマイグレーションに起こす作業。型などの指定の仕方に注意しながら、単純なミスを減らすように意識する。spec/tests_spec.rbRailsAPI実装RailsAPI実装を始める前に、「どのような挙動を期待するのか?」を抽象化から具体的な仕様に落としていく。仕様に落としていく中で「誰がこのAPIをたたくのか(ユーザーなのかシステムなのか)?」「何の値がparamsで渡ってくるのか」「エンドポイントはどうするか?」などを最初にしっかり固めることが重要だということを学んだ。基本的に複雑な処理を書く(複数のクエリを指定する)場合などは、serviceに処理を書くのがよい。endendRspecの実装specテストの実装を始める前に、「意図しない値が渡ってきた場合」などを考え、まずテストする要件を洗い出す作業が非常に重要ということを学んだ。その上で、レビューをもらうと差し戻しなどの無駄な時間が大幅に減る。開発フローシェアするTwitterFacebookはてブPocketLINEtaikishiinoかぴトラベル関連記事FirebaseFirestoreでドキュメントの追加・編集(更新)・検索・削除の方法Firestoreは、Googleの柔軟でスケーラブルなNoSQLクラウドデータベースです。「オフラインデータアクセスに対応」や「リアルタイムデータ同期」などに加えてデータが非常に簡単に扱いやすくなっています。Dockとは、画面下にある(デフォルト)ショートカットバーです。ここによく使うアプリを追加することができます。エンジニアの基本ツールと...RubyRailsマイグレーションのindexの定義方法と対象について最近、railsを使い始めて、データベース設計をする機会がありました。その際にindexについての学びが多かったのでメモ。テーブルの中の特定のカラムのデータを複製し、データを取得する際に検索が行いやすいように...PHP【Windows10】Laravelのプロジェクト作成から動作確認まで解説Laravelプロジェクトを作成するにもいくつかのツールをインストールしておく必要があります。今回はwindows環境に1からLaravelプロジェクトを作成していきます。...PHPLaravelのマイグレーションで外部キーが通らない場合の確認事項Laravelのマイグレーションで外部キーを含めたテーブルを作成した際に詰まったのでメモ。今回、動的にモーダル表示するコンポーネントを作りました。「モーダルの状態管理」「親とコンポーネント間のデータの受け渡し」「動的にモーダルの中身を変更する」といった処理が必要で勉強になったので、備忘録代わりに記事にしました。コメントをキャンセルメールアドレスが公開されることはありません。