読者です 読者をやめる 読者になる 読者になる

Unityでインディゲーム道!

プログラム、Unity初心者がインディゲーム制作を目指して日々思うことなどを書き綴ります。

プログラミング入門者のためのC#攻略本とはなにか?

これからプログラミングを始めてみよう!という人にとって、最適なC#の攻略本はおそらく無いです。筆者自身も教えて欲しいくらいです。しかし、あきらめずにプログラミング入門を打開するのに役立った本や、サイトなどをご紹介させていただきます! 

 

同時投稿のこちらの記事では、初心者への障壁について書きました。

本記事は、この記事を受けての対となるものです。

 

C#を理解し、使うということとUnity上でC#を介し、そのAPIを活用してゲームを作るということは厳密には違うことなのかも知れません。しかし個人的には、やはりC#C#で個別に勉強したほうがいいだろうと思いました。今でもその判断が正しかったと思います。なぜならプログラミングにおける問題解決手段に、"問題の分割"というものがあるからです。個々の問題に個別化して、一つ一つ解決していく方法です。

  

あえてCをやる。

最初悩みました。完全初心者のためのC#本はないのでは?と感じ始めたからです。
そこで見つけたサイトが、この・・・

 

C入門


「C 入門」で検索すると一番上に出てくるサイトになります。

 

というかCかよ!?C#じゃないのかよ!?という人がいるかもしれません。しかし、結果的にCからがわかりやすかったんです。自分としては。 Cをマスターするのは、難しくても、基本的な部分を学ぶにはシンプルでいい言語だと思います。

あと古い言語なので、もはや変化しないというのと教える側の錬度が高い、というのもあります。書籍が充実している、というのもあるわけです。

 

ただCには『ポインタ』という初心者殺しがあります。自分もここらへんは最近ようやくわかりかけている感じですが、初心者はポインタは無視していいです。


というかCでプログラミングできるようになる必要も無いと思います。(というか自分もほぼできません!(^o^)) このサイトにおいて、基本概念をCで軽く触れた上でC#で実際にプログラミングしてみる!という方法もあるのでは?ということです。

 

確かにいきなり最初に2つの言語を同時に勉強するのは混乱の元かもしれません。
しかし、あくまで事前学習のための踏み台としての利用法があるんだ、ということです。 このサイトで書かれていることをVisual StudioC#を使って再現してみる。とかやっていましたね。 

 

教えてくれる人が大事

ここは林健一郎先生という方によるサイトです。『珠玉のプログラミング』というプログラミングにおける名著の訳者であったり、スゴイ方なんですが、サイトのテキストはかなり優しい、わかり易い文です。


単純に読んでて面白いですし、苦になりません。(それでも最初はわかりませんが)
そこが自分の中ではかなりの尊敬ポイントです。本当に賢い人はわかりやすい説明が出来る!教えてくれる人を選ぶことが大事なのかもしれません。

 

なんでプログラミングを一回もやったことないという人はこのサイトをぜひ確認してみて欲しいです。C#に触るのはそれからでも遅くないと思います。

 

 

やはりCで前準備 

苦しんで覚えるC言語

 そしてこの『苦しんで覚えるC言語です。またC言語です。サイトもありますが、自分は書籍版を買いました。名前がいいですよね。信頼できる!

 

というか、むしろわかりやすいんですけどね。でこの本もですが、全部理解する必要は無いです。やはりCとC#は違いがありますから、後半はC#と関連性の薄い内容になります。なので13章まででいいと思います。ホントに基本的なことをしっかり学べます。変数の寿命とかは非常に参考になりました。

 

じゃあC#は何をみればいいのか?となるといまだによくわかりません。

 

これくらいわかり易い日本語サイトはないものか

www.dotnetperls.com

DotNetPerlは海外の英語のみのサイトですが、項目ごとにシンプルで易しくまとめられているので非常にわかりやすいですし、下手な日本語サイトよりよっぽど初心者に優しいです。逆にわかりやすいとはこのことですね。これぐらいシンプルで整理された日本語サイトがあればいいんですが、どなたかご存知ないでしょうか?

 

応用編

 (原題)"Think Like A Programmer"

プログラマの考え方がおもしろい身につく本』

(あえてAmazonリンクは貼らない) 

この本は、まだ完全に読破できているわけではありませんがかなりいい本です。

 

プログラミング言語の文法を覚えたとしても、プログラミングできるかといったら出来ないよね?じゃあどうすれば出来るようになるんだろう?という観点から切り込んだ一冊です。まさしく初心者が知りたいことが具体的に書いてあります。

 

