外国語学習に対する必要性は高まっているのにと思わんでもないのですが、まあ、インターネットの普及等でお金をかけずに英語を学習することができるようになったってことなのかな。後は、元々がお金をとり過ぎだったとかね......。英語が使えるようになるには、どのぐらい勉強すればいいのか--最短は380時間スペースアルク内の日向清人のビジネス英語雑記帳での外国語学習に必要な時間についての記事です。英語ができるようになるまでは3000時間〜4000時間、ひとまずコミュニケーションがとれるレベルまでは380時間とのこと。勉強時間はその人の(英語力に限らない)素養や環境に大きく左右されるので、この数字をそのまま個々に当てはめることはできないとしても、それなりの英語力を身につけるのにたくさんの時間が必要だってことはわかりますね。英語教師の中で「英検準1級以上、TOEIC730点以上、TOEFL550点以上」のいずれかを取得している英語教員の割合が中学では24.8%、高校では48.4%だったというもの。ちなみに「英検準1級以上、TOEIC730点以上、TOEFL550点以上」というのは文部科学省が英語教員に求めている目標だそうです(このニュース時点においてなので今は違うかもしれません)。英語教員の指導力向上及び指導体制の充実について」の項目が該当します。ニュース記事と基準が多少違っていますね。1級以上の級又は、TOEFLのPBT550点以上、CBT213点以上、TOEIC730点以上のスコアを取得」が基準です。中学校の教員においては試験を受けた中で40.2%、高校の教員においては試験を受けた中で74.2%が基準をクリア、ですか......。「英語の外部試験を受けた中で基準をクリアした人の割合」なので、この外部試験が英検でもTOEFLでもTOEICでもないってことかな?さすがに中学校の英語教員の40.2%しかクリアできないというのは信じられない。TOEICスコア統計情報ではなくて、TOEICのスコアを絡めつつ英語のレベルの段階を示した表なのですが、すっごい面白いですし、実際自分に当てはまるなーと思いながら読んでいます。本当、最初の頃は、TOEIC700点ぐらいになる頃にはそれなりの英語力が身についていると思っていましたよ。現在の英語力を数値にて把握できると英語勉強の意欲に繋がるんじゃないでしょうか。資格試験を受けるのはお金がかかるからと躊躇している人は、ネット上に無料の測定サイトが多数ありますのでまずはそれらを試してみては。あなたの語彙力(単語力、ボキャブラリー)を測定してみようでは現時点での自分の英語語彙力を測定できるサイトが多数紹介されています。NHK出版が英語力測定テストを設置していますので、こちらもよろしければ。カテゴリ:ActionScriptActionScript3.0基本学習シリーズの目次はこちらです。外部ライブラリ学習シリーズの目次はこちらです。前回の記事にてActionScript3.0の開発環境構築を行いました。今回より実際に制作を通じての学習開始です。何回か(10回ぐらい?)に分けて、画像ビューアの制作を基礎から解説しつつやっていくことにしました。画像ビューアかというと、画像のロード、マウスイベント、XMLからのデータ取得といった重要事項を学ぶことができるからです。第一回の今回は、外部画像のファイルのロード方法について解説します。今後頻出する基本単語を多数説明させていただきます。スクリプトまずは、スクリプト。http://www.aoharu-b.com/cgi/sk/img/as3/img/test1.jpgというjepgファイルを表示するスクリプトです。画像を表示するために最低限必要な内容のみです。}すぐ下が実行結果です(画像表示するだけですが)。ここから下、スクリプトについて解説していきます。最初ということで用語解説中心で退屈だと思いますが、今後ずっと使っていく重要用語ばかりです!!(スクリプトを書く内に自然と身につくので、無理して暗記とかはしなくて大丈夫だと思います)コメント文スクリプト上の//〜の部分はコメント文です(〜は任意の文字列)。スクリプトを見やすくするために書く説明文であり、実行にはなんの影響もありません。複数行になる場合は/*〜〜〜*/という書き方をします(〜は任意の文字列)。コメント文を適切に挿入することによって後からスクリプトを見たときに理解しやすくなります。第三者にスクリプトを渡すときに理解しやすくしてもらう目的もあります。package(パッケージ)1行目にpackage{と書かれています。パッケージとはなにかと言うと、書いたスクリプトの所属するグループです。packageName{という書き方をします(packageNameの部分は任意です)。「パッケージなんてなぜ必要なのさ?」と思う人もいるかもしれないですね。スクリプト量が増えてきてさらに外部ライブラリ読み込みなんかしていくと、これがないと煩雑でよくわからなくなります。制作していくうちに重要性が自然とわかっていくかと思います。ActionScript3.0にて用意されているパッケージについては公式サイトすべてのパッケージにて見ることが可能です。オブジェクト指向ActionScript3.0はクラスベースのオブジェクト指向言語です。オブジェクト指向というのは部品の組み合わせによって物を構築していくという考え方です。RPGを作る際にXXXクエストという一つの完成品を作るのではなくマップ、キャラクターといった部品を作っていくイメージです。XXXクエストという一つの完成品を作った場合にはそれはそのものXXXクエストでしかありませんが、部品ベースで作った場合には他のゲームに流用がききます。「XXXクエストで作ったキャラクターという部品をZZZファンタジーでも使おう」なんてことが容易にできます。オブジェクト指向について詳しくはここでは説明しませんので、興味ある方はWikipediaのオブジェクト指向プログラミングのページをご覧下さい。Class(クラス)と継承(インヘリタンス)クラスベースのオブジェクト指向言語ではクラスという要素が理解する上で非常に重要になってきます。クラスとは何かというと、属性と操作をセットにした雛形です。本というクラスがあったなら、属性はページ数、作者、出版社といった項目です。クラスを示す情報だと考えてください。操作はページを進める、ページを戻すといったものになるでしょう。クラスにて行われる処理だと考えてください。このクラスはそのまま使うだけではなく、このクラスを元にしたインスタンスというオブジェクトを生成することができます。インスタンスは日本語に置き換えると実態、オブジェクトは物といったイメージでしょうか。本というクラスを元にして週刊少年ジャンプ2010年6号というインスタンスを作るといった感じです。車というクラスがあるならば、そこからカローラ、フェラーリといったインスタンスが作られます。インスタンスの生成、インスタンスの操作の繰り返しによってプログラムは動きます。説明長くなりましたが、スクリプトの解説に戻ります。間を飛ばして8行目についてです。ここで行われているのはクラスの定義です。継承クラス名という書き方をします。今回の場合、ImageViewerがクラス名です。publicはクラス属性になります。クラス属性とはクラスへのアクセス範囲等を示すものとなります。ActionScript3.0では以下のクラス属性が用意されています。public:どこからでも参照可能internal:同じパッケージ内で参照可能dyanamic:インスタンスでのプロパティ追加可能final:クラスの拡張を制限publicとinternalの同時指定はできないといった注意点があります。省略した場合のデフォルト値はinternalです。詳しくは公式サイトのステートメント、キーワード、ディレクティブをご覧下さい。finalとかいらないじゃん!」と思うかもしれません。今は「下手に自由度を持たせると開発者の思わぬところで内部の情報が書き変わってしまいかねない」ぐらいに考えておいてください。extendsは継承(インヘリタンス)を意味します。SpriteはSpriteクラスを継承するの意味です。継承とは、その名前の通り、他のクラスの内容を受け継ぐことです。この継承という考え方があるからこそ、既存クラスの有効活用ができ、また、内容の重複したクラスが乱立することを防げます。継承しない場合はextendsを書く必要はありません。SpriteというクラスはActionScript3.0にて初めから用意されています。表示を行う上での基本となるクラスです。今回は画像を表示するためにこのSpriteクラスを継承しています。Spriteクラスについて詳しくは公式サイトのSpriteをご覧下さい。まとめますと、この8行目はSpriteクラスを継承したどこからでも参照可能なImageViewerという名前のクラスの定義を行ったということになります。注意点としまして、クラス名とファイル名は等しくしてください。今回の場合、ファイル名はImageViewer.asです。ActionScript3.0では初めから用途に合わせて様々なクラスが用意されています。公式サイトにすべてのクラスが一覧でまとめられています。import(インポート)クラスを使うためには、使用するクラスをimport(インポート)してあげる必要があります。今回は3行目〜5行目で行っています。flash.display.Loader;つまり、今回は3つのクラスをインポートしてあげています。flash.display.Sprite;はflash.displayパッケージのSpriteクラスをインポートしています。flash.display.*;と書くと、flash.displayパッケージの全クラスがインポートされます。「最初に全部インポートしておけばいいじゃん」と思うかもしれないですね。ActionScriptの場合、インポートしても使用しなかったクラスはswfファイルに出力されませんので、容量が無駄に増えることはないですし。今は「スクリプトの読みやすさを考慮するために、必要なクラスだけインポートする」と考えておいてください。全部インポートしているとなにをどう使っているかがすごくわかりづらくなりますので。これはメソッド(操作)の定義です。ImageViewerという名前のどこからでも参照できるメソッドを定義したということになります。publicはこのメソッドの属性です。メソッドの属性もクラスの属性同様、どこまでアクセスを許すか等を指定するものです。属性として以下のものが用意されています。最初の4つについては同時指定不可(省略した場合のデフォルト値はinternal)、nativeは独自に作成するコードでは使用できない等の注意点があります。詳しくは公式サイトのステートメント、キーワード、ディレクティブをご覧下さい。今回のImageViewerというメソッド名はクラス名と同じです。クラス名と同じ名前を指定したメソッドはコンストラクタとなります。コンストラクタとは、クラスからインスタンスが生成されたときに自動で実行されるメソッドです。コンストラクタにはpublicしか指定できません。publicと指定しなくてもpublicとなるため、今回クラス属性を書く必要はなかったのですが、説明用に書いています。まとめますと、今回のスクリプトでは、パブリッシュによってImageViewerクラスのインスタンスが生成され、それと同時にこのImageViewerメソッドの中身が実行されます。メソッドについて詳しくは公式サイトのメソッドにて解説されています。次回記事でももう少し詳しく取り上げる予定です。Loader();はLoaderクラスのインスタンスをloaderという名前で生成しています。varは変数を意味します。変数は変更可能なデータぐらいにお考え下さい。公式サイトの変数に解説があります。変数名は英数記号の半角が使用可能ですが、数字から始めてはいけない、すでにActionScript3.0にて定義されている名称(予約語)は使えないというルールがあります。Loaderクラスはswf、jpeg、png、gifのファイルをロードするのに使用されるクラスです。公式サイトLoaderに詳しい解説があります。URLRequest("http://www.aoharu-b.com/cgi/sk/img/as3/img/test1.jpg");は、url_reqという名称でURLRequestクラスのインスタンスを生成しています。その際に引数としてhttp://www.aoharu-b.com/cgi/sk/img/as3/img/test1.jpgという文字列を渡しています。ダブルクオーテーションで挟むことによって文字列を意味します。引数とはメソッドに渡すデータです。メソッドが処理するために必要なデータを渡すために引数はあります。データを必要としない場合には引数は使用しません。引数は0個のときも10個のときもあります。いくつの引数を渡すかはメソッドの定義に左右されます。URLRequestはURLを元にデータをロードする際に使用されます。公式サイトURLRequestに詳しい解説があります。画像のロード14行目loader.load(url_req);にてついに画像のロードが行われています。loadはLoaderクラスのメソッド、url_reqは引数です。Loaderクラスのインスタンスはloadメソッドにて該当URLの画像をロードすることができます。この場合、url_reqに設定したURLを元にしてファイルをロードします。表示リストへの追加ActionScript2.0の場合、画像をロードした時点で表示も行われましたが、3.0は違います。画像をロードした上で、表示リストへの追加というものをしてあげる必要があります。this.addChild(loader);thisはスクリプトが書かれているインスタンスを示します。今回の場合はImageViewerクラスから作られたインスタンスです。addChildは表示リストに画像を追加するためのメソッドです。15行目はImageViewerのインスタンス上にloaderを表示することを意味します。playerは他のドメインへのアクセスを制限する等のセキュリティ関係の処理を行っています。今回のスクリプトをダウンロードして使用する際、画像ファイルへのパスは変更するようにしてください。(自分のドメイン上、あるいはローカルでの使用の場合はswfからの相対パスの記述等)。まとめ最初ということで用語についてそれなりに細かく説明したため、内容長くなってしまいました。どれも本当に重要な内容です。今回の内容と次回学習予定のイベントさえ理解していれば、あとはリファレンス見つつどんなクラスがあるか調べればかなりのものが作れてしまうと言っても多分過言ではないぐらいに。次回からは用語説明等は控えめにしつつ、要点のみ解説して行く予定です。今回使用したファイルはまとめてサーバにアップしてあります。画像ビューア制作-イベント"はこちらです。SDKインストール"はこちらです。ActionScript3.0基本学習シリーズの目次はこちらです。カテゴリ:ActionScriptActionScript3.0基本学習シリーズの目次はこちらです。外部ライブラリ学習シリーズの目次はこちらです。このblogにActionScriptの情報目当てで訪れてくださっている方、けっこう多いです。本当にありがたいことです。いった方々に報いるためにも、2010年はActionScript3.0関連の情報をblogに少しずつでも掲載していきたいなと思っています。私自身、昨年は3.0からかなり離れて生活していたので(2.0ばかり)、そんな自分の勉強の復習の意味もありです。文法をずらずら並べても面白くないので、画像ビューア等を実際に制作することを通じて記事を書いていく予定です。SDKのインストールと動作確認についてです。Builderを持たれている人は環境構築なしで作れるのですが、持っていない人もたくさんいるかと思います。SDKのシステム要件FLEXの現在の最新バージョンは3.5です(4シリーズも出ているのですがまだベータ版です)。requirementsに掲載されています(英語ページ)。space上の4項目は対応OSとJavaのバージョン(Javaについては後述)。下の2項目は512MBのメモリ(推奨は1GB)と200MBのハードディスク空き領域。JavaのインストールJavaというのはプログラミング言語の一つです。Javaという言語で書かれたソフトウェアを動かすときにはPC内にそのための環境をインストールする必要があります。FLEXを動かすためには必須です。私はMacOSを使用しているのですが、Java環境は最初からインストールされていました。Preferenceを起動してください。Connectionにてダウンロード可能です。5.0u21にてダウンロードできます。OS毎にインストール手順を説明しているとすごく長くなってしまうため、ここでは省きます。Javaの環境構築についてはすでにかなりの情報ありますのでGoogle等でお調べ下さい。SDKにてダウンロードできます。messages..."のチェックははずしましょう。SDKをどのような環境で使うか、どのようなバックエンドと接続されるかという二つの質問がありますが、答えなくても問題なくダウンロードできます。now"をクリックするとダウンロード開始です。flex_sdk_3.5.zipというファイルがダウンロードされます。約120MBとけっこう大きいファイルです。SDKのインストールインストールというか、ほぼ解凍するだけですね。ant、asdoc等のフォルダが生成されます。解凍したフォルダはどこか好きな場所に移動して問題ありません。HD直下のDeveloper内あたりでしょうか。この時点で、単体動作のFlashPlayerがない人はインストールしておきましょう。(作ったswfをテストする際にわざわざブラウザを使うのは面倒なことも多そうなため)FlashPlayerはruntimes/playerフォルダの中です。10、lnx、mac、winというフォルダがあります。Player9インストール用のファイルが入っています。Player10インストール用です。Playerインストール後はPCを再起動いたしましょう。今後、ActionScript3.0で書いたプログラムをパブリッシュするためにはbinフォルダ内ののmxmlcというファイルを使用します。このファイルの使用を少しでも楽にするため、このbinフォルダまでのパスを張っておくことをお勧めいたします。パスを張ることによってどのフォルダからでもmxmlcファイルに直接アクセス可能になるからです。システム環境変数のPATHという項目にbinディレクリまでのパスを記入する。C直下にflex_sdkというフォルダを作ってその中が解凍したフォルダの中身であれば、C:\flex_sdk\binMacOSの場合はログインしているユーザのHomeフォルダにある.bash_profileというファイルを開く(ない場合は新規作成しましょう)。こちらのファイルは不可視ファイルとなっているため、気をつけてください。.bash_profileにPATH=$PATH:binまでのパスを記入。HDのDeveloperにflex_sdkというフォルダを作ってその中が解凍したフォルダの中身であれば、PATH=$PATH:/Developer/flex_sdk/binパスを張る作業は失敗するとPCそのものの不具合にも繋がりかねませんので、よく注意して行ってください。テスト用ファイルテスト用のファイルは用意されているみたいなのですが、せっかくですし自分で用意してみました。World"と表示されます。}このファイルをHelloWorld.asというファイル名にて任意の場所に保存してください。ファイルをダウンロードしたい方はこちら。HelloWorld.asと実行すればHelloWorld.swfというファイルが生成されるはずです。HelloWorld.asはパスも含めて指定してください。WindowsでCドライブの直下ならC:\HelloWorld.asといった形に。格納フォルダまでcdコマンドで移動するのでも構いません。Worldと表示されているはずです。今後、制作をするにあたり、毎回毎回コマンドを打ち込んでいると面倒なため、MacOSならシェルファイル、Windowsならバッチファイルを制作した方が良いです。要はその中にコマンドを記述しておくことで、ファイルを実行するだけでswfがパブリッシュされるようにできます。Windows用バッチファイルの例(ファイルの拡張子はbat、実行アプリケーションはコマンドプロンプト)ファイルをダウンロードしたい方はこちら。pauseMacOS用シェルファイルの例(ファイルの拡張子はsh、実行アプリケーションはターミナル)ファイルをダウンロードしたい方はこちら。HelloWorld.asパブリッシュ対象のasと同じフォルダに置けば、これらのファイルを実行するだけでswfが生成されます。-use-network=falseの部分はコマンドのオプションとなります。本当はもっとたくさん種類があるのですが、とりあえずよく使いそうなものたちだけ指定しました。ご覧下さい(英語ページ)シェルファイルやバッチファイルを用意しておけば、今後、asファイルのファイル名やパラメータを変更するだけで楽にパブリッシュができます。環境設定はここまでです。次回より実際に制作について学習します。今回使用したファイルはまとめてサーバにアップしてあります。画像ビューア制作-画像のロード"はこちらです。ActionScript3.0基本学習シリーズの目次はこちらです。カテゴリ:ActionScript外部ライブラリ学習シリーズの目次はこちらです。ActionScript3.0基本学習の記事一覧です。記事が追加される度、このページも更新いたします。カテゴリ:スポーツ終わりました、第86回箱根駅伝。5区、東洋大学"山の怪物"こと柏原選手の大逆転劇と独走、2区での日本大学ダニエル選手の11人抜き等、今年も見所満載でしたが、本当に、選手一人一人の活躍すべてに胸打たれました。一年間、おそらく毎日毎日陸上のことばかり考えて過ごし、その日々をぶつける大舞台。楽しみと同時に、プレッシャーも大きいでしょう。全国規模で注目を集めるという非日常的な場、普段と同じ走りをすることすら困難だと思います。いい走りができれば一生の思い出になるでしょうが、納得いかない走りの場合、一生のトラウマにだってなりかねないだろう場です......。本年も、ランナーの方々、関係者の方々、すべてに心より感謝申し上げます。残念ながら繋がらない襷はありましたが、途中棄権が一人もいなかったのは本当によかったです。納得いかないレースだった方は、来年の箱根駅伝で、もしくはまた箱根駅伝とは違う舞台で(たとえそれが陸上じゃなくとも)、納得行く結果を出されること、願っています。肯定意見だけではなく、否定意見も少なからず存在するこの箱根駅伝ですが......努力の結晶を発揮する場であることは紛れもない真実。チームメイトや監督、コーチ、学校の伝統、世間の期待、多くの思いを背負って全力で走る選手たちの姿は、本当に、素晴らしかったです。感動、ありがとうございます。カテゴリ:とりまついにスタートです、2010年。ニューイヤー駅伝見ましたか?年越しの瞬間はちゃんとジャンプして「俺、2010年が始まったとき地球上にいなかったぜ!」と友達に言う準備はばっちりですか?1年の抱負を立てた方、考えている方もけっこういらっしゃるんじゃないかと思います。私の今年の目標は「終わらせる一年」です。物事を中途半端にして次に進みがちなので、とにかく、色々な物事をしっかり終わらせながら進んでいく。言うと、2010年にやるべきことを2011年に持ち越さない。2010年の終わりに笑っていられたらいいなじゃなくて、絶対に笑っていないといけないという気持ちで過ごします。本年もどうぞよろしくお願いいたします。カテゴリ:とりま新年、あけましておめでとうございます。2009年のことを振り返ったとき、本当に色々な場面で青春Bの来訪者の方々の言葉なりに支えられたなと強く思います。本当に、サイトを運営していて良かったという気持ちに何度も何度もしていただきました。新しい2010年、なにか新しいことをやろうという具体的なものは青春Bとしてはないのですが、とにかく、少しでも来訪者の方々に有益な時間を提供できるようにということを大事にして運営していこうという気持ちです。2010年が皆様にとって素晴らしい一年となりますように。本年もどうぞよろしくお願いいたします。青春B運営メンバー多口カタンによる雑記blogです。開発物をまとめたものはこちら。ありましたら気軽にフォームにてコンタクトくださいませ。Twitterはじめましたので誰でも気軽に声かけてくださいね。