SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

HSP入門

開発者のためのHSP言語スピード入門

HSP言語を利用した代表的なプログラムの実例


COMコンポーネント連携

 HSPでは、COMオブジェクトを標準で扱うことが可能になっています。

 これは、Java ScriptやWSHなどと同様にCOMが提供するオブジェクトを自由に扱ったアプリケーションの作成ができるということです。スクリプト「comobj.hsp」は、COMオブジェクトを利用した一例です。Microsoft.XMLDOMコンポーネントにより、CodeZineが提供するRSS情報をネット上から取得し、解析した内容を表示します。

comobj.hsp
    ;    RSSを読み込む
    url="http://codezine.jp/rss/new/10/index.xml"
    ;
    newcom oDom,"Microsoft.XMLDOM"
    oDom("async")="FALSE":oDom->"load" url
    oRoot = oDom("documentElement")
    if varuse(oRoot)=0 : dialog "取得に失敗しました。" : end
    if oRoot("tagName")!="rdf:RDF" : dialog "RSSではありません。" : end

    comres elm_ch
    oDom->"getElementsByTagName" "title"
    comres elm_link
    oDom->"getElementsByTagName" "link"

    node = elm_ch("item",0)
    node2 = node("firstChild")
    mes "タイトル:"+node2("nodeValue")
    node = elm_link("item",0)
    node2 = node("firstChild")
    link = node2("nodeValue")
    mes link

    mes "----------------------------------------------------------------"

    max=elm_ch("length")
    if max>11 : max=11
    repeat max-1
    i=cnt+1
    node = elm_ch("item",i)
    node2 = node("firstChild")
    mes ""+i+":"+node2("nodeValue")
    node = elm_link("item",i)
    node2 = node("firstChild")
    link = node2("nodeValue")
    mes link

    loop
    stop
実行結果
実行結果

 4行目のnewcom命令により、変数をCOMオブジェクトとして初期化しています。パラメーターには、"Microsoft.XMLDOM"のようなプログラムID(ProgID)だけでなく、"{679c4137-c62e-4147-b2b4-9d569acb254c}"のようなGUID(インターフェイスID)を指定することもできます。

 COMオブジェクトとして初期化された変数は、COMオートメーションに対応していれば、「変数->"メソッド名" パラメーター…」のような形で、メソッドを呼び出すことが可能です。

 HSPが使用している情報と、COMが使用するUnicodeやVARIANT型による数値表現は、自動的に内部で変換が行われるため、シームレスにCOMを扱うことができます。

最後に

 HSPは、導入の煩雑さや予備知識なく使い始められるという意味で、初心者でも覚えやすく、手軽に使える特徴を持っています。実際、ユーザーの年齢層が9歳の小学生から65歳以上という幅広さを持っているのも、敷居の低さを示していると言えます。

 このような現状から、どうしても簡易言語として見られがちな面がありますが、プログラミングの準備や設計などを軽視しているわけではなく、実務での使用や、現場で小回りを利かせることのできるツールとして、1つの選択肢になると考えています。

 現在、HSPTV!を始めとする各種関連サイトでは、活発に情報交換が行われており、参考書籍も12冊以上が発売されているため、HSPに関する情報を探すことは難しくなくなっています。

 これを機会に新しいスクリプト言語の世界を覗いてみてはいかがでしょうか。

参考サイト

 HSPに関する情報を扱っているサイトです。これ以外にも、多くのサイトが存在しますので、参考にしてみてください。

この記事は参考になりましたか?

連載通知を行うには会員登録(無料)が必要です。
既に会員の方はを行ってください。
HSP入門連載記事一覧
この記事の著者

おにたま(オニタマ)

オニオンソフトウェア代表。http://www.onionsoft.net/http://hsp.tv/ゲーム系のソフト開発会社に勤めるかたわら、Hot Soup Processor (HSP)を始めとするフリーウェア...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/441 2008/08/22 19:11

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー