Brendon Schwartz
bschwartz@devcowsoftware.com
http://blogs.sharepointguys.com/brendon
Senior Software Engineer
Telligent
Brendon Schwartz
Senior Software Engineer, Telligent
Experience:
   SharePoint Server Microsoft MVP and ASP.NET MVP
   Architect for applications at AJC, AT&T,
    AutoTrader.com, Coca-Cola Enterprises
   Co-founder, Atlanta .NET Regular Guys www.devcow.com
   Past Vice President of Technology, INETA
   Author of books and magazines
 Create Entities based on domain
   Examples:
      Company
      Order
      Users

 Entities usually have data access method
 Lazy load any large objects
 Have base classes
   Page Class in web
   Stream class for input/output
 Design your system by determining
   Interfaces
   Abstract classes
   Base class implementations
 Different options
   Manually
   Automated
   Generated
 Many tools
   CodeSmith
   OR Mappings
   Microsoft ADO.NET Entity Framework
   LINQ
   ASP.NET MVC
 Only if it makes sense
 Common pattern books
   Fowler, Martin (2002). Patterns of Enterprise Application
    Architecture
   Gang of Four (1995). Design Patterns: Elements of
    Reusable Object-Oriented Software
 New patterns always coming out so stay on top of it
   http://martinfowler.com/bliki/FluentInterface.html
Building social and RESTful frameworks
Located @ http://jobs.devcow.com
 Usually are built around interaction
   Blogs
   Wikis
   Comments
   RSS
   Mashups
 XML format of data
 Most common in blogs
 Use with any list of data
   Events
   Announcements
   Lists
 Pull data and format in RSS standard
 Good integration point for other apps to consume
 Tag Content to make it more relevant
 Display tags per item or collectively
 Helps discover similar data
 Provides metadata for organization and discovery
 Allows author to describe content
 Tag Clouds are the most common display
 Assemble multiple sources together
 Mashups are built with
  many blocks
 Blocks provide
   Input
   Output
 No difference between
  display and data provider
 Connect to LOB systems
Visit @ http://www.codeplex.com/mashup
 REpresentational State Transfer
   Architectural style for distributed hypermedia systems,
    introduced by Roy Fielding (2000)
   Client-Server
   Stateless communication
   Cacheable
   Uniform interface for resources
   Layered
 Resources (nouns)
   Identified by a URI, For example:
    http://yousite/users/admin
 Uniform interface (verbs)
   Small fixed set:
    Create, Read, Update, Delete
 State Representations
    data and state transferred between client and server
 Transferred through web options
    XML, JSON, Atom, XHTML, ...
 CRUD methods map to web requests
   Create POST/ PUT
   Read GET
   Update PUT
   Delete DELETE
 Send data in an XML payload
 Set the HTTP Header properties
 Blog Collection
   /bloggroup/ - container for blog
   /bloggroup/{id}/blog - 1 blog
   /bloggroup/{id}/blog/posts
 URI Templates are URIs with variables within the
  URI syntax.
 Records can be returned in any standard web
  format
 A good rest client API is a set of wrappers
 Usually built with Javascript or scripting languages
 Authentication with API key
 Parameters are passed in URI/URL
http://api.meetup.com/groups1.xml2/?zip=11211&topic=moms3&order=me
  mbers4&key=ABDE12456AB23244455
    groups -- the method you're calling, in this case a request for groups
    xml -- the format of the response. Each method has a list of supported
     formats
    args -- zip & topic limit the results by geography and area of interest
    order -- how to order the results, in this case by # of members. To
     reverse the sorting order, you include the parameter "desc=desc" or
     "desc=true".
    key -- your unique API key
• Formats
    JSON JavaScript Object Notation
    XML A simple XML format with the exact same fields as the json
     response.
    KML Keyhole markup language
    RSS RSS 2.0
    ATOM
View @ http://www.codeplex.com/meetup
Building social and RESTful frameworks
http://reports.communityserver.com/demo/
 Integration to Community Server via web parts in
  SharePoint
 Features include:
   Activity streams – tracks discussions, documents, and
    blogs
   Blogs & forums – work inside of SharePoint, Community
    Server, or Email
Building social and RESTful frameworks
Brendon Schwartz
bschwartz@devcowsoftware.com
http://blogs.sharepointguys.com/brendon
Senior Software Engineer
Telligent

More Related Content

