Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Learning Angular for .NET Developers
Learning Angular for .NET Developers

Learning Angular for .NET Developers: Develop dynamic .NET web applications powered by Angular 4

eBook
$24.99 $35.99
Paperback
$43.99
Subscription
Free Trial
Renews at $19.99p/m

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Billing Address

Table of content icon View table of contents Preview book icon Preview Book

Learning Angular for .NET Developers

Angular Building Blocks - Part 1

This chapter gives you a detailed walk through the core building blocks of the Angular architecture.

In this chapter, we will cover the following topics:

  • Modules
  • Components
  • Decorators and metadata
  • Templates
  • Bindings
  • Directives
  • Dependency injection

Modules (NgModules)

A module is a single unit of implementation of distinct functionalities. Collections of such modules will be used to implement complex applications. Implementing module patterns helps you avoid global collisions of variables and methods. JavaScript encapsulates both private and public methods under a single object by implementing a modular pattern. The modular pattern achieves encapsulation using closure in JavaScript. JavaScript doesn't support access modifiers; however, the same effect can be achieved using function scopes. All Angular applications are modular in nature. We develop Angular applications by creating many modules. We develop modules to encapsulate functionalities that are independent and have one responsibility. A module exports the classes available in that module. Angular modules are called as NgModules. At least one Angular module will...

Components

AngularJS has controllers, scopes, and directives to deal with views, bind data, and respond to events by updating changes to data. In Angular, Components replaced controllers, scopes, and directives from AngularJS.

Angular, introduced components that support the object-oriented component model to write cleaner code. A component is a simple class that holds the logic of managing the associated template or view. A simple component class is given as follows:

Class FirstComponent { 
}

In a component class, we will expose properties and methods to a template or view. Component properties can provide data for a template or view and allow the user to modify property values. Component methods can be called according to user actions over the view.

The Angular component FirstComponent

As you can see, the preceding code creates a simple JavaScript class named FirstComponent...

Decorators and metadata

As you saw in the last section, we define JavaScript plain classes for a component, and we annotate it with some information to inform the Angular framework that this class is a component.

We leverage the Typescript syntax and attach the classes with metadata using the decorator feature. To make a class as a component, we add the @Component decorator, as shown in the following code:

@Component({...})
export class FirstComponent {...}

As you can see, the code snippet shows that the FirstComponent class has been decorated as a component.

Now, let's attach metadata to the FirstComponent class using the decorator syntax:

@Component({ 
selector: 'first-component',
templateUrl: 'app/first.component.html'
})
export class FirstComponent {...}

Here, we have added metadata, such as a selector and templateUrl. The selector metadata...

Templates

You will have noted that we have added inline markups for a view or template when annotating the component. We can also add a template URL isolating the view, or template markups in a separate HTML file, instead of having it as an inline view or template.

A template comprises HTML tags that provide information to Angular on rendering the components. A simple template content is given in the following lines of code. It renders the name of the book and publisher:

<div> 
The Name of the book is {{bookName}} and is published by {{pubName}}.
</div>

Inline templates

An inline template is used when there is a need to render very simple content, such as a one-liner, for example. In such cases, inline views...

Binding

The binding technique will enable you to bind data to a template and will allow users to interact with the bound data. The Angular binding framework takes care of rendering the data to a view and updating it as per user actions over the view.

The following screenshot gives you a quick glimpse of the various binding techniques in Angular. We will go through each binding technique in detail:

Various binding syntaxes

One-way binding

Binding types such as Interpolation, Property, Attribute, Class, and Style support one-way data flow from the data source (exposed from the component) to a view or template. Template markups that let the data flow from a component property or method to a template are given in the following...

Modules (NgModules)


A module is a single unit of implementation of distinct functionalities. Collections of such modules will be used to implement complex applications. Implementing module patterns helps you avoid global collisions of variables and methods. JavaScript encapsulates both private and public methods under a single object by implementing a modular pattern. The modular pattern achieves encapsulation using closure in JavaScript. JavaScript doesn't support access modifiers; however, the same effect can be achieved using function scopes. All Angular applications are modular in nature. We develop Angular applications by creating many modules. We develop modules to encapsulate functionalities that are independent and have one responsibility. A module exports the classes available in that module. Angular modules are called as NgModules. At least one Angular module will be present in any Angular application: a root module, which will represented as AppModule. AppModule is a class decorated...

Components


AngularJS has controllers, scopes, and directives to deal with views, bind data, and respond to events by updating changes to data. In Angular, Components replaced controllers, scopes, and directives from AngularJS.

