takek1990 日記

気張らずに考えたことや学んだことなどを書くブログ。

個人でandroidアプリを作って公開した話 第3話「初心者向け、アプリ作りの基礎知識①」

 

このページから、何回かに分けて、
何も知らなかった5年前の自分に向けて、なるべく簡単な言葉で
アプリの構造から作り方までをざっくり今の知識で簡単に説明してみます。
ムラはありますが、アプリ作りやITに関する勉強を始めるときに、
自分がこういうことを最初に知ってたかったなということを書いてます。

 

今回は「初心者向け、アプリ作りの基礎知識①」ということで、
アプリって何?プログラミングって何?ということを書いています。

会話っぽく進めてみます。

―アプリって何?

パソコンやスマートフォンのような機械の中で動く、
ツールやソフトのことです。メモ帳やラインやyoutubeなどもアプリです。
機械の中にソフトをダウンロード・インストールすることで
そのアプリを使えるようになります。

ーどうやってできてるの?できあがるの?

知らない誰かが頑張って作った結果、できます。
(大抵のアプリは情熱と努力と涙と根性でできてるのだろうと思います。
頑張れば、一人でも作ることができます。
→凡人でも頑張れば作れる!!という認識を持ちましょう。)

―よくわからない精神論はいいんだけど、もう少し具体的には?

プログラミング言語というものを使ってプログラミングをします。

―プログラミングって何?

プログラミングは、パソコンに向かってなにやら文字を打ち込むことです。
というと語弊がありますが、
少なくとも外からプログラミングをしている人を見るとそのように見えます。

 

―プログラミングでは具体的には何をしているの?

人間が読むことが可能な「コンピュータへの指示書」を書いています。
例えばこんな感じ:

  1. アプリを起動したら「ようこそ」と画面に文字を表示してください。
  2. 「ようこそ」と文字を表示したら、20秒何もしないで待機してください。
  3. 20秒待機し終わったら、画面の「ようこそ」の文字を消してください。
  4. 「ようこそ」の文字を消したら、
    あらかじめ用意しておいた絵を画面に表示してください。
  5. 絵を表示するのとほぼ同時に、
    あらかじめ用意しておいた音楽を流してください。

この指示書のことを、「ソースコード」とか「コード」とか言います。
また、この指示書に使う言葉として、
プログラミング言語」というものがあります。

プログラミング言語

そう。
まず、言語といいますが、「日本語」、「英語」、「中国語」のような
人が日常的に使うようなものをイメージするのはやめましょう。
読み書きができるだけの指示書作成ツールだと思った方が良いです。

コンピュータへの指示・命令に簡潔な名前付けをしたり、
人間が指示・命令がしやすいような仕組みを組み込んだものです。
例えば、「文字を表示してください」という指示には
「print」という名前が付いてたりします。
また、100回連続でprintという動作を行ってください。
という命令をしたい場合には、100回「print」と書かなくて済むような
ループという仕組みが備わっていたりします。
他にもいろいろな仕組みがあります。
多くのプログラミング言語では、英単語が多く使われています。

プログラミング言語はたくさんあるの?

たくさんあります。
プログラミング言語」=「指示書作成ツール」も、人が頑張って作ったものです。
色々な人が、「書きやすい」「読みやすい」「後で変更しやすい」
「コンピュータの処理が速い」など、特徴や機能を色々考えて作ってます。
また、「iphoneアプリ作成に特化」、「androidアプリ作成に特化」など、
何らかの用途や専門性に特化したプログラミング言語もあります。

―でも、アプリを使っていて「コンピュータへの指示書」なんて見たことがないけど、それを見ることはできるの?

実は、多くのプログラミング言語では見ることができません。
「コンピュータへの指示書」は、
実はそのままではコンピュータは理解不可能なのです。
どちらかというと人間がコンピュータに指示を書きやすいように
作られたのがプログラミング言語です。

―???!プログラミング言語をコンピュータは理解できないの?

その通りです。「プログラミング言語で書かれたコンピュータへの指示書」は
そのままでは理解不能なのですが、これをもとに
また別のツールを使って、コンピュータが理解可能なように
変換してあげることでソフトウェア、アプリが出来上がるのです。
この変換のことを「コンパイル」と言います。
なので、人が直接書いた「コンピュータへの指示書」を
そのまま見ることはできないのです。

―最初からコンピュータが理解可能なように指示書を書けばよいのに。

コンピュータが理解できる指示書というのは、
人間には読みづらく、すごく理解しにくいのです。
だから、まずは人間に理解しやすい指示書を書いて、
それを変換ツールを使って変換するというやり方が主流です。
変換前の指示書のことを「ソースコード」と言いますが、
「ソース」には「元」とか「源泉」といった意味があります。
ちなみに、変換前の指示書を見ることができるプログラミング言語もあります。
例えばホームページで使われている「htmlやjavascript」というのは、
ソースコードを直接見ることが可能です。やり方は調べてみてください。

―そうなんだ。そのうちいつかきっと調べてみるよ。(続く)