Photo by Cal Evans
こんにちは。谷口です。
プログラミングを学習中の皆さんは、「LAMP(ランプ)環境」についてご存知ですか?
LAMPとは、Webアプリケーションの実行環境の組み合わせを表したものです。
Webアプリケーションの実行環境では普通、OSとWebサーバ/アプリケーションサーバ、データベース、プログラミング言語を組み合わせて利用します。その中でLAMPというのは、Webサービスがはやり始めたころからある、オーソドックスな組み合わせです。OSにLinux、サーバにApache、データベースにMySQL、プログラミング言語にPHPを使用するため、その頭文字をとって、LAMPと呼ばれています。
LAMP自体は新しい技術ではありませんが、Webアプリ開発の基礎的な概念を学ぶにあたっては情報量も多く、個人でも無料で開発環境をそろえられるため、比較的初心者の人でもとっつきやすいかと思います。
「プログラムの書き方だけ覚えればいいんじゃないの?」と思われるかもしれませんが、Webアプリが動く仕組みの全体像が把握できるようになると、自分のスキルの幅も広がります。またWebアプリ開発ができるITエンジニアを目指す人であれば、プログラムの書き方だけでなく、書いたコードが動く環境や、その周辺技術についても、いずれは習得する必要があります。
というわけで今回は、なるべくコストがかからず、LAMPの学習に役立てられるコンテンツをご紹介していきます。
■プログラミング経験ゼロから学びたい人
プログラミング未経験者や「初心者だけどLAMPで何か作りたい!」という人の場合、まずはPHPの書き方から学ぶ必要があります。独学でも下記のようなサービスを使えば基礎的なコードの書き方を学べます。
Webアプリ開発の場合は、HTML/CSSやJavaScriptといったフロントエンドを作る技術もあわせて理解しておいた方がよいでしょう。
◆paizaラーニング
paizaラーニングは一回3分程度の動画を見ながらブラウザ上で演習問題を解き、すぐに実行して結果を見ることができます。未経験者でもブラウザさえあれば、環境構築不要で手を動かしながらプログラミングの基礎を習得できます。
paizaラーニングでは、ただいま有料講座をそれぞれ期間限定で連続無料公開中です!LAMP環境での開発に役立つ講座も続々無料公開いたしますのでぜひごらんください!
◆Progate
スライドによるレッスンで基礎を学び、オンラインエディタでコーディングをして実行結果を見ることができます。コーディングの際は、エディタやプレビュー画面と一緒にお手本となる見本画面や解説もあります。
■MySQLについて学びたい人
「プログラミング経験はあるけどSQLはあまり使った経験がない…」「プログラミングは好きだけどSQLはどうも苦手で…」という人も多いかと思います。
SQLとは、リレーショナルデータベース(RDB)のデータを操作するための言語です。私たちはSQLを使うことによってRDBMS(リレーショナルデータベースマネジメントシステム)に命令を出して、必要なデータをRDBに格納したり、格納したデータを取得(表示)できます。
中でもMySQLは、世界中で最もよく利用されているオープンソースのデータベースの一つで、無償でインストールできる上、高速で使いやすいのが特徴です。
◆SQL ひっそり散歩
もともとSQL初心者だった方が、全くの無知の状態からSQLを覚えて解説をされているサイトですので、「SQLを全く触ったことがない!」といった方でもとっつきやすいかと思います。DBにはMySQLを使用しています。
◆MySQL初心者入門講座
MySQL初心者を対象に、ダウンロードから始めてインストール、データベース作成、ユーザー作成、テーブル作成、SQL文まで図を使って詳細に解説しているサイトです。
◆paizaラーニング「DB/SQL入門編1・2」
paizaラーニングでも、初心者やITエンジニアではない職種の人でもSQLを学べる「DB/SQL入門編」を配信しています。
「DB/SQL入門編」は、SQLのオンライン実行環境と構築済みのDBを使うことで、初心者でも環境構築で挫折することなく、動画と演習問題を通してSQLの実践的な書き方がすぐに学べて身につく講座となっています。
■Linux、Apacheの使い方について学びたい人
Linuxには、一般利用者がインストールしたり、利用できる形にまとめられたLinuxディストリビューションというものがたくさんあります。一般的に人気があるディストリビューションはUbuntuやCentOSなどがあります。
インストール方法はディストリビューションによって少しずつ異なります。
既にLinuxを使える環境がある人は、自分でコマンドを叩きまくって動かしまくってみるのがよいでしょう。
<参考記事>
- 【初心者でもわかる】Ubuntuのインストール方法まとめ
- CentOS 7 インストール Linuxを始めるにはインストールからがお勧め
- プログラミング初心者必見!はじめての Linux インストール | Tech2GO
Apacheとは、世界的に普及しているWebサーバソフトウェアです。大規模な商用サービスはもちろん、個人が自宅でサーバを立てる際にも幅広く利用されています。
Apacheの仕組みや使い方も、詳しく勉強したい場合は、まずインストールをして自分でサーバを立ててみるのが重要です。
<参考記事>
◆Linuxコマンドポケットリファレンス
- 作者: 沓名亮典
- 出版社/メーカー: 技術評論社
- 発売日: 2015/06/05
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (2件) を見る
ではそのコマンドはどうやって調べるのかという話ですが、ネットで検索するのももちろんよいのですが、初心者の場合はリファレンス的な書籍が一冊あると体系的に学べるのでおすすめです。
◆Linuxシステム[実践]入門
Linuxシステム[実践]入門 (Software Design plus)
- 作者: 沓名亮典
- 出版社/メーカー: 技術評論社
- 発売日: 2013/07/03
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (13件) を見る
◆サーバ構築の実際がわかる Apache[実践]運用/管理
サーバ構築の実際がわかる Apache[実践]運用/管理 (Software Design plus)
- 作者: 鶴長鎮一
- 出版社/メーカー: 技術評論社
- 発売日: 2012/03/23
- メディア: 単行本(ソフトカバー)
- 購入: 6人 クリック: 109回
- この商品を含むブログ (14件) を見る
■まとめ
プログラミング初心者の方でも、学習サービスをうまく使ってWebアプリ開発の基礎スキルを身につけていくことは充分可能です。ご興味のある方は、ぜひいろいろ試してみてください。
また最近は、Webサーバをnginxに置き換えたり、スクリプト言語をPHPからRubyやPythonに置き換えたりして開発される場合も多いため、LAMPだけでなく、Ruby on Railsを使った開発手法なども学んでおくと、Web開発についてさらに理解を深めることができるかと思います。
初心者向けRailsの学習コンテンツについてはこちら
paiza.hatenablog.com
なお、プログラミングが動画で学べる「paizaラーニング」では、普段有料公開しているHTML/CSS、JavaScript、PHP、DB/SQL、Webアプリ開発入門(PHP+MySQL編)のレッスンを、期間限定で連続無料公開しております!
無料公開期間:HTML/CSS入門編
動画レッスン名 | 無料期間 |
---|---|
HTML/CSS入門編1 | いつでも無料 |
HTML/CSS入門編2 | 5/16(火)~5/18(木)まで無料 |
HTML/CSS入門編3 | 5/19(金)~5/22(月)まで無料 |
■プログラミングが動画で学べるレッスン「paizaラーニング」
paizaは、技術を追い続けることが仕事につながり、スキルのある人がきちんと評価される場を作ることで、日本のITエンジニアの地位向上を目指したいと考えています。
自分のスキルを磨いていきたいと考えている方におすすめなのが「paizaラーニング」。オンラインでプログラミングしながらスキルアップできる入門学習コンテンツです。初心者でも楽しくプログラミングの基本を学ぶことができます。
そして、paizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。
スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。