Angular, introduced components that support the object-oriented component model to write cleaner code. A component is a simple class that holds the logic of managing the associated template or view. A simple component class is given as follows:

Class FirstComponent { 
} 

In a component class, we will expose properties and methods to a template or view. Component properties can provide data for a template or view and allow the user to modify property values. Component methods can be called according to user actions over the view.

The Angular component FirstComponent

As you can see, the preceding code creates a simple JavaScript class named FirstComponent. You may be wondering how a JavaScript plain class can be treated as a component and how a template can be wired up to...

Decorators and metadata


As you saw in the last section, we define JavaScript plain classes for a component, and we annotate it with some information to inform the Angular framework that this class is a component.

We leverage the Typescript syntax and attach the classes with metadata using the decorator feature. To make a class as a component, we add the @Component decorator, as shown in the following code:

@Component({...})
export class FirstComponent {...}

As you can see, the code snippet shows that the FirstComponent class has been decorated as a component.

Now, let's attach metadata to the FirstComponent class using the decorator syntax:

@Component({ 
   selector: 'first-component', 
   templateUrl: 'app/first.component.html' 
}) 
export class FirstComponent {...} 

Here, we have added metadata, such as a selector and templateUrl. The selector metadata configured in the component tells Angular to create the instance of a component when it encounters the <first-controller> markup:

<first...
Left arrow icon Right arrow icon
Download code icon Download Code

Key benefits

  • Become a more productive developer and learn to use frameworks that implement good development practices
  • Achieve advanced autocompletion, navigation, and refactoring in Angular using Typescript
  • Follow a gradual introduction to the concepts with a lot of examples and explore the evolution of a production-ready application

Description

Are you are looking for a better, more efficient, and more powerful way of building front-end web applications? Well, look no further, you have come to the right place! This book comprehensively integrates Angular version 4 into your tool belt, then runs you through all the new options you now have on hand for your web apps without bogging you down. The frameworks, tools, and libraries mentioned here will make your work productive and minimize the friction usually associated with building server-side web applications. Starting off with building blocks of Angular version 4, we gradually move into integrating TypeScript and ES6. You will get confident in building single page applications and using Angular for prototyping components. You will then move on to building web services and full-stack web application using ASP.NET WebAPI. Finally, you will learn the development process focused on rapid delivery and testability for all application layers.

Who is this book for?

If you are a .NET developer who now wants to efficiently build single-page applications using the new features that Angular 4 has to offer, then this book is for you. Familiarity of HTML, CSS, and JavaScript is assumed to get the most from this book.

What you will learn

  • Create a standalone Angular application to prototype user interfaces
  • Validate complex forms with Angular version 4 and use Bootstrap to style them
  • Build RESTful web services that work well with single-page applications
  • Use Gulp and Bower in Visual Studio to run tasks and manage JavaScript packages
  • Implement automatic validation for web service requests to reduce your boilerplate code
  • Use web services with Angular version 4 to offload and secure your application logic
  • Test your Angular version 4 and web service code to improve the quality of your software deliverables

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Jun 30, 2017
Length: 248 pages
Edition : 1st
Language : English
ISBN-13 : 9781785881145
Vendor :
Google
Languages :

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Billing Address

Product Details

Publication date : Jun 30, 2017
Length: 248 pages
Edition : 1st
Language : English
ISBN-13 : 9781785881145
Vendor :
Google
Languages :

Packt Subscriptions

See our plans and pricing
Modal Close icon
$19.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$199.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts
$279.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total $ 147.97
ASP.NET Core 2 and Angular 5
$48.99
Learning Angular for .NET Developers
$43.99
Angular 2 Cookbook
$54.99
Total $ 147.97 Stars icon
Banner background image

Table of Contents

9 Chapters
Getting Started with Angular Chevron down icon Chevron up icon
Angular Building Blocks - Part 1 Chevron down icon Chevron up icon
Angular Building Blocks - Part 2 Chevron down icon Chevron up icon
Using TypeScript with Angular Chevron down icon Chevron up icon
Creating an Angular Single-Page Application in Visual Studio Chevron down icon Chevron up icon
Creating ASP.NET Core Web API Services for Angular Chevron down icon Chevron up icon
Creating an Application Using Angular, ASP.NET MVC, and Web API in Visual Studio Chevron down icon Chevron up icon
Testing Angular Applications Chevron down icon Chevron up icon
What s New in Angular and ASP.NET Core Chevron down icon Chevron up icon