PPTX
REST API
PPTX
CSS Architecture: Writing Maintainable CSS
PPTX
RESTFul Web API Services @ DotNetToscana
PPT
An Easy, Small But Powerful Web Log Analyzer Web Log Expert
PPTX
Representational State Transfer
PPTX
REST API
PPT
Application Architechture
PDF
REST API and CRUD
REST API
CSS Architecture: Writing Maintainable CSS
RESTFul Web API Services @ DotNetToscana
An Easy, Small But Powerful Web Log Analyzer Web Log Expert
Representational State Transfer
REST API
Application Architechture
REST API and CRUD

What's hot (20)

PDF
Representational State Transfer (REST)
PPTX
APEX Reporting on external data sources
PPTX
What is an API?
PPTX
Building RESTfull Data Services with WebAPI
ODP
Drupal Services 3 - Drupal Dev Days 2011, Brussels
PPT
Rest introduction
PPTX
An Introduction To REST API
PPTX
Mule soft meetup_4_mty_online_oct_2020
PDF
REST - Representational State Transfer
PPTX
Visual Studio2010
PPTX
Connecting to Data from Windows Phone 8 VSLive! Redmond 2013
PPS
Flex 2
PPTX
Rest api-basic
DOC
Creating xml publisher documents with people code
ODP
Web 2 0 Technologies
PDF
Work flow
PPTX
Efficient Spring Data REST Development
PPTX
Stefaan Ponnet, Fusebox
PPTX
Introduction to SalesForce
Representational State Transfer (REST)
APEX Reporting on external data sources
What is an API?
Building RESTfull Data Services with WebAPI
Drupal Services 3 - Drupal Dev Days 2011, Brussels
Rest introduction
An Introduction To REST API
Mule soft meetup_4_mty_online_oct_2020
REST - Representational State Transfer
Visual Studio2010
Connecting to Data from Windows Phone 8 VSLive! Redmond 2013
Flex 2
Rest api-basic
Creating xml publisher documents with people code
Web 2 0 Technologies
Work flow
Efficient Spring Data REST Development
Stefaan Ponnet, Fusebox
Introduction to SalesForce
Ad

Similar to Building social and RESTful frameworks (20)

PDF
RESTful Web APIs – Mike Amundsen, Principal API Architect, Layer 7
PDF
Web Services
PPTX
About REST. Архитектурные семинары Softengi
PPTX
Hypermedia System Architecture for a Web of Things
PPTX
A Deep Dive into RESTful API Design Part 1
PDF
Cert05 70-487 - developing microsoft azure and web services
PDF
Designing Evolvable Web Apis With Aspnet 1st Edition Glenn Block
PDF
Implementing Hypermedia Clients: It's Not Rocket Science – Mike Amundsen, Pri...
PPTX
Restful webservice
PPTX
Rest APIs Training
PDF
API Design Methodology - Mike Amundsen, Director of API Architecture, API Aca...
PDF
HATEOAS: The Confusing Bit from REST
PDF
Building Hypermedia Apis With Html5 And Node Mike Amundsen
PPTX
A great api is hard to find
PPTX
REST Presentation
PPTX
REST Methodologies
PPTX
RESTful services
PPTX
Kiran Kumar Jonnada CLA 2 Presentation (Without Audio).pptx
PDF
Be My API How to Implement an API Strategy Everyone will Love
PPTX
Web services for banks
RESTful Web APIs – Mike Amundsen, Principal API Architect, Layer 7
Web Services
About REST. Архитектурные семинары Softengi
Hypermedia System Architecture for a Web of Things
A Deep Dive into RESTful API Design Part 1
Cert05 70-487 - developing microsoft azure and web services
Designing Evolvable Web Apis With Aspnet 1st Edition Glenn Block
Implementing Hypermedia Clients: It's Not Rocket Science – Mike Amundsen, Pri...
Restful webservice
Rest APIs Training
API Design Methodology - Mike Amundsen, Director of API Architecture, API Aca...
HATEOAS: The Confusing Bit from REST
Building Hypermedia Apis With Html5 And Node Mike Amundsen
A great api is hard to find
REST Presentation
REST Methodologies
RESTful services
Kiran Kumar Jonnada CLA 2 Presentation (Without Audio).pptx
Be My API How to Implement an API Strategy Everyone will Love
Web services for banks
Ad

Building social and RESTful frameworks