プログラミング編


プログラミングを楽しもう

執筆中、とりあえずはHow To Become A Hackerでも読んでろってこと。
しばくこのページをほったらかしにしてますが、気が付いたことがあります。 別にプログラムなどのソフトウェアに限ったことではないのですが、 何かを生み出そうとするには欲望が必要だと言うことです。 随分抽象的なことになるかもしれませんが、 何かを欲したときに始めて考え出され生み出されるものが道具ではないでしょうか。
私が何も生み出せないのは欲望が無いからなのでしょうね。 しかし私は物を作り出す方法を考え付くことが出来ます。 私に必要なのは欲望を持ったパートナーでしょうかw。


C言語

C言語はUNIX OSを記述 するために、ベル研究所のD.Ritchie氏によって設計された言語です。 linuxもCによってカーネルが記述されています。 もし、linuxについてもっと知りたいと思うのならば、C言語で書かれた カーネルソースを読むことをお勧めします。
さて、linuxカーネルの ほとんどはGNUのgccを用いてコンパイルされており、 標準で使用されているのもgccといった感があります。 ですから、ここでプログラミングするのもgccを使用するものとします。

GUIプログラミング

GUIに興味を持ち始めて少しばかりプログラムを作ってみようと思っています。 冒頭で述べたように何かを生み出したいと望むには始めに欲望がなければならないと 思いますので、これが欲望かどうかはともかくGUIカレンダーを作成してみようと 思います。(別にテーマがあれば欲望は要らないのですが、ここは一つ自分自身で コードを考えたGUIカレンダーが溜らなく欲しくなったとしますw。)

面倒なので機能は当該月のカレンダー表示が出来ること、そして終了ボタンがあること、この2点だけとします。

表示はcalコマンドで表示される様式と同じにしましょう。

で、何を使ってプログラムを組むかと言うと・・・ Xlib、XToolkit、gtk+、Tcl/Tk、Perl/Tk・・・ 色々ありますがgtk+を使ってみようと思います。
XToolkitでやりたいのですが参考にするソースを探すのが面倒なもので.

プログラムの簡単な流れを考える。 gtk+では(XToolkitでもそうだが)、widgetと言うものを組み合わせてアプリケーションを 表現します。
まず、widgetを使用するための準備として使用するwidgetを初期化します。
次にwidgetを部品として登録します。
必要のあるwidgetにシグナルハンドラを設定します。
シグナルが発生したときに引き渡すべきコールバック関数を設定します。
widgetを可視化します。
ループに入ってイベントが起こるのを待ちます。


tcl/tkで作るカレンダー

特に変わったことはしてません。上でCで作成したカレンダーを tcl/tkでやるとどのように表現できるかと思ってやってみました。


perl test section

  1. env
  2. hello
  3. calender
  4. calender2
  5. gif_counter
  6. text_counter
  7. hasyu
  8. cookie_out
  9. get&print cookie
  10. form test
  11. form test2
  12. japanese input
  13. japanese input2
  14. chat in
  15. chat weite
  16. chat date


JAVAをやってみる

現在、取り調べ中 .



shell script programing

これもシステムの保守などで威力を発揮するので是非やっておきたいことだ。




なんだかゴチャゴチャと偉そうに抜かしてますが、 結局のところプログラムは道具を産み出すための道具でしかなく、 本人に何かを為すために道具を渇望する気持ちと道具を作りだすアイデアが なければ中々修得することができないかもしれません。
後、ごちゃごちゃ御託をならべる書物を読むよりも 簡単なコードで良いからソースを読んで関数の使い方を覚えたほうが良いと思います。
むしろまともな処理よりもエラーの場合の処理の仕方を覚えるほうが重要になってきたりします。

TOP
another version