ページへ戻る

− Links

 印刷 

blike​/intro​/funcs のバックアップの現在との差分(No.2) :: OSASK計画

osaskwiki:blike/intro/funcs のバックアップの現在との差分(No.2)

« Prev[4]  Next »[5]
2: 2011-02-15 (火) 08:51:14 k-tan[6] ソース[7] 現: 2024-01-08 (月) 12:58:54 lina[8] ソース[9]
Line 1: Line 1:
 +TITLE:x
* blikeの標準関数一覧 [#tbcb33b7] * blikeの標準関数一覧 [#tbcb33b7]
-(by [[K]], 2011.02.15) -(by [[K]], 2011.02.15)
 +----
 +-このページの関数の資料は最新じゃないです。関数については [[blike/man]] へ。
 +
*** C言語版 [#oc93dcec] *** C言語版 [#oc93dcec]
-printf -printf
Line 7: Line 11:
//--printf自身も機種非依存で書かれている。 //--printf自身も機種非依存で書かれている。
-inptInt -inptInt
--inptFloat+-inptFlot
-color -color
-locate -locate
-wait -wait
-fillRect -fillRect
 +-drawRect
-drawLine -drawLine
-setCol -setCol
-setBCol -setBCol
-rgb -rgb
 +-iCol
-inkey -inkey
-rnd -rnd
Line 24: Line 30:
-getCol -getCol
-getBCol -getBCol
 +-drawStr
-cls -cls
-sin, cos, sqrt -sin, cos, sqrt
Line 39: Line 46:
-setMode -setMode
--文字コードの設定、locate指定のhalfheight/fullheight、グラフィック描画のラスタオペレーション、mallocのエラー時の対応などを設定できる。 --文字コードの設定、locate指定のhalfheight/fullheight、グラフィック描画のラスタオペレーション、mallocのエラー時の対応などを設定できる。
 +-fillOval
-多分もう少し増やす -多分もう少し増やす
-ファイル関係をどうするかは現在検討中 -ファイル関係をどうするかは現在検討中
Line 65: Line 73:
--getChar, getCol, getBCol --getChar, getCol, getBCol
---上記のキャラクター版。これを標準関数に加えた意図もgetPixと同様。 ---上記のキャラクター版。これを標準関数に加えた意図もgetPixと同様。
--雑談+*** 雑談 [#j1d622d1]
--僕がBASICでプログラミングを覚えたころは、ポインタ(やそれに類する概念)も配列も理解しないうちから、かなりいろいろ遊べた。遊んでいるうちに変数の概念を十分に理解することができたし、制御の挙動もよく理解できた。そのあとで配列変数などを学べたので、概念の必要性も含めてよく理解できた。 --僕がBASICでプログラミングを覚えたころは、ポインタ(やそれに類する概念)も配列も理解しないうちから、かなりいろいろ遊べた。遊んでいるうちに変数の概念を十分に理解することができたし、制御の挙動もよく理解できた。そのあとで配列変数などを学べたので、概念の必要性も含めてよく理解できた。
--しかしblikeではないC言語では、ただ数値を入力させるだけでもポインタがでてくるし(scanfのことを言っている)、ゲームで衝突判定やスクロールがしたくなると配列などが必要になる。これじゃあ消化不足のまま次々に知識を詰め込むことになり、多くの学生がプログラミングの理解をあきらめてしまう。もちろん「オマジナイ」などと称してごまかすことはできるが、そういうものを受け入れることができるのはすでに何かひとつの言語を十分に理解している場合で、初学者にとっては「わからない」という印象を強くするだけである。 --しかしblikeではないC言語では、ただ数値を入力させるだけでもポインタがでてくるし(scanfのことを言っている)、ゲームで衝突判定やスクロールがしたくなると配列などが必要になる。これじゃあ消化不足のまま次々に知識を詰め込むことになり、多くの学生がプログラミングの理解をあきらめてしまう。もちろん「オマジナイ」などと称してごまかすことはできるが、そういうものを受け入れることができるのはすでに何かひとつの言語を十分に理解している場合で、初学者にとっては「わからない」という印象を強くするだけである。
--また標準的なC言語の出力関係の貧弱さも致命的だ。printfだけで勉強していったい何が面白いだろう。ファイルに出力できても達成感は少ない。・・・colorやlocateに相当することすら簡単にはできない。グラフィックもだ。こんなのはBASICなら簡単にできたことなのに。入門者用のメジャーなプログラミング言語がBASICからCに変わったことで、明らかにプログラミング教育環境は後退した。僕はそう思う。もっとどう教えるべきかを見直すべきだ。・・・これに対する僕の解答がblikeである。 --また標準的なC言語の出力関係の貧弱さも致命的だ。printfだけで勉強していったい何が面白いだろう。ファイルに出力できても達成感は少ない。・・・colorやlocateに相当することすら簡単にはできない。グラフィックもだ。こんなのはBASICなら簡単にできたことなのに。入門者用のメジャーなプログラミング言語がBASICからCに変わったことで、明らかにプログラミング教育環境は後退した。僕はそう思う。もっとどう教えるべきかを見直すべきだ。・・・これに対する僕の解答がblikeである。
--問題はC言語そのものにあるのではない。C言語の基本的な文法はBASICよりも理解しにくいということはない。標準関数が教育向けでなさ過ぎること、最初に main() や #include などのオマジナイが必要になることだけが致命的なのだ(いや、開発環境を整えるのも初心者にとっては大変だが)。逆にそれさえ克服できれば、BASICよりも発展性がある分だけいいと思う。だからblikeはいいと僕は思う。 --問題はC言語そのものにあるのではない。C言語の基本的な文法はBASICよりも理解しにくいということはない。標準関数が教育向けでなさ過ぎること、最初に main() や #include などのオマジナイが必要になることだけが致命的なのだ(いや、開発環境を整えるのも初心者にとっては大変だが)。逆にそれさえ克服できれば、BASICよりも発展性がある分だけいいと思う。だからblikeはいいと僕は思う。
 +----
 +--kemeppoさんがLinuxへの移植に成功した模様。 → http://osask.net/v/?topic_id=20#post_id361
 +--blikeの中身は、efg01(第二世代OSASK)のグラフィックルーチンとして検討していたものをベースにしている。たぶんefg01にこれらのAPIを付け加えることは可能だし、そうすればblikeアプリをコンパイルして.g01形式を作ることができて、それはソース互換であるばかりではなくバイナリ互換になると思う。サイズも小さくなると思う。でも忙しいので僕はたぶんできない。
« Prev[4]  Next »[5]