Sitefinity 4.0 Fluent API.

Slides:



Advertisements
Similar presentations
MWD1001 Website Production Using JavaScript with Forms.
Advertisements

AP Statistics Section 6.2C Independent Events & The Multiplication Rule.
Chapter 51 Scripting With JSP Elements JavaServer Pages By Xue Bai.
.NET Database Technologies: Open-Source Frameworks.
With jQuery and AJAX Doncho Minkov Telerik Corporation Technical Trainer.
© 2006 Pearson Addison-Wesley. All rights reserved9 A-1 Chapter 9 Advanced Java Topics (inheritance review + Java generics)
A DAPT IST Replication Framework: Progress Report Vance Maverick University of Bologna Dec. 11, 2003.
Fortran 9x HTML version. New F90 features Free source form Modules User-defined data types and operators Generic user-defined procedures Interface blocks.
1 CSCI 360 Survey Of Programming Languages 9 – Implementing Subprograms Spring, 2008 Doug L Hoffman, PhD.
-Uday Dhokale.  What is it ??? Prototype is a JavaScript Framework that aims to ease development of dynamic web applications.  Features a unique, easy-to-use.
Abstract Classes and Interfaces
Interfaces besides classes, Java recognizes another type, an interface interface is used to completely shield off all implementation from the programmer.
Inheritance and Polymorphism CS351 – Programming Paradigms.
Design Synopsys System Verilog API Donations to Accellera João Geada.
Subclasses and Subtypes CMPS Subclasses and Subtypes A class is a subclass if it has been built using inheritance. ▫ It says nothing about the meaning.
Definition from Wikipedia.  The Prototype JavaScript Framework  implemented as a single file of JavaScript code  named prototype.js (
2.5 OOP Principles Part 1 academy.zariba.com 1. Lecture Content 1.Fundamental Principles of OOP 2.Inheritance 3.Abstraction 4.Encapsulation 2.
Your Imagination, Our Innovation Add Event or Presentation Title in Master Slide Errors on searching on lot numbers After tabbing out of “start” field.
Sitefinity CMS Technical Overview & Developer’s Perspective
Implementing a custom JIRA UI using plugins 2.0 Andreas Knecht Plugins 2 & REST.
Todd Snyder Development Team Lead Infragistics Experience Design Group.
London April 2005 London April 2005 Creating Eyeblaster Ads The Rich Media Platform The Rich Media Platform Eyeblaster.
CSC 142 B 1 CSC 142 Java objects: a first view [Reading: chapters 1 & 2]
Polymorphism, Inheritance Pt. 1 COMP 401, Fall 2014 Lecture 7 9/9/2014.
CGS 3763 Operating Systems Concepts Spring 2013 Dan C. Marinescu Office: HEC 304 Office hours: M-Wd 11: :30 AM.
Designing classes How to write classes in a way that they are easily understandable, maintainable and reusable 3.0.
Finding and Sharing Information in a Site Module 5.
University of Sunderland COM 220 Lecture Six Slide 1 Building Interactive Forms Applications using Oracle.
Chapter 6 Server-side Programming: Java Servlets
ILM Proprietary and Confidential -
WCMS Updates January 18, Current version UW Base Profile 1.2 released in early December Highlights –Thumbnails for news and events –Improved promotional.
Domain and Persistence Patterns. Fundamental Pattern Types Design Patterns Business Logic Patterns.
SCALABLE EVOLUTION OF HIGHLY AVAILABLE SYSTEMS BY ABHISHEK ASOKAN 8/6/2004.
Evaluating Python as an Introductory Programming Language A. Thomas and H.L. Liang UNISA.
Chapter 18 The Observer Pattern Ku-Yaw Chang Assistant Professor, Department of Computer Science and Information Engineering Da-Yeh.
What is a Package? A package is an Oracle object, which holds other objects within it. Objects commonly held within a package are procedures, functions,
Server-side Programming The combination of –HTML –JavaScript –DOM is sometimes referred to as Dynamic HTML (DHTML) Web pages that include scripting are.
CS 11 C++ track: lecture 1 Administrivia Need a CS cluster account sysadmin/account_request.cgi Need to know UNIX (Linux)
If you haven’t activated your Edline account contact Ms. Callwood.
PHS / Department of General Practice Royal College of Surgeons in Ireland Coláiste Ríoga na Máinleá in Éirinn Knowledge representation in TRANSFoRm AMIA.
5.0 Objects First with Java A Practical Introduction using BlueJ David J. Barnes Michael Kölling.
Sadegh Aliakbary. Copyright ©2014 JAVACUP.IRJAVACUP.IR All rights reserved. Redistribution of JAVACUP contents is not prohibited if JAVACUP.
08 Encapsulation and Abstraction. 2 Contents Defining Abstraction Levels of Abstraction Class as Abstraction Defining a Java Class Instantiating a Class.
Design Patterns Software Engineering CS 561. Last Time Introduced design patterns Abstraction-Occurrence General Hierarchy Player-Role.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
CSE115: Introduction to Computer Science I Dr. Carl Alphonce 343 Davis Hall
Unit 13 –JQuery Basics Instructor: Brent Presley.
CS2852 Week 5, Class 2 Today Queue Applications Circular Queue Implementation Testing SE-2811 Slide design: Dr. Mark L. Hornick Content: Dr. Hornick Errors:
Small changes to code to improve it. Refactoring Defined A change made to the internal structure of software to make it easier to understand and cheaper.
Refactoring Agile Development Project. Lecture roadmap Refactoring Some issues to address when coding.
Watching the movie the hard way…. Page 256 – Head First Design Patterns.
AOP/cross-cutting What is an aspect?. An aspect is a modular unit that cross-cuts other modular units. What means cross-cutting? Apply AOP to AOP. Tease.
Martin Kruliš by Martin Kruliš (v1.0)1.
EJB Replication Graham, Iman, Santosh, Mark Newcastle University.
CS 350 – Software Design The Decorator Pattern – Chapter 17 In this chapter we expand our e-commerce case study and learn how to use the Decorator Pattern.
CSE 1020:Using Objects Mark Shtern 1-1. Summary Read API Method binding and overloading Development process Input validation Assert 1-2.
How EPA/ORD Moved to Drupal 7 Jessica Dearie U.S. EPA, Office of Research and Development Office of Science Information Management.
Developer Exam Preparation Thom Robbins Bryan Soltis
Module 9: Operator overloading #1 2000/01Scientific Computing in OOCourse code 3C59 Module 9: Operator Overloading In this module we will cover Overloading.
HTML5 Semantic
Mocking Tool for easier unit testing
FEATURE OF THE (EVERY OTHER) DAY
TEALS Minecraft Project
Author: Joe ‘The CRM Chap’ Griffin Website: crmchap.co.uk
Advanced Programming Behnam Hatami Fall 2017.
Names, Binding, and Scope
INFM 603 Main Class Project
Object Oriented Programming
Go.
02 | Angular Controllers Stacey Mulcahy | Technical Evangelist
Presentation transcript:

Sitefinity 4.0 Fluent API

Outline Introductory example Few words about Fluent API Fluent API vs. Native API Fluent API settings Named transactions and “using() { }” syntax Child facades Three random examples Future developments

Introductory example Create a news item

Few words about Fluent API “Fluent interface” – coined by Eric Evans and Martin Fowler Aims to provide for more readable code Method chaining and state Methods always return the instance that defines them (context) Context can be changed by returning different façade or terminated by returning void Resources: http://en.wikipedia.org/wiki/Fluent_interface

Fluent API vs. Native API Fluent API will NOT replace Native API – it’s an alternative In Sitefinity 4.0 Fluent API aims to cover 80% of most featured functionality For very complex operations, Native API (managers) ought to be used Fluent API is implemented as a façade over one or more managers

Fluent API settings Fluent API provides a way to set provider names and transaction name.

Named transactions and “using() { }” syntax Named transactions allow you to commit work made in multiple provides (e.g. generic content, events, pages) in a single call using() { } syntax provides a way to write code for different types and commit in a single call upon the exit of the using block

Child facades Child facades examples: Blog façade > Blog post façade Blog post façade > Comment facade Page façade > Control façade Done() method for exisiting the child facade

Three random examples Create a page Add dynamic field to NewsItem Create a completely new persistent type (e.g. like in forms module)

Future developments Cover all the managers with Fluent API facades Support for dynamic facades App.WorkWith<MyBlogFacade>() Code injection through Unity