プログラミングで何ができる?
新初心者がおさえておくべき6つの考え方

 

2020年度から小学校にプログラミング教育が導入されました。

コンピュータが仕事でもプライベートでも我々に多くの有益性をもたらしてくれるようになったこの時期に、

主体的にコンピュータと関わるために、プログラミングはますます重要なスキルとなっています。

今回は、これからプログラミングの世界に飛び込もうと考えている方へ向けて、

  • プログラミングとは何か
  • 多くのプログラミング言語に共通の基礎的な概念

についてお話します。


※この記事のマンガ内の文字が読みづらい場合は、端末を横に向けて画面を回転させてからご覧いただくと改善される場合がございます。


プログラミングとは

プログラミング以前にさ、そもそもコンピュータって何さ?
プログラミング以前にさ
そもそも
コンピュータって何さ?
コンピュータというのは、もともとは計算機という意味だったんだけど、今では計算以外にもさまざまなデータの処理を高速に行うことができる
コンピュータというのは
もともとは計算機という
意味だったんだけど
今では計算以外にも
さまざまなデータの処理を
高速に行うことができる
そんなコンピュータだけど、プログラムという一連の命令を記述したものによって動くの。でもコンピュータは0と1だけで表された機械語しか理解できないから、ひとがコンピュータに機械語で命令をすることになってしまうよね
そんなコンピュータだけど、プログラムという
一連の命令を記述したものによって動くの
でもコンピュータは0と1だけで表された
機械語しか理解できないから
ひとがコンピュータに機械語で
命令をすることになってしまうよね
そこで、ひとにも理解しやすい言語を使って命令文を書いてから使う時に機械語に翻訳するという方法がとられる。これがプログラミング!そしてそのときに使われる言語がプログラミング言語だよ
そこで、ひとにも理解しやすい言語を使って
命令文を書いてから
使う時に機械語に翻訳するという方法がとられる
これがプログラミング
そしてそのときに使われる言語がプログラミング言語だよ

 

プログラミングができると、コンピュータに命令を与えて動かすことができるようになります。

ウェブサイトやアプリケーションを作ったり、サーバやデータベースを管理したりできるのです。

オリジナルのゲームやロボットも作れますよ。

このブログでもチェスアプリ開発の記事を書いているので、興味があればぜひのぞいてみてください。

関連記事

エンジニアのタイピング練習におすすめのサイト3選+α

エンジニアのタイピング練習におすすめのサイト3選+α


多くのプログラミング言語に共通の基礎概念

どんなプログラミング言語を学ぶにしても、ほとんどのものはある程度共通した考え方を持っています。

言語によって単語や文法は変わりますが、考え方は同じです。

まずはこれらの概念を覚えておくと、いろんな言語の学習にスムーズに入っていきやすくなります。

変数

特定の値に名前をつけて、あとから呼び出して使うことができるというものです。

言語によっては最初に宣言することがあります。

代入

あるもの(だいたいは左のもの)を別のもの(だいたいは右のもの)に「置き換える」操作です。

ひとつの「=」記号が使われることが多いですが、両辺が等しいというような意味はありません。

# Python の例
x = 3       # 変数 x に 3 を代入
string = "This is a string."    # 変数 string に文字列を代入
x = string  # 変数 x に 変数 string を代入
// JavaScript の例
var x = 3;
var string = "This is a string.";
var x = string;

配列

いくつかの数値やデータがまとめられた入れ物のようなものです。

番号などを指定することでそれぞれの値を呼び出すことができます。

数値を指定することで呼び出せるものと、文字列など数値以外のもので呼び出せるもの(連想配列)とがあることが一般的です。

# Python の例
l = [1, 2, 3]   # 配列(リスト)
l[0]            # 配列に格納されている値を呼び出す.数値は 0 から始まることが多い
# -> 1

d = {"key1": "value1", "key2": "value2"}    # 連想配列(ディクショナリ)
d["key2"]   # キーを指定することで値を呼び出すことができる
# -> value2
// JavaScript の例
const l = [1, 2, 3];
l[0]    // -> 1

const d = {key1: "value1", key2: "value2"};
d["key2"]   // -> value2
d.key2      // -> value2

条件分岐

指定した条件を満たすときのみコードを実行させることができます。

多くは「if」を使います。

# Python の例
x = 5
if x == 3:
    # x が 3 であるときの処理
    a = 1
elif x < 3:
    # x が 3 より小さいときの処理
    a = 2
else:
    # それ以外のときの処理
    a = 3

a   # -> 3
// JavaScript の例
const x = 5;
if (x === 3) {
    var a = 1;
} else if (x < 3) {
    var a = 2;
} else {
    var a = 3;
}

a   // -> 3

繰り返し(ループ)処理

反復処理、イテレーションともいいます。

多くの場合、ある特定の条件を満たす限り実行する「while」文と、

指定された回数だけ実行する「for」文があります。

# Python の例
x = 1
while x <= 3:
    # x が 3 以下である限り繰り返す
    x = x + 1

x   # -> 4

x = 1
for i in range(3):
    # 0 ~ 2 の値のそれぞれを i として取り出して繰り返す
    x = x + i

x   # -> 4
// JavaScript の例
var x = 1;
while (x <= 3) {
    x = x + 1;
}

x   // -> 4

var x = 1;
for (var i = 0; i < 2; i = i + 1) {
    // 初期値 0,毎回のループ後に i = i + 1 の処理をし
    // これを i < 2 である限り繰り返す
    x = x + i;
}

// 次のように書くこともできる

var x = 1;
for (var i of [0, 1, 2]) {
    // 配列[0, 1, 2] の各要素のそれぞれを i として取り出して繰り返す
    x = x + i;
}

x   // -> 4

関数

いくつかの処理がまとめられた入れ物のようなものです。

関数の内部の処理に使うために引数をとることがあります。

返り値という何らかの値を返すこともできます。

# Python の例
def func(arg1, arg2):
    return arg1 + arg2

func(2, 3)  # -> 5
func(func(1, 2) + 3)    # -> 6
// JavaScript の例
function func(arg1, arg2) {
    return arg1 + arg2;
}

// 次のように書くこともできる

var func = (arg1, arg2) => arg1 + arg2;

func(2, 3);     // -> 5
func(func(1, 2) + 3, 4);   // -> 10

関連記事

【初心者向け】サイトのカスタマイズ方法

【初心者向け】サイトのカスタマイズ方法


プログラミングができるようになると世界が広がります。

ここで紹介した基本の考え方をおさえたら、さっそく実際の言語を使ってプログラムを動かしてみましょう!

参考になれば幸いです。

では👋