Articles


What is Deno?

Deno a pristine method to compose worker-side JavaScript. It solves many of the problems that Node does. It was created by the same person as Node. It uses the V8 JavaScript engine under the hood but the rest of the runtime is implemented in Rust and Typescript.

What Reason Does Deno Utilize Rust?

Deno may be a safe TypeScript run-time on Chrome V8. It had been initially written in Go and now has been revamped in Rust to remain far away from potential garbage collector issues. Deno is like Node js yet is centered around security. The rationale that Deno made was JavaScript. Significantly more horrendous than having a competitor who understands your thing back to front, Deno was made expressly to fix what Dahl saw due to the crucial weaknesses of NodeJs — including security issues, use of a centralized repository system (npm), and heavy tooling.

Source de l’article sur DZONE

Vos utilisateurs et clients sont déjà habitués à utiliser leurs applications mobiles, comme Facebook ou Google Docs, pour interagir et travailler en toute flexibilité. Mais derrière le cloud computing, il y a bien plus qu’une simple interface web moderne. Le temps de réponse, le stockage des données, l’accès aux informations, la fiabilité et la sécurité sont autant d’éléments vitaux pour toute entreprise qui envisage une « migration dans le cloud ». Vos pairs vous auront sans doute parlé des avantages du cloud computing : accès aux technologies les plus récentes, flexibilité accrue et coûts IT réduits.

Qu’est-ce que la technologie cloud ?

Le cloud computing propose des services tels que le stockage des données, la sécurité, la mise en réseau, des applications logicielles et de la business intelligence, via internet et sur la base d’un abonnement.

En découvrant peu à peu le monde du cloud computing, vous voudrez sans doute vous familiariser avec certains des mots, définitions et choix qui s’offrent à vous. Vous trouverez ici un assortiment d’informations pertinentes, y compris des explications des termes SaaS, PaaS, IaaS, cloud public, cloud privé, cloud hybride et leurs différences. Le cloud offre de nombreux avantages que nous allons d’abord brièvement passer en revue.

Les avantages du cloud computing

  • Fiable : sûr, sécurisé et disponible. Bénéficiez d’un accès 24h/24 et 7j/7 au système de cloud computing de n’importe où et avec un excellent temps de réponse. Exécutez sur des serveurs sécurisés avec une équipe d’experts sécurité à temps plein. Vos données sont copiées et sauvegardées à distance.
  • Flexible: obtenez la puissance de calcul dont vous avez besoin, quand vous en avez besoin. Ajoutez ou enlevez des serveurs, du réseau, du stockage. Intégrez de nouveaux utilisateurs instantanément. Étendez vos activités à de nouvelles zones géographiques. Tout est fait rapidement et facilement.
  • Economique : Ne payez que pour ce dont vous avez besoin. Pas de frais initiaux pour le matériel ou les infrastructures. Réduisez le temps consacré par le personnel informatique à la maintenance et à la mise à jour des systèmes. Investissez plutôt vos ressources dans des projets qui génèrent des revenus.
  • Actualisé : ayez toujours la dernière version de la plateforme, base de données, des applications logicielles. De plus, profitez des technologies émergentes telles que le Machine Learning (ML), l’intelligence artificielle (AI), l’Internet des objets (IoT), et plus encore. Restez toujours au fait des dernières innovations.

Les différents types de services de cloud computing

Le cloud computing est divisé en trois grandes catégories de services : SaaS, PaaS et IaaS. Certains fournisseurs combinent ces services et d’autres les proposent séparément.

Qu’est-ce que le SaaS ?

Avec le SaaS (software-as-a-service), les logiciels sont hébergés sur un serveur distant et les clients peuvent y accéder partout et à tout moment, à partir d’un navigateur web ou d’une intégration web standard. Le fournisseur de SaaS se charge des sauvegardes, de la maintenance et des mises à jour. Les solutions SaaS comprennent l’enterprise resource planning (ERP), la gestion de la relation client (CRM), la gestion de projets, etc.

