Microsoft Dynamics Road To Repeatability Technical Deep Dive Server Extensibility in Microsoft Dynamics NAV. Vjekoslav Babić, MVP

Size: px
Start display at page:

Download "Microsoft Dynamics Road To Repeatability Technical Deep Dive Server Extensibility in Microsoft Dynamics NAV. Vjekoslav Babić, MVP"

Transcription

1 Microsoft Dynamics Road To Repeatability Technical Deep Dive Server Extensibility in Microsoft Dynamics NAV Vjekoslav Babić, MVP

2 About the Presenter Vjekoslav Babić consultant, trainer, blogger, author Authored 30+ How do I videos for NAV 2013, 2013 R2 and 2015 Written more 300+ blog posts and technical articles Most Valuable Professional for Microsoft Dynamics NAV since April 2010 Mibuso: Vjeko Blog:

3 Agenda Patterns and Practices Extending through.net Interoperability Extending through Web Services Combining.NET and Web Services Applying Patterns and Practices in server-side extensibility

4 Assumptions and Preconditions You know what SOAP web services are You know how to expose and consume web services in NAV You know what DotNet type in C/AL does You have basic.net Framework and C# understanding This session is NOT: Comprehensive course about web services Comprehensive course about.net interoperability

5 Why Server Extensibility? C/AL can become difficult to maintain and extend Not everything belongs in C/AL Not everything belongs in NAV

6 Patterns and Practices Benefits of Patterns and Practices Benefits of creational patterns Most useful creational patterns In this topic you will learn about: Importance of design patterns Creational patterns Singleton pattern Inversion of Control pattern

7 Patterns and Practices Everyday reality for developers in C#, Java, and many more languages Slowly taking on in C/AL world C/AL makes patterns difficult Common (non-nav) design patterns require more flexibility than C/AL provides Many patterns can be achieved through.net Interoperability

8 Benefits of Patterns and Practices Accelerated design and development Reduced technical risk Existing knowledge is leveraged Solutions are more maintainable Solutions are extensible Result in reusable code

9 Types of Patterns Creational Patterns Structural Patterns Behavioral Patterns

10 Creational Patterns Separate how objects are created, composed, and represented Increase system flexibility and extensibility Encapsulate knowledge about the classes that the system uses Hide the details about how the instances are created Two common creational patterns: Singleton Inversion of Control

11 Key takeaways Design patterns enable flexibility and repeatability Design patterns are commonly used in C#, and should be as commonly used in C/AL

12 Extending through.net Interoperability In this lesson, you will learn how to: Use reflection to access more.net functionality Leverage serialization on custom classes.net Interoperability basics Limitations of.net interoperability System.Reflection and related functionality

13 .NET Interoperability basics Accessible from C/AL: Classes, structures, enumerations, and interfaces Public constructors, properties, and methods Data-type mapping: Simple types: passing parameters and receiving return values Complex types: variable assignment String, DateTime, Object and Stream fully interchangeable with C/AL Limitations fields, generics, etc.

14 Limitations in.net interoperability Not available: Non-public members Fields Extension methods Delegates Generics Asynchronous execution Full compile-time type checking and many more

15 Reflection Capability of.net to gain run-time insight into objects, their structure, and functionality. System.Type is the foundation of reflection in.net Reflection allows: Accessing normally inaccessible content from C/AL Unprecedented runtime flexibility

16 Example of reflection runtime flexibility Generic page-based web service proxy: 1. Reads the WSDL document 2. Imports the service description from WSDL into a code namespace 3. Generates C# proxy code from code namespace 4. Compiles C# proxy code into an in-memory assembly 5. Uses reflection to call into proxy functionality and access web services

17 Exchanging data: Serialization Serialization enables a class to instance to be represented in a format ready for storing or transfer, for the purposes of: Persisting state Cloning Transfer data across application or system boundaries and many more In C/AL it is a prerequisite for exchanging data between server and client.

18 Key takeaways Most C# code can be translated to pure C/AL Inaccessible features can often be accessed through reflection Still inaccessible features can always be packed into wrapper classes Make custom classes serializable

19 Extending through Web Services In this topic, you will learn how to: Use XMLports to represent NAV data as object hierarchies A quick refresher of Web Services Web Services limitations Using XMLports in Web Services Benefits of using XMLports

20 A quick refresher SOAP Web Services OData Web Services Process-level integration Pages Codeunits Data-level integration Pages Queries

21 A quick refresher (continued ) Reading and writing of data through pages Data and process integrity is maintained, all triggers run All NAV deployment scenarios supported: Authentication modes Single/multi-tenancy SSL Cloud deployments and OAuth authentication

22 Some functional limitations Stateless Every call is an independent session No state sharing between calls Single-instance codeunits don t help Unilingual NAV always responds in ENU NAV disregards the User Personalization record And some more Work date FlowFields & FlowFilters No user interaction

23 XMLports in Web Service Calls XMLports can be bound as parameters in codeunit web services When an XMLport is used as a parameter: SOAP data is serialized into a stream Stream is automatically bound as source or destination You call IMPORT or EXPORT as necessary EXPORT can be omitted

24 Consuming XMLports through SOAP When XMLport is consumed: Data structure is mapped to an object hierarchy Data is strongly-typed NAV internal structure is abstracted

