Factory Method. Factory Method. Resource Mgt in App Framework. An Example: A Framework for Productivity ( Office ) Applications

Size: px
Start display at page:

Download "Factory Method. Factory Method. Resource Mgt in App Framework. An Example: A Framework for Productivity ( Office ) Applications"

Transcription

1 Factory Method Factory Method A method to instantiate a class and initializes a class instance without using its constructors Uses a regular (i.e., non-constructor) method. Lets a class defer instantiation to subclasses. Define an abstract class for creating an instance. Let its subclasses decide which class to instantiate. 1 2 An Example: A for Productivity ( Office ) s framework A set of foundation APIs to implement and run a series of applications. Implement the standard/common functionalities (structures and behaviors) among individual applications Make them reusable/available for individual apps. Make app development easier and faster. s for productivity ( office ) applications e.g.,.net, Microsoft Foundation Class (MFC), Cocoa, OpenOffice, GNOME, KDE, etc. Spreadsheet Presentation App 3 in App management Creating, opening and closing resources such as documents, spreadsheets, presentation sheets, s and notes. Saving resources in the local disk or a remote cloud. Renaming resources. Exporting resources as other formats. Here, we focus on the creation of resources. Spreadsheet Presentation In/Out App 4

2 In Microsoft Office s Assumptions for Creation Multiple applications exist on an app framework. Extra applications may be developed in the near future. Different applications create and use different types of resources. When an application creates a new resource, it opens a blank resource. Each application creates one resource at a time, but can keep multiple resources open. Each application records the list of resources that it opened recently. 5 6 Requirements for Creation Multiple applications exist. Different applications create and use different types of resources. When an application creates a new resource, it opens a blank resource. should create a document. Excel should create a spreadsheet. PPT should create a slide set. Excel PPT Doc Spreadsheet SlideSet Excel PPT Doc Spreadsheet SlideSet Spreadsheet Presentation Spreadsheet Presentation App 7 App 8

3 Each application creates one resource at a time, but can keep multiple resources open. Each application records the list of resources that it opened recently. Extra applications may be developed in the near future. An app to be developed in the future should create a particular resource associated to that app. We don t know the app-resource pair now. How can we implement the common creation logic in the framework level (i.e., with and ) without knowing s and s subclasses? Excel PPT Doc Spreadsheet SlideSet Excel PPT Doc Spreadsheet SlideSet Spreadsheet Presentation Spreadsheet Presentation App 9 App 10 Solve this Design Issue with Factory Method + new(): # create(): + getopens(): ArrayList<> + getrecents(): ArrayList<> protected and abstract - opens - recents Create a resource, open it, and add it to opens and recents. + new(): # create(): + getopens(): ArrayList<> + getrecents(): ArrayList<> - opens - recents Create a resource, open it, and add it to opens and recents. # create(): Create an instance of Doc and return it. Doc 11 word = new (); word.new(); 12

4 + new(): # create(): + getopens(): ArrayList<> + getrecents(): ArrayList<> # create(): word = new (); word.new(); - opens - recents res = create(); res.open(); opens.put(res); recents.put(res); return res; return new Doc(); Doc 13 The framework What s the Point? new() provides a skeleton (or template) for resource creation. Partially implements a common procedural sequence for resource creation. Never specify specific types (specific class names) for apps and their resources. (framework client) Reuses the skeleton/template for resource creation and completes it By specifying which application class and which resource class are used. 14 What Factory Method Does Define a factory method (new()) in. Have it implement a common procedural sequence (a skeleton or template) for resource creation and initialization with an empty protected method (create()). Benefits The framework Can define a common procedural sequence (a skeleton or template) for resource creation and initialization. Allows individual apps to reuse it. Less redundant code in apps. Does not have to know app-resource pairs (i.e., which specific apps uses which specific resources). 15 Can force every single app to follow the same behavior (i.e. same sequence for instance creation and initialization) when it creates a new resource. 16

5 Another Example: in Integrated Development Environments (IDEs) Imagine an IDE like Eclipse, for example. s in an IDE Programs (e.g., Java, JavaScript, C++, etc.) XML files (e.g., build.xml for Ant, web.xml for Servlet WAR), etc. s, Syntax Highlighters and s IDE Many IDE components (e.g., plugins) use resources. s, syntax highlighters, etc. Java Java XML XML C++ C++ Java JSP Ant C++ LaTeX XMLHighlighter C++Highlighter Syntax highlighting Eclipse 17 Java XML C++ 18 Java XML C++ Java XML C++ How does an editor create a resource? How does it create a syntax highlighter for the resource? Java XML C++ 19 Java XML C++ 20

6 If We don t Factory Method This IDE Is not that developer friendly. Requires developers to write redundant code for their editors (e.g., Java). Java +Java() XML C++ +C++() +XML() Create a Java file, open it, and add it to opens and recents, and set a syntax checker for Java. Create a XML file, open it, and add it to opens and recents, and set a syntax checker for XML. Create a C++ file, open it, and add it to opens and recents, and set a syntax checker for C++. Java XML C++ 21 Can be more developer friendly By defining a common sequence (or skeleton/template) to create and initialize a resource in. Does not have to require developers to write redundant code. 22 Java XML C++ Dilemma How can we implement a common sequence (skeleton or template) for instance creation and initialization in WITHOUT knowing specific subclasses of, and AND relationships among them? What to Do with Factory Method Define a factory method in. Have it implement a common sequence (skeleton or template) for instance creation and initialization with empty protected methods. Java Java JavaHighligher XML XML XMLHighlighter Java XML C