Customer reviews

Top Reviews
Rating distribution
Full star icon Full star icon Full star icon Empty star icon Empty star icon 3
(7 Ratings)
5 star 28.6%
4 star 14.3%
3 star 14.3%
2 star 14.3%
1 star 28.6%
Filter icon Filter
Top Reviews

Filter reviews by




Vikas Kumar May 25, 2019
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Good book for beginners.
Amazon Verified review Amazon
Jeffrey L. Armbruster Aug 11, 2017
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Good book for .Net developers. You will also need Mastering TypeScript, Second Edition.
Amazon Verified review Amazon
Gregory A Schmidt Aug 25, 2017
Full star icon Full star icon Full star icon Full star icon Empty star icon 4
Solid foundation book for getting into Angular coming from a C#.Net development career. Definitely a beginner level book.
Amazon Verified review Amazon
Chris Jul 03, 2018
Full star icon Full star icon Full star icon Empty star icon Empty star icon 3
Solid entry level book for learning angular with a .net web dev background.In serious need of a good editor though. There's a decent handful of poorly structured sentences that fail to convey the author's intent.
Amazon Verified review Amazon
DustPixie Sep 02, 2018
Full star icon Full star icon Empty star icon Empty star icon Empty star icon 2
Very poor editing makes it too difficult to read
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

How do I buy and download an eBook? Chevron down icon Chevron up icon

Where there is an eBook version of a title available, you can buy it from the book details for that title. Add either the standalone eBook or the eBook and print book bundle to your shopping cart. Your eBook will show in your cart as a product on its own. After completing checkout and payment in the normal way, you will receive your receipt on the screen containing a link to a personalised PDF download file. This link will remain active for 30 days. You can download backup copies of the file by logging in to your account at any time.

If you already have Adobe reader installed, then clicking on the link will download and open the PDF file directly. If you don't, then save the PDF file on your machine and download the Reader to view it.

Please Note: Packt eBooks are non-returnable and non-refundable.

Packt eBook and Licensing When you buy an eBook from Packt Publishing, completing your purchase means you accept the terms of our licence agreement. Please read the full text of the agreement. In it we have tried to balance the need for the ebook to be usable for you the reader with our needs to protect the rights of us as Publishers and of our authors. In summary, the agreement says:

  • You may make copies of your eBook for your own use onto any machine
  • You may not pass copies of the eBook on to anyone else
How can I make a purchase on your website? Chevron down icon Chevron up icon

If you want to purchase a video course, eBook or Bundle (Print+eBook) please follow below steps:

  1. Register on our website using your email address and the password.
  2. Search for the title by name or ISBN using the search option.
  3. Select the title you want to purchase.
  4. Choose the format you wish to purchase the title in; if you order the Print Book, you get a free eBook copy of the same title. 
  5. Proceed with the checkout process (payment to be made using Credit Card, Debit Cart, or PayPal)
Where can I access support around an eBook? Chevron down icon Chevron up icon
  • If you experience a problem with using or installing Adobe Reader, the contact Adobe directly.
  • To view the errata for the book, see www.packtpub.com/support and view the pages for the title you have.
  • To view your account details or to download a new copy of the book go to www.packtpub.com/account
  • To contact us directly if a problem is not resolved, use www.packtpub.com/contact-us
What eBook formats do Packt support? Chevron down icon Chevron up icon

Our eBooks are currently available in a variety of formats such as PDF and ePubs. In the future, this may well change with trends and development in technology, but please note that our PDFs are not Adobe eBook Reader format, which has greater restrictions on security.

You will need to use Adobe Reader v9 or later in order to read Packt's PDF eBooks.

What are the benefits of eBooks? Chevron down icon Chevron up icon
  • You can get the information you need immediately
  • You can easily take them with you on a laptop
  • You can download them an unlimited number of times
  • You can print them out
  • They are copy-paste enabled
  • They are searchable
  • There is no password protection
  • They are lower price than print
  • They save resources and space
What is an eBook? Chevron down icon Chevron up icon

Packt eBooks are a complete electronic version of the print edition, available in PDF and ePub formats. Every piece of content down to the page numbering is the same. Because we save the costs of printing and shipping the book to you, we are able to offer eBooks at a lower cost than print editions.

When you have purchased an eBook, simply login to your account and click on the link in Your Download Area. We recommend you saving the file to your hard drive before opening it.

For optimal viewing of our eBooks, we recommend you download and install the free Adobe Reader version 9.