約 4,073,952 件
https://w.atwiki.jp/isoroku_be/pages/15.html
情報 作者名:五十六 引用元:なでしこプログラム掲示板「進数変換セット」 概要 2進数から36進数までを相互変換します。 進数 解説 引数 S 数値 A Sの元の進数(2~36) B 目的の進数(2~36) 返り値 B進数に変換された文字列 サンプルプログラム #例 「123456789」を10進数から2進数に変えたい! 「123456789」を10から2に進数変換。それを言う。//111010110111100110100010101 //本体 //---------------------------------------------------------------------------- !進数英語リスト=「ABCDEFGHIJKLMNOPQRSTUVWXYZ」を文字列分解。 !進数数値リスト=「10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35」を「,」で区切る。 ●十進数(SをVで) 合計値とは数値。S=Sを文字列分解して配列逆順。 進数英語リストで反復、S=Sの対象を進数数値リスト[回数-1]に置換。 Sで反復、合計値=合計値+(対象×(V^(回数-1)))。 合計値で戻る。 ●進数(SをV|SのV|SでV) 結果配列とは配列。 1の間 もし、S Vならば 進数数値リストで反復、S=Sの対象を進数英語リスト[回数-1]に単置換。 結果配列にSを配列追加。抜ける。 C=S%V。進数数値リストで反復、C=Cの対象を進数英語リスト[回数-1]に単置換。 結果配列にCを配列追加。S=(S/V)の整数部分。 結果配列を配列逆順して空で配列結合して戻る。 ●進数変換(SをAからBに) S=SをAで十進数。Sの(B)進数で戻る。 //---------------------------------------------------------------------------- 名前 コメント
https://w.atwiki.jp/isoroku_be/pages/72.html
情報 作者名:fuji/ムラり 引用元:なでしこプログラム掲示板「ダイアログエディタ」 概要 ムラりさんのダイアログエディタをなでしこに移植しました。 ●MessageBox の様々なダイアログのソースを確認しながら出力することができます。 解説 //本体 #ダイアログエディタ !母艦設計=『母艦の可視はオフ』 母艦について 背景色はウィンドウ背景色。//RGB(128,128,255) タイトルは「APIダイアログエディタ 1.28」 サイズは「60,20,600,555」 スタイルは「枠固定」 オフに最大化ボタン有効変更 部品間隔=8 文字サイズ=10 ボタンリストは「[OK] [OK][キャンセル] [中止][再試行][無視] [はい][いいえ][キャンセル] [はい][いいえ] [再試行][取り消し]」 OSで条件分岐。 「Windows Me」ならば、ボタンリストは、ボタンリスト 「{~}[キャンセル][再実行][続行]」 「Windows 2000」ならば、ボタンリストは、ボタンリスト 「{~}[キャンセル][再実行][続行]」 「Windows XP」ならば、ボタンリストは、ボタンリスト 「{~}[キャンセル][再実行][続行]」 リセット部品リストは「ボタンラジオ{~}アイコンラジオ{~}デフォルトラジオ 母艦チェック{~}ヘルプボタン{~}手前{~}逆チェック」 ボタンラジオとはラジオ。 ボタンラジオについて 位置は「10,10」 幅は250。 高さは290。 アイテムはボタンリスト。 値は0。 クリックした時は もし、(OS!=『Windows XP』)かつ((ボタンラジオの、値)=6)ならば 母艦チェックの値はオフ。 アイコンラジオとはラジオ。 アイコンラジオについて 位置は(ボタンラジオの右側) 幅は140。 高さは190。 アイテムは「なし [×]アイコン [?]アイコン [!]アイコン [i]アイコン」 値は、0。 デフォルトラジオとはラジオ。 デフォルトラジオについて 位置は(アイコンラジオの下側) 幅は240。 高さは190。 アイテムは「一番目のボタンがデフォルト 二番目のボタンがデフォルト 三番目のボタンがデフォルト 四番目のボタンがデフォルト」 値は0。 ヘルプボタンとはチェック。 ヘルプボタンについて テキストは「ヘルプを追加(無意味)」 位置は(ボタンラジオの下側) 幅は200 手前とはチェック。 手前について テキストは「常に手前に表示」 位置は(ヘルプボタンの下側) 幅は130 母艦チェックとはチェック。 母艦チェックについて テキストは「母艦をクリックできなくする」 位置は(手前の下側) 幅は250 クリックした時は もし、OSが『Windows XP』でなければ、 もし、(母艦チェックの値)がオンならば、 もし、(ボタンラジオの値)が6ならば、ボタンラジオの値は0。 逆チェックとはチェック。 逆チェックについて テキストは「ダイアログを逆にする」 位置は(母艦チェックの下側) 幅は250。 実行ボタンとはボタン。 実行ボタンについて テキストは「作 成」 位置は(アイコンラジオの右側) 幅は97 高さは60 クリックした時は~コード作成。 リセットボタンとはボタン。 リセットボタンについて 位置は(実行ボタンの下側) 幅は97 高さは35 クリックした時は リセット部品リストを反復 「{それ}の値は0」をナデシコする。 「ダテエディタ{~}ダタエディタ」を反復 (対象 『のテキストは「」』)をナデシコする。 プレビューボタンとはボタン。 プレビューボタンについて 位置は(リセットボタンの下側) 幅は97 高さは35 クリックした時は 最終コード取得。 「MessageBox((母艦の、ハンドル),ダテエディタ,ダタエディタ,${最終コード})。{選択肢}」をナデシコする。 使い方ボタンとはボタン。 使い方ボタンについて テキストは「使い方」 位置は(プレビューボタンの下側) 幅は97 高さは40 クリックした時は~ヘルプ表示。 ダイアログタイトルラベルとはラベル。 ダイアログタイトルラベルについて フォントサイズは10 位置は(逆チェックの下側) ダタエディタとはエディタ ダタエディタについて 位置は(ダイアログタイトルラベルの右側) Xは150 幅は360 フォントサイズは10 IMEは「IMEオン」 そのキー押した時は もし、ダタエディタの押された仮想キー=13/*ENTER*/ならば、ダテエディタに注目 ダイアログテキストラベルとはラベル。 ダイアログテキストラベルについて フォントサイズは10 位置は(ダイアログタイトルラベルの下側) ダテエディタとはメモ。 ダテエディタについて 位置は(ダイアログテキストラベルの右側) Xは150 幅は360 高さは66 フォントサイズは10 IMEは「IMEオン」 母艦の可視はオン。 待機。 ●ヘルプ表示 「」を「オンラインヘルプ{~}このプログラムについて{~}アイコンについて{~}デフォルトとは」でボタン選択。 条件分岐。 「オンラインヘルプ」ならば、「http //www.realintegrity.net/~fuji/jprogram/nadesiko/dialog.html」を起動。 「このプログラムについて」ならば、プログラムの内容。 「アイコンについて」ならば、アイコンの意味。 「デフォルトとは」ならば、デフォルトの意味。 ●プログラムの内容 「このプログラムでは」と言う。 MessageBox((母艦の、ハンドル),「Version 1.00」,「(サンプルメッセージ)」,$40)。 MessageBox((母艦の、ハンドル),「文章が変更されています。保存しますか?」, 「(サンプルメッセージ)」,$23)。 「のような特殊なダイアログを表示するためのソースを生成できます。」と言う。 「基本的な使い方: タイトルとテキストを入力して、アイコンを選び、プレビューボタンを押すと、 どんなダイアログが出るか見ることができます。 作成ボタンを押すと、そのダイアログを出すためのソースを貼り付けられます。 このとき、APIを貼り付けるかと出ますが、APIはプログラム中に一つ貼っておけば十分です。 また、APIはプログラムのどこにあってもかまいません。」と言う。 ●アイコンの意味 「アイコンには[×][?][!][i]の4つがあります。」と言う。 MessageBox((母艦の、ハンドル),「エラーが発生しました。 ([×]アイコンはエラーなど、プログラムに問題が発生した時に使います。)」,「(サンプルメッセージ)」,$10)。 MessageBox((母艦の、ハンドル),「文章が変更されています。保存しますか? ([?]アイコンはユーザーにたずねる時に使います。)」,「(サンプルメッセージ)」,$23)。 MessageBox((母艦の、ハンドル),「同名のファイルが存在します。上書きしますか? ([!]アイコンはユーザーに警告する時に使います。)」,「(サンプルメッセージ)」,$30)。 MessageBox((母艦の、ハンドル),「Version 1.00 ([i]アイコンは情報を表示する時に使います。)」,「(サンプルメッセージ)」,$40)。 ●デフォルトの意味 「デフォルトというのは、フォーカスをどこに合わせるか、と言うものです。 たとえば{[}テキストが変更されています。保存しますか。{]}というのを [はい][いいえ][キャンセル]で尋ねる時、保存するのがいいだろうと言うことなら、 1番目([はい])にデフォルトを、終了を留まらせるのがいいだろうと言うことなら、 3番目([キャンセル])にデフォルトを合わせます。 実際に見てみましょう」と言う。 MessageBox((母艦の、ハンドル),「テキストが変更されています。保存しますか。 (1番目にデフォルト)」,「(サンプルメッセージ)」,$33)。 MessageBox((母艦の、ハンドル),「テキストが変更されています。保存しますか。 (3番目にデフォルト)」,「(サンプルメッセージ)」,$233)。 ●MessageBox(h,t,c,u) =DLL("user32.dll", "int MessageBoxA( HWND hWnd, // handle of owner window LPCTSTR lpText, // address of text in message box LPCTSTR lpCaption, // address of title of message box UINT uType // style of message box )")#" ●コード作成 /*戻ってくる値 0エラー1OK 2キャンセル3中止 4再試行5無視 6はい7いいえ 10再実行11続行*/ 最終コード取得。 「メッセージボックスのAPI(●MessageBox(h,t,c,u))も貼り付けますか? これはソース中に一つあれば十分です。」と二択。 もし、それがはいならば APIは改行 『●MessageBox(h,t,c,u) =DLL("user32.dll", "int MessageBoxA( HWND hWnd, // handle of owner window LPCTSTR lpText, // address of text in message box LPCTSTR lpCaption, // address of title of message box UINT uType // style of message box )")#" 』 違えば、APIは「」 ダタエディタの`「`を『{「}』に置換して`」`を『{」}』に置換してタイトルに代入。 ダテエディタの`「`を『{「}』に置換して `」`を『{」}』に置換してダイアログテキストに代入。 最終ソース=「MessageBox((母艦の、ハンドル),{[}{ダイアログテキスト}{]},{[}{タイトル}{]},${最終コード})。{選択肢}」 最終ソース APIをコピー。 デバッグエディタハンドルに『paste』をCOPYDATA送信。 戻る。 ●最終コード取得 最終コードはボタンラジオの値。 最終コードで条件分岐。 0ならば、選択肢は「」 1ならば、選択肢は改行 『もし、それが1/*OK*/ならば、「はいが押されました」と、言う。』 改行 『もし、それが2/*キャンセル*/ならば、「キャンセルが押されました」と、言う。』 2ならば、選択肢は改行 『もし、それが3/*中止*/ならば、「中止が押されました」と、言う。』 改行 『もし、それが4/*再試行*/ならば、「再試行が押されました」と、言う。』 改行 『もし、それが5/*無視*/ならば、「無視が押されました」と、言う。』 3ならば、選択肢は改行 『もし、それが6/*はい*/ならば、「はいが押されました」と、言う。』 改行 『もし、それが7/*いいえ*/ならば、「いいえが押されました」と、言う。』 改行 『もし、それが2/*キャンセル*/ならば、「キャンセルが押されました」と、言う。』 4ならば、選択肢は改行 『もし、それが6/*はい*/ならば、「はいが押されました」と、言う。』 改行 『もし、それが7/*いいえ*/ならば、「いいえが押されました」と、言う。』 5ならば、選択肢は改行 『もし、それが4/*再試行*/ならば、「再試行が押されました」と、言う。』 改行 『もし、それが2/*取り消し*/ならば、「取り消しが押されました」と、言う。』 6ならば、選択肢は改行 『もし、それが2/*キャンセル*/ならば、「キャンセルが押されました」と、言う。』 改行 『もし、それが10/*再実行*/ならば、「再実行が押されました」と、言う。』 改行 『もし、それが11/*続行*/ならば、「続行が押されました」と、言う。』 違えば、選択肢は「」 それはアイコンラジオの値。 最終コード=最終コード+それ*10。 それはデフォルトラジオの値。 最終コード=最終コード+それ*100 それは手前の値。 最終コード=最終コード+それ*40000。 それはヘルプボタンの値。 最終コード=最終コード+それ*4000。 それは母艦チェックの値。 最終コード=最終コード+それ*2000。 それは逆チェックの値。 最終コード=最終コード+それ*100000。 戻る。 名前 コメント
https://w.atwiki.jp/m_shige1979/pages/908.html
指定のファイルのを出力 テキストを出力 aaa.txt(テキストデータ) aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb cccccccccccccccccccccccccccccccccccccccccccc test08a.cgi #!"C /Perl64/bin/perl.exe" use strict; use warnings; # ファイル名 my $file = "D /Tools/Works/websystem/testweb02/cgi-bin/aaa.txt"; my $downloadFile = "download.csv"; my $size = -s $file; #ダウンロードファイルオープン open (DF, " $file") or die "cannot open $! "; ### Content-type application/octet-stream ### Content-Disposition attachment; filename=download.dat ### Content-Length 146 #ヘッダー部ダウンロード print "HERE1"; Content-type text/plain;name=$downloadFile Content-Length $size HERE1 #本体ダウンロード binmode DF; # 開いたファイルをバイナリモードへ binmode STDOUT; # 標準出力をバイナリモードへ # 改行ごとに出力を行う while (my $DFdata = DF ) { print STDOUT $DFdata; # 標準出力で出力 } #ダウンロードファイルクローズ close DF; 結果画面 リンク テキストを出力 XMLを出力 bbb.xml(テキストデータ) ?xml version="1.0" encoding="UTF-8" standalone="yes" ? root item1 項目1 /item1 item2 項目2 sub1 サブ項目1 /sub1 sub2 サブ項目2 /sub2 /item2 末尾 以上です(03/8/7) /末尾 /root test08b.cgi #!"C /Perl64/bin/perl.exe" use strict; use warnings; # ファイル名 my $file = "D /Tools/Works/websystem/testweb02/cgi-bin/bbb.xml"; my $size = -s $file; #ダウンロードファイルオープン open (DF, " $file") or die "cannot open $! "; ### Content-type application/octet-stream ### Content-Disposition attachment; filename=download.dat ### Content-Length 146 #ヘッダー部ダウンロード print "HERE1"; Content-type text/xml; HERE1 #本体ダウンロード binmode DF; # 開いたファイルをバイナリモードへ binmode STDOUT; # 標準出力をバイナリモードへ # 改行ごとに出力を行う while (my $DFdata = DF ) { print STDOUT $DFdata; # 標準出力で出力 } #ダウンロードファイルクローズ close DF; リンク XMLを出力 画像を出力 ccc.jpg(画像データ) test08c.cgi #!"C /Perl64/bin/perl.exe" use strict; use warnings; # ファイル名 my $file = "D /Tools/Works/websystem/testweb02/cgi-bin/ccc.jpg"; my $downloadFile = "download.csv"; my $size = -s $file; #ダウンロードファイルオープン open (DF, " $file") or die "cannot open $! "; ### Content-type application/octet-stream ### Content-Disposition attachment; filename=download.dat ### Content-Length 146 #ヘッダー部ダウンロード print "HERE1"; Content-type image/jpeg;name=$downloadFile Content-Length $size HERE1 #本体ダウンロード binmode DF; # 開いたファイルをバイナリモードへ binmode STDOUT; # 標準出力をバイナリモードへ # 改行ごとに出力を行う while (my $DFdata = DF ) { print STDOUT $DFdata; # 標準出力で出力 } #ダウンロードファイルクローズ close DF; 結果画面 リンク 画像を出力
https://w.atwiki.jp/nadebook/pages/78.html
【名前】メンバ変数 部品を作成する時に設定される、その部品の名前です。 ラベルやボタンなどを作成すると、その部品の名前が「テキスト」メンバ変数に設定されます。 また、「決定ボタンとはボタン」のように、部品の名前「決定ボタン」に部品名「ボタン」が含まれている場合は、部品の名前から、部品名より前の部分「終了」が切り出されて、テキストに設定されます。 プログラム中でその部品を示すために使われる部品名と、部品の「名前」メンバ変数は別のものですから、「名前」メンバ変数を変更しても部品名は変わりません。 値の設定 部品に名前を設定する。 (部品名)の名前は「実行ボタン」 ※システム側で自動的に値が設定されるので、ユーザーが任意に設定すべきではありません。 値の取得 部品の名前を取得する。 Nは(部品名)の名前。 取得できる値 文字列 ***** サンプル ***** 決定ボタンとはボタン。 決定ボタンの名前を表示。 テストラベルAとはラベル。 テストラベルAの名前を表示。 ***** ここまで *****
https://w.atwiki.jp/etcranking/pages/1526.html
日テレ・ベレーザ説明 チーム紹介 1981年、読売サッカークラブの女子チームとして創部され、2000年度より日テレ・ベレーザにチーム名を改称。 「ベレーザ」とはポルトガル語で美人を意味する。現在は高校生から社会人まで25名が所属している。 これまでの主な戦績はリーグ優勝10回、準優勝7回、全日本女子選手権優勝8回、準優勝7回を数える。 文字通り日本の女子サッカーをリードする存在となってきている。 youtube動画 第29回全日本女子サッカー選手権大会決勝 TASAKIペルーレ vs 日テレ・ベレーザ チーム基本情報 正式名称 日テレ・ベレーザ 略称 ベレーザ 所在地 〒206-0812 東京都稲城市矢野口4015-1 クラブカラー 緑 創設年 1981年 創部時名称 読売サッカークラブ女子「ベレーザ」 ホームタウン 東京都稲城市 ユニフォーム FPホーム (緑・緑・緑) FPアウェイ (グレー・グレー・グレー) GKホーム (水色・水色・水色) GKアウェイ (紫・紫・紫) 所在地MAP #alpslab_base STAFF 役職 スタッフ 監督 松田岳夫 部長 福本 隆 監督 松田 岳夫 コーチ 星川 敬 コーチ/主務 寺谷 真弓 GKコーチ 中村 和哉 トレーナー 清水 朋恵 運営責任者 風間 理佐 ドクター 福島 一雅 主将 澤 穂希 チーム名の変更履歴 年数 チーム名 ~1991年 読売サッカークラブ女子・ベレーザ 1992年~1993年 読売日本サッカークラブ女子ベレーザ 1994年~1997年 読売西友ベレーザ 1998年 読売ベレーザ 1999年 NTVベレーザ 2000年~ 日テレ・ベレーザ 獲得タイトル 1988年 第9回全日本女子サッカー選手権大会 優勝 1989年 第10回全日本女子サッカー選手権大会 優勝 1990年 第2回JLSL 優勝 1991年 第3回JLSL 優勝 1992年 第4回JLSL 優勝 1993年 第5回JLSL 優勝 1994年 第15回全日本女子サッカー選手権大会 優勝 1996年 OKI L・リーグカップ96 優勝 1998年 第19回全日本女子サッカー選手権大会 優勝 1999年 L・リーグカップ’99 優勝 2000年 第12回L・リーグ 優勝 2001年 第22回全日本女子サッカー選手権大会 優勝 2001年 第13回L・リーグ 優勝 2002年 第14回L・リーグ 優勝 2005年 第26回全日本女子サッカー選手権大会 優勝 2005年 なでしこスーパーカップ2005 優勝 2005年 2005 L・リーグ1部(L1) 優勝 2006年 第27回全日本女子サッカー選手権大会 優勝 2006年 2006 なでしこリーグ1部 優勝 2007年 なでしこスーパーカップ2007 優勝 2007年 なでしこリーグカップ 優勝 2007年 2007 なでしこリーグ1部 優勝 2007年 第29回全日本女子サッカー選手権大会 優勝 リーグ10回、カップ戦5回、選手権8回獲得 MEMBER 番号 ポジション 氏名 生年月日 身長/体重 前所属チーム 代表 下部 リーグ 1 GK 小野寺 志保 1973.11.18 164/52 西鶴間レディース □ 2 DF 中地 舞 1980.12.16 155/47 読売メニーナ ◎ □ 3 MF 四方 菜穂 1979.11.05 165/56 読売メニーナ □ 4 DF 須藤 安紀子 1984.04.07 165/59 日テレ・メニーナ □ 5 MF 加藤 與惠 1978.05.27 158/50 読売メニーナ ◎ □ 6 DF 近賀 ゆかり 1984.05.02 161/53 湘南学院高校 ◎ □ 7 MF 伊藤 香菜子 1983.07.20 160/51 NTVメニーナ □ 8 MF 小林 弥生 1981.09.18 157/52 読売メニーナ □ 9 FW 大野 忍 1984.01.23 154/50 読売メニーナ ◎ □ 10 MF 澤 穂希 1978.09.06 164/54 アトランタ・ビート ◎ □ 11 FW 荒川 恵理子 1979.10.30 166/55 読売メニーナ ◎ □ 12 DF 豊田 奈夕葉 1986.09.15 164/58 日テレ・メニーナ ◎ □ 13 MF 南山 千明 1985.10.16 163/52 日テレ・メニーナ □ 14 MF 原 菜摘子 1989.03.01 156/44 日テレ・メニーナ □ 16 GK 松林 美久 1984.05.27 168/57 日テレ・メニーナ □ 17 FW 井関 夏子 1986.06.09 161/53 日テレ・メニーナ □ 18 DF 岩清水 梓 1986.10.14 161/52 日テレ・メニーナ ◎ □ 19 FW 永里 優季 1987.07.15 167/60 日テレ・メニーナ ◎ □ 20 DF 宇津木 瑠美 1988.12.05 167/57 日テレ・メニーナ ◎ □ 21 GK 小林 詩織 1988.05.20 168/60 日テレ・メニーナ □ 22 DF 松原 萌 1988.04.19 160/53 日テレ・メニーナ □ 23 FW 永里 亜紗乃 1989.01.24 166/59 日テレ・メニーナ □ 24 MF 木龍 七瀬 1989.10.31 161/51 日テレ・メニーナ □ 25 FW 岩渕 真奈 1993.03.18 153/45 関前SC △ □ ※「代表」、◎印は、2008年2月13日に発表された日本女子代表(なでしこジャパン)メンバーを表しています。 ※「下部」、△印は、「下部組織チーム」に所属する選手を表しています。 ※「リーグ」、□印は、「なでしこリーグ」に登録されている選手を表しています。 スタジアム紹介 多摩市立陸上競技場 所在地 東京都多摩市諏訪4-9 電話番号 042-337-7665 交通 京王線「聖蹟桜ヶ丘駅」又は「永山駅」より京王バス 「諏訪四丁目」行き終点下車 徒歩5分 ※諏訪四丁目循環も利用可能 駒沢オリンピック公園陸上競技場 所在地 世田谷区駒沢公園1-1 電話番号 03-3421-6199 交通 ・東急田園都市線「駒沢大学」駅下車 徒歩15分 ・JR「渋谷」駅西口バスターミナル31番のりばより 東急バス「渋11系統田園調布駅」行きで約30分 「駒沢公園東口」または「東京医療センター前」下車 ・JR「渋谷」駅西口バスターミナル5番のりばより 東急バス「渋82系統等々力」行きで約30分「駒沢公園西口」下車 ・JR「恵比寿」駅西口三井住友銀行前4番のりばより 東急バス「恵32系統用賀駅」行きで約25分 「東京医療センター前」または「駒沢公園」下車 ・東横線「自由が丘」駅下車「自由が丘駅入口」2番のりばより 東急バス「渋11系統渋谷駅」行きで約15分 「東京医療センター」又は「駒沢公園東口」下車 ・東横線「田園調布」駅1番のりばより 東急バス「渋11系統渋谷駅」行きで「東京医療センター」 または「駒沢公園東口」下車 ・東急田園都市線「用賀」駅6番のりばより 東急バス「恵32系統恵比寿駅」行きで「駒沢公園」 または「東京医療センター前」下車 ・大井町線「等々力」駅下車「等々力」1番のりばより 東急バス「渋82系統渋谷駅」行き または「等11系統祖師ヶ谷折返所または等々力操車所」行きで約15分 「駒沢公園西口」下車 ・小田急線「祖師ヶ谷大蔵」駅下車「祖師ヶ谷折返所」より 東急バス「等11系統等々力操車所」(千歳船橋も経由)行き約35分で 「駒沢公園西口」下車 ・東横線「自由が丘」駅より東急コーチ自由が丘線 「駒大深沢キャンパス前」下車 江戸川区陸上競技場 所在地 東京都江戸川区清新町2-1-1 電話番号 03-3878-3388 交通 東京メトロ東西線「西葛西」駅下車 徒歩15分 東京メトロ東西線「西葛西」駅より都バス「臨海二丁目団地」 行きで「清新第三小学校前」下車 徒歩2分 西が丘サッカー場 所在地 東京都北区西が丘3-15-1 電話番号 03-5963-0203 交通 ・都営三田線「本蓮沼」駅より 徒歩8分 ・JR「赤羽」駅より国際興業バス「王子」行きで「西が丘交番前」 下車 徒歩5分 ・JR「赤羽」駅より国際興業バス「池袋」又は「日大病院」行き で「国立西が丘競技場北門」下車 徒歩5分 ・JR「赤羽」駅より国際興業バス「国立西が丘競技場」行きで 「国立西が丘競技場」下車 徒歩3分 ・JR埼京線「十条」駅よりタクシーで約10分 夢の島陸上競技場 所在 東京都江東区夢の島2番地 電話番号 03-3522-0846 交通 京葉線、東京メトロ有楽町線、東京臨海高速鉄道りんかい線「新木場」駅下車 徒歩10分 ひたちなか運動公園 所在地 茨城県ひたちなか市新光町49 電話番号 029-273-9370 交通 JR勝田駅よりタクシーで約15分。又は駅よりバス「海浜公園」又は「中央研修所」行き「市民球場前」下車 徒歩10分 平塚競技場 所在地 神奈川県平塚市大原1-1 電話番号 0463-35-2233 交通 ・JR東海道線「平塚」駅より徒歩20分 ・JR東海道線「平塚」駅10番のりばより神奈川中央交通バス で「総合公園」下車 徒歩3分 ・JR東海道線「平塚」駅1番のりばより神奈川中央交通バス 「伊勢原駅南口」行き他で「共済病院前総合公園西」下車 徒歩5分 ・小田急線「伊勢原」駅より神奈川中央交通バス「平塚駅」行き で「共済病院前総合公園西」下車 徒歩5分 外部リンク チーム公式サイト なでしこリーグ公式 Wikipedia(日テレ・ベレーザ) 1部公式サイトより引用 トップページ
https://w.atwiki.jp/kuni_memo/pages/219.html
前ページ次ページLibrary 攻撃者が世の中多いらしくて、それを防ぐためのweb作成とか結構めんどいらしい。 ある程度のことを知っておかないとまずいらしい。 セキュリティ 書籍 一般書籍 Jon Erickson, ...Hacking 美しき策謀 プログラミング C/C++セキュアコーディング, 第二版 ネットワーク・セキュリティ Anonymous, ...クラッキング対策ファイナルガイド 難攻不落のネットワーク構築 イプシロン,"ハッカーの学校" イプシロン,"ハッカーの教科書" Wade Alcorn, Christian Frixhot, Michele Orru,"ブラウザハック" 暗号関連 暗号技術のはなし 情報理論とその応用シリーズ, "暗号と認証" 結城浩,"暗号技術入門 秘密の国のアリス 第三版" セキュリティ 書籍 一般書籍 Jon Erickson, ...Hacking 美しき策謀 プログラミング C/C++セキュアコーディング, 第二版 こんなことほんとにされるんかね?ってことがいっぱい書いてある。 ネットワーク・セキュリティ Anonymous, ...クラッキング対策ファイナルガイド 難攻不落のネットワーク構築 イプシロン,"ハッカーの学校" 攻撃側の情報を知るための本 ハッカーの教科書というのもあるようだ。 前半は、Ethernetに関するプロトコルの基礎知識、後半は、実践的な方法論に当てられている。 イプシロン,"ハッカーの教科書" Wade Alcorn, Christian Frixhot, Michele Orru,"ブラウザハック" 2016年代の和訳本 暗号関連 暗号技術のはなし 情報理論とその応用シリーズ, "暗号と認証" 結城浩,"暗号技術入門 秘密の国のアリス 第三版" 定評があるそうなので買った。
https://w.atwiki.jp/tmiya/pages/125.html
Scala ひと巡り (A Tour of Scala) 原ページ Published on The Scala Programming Language (http //www.scala-lang.org) . By admin . Created 2008-07-05, 20 31 Scala は簡潔でエレガント、そして型安全な方法で共通のプログラミングパターンを表現できるよう設計された現代的なマルチパラダイム・プログラミング言語です。 オブジェクト指向の特徴と関数型言語の特質をスムーズに統合します。 Scala はオブジェクト指向言語です すべての値がオブジェクトである [1]という意味で、Scala は純粋なオブジェクト指向言語です。オブジェクトの型と振る舞いをクラス [2]とトレイト [3]によって記述します。 クラスはサブクラス化 [4]と、多重継承の欠点のない置換えである、柔軟なミックスインベースの合成 [5]メカニズムにより拡張されます。 Scala は関数型言語です すべての関数が値である[1]という意味で、Scala は関数型言語でもあります。 Scala は無名関数の定義に簡単な構文 [6]を提供します。それは高階関数 [7]をサポートし、関数のネストを可能とし[8]、カリー化 [9]をサポートします。 Scala のケースクラス [10]とパターンマッチィング [11]の組み込みサポートは、多くの関数型プログラミング言語で使われる代数型をモデル化します。 Furthermore, Scala s notion of pattern matching naturally extends to the processing of XML data [12] with the help of right-ignoring sequence patterns [13]. In this context, sequence comprehensions [14] are useful for formulating queries. さらに、Scala のパターンマッチィングの概念は、右無視シーケンスパターン(right-ignoring sequence pattern) [13]の助けにより、XML データ [12]の処理へ自然に拡張されます。このコンテキストにおいて、シーケンス内包表記(sequence comprehensions) [14]はクエリの定式化に対して役立ちます。 これらの特徴により Scala は、Web サービス[15]のようなアプリケーション開発に理想的なものとなっています。 Scala は静的な型付け言語です Scala は、抽象化が安全で理路整然とした方法でなされることを静的に強制する、表現力豊かな型システムを備えています。 特に、型システムは次をサポートします。 ジェネリッククラス (generic classes [16]) 変位指定アノテーション (variance annotations [17]) 上/下限 型境界 (upper[18] and lower[19] type bounds) 内部クラスとオブジェクトメンバーとしての抽象型 (inner classes [20] and abstract types [21] as object members) 複合型 (compound types [22]) 明示的に型付けされた自己参照 (explicitly typed self references [23]) ビュー (view [24]) 多相的メソッド (polymorphic methods [25]) ローカルな型推論 [26]機構により、ユーザーはプログラムに冗長な型情報で注釈を付ける必要がありません。 これらフィーチャーの組み合わせは、プログラミング抽象の安全な再利用とソフトウェアの型安全な拡張に対して、強力な基盤を提供します。 Scala は拡張性に富んでいます 現場では、固有領域のアプリケーション開発はしばしば領域固有の言語拡張を必要とします。Scala は、新たな言語要素をライブラリの形でスムーズに容易に加えることができる言語メカニズムのユニークな組合せを提供します どのようなメソッドも中置あるいは後置演算子 [27]として使うことができます。そして 要請型(expected type 期待される型)に応じて、クロージャが自動的に構成されます[28](target typing ターゲットによる型付け)。 両フィーチャーの共同使用は、構文拡張なしの、またマクロのようなメタプログラミングファシリティの助けを借りない、新しい文定義を促進します。 Scala は Java や .NET と相互運用できます Scala は、ポピュラーな Java 2 実行環境(JRE [29])とうまく相互運用できるように設計されています。 特に、主流のオブジェクト指向 Java プログラミング言語との相互作用は可能な限りスムーズです。 Scala は、Java と同列のコンパイルモデル(ダイナミックなクラスローディング、分割コンパイル)を採用しており、既存の何千もの高品質ライブラリにアクセスできます。 .NET フレームワーク(CLR [30])のサポートも同様に利用できます。 さらに次のページをお読みください。 Scala ひと巡り 抽象型 (Abstract Types) Scala ひと巡り アノテーション (Annotations) Scala ひと巡り クラス (Classes) Scala ひと巡り ケースクラス (Case Classes) Scala ひと巡り 事前定義された classOf 関数 (Predefined function classOf) Scala ひと巡り 複合型 (Compound Types) Scala ひと巡り シーケンス内包表記 (Sequence Comprehensions) Scala ひと巡り 抽出子オブジェクト (Extractor Objects) Scala ひと巡り ジェネリッククラス (Generic Classes) Scala ひと巡り 暗黙のパラメータ (Implicit Parameters) Scala ひと巡り 内部クラス (Inner Classes) Scala ひと巡り ミックスインクラス合成 (Mixin Class Composition) Scala ひと巡り 関数のネスト (Nested Functions) Scala ひと巡り 無名関数の構文 (Anonymous Function Syntax) Scala ひと巡り カリー化 (Currying) link_anchor plugin error 画像もしくは文字列を必ずどちらかを入力してください。{ Scala ひと巡り 型依存クロージャの自動構築 (Automatic Type- link_anchor plugin error idが指定されていないか、存在しないページを指定しています。 Scala ひと巡り オペレータ (Operators) Scala ひと巡り 高階関数 (Higher-Order Functions) Scala ひと巡り パッケージ (Packages) Scala ひと巡り パターンマッチィング (Pattern matching) Scala ひと巡り 多相的メソッド (Polymorphic Methods) Scala ひと巡り 正規表現パターン (Regular Expression Patterns) Scala ひと巡り sealed クラス (Sealed Classes) Scala ひと巡り トレイト (Traits) Scala ひと巡り 上限 型境界 (Upper Type Bounds) Scala ひと巡り 下限 型境界 (Lower Type Bounds) Scala ひと巡り 明示的に型付けられた自己参照 (Explicitly Typed Self References) Scala ひと巡り サブクラス化 (Subclassing) Scala ひと巡り ローカルな型推論 (Local Type Inference) Scala ひと巡り 統一された型 (Unified Types) Scala ひと巡り 変位指定 (Variances) Scala ひと巡り ビュー (Views) Scala ひと巡り XML 処理 (XML Processing) Scala ひと巡り 抽象型 (Abstract Types) 原ページ Scala では、クラスは値(コンストラクタ・パラメータ)と(もしクラスがジェネリック [16]なら)型でパラメータ化されます。 単に規則に従って、オブジェクトメンバーとして値を持てるというばかりではありません; 値と共に、型はオブジェクトのメンバーです。 さらに、メンバーの両形式とも、具象あるいは抽象で構いません。 次の例は、クラス Buffer のメンバーとして、延期された値定義と抽象型定義の両方を定義しています。 abstract class Buffer { type T val element T } 抽象型はその素性が正確には知られていない型です。 上記の例で、我々は、クラス Buffer の各オブジェクトが 型メンバー T を持つことだけを知っています。しかしクラス Buffer の定義は、メンバー型 T がどのような具象(具体的な)型に対応するのかを明らかにしません。 値定義と同じように、サブクラス中で型定義をオーバライドできます。 これにより、(抽象型の、可能な具象インスタンス化を記述する)型境界を厳しくすることで、抽象型についてより多くの情報を明らかにできます 次のプログラムでは、型 T が新しい抽象型 U のサブ型でなければならないと述べることで、バッファ中にシーケンスのみを記憶できるクラス SeqBuffer を得ます abstract class SeqBuffer extends Buffer { type U type T Seq[U] def length = element.length } 抽象型メンバーをもつトレイトあるいはクラス [2]は、無名クラスのインスタンス化と組合せてしばしば使われます。 このことを示す例として、整数リストを参照するシーケンスバッファを扱う、次のプログラムを見てみます。 abstract class IntSeqBuffer extends SeqBuffer { type U = Int } object AbstractTypeTest1 extends Application { def newIntSeqBuf(elem1 Int, elem2 Int) IntSeqBuffer = new IntSeqBuffer { type T = List[U] val element = List(elem1, elem2) } val buf = newIntSeqBuf(7, 8) println("length = " + buf.length) println("content = " + buf.element) } メソッド newIntSeqBuf の戻り値型は、型 U が toInt に等価になった、トレイト Buffer の特化を参照します。 メソッド newIntSeqBuf 本体内における無名クラスのインスタンス化で、似たような型エイリアスを使っています。 ここで、型 T が List[Int]を参照する IntSeqBuffer の新しいインスタンスを生成します。 抽象型メンバーをクラスの型パラメータに変えることや、その逆も可能であることに注意してください。 次は、上記コードの型パラメータだけを使うバージョンです abstract class Buffer[+T] { val element T } abstract class SeqBuffer[U, +T Seq[U]] extends Buffer[T] { def length = element.length } object AbstractTypeTest2 extends Application { def newIntSeqBuf(e1 Int, e2 Int) SeqBuffer[Int, Seq[Int]] = new SeqBuffer[Int, List[Int]] { val element = List(e1, e2) } val buf = newIntSeqBuf(7, 8) println("length = " + buf.length) println("content = " + buf.element) } ここでは変位指定アノテーション [17]を使う必要があることに注意してください; そうでなければ、メソッド newIntSeqBuf が返すオブジェクトの具象シーケンス実装型を隠せなくなります。 さらにまた、型パラメータを抽象型で置き換えできない場合があります。 Scala ひと巡り アノテーション (Annotations) 原ページ アノテーションは、定義にメタ情報を関連づけます。 単純なアノテーション節は、@C あるいは @C(a1,...,an) の形です。 ここで、C はクラス C のコンストラクタで、scala.Annotation [31]に適合しなくてはなりません。 All given constructor_arguments a1,...,an must be constant_expressions (i.e., expressions on numeral literals, strings, class_literals, Java enumerations and one-dimensional arrays of them) . 与えられたコンストラクタ引数 a1,...,an はすべて、定数式(すなわち、数値リテラル、文字列、クラスリテラル、Java enumとそれらの 1 次元配列上の式)でなければなりません。 アノテーション節は、その後に続く、最初の定義または宣言に適用されます。 1 つ以上のアノテーション節が定義や宣言に先行するかもしれません。 それら節の与えられた順番は重要ではありません。 アノテーション節の意味は処理系依存です。 Java プラットフォームでは、次の Scala アノテーションは標準的な意味を持っています。 Scala Java scala.SerialVersionUID [32] serialVersionUID [33] (フィールド) scala.cloneable [34] java.lang.Cloneable [35] scala.deprecated [36] java.lang.Deprecated [37] scala.inline [38] (2.6.0から) 等価なもの無し scala.native [39] (2.6.0から) native [40] (キーワード) scala.remote [41] java.rmi.Remote [42] scala.serializable [43] java.io.Serializable [44] scala.throws [45] throws [40] (キーワード) scala.transient [46] transient [40] (キーワード) scala.unchecked [47] (2.4.0から) 等価なもの無し scala.volatile [48] volatile [40] (キーワード) scala.reflect.BeanProperty [49] Design pattern [50] 次の例では、Java main プログラム中で例外送出をキャッチするために、メソッド read の定義に throws アノテーションを加えています。 Java コンパイラは、どのチェック例外がメソッドあるいはコンストラクタの実行によって引き起こされるか分析し、プログラムがチェック例外 [51]用のハンドラを含むことを確認します。 起きる可能性のある各チェック例外に対して、メソッドあるいはコンストラクタの throw 節では、その例外クラスあるいはその例外クラスのスーパークラスの 1 つに言及しなくてはなりません。 Scala にはチェック例外がないので、Java コードが Scala メソッドの送出する例外を捕えることができるように、Scala メソッドに 1 つ以上の throws アノテーションをつける必要があります。 package examples import java.io._ class Reader(fname String) { private val in = new BufferedReader(new FileReader(fname)) @throws [45](classOf [52][IOException]) def read() = in.read() } 次の Java プログラムはファイルの内容を印字します。ファイル名は main メソッドに最初の引数として渡されます。 package test; import examples.Reader; // Scala クラス !! public class AnnotaTest { public static void main(String[] args) { try { Reader in = new Reader(args[0]); int c; while ((c = in.read()) != -1) { System.out.print((char) c); } } catch (java.io.Exception e) { System.out.println(e.getMessage()); } } } クラス Reader 中の throws アノテーションをコメントアウトすると、Java main プログラムのコンパイル時に、次のエラーメッセージが出力されます Main.java 11 Exception java.io.IOException is never thrown in body of corresponding try statement corresponding try statement } catch (java.io.IOException e) { ^ 1 error Java アノテーション 注意 Java アノテーションの -target jvm-1.5 オプションの使用を確認してください。 Java 1.5 は、アノテーション [53]の形でユーザー定義メタデータを導入しました。 アノテーションの重要な特徴は、指定された名前と値の対に依存して、それら要素を初期化することです。 例えば、もしあるクラスのソースを追跡するアノテーションが必要なら、次のように定義するかもしれません。 Java annotations @interface Source { public String URL(); public String mail(); } それを次のように適用してください @Source(URL = "http //coders.com/", mail = "support@coders.com") public class MyClass extends HisClass ... Scala のアノテーション適用は、Java アノテーションのインスタンス化のために名前付き引数を使う必要があるので、コンストラクタ呼び出しのように見えます。 @Source(URL = "http //coders.com/", mail = "support@coders.com") class MyScalaClass ... もしアノテーションが(デフォルト値をもたない) ただ 1 つの要素を含むだけなら、この構文はたいへんうんざりします。そこで、規約により(by convention)、もし名前を値として指定するなら、それをコンストラクタに似た構文を使って Java 中で適用できます。 @interface SourceURL { public String value(); public String mail() default ""; } それを次のように適用してください @SourceURL("http //coders.com/") public class MyClass extends HisClass ... In this case, Scala provides the same possiblity. この場合、Scala は同じことを提供します。 @SourceURL("http //coders.com/") class MyScalaClass ... mail 要素はデフォルト値を指定されたので、それに明示的に値を与える必要はありません。 しかし、もしそうする必要があっても、Java 中で 2 つのスタイルを混ぜて適応させることはできません。 @SourceURL(value = "http //coders.com/", mail = "support@coders.com") public class MyClass extends HisClass ... Scala はこの点に関してより柔軟です。 @SourceURL("http //coders.com/", mail = "support@coders.com") class MyScalaClass ... この拡張された構文は、.NET のアノテーションでも同じあり、それらアノテーションのフルの能力を引き出します。 Scala ひと巡り クラス (Classes) 原ページ Scala のクラスは静的なテンプレートであり、実行時にたくさんのオブジェクトへインスタンス化されます。 次は、クラス Point を定義するクラス定義です class Point(xc Int, yc Int) { var x Int = xc var y Int = yc def move(dx Int, dy Int) { x = x + dx y = y + dy } override def toString() String = "(" + x + ", " + y + ")"; } クラスは 2 つの変数 x と y、2 つのメソッド move と toString を定義します。 move は 2 つの整数を引数にとりますが、値を返しません (暗黙の戻り値型 Unit は、Java ライクな言語の void に相当します)。他方、toString は引数をとらず、String 値を返します。 toString は事前定義された toString メソッドをオーバライドするので、override フラグでタグ付けしなければなりません。 Scala のクラスは、コンストラクタ引数でパラメータ化されます。 上記のコードは 2 つのコンストラクタ引数 xc と yc を定義します;それらは共にクラス本体全体で可視です。 この例では、それらは変数 x と y の初期化に使われます。 クラスは、次の例が示すように、new プリミティブでインスタンス化されます object Classes { def main(args Array[String]) { val pt = new Point(1, 2) println(pt) pt.move(10, 10) println(pt) } } このプログラムは実行可能なアプリケーション Classes を、main メソッドをもつトップレベルのシングルトンオブジェクトの形で定義します。 main メソッドは新しい Point を生成し、それを値 pt に記憶します。 val 構文で定義された値は、それらの更新が許されない点が、var 構文(上記 クラス Point 参照)で定義された変数とは異なることに注意してください; すなわち、値(value)は不変です。 次はプログラムの出力です (1, 2) (11, 12) Scala ひと巡り ケースクラス (Case Classes) 原ページ Scala はケースクラスの概念をサポートします。ケースクラスは通常のクラスであり、そのコンストラクタ・パラメータをエクスポートし、パターンマッチィング [11]を通して再帰的な分解メカニズムを提供します。 次は、1 つの抽象スーパークラス Term と 3 つの具象ケースクラス Var、Fun と App からなるクラス階層の例です。 abstract class Term case class Var(name String) extends Term case class Fun(arg String, body Term) extends Term case class App(f Term, v Term) extends Term このクラス階層は、型付けされていない(untyped) λ計算 [54]の項を表現するのに使えます。 ケースクラスのインスタンス構築にあたり、Scala では new プリミティブを使う必要がありません。 単純に、クラス名を関数として使用できます。 次は 1 つの例です Fun("x", Fun("y", App(Var("x"), Var("y")))) ケースクラスのコンストラクタ・パラメータは公開の値として扱われ、直接アクセスできます。 val x = Var("x") Console.println(x.name) すべてのケースクラスに対して、Scala コンパイラは、構造的等価性を実装する equals メソッドと toString メソッドを生成します。 たとえば val x1 = Var("x") val x2 = Var("x") val y1 = Var("y") println("" + x1 + " == " + x2 + " = " + (x1 == x2)) println("" + x1 + " == " + y1 + " = " + (x1 == y1)) は、次のように印字するでしょう。 Var(x) == Var(x) = true Var(x) == Var(y) = false もしパターンマッチィングをデータ構造の分解に使うなら、ケースクラスを定義することは道理にかなっています。 次のオブジェクトは、λ計算を表現するプリティプリンタ関数を定義します object TermTest extends Application { def printTerm(term Term) { term match { case Var(n) = print(n) case Fun(x, b) = print("^" + x + ".") printTerm(b) case App(f, v) = Console.print("(") printTerm(f) print(" ") printTerm(v) print(")") } } def isIdentityFun(term Term) Boolean = term match { case Fun(x, Var(y)) if x == y = true case _ = false } val id = Fun("x", Var("x")) val t = Fun("x", Fun("y", App(Var("x"), Var("y")))) printTerm(t) println println(isIdentityFun(id)) println(isIdentityFun(t)) } この例で関数 print は、パターンマッチィング文として表現されており、それは match キーワードで始まる case Pattern = Body 節の並びから成っています。 上記のプログラムは、与えられた項が単純な識別関数に対応するかどうかチェックする関数 isIdentityFun も定義します。 この例は、深いパターンとガードを使います。 与えられた値をもつパターンとマッチした後、その(キーワード if の後に定義された)ガードが評価されます。 もしそれが true を返すなら、マッチは成功です。;そうでなければ失敗であり、次のパターンが試みられます。 Scala ひと巡り 事前定義された classOf 関数 (Predefined function classOf) 原ページ 事前定義された関数 classOf[T]は、 Scala のクラス型 T の実行時表現を返します。 次の Scala コード例は、 args パラメータの実行時表現を印字します object ClassReprTest { abstract class Bar { type T AnyRef def bar(x T) { println("5 " + x.getClass()) } } def main(args Array[String]) { println("1 " + args.getClass()) println("2 " + classOf[Array[String]]) new Bar { type T = Array[String] val x T = args println("3 " + x.getClass()) println("4 " + classOf[T]) }.bar(args) } } 次は Scala プログラムの出力です 1 class [Ljava.lang.String; 2 class [Ljava.lang.String; 3 class [Ljava.lang.String; 4 class [Ljava.lang.String; 5 class [Ljava.lang.String; Scala ひと巡り 複合型 (Compound Types) 原ページ ときには、オブジェクトの型が、他の複数の型のサブ型であると表現することが必要になります。 Scala では、それをオブジェクト型の論理積である複合型(compound types)の助けをかりて表現できます。 2 つのトレイト Cloneable と Resetable があるとします。 trait Cloneable extends java.lang.Cloneable { override def clone() Cloneable = { super.clone(); this } } trait Resetable { def reset Unit } いま、オブジェクトを引数にとってクローンし、オリジナルのオブジェクトをリセットする関数 cloneAndReset を書きたいとします。 def cloneAndReset(obj ?) Cloneable = { val cloned = obj.clone() obj.reset cloned } パラメータ obj の型は何か、という問題が生じます。 もしそれが Cloneable なら、オブジェクトはクローンできますがリセットできません。; しかしもし Resetable なら、リセットできますがクローン操作がありません。 そのような状況で型キャストを避けるために、obj の型が Cloneable と Resetable の両方であると指定できます。 Scala では、複合型を使って Cloneable with Resetable のように書きます。 次は、アップデートした関数です def cloneAndReset(obj Cloneable with Resetable) Cloneable = { //... } 複合型は複数のオブジェクト型からなり、既存のオブジェクトメンバーのシグニチャを狭めるのに使える、ただ一つの細別(refinement)を持てます。 一般的な書き方は A with B with C ... { refinement } です。 細別の使用例は、抽象型 [21]に関するページにあります。 Scala ひと巡り シーケンス内包表記 (Sequence Comprehensions) 原ページ Scala は、シーケンス内包表記式に対して簡単な表記法を提供します。 内包表記は for enums yield e の形をしています。ここで enums は、セミコロンで分離された列挙子のリストを参照します。 列挙子は、新しい変数を導入する生成子、あるいは、フィルタです。 内包表記は、列挙子 enum によって生成された各束縛にごとに、本体 e を評価し、それら値のシーケンスを返します。 次は 1 つの例です object ComprehensionTest1 extends Application { def even(from Int, to Int) List[Int] = for (i - List.range(from, to) if i % 2 == 0) yield i Console.println(even(0, 20)) } 関数 even 中の for 式は Int 型の新しい変数 i を導入し、それをリスト List(from,from + 1,...,to - 1) の全ての値へ次々に束縛します。 ガード if i % 2 == 0 は、(式 i だけからなる)本体が偶数の場合のみ評価されるよう、全ての奇数をフィルターします。 最終的に、for 式全体は偶数のリストを返します。 プログラムは次を出力します List(0, 2, 4, 6, 8, 10, 12, 14, 16, 18) 次はより複雑な例で、その合計が与えられた値 v と等しい、0 から n - 1 までの数の対をすべて計算します。 object ComprehensionTest2 extends Application { def foo(n Int, v Int) = for (i - 0 until n; j - i + 1 until n if i + j == v) yield Pair(i, j); foo(20, 32) foreach { case (i, j) = println("(" + i + ", " + j + ")") } } この例は、内包表記がリストに制限されないことを示しています。 前のプログラムは、代わりにイテレータを使っています。 (適切な型をもつ) 操作 filter、map そして flagMapをサポートするすべてのデータ型は、シーケンス内包表記中で使えます。 次はプログラムの出力です (13, 19) (14, 18) (15, 17) シーケンス内包表記で Unitを返す、特別の形式もあります。 そこでは、生成子のリストとフィルターから生成される束縛は、副作用を起こさせるために使われます。 そのようなシーケンス内包表記を利用するには、プログラマはキーワード yield を取り除かなければなりません。 次は、前のものと等価ではあるが Unit を返す、特別な for 内包表記を使うプログラムです。 object ComprehensionTest3 extends Application { for (i - Iterator.range(0, 20); j - Iterator.range(i + 1, 20) if i + j == 32) println("(" + i + ", " + j + ")") } Scala ひと巡り 抽出子オブジェクト (Extractor Objects) 原ページ Scala では、パターンをケースクラスとは独立に定義できます。 この目的のために、unapply という名前のメソッドが定義されて、いわゆる抽出子をもたらします。 例えば、次のコードは抽出子オブジェクト Twice を定義します。 object Twice { def apply(x Int) Int = x * 2 def unapply(z Int) Option[Int] = if (z%2 == 0) Some(z/2) else None } object TwiceTest extends Application { val x = Twice(21) x match { case Twice(n) = Console.println(n) } // prints 21 } 次は、ここで関係する 2 つの文法上の規約(convention)です パターン case Twice(n)は、Twice.unapply の呼び出しを引き起こし、偶数のマッチに使われます。; unapply の戻り値は、引数がマッチしたかどうか、そしてさらなるマッチングのために使えるサブ値を伝えます。 ここで、サブ値は z/2 です。 The apply_method is not necessary for pattern matching. It is only used to mimic a constructor val x = Twice(21) expands to val x = Twice.apply(21) . apply メソッドは、パターンマッチィングについては必須ではありません。 これはただ、コンストラクタをまねて val x = Twice(21) を val x = Twice.apply(21) へ展開する時に使われるだけです。 unapply の戻り値型は、次のように選ぶべきです もしそれが単なるテストなら、Boolean を返す。たとえば case even() 。 もしそれがただ一つの、型 T のサブ値を返すなら、Option[T]を返す。 もし複数のサブ値 T1,...,Tn を返したいなら、 それらをまとめてタプルのオプション Option[(T1,...,Tn)]として返す。 しばしば、サブ値の数が固定で、シーケンスを返したいことがあります。 その場合は、unapplySeq を介して同様にパターンを定義できます。 最後のサブ値の型 Tn は、Seq[S]でなければなりません。 このメカニズムは、たとえば、パターン case List(x1,...,xn) 中で使われます。 抽出子を使えば、コードはさらに保守しやすくなります。 詳細は、Emir [56]、Odersky[57] と Williams (2007 年 1 月) らによる論文「 パターンを用いたオブジェクトマッチング」[55](4 章参照) を読んでください。 目次 次
https://w.atwiki.jp/m_shige1979/pages/595.html
MinGW 初期設定 文法 ライブラリ サンプル 参考 猫でも分かるプログラミング MinGWについて Win32API(C言語)編 Windows API
https://w.atwiki.jp/ninjatrader/pages/106.html
定義 高度なストラテジーのイベント・ドリブン・プログラミングは、経験豊かなプログラマ向けに用意されている。 NinjaTraderは、ストラテジーのロジックの処理がバーを基準にしたものに限定されないという点において、伝統的なストラテジー開発プラットフォームとは異なる。NinjaTraderは真にリアルタイムのプラットフォームであり、それ故にリアルタイムのイベントによって駆動することができる。 OnBarUpdate()およびInitialize()メソッドに加えて、NinjaScriptは次の高度なイベント・ドリブン・メソッドを用意している: OnConnectionStatus() - 接続状態が変化した時に呼び出される OnExecution() - ストラテジーが生成した注文が約定された時に呼び出される OnFundamentalData() - ファンダメンタル・データが変化した時に呼び出される OnMarketData() - レベル1の市場データ・ストリームが変化した時に呼び出される OnMarketDepth() - レベル2の市場データ・ストリームが変化した時に呼び出される OnOrderUpdate() - ストラテジーが生成した注文が状態を変化する時に呼び出される OnPositionUpdate() - ストラテジーが生成したポジションが変化するときに呼び出される OnStartUp() - スクリプトが起動する時に一度だけ呼び出される OnTermination() - スクリプトが終了される時に一度だけ呼び出される
https://w.atwiki.jp/s3study/
C#で覚えるウィンドウズプログラミング プログラミングをあまり知らない人も、簡単なアプリケーションを作れるまでになろうという勉強会です。 書いている人自身も勉強しながら書いているので間違っている可能性があります。 社内でやっているものなので、身内モードですが、ご容赦ください。