Perl 用 Web アプリケーション フレームワーク考察 EY-Office 吉田裕美 協力:株式会社ユラス Shibuya Perl Mongers テクニカルトーク #2 Tue, 1 Apr 2003 We are a group of people dedicated to the encouragement.

Slides:



Advertisements
Similar presentations
ECLフレームワー ク 近畿大学 理工学部 情報学 科 間野 哲 弥.
Advertisements

Integrated Personal Page C05823 森本万里子 C05829 西山礼恵 C05899 高木華子.
Word で XML マニュアルを編集 し、 XML を自動組版する 1. XML の自動組版概要 2. Word での原稿入力 アンテナハウス株式会社 2004/09/03.
InstallShieldLecture InstallShield でインストーラを作成する方法 ( 初級編 ) ソニーエンジニアリング 設計 3 部 1 課 齋藤佑輔.
Ruby on Rails (RoR) 講習会 近畿大学大学院 田中大介. 本日の目標 Web アプリケーションを作ろう!
情報処理基礎 A ・ B 第 5 回 プログラミング入門 操作の自動化を実現する仕組み. 2004/11/16 ・ 17 情報処理基礎 A ・ B 2 本日の内容 処理の自動化~プログラムの概念 ハードウェアとソフトウェア プログラミング言語 Excel における処理の自動化 入力支援の機能 分析ツール.
1 安全性の高いセッション管理方 式 の Servlet への導入 東京工業大学 理学部 千葉研究室所属 99-2270-6 松沼 正浩.
1 PHP プログラムの実行(まと め) 担当 岡村耕二 月曜日 2限 平成 22 年度 情報科学 III (理系コア科目・2年生) 本資料の一部は、堀良彰准教授、天野浩文准教授、菅沼明 准教授等による以前の講義資料をもとにしています。
2002/2/8 ASUG Conference in PAGE 2002 Mac OS X 開発環境と AppleScript MDOnline 編集長 新居雅行.
1 なんとなく Ajax ~新しくて古い XMLHttp 川合孝典 (Kansai.pm) 2005/5/22.
OWL-Sを用いたWebアプリケーションの検査と生成
Web アプリをユーザー毎に カスタマイズ可能にする AOP フレームワーク
オートデスク・コラボレーション・サービス オートデスク株式会社
IIS 4.0で開発をするコツ Webアプリケーション構築.
WagbyR6.5 Update 14 PPT版 更新情報
2004年度 サマースクール in 稚内 JSFによるWebアプリケーション開発
Webアプリケーション開発の 基本的なポイント
Webサービスに関する基本用語 Masatoshi Ohishi / NAOJ & Sokendai
WEBから確認できる 駐車場管理システムについて
知識情報演習Ⅲ(後半第1回) 辻 慶太(水)
名古屋大学大学院人間情報学研究科 物質生命情報学専攻 情報処理論講座 原 崇
IE5でアプリケーション開発 東日本計算センター 小野 修司.
コンポーネントの再利用に必要な情報 えムナウ (児玉宏之)
コンポーネントの再利用に必要な情報 えムナウ (児玉宏之)
Microsoft Office InfoPath 2003 概要
続 Entity Framework 入門 SQLWorld #8 サヴロウ.
ケータイキット for Smarty のご紹介
伺か with なでしこ 発表者:しらたま /05/05 うかべん大阪#3.
VBA H106077 寺沢友宏.
Microsoft Office 2010 クイックガイド ~ファイルの互換性編~
~災害発生!・・・その時最も重要なものとは?~
ユーリテクノスのFlashテクノロジーを 利用した様々なサービスのご提案
卒研:データベースチーム 第4回 DOMを使った処理
平成19年5月19日 第3版 東京大学理学部生物化学図書室 前田 朗
共同ローカリゼーション フレームワーク 井上 謙次.
セマンティクスを利用した 図書検索システム
①データ構造 ②アルゴリズム ③プログラム言語 ④マークアップ言語
Day3 Day4 Day3 Day4.
PHPの基礎と開発手法 Based on PHP5
Microsoft Office クイックガイド ~OneNote 2013~
第8章 Web技術とセキュリティ   岡本 好未.
2004年度 サマースクール in 稚内 JavaによるWebアプリケーション入門
概要 Boxed Economy Simulation Platform(BESP)とその基本構造 BESPの設計・実装におけるポイント!
チーム FSEL 立命館大学情報理工学部 ソフトウェア基礎技術研究室
オブジェクト指向 プログラミング 第十四回 知能情報学部 新田直也.
Excel 2002,2003基本14 テンプレートを作る.
Office IME 2010 を使う.
図書館職員のための アプリケーション開発講習会
.NET Framework 3.0 概要 (旧称 : WinFX)
オブジェクト指向 プログラミング 第十四回 知能情報学部 新田直也.
実行時情報に基づく OSカーネルのコンフィグ最小化
i-web RPGX による Web アプリケーション構築
WEBアプリケーションの開発 2002年度春学期 大岩研究会2.
業者による規制情報の作成手順 【規制情報の作成手順】 1.道路管理者より入力用Excelシートを入手する。 (Excelシートイメージ)
すぐできるBOOK -基本設定編-.
Internet広域分散協調サーチロボット の研究開発
ゲーム開発モデルの基礎.
コンピュータ プレゼンテーション.
Ibaraki Univ. Dept of Electrical & Electronic Eng.
JSFによるWebアプリケーション開発 第3回
北海道情報大学 情報メディア学部 情報メディア学科 新井山ゼミ 金子拓磨
Microsoft Office 2010 クイックガイド ~ファイルの互換性編~
第6回放送授業.
MSG시스템 팀 2006年5月26日 株式会社 데굴데굴 開発部 開発G 아무개.
知識ベースの試作計画 ●●●研究所 ●●●技術部 稲本□□ 1997年1月.
プログラミング言語論 第九回 理工学部 情報システム工学科 新田直也.
オブジェクト指向言語論 第七回 知能情報学部 新田直也.
プログラミング言語論 第九回 理工学部 情報システム工学科 新田直也.
オブジェクト指向言語論 第七回 知能情報学部 新田直也.
ZendFrameworkで使うためにFilemakerクラスをスクラッチから作ってみる
Presentation transcript:

