hatenob

プログラムって分からないことだらけ

一人Web開発 Season.2~第1夜 はじめに~

2014年1月に、「一人Web開発」として読者がいるわけでもないけど自分のログとして細々とWeb開発技術の習得に勤しんでおりました。
そろそろ2年が経とうとしているので、技術のアップデートも兼ねて第2シーズンに入りたいと思います。

nobrooklyn.hateblo.jp

やり方は前回と同じです。
家庭内で、いわゆる「自分の時間」を使ってちょっとずつやっていこうと思うので、いつ終わるのかどころか、ちゃんと続くかどうかも分かりませんが、何も記録せずに思いつきで進めるとそのうち「何でこんなことしてたんだっけ?」と当初の目的を忘れたりしそうなので、記録がてら取っておこうと思います。

作るもの

下記を一通り作ることを目標に取り組みます。

  • アプリケーション(動くアプリとそのテスト)
  • 実行基盤(OS、MWの導入、設定)
  • 開発基盤(コーディング、CI、CD環境の構築)

極力、今流行っているものや最新の仕様に従って作りたいと思います。
極力、自律して運用できるものにしたいです。
前回は運用系機能も作るノリでしたが、今回はそこは範囲外にします。
気が向いたらって感じで。

アプリケーション

いわゆる3層(クライアント-AP-DB)のWebアプリケーションを作ります。
今回は「なんかすげーアプリを作るぜ」という目的ではないので、アプリケーションの内容自体はどこにでもありそうな適当なものにするとして、作りながら適当に考えます。
というのも前回と同じ。
できるだけAPI化したりとかは考えたいなぁ。

使う技術
  • JavaSE8 + JavaEE7
  • AngularJS 1.4

ちょこっとだけアップデートしたのと、JSはとりあえずのAngular 1.4。
2が出るって話だけれど情報が追いつかないのでとりあえず情報拾いやすい1で。

実行基盤

Webアプリケーションを実行する基盤を作ります。
さすがにHW選定とかはやっても仕方ないので(調達するお金がありませんので)、HWはVMを使います。
なのでOS以上を対象にします。

使う技術
  • VM : Docker
  • OS : CentOS 7
  • LB : Nginx
  • AP : Wildfly 9(スケールアウト可)
  • DB : MariaDB 10(スケールアウト可)

今回はDockerに載せて動かせるように頑張ってみます。
あと、Apacheもちょっと飽きたのでNginxに挑戦してみます。

開発基盤

コーディング環境の整備やソースコード管理、CI、CDを行う基盤を作ります。

使う技術

CIサービスを使ってみます。

こんな感じで緩くやっていきたいと思います。
アウトプットはすべて下記のGithubで公開いたします。

nobrooklyn/oneman2 · GitHub


とりあえず今日はもう眠いので、開始は明日以降に。