Slide deck presented during my session on "Introduction to Angular 2" at UNICOM DevCon 2016 conference on Thursday, Dec 1, 2016. The conference was at Mövenpick Hotel & Spa, Bengaluru.
With the progressive growing of Web Applications in the last few years, the new version of this super framework has some awesome new things. Change detection? Syntax sugar? ES6? Native APIs?
This document provides an overview of Angular 2 and its main building blocks including modules, components, templates, data binding, directives, services, and routing. It discusses how Angular 2 differs from Angular 1 and is more opinionated. It also provides code examples for setting up the main module, creating components and templates, using dependency injection for services, and making HTTP requests from services.
Tech Webinar: Angular 2, Introduction to a new frameworkCodemotion
Fabio Biondi e Matteo Ronchi ci presentano AngularJS 2, analizzando la nuova sintassi per la creazione di componenti che ora assumono un ruolo fondamentale all’interno del framework.
Iscriviti qui per partecipare ad altri Tech Webinar: http://goo.gl/iW81VD
Scrivici a training@codemotion.it
Tw: @codemotionTR
Slide deck presented during my session on "Express: A Jump-Start" at JavaScript Meetup #4 on Saturday, July 23, 2016. The meetup happened at Portea Medical, Bengaluru.
Quick introduction to Angular 4 for AngularJS 1.5 developersPaweł Żurowski
Quick and dirty introduction to main concepts of Angular Web applications. These slides where accompanied by a workshop that took place in Decerto for fellow professionals.
AngularJs 2.0 introduces components as the fundamental building blocks, replacing directives. The presentation covers getting started with AngularJs 2.0, including dependencies, configuration, components, data binding, services, routing and migration from Angular 1. It emphasizes that Angular 2 is a rewrite built on newer standards to improve performance and reduce opinionation. Migration involves componentizing the application and using an upgrade adapter to support a hybrid Angular 1 and 2 app.
This document provides an overview of core Angular 2 concepts, including:
1) Angular 2 introduces components instead of controllers and uses a one-way data flow instead of $scope. It is also written in TypeScript.
2) Angular 2 has a new dependency injection system, improved performance, better mobile support, and server-side rendering capabilities compared to AngularJS 1.x.
3) Key concepts in Angular 2 include components, communication between components, dependency injection, and the component lifecycle. Change detection and zones are also discussed.
Probabilmente il framework javascript più atteso di sempre, evoluzione di uno dei framework più longevi ed usati nello sviluppo front end. Si vedranno alcune delle novità introdotte e delle scelte radicali fatte da Google per la nuova versione di Angular
This presentation is dedicated to studying the fundamentals of Angular 2.
To follow along with the presentation, watch this 3-part YouTube Series here: http://bit.ly/2mnLZNz
You can also download Traversy's Spotify App here: http://bit.ly/2m1TxI3
Migrating an application from Angular 1 to Angular 2 Ross Dederer
This document discusses migrating from Angular 1 to Angular 2. It provides an overview of Angular 2 including its modular and component-based architecture. It also discusses TypeScript and how it is used with Angular 2. The document then walks through migrating a sample Silverlight application to an equivalent Angular 2 application, covering converting the viewmodel to a component and porting the view. It emphasizes keeping a similar MVVM pattern and discusses new Angular 2 concepts like templates, metadata and bindings.
The evolution of Angular 2 @ AngularJS Munich Meetup #5Johannes Weber
The evolution of Angular 2
Angular 1 was born in 2009. Since that a lot of web standards are born and supported by most of the browsers natively. So it's time to use the new possibilities. That's how Angular 2 started. It's not just a major update. It's a whole rewrite!
The key theme of this talk it to get an overview of Angular 2. I’ll walk you through what you need to know to stay up to date, explain the main concepts behind A2 and the current state.
It is rounded off with some practical suggestions on how to proceed today - to make the transition from Angular 1.x to Angular 2.x easier.
Original slides with animated gifs can be found here: https://docs.google.com/presentation/d/122ptcLESkfSw8omK9ekG8FksD_zvegGrqOL2GR5PE80/edit?usp=sharing
What is a Angular Js ?
What is the main benefits of Angular Js ?
What is the difference between Angular js 1 and Angular js 2 ?
Structure of Angular Js ?
Choose of Language|Editor ?
Introduction of Components.
Template, Interpolation and Directives.
Data Binding and Pipes.
,Angular 2 is Javascript framework
The document discusses various asynchronous patterns in JavaScript, including using events, callbacks with Socket.IO, promises, observables, iterators, generators, and async/await. It provides code examples for promise creation, using the Fetch API, ES2015 iterators, and TypeScript's async/await syntax. The presentation aims to demonstrate asynchronous patterns for event handling, promises, iterators/generators, and async/await in TypeScript and Angular 2.
Angular is a platform for building mobile and desktop web applications. It is no longer just a framework. Angular 2 offers improvements such as faster performance, modularity, support for modern browsers, and reactive programming using RxJS. Key parts of Angular include templates, directives, data binding, components, services, modules, and dependency injection. Features like Ahead-of-Time compilation and services improve app performance and reusability. TypeScript adds benefits like static typing and class-based programming.
Angular 2 is a rewrite of AngularJS for modern web development. It improves on AngularJS by being faster, easier to use and learn, and built on proven best practices. Some key differences include components replacing controllers, unidirectional data flow instead of two-way binding, and type-based dependency injection rather than naming. While the core concepts remain similar, the implementation in Angular 2 is cleaner. However, setting up a full Angular project can still be complicated due to dependencies on build tools and module bundling.
Angular 2 is now in release candidate and can be used for new projects, though Angular 1 will still be supported for the next 1.5-2 years. There are two main approaches to upgrading an existing Angular 1 app to Angular 2: big bang, where the entire app is rewritten at once in Angular 2, or incremental, where individual components are upgraded one by one. Components and directives are now unified under the component model in Angular 2. TypeScript is recommended for Angular 2 development but not required, as JavaScript can also be used.
Angular is an open source JavaScript framework that is used to build single page based web applications.A detailed overview of Angular 4, Its features, development environment and components.
This document discusses data flow patterns in Angular 2. It begins by explaining the component tree structure and how components communicate with inputs and outputs. It then covers RxJS observables and operators for reactive programming. Observables can be used as inputs to components and with the async pipe. Forms and HTTP requests also return observables. Change detection strategies like OnPush can improve performance. Immutable data structures help avoid unnecessary checks. Overall, Angular 2 provides many options for component communication through RxJS observables and efficient change detection.
Angular is a complete framework that combines declarative templates, dependency injection, end to end tooling, and integrated best practices in order to solve development challenges. Angular was completely rewritten from its predecessor AngularJS and allows developers to build their applications on web or mobile.
Matthew Gardner explains how to setup a simple Angular app, diving into some of the concepts behind the framework and describe some of the key differences between Angular and AngularJS. Additionally, Matthew will showcase an Angular app which uses the Spotify API.
Angular is an open source JavaScript framework for building web applications. It was developed by Google and released in 2017. Some key features include being cross-platform for mobile and desktop, high performance, and productivity. The document outlines how to set up a development environment with Node.js and npm, create a new Angular project using the Angular CLI, and describes the basic structure of an Angular project including components, TypeScript, and data binding.
This document provides an overview of the Angular framework. It discusses Angular's release history and versions. It also covers key Angular concepts like components, services, data binding, and communication between parent and child components. Additionally, it mentions tools used in Angular development like TypeScript, Angular CLI, and Node Package Manager (NPM). It provides example Angular projects, demos, and resources for learning more about Angular.
This document provides an overview of key differences between AngularJS 1.x and Angular 2.0. It discusses changes to change detection, routing, services, directives, transpilation to ES5, and dependency injection. Transpilation of Angular 2 code from ES6 to ES5 for browser compatibility is recommended using tools like Babel. Components, services, and directives are defined differently in Angular 2 compared to 1.x. Routing is now done at the component level rather than using routes.
This document summarizes a keynote presentation about Angular 2.0.0. It discusses the growth of the Angular community from 1.5 million users in October 2015 to 1.2 million users in September 2016 for Angular 1 and 623k users for Angular 2 in September 2016. It also outlines Angular's major release cycle and provides an overview of the core features and extensions of the Angular framework.
The document discusses dependency injection in AngularJS 1.x and Angular 2. In AngularJS 1.x, services, factories, and providers control how components are registered and instantiated. Services are always singletons, while factories and providers allow more control over instantiation. Angular 2 introduces the concepts of injectors, providers, and dependencies to describe how dependencies are created and injected. Providers are recipes that map tokens to factory functions to create objects. Angular 2 provides more control over dependency lifecycles through features like factories, transient instances, scoped injectors, and component bindings.
This document contains a presentation about NativeScript, an open source framework for building and running native iOS, Android, and Windows Phone apps with JavaScript. Some key points covered include:
- NativeScript allows writing apps using JavaScript that run natively on devices by using JavaScript runtimes like V8 and JavaScriptCore.
- It provides access to full native APIs through JavaScript without limitations.
- The architecture works by generating metadata for native APIs and using proxies so JavaScript can access native objects.
- Getting started requires Node.js, Android/Xcode setup, and the NativeScript CLI which is used to create, build, and run apps on devices/emulators.
- NativeScript apps have XML-based user interfaces
Angular is an open-source JavaScript framework for building mobile and desktop web applications. It uses TypeScript for development and focuses on building single page applications. The key aspects of Angular include components, modules, templates and data binding.
To set up an Angular application, developers must install Node.js, Angular CLI and configure the development environment. The Angular CLI is used to generate components, run tests and deploy applications. Components and modules are fundamental building blocks - components define views and logic, while modules organize an application's components. Data binding in templates connects application data and DOM elements.
Angular IO Overview
The presenter introduces foundational Angular IO concepts like components, TypeScript, and the Angular CLI tool. Angular IO is a component-based framework for building single page applications. It uses TypeScript for strong typing. Components couple custom HTML elements to functionality. The Angular CLI helps generate and build Angular applications.
AngularJS is an open source JavaScript framework for building dynamic web applications. It enhances HTML with custom directives and bindings to enrich client-side web applications with reusable components. Key features include two-way data binding, reusable components, support for MVC/MVVM design patterns, end-to-end testing, cross-browser compatibility, and services. AngularJS allows developers to organize applications into modules and controllers to keep code clean and reusable.
Front End Development for Back End Developers - Devoxx UK 2017Matt Raible
Are you a backend developer that’s being pushed into front end development? Are you frustrated with all JavaScript frameworks and build tools you have to learn to be a good UI developer? If so, this session is for you! We’ll explore the tools of the trade for fronted development (npm, yarn, Gulp, Webpack, Yeoman) and learn the basics of HTML, CSS, and JavaScript. We’ll dive into the intricacies of Bootstrap, Material Design, ES6, and TypeScript. Finally, after getting you up to speed with all this new tech, we’ll show how it can all be found and integrated through the fine and dandy JHipster project.
The document discusses adding user management functionality to a Node.js application called QAVideos. It involves the following steps:
1. Creating the application using StrongLoop's Loopback framework.
2. Adding Angular support to handle data binding between the client and server.
3. Adding signup and login functionality including signup and success pages, a signup controller, and an authentication service to register new users.
The document provides an agenda and recap for an Angular workshop session. The agenda covers Angular component lifecycle, modularizing Angular applications, Angular routing, and hands-on examples. The recap summarizes key points from the previous session, including why Angular is used for single page applications, its building blocks like components and services, and TypeScript. It also discusses Angular component lifecycle hooks and provides an example flow. The hands-on section describes refactoring a weather application to add routing and modularization. Essential coding practices like separation of concerns and reusability are also covered.
This document provides an introduction and overview of AngularJS including its main concepts such as MVC, dependency injection, directives, filters, data binding, routing and REST services. It also discusses Angular scaffolding tools like Yeoman and provides examples of building an Angular application including fetching data from REST APIs and implementing routing. The document contains an agenda with topics and code snippets for controllers, views, directives and services. It also includes exercises for practicing key AngularJS concepts like data binding, routing and consuming REST services.
AngularJS is a structural framework for dynamic web apps. It lets you use HTML as your template language and lets you extend HTML's syntax to express your application's components clearly and succinctly. AngularJS's data binding and dependency injection eliminate much of the code you would otherwise have to write. And it all happens within the browser, making it an ideal partner with any server technology.
This document discusses consuming RESTful APIs using Swagger v2.0. It provides an overview of Swagger and how it can be used to automatically generate client code for APIs in multiple languages like Android and iOS. It also discusses some common issues with code generation and outlines Outware's approach to address these issues, including customizing the code generation, publishing clients as dependencies, and maintaining consistency across platforms.
The document summarizes an AngularJS workshop that covers AngularJS core principles, building a sample website, and AngularJS 2. It discusses building the sample site from scratch using tools like NodeJS, Bower, and Bootstrap. Key AngularJS concepts covered include modules, views, controllers, directives, routing, promises, and AngularJS 2.0. Hands-on tasks include adding routing, creating a header directive, loading data from a service, and validating a form.
Software development... for all? (keynote at ICSOFT'2024)miso_uam
Our world runs on software. It governs all major aspects of our life. It is an enabler for research and innovation, and is critical for business competitivity. Traditional software engineering techniques have achieved high effectiveness, but still may fall short on delivering software at the accelerated pace and with the increasing quality that future scenarios will require.
To attack this issue, some software paradigms raise the automation of software development via higher levels of abstraction through domain-specific languages (e.g., in model-driven engineering) and empowering non-professional developers with the possibility to build their own software (e.g., in low-code development approaches). In a software-demanding world, this is an attractive possibility, and perhaps -- paraphrasing Andy Warhol -- "in the future, everyone will be a developer for 15 minutes". However, to make this possible, methods are required to tweak languages to their context of use (crucial given the diversity of backgrounds and purposes), and the assistance to developers throughout the development process (especially critical for non-professionals).
In this keynote talk at ICSOFT'2024 I presented enabling techniques for this vision, supporting the creation of families of domain-specific languages, their adaptation to the usage context; and the augmentation of low-code environments with assistants and recommender systems to guide developers (professional or not) in the development process.
Ansys Mechanical enables you to solve complex structural engineering problems and make better, faster design decisions. With the finite element analysis (FEA) solvers available in the suite, you can customize and automate solutions for your structural mechanics problems and parameterize them to analyze multiple design scenarios. Ansys Mechanical is a dynamic tool that has a complete range of analysis tools.
What is OCR Technology and How to Extract Text from Any Image for FreeTwisterTools
Discover the fascinating world of Optical Character Recognition (OCR) technology with our comprehensive presentation. Learn how OCR converts various types of documents, such as scanned paper documents, PDFs, or images captured by a digital camera, into editable and searchable data. Dive into the history, modern applications, and future trends of OCR technology. Get step-by-step instructions on how to extract text from any image online for free using a simple tool, along with best practices for OCR image preparation. Ideal for professionals, students, and tech enthusiasts looking to harness the power of OCR.
NBFC Software: Optimize Your Non-Banking Financial CompanyNBFC Softwares
NBFC Software: Optimize Your Non-Banking Financial Company
Enhance Your Financial Services with Comprehensive NBFC Software
NBFC software provides a complete solution for non-banking financial companies, streamlining banking and accounting functions to reduce operational costs. Our software is designed to meet the diverse needs of NBFCs, including investment banks, insurance companies, and hedge funds.
Key Features of NBFC Software:
Centralized Database: Facilitates inter-branch collaboration and smooth operations with a unified platform.
Automation: Simplifies loan lifecycle management and account maintenance, ensuring efficient delivery of financial services.
Customization: Highly customizable to fit specific business needs, offering flexibility in managing various loan types such as home loans, mortgage loans, personal loans, and more.
Security: Ensures safe and secure handling of financial transactions and sensitive data.
User-Friendly Interface: Designed to be intuitive and easy to use, reducing the learning curve for employees.
Cost-Effective: Reduces the need for additional manpower by automating tasks, making it a budget-friendly solution. Benefits of NBFC Software:
Go Paperless: Transition to a fully digital operation, eliminating offline work.
Transparency: Enables managers and executives to monitor various points of the banking process easily.
Defaulter Tracking: Helps track loan defaulters, maintaining a healthy loan management system.
Increased Accessibility: Cutting-edge technology increases the accessibility and usability of NBFC operations. Request a Demo Now!
Sami provided a beginner-friendly introduction to Amazon Web Services (AWS), covering essential terms, products, and services for cloud deployment. Participants explored AWS' latest Gen AI offerings, making it accessible for those starting their cloud journey or integrating AI into coding practices.
React and Next.js are complementary tools in web development. React, a JavaScript library, specializes in building user interfaces with its component-based architecture and efficient state management. Next.js extends React by providing server-side rendering, routing, and other utilities, making it ideal for building SEO-friendly, high-performance web applications.
Cultural Shifts: Embracing DevOps for Organizational TransformationMindfire Solution
Mindfire Solutions specializes in DevOps services, facilitating digital transformation through streamlined software development and operational efficiency. Their expertise enhances collaboration, accelerates delivery cycles, and ensures scalability using cloud-native technologies. Mindfire Solutions empowers businesses to innovate rapidly and maintain competitive advantage in dynamic market landscapes.
Are you wondering how to migrate to the Cloud? At the ITB session, we addressed the challenge of managing multiple ColdFusion licenses and AWS EC2 instances. Discover how you can consolidate with just one EC2 instance capable of running over 50 apps using CommandBox ColdFusion. This solution supports both ColdFusion flavors and includes cb-websites, a GoLang binary for managing CommandBox websites.
Lots of bloggers are using Google AdSense now. It’s getting really popular. With AdSense, bloggers can make money by showing ads on their websites. Read this important article written by the experienced designers of the best website designing company in Delhi –
1. Name of the Speaker : Naveen Pete
Place: Bengaluru
http://www.unicomlearning.com/2016/DevCon/
DevCon 2016 – Bangalore
Date – 30th Nov – 2nd Dec
Introduction to Angular 2
2. DevCon 2016 – Bangalore
http://www.unicomlearning.com/2016/DevCon/
Agenda
1. Why Library or Framework?
2. Introducing Angular
3. TypeScript
4. Setting up Angular 2
5. Angular 2 Building Blocks
6. Code Walk-thru & Demo
7. Q & A
4. DevCon 2016 – Bangalore
http://www.unicomlearning.com/2016/DevCon/
Web BrowserWeb Server
URL Request to server
Response with Web page & Assets
User clicks on link, new Request
Response with Web page & Assets
HTML JavaScript
Browser loads up
entire web page
HTML JavaScript
Browser loads up
entire web page
Traditional Page Refresh
5. DevCon 2016 – Bangalore
http://www.unicomlearning.com/2016/DevCon/
Data Binding
6. DevCon 2016 – Bangalore
http://www.unicomlearning.com/2016/DevCon/
Benefits of Library or Framework
• Abstracts complexities of development
• Increases developer productivity
• Moving the application code forward in the stack
▫ Reduces server load, thus reducing cost
▫ Crowd-sourcing of computational power
8. DevCon 2016 – Bangalore
http://www.unicomlearning.com/2016/DevCon/
Introducing Angular
• Developed in 2009 by Misko Hevery
• Structural framework for building dynamic web apps
• Front-end SPA, RIA framework
• Build modular, maintainable and testable apps
• Current Release Versions
▫ Angular 1.5.9
▫ Angular 2.2
9. DevCon 2016 – Bangalore
http://www.unicomlearning.com/2016/DevCon/
Angular Benefits
• Build responsive apps for different platforms
• Helps you organize your code
• Data Binding and Dependency Injection eliminates much of the
manual code
• Decouple DOM manipulation from app logic
▫ Improves testability
• Decouple client side of an app from the server side
▫ Allows reuse
▫ Allows parallel development
10. DevCon 2016 – Bangalore
http://www.unicomlearning.com/2016/DevCon/
Responsive Page using Angular (or any other framework)
11. DevCon 2016 – Bangalore
http://www.unicomlearning.com/2016/DevCon/
Two-Way Data Binding
13. DevCon 2016 – Bangalore
http://www.unicomlearning.com/2016/DevCon/
TypeScript
• Superset of JavaScript
• Chosen as main language by Angular 2
• By far most documentation & example-base uses TypeScript
• Why TypeScript?
▫ Strong Typing
reduces compile-time errors, provides IDE support
▫ Next Gen JS Features
Modules, Classes, Import, Export, …
▫ Missing JS Features
Interfaces, Generics, …
Install TypeScript
[sudo] npm install –g typescript
15. DevCon 2016 – Bangalore
http://www.unicomlearning.com/2016/DevCon/
Setting up Angular
• Install Node (https://nodejs.org/en/)
• Install TypeScript – This is optional
• Install Angular CLI (https://cli.angular.io/)
• Create new Angular App
• Start the app
▫ ng serve
Starts up development server
Builds the app
> npm install –g typescript
> npm install –g angular-cli
> ng new first-app
> cd first-app
> ng serve
18. DevCon 2016 – Bangalore
http://www.unicomlearning.com/2016/DevCon/
Module (NgModule)
• A block of highly related classes
• Organizes an application into cohesive blocks of functionality
• Every app has at least one module, called AppModule
@NgModule({
imports: [module1, module2, ...],
declarations: [
component(s), directive(s), pipe(s), ...
],
exports: [class1, class2, ...],
providers: [service1, service2, ...]
})
export class AppModule{ }
AppModule
19. DevCon 2016 – Bangalore
http://www.unicomlearning.com/2016/DevCon/
Component
• Encapsulates the template, data and the behavior of a view
• Every app has at least one component, called AppComponent
• Completely decoupled from the DOM
@Component({
selector: ‘rating’,
templateUrl: ‘./rating.component.html’,
styleUrls: [‘./rating.component.css’]
})
export class RatingComponent {
averageRating: number;
setRating(value) {
...
}
}
Creating Component
> ng g c product
AppComponent
HeaderComponent
RecipesComponent
ShoppingListComponent
20. DevCon 2016 – Bangalore
http://www.unicomlearning.com/2016/DevCon/
Template & Data Binding
• Defines component’s view
• Uses HTML and Angular’s template elements & attributes
• Data Binding
▫ Interpolation
<h1>{{hero.name}}</h1>
▫ Property binding
<img [src]=“heroImageUrl”>
▫ Event binding
<li (click)=“selectHero(hero)”></li>
▫ Two-way data binding
<input [(ngModel)]="hero.name">
22. DevCon 2016 – Bangalore
http://www.unicomlearning.com/2016/DevCon/
Directive
• Helps you to extend HTML to support dynamic behavior
• Transforms the DOM according to instructions given
• Can be built-in or custom
• Two kinds
▫ Structural – alter the layout. E.g. *ngFor, *ngIf
▫ Attribute – alter the appearance or behavior. E.g. ngModel, ngClass
@Directive({
selector: '[appRating]‘
})
export class RatingDirective {
...
}
Creating Custom
Directive
> ng g d rating
ShoppingListComponent
ShoppingListAddComponent
23. DevCon 2016 – Bangalore
http://www.unicomlearning.com/2016/DevCon/
Service
• Allows organizing and sharing code across an app
▫ AJAX calls
▫ Business rules
▫ Calculations
▫ Share data between components
@Injectable()
export class ProductService {
...
}
Creating Service
> ng g s product
RecipeService
ShoppingListService
24. DevCon 2016 – Bangalore
http://www.unicomlearning.com/2016/DevCon/
Dependency Injection
• Dependency: An object that can be used (a service)
• Injection: Passing of a dependency to a dependent object so that it
can use it. The client does not need to build the object
• Angular 2 uses constructor injection
@Component({
selector: 'rb-recipe-list',
templateUrl: './recipe-list.component.html‘,
providers: [RecipeService]
})
export class RecipeListComponent implements OnInit {
constructor(private recipeService: RecipeService) { }
}
RecipeListComponent
ShoppingListComponent
25. DevCon 2016 – Bangalore
http://www.unicomlearning.com/2016/DevCon/
Pipe
• Transforms displayed values within a template
• Does not modify underlying data
• Built-in pipes
▫ CurrencyPipe, DatePipe, JsonPipe, LowerCasePipe, UpperCasePipe
Creating Custom Pipe
> ng g p my-currency
26. DevCon 2016 – Bangalore
http://www.unicomlearning.com/2016/DevCon/
Router
• Enables navigation from one view to the next as users perform application tasks
• Maps a URL path to a component
• Steps
▫ Define array of routes using ‘Routes’
▫ Register routes with router module using ‘Router.forRoot()’
▫ Add the resulting module to ‘imports’ array of ‘AppModule’
▫ Add <router-outlet> element to the template
▫ Use ‘routerLink’ attribute directive in <a> tag to navigate to a specific route
<a [routerLink]="['/recipes']">Recipes</a>
app.routing.ts
app.module.ts
app.component.html
header.component.html
recipe-item.component.html
recipe-detail.component.ts
27. DevCon 2016 – Bangalore
http://www.unicomlearning.com/2016/DevCon/
Server Communication – Angular Http Client
• Communicates with remote servers using HTTP protocol
• Uses browser’s XmlHttpRequest object
• Methods
▫ get()
▫ post()
▫ put()
▫ delete()
• Methods return Observable<Response>
RecipeService