7 res = create(); setsyntaxhighligher(); res.open(); opens.put(res); recents.put(res); return res; -opens + new(): # create(): # set(): void + getopens(): ArrayList<> + getrecents(): ArrayList<> + getsyntaxchecker(): SyntaxChecker -recents Java Benefits This IDE Can define a common sequence (a skeleton or template) for instance creation and initialization Allows individual editors to reuse it. Less redundant code Java + Java() # create(): # setsyntaxhighlughter(): void editor = new Java(); editor.new(); 0..1 return new Java(); -syntaxhighlighter syntaxhighlighter = new JavaChecker(); +check() 25 Does not have to know editor-resource-syntax highlighter mappings. Can force every single editor to follow the same behavior (i.e. same sequence for instance creation and initialization) when it creates a new resource. 26 One More Example: Web App Dev Assume you are implementing a development framework for various web apps. s for web applications e.g., WebKit, Struts, Ruby on Rails, etc. WebKit ( Web browsers (incl. Safari), Dashboard, Mail and many other Mac OS X apps. Assume you are implementing an object pooling API in this framework. Creates and manages a pool of (the same kind/type of) objects e.g., a pool of browser windows, a pool of tabs in each browser window, a pool (cache) of HTML files, a pool of HTTP connections, a pool of threads, etc. Here, we focus on the creation of pools. Safari Dashboard Mail Safari Dashboard Mail Object ing HTML Rendering HTTP Conn Handling WebApp 27 WebApp 28

8 Background: Web Page Caching A web server Receives a connection establishment request from a client (browser). Receives an HTTP command Retrieves a target HTML file from the local disk and returns it to the client. May cache a set of HTML files that have been accessed in the past. Keep them in the memory Faster response to the clients Memory access is much faster than disk access. Factory Method in Object ing + create(numelements: int) registerelement(idcounter, e); Element 30 HTML File Caching + create(numelements: int) registerelement(idcounter, e); Element + create(numelements: int) MyApp registerelement(idcounter, e); Element return new HTMLFile(); MyApp FileCache - cachetable: Hashmap<int, HTMLFile> # registerelement(id:int, e: Element) return new HTMLFile(); -cachetable cachetable.put(id, (HTMLFile)e); HTMLFile FileCache - pooltable: Hashmap<int, HTMLFile> # registerelement(id:int, e: Element) FileCache cache = new FileCache(); cache.create(10); -cachetable cachetable.put(id, (HTMLFile)e); HTMLFile 31 32

9 Factory Method createelement() Allows create() to avoid stating the class name for pool elements. Allows the framework to be independent (or de-coupled) from individual applications (framework clients). Allows applications to be pluggable to the framework. One Step Further create(numelements); +(numelements: int) - create(numelements: int) registerelement(idcounter, e); Element + create(numelements: int) registerelement(idcounter, e); Element 33 MyApp FileCache - pooltable: Hashmap<int, HTMLFile> +FileCache(numElements: int) # registerelement(id:int, e: Element) pooltable.put(id, (HTMLFile)e); super(numelements); return new HTMLFile(); pooltable HTMLFile Client code gets simpler: FileCache cache = new FileCache(10); 34 Client code can be simpler in this alternative design FileCache cache = new FileCache(10); No need to call create() as in the previous design. 35

Module 3 Web Component

Module 3 Web Component Module 3 Component Model Objectives Describe the role of web components in a Java EE application Define the HTTP request-response model Compare Java servlets and JSP components Describe the basic session

More information

Magnolia. Content Management Suite. Slide 1

Magnolia. Content Management Suite. Slide 1 Magnolia Content Management Suite Slide 1 Contents 1. About 2. Modules 3. Licensing 4. Features 5. Requirements 6. Concepts 7. Deployment 8. Customization Slide 2 About Magnolia Browser-based Web Authoring

More information

Spring Web Services Tutorial With Example In

Spring Web Services Tutorial With Example In Spring Web Services Tutorial With Example In Eclipse Bottom Up In addition to creating a basic web service and client, the article goes a step further This article will be using the Eclipse IDE (Kepler),

More information

A Model-Controller Interface for Struts-Based Web Applications

A Model-Controller Interface for Struts-Based Web Applications A Model-Controller Interface for Struts-Based Web Applications A Writing Project Presented to The Faculty of the Department of Computer Science San José State University In Partial Fulfillment of the Requirements

More information

SBCUSD IT Training Program. Google Drive. Document Management and File Collaboration

SBCUSD IT Training Program. Google Drive. Document Management and File Collaboration SBCUSD IT Training Program Google Drive Document Management and File Collaboration Revised 6/19/2017 TABLE OF CONTENTS Let s Get This Straight Google Terms Defined...3 Google Application Names Defined...3

More information

(800) Toll Free (804) Fax Introduction to Java and Enterprise Java using Eclipse IDE Duration: 5 days

(800) Toll Free (804) Fax   Introduction to Java and Enterprise Java using Eclipse IDE Duration: 5 days Course Description This course introduces the Java programming language and how to develop Java applications using Eclipse 3.0. Students learn the syntax of the Java programming language, object-oriented

More information

A Quick Introduction to Struts

A Quick Introduction to Struts A Quick Introduction to Struts Presented By DevelopIntelligence LLC A Quick Introduction to Struts What is Struts? Motivation for Struts Components of Struts Adopting Struts Working with Struts What is

More information

12d Synergy V4 Release Notes. 12d Synergy V4 Release Notes. Prerequisites. Upgrade Path. Check Outs. Scripts. Workspaces