Qu’est-ce que le PaaS ?

La plateforme en tant que service (PaaS) est un environnement de développement d’applications basé sur le cloud qui fournit aux développeurs tout ce dont ils ont besoin pour créer et déployer des applications. Avec le PaaS, les développeurs peuvent choisir les fonctionnalités et services cloud qu’ils souhaitent sur la base d’un abonnement ou d’un paiement à l’utilisation.

Qu’est-ce que l’IaaS ?

L’IaaS (Infrastructure-as-a-service) permet aux entreprises de « louer » des ressources informatiques, telles que des serveurs, réseaux, du stockage et des systèmes d’exploitation, sur la base d’un paiement à l’utilisation. L’infrastructure est modulable et les clients n’ont pas à investir dans le matériel.

IaaS vs. PaaS vs. SaaS

Comparez le SaaS, le PaaS et l’IaaS et découvrez ce que vous pouvez attendre de chaque modèle « as-a-service ». La plupart des entreprises utilisent aujourd’hui un mélange des trois, et les limites entre les trois peuvent parfois s’estomper.

SaaS PaaS IaaS
Qui l’utilise Utilisateurs Business Développeurs Administrateurs système
Ce que vous obtenez Applications logicielles Plateforme de développement Ressources informatiques
Objectif Mener à bien des tâches business Construire et déployer des applications Accéder en ligne au stockage, aux réseaux, aux serveurs et à d’autres infrastructures
Contrôles du fournisseur cloud Applications, données, runtime, middleware, O/S, virtualisation, serveurs, stockage, mise en réseau Runtime, middleware, O/S, virtualisation, serveurs, stockage, mise en réseau Virtualisation, serveurs, stockage, mise en réseau
Contrôles du client N / A – tout est géré par le fournisseur Applications, données Applications, données, runtime, middleware, O/S

Types de déploiement cloud

Il existe trois types différents de déploiement cloud : public, privé et hybride. De nombreuses entreprises combinent plusieurs approches et mettent en place un environnement multi-cloud.

  1. Cloud Public : les services sont fournis aux clients sur un réseau disponible pour les clients du fournisseur. Le cloud public est efficace, abordable et est souvent multilocataires, ce qui signifie que le fournisseur gère votre service dans un environnement partagé.
  2. Cloud Privé : les services sont maintenus sur un réseau privé protégé par un pare-feu. Vous pouvez créer un cloud privé dans votre propre data center ou vous abonner à un cloud privé hébergé chez un fournisseur. Le cloud privé offre plus de sécurité et de contrôle.
  3. Cloud Hybride : combinaison d’un cloud public, cloud privé et d’une infrastructure sur site. Le cloud hybride vous permet de conserver des informations sensibles dans un data center traditionnel ou un cloud privé, tout en profitant des ressources du cloud public.

Cloud public vs privé vs hybride

Comparez les trois différents types de déploiements cloud pour découvrir celui qui conviendrait le mieux à votre entreprise.

Cloud public Cloud privé Cloud hybride
Environnement Ressources informatiques publiques partagées Ressources informatiques privées Mix de ressources publiques et privées
Mise à l’échelle automatique Élevé Peut être limité Élevé
Sécurité Bonne – mais dépend de la sécurité du fournisseur Plus sûr – toutes les données sont stockées dans un data center privé Très sûr – les données sensibles sont stockées dans un data center privé
Fiabilité Moyenne – dépend de la connectivité Internet et de la disponibilité du fournisseur de services Élevée – tout l’équipement est installé dans les locaux ou hébergé chez un fournisseur de services en cloud privé dédié Moyenne à élevée – une certaine dépendance à l’égard du fournisseur de services
Coût Faible – modèle « payez pour ce dont vous avez besoin » et pas besoin de stockage et de ressources sur site Modéré à élevé – peut nécessiter des ressources sur site telles qu’un data center, de l’électricité et du personnel informatique Modéré – mélange de modèle « payez pour ce dont vous avez besoin » et de ressources sur site
Pour qui ? Les entreprises qui souhaitent tirer parti des dernières applications SaaS et de l’IaaS flexible. tout en maintenant des coûts bas Organismes gouvernementaux, prestataires de soins de santé, banques et toute entreprise qui gère un grand nombre de données sensibles Les entreprises qui souhaitent préserver la confidentialité des applications et des données critiques – tout en utilisant les services de cloud public

