コンピュータにしてほしい仕事を、コンピュータが分かる言葉(プログラミング言語)で書いて伝えること。書いた指示のとおりに、正確に・何度でも・高速に実行してくれる。
プログラミングとは、コンピュータにしてほしい仕事を、コンピュータが理解できる言葉(プログラミング言語)で順序立てて書いて伝えることです。書かれた指示(プログラム)のとおりに、コンピュータは正確に・何度でも・高速に働いてくれます。
「超まじめな新人さんへの作業マニュアル作り」です。この新人さんは、マニュアルに書いたとおりのことを一字一句忠実に、文句も言わず何万回でも実行してくれます。ただし融通はまったく利かないので、「いい感じにやって」は通じません。曖昧さのない手順書を書く技術——それがプログラミングです。
人間の言葉に日本語や英語があるように、プログラミング言語にも種類があります。
いまは生成AIに日本語で「こういうアプリを作って」と頼むと、コードを書いてもらえる時代になりました。ゼロから文法を暗記しなくても、AIが書いたコードを読んで、直して、組み立てるという形で、初心者でも動くものが作れます。ただし「何を作りたいかを正確に言葉にする力」は変わらず必要で、それはプログラミング的な考え方そのものです。
初心者がつまずきやすいポイント
「全部を暗記してから作り始めよう」とするのが最大の遠回りです。プログラミングは自転車と同じで、作りながらしか身につきません。小さな「動いた!」を積み重ねるのが、結局いちばん早い学び方です。エラーが出るのは失敗ではなく、コンピュータからの「ここが分からない」という質問だと考えましょう。
API(エーピーアイ)
プログラム同士が情報をやり取りするための窓口。中の仕組みを知らなくても、決められた形で頼めば決められた形で返ってくる。
CSS(シーエスエス)
Webページの「見た目」を書くための言語。色・文字の大きさ・余白・配置・アニメーションまで、デザインに関わる部分をすべて担当する。構造のHTMLとセットで使う。
GitHub(ギットハブ)
プログラムのコードを保管・共有するためのWebサービス。変更の履歴がすべて残り、いつでも前の状態に戻せる。Vercelと連携すると、コードを送るだけで自動でサイトが更新される。
HTML(エイチティーエムエル)
Webページの「構造」を書くための言語。見出し・段落・画像・リンクなど、ページに何がどの順で置かれるかを定義する。Webページはすべて最終的にHTMLでできている。
JavaScript(ジャバスクリプト)
Webページに「動き」を付けるためのプログラミング言語。ボタンを押したら開く、入力をチェックする、データを取ってきて表示するなど、ページ上のあらゆる動作を担当する。
Next.js(ネクストジェイエス)
Reactをベースにした、Webアプリ開発の人気フレームワーク。画面・ページ切り替え・サーバー処理までひと揃いで作れる。本サイトもNext.jsで動いている。