12d Synergy V4 Release Notes. 12d Synergy V4 Release Notes. Prerequisites. Upgrade Path. Check Outs. Scripts. Workspaces 12d Synergy V4 Release Notes V4 contains a large number of features. Many of these features are listed in this document, but this list may not be exhaustive. This document also contains pre-requisites

More information

How to create custom Excel reports from Jira issues in no time

How to create custom Excel reports from Jira issues in no time How to create custom Excel reports from Jira issues in no time Business Intelligence and native Excel reports from Jira data with Better Excel Exporter Who is Midori? What is Better Excel Exporter? Experience

More information

6.170 Laboratory in Software Engineering Java Style Guide. Overview. Descriptive names. Consistent indentation and spacing. Page 1 of 5.

6.170 Laboratory in Software Engineering Java Style Guide. Overview. Descriptive names. Consistent indentation and spacing. Page 1 of 5. Page 1 of 5 6.170 Laboratory in Software Engineering Java Style Guide Contents: Overview Descriptive names Consistent indentation and spacing Informative comments Commenting code TODO comments 6.170 Javadocs

More information

BEAWebLogic. Portal. Overview

BEAWebLogic. Portal. Overview BEAWebLogic Portal Overview Version 10.2 Revised: February 2008 Contents About the BEA WebLogic Portal Documentation Introduction to WebLogic Portal Portal Concepts.........................................................2-2

More information

Creating a Model-based Builder

Creating a Model-based Builder Creating a Model-based Builder This presentation provides an example of how to create a Model-based builder in WebSphere Portlet Factory. This presentation will provide step by step instructions in the

More information

Enterprise Java Unit 1- Chapter 3 Prof. Sujata Rizal Introduction to Servlets

Enterprise Java Unit 1- Chapter 3 Prof. Sujata Rizal Introduction to Servlets 1. Introduction How do the pages you're reading in your favorite Web browser show up there? When you log into your favorite Web site, how does the Web site know that you're you? And how do Web retailers

More information

HYPERION SYSTEM 9 BI+ GETTING STARTED GUIDE APPLICATION BUILDER J2EE RELEASE 9.2

HYPERION SYSTEM 9 BI+ GETTING STARTED GUIDE APPLICATION BUILDER J2EE RELEASE 9.2 HYPERION SYSTEM 9 BI+ APPLICATION BUILDER J2EE RELEASE 9.2 GETTING STARTED GUIDE Copyright 1998-2006 Hyperion Solutions Corporation. All rights reserved. Hyperion, the Hyperion H logo, and Hyperion s product

More information

Open Source Library Developer & IT Pro

Open Source Library Developer & IT Pro Open Source Library Developer & IT Pro Databases LEV 5 00:00:00 NoSQL/MongoDB: Buildout to Going Live INT 5 02:15:11 NoSQL/MongoDB: Implementation of AngularJS INT 2 00:59:55 NoSQL: What is NoSQL INT 4

More information

Sahi. Cost effective Web Automation

Sahi. Cost effective Web Automation Sahi Cost effective Web Automation What is Sahi? Automates web applications Started in 2005 Mature business ready product Aimed at testers in Agile and traditional environments Focus Aimed at testers For

More information

ApacheCon NA How to Avoid Common Mistakes in OFBiz Development Presented by Adrian Crum

ApacheCon NA How to Avoid Common Mistakes in OFBiz Development Presented by Adrian Crum ApacheCon NA 2015 How to Avoid Common Mistakes in OFBiz Development Presented by Adrian Crum 1Tech, Ltd. 29 Harley Street, London, W1G 9QR, UK www.1tech.eu 1 Overview Common Getting Started Problems Common

More information

Java EE Application Assembly & Deployment Packaging Applications, Java EE modules. Model View Controller (MVC)2 Architecture & Packaging EJB Module

Java EE Application Assembly & Deployment Packaging Applications, Java EE modules. Model View Controller (MVC)2 Architecture & Packaging EJB Module Java Platform, Enterprise Edition 5 (Java EE 5) Core Java EE Java EE 5 Platform Overview Java EE Platform Distributed Multi tiered Applications Java EE Web & Business Components Java EE Containers services

More information

welcome to BOILERCAMP HOW TO WEB DEV

welcome to BOILERCAMP HOW TO WEB DEV welcome to BOILERCAMP HOW TO WEB DEV Introduction / Project Overview The Plan Personal Website/Blog Schedule Introduction / Project Overview HTML / CSS Client-side JavaScript Lunch Node.js / Express.js

More information

AD105 Introduction to Application Development for the IBM Workplace Managed Client

AD105 Introduction to Application Development for the IBM Workplace Managed Client AD105 Introduction to Application Development for the IBM Workplace Managed Client Rama Annavajhala, IBM Workplace Software, IBM Software Group Sesha Baratham, IBM Workplace Software, IBM Software Group

More information

Google Drive. Table of Contents. Install Google Drive 2. Google Drive for Mac or PC 2. Google Drive Mobile 2. Creating New Files 3.

Google Drive. Table of Contents. Install Google Drive 2. Google Drive for Mac or PC 2. Google Drive Mobile 2. Creating New Files 3. Google Drive Table of Contents Install Google Drive 2 Google Drive for Mac or PC 2 Google Drive Mobile 2 Google Drive (Web Interface) 2 Creating New Files 3 Sharing 3 Sharing Files (web interface) 3 Sharing

More information

The 60-Minute Guide to Development Tools for IBM Lotus Domino, IBM WebSphere Portal, and IBM Workplace Applications

