GithubHelp home page GithubHelp logo

2016-t-514-veft's Introduction

2016-T-514-VEFT

A repository for the Web Services course, taught in fall 2016.

Note that student contribution to the material is not only welcome, but highly appreciated! Feel free to fork this repository, make changes you would like to see, and then issue a pull request. For further details, check the Github help pages.

If you fork this repository, and would later like to incorporate the latest changes into your own forked version, check out this tutorial.

Table of contents

Week 00:

Good to know

1. Git and GitHub

2. The Basics

3. Tutorials

Week 01:

1. Web Services

Historical background

Types of web services

2. REST

REST Resources

REST and HTTP

Using HTTP Verbs

HTTP Status codes

Versioning

REST Maturity Model

HATEOAS

Further reading

3. SOAP

4. ASP.NET Web API

Architecture

JSON or XML?

CORS

5. Web API Routing

Routing

Parameters

Parameters from the HTTP body

6. API Documentation

API Documentation

Machine-readable documentation

Week 02:

1. Web Service Architecture

Web Service Architecture

Entities, DTO and ViewModels

Project Setup

2. Unit of Work

Unit of Work

Command/Query Object Pattern

3. Dependency Injection

Dependency Injection

Constructor Injection

Setter Injection

Property Injection

Poor man's DI

NInject

Week 03:

1. LINQ

LINQ

Materializing queries

Accessing records - Single record

Accessing records - More than one Join

Extending LINQ

2. Entity relationships

Entity relationships

Entity Framework Relationships

Loading options

3. Mapping

Mapping

4. Fluent API

Fluent API

Week 04:

Unit Testing

Unit Testing

Unit test setup

System Under Test

Arrange/Act/Assert

Test data

Assert section

Exceptions in unit tests

Auto test generation

For/against

Week 05:

1 Globalization and Localization in ASP.NET

Introduction

Detect user's language

Multiple languages in web API

2. Validation

Data Annotations

Moving validation to service layer

Handling Validation Errors

3. Exception Handling

HttpResponseException

Exception Filters

Logging unhandled exceptions

Global IExceptionHandler

4. Tracing

Default Tracing

Add traces to your code

Creating Custom Trace Writer

5. ELK

Week 06:

1. Security

OAuth

Oauth 1.0

OAuth 2.0

OAuth and .NET

OpenID Connect

OpenID Connect basic specs

2. OData OData

Querying Data

OData and .NET

Week 07:

1. Caching

Caching

Web API caching

ETags

CacheCow

ASP.NET Web API CacheOutput

Custom Server side cache example

Week 08:

1. Node

NodeJS

2. Express

Week 09:

1. MongoDB

2. Elastic Search

Elasticsearch

Download and install Indexing

Search

Basic text search

Query in list

Query by range on dates

Week 10:

1. NodeJS Unit tests

2. Message Queues

RabbitMQ

Installing RabbitMQ

Example 1

Message acknowledgment

Message durability

Week 11:

1. Deployment

2. Docker

Week 12:

1. Microservices

2016-t-514-veft's People

Contributors

danielbsig avatar thoreyjona avatar suprdewd avatar hauxii avatar sigurdurb avatar sarabenediktsd avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.