Perl 用 Web アプリケーション フレームワーク考察 EY-Office 吉田裕美 協力:株式会社ユラス Shibuya Perl Mongers テクニカルトーク #2 Tue, 1 Apr 2003 We are a group of people dedicated to the encouragement of all things Perl-like in Shibuya.

なぜフレームワークなのか 短い開発期間 信頼性が求められる 仕様変更、機能拡張は必ずある いつも優秀な人材が確保できるとはかぎらな い 設計やコードの再利用

再利用 ライブラリー ( モジュール ) フレームワーク Application Module Application Module Application Module Framework Appl 再利用される部分 ・設計・実装の自由度は高い ・「設計」が再利用されなかもし れない ・生産物の質、開発効率が開発者 のレベルに依存しやす ・設計・実装はフレームワークの スタイルにあわせる必要がある ・「設計」が再利用される ・生産物の質、開発効率が開発者 のレベルに依存しにくい

GN/GNAフレームワークの特徴 (1) Web Appl用基本機能 セッション管理 post/get 値の処理 ( 日本語、ファイル upload…) cookie エラー処理 タイムアウト処理

GN/GNAフレームワークの特徴 ( 2 ) 高度な型の集中管理 通貨 (\23,000) や アドレスなどのアプ リ寄りな型のサポート 入出力時の内部⇔外部表現の変換 入力時の形式、値の自動チェック 型はアプリレイヤーで追加可能 型とカラム (DB) の対応付け

GN/GNAフレームワークの特徴 (3) ページ遷移の集中管理 現在のページとイベント (submit button) によ る遷移の制御 アプリ ( マクロ ) の戻り値による遷移の制御 論理的なページとテンプレートの対応付け 遷移のグループ化 Excel の表で遷移を記述し upload