実際にプログラミングできるようになるためにはどういうことを考えていかないといけないのか?という思考プロセスをひとつひとつ丁寧に解説しています。文法として学んだ、プログラミングにおける様々な道具をどう使っていくか?ということを学べます。

  

ただし問題はサンプルコードはC++で書かれているということです。C#に慣れるとC++はC以上にややこしいかもしれません。というわけでC++の基本的な部分も学ぶハメになったんですが、幸運なことに上のC入門のほかにC++入門というページが!

 

C++入門


自分もC++は、かなり拒否反応がありました。(C#から見ると違和感がすごいのです。)しかしそれでも読む価値はあります。これのサンプルコードをC#で書いたものが出たらかなり最高の教科書になると思うんですがねぇ。 


また、『プログラマの~』における"クラス"に関する言及は、C#においてもかなり指針になるものだと思います。全体的に難しいですけども、実践以外の精神論的な部分も参考になります。プログラマの頭の中で何が起こっているかがわかります。

  

まとめ

というわけでC#の攻略本はまだない!という結論に変わりありません!


しかし、それに近い書籍、サイト群の組み合わせをここで披露させていただきました。独断と偏見によるものですが、なにかしらの参考になれば幸いです。要は自分にあったやり方をいろいろ試す、そこらのブログ見てわからなくてもあきらめない、ということが大切だと思います。急がば回れ、の精神が大切だと思います!

 

 

プログラミングに関するクソブログ、クソ本問題。

いろいろ喚いておりますが、初心者の戯言、ということでご勘弁願います。

ちょうど初心者特有の思い上がる時期です。

 

 

以前にも書きましたが、基本的に多くのプログラミングについてのブログは自分勝手に書かれている場合が大半です。個人的メモも多いですよね。かといってチラシの裏にでも書いてろ!とはいえないし、自分がもしそんなこと言われたらこのブログも閉鎖ですけどねッ! でもここはちゃんとプログラミング、Unity初心者って銘打ってますので!

そこはご理解いただきたいですm(_ _)m

 

初心者への壁

今や、ググればいろいろ調べられますよ、確かに。
しかし、ことプログラミングに関しては、多くのアレなブログが邪魔してきます。

ブログでなんでもアウトプットするべき!という慣習があるようなので・・・。 

  

プログラミング初心者がそういう状況で
正確で指針となりうる情報に出会えるかは
ジャングルの中で、針を見つけるくらい・・・とはいかないまでも
かなり厳しいことだと思います。

まず初心者になることが難しいんですよね。

 

プログラマの日本語力

まずなんでクソかといえば、文章として非常にわかりにくい。

プログラミング能力と一般的な言語能力はトレードオフなのでは?と最近よく思うんですけども、人にちゃんとに伝える、という機能が弱いものが多いです。
でもそりゃそうかもしれません。自分にだけわかるようにメモとして書いていれば。
(文章、説明上手い人もいますが、貴重なので大切にしましょう)

 


学び始めるに当たって、まずネットでいろいろ調べました。
最初は、単純にこちらがそれを理解するだけの知識がないから
よくわからないんだろうなぁ、と思っていたのですが、今となってはもっと上手い言い方、書き方あるんじゃねーの?と思うことがしょっちゅうあります。
素人意見です、はい。 


プログラミング能力があって、それを日本語として説明できるだけの翻案、言語能力があり、かつ教えるのが上手いって人日本にどれだけいるんでしょうか? 


なのでそのようなブログ、記事に出会ったらわからないあなたが悪いんじゃありません。

 

わかりにくい文章を書くソイツが悪いんだ!


と思いましょう!(半分冗談です。)

  

ほんとに理解してるの?

繰り返しますが、

多くのプログラミング系ブログは自分のために書かれてるっぽいです。

人にわからせる気もないですし、間違っているのかもしれません。
そもそも初心者にわかりやすく書く義務もないわけですが。

 

こういう記事がはてなブログにありましたね。 

いやいや、そこはご指摘ありがとうございます!だよね?

言いたいことはわかりますが、正しさハラスメントってなんすかねって感じです。
まぁドヤ顔で指摘されたらむかつきますけどね。

 

アウトプットするのは大事だけど、それを修正していくのも大事だと思うんです。
そしてネットにアップする以上、そういうことは避けられないし・・・。
そもそもそれを逃してたら、ネット中間違いだらけになりますよ、ほんと。

本当に寛容な社会は、間違いに対して余裕をもって忠告できるし、指摘されたほうも

きちんとそれを逆切れせず受け止められるというものだと思います。  

 自分のこの乱数の記事で出したプログラムは、
一部ミスがあったんですけど、違ってました!すいません!って加筆しましたし。

間違うことが悪いんじゃなくて、それを認められない、
直せないのが悪いと思うんです。もちろん初心者潰しはダメですけど。

 

そもそも、このご時勢、ネット上でちゃんと間違いを指摘してくれる人って
貴重だと思います。何の足しにならないし、ボランティアですよ。

そこは笑顔でありがとうございます!といえる謙虚さを持ちたいですね。
自分としては。

  

日本語の限界?

・日本語が怪しい・・・
・書いてる人の知識が正しいとは限らない。

 という感じできました。


あと大きな問題が一つあって、日本語がプログラミングを説明するのに向いてないかも?問題ですね。これは、初心者であることを棚に上げて声高に言いたいですが、

 

結局、プログラミングって英語なんですよね。
なんで、日本語じゃ説明するのに言葉が足りないっていうのはかなりあると思います。

 

例えば、MSDNC#に関するところなんて、おそらく
機械翻訳なんでしょうね。さっぱり頭に入ってきません。
サンプルコードはかなり参考になりますけども。

 

これは、最初に書いた、

“文章として成立していない問題”にもつながっている気がします。
もう覚悟決めて完全英語で習ったほうがいいんじゃないか?とかも思いましたが、それはあきらめました。

 


あと以前もここで書きましたが、C#に関する、入門者本で
やっぱまともな本はないみたいです。あったら教えてください。
C#は初心者向けだよ!といいながら、やっぱ大人はうそつきばっかですね。

他の言語がある程度できていて、それを前提にしている本が多いような気がします。

自分も市販のC#本全てを確認したわけではないのでなんともいえないですが。 

 

何回も言いますが、『クラス』は補助的な機能であり、初心者が気にする必要は無いと思います。このことをちゃんと教えてくれる本があるとしたら

それはいい本だと思います。

 


というわけで、悪態はこのくらいにして
自分にとって参考になった本、サイトなど
を紹介する記事を同時投稿します。
あくまで個人的体験に基づくものですが。  

こちらになります。


いろいろ言いましたが、ネット上での発言は自由ですし
それを妨害できる権利はグーグルにさえないです。(反社会的でなければ)
しかし表現の自由に胡坐をかくのではなく、
初心者もベテランもバカも賢者も、お互いに尊重しあうのが大切なのかなと思います。

 

 

Year 2017 = new Year();

というわけで、新年明けましておめでとうございます。

 

今年もUnityに関することを書いていこうと思います。

去年はどちらかというと、プログラミングに関すること中心でしたね。

 

今年こそUnity本体に着手というか

何かしらのアプリでも

作りたいですね。

 

とにかく前進あるのみ!

Unityのための打倒C# [番外編] コクのある乱数について。その2

コクのある乱数についての続きの記事です!

こちらの記事では、乱数をひたすら生成し集計して表示するというプログラムを作り、

通常の乱数コクのある乱数が実際どう違うかを自分なりに検証してみました。

コクのある乱数を生み出すアルゴリズムC#で書くと・・・

 

Random rnd = new Random();

int rNum = ( rnd.Next(0,10) + rnd.Next(0,10) + rnd.Next(0,10) 

   + rnd.Next(0,10) + rnd.Next(0,10) ) / 5

 

というものでした。5回乱数作って5で割る! 

前回のプログラムには多少のミスもあったんですが、まぁやること自体に意義があったのでやってみてよかったです。

 

今回はその後日談というわけではないですが、そのプログラムを改良、拡張したので今一度コクのある乱数、というものについて考えてみたいと思います。

 

改良した乱数集計プログラムについて

拡張した内容は、ふたつのListとそれぞれの処理です。 

・numAppearPoints
各々の数字(0から9まで)を抜き出した後、新たに元の集計のListから、その数字が全体のどの場所で出たか?というインデックスを集計する。

・pointIntervals
numAppearPointsから、その間隔、インターヴァルを計算して結果を集計するためのListです。

 最終的に三つの集計結果を各数字ごとに表示します。

  

拡張されたコード

さっそくコードをみてみます。

いつもは125%で表示しているので小さくて見づらいですね。 

f:id:miur-us:20161229011954p:plain

f:id:miur-us:20161229012039p:plain

f:id:miur-us:20161229012100p:plain

f:id:miur-us:20161229012116p:plain

 長いし、かなり見づらいですね、申し訳ない。

プログラムの流れをまとめると、

 

・モードを選択する。(通常かコクのあるモードか)
・キー押しっぱなしで乱数をドンドン作る。カウント、集計もする。
・集計された乱数を数字ごとに分類する。
・各数字がどんな間隔で出てくるかを調べる。(追加した機能)
・結果を表示する。

 

って感じです。

for文の中でfor文を二回使い、それぞれの集計をしています。いわゆるoff by oneエラーに苦しめられました。人間とコンピュータとの数の数え方の違いですね。

 

じゃあプログラム起動します。 

f:id:miur-us:20161229012242p:plain

 ここは同じです。 

f:id:miur-us:20161229012301p:plain

まずは通常モードで。

 

f:id:miur-us:20161229012321p:plain

Cキー以外のキーを押し続ければ、乱数がひたすら生成されていきます。

これも同じです。

 

Cキーを押して結果を表示します。試行数は1000回を目安にしています。 

f:id:miur-us:20161229012427p:plain

f:id:miur-us:20161229012525p:plain

f:id:miur-us:20161229012536p:plain

 ここはだいぶ変わりました。黄色くなっているのは単に見やすくするためだけです。

やはり全体的に散らばっていますね。インターバルは50回を超えることはほとんどないみたいですね。散らばってはいるが極端な間隔にはならない、という感じでしょうか。

  

それでは、コクのある乱数を見てみましょう! 

f:id:miur-us:20161229013039p:plain

 

 

f:id:miur-us:20161229013054p:plain

f:id:miur-us:20161229013102p:plain

f:id:miur-us:20161229013112p:plain

  

再度、考察。

やはり偏ってますね、何度みてもおもしろい!

4を中心にそこから離れるほどに、生成数も減るし

インターヴァルも極端になっていく、という傾向が見てとれますね!

  

これをUnityでのゲーム制作にどう活かせるか?というのは

まだ具体的なことは浮かんできませんが、何かしら役に立ってくれるだろうと思います。こっから更にもう一工夫必要かなぁ?

 

 

というわけでプログラムの改良とコクのある乱数についての再考察でした!!

 

 

 

MadeWithUnity先遣隊!Yooka - Laylee いよいよ完成!発売へのカウントダウン!

※本記事は発売前に書かれたものです。

MadeWithUnity新時代突入!!伝説的なメンバーによる、期待のアクションゲームが来る!Yooka - Layleeについて現段階での情報を確認してみます! 

f:id:miur-us:20161217022549j:plain

 画像はplaytonic games公式サイトより引用。

 

追記!

ついに予約購入し(Steam版)TOYBOXをプレイしたので、レビュー記事を書きました!

本編もプレイしたので、初感まとめました! 

 

期待のmadewithUnity

2017年になりまして、今年もMadeWithUnityのゲームがドンドン来るわけですよ。 Unityでのインディゲーム制作を目指すなら、チェックは欠かせないわけです。 

 

そんな中でも個人的にかなり注目しているのが、

Yooka- Laylee』(ヨーカとライリー)

 になります! 

 

発売までは残り1ヶ月を切りましたね!もちろん買いますし、おそらくレビューもここに書きます。が!とりあえず今書ける事を書いておきます!

先遣隊というのはそういうことですね!

 

たぶんTwitterですかね?はじめて動画を見た時、すごく懐かしい感じがして。

  

なんだろう?と調べてみたわけなんですが、開発はインディ系ですが、そのメンバーがすごいんすよ。 メンバーの過去の参加ゲームはこちら。 

f:id:miur-us:20161217020015p:plain

Playtonic Games公式サイトより一部スクショ抜粋  

 

これマジッすか?しかも音楽にデヴィット・ワイズ参加!?  

買うしか無いじゃん、こんなん。  

一人で興奮してしまいました。そりゃ何か惹かれるわけですよ。 このワクワク感はなんと言えばよいか・・・。久々にテンション上がりました。

 

オープンワールド系アクションゲームということでベースにはバンジョー&カズーイドンキーコングシリーズがあるみたいです。

  

特にスーパードンキーコング死ぬほどやりましたからねぇ。今でも普通に遊べますし。遜色なく神ゲーといえる作品です。バンジョーとカズーイは残念ながらやる機会はなくて。でもやはり良いゲームということは聞いていたんで、逆に新鮮な気持ちで楽しめる!って感じでいきます!

  

というかグラすごく綺麗ですよね。Unityも完全にクソゲー製造ゲームエンジン、という偏見から脱却しつつありますぜ!(今までももちろんドラクエなどビッグタイトルはありましたが)

豪華メンバーとはいえ、インディでこれだけのものが出来るのであれば、やはり夢は広がる一方です。まぁインディだけどインディじゃないみたいな感じかもですけど。

 

とにかく楽しみです!!

 

いろいろと推察!

でただ楽しみだなぁでは記事にならないと思ったので、公式サイトの情報などを元にいろいろ探ってみましょうか。

 

主人公はバンカズ、ドンキーよろしく二人組。

カメレオンのYookaとこうもりのLaylee

切り替えることでいろいろアクションをこなすようでまさに!という感じです。

 

Yookaの攻撃方法はクラッシュバンディクーを思い起こさせますね。

回転しての体当たり。クラッシュも90年代アクションの名作です。1,2はすごくやりましたね。 というかリメイク版が出るみたいですね、これもやりたい!

  

動画を見た感じだとバンカズ成分大目ですかね。エリア内を自由に走り回れる感じのようです。オープンワールド・アクションという感じです。

 

ただ上の動画にもありましたが、トロッコの部分はもろにドンキーシリーズですね。

f:id:miur-us:20161220235106j:plain あとモーフィングっぽい変身もありましたね。

これはヨッシーアイランドを思い起こされました。 

f:id:miur-us:20161220235336j:plain まさに『あの頃』のアクションゲームのエッセンスが注入されたものになるんでしょうね。わくわくします。もちろんただの懐古的な作品にはならないだろうとも思います。

  

もう既にいくつかのデモプレイ動画があがっているので、それで確認できると思いますが、Pagies(ペイジーズ)というページの破片を集めることでいける場所が増えていくというシステムとのこと。

 

そしてこの気だるげ?な赤いヘビTrowzerというキャラから新しい“アクション”を購入することで新しいワザを覚えていく!。 

f:id:miur-us:20161221000600j:plain

すごいズボンの履き方してんね、キミ。

 

ここら辺はバンカズですね。

 

あと追加情報として、対戦モードが告知されましたね。

ただしオフラインのみで、昔ながらの家に集まっての対戦を想定しているようです。 

f:id:miur-us:20170131235333j:plain

Playtonic Games公式サイトより引用 

対戦モードは8種類とのこと。子供たちにはぜひやってほしいなぁ。

大人はさすがに集まるのは難しいかもですがやれば楽しいだろうなぁ。

敵キャラもプレイキャラに使えるようです。

  

というわけで、とにかく発売が待ち遠しいですね。

1番上にも書きましたが、体験版でもあるTOYBOXプレイしました。

"Yooka-Laylee TOYBOX"の感想とUnityの可能性について。[ Made with Unity ]

感想含めて思ったことをまとめたので、よろしければご覧なってください。

 

本編については↓

"Yooka - Laylee" (ヨーカとライリー)の初見感想をまとめます

 

 

 

[ Visual Studio ] C#の豆知識。変数名の一括変更について

 Visual Studioにおいて変数名一括変更する方法!

  

Ctrl + Fキーを押せ!

 

Unityにしても何にしても、Visual Studioをつかってコードを書いています。もうこれ無しにはプログラミングなんてできないよ!ってな感じでMSの思う壺なんですけどね。

 

そのVisual Studioで最近、変数名をまとめて変更する方法を見つけたんでメモしておきたいと思います。

 

時短テクニック!

f:id:miur-us:20161215034028p:plain

とりあえずこういう意味の無いプログラムを用意しました。

コンソール画面に"77"という数字が映し出されるだけのものです。

 

 

このプログラムは"num"というInt Typeの変数を宣言してます。

それで意味も無くいろんな数字が代入されているわけですが

この"num"という変数名を変えるにはどうすればいいか?

 

いちいち手打ちで直すのも面倒です。

どの"num"でもいいのですが、とりあえずクリックします。 

f:id:miur-us:20161215034418p:plain

 そうすると全ての"num"がこのように色つきで表示されます。

methodなども同様に表示されます。わかりやすい!

 

でここで、Ctrl + Fキーです。

  

f:id:miur-us:20161215034554p:plain

 そうすると右上に小さなウィンドウが表示されます。

"num"の脇の下向きの矢印をクリックすると・・・ 

 

f:id:miur-us:20161215034721p:plain

 もう一個、入力欄が出てくるので変えたい名前を入力し、全て変えたいので右端の

アイコンをクリックします。 

 

f:id:miur-us:20161215034922p:plain

 "Variable"そのまんま"変数"ですね。

さてどうなるか!?

  

f:id:miur-us:20161215035009p:plain

おおー!!

すべての"num"が"Variable"と変更されています!

こんな他愛ないプログラムじゃなく

実際のプログラムにおけるリファクタリングにおいては

かなり重宝すると思います!

  

よりよい変数名思いついても、

どうせ読むの自分だけだし、めんどくさいし・・・

ッて感じで放置してしまうんですけど

これなら一瞬だーーッ!!

 

 おわり。

  

 

Unityのための打倒C# [0](その2)コードを書き始める前に全ては決まる!?

“プログラミングする”ということは“コードを書く”ということだけではなく、実際に書き始める前に、いくつものプロセスがあるということについて。
キーワード: 要件定義

  

↓前回の記事の補完になります。 

この記事で、コードを書くに当たっての基本的な事柄について考えてみましたが、大事なことを書き忘れていたので追加記事で補完します。

 

コードを書くだけがプログラミングじゃない、ということ  

上記事にも書きましたが、要はコンピュータに何か仕事をしてもらうわけです。

まずはこういうことができたらいいな、という欲求がまず先にあって、それを実現するためには機械にどう動いてもらうか?

そして具体的にはどういう順序どう動作させるか?ということを論理的に組み立てるというプロセスがまずあるわけです。 

 

どうしたいのか?具体的にどういう機能が欲しいのかをあらかじめまとめることを

最近知った言葉で、『要件定義』というらしいです。

  

思考を辿る。ロジックの組み立て。

他人の書いたコードを読むのは勉強になる、とよく言われます。

コードを読むという事は単に文面を読むのではなく、そのコードの背後にあるプログラマの思考を読み取るということなのだと思います。

なぜこの手段を取ったのか、と書いた人のその思考プロセスを追うことで、自分で考える上でのヒントにする、ということな訳です。

 

しかしそれは、むしろ初心者には難しい部分でもあると思います。 

 

なんでとりあえず簡単なものでいいから自分で考えて自分でコードを書いてみる、ということを優先したほうがいいのではないでしょうか。

自分の場合、その結果が↓これなわけですが。 

 

本質的には実際のコードというのはあくまで思考の結果の産物でしかない、ということが解って来ました。

ブログ等と違って、ただなんとなく書くものではないということです。 

  

コードを書くに至るまでのプロセス。

 プログラミングを書くという事は、次のように順序立てられます。 

 

・まずはその解決すべき問題を正しく理解する。
 どういった点を解決すべきなのか?何かルールや制約はあるのか?
 
・その問題を解決にはどういう道具が必要なのか?を考える。
 プログラミングで言えば、変数がどれくらい必要なのか、または配列なのか?
 for文が必要なのか?ライブラリやAPIの関数で使えるものがあるか?等ということを考える。 
 
・じゃあコンピュータに具体的にどう動いてもらうか?を論理的に組み立てる。
 (擬似コードや図を書き出すのも一つの手) 
 
・出来上がったロジックを、その言語のコードに落とし込むにはどうするか考える。

 

 

この4つの工程を経て初めて、実際にコードを書き始めるに至るわけです。  

ある意味ではコードを書く前に勝負がついていると言っても良いのかもしれません。

もちろん事前の想定通りに動くことは稀でしょうし、試行錯誤しながらコードを直していくのは当然ですが、出発点としてはこのくらい準備しなければならないと。。

大変ですなー・・・。

 

問題はこのようなことを多くのプログラミング本や、ブログでは教えてくれないんですね。読み方あるいはこういう道具があるよーという単なる説明書でしかない。もちろんちゃんとしたところもあるんですが。

ここら辺はクソブログ問題ですね。 (これについては後日。)

 

書き始めるに前に、実は最も重要な作業は終わっており、後はそれに基づいてコードを書いて、試行錯誤すると。準備の仕方もわからずに直ぐに書こうとしても、書けるわけがないなと思います。

 

まず考えてから書き始めるべし。

実際のコードを書くのはプログラミングにおいての最終工程、ぐらいの気持ちでいようと思います。  

 

 

参考文献: プログラマの考え方がおもしろいほど身につく本

     (原題: Think like a programmer)

      著 V. Anton Spraul      訳 角 征典、高木正弘

     アスキー・メディアワークス