ここまで色々書いてきました。



前回はアプリ開発はプログラミングだけじゃないよ!
って内容を書きました。
プログラミングを知らない人と、プログラムをしたことがある人の認識の違いから来る簡単だという幻想も結構あるんじゃないかなーて思います。
プログラマーって多分全体の作成時間が10あったとして、実際にソースコードを書いてるのって3も無いと思います。
個人の感想でもあるのですが、残りの7で
・設計:こんなのつくるぞー。仕様とかも決める。
・詳細設計:具体的にどう作るかの設計。
・テストケース作成:どういったテストをするか、どうテストするのかとか決める
・単体テスト:ちっちゃい範囲でのテスト
・結合テスト:広い範囲でのテスト
・不具合修正:上のテストで見つかった不具合の修正。修正後は当然再テスト
見たいな事をやっています。
で、そのソースコードを書いてる3のうちでも、
・どう実装しようかなー
・どう書いたら読みやすくなるかなー
・世の中にライブラリないかなー
・他の人どうかいてるのかなー
とか考えながら書いているので、実際にカタカタ書いてるのはもっと少なくなると思います。
まぁ少ないとはいっても、実際にモノを作るのはソースコードを書いて作っていくので、
ソースコードは書いていくわけです。
環境構築をして、ちょっとHello,World!!を書いて、ちょっとずつ動くようになってきました。
それで色々書いていくとなにやら「プログラミングは動けば良い訳ではない」という記事にぶつかったりします。
どうやらプログラミングの世界は動けばいいというわけではなく、
良いプログラミングと悪いプログラミングがあるということが分かってきます。
このあたりがめんどくさいところなんですよね。
たとえば大学とか会社でプログラムを書く機会がある人はコードレビューをしてもらえます。
(新入社員にアホみたいなコード書かれたくないですし)
でも個人で書くとそうも行きません。
IT系のブログとかを確認すると、
「世の中には素敵なソースコードが無料で確認できる。最高の教科書があるじゃないか」
とかって書いてあったりします
Gitとか既存のライブラリとかを見ると確かにいわゆる世界トッププロのコードがあるので、
最高の教科書かもしれないですが、はじめてプログラミング書いてみました!って人には(というか自分も)結構ハードルが高いです。
まず何をみていいか分からないですからね。
「ほーん、、、なんか色々かいてあるなー」くらいの感想しか沸かないでしょう。
あと書いて実際に動かすと、いきなりエラーで落っこちたりします。
いわゆるバグってやつですね。
前提として、ソースコードを書くこと=バグを作ることです。
何も書かなければバグりません。何かソースコードを書いたらバグります。
もっというとバグ10個くらい修正したら1個新しいバグを作っているなんてこと、良くはないですが、普通にある話です。
そのため、結構な頻度でバグ修正に時間を使います。
バグを修正するためのログとにらめっこして、デバッグして、テストして、、、みたいな結構地道な作業が多いです。
はじめはなれないとこのあたりの感覚もつかみにくいのかなーとか、新人をみていて思ったりするわけです。
ここまで色々プログラミングは簡単だという幻想についてざっくり書いてみました。
もう少し書いてみます。
コメント