GN/GNAフレームワークの特徴 (4) デザイナーに優しいテンプレート HTML editor/IE 等でテンプレートを表示し てデザイナーがページを ( 想像し ) デザインで きる デザイン時だけに有効なデザイナー支援タ グ 必要最小限な制御タグ (switch,loop) アプリで動作を定義可能な 関数タグ DB(型)との連携

GN/GNAフレームワークの特徴 (5) アプリ支援の機能 標準マクロ(定義済アプリ) 検索結果の表示、データ入力・確認・DB格納 … ログイン ユザー ( ユザークラス ) 毎にテンプレートの一 部を ON/OFF するアクセス制御 ヘルプページ機能 パンくずリストサポート機能

GN/GNAフレームワークの特徴 (6) その他 DB アクセス・ライブラリー リソースの集中管理 DB 定義、型、メッセージ、ページ遷移 … コンフィグファイル デバック支援 ログ管理 メール送信 文字列処理 ( 日本語 …)

GN/GNAフレームワークのMVC モデル <% gna simple_confirm region=user_region table=userm %> View: テンプレー ト sub gna_simple_confirm { my ($opt,$tmpl) my $table = $$opt{table}; # 項目のチェック gna_check_param_exists($opt,'table,hidden _values_id'); gna_check_param_exists($opt,'loop_id,data _id') if( $$opt{cols} ne '' ); = split(/,/,$$opt{titles}); # null_ok が 1 なら NULL チェックをしな い my $old_null = gn_db_set_null_check( $$opt{null_ok} ne '1' ); # デフォルト値の設定 %input に値がないと きに、指定されたマークから始まる # 値で置き換える if( $$opt{input_default_prefix} ne '' ) { my $mark = $$opt{input_default_prefix}; Modele: マクロ定義 Controller: ページ遷移 <% gna simple_confirm region=user_region table=userm %> (1) (2)(2) (3)(3) (4)(4) (5)(5)

GN/GNAフレームワークを使ってみ て (1) 利点:開発者のレベルによらない開発が出来 た あるプロジェクトのメンバー例 リーダー(アーキュテクト、兼業) ‥‥ 1 人 フレームワーク開発者(専用) ‥‥ 1人 アプリ開発者(専用) ‥‥ 1人 アプリ開発者(兼業) ‥‥ 3人 デザイナー(兼業) ‥‥ 1人 開発期間、品質ともに予想以上であった

GN/GNAフレームワークを使ってみ て (2) 問題点:いかにフレームワークの設計思 想、使い方を開発メンバーに理解しても らうか ドキュメント 講習会 サンプルコード QAミーティング

GN/GNAフレームワークを使ってみ て (3) 問題点: アプリとフレームワークの機能 拡張機能分担をどうするか アーキュテクト(リーダー)の洞察力 設計思想に立ち戻る 問題点ミーティング

Perl 2 年生の私がフレームワークを作るの に思ったこと・・・ (1) Perl は以前に思っていたより高速 Perl は以前に思っていたより 大規模なプログラム作 成に耐えられる言語 オブジェクト指向 vs 手続き型 吉田は Perl のオブジェクト指向がどうも好きになれなかっ た・・・ 実は Perl のオブジェクト指向を良く理解してないだけかも ^^); 手続き型を採用 逆QA: どうなんでしょう か?

Perl 2 年生の私がフレームワークを作るの に思ったこと・・・ (2) Module を積極的に使う・使わない? Module の信頼性はだいじょうぶ? とくに依存関係のある Module のバージョンアッ プは安全? Module 間でAPI等に一貫性がない? ほとんど Module は使わなかった 逆QA: どうなんでしょう か?

ご清聴 ありがとうございま す! GN/GNA フレームワークルーツに関する問い合わせ先 株式会社ユラス ♪♪♪ 吉田 裕美 (Yuumi Yoshida)