25 Benefits of XMLports Technical: Page services cause overhead Pages represent UI; XMLports represent data XMLport services provide better support for bulk operations (create, update) Architectural: XMLports are hierarchical Data structures are more persistent than UI structures XMLport logical data structure can be more abstract than actual structure

26 Key takeaways All NAV functionality can be accessed through web services Web services support all deployment scenarios XMLports increase flexibility and extensibility of web-service based integration scenarios

27 Combining.NET Framework and Web Services Applying Singleton pattern for crosssession state management Passing object data In this topic, you will learn how to: Extend server-side functionality through combining web services and.net interoperability. Overcome limitations of web services Pass complex and object-based data through Web Services

28 Singleton Pattern Makes sure that only one instance of an object exists. Various implementations in object-oriented languages. Single-instance codeunits: Closest approximation in C/SIDE They are not a correct implementation of the singleton pattern!

29 Applying Singleton pattern Singleton pattern enables storing volatile state on server level. Web service calls can benefit from cross-call state preservation through Singleton pattern.

30 Passing object data Consuming and exposing ends can use the same object structures Complex (object) data can be passed as strings: Serialized XML Serialized JSON Serialized Base64-encoded binary data Consumer serializes calls and deserializes responses Server deserializes calls and serializes responses

31 Key takeaways Singleton pattern allows cross-call state preservation Serialization enables complex data exchange through Web services

32 Applying Patterns and Practices In this topic, you will learn how to: Implement an inversion of control strategy to make code more extensible Use.NET interfaces to make functionality even more flexible Inversion of control through Factory and Service Locator patterns Class vs. Interface implementation

33 Inversion of Control Pattern A high-level creational pattern aiming at decoupling dependencies between code modules Various implementations Not all implementations are applicable in all environments In C/AL the following implementations are easy to accomplish: Factory Service Locator

34 Factory Pattern Objects are not instantiated directly, but through another object Our application has loose coupling with Their code Class instantiation is controlled at design time through code Factory has predefined knowledge of classes it can instantiate

35 Service Locator Pattern Objects are not instantiated directly, but through another object Our application has loose coupling with Their code Class instantiation is controlled at run-time through either design-time or run-time setup Service Locator has no predefined knowledge of classes it can instantiate

36 Creational Patterns Implementation Choices Base classes Simplify development Limit flexibility Interfaces Provide higher degree of flexibility Enable same objects to represent different entities (or functionality)

37 Key takeaways You should decouple your code from external dependencies Inversion of Control pattern provides flexible decoupling strategies C/AL.NET interoperability code should use interfaces whenever possible

38 Thank you!

Course 80436A C/Side Introduction in Microsoft Dynamics NAV 2013

Course 80436A C/Side Introduction in Microsoft Dynamics NAV 2013 Course 80436A C/Side Introduction in Dynamics NAV 2013 Duration: 5 days ILT Course Overview About this Course This five-day instructor-led course focuses on the capabilities and features of the Dynamics

More information

Programming in C# for Experienced Programmers

Programming in C# for Experienced Programmers Programming in C# for Experienced Programmers Course 20483C 5 Days Instructor-led, Hands-on Introduction This five-day, instructor-led training course teaches developers the programming skills that are

More information

MB NAV 2009 C/SIDE Solution Development. Version 1.0

MB NAV 2009 C/SIDE Solution Development. Version 1.0 MB7-841 NAV 2009 C/SIDE Solution Development Version 1.0 QUESTION NO: 1 He wants to know why it is a good idea to have a separate codeunit created for code that uses automation. (choose more than one)

More information

Advanced WCF 4.0 .NET. Web Services. Contents for.net Professionals. Learn new and stay updated. Design Patterns, OOPS Principles, WCF, WPF, MVC &LINQ

Advanced WCF 4.0 .NET. Web Services. Contents for.net Professionals. Learn new and stay updated. Design Patterns, OOPS Principles, WCF, WPF, MVC &LINQ Serialization PLINQ WPF LINQ SOA Design Patterns Web Services 4.0.NET Reflection Reflection WCF MVC Microsoft Visual Studio 2010 Advanced Contents for.net Professionals Learn new and stay updated Design

More information

81067AE Development Environment Introduction in Microsoft

81067AE Development Environment Introduction in Microsoft Microsoft Course Modules for Microsoft Training Online: 1. Development Environment Lesson 1: Object Designer. Lesson 2: 7 Objects & The Logical Database. Lesson 3: Managing Objects. Lesson 4: Properties

More information

DESIGN PATTERN - INTERVIEW QUESTIONS

DESIGN PATTERN - INTERVIEW QUESTIONS DESIGN PATTERN - INTERVIEW QUESTIONS http://www.tutorialspoint.com/design_pattern/design_pattern_interview_questions.htm Copyright tutorialspoint.com Dear readers, these Design Pattern Interview Questions

More information

Socket attaches to a Ratchet. 2) Bridge Decouple an abstraction from its implementation so that the two can vary independently.

Socket attaches to a Ratchet. 2) Bridge Decouple an abstraction from its implementation so that the two can vary independently. Gang of Four Software Design Patterns with examples STRUCTURAL 1) Adapter Convert the interface of a class into another interface clients expect. It lets the classes work together that couldn't otherwise

More information

