Grails -Groovyベースの高生産性Webアプリフレームワーク
|
|
|
- ゆうりゅう しげまつ
- 7 years ago
- Views:
Transcription
1 Groovy ベースの高生産性 Web アプリフレームワーク 2008/9/6 NTT ソフトウェア株式会社上原潤二
2 発表者 上原潤二 NTT ソフトウェア株式会社 翔泳社 Grails 徹底入門 執筆 ( 共著 ) ブログ Gr な日々 Grails Code Reading メンバ
3 発表内容 Grails とは何か Grails と Groovy Grails の特徴 まとめ
4 1. Grails とは何か
5 簡単に言うと Java EE を基盤とする Web ア プリフレームワーク.war 生成 Spring Framework Hibernate SiteMesh,etc, をベース Groovy DSL で開発 プラグイン機構
6 Grails は, かつて何であったか 幼名 Groovy on Rails Ruby on RailsのGroovy 版大きな影響多数のアイデア継承
7 Grails は, 今や何であるか 2 つの意味でメタフレームワーク フレームワークの集合体 ( フルスタック ) フレームワークを作るためのフレームワーク DSL 指向フレームワーク作成キット Grailsは実現サンプルの一つ
8 Grails の構成 View コマンドライン Gant Spring Webflow SiteMesh Spring MVC Jetty Logging その他 Log4j Controller Quartz Groovy, Spring Framework Canoo Webtest Testing JUnit Model GORM Hibernate HSQLDB
9 コマンドライン Gant ユーザ定義コマンド Controller URLマッピングコントローラー Quartz バッチタスクサービス Grails の構成 Spring Webflow View Testing Spring MVC GSP SiteMesh ダイナミックタグリブ Jetty Grails Webflow Groovy, Spring Framework ユニットテスト Canoo 統合テスト JUnit Webtest Logging その他 Log4j 各種の設定 Groovy DSL で記述する開発コード群 Model ドメインクラス定義マッピング GORM 制約サービス Hibernate HSQLDB
10 Grails の歴史 2006 年 3 月 20 日に 0.1 版リリース 2008 年 2 月 4 日 1.0 版リリース 2008 年 8 月 25 現在 最新版 欧州で開発が活発
11 2. Grails とGroovy
12 Grails & Groovy 主な開発者は両方のコミッター Grails の成果も逐次 Groovy に フィードバック Groovy:Grails の最重要技術 Grails :Groovy のキラー応用
13 Groovy とは何か (1) Groovy は Java 言語の拡張である C C++ Java Groovy Java と共有 JVM 動作原理 / ライブラリ共通 開発スキル
14 Groovy とは何か (2) C++ = C + オブジェクト指向 Groovy = Java +? 動的高抽象 簡潔記述拡張可 ( 内部 DSL) クロージャ活躍
15 Groovy コード例 Java import java.util.*; public class HashMapTest { public static void main(string[] arg) { Map<String,Integer> map = new HashMap<String,Integer>(); map.put(" 太郎 ", 35); map.put(" 次郎 ", 30); map.put(" 三郎 ", 20); for (Map.Entry<String,Integer> entry : map.entryset()) { System.out.println(entry.getKey()+":"+entry.getValue()); } } } Groovy map = [ 太郎 :35, 次郎 :30, 三郎 :20] map.each { println "${it.key}:${it.value}" } 簡潔記述 を強調する Groovy のコード例 動的性質 拡張性など 他の性質については表現できていない
16 3. Grails の特徴
17 Grails の特徴 1.Grails 流儀化されたフレームワークの集合体 2.Groovy ベースの DSL でロジックと設定を書く 3. 非グラフィカル統合環境 4.CoC, DRY+ 5.Scaffold 6. プラグイン
18 Grails の特徴 1.Grails 流儀化されたフレームワークの集合体 2.Groovy ベースの DSL でロジックと設定を書く 3. 非グラフィカル統合環境 4.CoC, DRY+ 5.Scaffold 6. プラグイン
19 Grails 流儀化 既存 Java フレーワークを 下記 が可能になるように Wrap 記述 設定を DSL で表現 適度な CoC より動的に プラグイン化
20 Grails 流儀化 (GORM) Grails 流儀化された Grails 流儀化された Grails 流儀化された Grails 流儀化された Grails Grails 流儀化された
21 Grails の特徴 1.Grails 流儀化されたフレームワークの集合体 2.Groovy ベースの DSL でロジックと設定を書く 3. 非グラフィカル統合環境 4.CoC, DRY+ 5.Scaffold 6. プラグイン
22 Groovy DSL で記述 (1) ドメインクラス class Person { int age = 18 String name static constraints = { age min:18, nullable:false name size: } static belongsto = Group } テーブル定義に該当 制約記述用 DSL 関連の表現 grails-app/domain 配下に置く
23 Groovy DSL で記述 (2) } ドメインクラス class Person { int age = 18 String name static constraints = { age min:18, nullable:false name size: } static belongsto = Group スキャフォルド生成されたビュー : <input type="text maxlength="30" id="name name="name" value=""/> テーブル定義 create table person ( id bigint generated by default as identity (start with 1), version bigint not null, age integer not null, name varchar(30), primary key (id) )
24 Groovy DSL で記述 (3) URL マッピング class UrlMappings { static mappings = { "/$blog/$year?/$month?/$day?/$id?" { controller = "blog" action = "show" constraints { year(matches:/d{4}/) } month(matches:/d{2}/) day(matches:/d{2}/) } } "500"(view:'/error') URL パターンにマッチングさせると同時に部分文字列を変数に代入 追加的マッチング条件
25 Groovy DSL で記述 (4) Quartz( プラグイン ) class MyJob { def cronexpression = * *? def execute() { // 処理実行 } } grails-app/jobs 配下に書くだけでバッチ実行
26 Groovy DSL で記述 (5) ダイナミック Taglib class HogeTaglib { def mytag = { out << HELLO } } grails-app/taglib に置くだけ GSP 中の <g:mytag/> が HELLO に展開.tld XML コンパイル jar 単体試験しやすい 不要
27 その他 DSL 大活躍 設定ファイル一般 (ConfigSlurper) フィルタ記述 GSP(just like JSP, but not sucks!) Spring Bean 設定 (BeanBuilder) Webflow の画面遷移フロー定義 Hibernate マッピング定義 Hibernate のクエリ定義 Json 記述 (JSonBuilder) :
28 Groovy をとことん使うための Groovy は簡単 しかし以下は困難 DSL を作る 動的性質を最大限引き出す ( リロード 更新伝播 ) CoC DRY を駆使 既存 Java ライブラリ フレームワーク 類を 一定の流儀で統合 Grails: 上記の定式化された仕組み
29 Grails の特徴 1.Grails 流儀化されたフレームワークの集合体 2.Groovy ベースの DSL でロジックと設定を書く 3. 非グラフィカル統合環境 4.CoC, DRY 原則 5.Scaffold 6. プラグイン
30 grails コマンド群 定型処理コマンド群 grails <command> Command: bootstrap bug-report clean compile console create-app create-controller create-domain-class create-integration-test create-plugin create-script create-service create-tag-lib create-unit-test doc generate-all generate-controller generate-views help install-plugin install-templates list-plugins package-plugin package plugin-info release-plugin run-app-https run-app set-proxy set-version shell stats test-app upgrade scrip war それぞれの実体は Gant(Groovy 版 rake) スクリプト GRAILS-APP/scripts/XxxYyy.groovy
31 プロジェクトフォルダ構成 grails createapp でここ以下の構造が生成される Grails アプリとしての基本構造 メッセージバンドルとか Java コードもここに置けば再起動無しで自動コンパイル 更新可能 テストコードとテストレポートはここに grails war で生成される Jar のための情報
32 Grails の特徴 1.Grails 流儀化されたフレームワークの集合体 2.Groovy ベースの DSL でロジックと設定を書く 3. 非グラフィカル統合環境 4.CoC, DRY+ 5.Scaffold 6. プラグイン
33 CoC の例 クラス名が Service で終わるクラスは自動的にインスタンス化されて依存性注入 HogeController.groovy class HogeController { def hogeservice : hogeservice.sayhello() } HogeService.groovy class HogeService { void sayhello() { } } ちなみに Service クラスは ( 断らない限り ) トランザクション境界
34 CoC with DSL XML 設定ファイルは書かない 適度な CoC 規約の動作を変える場合 DSL で明示指定
35 DRY の先にあるもの リピートしないのは当然 記述を極小化 最適化 必要最低限の最適な記法 を考えるところから入る 最適な記述 >>> 実装都合 制約
36 Grails の開発手順 (11 回目 ) 1. 最適な DSL を考える 2. その DSL を実装する 3. その DSL で業務ロジックを書 きくだす 4. 実行する
37 Grails の開発手順 (2 回目以降 ) 1. 最適な DSL を考える SKIP 2. その DSL を実装する 1. そのDSLで業務ロジックを書きくだす 2. 実行する Web アプリ開発に関していまここ (Grails)
38 Grails の開発手順 (2 回目以降 ) 1. 最適な DSL を考える SKIP 2. その DSL を実装する 1. そのDSLで業務ロジックを書きくだす 2. 実行する Web アプリ開発に関していまここ (Grails) 1,2 は必要に応じプラグイン化
39 従来の開発手順 ( 例 ) 1. UML で論理モデルを書き下す簡潔に書き下すための特別な記法 業界慣例の記法を活かす などの希望はかなえられにくい 2. ( 必要に応じ )UML で実装モデルに書き直す 3. フレームワークなどの都合に合わせ Java や XML など既存言語で 実装都合に合わせ全面的に書き直す 最小記述とか抽象性とかの希望よりも 実装技術制約が優先される 4. 実行する 2 回目以降 も同様
40 Grails の特徴 1.Grails 流儀化されたフレームワークの集合体 2.Groovy ベースの DSL でロジックと設定を書く 3. 非グラフィカル統合環境 4.CoC, DRY 原則 5.Scaffold 6. プラグイン
41 Scaffold CRUD ビューの自動生成 静的スキャフォールド 動的スキャフォールド GSP ページやコントローラクラスは ファイルとしては存在しない テンプレートから動的に生成 マスター管理系は非常に楽
42 Scaffold 画面例
43 Grails の特徴 1.Grails 流儀化されたフレームワークの集合体 2.Groovy ベースの DSL でロジックと設定を書く 3. 非グラフィカル統合環境 4.CoC, DRY 原則 5.Scaffold 6. プラグイン
44 Grails プラグイン 拡張モジュール コマンド 1 発オンラインインストール 更新検出 / 伝播 リロードの枠組み 豊富なプラグイン ( 標準リポジトリで 92 個 ) Grails プラグインの集合 Codecs-plugin, Controllers-plugin, Hibernate-plugin, DomainClass-plugin, UrlMappings-plugin 再利用単位として秀逸
45 再利用単位としてのプラグイン プラグインはアプリケーションと相似形 MyApp MyPlugin
46 アプリケーションと相似形なので プラグインは ビューを含むことができる テストを含むことができる サポートスクリプトを含むことができる 配布単位として独立性が高い クラス コンポーネントより粗粒度 アプリ開発と同列のサポート
47 プラグインが再利用しやすい理由 DSL には 実装都合による依存 結合が ユーザコード上に現れない (or 少ない ) DSL 表現は 受身 の存在 データに近い
48 4. まとめ
49 Grails は Java プログラマー向けの アジャイル開発を容易にする 拡張を前提としたフレームワーク プラグインによる再利用 DSL 指向開発
50 Grails の問題点 Grails による隠蔽は十分? Spring は当面良く知らなくても OK Hibernate は会得必須 性能面 Java より遅いのは確実 Groovy1.6 で高速化期待 デバッガ欲しい
51 参考情報 その他
52 日本語書籍 Grails 徹底入門 ~Groovy+ Grails で実現するエンタープライズアジャイル開発 翔泳社 2008 年 8 月 25 発売 Groovy イン アクション 日本語版, 毎日コミュニケーションズ,2008 年秋
53 コミュニティ Grails Code Reading 第 2 回 07/08/24 groovy 第 3 回 07/09/19 grails 実行ひとめぐり第 4 回 07/10/31 プラグイン第 5 回 07/11/29 acegi プラグイン第 6 回 07/12/21 webflow 第 7 回 08/01/28 ビュー周り (GSP, taglib) 第 8 回 08/02/27 モデル周り第 9 回 08/03/27 Service 周りと Command Object 第 10 回 08/04/24 リッチ UI を見ました. 第 11 回 08/05/22 ビルダ第 12 回 08/07/4 アーティファクト (+ BeanBuilder, Spring?)
54 ご清聴ありがとうございました
利用者
Regional SNS 開発環境構築ガイド 2012 年 2 月 29 日 株式会社ネットワーク応用通信研究所 目次 1. はじめに... 1 2. 前提条件... 1 3. 必要なソフトウェア構成... 1 4. ソフトウェアの導入手順... 1 4.1. 必要ファイルのダウンロード... 1 4.2. 環境設定コマンドの実行... 2 4.3. RegionalSNS の実行... 2 4.4.
Microsoft Word - tutorial3-dbreverse.docx
株式会社チェンジビジョン使用バージョン :astah* 6.0, 6.1 [ ] サンプル サポート対象外 目次 DB リバースを使ってみよう ( サンプル サポート対象外 ) 2 ご利用の前に 2 予備知識 2 データベースの環境設定をしてみよう 2 astah* データベースリバースコンポーネントを使用してみよう 5 作成した asta ファイルを astah* professional で開いてみよう
(Microsoft PowerPoint - ClickFramework.ppt [\214\335\212\267\203\202\201[\203h])
Click Framework ~Simple is the Best~ NTT データ先端技術 竹添直樹 [email protected] 1 自己紹介 竹添直樹 ( たけぞう ) NTT データ先端技術所属 OSS 関連 Project Amaterasオーナー Click Framework コミッタ Seasarプロジェクトコミッタ FreeStyle Wiki 2 3 仕事で使っているフレームワークは何ですか?
PowerPoint プレゼンテーション
5 月 Java 基礎 1 タイトル Java 基礎 2 日間 概要 目的 サーバサイドのプログラミング言語で最もシェアの高い Java SE の基本を習得します 当研修ではひとつの技術ごとに実用的なアプリケーションを作成するため 効果的な学習ができます Java SE の多くの API の中で 仕事でよく利用するものを中心に効率よく学びます 実際の業務で最も利用される開発環境である Eclipse
Javaの作成の前に
メディアプロジェクト演習 1 参考資料 Javaとは JavaScript と Java 言語の違い オブジェクト指向 コンストラクタ サーブレット 本資料内のページ番号は, 以下の参考書のページを引用している 高橋麻奈 : やさしい Java, ソフトバンククリエイティブ (2,625 円 ) はじめに プログラミング言語とは? オブジェクト指向とは? Java 言語とは? JavaとJavaScriptの違いとは?
IronPython による柔軟なゲーム開発 筑波大学 AmusementCreators
IronPython による柔軟なゲーム開発 筑波大学 AmusementCreators 自己紹介 Amusement Makers ではありません 注意 IronPython って?.Net Framework および Mono 上で動作する Python.NetFramework Mono は共通中間言語 (CIL) のための仮想マシン CIL が動く仮想マシンの仕様は共通言語基盤 (CLI)
ガイダンス
情報科学 B 第 2 回変数 1 今日やること Java プログラムの書き方 変数とは何か? 2 Java プログラムの書き方 3 作業手順 Java 言語を用いてソースコードを記述する (Cpad エディタを使用 ) コンパイル (Cpad エディタを使用 ) 実行 (Cpad エディタを使用 ) エラーが出たらどうしたらよいか??? 4 書き方 これから作成する Hello.java 命令文 メソッドブロック
Java言語 第1回
Java 言語 第 2 回簡単な Java プログラムの作成と実行 知的情報システム工学科 久保川淳司 [email protected] 簡単な Java プログラム Java プログラムのファイル名 Java プログラムのファイル名命名ルール ファイル名とクラス名は同じでなければならない HelloJava.java public class HelloJava { public
メディプロ1 Javaプログラミング補足資料.ppt
メディアプロジェクト演習 1 Javaプログラミング補足資料 l Javaとは l JavaScript と Java 言語の違い l オブジェクト指向 l コンストラクタ l 継承 抽象クラス 本資料内のページ番号は, 以下の参考書のページを引用している高橋麻奈 : やさしい Java, ソフトバンククリエイティブ (2,625 円 ) はじめに l プログラミング言語とは? l オブジェクト指向とは?
プログラミング基礎I(再)
山元進 クラスとは クラスの宣言 オブジェクトの作成 クラスのメンバー フィールド 変数 配列 メソッド メソッドとは メソッドの引数 戻り値 変数の型を拡張したもの 例えば車のデータベース 車のメーカー 車種 登録番号などのデータ データベースの操作 ( 新規データのボタンなど ) プログラムで使う部品の仕様書 そのクラスのオブジェクトを作ると初めて部品になる 継承 などの仕組みにより カスタマイズが安全
Dolteng Scaffoldに対する機能追加とマスタ-ディテールScaffoldの紹介
Dolteng Scaffold に対する機能追加 とマスタ - ディテール Scaffold の紹介 せいいち (takao) 2009/03/07 目次 Dolteng Scaffold に対する機能追加 Scaffold に関して Ruby on Rails の Scaffold RoR Scaffold と Dolteng Scaffold の比較 Scaffold のデモ Scaffold
メソッドのまとめ
メソッド (4) 擬似コードテスト技法 http://java.cis.k.hosei.ac.jp/ 授業の前に自己点検以下のことがらを友達に説明できますか? メソッドの宣言とは 起動とは何ですか メソッドの宣言はどのように書きますか メソッドの宣言はどこに置きますか メソッドの起動はどのようにしますか メソッドの仮引数 実引数 戻り値とは何ですか メソッドの起動にあたって実引数はどのようにして仮引数に渡されますか
JavaプログラミングⅠ
Java プログラミング Ⅰ 12 回目クラス 今日の講義で学ぶ内容 クラスとは クラスの宣言と利用 クラスの応用 クラス クラスとは 異なる複数の型の変数を内部にもつ型です 直観的に表現すると int 型や double 型は 1 1 つの値を管理できます int 型の変数 配列型は 2 5 8 6 3 7 同じ型の複数の変数を管理できます 配列型の変数 ( 配列変数 ) クラスは double
コンピュータ中級B ~Javaプログラミング~ 第3回 コンピュータと情報をやりとりするには?
Copyright (C) Junko Shirogane, Waseda University 2016, All rights reserved. 1 プログラミング初級 (Java) 第 10 回オブジェクト指向って? 白銀純子 Copyright (C) Junko Shirogane, Waseda University 2016, All rights reserved. 2 第 10
intra-mart Accel Platform — イベントナビゲータ 開発ガイド 初版
Copyright 2013 NTT DATA INTRAMART CORPORATION 1 Top 目次 intra-mart Accel Platform イベントナビゲータ開発ガイド初版 2013-07-01 改訂情報概要イベントフローの作成 更新 削除をハンドリングするイベントフローを非表示にする回答を非表示にするリンクを非表示にするタイトル コメントを動的に変更するリンク情報を動的に変更するナビゲート結果のリンクにステータスを表示する
2 Java 35 Java Java HTML/CSS/JavaScript Java Java JSP MySQL Java 9:00 17:30 12:00 13: 項目 日数 時間 習得目標スキル Java 2 15 Web Java Java J
1 2018 4 Java 35 35 262.5 30 1 1 1,045,300 653,300 656,000 2017 12 389,300 2,700 2 946,900 554,900 290,900 101,100 1 2 Java Java Java Web Eclipse Java List Set Map StringBuilder HTML/CSS/JavaScript JSP/Servlet
Oracle SOA Suite 11gコンポジットに対するSOASchedulerの構成
Oracle SOA Suite 11g コンポジットに対する SOAScheduler の構成 オラクル Senior Solution Architect Robert Baumgartner 2010 年 11 月 Oracle SOA Suite 11g コンポジットに対する SOAScheduler の構成 1 前提条件 https://soasamples.samplecode.oracle.com/
S2DaoでもN:Nできます
S2Dao でも N:N できます 1 自己紹介 名前 : 木村聡 ( きむらさとし ) Seasarプロジェクトコミッタ : S2Struts S2Mai 舞姫 仕事 ( 株 ) フルネス フレームワーク 自動生成ツール 2 これまで書いたものとか 書籍 : Eclipse で学ぶはじめての Java Seasar 入門 ~ はじめての DI&AOP~ 雑誌 Web 記事 CodeZine DB
Webシステム授業資料
Web システムプログラミング b 第 12 講目 Web システムプログラミング講義資料 到達目標 到達目標 Web システムを設計し 開発できること 最終成果物 : 学生生活で利用できる Web システム 授業計画 第 09 講 (12/03):Webシステムの基本設計 (1) 第 10 講 (12/10):Webシステムの基本設計 (2) 第 11 講 (12/17):WebシステムのDB 設計
intra-mart Accel Platform — 外部ソフトウェア接続モジュール 仕様書 第3版
Copyright 2012 NTT DATA INTRAMART CORPORATION 1 Top 目次 改訂情報はじめに本書の目的対象読者本書の構成概要外部ソフトウェア接続モジュールとは仕様外部ソフトウェア接続モジュールの構成サンプルプログラムサンプル内容動作に必要な環境構築プログラムソースログイン セキュリティ環境の構築外部ソフトウェア連携時の認可設定 2 改訂情報 変更年月日 変更内容 2012-12-21
intra-mart Accel Platform — イベントナビゲータ 開発ガイド 初版 None
クイック検索検索 目次 Copyright 2013 NTT DATA INTRAMART CORPORATION 1 Top 目次 intra-mart Accel Platform イベントナビゲータ開発ガイド初版 2013-07-01 None 改訂情報概要イベントフローの作成 更新 削除をハンドリングするイベントフローを非表示にする回答を非表示にするリンクを非表示にするタイトル コメントを動的に変更するリンク情報を動的に変更するナビゲート結果のリンクにステータスを表示する
1.SqlCtl クラスリファレンス SqlCtl クラスのリファレンスを以下に示します メソッドの実行中にエラーが発生した場合は標準エラー出力にメッセージを出力します (1)Connect() メソッド データベースへ connect 要求を行います boolean Connect(String
目次 1.SqlCtl クラスリファレンス 2 (1)Connect() メソッド 2 (2)DisConnect() メソッド 3 (3)Commit() メソッド 3 (4)Rollback() メソッド 4 2.SqlStm クラスリファレンス 5 (1)Prepare() メソッド 5 (2)Execute() メソッド 6 (3)Release() メソッド 6 (4)Immediate()
個人依存開発から組織的開発への移行事例 ~ 要求モデル定義と開発プロセスの形式化 による高生産性 / 高信頼性化 ~ 三菱電機メカトロニクスソフトウエア ( 株 ) 和歌山支所岩橋正実 1
個人依存開発から組織的開発への移行事例 ~ 要求モデル定義と開発プロセスの形式化 による高生産性 / 高信頼性化 ~ 三菱電機メカトロニクスソフトウエア ( 株 ) 和歌山支所岩橋正実 [email protected] [email protected] 1 改善効果 品質 : フロントローディングが進み流出不具合 0 継続生産性 : 平均 130% 改善 工数割合分析
メディプロ1 Javaサーブレット補足資料.ppt
メディアプロジェクト演習 1 Java サーブレット補足資料 CGI の基本 CGI と Java サーブレットの違い Java サーブレットの基本 インタラクティブな Web サイトとは Interactive q 対話 または 双方向 q クライアントとシステムが画面を通して対話を行う形式で操作を行っていく仕組み 利用用途 Web サイト, シミュレーションシステム, ゲームなど WWW = インタラクティブなメディア
Rmenuフレームワーク
ジェネレーティブプログラミングの世界 データマッピングフレームワーク Rmenu 特徴プログラムから データとプロセスを完全分離 疑問本当にデータとプロセスが完全分離できるのか? どんな仕組みで業務システムが動くのか? 日本オフィスクリエイション株式会社下地忠史 2014 年 2 月 15 日 Agenda 1. アプリケーションの基本 2.Json の特徴を利用した項目移送 3. アプリケーションのデータフロー
java_servlet2_見本
13 2 JSF Web 1 MVC HTML JSP Velocity Java 14 JSF UI PC GUI JSF Web 2.1 JSF JSF Web FORM FORM 2-1 JSF role, JSF JSF 15 Web JSF JSF Web Macromedia JSF JSF JSF 2.2 / Subscriber package com.mycompany.newsservice.models;
10th Developer Camp - B5
B5 PHP テクニカルセッション Delphi for PHP で作るリッチコンテンツブログ エンバカデロ テクノロジーズエヴァンジェリスト高橋智宏 アジェンダ コンポーネントをフル活用しよう お馴染み データモジュール Blog データの表示用ページ Blog データの登録用ページ 2 コンポーネントをフル活用しよう 開発環境の進歩と退化 80 年代の IDE が登場エディタ + コマンドライン型の開発から脱却
intra-mart Accel Platform — IM-BloomMaker プログラミングガイド 初版
Copyright 2019 NTT DATA INTRAMART CORPORATION 1 Top 目次 1. 改訂情報 2. はじめに 2.1. 本書の目的 2.2. 対象読者 2.3. サンプルコードについて 2.4. 本書の構成 3. 前処理プログラム 3.1. 前処理を実装する 3.1.1. 前処理の実装方式 3.1.2. 前処理の実行順序と引数 3.1.3. リクエストパラメータの解析
文字列操作と正規表現
文字列操作と正規表現 オブジェクト指向プログラミング特論 2018 年度只木進一 : 工学系研究科 2 文字列と文字列クラス 0 個以上の長さの文字の列 Java では String クラス 操作 文字列を作る 連結する 文字列中に文字列を探す 文字列中の文字列を置き換える 部分文字列を得る 3 String クラス 文字列を保持するクラス 文字列は定数であることに注意 比較に注意 == : オブジェクトとしての同等性
2
Java Festa in 2007 OPEN JAVA: IMAGINE THE POSSIBILITIES 2 3 4 Java SE のダウンロード数の比率 1996/12 からのダウンロード数 5 JavaOne 2007 5/7: CommunityOne > NetBeans Day, GlassFish, OpenSolaris, OpenJDK, Web 2.0 5/8-11: JavaOne
Microsoft PowerPoint - 09.pptx
情報処理 Ⅱ 第 9 回 2014 年 12 月 22 日 ( 月 ) 関数とは なぜ関数 関数の分類 自作関数 : 自分で定義する. ユーザ関数 ユーザ定義関数 などともいう. 本日のテーマ ライブラリ関数 : 出来合いのもの.printf など. なぜ関数を定義するのか? 処理を共通化 ( 一般化 ) する プログラムの見通しをよくする 機能分割 ( モジュール化, 再利用 ) 責任 ( あるいは不具合の発生源
PowerPoint Presentation
ProjectLA バックエンドの技術解説 RDF を使った三つ組みデータの格納 2013/03/14 クラウド テクノロジー研究部会リーダー荒本道隆 ( アドソル日進株式会社 ) 何故 RDF か? 断片的なデータを相互につなぎたい RDFは主語 述語 目的語の三つ組構造で表現 目的語と主語に同じ値を設定して それぞれをつなぐ 属性を事前に決定できない RDFはスキーマレスなので 柔軟に対応できる
PowerPoint Presentation
Webデザイン特別プログラムデータベース実習編 3 MySQL 演習, phpmyadmin 静岡理工科大学総合情報学部幸谷智紀 http://na-inet.jp/ RDB の基礎の基礎 RDB(Relational DataBase) はデータを集合として扱う データの取り扱いはテーブル (= 集合 ) の演算 ( 和集合, 積集合 ) と同じ データベースには複数のテーブルを作ることができる
メール全文検索アプリケーション Sylph-Searcher のご紹介 SRA OSS, Inc. 日本支社技術部チーフエンジニア Sylpheed 開発者 山本博之 Copyright 2007 SRA OSS, Inc. Japan All right
メール全文検索アプリケーション Sylph-Searcher のご紹介 SRA OSS, Inc. 日本支社技術部チーフエンジニア Sylpheed 開発者 山本博之 [email protected] Sylph-Searcher とは Sylpheed 向け電子メール全文検索アプリケーション PostgreSQL 8.2の全文検索機能を利用 Linux/Unix Windows 2000
rcp-add-01:アーキテクチャ設計書
Web 注文管理システム ( サンプル ) 履歴 バージョン 改訂内容 改訂者 改訂日 0.1 新規作成 山下 2010/11/1 目次 1. はじめに 1.1 本文書の目的 1.2 参照資料 / 文献 2. 概説 2.1 アーキテクチャ要件 2.3 対象とする機能要件 ( ユースケース ) 2.4 アーキテクチャ設計方針 2.4 仮定と依存 3. 構造及び構成 3.1 物理配置図 3.2 実行環境
Microsoft PowerPoint - chap10_OOP.ppt
プログラミング講義 Chapter 10: オブジェクト指向プログラミング (Object-Oriented Programming=OOP) の入り口の入り口の入り口 秋山英三 F1027 1 例 : 部屋のデータを扱う // Test.java の内容 public class Test { public static void main(string[] args) { double length1,
intra-mart Accel Platform — IM-Repository拡張プログラミングガイド 初版
Copyright 2018 NTT DATA INTRAMART CORPORATION 1 Top 目次 1. 改訂情報 2. はじめに 2.1. 本書の目的 2.2. 対象読者 2.3. サンプルコードについて 2.4. 本書の構成 3. 辞書項目 API 3.1. 最新バージョン 3.1.1. 最新バージョンの辞書を取得する 3.2. 辞書項目 3.2.1. 辞書項目を取得する 3.2.2.
Oracle Un お問合せ : Oracle Data Integrator 11g: データ統合設定と管理 期間 ( 標準日数 ):5 コースの概要 Oracle Data Integratorは すべてのデータ統合要件 ( 大量の高パフォーマンス バッチ ローブンの統合プロセスおよ
Oracle Un お問合せ : 0120- Oracle Data Integrator 11g: データ統合設定と管理 期間 ( 標準日数 ):5 コースの概要 Oracle Data Integratorは すべてのデータ統合要件 ( 大量の高パフォーマンス バッチ ローブンの統合プロセスおよびSOA 対応データ サービスへ ) を網羅する総合的なデータ統合プラットフォームです Oracle
Brekeke PBX - Version 2.1 ARSプラグイン開発ガイド
Brekeke PBX Version 2.1 ARS プラグイン開発ガイド Brekeke Software, Inc. バージョン Brekeke PBX v2.1 ARS プラグイン開発ガイド, 2008 年 2 月 著作権本書の著作権は Brekeke Software, Inc. にあります Copyright 2003-2008 Brekeke Software, Inc. 本書の一部または全部を
た場合クラスを用いて 以下のように書くことが出来る ( 教科書 p.270) プログラム例 2( ソースファイル名 :Chap08/AccountTester.java) // 銀行口座クラスとそれをテストするクラス第 1 版 // 銀行口座クラス class Account String name
クラス ( 教科書第 8 章 p.267~p.297) 前回は処理をまとめる方法として メソッドについて学習した 今回はメソッドとその処理の対象となるデータをまとめるためのクラスについて学習する このクラスはオブジェクト指向プログラミングを実現するための最も重要で基本的な技術であり メソッドより一回り大きなプログラムの部品を構成する 今回はクラスにおけるデータの扱いとクラスの作成方法 使用方法について説明していく
Exam : 1z1-809-JPN Title : Java SE 8 Programmer II Vendor : Oracle Version : DEMO Get Latest & Valid 1z1-809-JPN Exam's Question and Answers 1 from Ac
Actual4Test http://www.actual4test.com Actual4test - actual test exam dumps-pass for IT exams Exam : 1z1-809-JPN Title : Java SE 8 Programmer II Vendor : Oracle Version : DEMO Get Latest & Valid 1z1-809-JPN
grails web applications plug-ins grails groovy spring, hibernate,... jdk libraries JVM 2
colloquial model-driven development (nichijou kaiwa teki moderu kudou kaihatsu) [email protected] 2007.06.27 1 grails web applications plug-ins grails groovy spring, hibernate,... jdk libraries JVM
QualysGuard(R) Release Notes
QualysGuard リリースノート Web Application Scanning 3.0 2013 年 4 月 17 日 QualysGuard WAS 3.0 では 使いやすさの向上とレポート機能の拡張が行われました Web アプリケーションのマルウェア監視機能の紹介 Burp Suite との統合の紹介新しい脆弱性検出ブラウザ削除する Web アプリケーションに関するレポートの作成パージする
C#の基本
C# の基本 ~ 開発環境の使い方 ~ C# とは プログラミング言語のひとつであり C C++ Java 等に並ぶ代表的な言語の一つである 容易に GUI( グラフィックやボタンとの連携ができる ) プログラミングが可能である メモリ管理等の煩雑な操作が必要なく 比較的初心者向きの言語である C# の利点 C C++ に比べて メモリ管理が必要ない GUIが作りやすい Javaに比べて コードの制限が少ない
Java講座
~ 第 1 回 ~ 情報科学部コンピュータ科学科 2 年竹中優 プログラムを書く上で Hello world 基礎事項 演算子 構文 2 コメントアウト (//, /* */, /** */) をしよう! インデントをしよう! 変数などにはわかりやすい名前をつけよう! 要するに 他人が見て理解しやすいコードを書こうということです 3 1. Eclipse を起動 2. ファイル 新規 javaプロジェクト
スライド 1
XML with SQLServer ~let's take fun when you can do it~ Presented by 夏椰 ( 今川美保 ) Agenda( その 1) XML XML XSLT XPath XML Schema XQuery Agenda( その 2) SQLServer における XML XML 型 XML Schema XQuery & XPath チェック制約
intra-mart Accel Platform — IM-共通マスタ スマートフォン拡張プログラミングガイド 初版
Copyright 2012 NTT DATA INTRAMART CORPORATION 1 Top 目次 1. 改訂情報 2. IM- 共通マスタの拡張について 2.1. 前提となる知識 2.1.1. Plugin Manager 2.2. 表記について 3. 汎用検索画面の拡張 3.1. 動作の概要 3.1.1. 汎用検索画面タブの動作概要 3.2. 実装の詳細 3.2.1. 汎用検索画面タブの実装
Microsoft PowerPoint - IAF フォーラム2015講演資料_PLCopenJapan_A02.pptx
PLCopen / OPC UA 通信仕様と PLCopen XML の紹介 ~PLC プログラムの生産システムエンジニアリング連携に向けて ~ Industrial Automation Forum - Forum 2015 PLCopen Japan Page 1 PLCopen の主な取り組み PLCopen は IEC 61131-3 プログラミングの普及促進と関連技術仕様の策定を う 営利団体
基本情報STEP UP演習Java対策
トレーニング編 1. 予約語 extends アクセスレベル class サブクラス名 extends スーパクラス名 { (1) スーパクラス ( 既存のクラス ) を拡張して, サブクラス ( 新しいクラス ) を定義する場合に extends を利用する (2) extends の後ろには, スーパクラスの名前を一つだけ指定できる (3) サブクラスからインスタンスを生成すると, スーパクラスに定義されたインスタンス変数やメソッドがこのインスタンス内部に引き継がれる
ETOS 画面の Web 化 / 帳票印刷のオープン化体験お試し変換サービスのご紹介 ACOS-4 システムの業務改善提案
ETOS 画面の Web 化 / 帳票印刷のオープン化体験お試し変換サービスのご紹介 システムの業務改善提案 お客様業務の改善を提案します オンライン業務の改善 a.etos 画面のビュー改善 : 画面のオープン化を体験してみませんか! b. オープンプリンタへの印刷 : 帳票印刷のオープン化を体験してみませんか! Web アプリケーションお試し変換サービス をご利 ください ( 次ページ以降でご紹介
JavaプログラミングⅠ
Java プログラミング Ⅱ 3 回目クラスの機能 (1) アクセス制限 オーバーロード課題 確認 問題次の各文は正しいか誤っているか答えなさい (1) クラスの private メンバは そのクラスからのみアクセス可能なメンバである (2) 一般に クラスのフィールドはどこからでもアクセスできるように public メンバで宣言すべきである (3) クラスは private メンバと public
About me! 足立昌彦 / +Masahiko.Adachi )! バイドゥ株式会社技術顧問 (Simeji)! 株式会社カブク Co-Founder! Google Developer Expert (Android)
Discover Support Library Masahiko Adachi @adamrokcer / +Masahiko.Adachi 28 th Sep, 2013 About me! 足立昌彦 ( @adamrocker / +Masahiko.Adachi )! バイドゥ株式会社技術顧問 (Simeji)! 株式会社カブク Co-Founder! Google Developer Expert