La sécurité du cloud

Le cloud est-il vraiment sécurisé ? La sécurité du cloud dépend de la manière dont il a été déployé et des capacités du fournisseur. Mais il a été démontré que, dans la plupart des cas, le cloud offre plus de sécurité que les installations sur site. Il y a plusieurs raisons à cela :

  • Emplacement des données : avec un déploiement sur site, vos données se trouvent dans votre installation. Or la 1ère étape pour quelqu’un qui cherche à voler vos données est de savoir où elles se trouvent. Les grands fournisseurs de cloud computing ont de nombreux serveurs à différents endroits, il est donc difficile de savoir où se trouvent les données.
  • Sécurité : avec une installation sur site, votre personnel gère toutes les procédures de sécurité et mises à jour logicielles. Récemment, une grande compagnie d’assurance a été victime d’une faille de sécurité, et il s’est avéré que le service informatique n’avait pas installé de mises à jour de sécurité depuis de nombreux mois. Grâce à un fournisseur de cloud computing réputé, les entreprises disposent d’experts en sécurité à plein temps pour protéger leurs données.
  • Sauvegarde : dans le cadre d’une installation sur site, vous êtes responsable de la sauvegarde régulière de vos précieuses informations. Si votre entreprise adopte ce type de déploiement, il est nécessaire d’avoir des copies à jour stockées hors site.

Proposez de nouvelles technologies via le cloud

Les départements informatiques subissent une pression croissante pour passer du statut de centre de coûts à celui de créateur de valeur – et doivent maintenant mener la charge en matière d’innovation. Le cloud computing et le Platform-as-a-Service (PaaS) peuvent être un catalyseur pour les DSI qui souhaitent maintenir avec succès un environnement informatique bi-modal qui encourage l’innovation rapide tout en soutenant en toute sécurité le noyau stable et critique de l’entreprise.

The post Qu’est-ce que la technologie cloud computing ? appeared first on SAP France News.

Source de l’article sur sap.com

State Design Pattern — a behavioral design pattern that allows an object to change its behavior when its internal state changes.

State Design Pattern

  • The State Design Pattern is a Behavioral Design Pattern and one of the Gang of Four design patterns
  • The State allows an object to alter its behavior when its internal state changes.
  • The State pattern is similar to the concept of finite-state machines.
  • The State pattern is also similar to the Strategy Design Pattern which provides a way to switch a strategy through invocations of methods defined in the pattern’s interface.
  • The State pattern encapsulates varying behavior for the object based on its internal state change.
  • The State pattern provides a cleaner way for an object to change its behavior at runtime.
  • By using the State pattern, the object changes its behavior when its internal state changes.
  • If we implement State-Specific behavior directly in the class, then we will not be able to change it without modifying the class.
  • In-State pattern, State-specific behavior should be defined independently because adding new states should not affect the behavior of existing states.
  • The context class delegates state-specific behavior to its current state object instead of implementing state-specific behavior directly.
  • This allows us to make our context class independent of how state-specific behavior is implemented. New state classes can be added without modifying context class.
  • The context class can change its behavior at run-time by changing its current state object.
  • To implement the State Design Pattern, we create a State interface to define some action. And then concrete classes that represent various states and a context object whose behavior varies as its state object changes.
  • The mixer in the kitchen is a good example of a state pattern, which has a motor and a control interface. Using the knob we can increase/decrease the speed of the mixer. Based on the speed state the behavior changes.
  • The TV which can be operated with a remote controller is another example of a State pattern. We can change the state of the TV by pressing buttons on the remote. But the state of TV will change or not, it depends on the current state of the TV. If the TV is switched OFF then only possible next state can be switch ON. And if TV is ON, we can switch it OFF, mute, or change aspects and source. But if TV is OFF, nothing will happen when we press the remote buttons. 
  • Java Threads are another good example of State pattern since they have defined states as New, Runnable, Blocked, Waiting, Timed Waiting and Terminated