Developing Microsoft.NET Applications for Windows (Visual Basic.NET)

Developing Microsoft.NET Applications for Windows (Visual Basic.NET) Developing Microsoft.NET Applications for Windows (Visual Basic.NET) Course Number: 2555 Length: 1 Day(s) Certification Exam This course will help you prepare for the following Microsoft Certified Professional

More information

Software Architecture With ColdFusion: Design Patterns and Beyond Topics Outline Prepared by Simon Horwith for CFUnderground 6

Software Architecture With ColdFusion: Design Patterns and Beyond Topics Outline Prepared by Simon Horwith for CFUnderground 6 Software Architecture With ColdFusion: Design Patterns and Beyond Topics Outline Prepared by Simon Horwith for CFUnderground 6 Some Terms: Architecture the manner in which the components of a computer

More information

Dot Net Framework 4.0: Advanced Microsoft C#.NET Web Development

Dot Net Framework 4.0: Advanced Microsoft C#.NET Web Development Dot Net Framework 4.0: Advanced Microsoft C#.NET Web Development Duration: 90 Hours What you will learn This course is your first step towards success as a Dot Net professional, designed to give you a

More information

Introduction to RESTful Web Services. Presented by Steve Ives

Introduction to RESTful Web Services. Presented by Steve Ives 1 Introduction to RESTful Web Services Presented by Steve Ives Introduction to RESTful Web Services What are web services? How are web services implemented? Why are web services used? Categories of web

More information

Design Patterns. Manuel Mastrofini. Systems Engineering and Web Services. University of Rome Tor Vergata June 2011

Design Patterns. Manuel Mastrofini. Systems Engineering and Web Services. University of Rome Tor Vergata June 2011 Design Patterns Lecture 1 Manuel Mastrofini Systems Engineering and Web Services University of Rome Tor Vergata June 2011 Definition A pattern is a reusable solution to a commonly occurring problem within

More information

1 Software Architecture

1 Software Architecture Some buzzwords and acronyms for today Software architecture Design pattern Separation of concerns Single responsibility principle Keep it simple, stupid (KISS) Don t repeat yourself (DRY) Don t talk to

More information

JAVA COURSES. Empowering Innovation. DN InfoTech Pvt. Ltd. H-151, Sector 63, Noida, UP

JAVA COURSES. Empowering Innovation. DN InfoTech Pvt. Ltd. H-151, Sector 63, Noida, UP 2013 Empowering Innovation DN InfoTech Pvt. Ltd. H-151, Sector 63, Noida, UP contact@dninfotech.com www.dninfotech.com 1 JAVA 500: Core JAVA Java Programming Overview Applications Compiler Class Libraries

More information

CS342: Software Design. November 21, 2017

CS342: Software Design. November 21, 2017 CS342: Software Design November 21, 2017 Runnable interface: create threading object Thread is a flow of control within a program Thread vs. process All execution in Java is associated with a Thread object.

More information

C/SIDE Introduction in Microsoft Dynamics NAV 2009 Course 80042A: 5 Days; Instructor-Led

C/SIDE Introduction in Microsoft Dynamics NAV 2009 Course 80042A: 5 Days; Instructor-Led C/SIDE Introduction in Microsoft Dynamics NAV 2009 Course 80042A: 5 Days; Instructor-Led About this Course The five-day course, C/SIDE Introduction in Microsoft Dynamics 2009 examines all aspects of the

More information

04 Webservices. Web APIs REST Coulouris. Roy Fielding, Aphrodite, chp.9. Chp 5/6

04 Webservices. Web APIs REST Coulouris. Roy Fielding, Aphrodite, chp.9. Chp 5/6 04 Webservices Web APIs REST Coulouris chp.9 Roy Fielding, 2000 Chp 5/6 Aphrodite, 2002 http://www.xml.com/pub/a/2004/12/01/restful-web.html http://www.restapitutorial.com Webservice "A Web service is

More information

Web Application Development Using JEE, Enterprise JavaBeans and JPA

Web Application Development Using JEE, Enterprise JavaBeans and JPA Web Application Development Using JEE, Enterprise Java and JPA Duration: 35 hours Price: $750 Delivery Option: Attend training via an on-demand, self-paced platform paired with personal instructor facilitation.

More information

Application Architectures, Design Patterns

Application Architectures, Design Patterns Application Architectures, Design Patterns Martin Ledvinka martin.ledvinka@fel.cvut.cz Winter Term 2017 Martin Ledvinka (martin.ledvinka@fel.cvut.cz) Application Architectures, Design Patterns Winter Term

More information

Design Pattern. CMPSC 487 Lecture 10 Topics: Design Patterns: Elements of Reusable Object-Oriented Software (Gamma, et al.)

Design Pattern. CMPSC 487 Lecture 10 Topics: Design Patterns: Elements of Reusable Object-Oriented Software (Gamma, et al.) Design Pattern CMPSC 487 Lecture 10 Topics: Design Patterns: Elements of Reusable Object-Oriented Software (Gamma, et al.) A. Design Pattern Design patterns represent the best practices used by experienced

More information

The Design Patterns Matrix From Analysis to Implementation

The Design Patterns Matrix From Analysis to Implementation The Design Patterns Matrix From Analysis to Implementation This is an excerpt from Shalloway, Alan and James R. Trott. Design Patterns Explained: A New Perspective for Object-Oriented Design. Addison-Wesley

