そろそろ
プログラミングネタをマジで始めようかと思う。ボクシングネタばかりじゃ「こいつ本当にプログラマか?」と思われるし、いい機会かな?但しプログラミングネタがあまり続くと、ただでさえ少ない読者が限定されてしまうから3連くらいでやっとこかな。
まず、僕は一応未熟ながらプログラミングでお金を貰っています。言わばプロです。なので当然知っておかなければいけない知識がいくつかあります。現在の開発言語がC++なため、オブジェクト指向についてわかっていなければなりません。で、とりあえず、
①デザインパターンその他イディオム
②事前条件事後条件
③メモリとか、スタック、デック、キューとか
を、さらっと、浅く書いてみることにします。以下は序文ってな感じで
最近デザインパターンに関する理解が少し変わりました。少し前まではプログラミングを助けるためのもの(この理解も正しいとは思うけど)だと思っていましたが、今は少し違っていて、ライブラリ(別にlibじゃなくても普通のソースでもいい)開発者がクライアント(利用者)に楽させるものだと思っています。つまり、クライアントが楽にならなければ、デザインパターンを使用する意味が薄いと認識しています。だからライブラリ側のプログラミングは必ずしも楽にはならないと言うこと、むしろクライアントのために頭を使わなければならないわけです。あたりまえなんですけどね。
事前条件事後条件については、恥ずかしながらつい最近までその存在すらあんまり知りませんでした。逆にいえば知らなくてもプログラマにはなれますが、知らないと恥ずかしいものですし、事前条件事後条件を考えずにクラス、関数を作りまくっているとワケワカランことになります。はい、現状ワケワカリマセン。とりあえず最初は小難しく考えずに、doxygenのpre,post,invariantを書いて遊んでればいいのではないかと思います。ボクシングでもそうだけど、仕事も楽しまないと持たないっす。仕事だからって小難しくやってたらつぶれますって。楽しくプログラミングしてればセンスは後からついてくると思う。考えが甘いかな?でもそういう感覚で仕事できない人は絶対つぶれると思う。
まぁ、話が脱線しちゃったけど。
最後にメモリの話。苦手ッす。正直言って。ただ自前プログラミング言語を作るときには、ガベコレとか考えなきゃいけないし、もちろんC++であってもOSがどのようにメモリを管理しているのかを知っておけば、確保の順番や、クラスの定義などについてのアイディアがいろいろ出てくると思います。とにかく基本からいこうと思います。
ふぅ…。じゃあまずはデザインパターンからか…次までにネタを考えておきます。
| 固定リンク | コメント (0) | トラックバック (0)

最近のコメント