The 60-Minute Guide to Development Tools for IBM Lotus Domino, IBM WebSphere Portal, and IBM Workplace Applications The 60-Minute Guide to Development Tools for IBM Lotus Domino, IBM WebSphere Portal, and IBM Workplace Stuart Duguid Portal & Workplace Specialist TechWorks, IBM Asia-Pacific Overview / Scope The aim of

More information

Building Web Applications With The Struts Framework

Building Web Applications With The Struts Framework Building Web Applications With The Struts Framework ApacheCon 2003 Session TU23 11/18 17:00-18:00 Craig R. McClanahan Senior Staff Engineer Sun Microsystems, Inc. Slides: http://www.apache.org/~craigmcc/

More information

TeamSite Component Development

TeamSite Component Development 4-7525 TeamSite Component Development Course Outline Overview This course is intended for TeamSite developers and project managers. This two-day class covers the skills and knowledge needed to construct

More information

Tapestry. Code less, deliver more. Rayland Jeans

Tapestry. Code less, deliver more. Rayland Jeans Tapestry Code less, deliver more. Rayland Jeans What is Apache Tapestry? Apache Tapestry is an open-source framework designed to create scalable web applications in Java. Tapestry allows developers to

More information

SBCUSD IT Applications Training & Support. Google Drive Document Management and File Collaboration

SBCUSD IT Applications Training & Support. Google Drive Document Management and File Collaboration SBCUSD IT Applications Training & Support Google Drive Document Management and File Collaboration Revised 03/14/2019 CONTENTS Google Terms Defined... 1 Google Application Names Defined... 1 Your SBCUSD

More information

IT6503 WEB PROGRAMMING. Unit-I

IT6503 WEB PROGRAMMING. Unit-I Department of Information Technology Question Bank- Odd Semester 2015-2016 IT6503 WEB PROGRAMMING Unit-I SCRIPTING 1. What is HTML? Write the format of HTML program. 2. Differentiate HTML and XHTML. 3.

More information

Rob Weir, IBM 1 ODF and Web Mashups

Rob Weir, IBM 1 ODF and Web Mashups ODF and Web Mashups Basic techniques Rob Weir, IBM robert_weir@us.ibm.com 2009-11-05 1615 1 ODF and Web Mashups Agenda Why it is hard to use ODF in a web app Two techniques for accessing ODF on the web

More information

But before understanding the Selenium WebDriver concept, we need to know about the Selenium first.

But before understanding the Selenium WebDriver concept, we need to know about the Selenium first. As per the today s scenario, companies not only desire to test software adequately, but they also want to get the work done as quickly and thoroughly as possible. To accomplish this goal, organizations

More information

Office 365. Quick Start User Guide

Office 365. Quick Start User Guide Office 365 Quick Start User Guide Contents What is Office 365?... 5 How to Sign In to Office 365... 5 To Sign Out when you are done... 5 Why Use Office 365?... 5 Office 365 Home Page... 6 Top right-hand

More information

Factory Method Pattern Creational. » Define an interface for creating an object but lets subclasses decide the specific class to instantiate

Factory Method Pattern Creational. » Define an interface for creating an object but lets subclasses decide the specific class to instantiate Factory Method Pattern Creational Intent» Define an interface for creating an object but lets subclasses decide the specific class to instantiate > Delegate creation to the appropriate subclass Also known

More information

Switching to Sheets from Microsoft Excel Learning Center gsuite.google.com/learning-center

Switching to Sheets from Microsoft Excel Learning Center gsuite.google.com/learning-center Switching to Sheets from Microsoft Excel 2010 Learning Center gsuite.google.com/learning-center Welcome to Sheets Now that you've switched from Microsoft Excel to G Suite, learn how to use Google Sheets

More information

Fiz: A Component Framework for Web Applications. John Ousterhout Stanford University

Fiz: A Component Framework for Web Applications. John Ousterhout Stanford University Fiz: A Component Framework for Web Applications John Ousterhout Stanford University My Background Academia Industry Academia U.C. Berkeley Sun Scriptics Electric Cloud Stanford 1980 1990 2000 2010 VLSI

More information

eclipse rich ajax platform (rap)

eclipse rich ajax platform (rap) eclipse rich ajax platform (rap) winner Jochen Krause CEO Innoopract Member of the Board of Directors Eclipse Foundation jkrause@innoopract.com GmbH outline rich ajax platform project status and background

More information

Tools to Develop New Linux Applications

Tools to Develop New Linux Applications Tools to Develop New Linux Applications IBM Software Development Platform Tools for every member of the Development Team Supports best practices in Software Development Analyst Architect Developer Tester

More information

ADT: Eclipse development tools for ATL

