初心者が個人でそれなりのWebサービス開発する最小限の技術

に投稿

「Webの技術って覚えることがいっぱいあるよな…」
「言語もフレームワークも選択肢が多すぎてどれを選べばいいのかわからない…」
「それなりのものが作れる最小限の技術を知りたい!」

プログラミングを始める動機として個人でWebサービスを開発したいという方も多いかと思います。

いざ始めようとしたら、選択肢が多すぎて何を学べばいいかわからないとなりがちです。

それにいかにも素人が作ったようなサイトではなくそれなりの出来上がりにしたいものです。

そこで今回は「初心者が個人でそれなりのWebサービス開発する最小限の技術」を紹介します。

フロントエンドの選択肢

必須の3技術

以下の3つは必須です。

  • HTML
  • CSS(スタイルシート)
  • JavaScript

デザインをかんたんにそれらしくする方法

  • CSSフレームワーク

があります。

CSSフレームワークを使うとデザインのセンスがなくても、なんとなくそれなりに見栄えのするサイトになります。

CSSフレームワークには有名なものだと、

  • Bootstrap
  • Foundation
  • Materialize

などがあります。

おすすめはBootstrapです。理由は、

  • CSSフレームワークの中で最もメジャー
  • サンプルコードや使い方を説明しているサイトがたくさんある

つまりは学習コストが低いんです。

デザインをそれなりにしたら、今度は操作性です。

使い勝手をそれなりに良くする方法

JavaScriptライブラリ・フレームワークを使うとそれなりに操作性の良いサイトを比較的かんたんに作れます。

  • JQuery
  • React.js
  • AngularJS
  • Vue.js

他にもたくさんありますが、この中でおすすめはJQueryです。理由は、

  • JavaScriptライブラリの中で最もメジャー
  • JQueryのサンプルコードや使用方法を解説しているがたくさんある
  • 先ほど選んだCSSフレームワークのBootstrapにJQueryが組み込まれている

まずはかんたんなものを使う意義

2010年くらいまではJavaScriptライブラリと言ったらJQueryという状況でした。現在はJQueryをやめて、React.jsやAnbularJSに移行している企業も多くなってきました。ですが、初心者が個人でサービスを開発するという用途ならJQueryを使うのが一番かんたんです。

まずはかんたんな技術を選んで完成まで持っていくことが重要です。難しいものはその後必要に応じて学べばいいでしょう。

サーバーサイドの選択肢

言語

Webのサーバーサイドでよく使われる言語としては

  • PHP
  • Ruby
  • Python
  • Perl
  • Node.js(JavaScript)
  • Java

があります。

おすすめはPHPです。

文法などは他の言語に比べて特別かんたんなわけではないのですが、環境構築が抜群にかんたんです。

Webサービスを開発するにはPCに開発環境を構築する必要があります。PCに、

  • 言語のランタイム
  • Webサーバソフトウェア(Apache, nginx等)
  • DBサーバソフトウェア(MySQL, PostgreSQL等)

をインストールしてセットアップします。

これは初心者には少々大変ですが、PHPならば、XAMPPというソフトウェア・パッケージをインストールするだけで

  • PHPのランタイム
  • Apache(Webサーバ)
  • MySQL(DB)

がインストールされます。セットアップもほぼ不要で、ボタンを押すだけでApache、MySQLを起動できます。PHPのコードを書いてファイルを特定の場所に置くだけでWebサービスとして動作します。

  • Apacheよりもnginxのほうが性能が高いのでは?
  • MySQLよりPostgreSQLの方が高機能では?

とも考えられますが、これまたまずはかんたんなものを使って覚えるのが良いと思います。Apacheとnginx、MySQLのPostgreSQLの共通点は多いので、必要に応じて後で学べばすぐ覚えられますからね。

フレームワーク

フレームワークを使うと、それなりのものを比較的かんたんに作れます。

それにフレームワークを正しく使えば

  • SQLインジェクション
  • クロスサイトスクリプティング

