フルスタック開発はアプリケーション全体をカバーする

この用語は範囲を表すものであり、一人がすべてのタスクを行わなければならないという約束ではありません。フルスタックプロジェクトでも、各側面で適切な判断が必要です。

フルスタック開発とは、人々が使用するフロントエンドと、ルールを適用し、データを管理し、アプリケーションを機能させ続けるバックエンドの両方にわたる作業です。

フロントエンドとバックエンドは一つのワークフローを共有する

画面でマネージャーがリクエストを承認できるとします。フロントエンドはレコードと承認コントロールを表示します。バックエンドは権限をチェックし、決定を記録し、更新されたステータスを次の人が利用できるようにします。

これらを一つのワークフローとして扱うことで、チームはギャップを見つけやすくなります。明確なボタンがあっても、システムが誰が使用できるかを強制できなければ十分ではありません。正しいルールがあっても、人が画面を理解できなければ十分ではありません。

スタックは最初の構築を超えて続く

アプリケーションは、インターフェースコード、サーバーサイドコード、データベース、それらを接続するサービスなど、技術のグループに依存しています。フルスタック作業はこれらの境界を越えることができます。

プロジェクトにはテスト、デプロイ、サポート、将来の変更も必要です。フルスタック計画を評価する際は、広範な開発知識がすべての運用ニーズをカバーすると仮定するのではなく、誰が各責任を負うのかを尋ねてください。

フルスタック用語

フロントエンド
人々が直接使用する画面、コントロール、インタラクション。
バックエンド
それらの画面の裏側で動作するルール、データ処理、サービス。
ソフトウェアスタック
アプリケーションを作成・実行するために一緒に使用される技術のグループ。

フルスタックプロジェクトの質問

人々が何をするか

各役割が必要とするタスク、画面、情報を定義する。

ルールが何を決定するか

権限、計算、承認、例外的なケースを記録する。

何を継続的に実行するか

アプリケーションのテスト、デプロイ、監視、変更の方法を計画する。

フルスタック開発に関する質問

フルスタック開発者は、ソフトウェアのフロントエンド部分とバックエンド部分の両方に取り組みます。具体的なタスクは、アプリケーション、チーム、関連する技術によって異なります。

いいえ。一部のソフトウェアスタックは複数のレイヤーで一つの言語を使用しますが、他のスタックは異なる言語とツールを組み合わせます。フルスタックはアプリケーションのカバレッジを表すものであり、一つの必須技術を意味するものではありません。

はい。人々が使用する画面と裏側のロジックやデータがあれば、両側にわたる作業はフルスタック開発です。

ワークフロー全体をまとめる

CaffeineのアプリはInternet Computer上で動きます。そのために作られたパブリックネットワークです。