ADT: Eclipse development tools for ATL ADT: Eclipse development tools for ATL Freddy Allilaire (freddy.allilaire@laposte.net) Tarik Idrissi (tarik.idrissi@laposte.net) Université de Nantes Faculté de Sciences et Techniques LINA (Laboratoire

More information

J2EE Development. Course Detail: Audience. Duration. Course Abstract. Course Objectives. Course Topics. Class Format.

J2EE Development. Course Detail: Audience. Duration. Course Abstract. Course Objectives. Course Topics. Class Format. J2EE Development Detail: Audience www.peaksolutions.com/ittraining Java developers, web page designers and other professionals that will be designing, developing and implementing web applications using

More information

Software MEIC. (Lesson 12)

Software MEIC. (Lesson 12) Software Architecture @ MEIC (Lesson 12) Last class The Fenix case study, from business problem to architectural design Today Scenarios and Tactics for the Graphite system Graphite Scenarios + Tactics

More information

How To Get Database Schema In Java Using >>>CLICK HERE<<<

How To Get Database Schema In Java Using >>>CLICK HERE<<< How To Get Database Schema In Java Using Eclipse Pdf Go To Table Of Contents Search, PDF, Comments EclipseLink is suitable for use with a wide range of Java Enterprise Edition (Java to a relational database

More information

Eclipse JWT Java Workflow Tooling. Workflow Editor (WE): Installation and Usage Tutorial

Eclipse JWT Java Workflow Tooling. Workflow Editor (WE): Installation and Usage Tutorial Eclipse JWT Java Workflow Tooling Title of this document Workflow Editor (WE): Installation and Usage Tutorial Document information last changes component version 13.02.2008 0.4.0 Document created by Florian

More information

Automation Engine 12.2 What s new presentation. Dries Vandenbussche Product Manager Server Platforms

Automation Engine 12.2 What s new presentation. Dries Vandenbussche Product Manager Server Platforms Automation Engine 12.2 What s new presentation Dries Vandenbussche Product Manager Server Platforms Overview Support for DFE 4.0 (HP) New Dynamic Layout" " " Support for Dynamic Marks" " Extra flexibility

More information

Editing XML Data in Microsoft Office Word 2003

Editing XML Data in Microsoft Office Word 2003 Page 1 of 8 Notice: The file does not open properly in Excel 2002 for the State of Michigan. Therefore Excel 2003 should be used instead. 2009 Microsoft Corporation. All rights reserved. Microsoft Office

More information

CSCI 201 Google Chrome DevTools

CSCI 201 Google Chrome DevTools CSCI 201 Google Chrome DevTools This semester, our Factory code and assignments are written for use in Google Chrome. We will be taking advantage of Google Chrome DevTools, an assortment of web development

More information

Exploring Chrome Internals. Darin Fisher May 28, 2009

Exploring Chrome Internals. Darin Fisher May 28, 2009 Exploring Chrome Internals Darin Fisher May 28, 2009 Simple interface, powerful core Modern browsers resemble the cooperatively multi-tasked operating systems of the past. Guiding sentiment, 2006 Goals

More information

EPL660: Information Retrieval and Search Engines Lab 3

EPL660: Information Retrieval and Search Engines Lab 3 EPL660: Information Retrieval and Search Engines Lab 3 Παύλος Αντωνίου Γραφείο: B109, ΘΕΕ01 University of Cyprus Department of Computer Science Apache Solr Popular, fast, open-source search platform built

More information

Building Web Applications with SAS AppDev Studio TM 3.0

Building Web Applications with SAS AppDev Studio TM 3.0 Building Web Applications with SAS AppDev Studio TM 3.0 ABSTRACT Frederick Pratter, Eastern Oregon University, La Grande OR The SAS/IntrNet Software product is now nearly 10 years old and uses the obsolete

More information

Lotus Exam IBM Websphere Portal 6.1 Application Development Version: 5.0 [ Total Questions: 150 ]

Lotus Exam IBM Websphere Portal 6.1 Application Development Version: 5.0 [ Total Questions: 150 ] s@lm@n Lotus Exam 190-959 IBM Websphere Portal 6.1 Application Development Version: 5.0 [ Total Questions: 150 ] Topic 0, A A Question No : 1 - (Topic 0) A large motorcycle manufacturer has an internet

More information

What s Wrong with the Operating System Interface? Collin Lee and John Ousterhout

What s Wrong with the Operating System Interface? Collin Lee and John Ousterhout What s Wrong with the Operating System Interface? Collin Lee and John Ousterhout Goals for the OS Interface More convenient abstractions than hardware interface Manage shared resources Provide near-hardware

More information

112. Introduction to JSP

112. Introduction to JSP 112. Introduction to JSP Version 2.0.2 This two-day module introduces JavaServer Pages, or JSP, which is the standard means of authoring dynamic content for Web applications under the Java Enterprise platform.

More information

Documentation of Eclipse Applications with DITA

Documentation of Eclipse Applications with DITA Experts in Information Management Solutions and Services Documentation of Eclipse Applications with DITA Eclipse Embedded Day Stuttgart 2010 Gunthilde Sohn, instinctools GmbH Agenda Challenges in Software

More information

CS506 Web Design & Development Final Term Solved MCQs with Reference

CS506 Web Design & Development Final Term Solved MCQs with Reference with Reference I am student in MCS (Virtual University of Pakistan). All the MCQs are solved by me. I followed the Moaaz pattern in Writing and Layout this document. Because many students are familiar

More information

Overview. Principal Product Manager Oracle JDeveloper & Oracle ADF

Overview. Principal Product Manager Oracle JDeveloper & Oracle ADF Rich Web UI made simple an ADF Faces Overview Dana Singleterry Dana Singleterry Principal Product Manager Oracle JDeveloper & Oracle ADF Agenda Comparison: New vs. Old JDeveloper Provides JSF Overview

More information

How to export custom PDF documents from Jira issues and dashboards in zero time

How to export custom PDF documents from Jira issues and dashboards in zero time How to export custom PDF documents from Jira issues and dashboards in zero time Easy emailing, sharing, archiving, printing for Jira data with PDF View Plugin Who is Midori? What is PDF View Plugin? Experience

More information

FINALTERM EXAMINATION Spring 2009 CS506- Web Design and Development Solved by Tahseen Anwar

FINALTERM EXAMINATION Spring 2009 CS506- Web Design and Development Solved by Tahseen Anwar FINALTERM EXAMINATION Spring 2009 CS506- Web Design and Development Solved by Tahseen Anwar www.vuhelp.pk Solved MCQs with reference. inshallah you will found it 100% correct solution. Time: 120 min Marks:

More information

TIBCO LiveView Web Getting Started Guide

TIBCO LiveView Web Getting Started Guide TIBCO LiveView Web Getting Started Guide Introduction 2 Prerequisites 2 Installation 2 Installation Overview 3 Downloading and Installing for Windows 3 Downloading and Installing for macos 4 Installing

More information

PHP Development for ClearPath. Session 3028, Tuesday, May 15, 2012, 10:30AM Ron Neubauer, Principal Engineer, Unisys Corporation

PHP Development for ClearPath. Session 3028, Tuesday, May 15, 2012, 10:30AM Ron Neubauer, Principal Engineer, Unisys Corporation PHP Development for ClearPath Session 3028, Tuesday, May 15, 2012, 10:30AM Ron Neubauer, Principal Engineer, Unisys Corporation Topics Introduction Architecture Installation Usage Obtaining the Product

More information

What s new in IBM Operational Decision Manager 8.9 Standard Edition

What s new in IBM Operational Decision Manager 8.9 Standard Edition What s new in IBM Operational Decision Manager 8.9 Standard Edition Release themes User empowerment in the Business Console Improved development and operations (DevOps) features Easier integration with

More information

Business Intelligence and Reporting Tools

Business Intelligence and Reporting Tools Business Intelligence and Reporting Tools Release 1.0 Requirements Document Version 1.0 November 8, 2004 Contents Eclipse Business Intelligence and Reporting Tools Project Requirements...2 Project Overview...2

More information

Application Development Issues. Overview: Velocity: what is it, what is it good for? Part 1: Code Generators Part 2: Web Applications With Velocity

Application Development Issues. Overview: Velocity: what is it, what is it good for? Part 1: Code Generators Part 2: Web Applications With Velocity Application Development Issues Overview: Velocity: what is it, what is it good for? Part 1: Code Generators Part 2: Web Applications With Velocity What is Velocity? Template Template Engine Document Document

More information

The goal of this book is to teach you how to use Adobe Integrated

The goal of this book is to teach you how to use Adobe Integrated Clearing the AIR The goal of this book is to teach you how to use Adobe Integrated Runtime (AIR) to create desktop applications. You can use JavaScript or ActionScript to develop AIR applications, and

More information

Table of Contents DOCS, SHEETS, AND SLIDES... 2 HOME PAGE... 3 FILE NAME... 4 MENU... 4 TOOLBAR... 5 HELP... 6

Table of Contents DOCS, SHEETS, AND SLIDES... 2 HOME PAGE... 3 FILE NAME... 4 MENU... 4 TOOLBAR... 5 HELP... 6 Conventions used in this document: Keyboard keys that must be pressed will be shown as Enter or Ctrl. Controls to be activated with the mouse will be shown as Start button > Settings > System > About.

More information

Splitting the pattern into the model (this stores and manipulates the data and executes all business rules).

Splitting the pattern into the model (this stores and manipulates the data and executes all business rules). Tutorial 3 Answers Comp319 Software Engineering Object patterns Model View Controller Splitting the pattern into the model (this stores and manipulates the data and executes all business rules). View Controller

More information

25. DECUS Symposium THE Application Development Environment for OpenVMS

25. DECUS Symposium THE Application Development Environment for OpenVMS NetBeans THE Application Development Environment for OpenVMS Sunil Kumaran, Thomas Siebold Agenda What is NetBeans some history Major Features / Demonstrations NetBeans on OpenVMS Questions 5/2/2002 DECUS

More information

Etanova Enterprise Solutions

Etanova Enterprise Solutions Etanova Enterprise Solutions Server Side Development» 2018-06-28 http://www.etanova.com/technologies/server-side-development Contents.NET Framework... 6 C# and Visual Basic Programming... 6 ASP.NET 5.0...

More information

Extend EBS Using Applications Express

Extend EBS Using Applications Express Extend EBS Using Applications Express John Peters JRPJR, Inc. Abstract Few people know about Oracle Applications Express (APEX) an actual free Oracle Tool included with your Oracle DB Licenses. How many

More information

Internet of Things 2017/2018

Internet of Things 2017/2018 Internet of Things 2017/2018 LESHAN (pictures from standards docs & software descriptions in presentations) Johan Lukkien Leila Rahman John Carpenter, 1982 1 Guiding questions How does LESHAN support the

More information

<Insert Picture Here> Hudson Web Architecture. Winston Prakash. Click to edit Master subtitle style

<Insert Picture Here> Hudson Web Architecture. Winston Prakash. Click to edit Master subtitle style Hudson Web Architecture Click to edit Master subtitle style Winston Prakash Architecture Overview Hudson is an extendable Web Application. The basic platform is extended via plugins.

More information

<Insert Picture Here> Accelerated Java EE Development: The Oracle Way

<Insert Picture Here> Accelerated Java EE Development: The Oracle Way 1 1 Accelerated Java EE Development: The Oracle Way Dana Singleterry Principal Product Manager Oracle JDeveloper and Oracle ADF http://blogs.oracle.com/dana Warning demo contains

More information

vsphere Web Client SDK Documentation VMware vsphere Web Client SDK VMware ESXi vcenter Server 6.5.1

vsphere Web Client SDK Documentation VMware vsphere Web Client SDK VMware ESXi vcenter Server 6.5.1 vsphere Web Client SDK Documentation VMware vsphere Web Client SDK 6.5.1 VMware ESXi 6.5.1 vcenter Server 6.5.1 You can find the most up-to-date technical documentation on the VMware website at: https://docs.vmware.com/

More information

Using Code Templates in DDE by Julian Robichaux, panagenda originally published on socialbizug.org, July 2013

Using Code Templates in DDE by Julian Robichaux, panagenda originally published on socialbizug.org, July 2013 Using Code Templates in DDE by Julian Robichaux, panagenda originally published on socialbizug.org, July 2013 One of the freebies that came with integrating Domino Designer with the Eclipse platform (DDE)

More information

112-WL. Introduction to JSP with WebLogic

112-WL. Introduction to JSP with WebLogic Version 10.3.0 This two-day module introduces JavaServer Pages, or JSP, which is the standard means of authoring dynamic content for Web applications under the Java Enterprise platform. The module begins

More information

Introduction to Web Application Development Using JEE, Frameworks, Web Services and AJAX

Introduction to Web Application Development Using JEE, Frameworks, Web Services and AJAX Introduction to Web Application Development Using JEE, Frameworks, Web Services and AJAX Duration: 5 Days US Price: $2795 UK Price: 1,995 *Prices are subject to VAT CA Price: CDN$3,275 *Prices are subject

More information

User Guide. ThinkFree Office Server Edition June 13, Copyright(c) 2011 Hancom Inc. All rights reserved

User Guide. ThinkFree Office Server Edition June 13, Copyright(c) 2011 Hancom Inc. All rights reserved User Guide ThinkFree Office Server Edition June 13, 2011 Document Revision History This table describes the changes to ThinkFree Office Server Edition User Guide Date Note 2008-06-30 ThinkFree Office Server

More information

CSE 336. Introduction to Programming. for Electronic Commerce. Why You Need CSE336

CSE 336. Introduction to Programming. for Electronic Commerce. Why You Need CSE336 CSE 336 Introduction to Programming for Electronic Commerce Why You Need CSE336 Concepts like bits and bytes, domain names, ISPs, IPAs, RPCs, P2P protocols, infinite loops, and cloud computing are strictly

More information

Google Web Toolkit Creating/using external JAR files

Google Web Toolkit Creating/using external JAR files Google Web Toolkit Creating/using external JAR files If you develop some code that can be reused in more than one project, one way to create a module is to create an external JAR file. This JAR file can

More information

The main differences with other open source reporting solutions such as JasperReports or mondrian are:

The main differences with other open source reporting solutions such as JasperReports or mondrian are: WYSIWYG Reporting Including Introduction: Content at a glance. Create A New Report: Steps to start the creation of a new report. Manage Data Blocks: Add, edit or remove data blocks in a report. General

More information

Session 8. Reading and Reference. en.wikipedia.org/wiki/list_of_http_headers. en.wikipedia.org/wiki/http_status_codes

Session 8. Reading and Reference. en.wikipedia.org/wiki/list_of_http_headers. en.wikipedia.org/wiki/http_status_codes Session 8 Deployment Descriptor 1 Reading Reading and Reference en.wikipedia.org/wiki/http Reference http headers en.wikipedia.org/wiki/list_of_http_headers http status codes en.wikipedia.org/wiki/_status_codes

More information

Learn Html Pdf Converter To Excel Full Version With Key

Learn Html Pdf Converter To Excel Full Version With Key Learn Html Pdf Converter To Excel Full Version With Key It lets you convert Word, Excel, or PowerPoint (PPT) docs to PDF with Learn more about creating PDFs from Microsoft Office Convert HTML to PDF Scan.

More information

When learning coding, be brave

When learning coding, be brave Who am I? Web Technology Overview with a focus on JavaScript-based technologies Lawrence Yao l.yao@unsw.edu.au Lawrence Yao UNSW casual staff Developer Analyst at YTML Consulting Email me if you need technical

More information

In this Tutorial we present tips and trick for the development enviroment eclipse and the extension MyEclipse.

In this Tutorial we present tips and trick for the development enviroment eclipse and the extension MyEclipse. Tips and tricks for eclipse and the IDE MyEclipse In this Tutorial we present tips and trick for the development enviroment eclipse and the extension MyEclipse. Generals Author: Sascha Wolski Sebastian

More information

JSF: Introduction, Installation, and Setup

JSF: Introduction, Installation, and Setup 2007 Marty Hall JSF: Introduction, Installation, and Setup Originals of Slides and Source Code for Examples: http://www.coreservlets.com/jsf-tutorial/ Customized J2EE Training: http://courses.coreservlets.com/

More information

OpenOffice.org as a platform for developers

OpenOffice.org as a platform for developers OOoCon 2004 - Berlin OpenOffice.org as a platform for developers Mathias.Bauer@sun.com Mathias Bauer - OpenOffice.org Application Framework - Slide 1 Agenda Speaker introductions Features for development

More information

Getting Started with Eclipse/Java

Getting Started with Eclipse/Java Getting Started with Eclipse/Java Overview The Java programming language is based on the Java Virtual Machine. This is a piece of software that Java source code is run through to produce executables. The

More information

Application Architecture

Application Architecture Application Architecture Compatibility Flexibility Scalability Web Technologies Author: KM Newnham Edited by: SA Jost Last Update Date: 11/28/2016 Tel. 303.741.5711 Email. sales@adginc.net Web. www.adginc.net

More information

Techniques for Building J2EE Applications

Techniques for Building J2EE Applications Techniques for Building J2EE Applications Dave Landers BEA Systems, Inc. dave.landers@4dv.net dave.landers@bea.com Why are we Here? Discuss issues encountered with J2EE Application deployment Based on

More information

WebApp development. Outline. Web app structure. HTML basics. 1. Fundamentals of a web app / website. Tiberiu Vilcu

WebApp development. Outline. Web app structure. HTML basics. 1. Fundamentals of a web app / website. Tiberiu Vilcu Outline WebApp development Tiberiu Vilcu Prepared for EECS 411 Sugih Jamin 20 September 2017 1 2 Web app structure HTML basics Back-end: Web server Database / data storage Front-end: HTML page CSS JavaScript

More information

Adapting JDT to the Cloud. Alex Boyko Pivotal Jay Arthanareeswaran - IBM John Arthorne - IBM

Adapting JDT to the Cloud. Alex Boyko Pivotal Jay Arthanareeswaran - IBM John Arthorne - IBM Adapting JDT to the Cloud Alex Boyko Pivotal Jay Arthanareeswaran - IBM John Arthorne - IBM Topics Background and motivation Adapting JDT code base to run in cloud Incorporating Java tooling in Web IDEs

More information

Oracle Utilities Customer Self Service

Oracle Utilities Customer Self Service Oracle Utilities Customer Self Service Whitepaper: Creating and Deploying the Sample Mobile Client Application Release 2.1.0 Service Pack 2 E38172-07 October 2015 Oracle Utilities Customer Self Service

More information

Mend for Eclipse quick start guide local analysis

Mend for Eclipse quick start guide local analysis The Semmle Mend for Eclipse plugin allows users to view Semmle results in Eclipse. This document describes how to install and use the plugin for local analysis. You can install the plugin using a Semmle

More information

iphone ios 8.x (4s, 5, 5s & 5c, 6, 6+ models) ipad ios 8.x (all models) Android OS or higher

iphone ios 8.x (4s, 5, 5s & 5c, 6, 6+ models) ipad ios 8.x (all models) Android OS or higher OVERVIEW The ADF Desktop Integration template is used in the Projects module and General Ledger module for uploading journal entries. After the new version of Oracle is completed, you will be prompted

More information

Hackveda Appsec Labs Java Programming Course and Internship Program Description:

Hackveda Appsec Labs Java Programming Course and Internship Program Description: Hackveda Appsec Labs Java Programming Course and Internship Program Description: The training program includes a complete training of java core and advanced concepts. After the training program students

More information

The design of the PowerTools engine. The basics

The design of the PowerTools engine. The basics The design of the PowerTools engine The PowerTools engine is an open source test engine that is written in Java. This document explains the design of the engine, so that it can be adjusted to suit the

More information

ByggSøk plan Project Structure And Build Process

ByggSøk plan Project Structure And Build Process Page 1 of 14 ByggSøk plan Project Structure And Build Process Document id. 11240-doc-05 Doc version 1.0 Status Date Mar 30, 2012 Author(s) ON Checked by DK Approved by PH Page 2 of 14 Document revision

More information

Creating a Small-Bore Tee Dummy Support

Creating a Small-Bore Tee Dummy Support Creating a Small-Bore Tee Dummy Support This paper describes the modifications required to create a commonly used dummy leg support in AutoCAD Plant 3D 2016 that will connect to an open port on a tee.

More information

From the RCP Book To Reality. Jean-Michel Lemieux IBM Rational, Ottawa, Canada

From the RCP Book To Reality. Jean-Michel Lemieux IBM Rational, Ottawa, Canada From the RCP Book To Reality Jean-Michel Lemieux IBM Rational, Ottawa, Canada 2008 by Jean-Michel Lemieux made available under the EPL v1.0 March 2008 Past, Present, Future Eclipse committer since it s

More information

How to use WordPress to create a website STEP-BY-STEP INSTRUCTIONS

How to use WordPress to create a website STEP-BY-STEP INSTRUCTIONS How to use WordPress to create a website STEP-BY-STEP INSTRUCTIONS STEP 1:Preparing your WordPress site Go to the Dashboard for your new site Select Appearance > Themes. Make sure you have Activated the

More information

Improve and Expand JavaServer Faces Technology with JBoss Seam

Improve and Expand JavaServer Faces Technology with JBoss Seam Improve and Expand JavaServer Faces Technology with JBoss Seam Michael Yuan Kito D. Mann Product Manager, Red Hat Author, JSF in Action http://www.michaelyuan.com/seam/ Principal Consultant Virtua, Inc.

More information

JSF Tools Reference Guide. Version: M5

JSF Tools Reference Guide. Version: M5 JSF Tools Reference Guide Version: 3.3.0.M5 1. Introduction... 1 1.1. Key Features of JSF Tools... 1 2. 3. 4. 5. 1.2. Other relevant resources on the topic... 2 JavaServer Faces Support... 3 2.1. Facelets

More information

Struts 2 Maven Archetypes

Struts 2 Maven Archetypes Struts 2 Maven Archetypes DEPRECATED: moved to http://struts.apache.org/maven-archetypes/ Struts 2 provides several Maven archetypes that create a starting point for our own applications. Contents 1 DEPRECATED:

More information

DICOM Structured Reporting: Implementation Experience

DICOM Structured Reporting: Implementation Experience DICOM Structured Reporting: Implementation Experience David Clunie, MD. Director of Healthcare Information Systems ComView Corporation Design Goals Cardiology image reporting system Multi-modality: Angio

More information