などのセキュリティホールを塞ぐことが出来ます。

PHPのフレームワークで有名なものは、

  • Laravel
  • Symfony
  • CakePHP
  • CodeIgniter

などです。この中で今一番勢いがあって人気なのはLaravelです。

日本ではこれまで、

  • CakePHP
  • CodeIgniter
  • FuelPHP(海外に比べてなぜか日本での人気が高かった)

が人気でしたが世界的にLaravelがぐんと伸びてきて、遅れて日本でもLaravelが人気となっています。

使い方の解説記事も豊富なので学習しやすさとしても良い選択です。

サーバの選択肢

  • レンタルサーバ
  • VPS
  • クラウド

があります。

この中では費用の安さとセットアップのかんたんさから、レンタルサーバがおすすめです。

レンタルサーバは契約するだけで、すぐにプログラムを動かせる状態にセットアップされたサーバを使えます。WebサーバやDBサーバを自分でインストール・セットアップする必要がありません。

一方、VPSやクラウドは自分の手でサーバをセットアップしなければなりません。

レンタルサーバでもPHPであれば、フレームワークを使った開発ができます。

大抵のレンタルサーバはPHP、Ruby、Python、Perlの動作をサポートしていますが、PHP意外の言語はCGIモードでしか動かせません。CGIモードではリクエスト事にCGIプロセスが起動されるため、フレームワークのように大量のプログラムをロードするのに不向きで、非常に重くなります。

PHPであれば、Apacheの内部モジュールとして動かすことをサポートしているレンタルサーバがほとんどなのでフレームワークもばっちり使えます。

まとめ: それなりのものを作るため最小限の組み合わせはこれ!

  • HTML
  • CSS(スタイルシート)、CSSフレームワークはBootstrap
  • JavaScript、ライブラリはJQuery
  • サーバーサイド言語はPHP、フレームワークはLaravel
  • サーバはレンタルサーバ(WebサーバはApache、DBはMySQL)

これらを選べば、比較的かんたんに学習、開発、サービス公開ができると思います。ぜひトライしてみてください!

エージェントを使った方が転職活動は楽です

東京・大阪近郊のイケてるIT企業に転職したい人には『レバテックキャリア』

 東京・大阪近郊のエンジニア経験者向け転職サービスです。

このサービスを運営しているレバレジーズという会社はシステム開発もやっているので、現場の仕事をよくわかってくれてますし、ヒカ☆ラボというIT系の勉強会なども主催していたりteratailというプログラマー専用の質問サイトを運営してて好感が持てます。求人案件もWebやスマホの面白い仕事が多いのでいいと思います。

ホームページを見ると分かるんですが、若くて美人の担当者が多いのもナイスなんです!私の場合(たぶんあなたも)、担当者が美人だと転職活動のモチベーションめちゃ上がりますからね笑

エンジニア未経験の方や地方在住の方にはワークポートというエージェントをおすすめします。

エンジニア未経験の方や地方在住の方には『ワークポート』

全国の求人を扱っていて、しかもITエンジニア未経験の人にも転職支援をしてくれるエージェントです。

未経験の人はサポート対象外のエージェントが多い中、ワークポートは未経験者を支援し転職を成功させています。

未経験の方こそエージェントから職務経歴書の作り方や面接の仕方のレクチャーを受けた方がずっとうまくいきます。

『派遣社員』なら正社員とフリーランスの『良いとこ取り』!

  • 「フリーランスになりたいけど、確定申告とかめんどくさいな」
  • 「定時帰りできる職場や、時短勤務がしたい」

という方には派遣社員がおすすめです。

派遣ってネガティブなイメージありますが、ITエンジニアの派遣社員なら

  • 時給が高く、給料も悪くない
  • やりたい仕事を選べる
  • 確定申告不要(派遣会社がやってくれる)
  • 厚生年金、健康保険も派遣会社が入ってくれる

ので、正社員とフリーランスのいいとこ取りな、とてもいい選択なんです。

 - 技術