Source de l’article sur DZONE

Avec la licence Enterprise Edition, vous accéderez sans restrictions à la base de données SAP HANA. Découvrez en quoi le passage à une licence full use peut être avantageux pour vos données et applications métiers.

Il y a 10 ans, SAP présentait un outil de gestion de bases de données de nouvelle génération, SAP HANA. Une offre présentant plusieurs caractéristiques clés :

  • In memory : les données sont lues et écrites en mémoire, pour des performances extrêmes
  • Orienté lignes : ce mode permet d’optimiser l’écriture (un enregistrement par ligne)
  • Orienté colonnes : ce mode facilite les requêtes (un type de données par colonne)

Cette double casquette ligne/colonne permet à SAP HANA d’adresser à la fois les traitements transactionnels et analytiques. Des technologies avancées gravitent autour de ce cœur : serveur d’applications, scripting, prédictif, Machine Learning, vues OLAP, graphes, gestion des données spatiales…

L’ensemble propose à la fois une connexion aux applications SAP (BICS) ou non (SQL et MDX). Il est également possible d’accéder à des sources de données tierces via Smart Data Streaming et Smart Data Access et aussi d’intégrer quasiment n’importe quel type de données, structurées ou non, jusqu’aux sources Hadoop, au travers de Smart Data Integration. Tout ceci est combiné avec des fonctions de partionning, de haute disponibilité, de répartition de charge, de parallélisation des requêtes, d’aide à la reprise d’activité, etc.

SAP HANA est aujourd’hui au cœur de nombreuses applications SAP. Il est également possible de l’utiliser en mode autonome. « Dans les deux cas, l’ensemble des fonctionnalités est disponible, car il n’existe qu’une seule version de SAP HANA », explique Olivier Demeusy, Director at Center of Excellence, EMEA North for SAP Business Technology Platform.

Runtime VS Enterprise

La principale différence entre SAP HANA Runtime Edition et SAP HANA Enterprise Edition réside dans le mode d’accès à la base de données et les restrictions s’y appliquant :

  • L’édition Runtime est conçue pour les applications SAP et ne peut être adressée qu’à travers ces applications
  • L’édition Enterprise est accessible sans restrictions depuis n’importe quel système ou application, SAP ou non.

La Runtime Edition n’autorise donc l’interaction avec la base de données qu’au travers des applications SAP, qui vont se charger de lancer les requêtes. L’Enterprise Edition est pour sa part accessible depuis les applications SAP, des applications tierces ou vos propres applicatifs métiers.

L’accès pourra se faire en direct au travers de requêtes SQL. Les fonctions d’intégration et de qualité de données pourront être librement exploitées, tout comme les moteurs avancés de SAP HANA. Enfin, de multiples ponts seront accessibles afin de lier du code métier à SAP HANA. Et ce jusqu’à l’hébergement de vos applications dans SAP HANA. SAP HANA XS Advanced permet en effet le développement d’applications natives SAP HANA, capables de fonctionner au plus près de la donnée.

Un changement de licence facilité

Passer de la Runtime Edition à l’Enterprise Edition est aisé, SAP HANA restant identique dans les deux cas. « Le passage d’une licence à l’autre ne se traduit par aucun changement technique », confirme Olivier Demeusy.

