FC2ブログ
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
オン ザ フライ
on the fly

プログラミング中に空中でアクロバットをかますときに使われる。

難易度C級


はじめて見たときはたいていの者が理解できない

でも誰でも使えるとってもやさしい技。コツがいる。



今日は、プログラミングにおける on the fly の話をしよう。
こいつは、空中でアクロバットがかませる すげーカッコいい技なんだ。

ここでは、オン ザ フライの簡単な例を紹介するね。
bashのスクリプトを例に出すね。 「えー bash 知らないんだけどー」って
方も我慢して。 本当にすごく簡単な例だから。

日付を表示させるだけのたった2行のソースだよ。
d=`date`
echo $d
2008年 10月27日 月曜日 23時14分16秒 JST

ほらできた。
(えーなに? 1行目に #!/bin/bash が付いてないだって?
そんなもの書かなくても、こいつは実行できるよ。早く入門書は卒業して)

変数dに、 date で取れる値をお行儀よく入れているね。結構だ。
よくできました。授業だとまさにパーフェクトな解答だ。

んーでも、つぎのようにも書けないか?
echo `date`
2008年 10月27日 月曜日 23時18分03秒 JST

ほらいけた。変数dなんて必要なかったね!

date は使いたいところで、その場で実行してあげればよかったんだ!!


お次はPerlでみてみよう。 
「えー Perlはわからない」 だって??

落ち着いて、bashより簡単だから。
次のソースは、配列の中身をただ表示してるとっても簡単な例なんだ。
use strict;

my @arr = (1, 2, 3);

for(@arr){
  print $_ . "\n";
}
1
2
3

ほら、できた。
(えーなに? 1行目に #!/usr/bin/perl が付いてないだって?
そんなもの書かなくても、こいつは実行できるよ。早く入門書は卒業するんだ!
いや その前に、Unixとかについて勉強した方がよいかもしれないぞ)


でも、さっきの echo `date` を知った僕たちには、これってなんだかまどろっこしくないかな? for の中に一気に書けたらいいと思わない?

こんな風に。
use strict;

for(1, 2, 3){
  print $_ . "\n";
}

ほら、ちゃんと動くんだ!
1
2
3


多くの大学とかでは、まず初めの言語としてC言語を学ぶんじゃないかな?
C言語は型もしっかりしてるし、スコープの勉強にもなるし、けっこういいことが学べる言語だ。多くの人がそういう意味でよく知ってるし、UnixもC言語でできてるし、みんなの共通認識になる点では大変よい。

でも、ちょっと待って! 厳格にやり過ぎてたよ。
変数は int i と宣言します。というように何度も聞かされているうちに、
僕らは、値ってのは変数にいれて使わなくちゃいけないと思い込んでしまうようになった。
それは、プログラムを習い始めた人にはとても大切なことだ。(変数ってのは値を入れて、でもってその値が変わるから、文字通り「変数」っていうんだ!って理解できる)

プログラムなんて1年や2年なんて短い期間でマスターできるってものじゃないんだよ。なんでもそうだけど、まず基本を習う、そして応用。 上達するにしたがって、どんどんやり方を変えていくものなんだ!

いつまでも、これは「おまじないです」じゃダメなんだよ!
「おまじないに」 自分で踏ん切りをつけて、いままで「おまじない」だったことを理解して、「ああ なるほど そういうことだったんだ じゃあ、それは、この場面では必要ないなぁ」って理解していくことが大切なんだ。

必要なものを必要なときにだけ使って、必要ないときには使わない
これが、できるようになると、空中でアクロバットをかませることができるようになってくるんだ。
スポンサーサイト
コメントを投稿する
Name:
URL:
Comment:

秘密:管理者にだけ表示を許可する
トラックバック
この記事のトラックバックURL
この記事にトラックバックする(FC2ブログユーザー)
ブログ検索

プロフィール

ビンゴ中西
Perlが好きである。
プログラミング言語のほとんどは独学。独学の過程で多くのプログラム仲間にも色々教わりました。

FC2カウンター

カレンダー

10 | 2018/11 | 12
- - - - 1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 -

ブロとも申請フォーム

この人とブロともになる

| ホーム |
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。