- 更新日: 2020年11月12日
- 公開日: 2017年10月19日
【初心者必見】Webプログラミングとは?知っておきたい5つのこと
TwitterやInstagram、ショッピングサイト、SNSなどWebサービスを利用していて、「こうすればもっと便利なのに」「自分もこんなサービスを作ってみたい!」と思うことはありませんか?
自分のアイデアが形になって、多くの人に利用されて誰かの役に立っていたりすると、なんともいえない達成感を感じます。そのアイデアを実現するための技術であるプログラミングをぜひ習得したいですね。
今回はWebプログラミング自体がよく分からないという方に、Webプログラミングについて知っておくべきことを、あとで調べると役に立つ用語を交えながらお伝えします。
Webプログラミングとは
Webプログラミングとは、Webで使われるWebアプリケーションやWebサービスの開発(Web開発)を指します。※プログラミング自体を指す場合もありますが、ここではWeb開発全般についてお伝えしています
WebアプリケーションはそのWebサイトにアクセスした人に提供するさまざまな機能のことで、Webサービス、Webシステムなどとも呼ばれます。
Web開発に関わる人はWebプログラマー、Webエンジニア、Web開発者などの名称で呼ばれていますが、会社やプロジェクトによっては複数の業務を兼務している場合もあり、明確な線引きはありません。
IT業界は人材不足
経済産業省によるIT人材の最新動向と将来推計に関する調査結果によると、ITに関わる全ての人材は2020年には36.9万人、2030年には78.9万人が不足すると見込まれています。(※Web系だけでなく、IT業界全般の話です)
今も求人数は多く、この売り手市場は当面続くでしょう。就職・転職を考えている人には、今が学習の好機といえます。
Webプログラミングに必要なこと
Webプログラミングは、覚えることがたくさんあります。
Webの仕組みを知る
Webサイトを閲覧するときには、クライアントとサーバーのやり取りが起こっています。
クライアントとは、ユーザーが使うデバイス(パソコン、スマートフォンなど)と、デバイス上で実行しているソフトウェア(主にWebブラウザ)のことです。サービスを受ける側です。
サーバーとは、Webページやデータを保存するコンピュータのことで、サービスを提供する側です。
クライアント側のプログラムがサーバーに対してリクエストを送信し、サーバーのプログラムが処理をしてクライアント側へデータを送信することで、Webサイトの閲覧やサービスの利用が可能になります。
たとえば、ショッピングサイトで商品を購入~決済したときはこのような流れです。
①クライアントが商品をカートに入れ、購入手続きのボタンを押す。この要求がクライアントからサーバーへ送られる
②サーバーは顧客情報の取得や合計金額の計算などの処理を行い、クライアントへ”確認”ページを送る
③クライアントが”確認”ページを閲覧し、購入決定ボタンを押す
④サーバーが決済処理や該当店舗への連絡等を行う。処理が完了すればクライアントへ”処理完了”ページを送る
※ほかにもDNSなどさまざまな処理が進行していますが、ここでは省略します。もっと詳しく知りたい方はこちら→HTML初心者必見!Webページの仕組みをわかりやすく説明!
この流れには、Webページを表示するHTML/CSS、処理を行うプログラム、データを管理するデータベースなどが関係しています。
HTML/CSSは必須
Webページを構成するマークアップ言語がHTML、Webページの見た目を司るのがCSSです。Webプログラマーのみならず、WebデザイナーやWebマーケターなどの職種においてもHTML/CSSの知識は必須です。
さまざまなプログラミング言語
Webで使われている主な言語をご紹介します。
JavaScript
HTMLで作られたWebページに動きをつけるための言語です。 JavaScriptのライブラリの一つにjQueryがあります。jQueryを使用することでJavaScriptのコードがシンプルになり、望む機能が比較的簡単に実現できるようになります。
PHP
サーバー側のプログラムのための言語。HTMLに埋め込むことができる仕組みを持ちます。HTMLを勉強済みの初心者なら理解しやすく、さらに関数が豊富なので望む機能を実現しやすい点が特長です。
Ruby
PythonやPerl、JavaなどのあらゆるWeb系プログラミング言語の特徴を取り入れながらもシンプルなコーディングができる言語です。Ruby on RailsというWebアプリケーションフレームワークが有名です。
Python
文法がシンプルで少ないコード数でプログラムを書くことができ、コードが読みやすいのが特徴。データ分析・解析に役立つライブラリを有しており、機械学習や統計解析の分野でも活用されています。近年さまざまなプログラミング言語ランキングで上位に位置することが多くなっています。
Java
長くIT業界をけん引してきたオブジェクト指向言語。どこででも動作するという特徴があるので、Web業界だけでなく、組み込みシステムやスーパーコンピューター、モバイル用のアプリケーションまで、様々な分野で使用されています。
データベースについての知識
データベースとは、情報を検索しやすいように整理し収めた、情報の集まりのことです。データベースを管理するソフトウェアのことをデータベース管理システム(DBMS)と呼び、データベースの操作はSQLという言語で行います。
ショッピングサイトでいえば、顧客情報や商品情報はデータベースに保存されており、プログラムがこのデータベースにアクセスして情報を取得したり、情報を登録したりしています。
代表的なDBMSをご紹介します。
Oracle
Oracle社が開発したデータベース。リレーショナルモデル(関係モデル)と呼ばれる概念に基づいてデータを管理・操作する「リレーショナルデータベース」の代表格です。
MySQL
オープンソースのリレーショナルデータベースです。現在はOracle社が管理しています。
もっと知りたい方はこちら→MySQL入門者必見!MySQLとデータベースの基礎を徹底解説!
Microsoft SQL Server
Microsoft社のデータベースです。その規模に応じた複数の種類があり、機能や性能が異なります。
Webアプリケーションフレームワークも
効率的な開発のために作られたツールもいくつかあります。
フレームワークとはよく使う機能が集められたアプリケーションの土台のこと。必要な機能が既に存在するので、1から作るよりも短期間でアプリケーションを作ることができます。 JavaやRuby・PHPなどのWebフレームワークも開発によく利用されており、これらを使いこなせればスキルのひとつとなります。
各言語の代表的なWebフレームワークは下記の通りです。
Ruby on Rails
Rubyのフレームワークです。Rubyといえばコレ、という知名度を誇ります。
CakePHP
PHPの歴史あるフレームワーク。「ケーキを焼くみたいに簡単に」が名前の由来です。
Django
Pythonのフレームワークです。
もっと知りたい方はこちら→PythonのWebフレームワーク「Django」徹底解説!
Spring Framework
Javaのフレームワークです。多くの機能が搭載されています。
その他
Git、GitHub
Gitとは、プログラムのバージョン管理を行うツール。Gitをオンライン上で管理するサービスがGitHubです。
プログラムは一度作ったら終わりではありません。自分だけでなく複数の人の手によって改修がなされていくので、プログラムが今どの状態か、万一不具合が起こってプログラムを戻すときにどれを選ぶのか等、バージョン管理は適切に行う必要があります。GitHubはそのバージョン管理に優れたツールです。
もっと知りたい方はこちら→【決定版!】Git入門者に役立つ学習方法とおすすめ書籍&サイト集
\Webサイト担当者としてのスキルが身に付く/
まとめ
覚えることは多いですし、これから先も最新情報のキャッチアップをする必要があります。しかしまだまだ市場が拡大していくと見込まれるIT業界、そしてIT関係の職種が求められる人材であることは、自分の将来を考えるにあたって大きな安心材料となることでしょう。
実際に少しプログラミングに触れてみたくなったり、プロのエンジニアに話を聞きたくなったら、CodeCampの無料体験レッスンもお試しください!
- この記事を書いた人
- murase miho