From the Trenches of the Enterprise Software

Yakov Fain

Subscribe to Yakov Fain: eMailAlertsEmail Alerts
Get Yakov Fain via: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn

Top Stories by Yakov Fain

In this blog I’ll show you how to guard routes in Angular 2 Router (currently at 3.0.0-beta.2). Let’s consider some scenarios that require a certain validation to be performed to decide if the user (or a program) is allowed to navigate to or leave the route: Allowed to open the route only if the user is authenticated and authorized to do so. Implement a multi-part form that consists of several components, and the user is allowed to navigate to the next form section only if the data entered in the current one is valid. Allow to navigate to a route only after a certain data structures have been populated. Remind the user about the unsaved changes if he or she tries to navigate from the route. The router has the hooks that give you more control over the navigation to/from a route, and you can use these hooks to implement the any of above scenarios to guard the routes. ... (more)

Starting an Angular 2 RC.1 Project | @CloudExpo #Angular2 #TypeScript #JavaScript

The current version of Angular is Release Candidate 1. This version changed the way how the framework is distributed – it comes as a set of scoped npm packages now. Any imports of the Angular classes will be done from @angular instead of angular2, for example: import {bootstrap} from '@angular/platform-browser-dynamic'; import {Component} from '@angular/core'; The content of package.json, index.html, and the configuration of the SystemJS loader has to be changed accordingly. This post is an extract of our book Angular 2 Development with Typescript, and it’ll show you how to get s... (more)

Implementing the Mediator Design Pattern in Angular 2 By @YFain | @CloudExpo #Cloud

In any component-based framework you’ll need to implement component communications. The main principle is that components should be loosely coupled hence reusable hence testable. The mediator design pattern allows you to arrange component communications via “the man in the middle” so a component A never communicates with the component B directly. If a component needs data, someone will provide the data via bindings to the component’s input properties. Who’s this someone?Ain’t no business of the component. If a component needs to provide some data to the external world, it’ll emit... (more)

Angular 2 Overview By @YFain | @ThingsExpo #DevOps #IoT #Microservices

This article was excerpted from the book “Angular Development With TypeScript” (see http://bit.ly/1QYeqL0). The Angular 2 framework is a re-write of popular framework AngularJS. In short, the newer version has the following advantages over AngularJS. The code is simpler to write and read It performs better  than AngularJS It’s easier to learn The application architecture is simplified as it’s component-based This article contains a high-level overview of Angular highlighting improvements comparing to AngularJS. For a more detailed architecture overview of Angular visit product do... (more)

Java Serialization

In lessons 5 and 6 of this series, you've learned how to use some of the Java streams to read or write bytes, characters or numeric data. This lesson is about reading or writing entire Java objects into streams. Let's say your application uses a class that looks like this: class Employee { String lName; String fName; double salary; java.util.Date hireDate; String address; } Now consider the following scenario: a program HeadQuarterEmpProcessor creates an instance of the object Employee. The values of its attributes (object's state) have to be saved in a file or some other stream. L... (more)