XPages: The Next Step In Your Life As A Notes Developer

download XPages: The Next Step In Your Life As A Notes Developer

If you can't read please download the document

description

Presentation given at AUSLUG 2011 comparing the differences and similarities between Notes Classic development and IBM XPages development.

Transcript of XPages: The Next Step In Your Life As A Notes Developer

  • 1. IBM XPages The Next Step in Your Life As a Notes Developer Peter Presnell(GBS) Paul Calhoun(GBS)

2. Peter Presnell 3. Paul Calhoun 4. The Generic Pronoun Y'all(yaaaaawl) 5. WARNING The following presentation contains absolutely NO CODE!!!! 6. I'm A Notes Programmer 7. The Power User

  • Clients: Notes Only

8. Forms, Views, Pages, Outlines 9. Simple Actions, @Formulae 10. LotusScript: In-Line 11. SDLC: None 12. The Traditional Notes Developer

  • Clients: Notes, Web (80/20)

13. LotusScript: Libraries (Procedural) 14. Event Programming 15. Templates 16. SDLC: Iterative Prototyping or Waterfall 17. The Software Engineer

  • Clients: Notes, Web, Mobile Client

18. LotusScript: Libraries (OOP) 19. Java & JavaScript Frameworks 20. Web Services & SOA 21. SDLC: Agile & Test Driven Development 22. OpenSource 23. Architecture 24. NSF Container

  • Rapid Application Deployment

25. Integrated Code/Data 26. Non-SQL 27. DAOS 28. Security

  • ACLs

29. Roles 30. ECLs 31. Server Access 32. Reader/Author Fields

  • ACLs

33. Roles 34. ECLs (XPiNC) 35. Server Access* 36. Reader/Author Fields 37. Replication & Clustering

  • Scheduled

38. Clustered 39. Failover

  • Load Balancing

40. Client/Server Model

  • Client Based (RPC)

41. Client Validation 42. UI Dialogs Server Based (JSF)

  • Server Validation

43. JavaScript V SSJS 44. AJAX Support 45. Scope 46. R apidA pplicationD evelopment 47. As A RAD Tool

  • Easy To Learn

48. Well Documented 49. Quick To Develop 50. Proprietary Thick Client

  • Complicated

51. Poorly Documented 52. Powerful 53. Extensible 54. Open Standards 55. Shared Code

  • Shared Fields

56. Shared Columns 57. Subforms 58. Libraries (LS)

  • Custom Controls

59. Components 60. Beans 61. Libraries(JS/SSJS/Java) 62. Style Sheets/Themes 63. OpenSource

  • Templates

64. Code Snippets

  • Templates

65. Custom Controls 66. Components 67. Plug-Ins 68. Java Libraries 69. Notes Client Development

  • Standard
  • XPiNC

70. XPiNC

  • Notes ID Authentication

71. Offline Replication 72. Client Agent Execution 73. Failover Support 74. Native Platform Dialogs 75. Detects Unsaved Changes 76. Web Client Development

  • WebQuery Agents

77. PassThru HTML 78. In-Line HTML 79. Hacks, hacks, hacks 80. Browser Plug-In (TBA)

  • Standard

81. Byzantine of, relating to, or characterized by a devious and usually surreptitious manner of operation 82. Data Access Layer 83. Forms

  • Document = Form
  • NotesForm D/S

84. Views/Folders

  • Selection Formula

85. Columns 86. Data/Presentation

  • NotesView D/S

87. Add Columns 88. Repeat Control 89. SQL Data Sources 90. Presentation Layer 91. Forms/Pages

  • Forms

92. Pages 93. Fields 94. Tables 95. Layers 96. Hide-When 97. Static Properties

  • XPages

98. Data Source 99. Container Controls 100. Input Controls 101. Repeat Controls 102. Rendered 103. Computed Properties 104. Subforms To Custom Controls

  • Fields Unique

105. Single Instance

  • Duplicate Fields

106. Multiple Instances 107. Properties 108. Themes & CSS

  • Limited CSS Support
  • Integrated CSS

109. Themes 110. OneUI 111. HTML

  • Passthru HTML

112. WebQueryOpen

  • Native Support

113. Render Kits 114. Real Programmers 115. Business Logic 116. Simple Actions

  • 14 Simple Actions
  • 12 Server

117. 3 Client 118. Build Your with EL 119. @Functions

  • View Selection

120. Inline @Formulae

  • 300 @Functions

121. 391 @Commands Agents

  • View Selection

122. Inline SSJS

  • 96 @Functions

Agents 123. Scripting Languages

  • LotusScript
  • InLine/Events

124. Libraries 125. Agents 126. Web Services

  • SSJS
  • Inline/Events

127. Computed Properties 128. Libraries LotusScript

  • Agents

129. Web Services Expression Language 130. Client Scripting

  • JavaScript
  • InLine/Events

131. Libraries

  • JavaScript
  • InLine/Events

132. Libraries 133. Dojo Libraries 134. Dojo 135. Programming Languages

  • Java
  • Agents
  • Java
  • Agents

136. Inline/Events 137. Managed Beans 138. Plug-Ins 139. Java Element (8.5.3) 140. Document Object Model (DOM)

  • 92 Classes

141. 1,800 prop/methods

  • 50 Notes Classes

142. 6 new XSP Classes 143. The Event Model

  • Notes Client
  • QueryOpen

144. QueryRecalc 145. QueryModeChange 146. PostSave Web Client

  • WebQueryOpen

147. WebQuerySave

  • Std. XPage Events
  • beforePageLoad

148. afterPageLoad 149. afterRestoreView 150. beforeRenderResponse 151. AfterRenderResponse Phase Listeners 152. Tools 153. DDE

  • Visual Editor

154. LS Debugger

  • Source Code View

155. Drag/Drop 156. Limited Debugging 157. Source Control 158. 159. Resources 160. Study Guide

  • Java Server Faces (JSF)

161. Eclipse 162. Dojo 163. JavaScript 164. Java 165. Questions???