Le tarif comprend un coût d’acquisition et une maintenance annuelle. « Le tarif appliqué dépend directement du volume de données qui sera pris en charge par SAP HANA, avec un calcul effectué par blocs de 64 Go. » Que vous utilisiez une base de données de 500 Go ou de 20 To, vous aurez donc toujours la garantie de bénéficier d’une offre parfaitement ajustée.

The post Exploitez la puissance de SAP HANA dans vos applications, avec une licence full use appeared first on SAP France News.

Source de l’article sur sap.com

Google resembles an iceberg: there’s the part above the water we can see and use everyday; there’s also the part beneath the water, that we don’t see and know little about.

While many of us are concerned about the aspects of Google we don’t see — the parts that threaten our privacy, or monopolize the web — there’s no denying that Google offers some amazing products and tools, many of them free, all from the convenience of a single login.

Today we’re going to take a look at 12 tools from Google that really do bring something positive to the table.

1. Polymer

Polymer is an open-source JavaScript library from Google for building web applications using Web Components. The platform comes with a ton of libraries and tools to help designers and developers unlock the web’s potential by taking advantage of features like HTTP/2, Web Components, and Service Workers. 

The main feature of Polymer is Web Components. With Web Components, you can share custom elements to any site, work seamlessly with any browser’s built-in elements, and effectively use frameworks of all kinds. Products like LitElement (a simple base class for creating fast, lightweight web components) and PWA Starter Kit make Polymer easy to use. If you like, you can build your app entirely out of Web Components.

2. Lighthouse

Google Lighthouse is an open-source, automated tool for improving the quality of web pages. The software allows you to audit web pages for performance, SEO, accessibility, and more. You can run Lighthouse using ChromeDevTools, directly from the command line, or as a Node module. 

To use Lighthouse in Google Chrome, just go to the URL you want to audit (you can audit any URL on the web), open ChromeDevTools, and click the Audits tab. After you have run the audit, Lighthouse will give you an in-depth report on the web page. 

With these reports, you will see which parts of your web page you need to optimize. Each report has a reference doc that explains why that audit is important and also shows you the steps you can take to fix it. 

You can also use Lighthouse CL to prevent regression on your sites. Using Lighthouse Viewer, you can view and share reports online. You can also share reports as JSON or GitHub Gists. 

Lighthouse also comes with a feature called Stack Packs that allows Lighthouse to detect what platform a site is built on. It also displays specific stack-based recommendations.

3. Google Analytics

Google Analytics is the gold standard of analytics services. Google analytics can be installed on your site for free with a small amount of JavaScript and allows you to see all kinds of details about your site visitors, like what browser they’re using, and where they’re from.

By using Google Analytics you can make decisions about your site based on science, and therefore be somewhat confident that the decisions you make will result in the outcome you are expecting.

4. Flutter

Flutter is Google’s UI toolkit for building natively compiled applications for mobile, web, and desktop from a single codebase. The toolkit is open source and free to use. The best part of Flutter is that it works with existing code. 

The toolkit has a layered architecture that allows for full customization, which results in fast rendering and flexible designs. It also comes with fully-customizable widgets that allow you to build native interfaces in minutes. With these widgets, you will be able to add platform features such as scrolling, navigation, icons, and fonts to provide a full native performance on both iOS and Android.

Flutter also has a feature called hot reload that allows you to easily build UIs, add new features, and fix bugs faster. You can also compile Flutter code to native ARM machine code using Dart native compilers. 

5. Google API Explorer

Google has a huge library of APIs that are available to developers but finding these APIs can be difficult. Google API Explorer makes it easy for developers to locate any API. On the Google API Explorer web page, you will see a complete list of the entire API library. You can easily scroll through the list or use the search box to filter through the API list. 

The best part of Google API Explorer is that each link to a reference page comes with more details on how to use the API. API Explorer is an excellent way to try out methods in the Monitoring API without having to write any code.

6. Puppeteer

