sammyppr

View on GitHub

BackendProgramming

Roadmap

Webのバックエンドには様々な技術が使われている。全部を学ぶのは事実上不可能。自分がどんな方向に向かうべきか知るためにも、ロードマップを確認しておこう。


CUI

開発にはターミナルが必須となる。まず、この辺で慣れよう。

パイプ・grep・リダイレクトも覚えよう

あと、Emacsキーバインド覚えよう。

ターミナルかっこよくしたい場合は


仮想化について(Option)

自分のコンピュータ上に仮想マシンを作成することで、様々な環境を構築することができる。VirtualBoxを利用してみよう。(※ M1だと不具合あるみたいでMultipassを使おう)

サーバはLinuxが多い。Linuxには種類がありディストリビューションと呼ばれる。UbuntuServerを導入してみよう.


Docker

仮想マシンはOSもインストールしなくてはいけない、Dockerを利用すれば、手軽に環境構築が可能となる。


バージョン管理

開発にあたっては、何をどのように機能追加したかを管理したり、共同作業によりトラブルが起きないようにバージョン管理をしなくてはいけない。Githubに残したコード量は今後の人生でも評価されることになる。


知っておくべき概念

オブジェクト指向

MVCモデル

デザインパターン


本当に開発が必要?

最近ではHeadlessCMSという概念が出てきて、これを利用すれば内容を管理するバックエンドの機能は既に提供されているために、いわゆる「開発」の必要は無くなる可能性がある。



ここからは

何をするか、何を使うか決めていこう。いずれにせよ、技術は移り変わるためずっと使い続けることは不可能に近いが、新しい技術が出てきても、それまでに培った技術は必ず役に立つ。

RubyOnRails

PHP

Python

Node.js

JavaScriptのサーバサイド実行環境