More information

Review Questions with Answers

Review Questions with Answers Review Questions with Answers Chapter 1: Review questions 1. An ERP system such as NAV 2013 includes a number of functional areas. Which of the following are part of NAV 2013? Choose four. a, b, d, e a.

More information

Web Application Development Using JEE, Enterprise JavaBeans and JPA

Web Application Development Using JEE, Enterprise JavaBeans and JPA Web Application Development Using JEE, Enterprise Java and JPA Duration: 5 days Price: $2795 *California residents and government employees call for pricing. Discounts: We offer multiple discount options.

More information

Fast Track to EJB 3.0 and the JPA Using JBoss

Fast Track to EJB 3.0 and the JPA Using JBoss Fast Track to EJB 3.0 and the JPA Using JBoss The Enterprise JavaBeans 3.0 specification is a deep overhaul of the EJB specification that is intended to improve the EJB architecture by reducing its complexity

More information

Introduction to Programming Microsoft.NET Applications with Visual Studio 2008 (C#)

Introduction to Programming Microsoft.NET Applications with Visual Studio 2008 (C#) Introduction to Programming Microsoft.NET Applications with Visual Studio 2008 (C#) Course Number: 6367A Course Length: 3 Days Course Overview This three-day course will enable students to start designing

More information

Web-APIs. Examples Consumer Technology Cross-Domain communication Provider Technology

Web-APIs. Examples Consumer Technology Cross-Domain communication Provider Technology Web-APIs Examples Consumer Technology Cross-Domain communication Provider Technology Applications Blogs and feeds OpenStreetMap Amazon, Ebay, Oxygen, Magento Flickr, YouTube 3 more on next pages http://en.wikipedia.org/wiki/examples_of_representational_state_transfer

More information

Mastering VB.NET using Visual Studio 2010 Course Length: 5 days Price: $2,500

Mastering VB.NET using Visual Studio 2010 Course Length: 5 days Price: $2,500 Mastering VB.NET using Visual Studio 2010 Course Length: 5 days Price: $2,500 Summary Each day there will be a combination of presentations, code walk-throughs, and handson projects. The final project

More information

Chapter 6 Enterprise Java Beans

Chapter 6 Enterprise Java Beans Chapter 6 Enterprise Java Beans Overview of the EJB Architecture and J2EE platform The new specification of Java EJB 2.1 was released by Sun Microsystems Inc. in 2002. The EJB technology is widely used

More information

Software Design COSC 4353/6353 DR. RAJ SINGH

Software Design COSC 4353/6353 DR. RAJ SINGH Software Design COSC 4353/6353 DR. RAJ SINGH Outline What is SOA? Why SOA? SOA and Java Different layers of SOA REST Microservices What is SOA? SOA is an architectural style of building software applications

More information

CO Java EE 6: Develop Web Services with JAX-WS & JAX-RS

CO Java EE 6: Develop Web Services with JAX-WS & JAX-RS CO-77754 Java EE 6: Develop Web Services with JAX-WS & JAX-RS Summary Duration 5 Days Audience Java Developer, Java EE Developer, J2EE Developer Level Professional Technology Java EE 6 Delivery Method

More information

(9A05803) WEB SERVICES (ELECTIVE - III)

(9A05803) WEB SERVICES (ELECTIVE - III) 1 UNIT III (9A05803) WEB SERVICES (ELECTIVE - III) Web services Architecture: web services architecture and its characteristics, core building blocks of web services, standards and technologies available

More information

Gary Winter Eric Wauters Vjeko Babic Mark Brummel

Gary Winter Eric Wauters Vjeko Babic Mark Brummel Gary Winter Eric Wauters Vjeko Babic Mark Brummel DDC is Three Years young! About Me Mark Brummel 15 Years of NAV Experience MVP Since 2006 Co-Founder of Dutch Dynamics Community Co-Founder and CEO of

More information

Design patterns using Spring and Guice

Design patterns using Spring and Guice Design patterns using Spring and Guice Dhanji R. Prasanna MANNING contents 1 Dependency 2 Time preface xv acknowledgments xvii about this book xix about the cover illustration xxii injection: what s all

More information

Java EE 7: Back-End Server Application Development

Java EE 7: Back-End Server Application Development Oracle University Contact Us: Local: 0845 777 7 711 Intl: +44 845 777 7 711 Java EE 7: Back-End Server Application Development Duration: 5 Days What you will learn The Java EE 7: Back-End Server Application

More information

DEVELOPING WEB APPLICATIONS WITH MICROSOFT VISUAL STUDIO Course: 10264A; Duration: 5 Days; Instructor-led

DEVELOPING WEB APPLICATIONS WITH MICROSOFT VISUAL STUDIO Course: 10264A; Duration: 5 Days; Instructor-led CENTER OF KNOWLEDGE, PATH TO SUCCESS Website: DEVELOPING WEB APPLICATIONS WITH MICROSOFT VISUAL STUDIO 2010 Course: 10264A; Duration: 5 Days; Instructor-led WHAT YOU WILL LEARN In this course, students

More information

Chapter 8 Web Services Objectives

Chapter 8 Web Services Objectives Chapter 8 Web Services Objectives Describe the Web services approach to the Service- Oriented Architecture concept Describe the WSDL specification and how it is used to define Web services Describe the

More information

DEVELOPING WEB AZURE AND WEB SERVICES MICROSOFT WINDOWS AZURE

DEVELOPING WEB AZURE AND WEB SERVICES MICROSOFT WINDOWS AZURE 70-487 DEVELOPING WEB AZURE AND WEB SERVICES MICROSOFT WINDOWS AZURE ACCESSING DATA(20 TO 25%) 1) Choose data access technologies a) Choose a technology (ADO.NET, Entity Framework, WCF Data Services, Azure

More information

70-487: Developing Windows Azure and Web Services

70-487: Developing Windows Azure and Web Services 70-487: Developing Windows Azure and Web Services Candidates for this certification are professional developers that use Visual Studio 2015112017 11 and the Microsoft.NET Core Framework 4.5 to design and

More information

Aim behind client server architecture Characteristics of client and server Types of architectures

Aim behind client server architecture Characteristics of client and server Types of architectures QA Automation - API Automation - All in one course Course Summary: In detailed, easy, step by step, real time, practical and well organized Course Not required to have any prior programming knowledge,

More information

The Evolution of Java Persistence

The Evolution of Java Persistence The Evolution of Java Persistence Doug Clarke Oracle Ottawa, Canada Keywords: Java, Persistence, JPA, JAXB, JSON, REST Introduction The data access requirements of today s Java applications keep expanding

More information

XML Web Service? A programmable component Provides a particular function for an application Can be published, located, and invoked across the Web

XML Web Service? A programmable component Provides a particular function for an application Can be published, located, and invoked across the Web Web Services. XML Web Service? A programmable component Provides a particular function for an application Can be published, located, and invoked across the Web Platform: Windows COM Component Previously

More information

The application must track specific user actions / events and communicate them to Responsys through a SOAP service.

The application must track specific user actions / events and communicate them to Responsys through a SOAP service. Responsys Integration Architecture Scope The intention of this section is to present the high level architecture of the integration between the Forever21 websphere commerce application and the external

More information

Programming in C#

Programming in C# Course Outline 20483- Programming in C# Duration: 5 days (30 hours) Target Audience: This course is intended for experienced developers who already have programming experience in C, C++, JavaScript, Objective-C,

More information

Java Web Service Essentials (TT7300) Day(s): 3. Course Code: GK4232. Overview

Java Web Service Essentials (TT7300) Day(s): 3. Course Code: GK4232. Overview Java Web Service Essentials (TT7300) Day(s): 3 Course Code: GK4232 Overview Geared for experienced developers, Java Web Service Essentials is a three day, lab-intensive web services training course that

More information

Developing Microsoft.NET Applications for Windows (Visual Basic.NET)

Developing Microsoft.NET Applications for Windows (Visual Basic.NET) Developing Microsoft.NET Applications for Windows (Visual Basic.NET) Course Number: 2565 Length: 5 Day(s) Certification Exam This course will help you prepare for the following Microsoft Certified Professional

More information

CO Java EE 7: Back-End Server Application Development

CO Java EE 7: Back-End Server Application Development CO-85116 Java EE 7: Back-End Server Application Development Summary Duration 5 Days Audience Application Developers, Developers, J2EE Developers, Java Developers and System Integrators Level Professional

More information

CAS 703 Software Design

CAS 703 Software Design Dr. Ridha Khedri Department of Computing and Software, McMaster University Canada L8S 4L7, Hamilton, Ontario Acknowledgments: Material based on Software by Tao et al. (Chapters 9 and 10) (SOA) 1 Interaction

More information

EPL 603 TOPICS IN SOFTWARE ENGINEERING. Lab 6: Design Patterns

EPL 603 TOPICS IN SOFTWARE ENGINEERING. Lab 6: Design Patterns EPL 603 TOPICS IN SOFTWARE ENGINEERING Lab 6: Design Patterns Links to Design Pattern Material 1 http://www.oodesign.com/ http://www.vincehuston.org/dp/patterns_quiz.html Types of Design Patterns 2 Creational

More information

X-S Framework Leveraging XML on Servlet Technology

X-S Framework Leveraging XML on Servlet Technology X-S Framework Leveraging XML on Servlet Technology Rajesh Kumar R Abstract This paper talks about a XML based web application framework that is based on Java Servlet Technology. This framework leverages

More information

DOT NET Syllabus (6 Months)

DOT NET Syllabus (6 Months) DOT NET Syllabus (6 Months) THE COMMON LANGUAGE RUNTIME (C.L.R.) CLR Architecture and Services The.Net Intermediate Language (IL) Just- In- Time Compilation and CLS Disassembling.Net Application to IL

More information

Java J Course Outline

Java J Course Outline JAVA EE - J2SE - CORE JAVA After all having a lot number of programming languages. Why JAVA; yet another language!!! AND NOW WHY ONLY JAVA??? CHAPTER 1: INTRODUCTION What is Java? History Versioning The

More information

GEL Scripts Advanced. Your Guides: Ben Rimmasch, Yogesh Renapure

GEL Scripts Advanced. Your Guides: Ben Rimmasch, Yogesh Renapure GEL Scripts Advanced Your Guides: Ben Rimmasch, Yogesh Renapure Introductions 2 Take 5 Minutes Turn to a Person Near You Introduce Yourself Agenda 3 Accessing JAVA Classes and Methods SOAP Web Services

More information

Windows Presentation Foundation Programming Using C#

Windows Presentation Foundation Programming Using C# Windows Presentation Foundation Programming Using C# Duration: 35 hours Price: $750 Delivery Option: Attend training via an on-demand, self-paced platform paired with personal instructor facilitation.

More information

CSCD01 Engineering Large Software Systems. Design Patterns. Joe Bettridge. Winter With thanks to Anya Tafliovich

CSCD01 Engineering Large Software Systems. Design Patterns. Joe Bettridge. Winter With thanks to Anya Tafliovich CSCD01 Engineering Large Software Systems Design Patterns Joe Bettridge Winter 2018 With thanks to Anya Tafliovich Design Patterns Design patterns take the problems consistently found in software, and

More information

Using Design Patterns in Java Application Development

Using Design Patterns in Java Application Development Using Design Patterns in Java Application Development ExxonMobil Research & Engineering Co. Clinton, New Jersey Michael P. Redlich (908) 730-3416 michael.p.redlich@exxonmobil.com About Myself Degree B.S.

More information

About 1. Chapter 1: Getting started with odata 2. Remarks 2. Examples 2. Installation or Setup 2. Odata- The Best way to Rest 2

About 1. Chapter 1: Getting started with odata 2. Remarks 2. Examples 2. Installation or Setup 2. Odata- The Best way to Rest 2 odata #odata Table of Contents About 1 Chapter 1: Getting started with odata 2 Remarks 2 Examples 2 Installation or Setup 2 Odata- The Best way to Rest 2 Chapter 2: Azure AD authentication for Node.js

More information

Software Design COSC 4353/6353 D R. R A J S I N G H

Software Design COSC 4353/6353 D R. R A J S I N G H Software Design COSC 4353/6353 D R. R A J S I N G H Design Patterns What are design patterns? Why design patterns? Example DP Types Toolkit, Framework, and Design Pattern A toolkit is a library of reusable

More information

BEAAquaLogic. Service Bus. Interoperability With EJB Transport

BEAAquaLogic. Service Bus. Interoperability With EJB Transport BEAAquaLogic Service Bus Interoperability With EJB Transport Version 3.0 Revised: February 2008 Contents EJB Transport Introduction...........................................................1-1 Invoking

More information

API Design & Management

API Design & Management API Design & Management Core Competencies: Overview * At Dell Boomi, we want all of our users to develop core competencies in in our AtomSphere Platform, which we believe lead to sustained success. Our

More information

for Multi-Services Gateways

for Multi-Services Gateways KURA an OSGi-basedApplication Framework for Multi-Services Gateways Introduction & Technical Overview Pierre Pitiot Grenoble 19 février 2014 Multi-Service Gateway Approach ESF / Increasing Value / Minimizing

More information

MCSA Universal Windows Platform. A Success Guide to Prepare- Programming in C# edusum.com

MCSA Universal Windows Platform. A Success Guide to Prepare- Programming in C# edusum.com 70-483 MCSA Universal Windows Platform A Success Guide to Prepare- Programming in C# edusum.com Table of Contents Introduction to 70-483 Exam on Programming in C#... 2 Microsoft 70-483 Certification Details:...

More information

Apex TG India Pvt. Ltd.

Apex TG India Pvt. Ltd. (Core C# Programming Constructs) Introduction of.net Framework 4.5 FEATURES OF DOTNET 4.5 CLR,CLS,CTS, MSIL COMPILER WITH TYPES ASSEMBLY WITH TYPES Basic Concepts DECISION CONSTRUCTS LOOPING SWITCH OPERATOR

More information

Who Should Read This Book?

Who Should Read This Book? Preface W INDOWS C OMMUNICATION F OUNDATION (WCF) is the unified programming model for writing distributed applications on the Microsoft platform. It subsumes the prior technologies of ASMX,.NET Remoting,

More information

Automating Administration with Windows PowerShell 2.0

Automating Administration with Windows PowerShell 2.0 Automating Administration with Windows PowerShell 2.0 Course No. 10325 5 Days Instructor-led, Hands-on Introduction This course provides students with the knowledge and skills to utilize Windows PowerShell

More information

LOOM.NET- An Aspect Weaving Tool

LOOM.NET- An Aspect Weaving Tool LOOM.NET- An Aspect Weaving Tool Wolfgang Schult, Peter Troeger and Andreas Polze Hasso-Plattner-Institute 14440 Potsdam, Germany wolfgang.schult peter.troeger andreas.polze@hpi.uni-potsdam.de July 16,

More information

BUILDING APPLICATIONS USING C# AND.NET FRAMEWORK (OBJECT-ORIENTED PROGRAMMING, X428.6)

BUILDING APPLICATIONS USING C# AND.NET FRAMEWORK (OBJECT-ORIENTED PROGRAMMING, X428.6) Technology & Information Management Instructor: Michael Kremer, Ph.D. Class 7 Professional Program: Data Administration and Management BUILDING APPLICATIONS USING C# AND.NET FRAMEWORK (OBJECT-ORIENTED

More information

Distributed Technologies - overview & GIPSY Communication Procedure

Distributed Technologies - overview & GIPSY Communication Procedure DEPARTMENT OF COMPUTER SCIENCE CONCORDIA UNIVERSITY Distributed Technologies - overview & GIPSY Communication Procedure by Emil Vassev June 09, 2003 Index 1. Distributed Applications 2. Distributed Component

More information

Developing Classic Windows Forms applications using Visual Studio 2010 and.net QASMTNET4

Developing Classic Windows Forms applications using Visual Studio 2010 and.net QASMTNET4 Developing Classic Windows Forms applications using Visual Studio 2010 and.net 4.0 - QASMTNET4 Course Details Days 5 Course code QASMTNET4 Course Outline Overview With the advent of C# 4.0 and Visual Studio

More information

DOT NET COURSE BROCHURE

DOT NET COURSE BROCHURE Page 1 1Pointer Technology Chacko Towers,Anna nagar Main Road, Anna Nager(Annai Insititute 2nd Floor) Pondicherry-05 Mobile :+91-9600444787,9487662326 Website : http://www.1pointer.com/ Email : info@1pointer.com/onepointertechnology@gmail.com

More information

Programming in Visual Basic with Microsoft Visual Studio 2010

Programming in Visual Basic with Microsoft Visual Studio 2010 Programming in Visual Basic with Microsoft Visual Studio 2010 Course 10550; 5 Days, Instructor-led Course Description This course teaches you Visual Basic language syntax, program structure, and implementation

More information

.Net Interview Questions

.Net Interview Questions .Net Interview Questions 1.What is.net? NET is an integral part of many applications running on Windows and provides common functionality for those applications to run. This download is for people who

More information

Curriculum Guide. ThingWorx

Curriculum Guide. ThingWorx Curriculum Guide ThingWorx Live Classroom Curriculum Guide Introduction to ThingWorx 8 ThingWorx 8 User Interface Development ThingWorx 8 Platform Administration ThingWorx 7.3 Fundamentals Applying Machine

More information

describe the functions of Windows Communication Foundation describe the features of the Windows Workflow Foundation solution

describe the functions of Windows Communication Foundation describe the features of the Windows Workflow Foundation solution 1 of 9 10/9/2013 1:38 AM WCF and WF Learning Objectives After completing this topic, you should be able to describe the functions of Windows Communication Foundation describe the features of the Windows

More information

.NET-6Weeks Project Based Training

.NET-6Weeks Project Based Training .NET-6Weeks Project Based Training Core Topics 1. C# 2. MS.Net 3. ASP.NET 4. 1 Project MS.NET MS.NET Framework The.NET Framework - an Overview Architecture of.net Framework Types of Applications which

More information

Hands On, Instructor-Led IT Courses Across Colorado

Hands On, Instructor-Led IT Courses Across Colorado Hands On, Instructor-Led IT Courses Across Colorado Offering instructor-led courses in: Java, Java EE and OOAD SQL Programming and SQL Server UNIX, Linux Administration.NET Programming Web Programming

More information

Design Patterns. SE3A04 Tutorial. Jason Jaskolka

Design Patterns. SE3A04 Tutorial. Jason Jaskolka SE3A04 Tutorial Jason Jaskolka Department of Computing and Software Faculty of Engineering McMaster University Hamilton, Ontario, Canada jaskolj@mcmaster.ca November 18/19, 2014 Jason Jaskolka 1 / 35 1

More information

Saikat Banerjee Page 1

Saikat Banerjee Page 1 1.What is.net? NET is an integral part of many applications running on Windows and provides common functionality for those applications to run. This download is for people who need.net to run an application

More information

PROGRAMMING IN VISUAL BASIC WITH MICROSOFT VISUAL STUDIO Course: 10550A; Duration: 5 Days; Instructor-led

PROGRAMMING IN VISUAL BASIC WITH MICROSOFT VISUAL STUDIO Course: 10550A; Duration: 5 Days; Instructor-led CENTER OF KNOWLEDGE, PATH TO SUCCESS Website: PROGRAMMING IN VISUAL BASIC WITH MICROSOFT VISUAL STUDIO 2010 Course: 10550A; Duration: 5 Days; Instructor-led WHAT YOU WILL LEARN This course teaches you

More information

Oracle Service Cloud Integration for Developers Ed 1

Oracle Service Cloud Integration for Developers Ed 1 Oracle University Contact Us: Local: 1800 103 4775 Intl: +91 80 67863102 Oracle Service Cloud Integration for Developers Ed 1 Duration: 5 Days What you will learn The class covers how to extend the Service

More information

Object-Oriented Design

Object-Oriented Design Object-Oriented Design Lecturer: Raman Ramsin Lecture 20: GoF Design Patterns Creational 1 Software Patterns Software Patterns support reuse of software architecture and design. Patterns capture the static

More information

A domain model-centric approach to J2EE development. Keiron McCammon CTO Versant Corporation

A domain model-centric approach to J2EE development. Keiron McCammon CTO Versant Corporation A domain model-centric approach to J2EE development Keiron McCammon CTO Versant Corporation 1 Patterns of Enterprise Application Architecture Martin Fowler, at. al. Overview What is a domain model centric

More information

Services Oriented Architecture and the Enterprise Services Bus

Services Oriented Architecture and the Enterprise Services Bus IBM Software Group Services Oriented Architecture and the Enterprise Services Bus The next step to an on demand business Geoff Hambrick Distinguished Engineer, ISSW Enablement Team ghambric@us.ibm.com

More information

Choosing a Development Tool

Choosing a Development Tool Microsoft Dynamics GP 2013 Choosing a Development Tool White Paper This paper provides guidance when choosing which development tool to use to create an integration for Microsoft Dynamics GP. Date: February

More information

REST Web Services Objektumorientált szoftvertervezés Object-oriented software design

REST Web Services Objektumorientált szoftvertervezés Object-oriented software design REST Web Services Objektumorientált szoftvertervezés Object-oriented software design Dr. Balázs Simon BME, IIT Outline HTTP REST REST principles Criticism of REST CRUD operations with REST RPC operations

More information

Advanced Service Design. vrealize Automation 6.2

Advanced Service Design. vrealize Automation 6.2 vrealize Automation 6.2 You can find the most up-to-date technical documentation on the VMware website at: https://docs.vmware.com/ If you have comments about this documentation, submit your feedback to

More information

A NET Refresher

A NET Refresher .NET Refresher.NET is the latest version of the component-based architecture that Microsoft has been developing for a number of years to support its applications and operating systems. As the name suggests,.net

More information

STARCOUNTER. Technical Overview

STARCOUNTER. Technical Overview STARCOUNTER Technical Overview Summary 3 Introduction 4 Scope 5 Audience 5 Prerequisite Knowledge 5 Virtual Machine Database Management System 6 Weaver 7 Shared Memory 8 Atomicity 8 Consistency 9 Isolation

More information

DOT NET SYLLABUS FOR 6 MONTHS

DOT NET SYLLABUS FOR 6 MONTHS DOT NET SYLLABUS FOR 6 MONTHS INTRODUCTION TO.NET Domain of.net D.N.A. Architecture One Tier Two Tier Three Tier N-Tier THE COMMON LANGUAGE RUNTIME (C.L.R.) CLR Architecture and Services The.Net Intermediate

More information

"Charting the Course... Mastering EJB 3.0 Applications. Course Summary

Charting the Course... Mastering EJB 3.0 Applications. Course Summary Course Summary Description Our training is technology centric. Although a specific application server product will be used throughout the course, the comprehensive labs and lessons geared towards teaching

More information

Chapter 2 Introduction

Chapter 2 Introduction Chapter 2 Introduction PegaRULES Process Commander applications are designed to complement other systems and technologies that you already have in place for doing work. The Process Commander integration

More information

CHAPTER 7 COM and.net

CHAPTER 7 COM and.net 1 CHAPTER 7 COM and.net Evolution of DCOM Introduction to COM COM clients and servers COM IDL & COM Interfaces COM Threading Models. Marshalling, Custom and standard marshalling. Comparison COM and CORBA.

More information

Top Down Design vs. Modularization

Top Down Design vs. Modularization 6.170 Quiz Review Topics: 1. Decoupling 2. 3. AF & RI 4. Iteration Abstraction & Iterators 5. OMs and Invariants 6. Equality, Copying, Views 7. 8. Design Patterns 9. Subtyping 10. Case Studies Decomposition

More information

Distributed Multitiered Application

Distributed Multitiered Application Distributed Multitiered Application Java EE platform uses a distributed multitiered application model for enterprise applications. Logic is divided into components https://docs.oracle.com/javaee/7/tutorial/overview004.htm

More information

Oracle Service Cloud Integration for Develope

Oracle Service Cloud Integration for Develope Oracle Uni Contact Us: 08 Oracle Service Cloud Integration for Develope Durat5 Da What you will learn The class covers how to extend the Service Cloud objec applicable to all APIs before moving on to specific

More information

New Programming Paradigms

New Programming Paradigms New Programming Paradigms Lecturer: Pánovics János (google the name for further details) Requirements: For signature: classroom work and a 15-minute presentation Exam: written exam (mainly concepts and

More information

Effective Web Dynpro - Adaptive RFC Models

Effective Web Dynpro - Adaptive RFC Models Effective Web Dynpro - Adaptive RFC Models Bertram Ganz, NWF Web Dynpro Foundation for Java Overview In many Web Dynpro applications, backend access is based on RFC modules in SAP systems. The Web Dynpro

More information

Software Design Patterns. Background 1. Background 2. Jonathan I. Maletic, Ph.D.

Software Design Patterns. Background 1. Background 2. Jonathan I. Maletic, Ph.D. Software Design Patterns Jonathan I. Maletic, Ph.D. Department of Computer Science Kent State University J. Maletic 1 Background 1 Search for recurring successful designs emergent designs from practice

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

Architectural patterns and models for implementing CSPA

Architectural patterns and models for implementing CSPA Architectural patterns and models for implementing CSPA Marco Silipo THE CONTRACTOR IS ACTING UNDER A FRAMEWORK CONTRACT CONCLUDED WITH THE COMMISSION Application architecture Outline SOA concepts and

More information

JBPM Course Content. Module-1 JBPM overview, Drools overview

JBPM Course Content. Module-1 JBPM overview, Drools overview JBPM Course Content Module-1 JBPM overview, Drools overview JBPM overview Drools overview Community projects Vs Enterprise projects Eclipse integration JBPM console JBPM components Getting started Downloads

More information