- Количество слайдов: 53
Tech. Wave 2004 Recap for Application Developers Donald D. Clayton President Intertech Consulting, Inc. [email protected] us August 18 -19, 2004
Objectives § § Understand the Sybase strategy for application development Power. Builder § § § Appeon For Power. Builder Pocket. Builder § § Features and Functions Power. Designer § 2 Power. Builder in a. Net World Next Generation Web Data. WIndow Next-Generation Power. Script Language Power. Designer For Power. Builder and Power. Designer Futures
The Enterprise. Unwired. 3
The. NET World of Microsoft. The Future According to Microsoft § Microsoft’s vision of Windows application development is an all encompassing environment with many benefits § § 4 Common runtime system Type safe programming Easy communication between different languages Massive class library, from soup to nuts.
Powerbuilder’s Place in. NET § § Powerbuilder offers alternatives to Microsoft’s vision. Release 9. 0 § § Release 10. 0 § § § More support for Web Services – can now deploy into EAServer directly from PB Data. Window. NET Release 11. 0 § § § 5 Supported Web Services Support for compiling Powerscript directly to MSIL Powerbuilder access to. NET class libraries Allow. NET applications to access Powerbuilder objects.
Powerbuilder’s Place in. NET Coming in the next release § The Data. Window. NET § § For the Visual Basic programmer § § § A worthy competitor to the Data. Grid control The Data. Window offers features that will be enticing to VB programmers For the Powerbuilder programmer § § 6 Will be a citizen of the. NET world The Data. Window technology will be extended to all languages supported in the Common Language Runtime Visual Basic. NET, C#, C++ Where development in. NET is mandated, the investment in Data. Windows is protected. The Data. Window will be familiar
The Data. Window. NET initiative What is the Data. Window. NET? § A. NET data aware control § § § The. NET data aware object § § Instantiated using “new”. Like the Data. Window. Control, it will expose Data. Store methods events and properties. The Powerbuilder database drivers The Data. Window Builder § 7 Drop it on a Window Form It supports the familiar set of Data. Window properties, events and methods For Data. Window creation without Powerbuilder
The Data. Window. NET Implementation How do you use it § From the Visual Studio. NET toolbox § § . 8 Select and drop the Data. Window. Control onto a Windows Form. Two important properties are exposed: Enter the name of the Data. Window Object to use in the Data. Window. Control Enter a library name from where to load the Data. Window Object
Data. Window. NET Implementation How do you use it? § Add coding to manipulate the Data. Window § § Visual Studio adds some boilerplate coding to instantiate the basic Data. Window. Control Initialize the Data. Window. . DWC 1. Init. Data. Window( ); 9
Data. Window. NET Implementation How do you use it? § Add coding to manipulate the Data. Window § § Instantiate and populate a Transaction object Using the name “SQLCA” creates a look consistent with Powerscript usage Sybase. Data. Window. Transaction SQLCA = new Sybase. Data. Window. Transaction( ); SQLCA. DBMS = "ODBC"; SQLCA. DBParm = "Connect. String='DSN=EAS Demo DB V 4; UID=dba; PWD=sql; sqlcache = 1, disablebind = 1'"; SQLCA. Autocommit = false; 10
Data. Window. NET Implementation How do you use it? § Connect to the Data. Source § Set the Data. Window’s Transaction Object SQLCA. Connect( ); DWC 1. Set. Trans. Object ( SQLCA ) 11
Data. Window. NET Implementation How do you use it? § § § Retrieve the Data. Window Add and Delete rows on the Data. Window The full support for all Data. Window methods is intended Int 32 rows; rows = DWC 1. Retrieve( false, 0 ); DWC 1. Insert. Row ( 0 ); DWC 1. Delete. Row( 0 ); DWC 1. Update( ); 12
Data. Window. NET Implementation How do you use it? § Data. Window Events. . § 13 The Data. Window. Control will support the same set of events as the Data. Window
Fun facts about Data. Window. NET § § § Data. Window. DLL – approximately 20, 000 lines of C# code Data. Window. Interop. DLL - approximately 6, 000 lines of C++ code XML documentation – approximately 7, 000 lines § § 14 Used to creates documentation in the object browser, intellisense and dynamic help in Visual Studio PBDWN 100. DLL – the Data. Window server is approximately 325, 000 lines of C++ code
Future plans for Data. Window. NET § The next release will support § § Web. Forms and ASP. NET Much more direct access to Data. Window object properties using the Data. Window. NET object model Planned for about 6 months after 1. 0 The next release after that § We have no concrete plans yet but we are considering Some kind of support for ADO Data. Sets and Data. Tables Additional ADO. NET support 15
The “XML Web Data. Window” Solution Utilize latest web technologies: § XHTML § Client-side XSLT § Standalone CSS stylesheet (with cascaded absolute positioning) 16
Separating Presentation from Content Within Data. Window: § Content = data values of column, compute, and text controls § Presentation = visual and functional properties of DW controls Benefits of Separating: § Accessibility § Targeted presentation using stylesheets § Improved processing by browser 17
XHTML Benefits Targeted Presentation § § 18 Presentation can now be stored in separate stylesheet documents (CSS and XSL) for XHTML page Different stylesheets more easily generated for different browsers
Client-Side XML Content XSLT Determines structural layout XHTML 19 Determines style of elements as displayed in browser CSS
Why Use Client-Side XSLT? Benefits: § Saves bandwidth § Clients only need to download and cache XSLT code once for Data. Window session § Server processing is reduced with more work being done on client 20
Powerbuilder’s place in. NET Powerbuilder futures § Powerbuilder 11 will: § § § Allow Powerscript access to. NET class libraries § § Allow Powerscript to consume both Microsoft and other. NET objects Allow. NET objects to access Powerbuilder objects § 21 Compile Powerscript code to MSIL Allow Powerscript to run under the Common Language Runtime NVO etc.
Power. Script. NET What can you do with it? § § § 22 Compile a Power. Builder target into a. NET application. Import and use. NET classes written in other languages. Extend. NET classes written in other languages.
Overview of PB to. NET Compiler PBL files pb 2 cs generates Depends on PB Compiler Framework C# Code References to PB System Library For. NET Main modules of the PB to. NET compiler 23 compiles Win. Form/ Web. Form Application
Overview of PB to. NET Compiler § Assemblies of PB system library for. NET Sybase. Power. Builder. Win. Dll Data. Window. Control Sybase. Power. Builder. Web. Dll Sybase. Power. Builder. Common. Dll Data. Window Web Control 3 rd party Web Controls Sybase. Power. Builder. Interop. Dll Sybase. Power. Builder. Core. Dll 24 PBSHR. Dll DB Drivers
PB Windows Forms § § § 25 Implemented using. NET Windows Forms controls. No PBVM involved. Make use of Data. Window. NET (supports dot notation)
PB Web. Form for. NET § ASP. NET § § § 26 Form-based programming method. Event-driven programming Ready-to-use Web controls that hide the details of HTML rendering. State management ASP. NET applications are compiled, and thus fast.
PB Web. Form for. NET § PB Web. Form Architecture (2 -tier applications) DB drivers PB App Database PB application Web Brower ASP. NET PB Web. Form App Web Server PB Web. Form application 27 DB drivers Database
PB Web. Form for. NET § PB Web. Form Architecture (3 -tier applications) PB Components PB Client App Server PB application Web Brower ASP. NET PB Web. Form App Web Server PB Web. Form application 28 Database PB Components App Server Database
PB Web. Form for. NET § 29 Page life cycle Image copied from http: //www. dotnetguru/us/articles/JSFvs. Web. Forms. html
Powerbuilder’s place in. NET Summary § Powerbuilder is committed to full citizenship in the. NET world § § § PB to. NET Compiler In PB 11 § § § Deploy PB applications as Win. Form/Web. Form applications. Make use of. NET classes. Beyond PB 11 § 30 Power. Builder supported Web Services in PB 9. 0. Web Service support is enhanced in PB 10. 0 introduces the Data. Window. NET PB 11. 0 will introduce compiler support for. NET Debugging Win. Form/Web. Form applications in PB IDE
Next-Generation Power. Script Langauge Going forward… § § § § 31 Continue to be a productive language A general-purpose language More object-oriented A high-level language but can do low-level things Support both. NET and Java Extensible Lots of utilities
Power. Script Enhancements § § § 32 Package & imports Parameterized constructors Interface?
Pocket. Builder Overview "Don't think big…Think Small!!" § 33 Pocket. Builder is now coming to aid corporate development of Pocket PC applications, brining all the benefits I have mentioned above - RAD 4 GL and even the Data. Window technology.
Why Pocket. Builder ? § Pocket PCs § § § § 34 Send/receive email with Pocket Outlook Sync your calendar Sync your contacts Sync your tasks Comes with Pocket Word Comes with Pocket Excel Comes with Pocket IE Connects to the internet
Why Pocket. Builder ? § Pocket PCs with phone edition are powerful tools § § § Smartphone § § 35 Constant Data Connections 'Always Up-to-Date' Calendar, Contacts and E-mail SMS Enhancements Enhanced Messaging Support Connectivity Notifications Dual Volume Controls Richer Ring Tone Support Call Barring Enhanced Contacts Call Mute Similar to Phone Edition Limitations on device
Different Functionality § Integration with POOM § § 36 Pocket Outlook Object Model POOM is the key to the Pocket Outlook object managers repository This repository is the object store for the Pocket PC contact manager, appointment manager & task manager. So with the POOM object & Pocket Power. Builder we can now enquire, access, create, update & delete contacts, appointments and tasks programmatically from within Pocket Power. Builder applications in a very 4 GL way.
How does it differ from Power. Builder? Unsupported Functions § OLE § DDE § CORBA § Profiling § Printing § Rich Text and a few more Unsupported Events § help() § closequery() § anything to do with remote (example remoteexec()), hotlinkalarm() and toolbarmoved(). 37
How does it differ from Power. Builder? Unsupported Features § MDI applications, § EAServer connections, § Web and JSP targets, § and Automation server. NO PFC ! 38
Agenda § § 39 Power. Designer Overview Power. Designer 10 for Power. Builder Power. Designer Roadmap Power. Designer 10 and Power. Builder 10 Together
Why Modeling? – An analogy Would you build a house without a blueprint ? The Architect validates the concept with the client From these drawings, a technical diagram will be derived The Contractors will take this blueprint and optimise it based on technical considerations – linked to the Architectural View 40
Design Tools Market Landscape Three markets converging Business Process Modeling (emerging standards) Traditional E/R Data Modeling (James Martin) Designers/Analysts, DBAs, Database Developers 41 Business Analysts LOBs CIOs Object-oriented Modeling (UML techniques) Designers/Analysts, Developers, Programmers
Power. Designer 10 Integrated Enterprise Modeling Tool Development 42 Source Sybase Business-centric Control Flow diagram Entity/ Relationship modeling (and DW extensions) UML modeling (all diagrams) RDBMS structures Object Relational mapping Java, . Net, XML, PB. . . support IDEs & App Server support Business centric Repository Analysis & Design Templates, Generic Generators, UML profiles, model-to-model generation… Business Analysis IT centric
Link and Synchronize All Models eb. XML, Message Broker, Ohio Object-Oriented Model (OOM) O/R Mapping Business Process Model (BPM) Conceptual Data Model (CDM) ODBC Reverse Engineering 43 Import/Export C++, C#, VB. Net, Web Services, etc. . . Physical Data Model (PDM) Forward Engineering Round-trip Engineering Power. Builder, Java, J 2 EE XML, WSDL Database SQL Script (DDL)
Power. Designer 10 Features Summary § Power. Designer is a good enterprise modeling tool § § § 44 Leading Data Modeling tool Complete UML support (9 UML diagrams) Business Process Modeling features Good Repository Integration with Integration Orchestrator, Message Broker, eb. XML Design and generate code for Power. Builder, Web Services, J 2 EE (EJB, O/R mapping), . NET, etc. Support all major databases (more than 30) Support major application servers (EAServer, Web. Logic, Web. Sphere) Integration with IDEs (Eclipse, JBuilder 8, Ant) Support MDA Extensibility (Profile, Code generator, VBScript, OLE automation)
Power. Designer Value Proposition § § § 45 Help users to understand how the application was developed. Help users to visually see the relationship between objects. Help users to improve existing code, refactor the code. Regenerate Power. Builder application. Generate documentation (report) in HTML and RTF format.
Power. Designer for Power. Builder Features Summary § § § 46 Power. Designer 9. 5. 2 introduced complete support for all Power. Builder objects reverse engineering and generation Support libraries (. pbl) and source files (. sr*) Support Power. Builder 6, 7, 8 and 9 Power. Builder tool palette for creating new objects Model verification Generate & reverse Power. Builder extended attributes in PDM
Power. Designer and Power. Builder Together Summary § § 47 Power. Designer: A Plugin Component in Power. Builder 10 Reverse Engineer From Power. Builder Design and Generate Power. Builder Code Using Power. Designer Navigation Between Power. Designer and Power. Builder
Power. Designer and Power. Builder Together Power. Designer: A Plugin Component in Power. Builder 10 48
Power. Designer and Power. Builder Together Design in Power. Designer Generate Power. Builder Code Modify in Power. Builder Debug and Run Reverse Engineer to Update Class Diagram 49
Future Direction § § 50 Power. Designer 10. 0 supports tight integration with Power. Builder 10 will can embed Power. Designer views inside Power. Builder will be able to control Power. Designer generates complete Power. Builder application code (post 10. 0)
Power. Designer Roadmap § Power. Designer Athena (V 10, December 2003) § § § Power. Designer Minerva (end of 2004) § § 51 Integration with Power. Builder Integration with Eclipse (Q 1 2004) Major BPM improvements XML model Fully support MDA Enterprise features (requirements, impact analysis, …) XML and Web Services in database UML 2. 0 Design patterns
Other Athena Features § § 52 Support C# and VB. NET reverse engineering Improve Web Services support (support Apache Axis, …)
Audience. Query() 53