エクセルを使える人は多いと思いますが、マクロや関数まで使える人は少ないですよね。
これエクセルだけじゃなくて、プログラム言語を勉強しているときにも「関数」がたくさんあることに気づきます。
使う側からすると関数はとても便利です。数値を足し算してくれたり、文字を検索してくれたり、文字列を結合して一つのワードにしてくれたりと、なにかと使えるのですよ。
ところでプログラマーは全ての関数を覚えているのでしょうかね?
関数を全て覚えているプログラマーは極少数
覚えている量が多いほど便利にはなりますが、関数を全て覚えていないとプログラマーにはなれないということはありません。
全て覚えている人なんてよっぽどの超人です。
プログラミング初心者の関数の覚え方
プログラマーになりたての頃は、どのような関数があって、どのような処理をしてくれるのかを知ることが重要になります。
そのときに役立つのがオンラインマニュアルです。
たとえばPHPの場合、文字列の処理やデータベースへ接続する際の関数などオンラインマニュアルで全てを調べることができます。マニュアルなので、その関数がどういった機能を持っていて、どのように記述するのか、使用時の注意点なども記載されています。
プログラムを作ろうと思ったときに、どのようなことができるのかを予め想定なくてはいけないですよね。オンラインマニュアルを最初に見ると、具体的にできることが見えてくるので非常に構想が練りやすいのです。
次にある程度プログラミングのことがわかってきたら、アルゴリズムという壁にぶつかると思います。
「メールを自動送信するシステムを作りたい!」となった場合、
何がどのようになったらメールを送るのか?
メールはどのように送るのか?
メールで何を送るのか?
など、メール発出の条件を考えないといけなくなります。
実際にプログラムを作成するようになって、こんなことできる関数ないかな~とか考えながらオンラインマニュアルから関数を検索していきます。
そして関数の機能を組み合わせてシステムをくみ上げていくこととなるのです。
こういったシステムを作り上げることを何度も繰り返していくと、「こんな関数なかったっけ?」という感じで感覚的に覚えていくようになりますよ。
で、ここでようやく気付くのです。
ほぼ、同じような関数しか使っていないということに。
プログラマーは関数は覚えるより、経験を積んだほうが良い
英語の単語帳のように、覚えるためだけに関数を見ていても、システムを作るために必要な考える力が養えないのでプログラマーには役に立ちません。
ただの辞書になってしまいます。
関数が覚えられないから・・・と悩んでいる人は、悩む方向性を間違っていますよ。
関数は調べればわかるものです。
しかし、自分が作成しようとしているプログラムが、どういったことをシステム化して、どのように便利なツールになるのかは、WEBで検索してもわかりません。誰かが教えてくれるわけでもありません。
これはモノづくりの根幹になる部分なので必要な関数というのは経験の中で足していくしかないのです。
そう、一番大切なことは経験のなかから生まれるのです。
ただ、やみくもに経験を積むのは難しいと思っている人も多いと思います。そんなことをいっていたら会社に就職してからじゃないと実績を作ることは難しいし関数も覚えられないと思うかもしれませんね。
しかしもし開発環境を作ることだけしかできなかったとしても、経験であり知識になります。小さな積み重ねがプログラミングを学ぶうえで人と差をつけることになるのです。本当に優秀なプログラマーになりたいなら、疑問をもち、失敗しても自分でプログラミングをして関数を使ってみるという過程が必要なのです。
関数を覚えるよりも、ムフフな画像を一括してダウンロードしてこれるシステムを自分で作ってみたほうがよっぽど成長するし関数も自然と覚えますよ。
関数はこわくない、恐いのは面倒くさがる気持ちなのですね。
ということで初心者の方は関数にこだわらず、簡単でいいのでひとつでも自分でシステムを作ってみることをおすすめします。