Puppeteer is a project from the Google Chrome team. The platform enables web developers to control a Chrome (or any other Chrome DevTools Protocol based browser) and execute common actions, much like in a real browser. Puppeteer is also a Node library and it provides a high-level API for working with headless Chrome. It is also a useful tool for scraping, testing, and automating web pages. 

Here are some things you can do with Puppeteer: generate screenshots and PDFs of pages, UI testing, test Chrome Extensions, automate form submission, generate pre-rendered content, and crawl Single-Page Applications. 

7. Codelabs

Google Developer Codelabs is a handy tool for beginner developers and even advanced developers who want to improve their knowledge. Codelabs provide a guided, tutorial, hands-on coding experience. Codelabs’ site is broken down into several tutorial sessions on different topics. 

With the tutorials on Codelabs, you can learn how to build applications from scratch. Some of the tutorial categories include Augmented reality, TensorFlow, Analytics, Virtual Analytics, G Suite, Search, Google Compute Engine, and Google APIs on iOS. 

8. Color Tool

Color Tool makes it easy for web designers to create, share, and apply colors to their UI. It also measures the accessibility level for any color combination before exporting to the palette. The tool comes with 6 user interfaces and offers over 250 colors to choose from. 

The tool is also very easy to use. All you need to do is pick a color and apply it to the primary color scheme; switch to the secondary color scheme, and pick another color. You can also switch to Custom to pick your own colors. After you have selected all your colors, use the Accessibility feature to check if all is good before exporting it to your palette. 

9. Workbox

Workbox is a set of JavaScript libraries and Node modules. The JavaScript libraries make it easy to add offline support to web apps. The Node modules make it easy to cache assets and offer other features to help users build Progressive Web Apps. Some of these features include pre-caching, runtime caching, request routing, background sync, debugging, and greater flexibility than sw-precache and sw-toolbox. 

With Workbox, you can add a quick rule that enables you to cache Google fonts, images, JavaScript, and CSS files. Caching these files will make your web page to run faster and also consume less storage. You can also pre-cache your files in your web app using their CLI, Node module, or webpack plugin. 

10. PageSpeed Insights

PageSpeed Insights is a handy tool from Google Developers that analyzes the content of a web page, then generates suggestions on how to make the page faster. It gives reports on the performance of a web page on both desktop and mobile devices. At the top of the report, PageSpeed Insights provides a score that summarizes the page’s performance. 

11. AMP on Google

AMP pages load faster and also look better than standard HTML pages on mobile devices. AMP on Google allows you to enhance your AMP pages across Google. It is a web component framework that allows you to create user-first websites, ads, emails, and stories. One benefit of AMP is that it allows your web pages to load almost instantly across all devices and platforms hence improving the user’s experience. 

12. Window Resizer

When creating websites, it is important that developers test them for responsive design – this is where Window Resizer comes in. Window Resizer is a Chrome extension that resizes the browser window so that you can test your responsive design on different screen resolutions. The common screen sizes offered are desktop, laptop, and mobile, but you can also add custom screen sizes. 

 

Featured image via Unsplash.

Source


Source de l’article sur Webdesignerdepot

The Builder Pattern is extremely popular in Java applications. Unfortunately, it’s often misunderstood and incorrectly applied, which results to runtime errors.

Let’s remember the purpose of Builder: set only necessary fields in some object and keep remaining fields set to default values. For example, if we’re preparing a configuration object, then it’s convenient to change only the necessary parameters and keep other parameters set to default values. 

Source de l’article sur DZONE

Using advanced process integration techniques becomes essential as you evolve your developer skills while integrating more and more of your business workflows. Let’s take a closer look at what runtime strategies are available for your process automation projects and how to choose the right one for your needs.

It all starts with the core process engine, called Kie Server, and it can be configured to deal differently with the requests it receives and the objects it stores in memory or in the database. Properly configuring how the engine deals with the objects in memory, ensures a project with fewer resource consumption and avoids unexpected behaviors.

Source de l’article sur DZONE