Micro Services

innhold
  1. Micro Tjenester i forbindelse med kontinuerlig Levering, del 1 - teorien
  2. Micro Services
  3. Deep-dive & Konklusjon
  4. leste på en side

kunn monolitten kampen

En annen innflytelse på arkitektur har kontinuerlig levering gjelder distribusjon gjenstander. Spesielt i Java verden store monolittiske applikasjoner hovedsakelig oppstår. Monolithic her betyr ikke den interne strukturen av programmet, men programvaredistribusjon: Også perfekt modularized Java-programmer er ofte levert i en enkelt EAR-fil, som deretter alle moduler er inkludert - eller til og med i en krig, hvor de andre modulene som biblioteker. Denne tilnærmingen fører til et problem: Hvis det bare er en liten del av programendringer, må re-bygget hele programmet og testet. Selv funksjoner som er den samme, må gå gjennom alle trinnene av kontinuerlig tilførsel rørledningen på nytt. Men dette er unødvendig - tross alt, ingenting har endret seg, og det kan være noen nye feil.

Ytterligere arbeid forsinket tilbakemelding, som i sin tur sikte på kontinuerlig levering enig: Først etter mange unødvendige forsøk er utført, som faktisk er relevant for den nye stykke kode. Derfor er det ikke lett å etablere en kontinuerlig levering rørledning for et monolittisk program som er virkelig effektiv. Ved bygging og teste anvendelsen ett eller kjører i flere timer, kan rørledningen ikke være så stor sjanse til å gå igjennom, og det skal bli klart for feil. Tester og bygge kan bli fremskyndet sikkert - men det er dyrt og potensialet for optimalisering er strenge grenser.

Alternativet er å optimalisere arkitekturen for kontinuerlig levering. Målet er så liten som mulig deployerbare gjenstander som kan distribueres separat. Programvaren fordelingen bør være så uavhengig som mulig - ideelt sett, dvs. uten andre gjenstander vil også måtte ta i bruk nye eller omstart. Deretter med en endring bare utplassering rørledning for den endrede gjenstanden er å gå gjennom alle de andre programvaremoduler er ikke berørt. Siden gjenstander er mindre og har færre funksjoner og kode, passasjen av distribusjonsrørledninger er mye raskere. Hvordan nå rask tilbakemelding.

Som nevnt må gjenstandene være helt atskilt fra hverandre - endring av en gjenstand kan ikke engang føre til en annen er å starte ideelt. Til slutt, må hver blokk være en separat prosess. For dette konseptet, har navnet "Microservice" naturalisert.

du kan se ham helt avgjørende: "Micro" representerer størrelsen av tjenestene i sentrum. Gjerne de er relativt små og mindre enn "normal" Applikasjoner. Viktigere enn størrelsen, men den faglige delen, hvorav sammenbrudd i tjenester resultater. Også Micro Services er mer enn "bare" Tjenester - er en viktig del av konseptet at de også har grafiske elementer. Når ved behandling av en brukerinteraksjon fra det grafiske grensesnittet via den logiske gjennom den vedvarende fullt ut kan utføre på en Micro tjeneste, gjelder ingen kommunikasjon overhead. I tillegg er alle de tekniske elementer for en profesjonell samhandling i en Microservice samlet. Fordelene med den tekniske arkitekturen. Til slutt, la bare som definerer prøvakseptansetester for brukeren. Hvis brukeren kan utløse aktiviteter gjennom et GUI selv, forstår han bedre hva noensinne akkurat går i testene.

Eksempler og avgrensning

I en e-handel applikasjoner som orden, søk eller katalog kan være sine egne Micro Services. Tradisjonelle portaler som bringer sammen ulike funksjoner og tilby felles sted allerede fra sin oppgave skaper en underavdeling i nærheten av Micro Services: Endelig kan hver funksjon beskrives som en slik tjeneste implementere. På samme måte kan man gjennomføre tilsetning av en monolittisk påføring av Micro tjeneste. Integrasjonen kan gjøres for eksempel ved linker eller samtaler til det gamle programmet. Fordelen med Micro Tjenesten kan bruke sin egen teknologi stabelen, og det er nesten ingen endringer i ofte vanskelig brukbar arven kode nødvendig.

Micro Services også skille seg klart fra tjenesteorienterte arkitekturer (SOA) fra: sistnevnte fokus på integrering av ulike applikasjoner på tvers av virksomheten. SOA er å skape nye integrasjonsmuligheter innen tjenester og få nye applikasjoner gjennom sammensetningen av tjenestene enklere å realisere gjennom deling av applikasjoner. innflytelse SOA
Så flere programmer og derfor flere lag som kan være spredt over ulike organisasjonsenheter. Micro Services, derimot, er en modell for å implementere en enkelt applikasjon. , For å bruke dem i stedet for komponenter for å realisere programmer eller biblioteker, for eksempel, JAR-filer.

Så Micro Services oppstå i et prosjektteam. Dette forenkler kommunikasjon og koordinering. Derfor, for i ham alle tjenester koordinere slik at alle tjenester er byttet til et nytt grensesnitt med en endring i et grensesnitt på relativt kort tid. I et SOA-arkitektur som er mye mer vanskelig fordi lagene og tjenester som ikke er så tett koordinert - kanskje noen tjenester kanskje ikke bli utviklet videre.

inspirer les enfants pour la programmation

Si vous aimez programmé et a des enfants (neveux, nièces, petits-enfants ...), il se tôt ou tard, la question de savoir quand et comment laisser aller ces enfants sur le thème de la programmation. De nos jours, peut-être liée à la question de la façon dont il favorise le contenu créatif et social, plutôt que de faire simplement un problème de jeu.

Une très cool Remarque m'a donné maintenant un étudiant qui enseigne comme les enfants d'emploi secondaire dans les programmes de l'école primaire. Lorsqu'on leur a demandé ce qu'ils utilisent là-bas, il a à zéro. Développé au MIT, Scratch est livré avec un explicite, en cours d'exécution dans le navigateur IDE, par conséquent, vous pouvez donc avec accès à Internet (et effacé de JavaScript) commencent immédiatement.

Une intégration dans une communauté crée ainsi un environnement social gratuit et sans publicité qui vous donne envie de présenter fièrement les résultats et d'apprendre des exemples curieux des autres. Juste avec les enfants essayer (également seul ou).

Le seul moment critique, dites-moi l'étudiant qui apprend aux enfants est quand les enfants découvrent qu'ils "sons" peut programmer.

Une page Wikipedia sur le sujet "Programmation pour les enfants" Soit dit en passant énumère d'autres alternatives.

Le système de construction

contenu
  1. L'intégration continue avec Java et JavaScript, Partie 1: L'art de versionnage
  2. Le système de construction
  3. Structure du projet et le système cible
  4. conclusion provisoire
  5. lire sur un côté

La base du chantier de construction est le système de construction

Un système de construction, aussi connu comme outil de construction est un programme pour créer automatiquement le logiciel. Un tel système Apache Ant, Gnu Make, Apache Maven ou NPM construit un logiciel dans lequel il réalise une série d'actions pour le système cible. Ce sont généralement des appels simples à des programmes externes dans un ordre défini. Les outils ont des approches différentes. Ant et faire fonctionner par exemple, des tâches qui dépendent les uns des autres. existe pour les sources et les artefacts produits dans les deux outils pas de modèle (modèle), donc il y a toujours une séquence pour créer l'artefact doit être spécifié. En revanche, l'outil de build Maven définit un modèle de projet. Autrement dit, la construction est configuré en premier lieu. Pour l'exemple dans la deuxième partie d'un hybride a été utilisé: L'outil de construction Gradle est à la fois basée sur les tâches, mais il sait, en fonction des plug-ins utilisés également des modèles de projet et combine le prédiviseur deux mondes: la flexibilité et éviter la redondance.

Une autre caractéristique d'un système de construction est le degré de dépendance du système d'exploitation et la stabilité de la version associée. C'est, comme outil de construction stable s'installe dans une version requise. l'utilisateur peut spécifier Gradle au numéro de version requise, suivi par l'outil lui-même invite dans la version spécifiée à partir d'un référentiel et de prendre soin de l'installation. La stabilité de la version des outils de construction est un élément important pour la création reproductible builds.

suffisamment de temps avant devrait être prévue pour la sélection des outils de construction. Techniquement, en passant, il n'y a rien à construire le code source Java avec des outils Java tels que NPM étranger ou Gnu faire. Habituellement, un outil de construction est optimisé pour un système cible vers le bas. Ainsi décider des détails concernant les plug-ins nécessaires mécanismes de dépendance ou de soutenir un des référentiels particuliers.

garder le contrôle des versions

Lors de la création d'un administrateur de système de construction doivent décider où les objets créés pour les étapes ultérieures prises et ce que les artefacts de passage nécessaires ces bibliothèques sont inclus. La façon la plus simple est de stocker les artefacts sur un (réseau) lecteur et / ou vérifier les bibliothèques nécessaires dans le système de contrôle de version (CVS, SVN, Git). L'inconvénient de cette approche est que le travail existant sur Internet ne peut pas être utilisé à nouveau et mettre à jour les bibliothèques utilisées est cher.

Une alternative consiste à utiliser un système de stockage pour l'accès ou le stockage d'objets. Un tel outil géré métadonnées en plus des artefacts que les dépendances, la version buzzer version précédente, l'auteur et la licence. Sur la base des méta-données, une entreprise peut faire en sorte que, par exemple, au large d'une certaine licence ou pris au piège. Depuis un système de dépôt met en cache la voie d'accès est toujours archivé une copie redondante, ce qui assure la reproductibilité de la construction à une défaillance d'un système distant. La copie aide pour les cas où le fournisseur décide de supprimer une version requise de l'Internet à nouveau. Idéalement, le système de construction prend en charge un référentiel en interne à des défaillances des services externes, tels que le pont de GitHub en Avril à 2015.

interdépendant

La troisième catégorie de problème lors de la création reproductible construit est la gestion des dépendances. Cela peut se référer à une version simple ou la version plage. Certains systèmes prennent en charge les propriétés orthogonales tels que le système d'exploitation ou de l'architecture du processeur. Donc NPM en mesure de configurer les dépendances du système d'exploitation. Les paquets Scala-environnement doivent être distingués sur la base du compilateur utilisé Scala, et le système Portage pris en charge par ce qu'on appelle des drapeaux générales d'utilisation des nécessités orthogonales telles que le support vidéo, IPv6 ou les langues prises en charge. Au bout du compte, il a dans la création de logiciels, la grande division des dépendances compiler, tester et exécution avéré suffisant dans les catégories. Les deux dépôts Maven et NPM connaissent cet ordre. En fin de compte, l'équipe devrait envisager comment un système de construction peut traiter les objets d'une autre.

marché des magazines .net: Il n’y avait que trois

Alors que je parcourais le sac de conférence de Strategy Summit Software Microsoft, j'ai rencontré Hannes Preishuber de ppedv. Dans le sac plusieurs magazines informatiques sont: Computer Week, papier d'ordinateur, OBJEKTspektrum, LANline, dotnetpro, databasepro et le magazine dotnet. "Il n'y a en effet pas ASP.NET Professional ici"J'ai remarqué directement, après Hannes dit, le magazine avait été fixé. Le magazine soeur Visual Studio One, mais il y avait encore.

Le professionnel ASP.NET a toujours été un peu curieux plantes sur le marché des magazines .Net. Le groupe cible était évidemment beaucoup plus faible en limitant le développement Web .Net, la mise en page rappelle mon temps de journal de l'école et Hannes a appelé de la première édition (9/2002) de toutes les années "Rédacteur en chef intérimaire", Il m'a expliqué une fois en disant qu'il voulait occuper le poste jusqu'à ce que le magazine est elle-même. d'avoir ainsi semble pas fonctionner ... Je pense que c'est dommage parce qu'un magazine a renforcé la communauté grandissante de développeurs ASP.NET.

ayant déjà "MSCoder" disparu après une brève apparition sur le marché allemand, il y a maintenant seulement trois spécialisés dans les magazines .Net:

dotnetpro

  • la société des nouveaux médias Ulm, Siège social: Munich
  • Sortant de BASICPRO, VBA Magazine et le Journal système
  • disponible uniquement par abonnement
  • publié chaque mois
  • Rédacteur en chef: Tilman Börner
  • Abonnement annuel: 76,20 euros (ou 14,90 euros par numéro unique plus frais.)

dot.net Magazine

  • Logiciel et Support Média, Siège social: Francfort
  • Abonnement et en kiosque
  • publié chaque mois
  • Rédacteur en chef: Masoud Kamali
  • Abonnement annuel: 89,90 Euro, étudiants: 76,60 Euro (. Ou simple question 9.80 euros frais de port inclus)

Un Visual Studio

  • ppedv, bureau: Burghausen
  • Abonnement et en kiosque
  • zweimonatlich
  • Rédacteur en chef: Harald M. Genauck
  • Abonnement annuel: 33,00 euros (ou 4,90 euros par numéro unique)

Photon: Le conseil d’IdO Maker

Photon: Le conseil d'IdO Makercontenu
  1. Photon: Le conseil d'IdO Maker
  2. facilité
  3. développer des applications
  4. accès & conclusion
  5. lire sur un côté

La particule de photons Conseil est le résultat d'un projet Kickstarter qui ajoute un puissant microcontrôleur avec une connectivité WiFi et de nuages. Cette recette fournit tous les éléments de base pour les applications IdO.

Auparavant, une carrière rapide de misère à la richesse que le rêve américain. Aujourd'hui, le raccourci pour une version moderne de ce rêve pourrait kickstarter.com chaud. recueillir par l'inventeur de l'argent site de la communauté afin de mettre en œuvre leurs idées novatrices.

2013 Zach Supalla, Zachary Crockett, Stephanie Rich et Will Hart se sont enrôlés dans kickstarter.com pour leur vision du noyau Spark. Dans ses propres mots, il est "plate-forme de développement Arduino compatible avec le support WiFi et une plate-forme de développement basée sur le cloud", Le concept de la communauté a convaincu les quatre protagonistes ont été en mesure de recueillir 567,968 dollars américains de 5549 partisans. Au printemps 2015, les premières copies de la partie centrale d'allumage à gauche de la ligne d'assemblage.

Les particules et les photons

Aujourd'hui, il y a la société matériel open source de particules, qui vend maintenant à côté du successeur du Spark Core appelé Photon d'autres produits, y compris la carte électronique avec 2G ou 3G soutien. Dans cet article, cependant, est tout au sujet de photons qui est spécifiquement destiné à Maker IdO.

Vers le bas au point un photon sur la planche à pain; ci-dessus à titre de comparaison, un Arduino également compatible Teensy-3,2-Board (Fig. 1) Vers le bas au point un photon sur la planche à pain; ci-dessus à titre de comparaison, un Arduino également compatible Teensy-3,2-Board (Fig. 1)

Regardez sous le capot

Avec sa taille de 36,58 mm x 20,32 mm x 6,86 mm et le poids net de cinq grammes (y compris les en-têtes de broches) un photon appartient à la classe des planches très compactes. son "lecteur de photons" est constitué d'un microcontrôleur STM32F205 ARM Cortex-M3 avec 120 MHz. Il nécessite 3,3 V "carburant",

Schéma de principe du photon gauche, la puce Wi-Fi de Broadcom, à droite du processeur ARM 3 (figure 2). Schéma de principe du photon gauche, la puce Wi-Fi de Broadcom, à droite du processeur ARM 3 (figure 2).

Dans le compartiment à bagages sont en plus de 1 mégaoctet Flash et 128 Ko de RAM (plus 4 Ko de RAM de sauvegarde) disponible. Pour réellement prendre avantage de la mémoire, la grand-mère proverbiale doit tricoter beaucoup de code. Cela conduit les utilisateurs de larmes métaphoriques classiques planches Arduino dans ses yeux.

Pour l'amarrage de périphérique exister GPIOs numérique 18 (à des fins générales de ports E / S), neuf d'entre eux à l'aide d'une modulation de largeur d'impulsion. En outre, il y a huit entrées analogiques avec CAN (convertisseur analogique-numérique) et deux sorties analogiques avec DACs (convertisseur numérique-analogique).

Les composants les plus importants du photon en bref (Fig. 3) Les composants les plus importants du photon en bref (Fig. 3)


Plus de détails sur les connexions d'un photon avec le monde extérieur se trouve dans le tableau ci-dessous. 5 V dans la colonne de droite indique la tolérance de 5 V tension.

Type de connexionnombreEntrée (E) / sortie (A)5 V / 3,3 V
numérique18I / O5 V / 3,3 V
Analogique (ADC)8e3.3V
Analogique (DAC)2A3.3V
SPI2I / O3.3V
I2S1I / O3.3V
I2C1I / O5 V
CAN1I / O5 V
USB1I / O3.3V
PWM9A3.3V

Modulation de largeur d'impulsion en charge les sorties D0, D1, D2, D3, A4, A5, WKP, RX, TX, dont seulement sept sont indépendants, puisque deux broches (A5 / A4 D2 et / D3) partagent une minuterie.

La gauche, les connecteurs d'or sur la figure 3, en plus de la puce de processeur sont prévus pour la coexistence et la coordination d'une radio Bluetooth connecté.

Le second côté de la pièce de monnaie est le composant WiFi qui est une base de puce Broadcom BCM43362. La communication se fait dans la bande 2,4 GHz avec IEEE 802.11b / g / n avec jusqu'à 65 Mbit / s sur les suspects habituels du monde des protocoles de sécurité: Ouvert, WEP, WAPI, WPA et WPA2-PSK WiFi. L'AP douce intégré (Access Point) simplifie la configuration de la carte. Comme il sied à un dispositif compatible IdO, un programme peut permettre le photon en mode veille.

Pour les décideurs devraient être intéressant que le conseil peut être utilisé avec un en-tête bien sur la carte de test, mais il est également compatible CMS.

Le prix de la carte est Photon officiellement à 19 dollars américains. En Allemagne, il est disponible à partir de 20 euros - y compris à Watterott et exp-tech. Qui ne veut pas souder, vous devez acheter une carte avec les en-têtes de broches montées (broches d'en-tête).

Intégration continue dans les temps de programmation agile

contenu
  1. Intégration continue dans les temps de programmation agile
  2. serveur CI
  3. tendances & conclusion
  4. lire sur un côté

L'intégration continue est un moyen éprouvé pour optimiser le développement de logiciels. L'article suivant explique ses fondations, renomme des pierres d'achoppement dans la pratique et les meilleures pratiques résultant et enfin une perspective sur les tendances actuelles.

L'équipe des projets logiciels développés sont de plus en plus difficiles à gérer avec la taille et la complexité croissante et la construction. L'interaction constante de nombreux développeurs, tôt ou tard inévitablement appelé erreurs d'intégration fluage que selon le moment où ils sont remarqués peuvent être enlevés difficile, voire impossible.

Ce problème est en fin de compte aussi vieux que le développement de logiciel lui-même et, par conséquent, il y a des idées depuis longtemps et les moyens d'y faire face. ils sont connus sous des noms tels que "Construire tous les jours" et "Test de fumée", Cependant, il a été l'article Martin Fowlers "L'intégration continue" (CI) en 2000, qui a fait connaître le sujet sous le nom de selbigem. Depuis lors, plus de dix ans se sont écoulés, et en plus des concepts originaux existent maintenant prêt serveur CI différents fabricants. Leur utilisation dans le développement de logiciels est maintenant de rigueur.

travail d'abord, puis le plaisir

Pour faire fonctionner un système de CI raisonnable, certaines exigences techniques et organisationnelles doivent être respectées, qui sont brièvement expliquées ci-dessous.

Une condition préalable technique central pour les projets de travailler avec CI, la gestion du code source et d'autres fichiers associés à un système de contrôle de version (VCS). Il n'a pas d'importance de CI-vue, que ce soit un système centralisé comme Subversion ou un système distribué comme Git.

Depuis l'opération du serveur de CI est de fonctionner sans intervention humaine, il est nécessaire que la construction des projets est entièrement automatisé (automatisation de construction mot-clé). La signification exacte "construire" varie en fonction du projet, généralement cachée derrière au moins une compilation du code source et l'exécution des tests automatisés.

Ainsi, le fonctionnement d'un serveur CI finalement valable à long terme, les tests automatisés mentionnés ci-dessus soit (automatisation des tests) doit exister en quantité suffisante. Les résultats d'un serveur CI en cours d'exécution ou seulement quelques tests triviaux ne sont pas très significatifs en général.

Tout en travaillant sur un projet, l'équipe de développement responsable, il apporte des modifications de code source et passe avec un soi-disant engager à VCS. Les commits sont fréquemment effectuées, sinon l'augmentation de la probabilité que brusquement ne peuvent plus être les changements locaux du développeur sur l'intégration du système de CI.

Étant donné que le système de CI est d'être une partie du développement de la culture de l'équipe, il est nécessaire que tous les membres de l'équipe ont un accès facile à et être informés des résultats respectifs de leur travail et celui de leurs collègues (visibilité, par exemple en envoyant des e-mails appropriés ,

Le tout est plus que la somme de ses parties

Un système de CI est non seulement le serveur CI réel ou d'autres composants. La figure 1 montre schématiquement les éléments essentiels d'un système de CI typique. Le point de départ est un projet qui travaillera avec CI et son code source est géré avec VCS. L'équipe de développement responsable travaillant sur le projet et transmet les modifications au code source via engager dans le VCS. Tout d'abord est de faire une fois connu dans le serveur de CI où le projet dans le VCS est situé, généralement en spécifiant une URL spécifique à VCS et comment le serveur CI au VCS authentifié. Semblable à un développeur normal du serveur CI crée maintenant une copie de travail locale du projet concerné avec lui.

Les composants d'un système de CI (Fig. 1)

Désormais les adresses de serveur de CI demande périodiquement aux VCS s'il y a eu des changements dans le projet concerné depuis la dernière fois. Dans ce cas, le serveur de CI, un nouveau soi-disant construire CI est déclenchée. La première étape dans un tel CI-build est essentiellement que le serveur CI met à jour sa copie locale du travail par soi-disant mise à jour VCS. le projet avec ces fichiers en cours est alors à l'étape suivante "construit"Ce qui signifie généralement la compilation et l'exécution des tests automatisés.

L'exécution de compilation et d'essai ne conduit pas le serveur de CI à travers, mais un outil de construction comme Maven ou faire. Cela suppose que l'équipe de développement a complètement automatisé le processus de construction dans la course et les fichiers de construction spécifiques à l'outil tels que Maven (POMs Object Model de projet), ou la création de fichiers sont également gérés dans le VCS. Selon la façon dont l'appel des outils de compilation se termine, le serveur CI classe la construction entière de CI concluante. Cela se fait, en principe, le schéma suivant:

  1. succès: Les deux la compilation et les tests automatisés n'a pas révélé d'erreurs.
  2. Attention: la compilation et de test était en principe avec succès, mais il y avait des problèmes mineurs, tels que des tests simples ou à défaut des avertissements du compilateur.
  3. Erreur: Il y avait une telle erreur critique ou beaucoup que la construction de CI est réputé avoir échoué, par exemple, une terminaison du compilateur ou de dépasser un certain nombre de tests ont échoué.

En accédant au serveur VCS CI peut déterminer quels membres de l'équipe de développement ont fait ces changements qui ont causé récemment la construction de CI. Ces développeurs peuvent être conclus avec des informations spécifiques, par exemple par e-mail du résultat de construction et ainsi obtenir des informations sur si les modifications ont entraîné des problèmes.

En général, les résultats de toutes les données construit et associé sur le serveur de CI seront sauvegardés sous forme de rapports et sont disponibles en utilisant les pages Web, de sorte que seul son URL et le résultat global doit être envoyé comme une notification. Au point il convient de mentionner que le scénario décrit la "typique" décrit CI-débit. Adaptations et extensions de l'idée de base est tout à fait possible, par exemple:

Internet des objets: Google Android apporte des choses

Google lance Android choses

Le système d'exploitation dérivé de Google Android pour regarder l'IdO nommé Brillo retour à une histoire de succès particulier. Avec les disponibles, entre autres, Raspberry Pi Android choses du fournisseur de moteur de recherche risque d'une deuxième tentative.

Google a annoncé Android choses un nouveau système qui est un changement de nom du présenté mai 2015 Brillo essentiellement. En raison des besoins particuliers de l'IdO (Internet des objets), le moteur d'exécution Android subit une expansion. Enfin, les systèmes communiquent via différents bus avec du matériel tiers. De plus, Android choses a une interface utilisateur fortement modifiée: au lieu d'offrir aux utilisateurs une interface Android complète, le système démarre directement l'application MSR. (Mesure, contrôle et de régulation).

Les différentes couches de choses AndroidLes différentes couches de choses Android(Image: Google)

Cela conduit à des changements importants: Tout d'abord, manquant une variété d'intentions et de services et d'autre part, un affichage ne doit pas être présent. Google précise les différentes contraintes du côté du SDK.

Contactez le matériel

Un nouveau lorsque l'interface de programmation API de périphériques d'E / S appelé permet aux développeurs d'accéder I2C (Inter-Integrated Circuit) et le bus SPI (interface série de périphérique), coopérant avec des broches GPIO (entrée à usage général / sortie) et communiquant par l'intermédiaire de UART (transmetteur-récepteur asynchrone universel). En particulier dans le domaine des capteurs de température bus OneWire généralisée est pas pris en charge. En raison de la mise en œuvre basée sur Java est discutable, quid des capacités en temps réel.

Le présent dans Android pour un cadre de la fusion de capteurs de temps permet de réaliser des applications Google qui répondent à l'environnement autour du plus fort. Environ un comme "Pilotes Espace utilisateur" concept de développeurs connus peuvent transmettre entrant via les différentes données de capteurs de systèmes de bus au système d'exploitation, où ils sont disponibles à divers services Google.

Démarrer Aide et Notes de version

Ceux qui veulent commencer avec Android choses immédiatement trouvées sur le site des développeurs, un groupe d'images prêtes. En plus du Raspberry Pi, le système prend en charge un certain nombre d'autres conseils - plus d'informations sur le déploiement se trouvent les exemples de projets. Les développeurs doivent noter les avertissements figurant dans les notes de version pour les plates-formes individuelles. (Tam Hanna) /(RME)

Une identité pour tout Keycloak

Une identité pour tout Keycloakcontenu
  1. Une identité pour tout Keycloak
  2. Simple et sûr
  3. conclusion
  4. lire sur un côté

Keycloak est un logiciel open source, Red Hat a publié comme une mise en œuvre de Connect OpenID. Les développeurs peuvent utiliser facilement et avec souplesse pour l'authentification pour les applications utilisateur.

Les exigences en matière de services Internet ont considérablement changé au cours des dernières années. Les temps où les utilisateurs sont révolus depuis longtemps nouvellement inscrits pour chaque service. Au lieu de cela, vous souhaitez gérer l'identité d'aujourd'hui une fois lorsque les fournisseurs tels que Google ou Facebook et accorder l'accès uniquement à cette identité de nouveaux services. La mise en œuvre pratique d'accès en cliquant sur un bouton log-in Google ou Facebook au sein du service. Cette approche présente plusieurs avantages: entre autres, la centralisation du processus d'authentification entier à un fournisseur d'identité unique facilite l'authentification unique. Cependant, les dommages potentialisé si un compte atterrit avec succès dans les mains des assaillants.

Merci au publié 2014 et le protocole OpenID Connect Keycloak Red Hat en tant que mise en œuvre certifiée conforme du Protocole, le processus d'application peut être relativement facilement et rapidement mettre en œuvre dans leurs propres environnements de système. Les fabricants de Keycloak se sont mis à leur logiciel vise à simplifier la question de la sécurité pour les développeurs d'applications et de façon significative les services. Le logiciel prend non seulement sur l'autorisation pure, mais en plus prend également en charge l'authentification de l'utilisateur. Les administrateurs doivent ce lors de l'installation Keycloak dans une infrastructure existante pas modifier, mais ils peuvent simplement utiliser de tout LDAP existant ou les serveurs Active Directory.

La sécurité par l'isolement

Keycloak est essentiellement un serveur d'applications wildfly pré-configuré, qui fonctionne séparément des applications couvertes. La figure 1 montre comment les applications ou le client, les attaquants de l'utilisateur de se connecter à Keycloak qui accepte les lettres de créance et traitées. La procédure isole l'application des informations d'identification utilisateur protégées. Cela permet non seulement de réduire les failles de sécurité potentielles dans le traitement et la transmission des informations d'identification sensibles, mais offre également la possibilité de posséder l'utilisateur dans les applications étrangères via une instance Keycloak centrale pour authentifier. L'avantage est que vous pouvez connecter ces applications externes sans révéler ainsi les pouvoirs réels ou les informations de leurs propres utilisateurs.

Le client transmet les données utilisateur pour authentifier auprès Keycloak. L'application reçoit l'accès ID & jeton (Fig. 1) après une authentification réussie. Le client transmet les données utilisateur pour authentifier auprès Keycloak. L'application reçoit après une authentification réussie, l'accès & jeton d'identification (Fig. 1).

En ce qui concerne le type d'authentification Keycloak est très flexible. Entre autres choses, les utilisateurs peuvent authentifier au sein Keycloak contre un Active Directory ou un serveur LDAP. En option Keycloak être utilisé comme Kerberos pont pour authentifier automatiquement les utilisateurs qui ont signé par exemple par le journal dans Windows déjà sur un serveur Kerberos. De même, l'utilisation de Keycloak comme courtier Identity est possible que l'authentification des délégués à un fournisseur d'identité externe ou à un réseau social comme Facebook, Google et GitHub. Dans le cas le plus simple, les administrateurs utilisent la base de données fournie et de mettre l'utilisateur à travers une interface d'administration à nouveau ou les transférer à enregistrer.

Une fois l'authentification réussie, un utilisateur fournit un jeton d'accès Keycloak à côté d'un jeton d'identité sous la forme d'un jeton Web JSON (JWT) pour l'utilisateur de l'application (cf .. Étape 4 sur la figure. 1). Le jeton d'accès permet à l'application d'invoquer des services pour le compte de l'utilisateur. cependant, le jeton d'identité contient principalement des informations sur l'identité de l'utilisateur. Il constitue la différence essentielle entre OAuth 2.0 et son extension OpenID Connect: Contrairement protocole OAuth 2.0 classique, il prend en compte non seulement les droits sous la forme de jetons d'accès, mais aussi l'identité des utilisateurs. A propos des applications jeton d'identité peut lire directement des informations telles que le nom complet ou les utilisateurs de courrier électronique. Selon les besoins, le jeton d'identité via Keycloak personnalisée des attributs supplémentaires à ajouter.

Étant donné que plusieurs applications (clients) sont connectés à une instance Keycloak que les utilisateurs sont connectés à l'application automatiquement sur tous les clients connectés et donc ne pas besoin de se connecter pour chaque application supplémentaire. Du point de vue de l'utilisateur, ainsi la facilité d'utilisation des applications améliorées. Pour les opérateurs, le processus simplifie considérablement l'administration des utilisateurs, car ils ne conservent pas leurs droits et rôles à plusieurs reprises et à gérer.

dpunkt.verlag accepte le programme O’Reilly germanophone

dpunkt.verlag accepte O en langue allemande'Reilly-Programm

Entre autres, pour la "coquille de noix"-BOOKS l'éditeur américain O'Reilly est devenu connu

(Photo: O'Reilly)

Le bureau de Cologne O'Reilly est fermé. A partir de Juillet 2015, qui appartient à Heise dpunkt.verlag reprend le programme du livre de langue allemande du grand éditeur américain.

Le dpunkt.verlag va gérer le programme de livre de langue allemande O'Reilly à partir du 1er Juillet 2015. Le dpunkt.verlag distribuera le programme O'Reilly germanophone existant encore et publier de nouveaux titres sous la marque O'Reilly à l'étape suivante.

dpunkt est un éditeur existant depuis 1995 spécialiste de l'informatique et des sujets de la photographie, qui appartient à Heise Medien GmbH. L'éditeur américain O'Reilly a fondé en 1978 par Tim maison d'édition et de conseil O'Reilly; Il était bien connu pour son "Dans un Nutshell"Série avec des manuels de référence pour les logiciels montrant des images d'animaux comme couverture du livre.

O'Reilly et dpunkt prévoient également de coopérer dans les produits numériques. également apporter l'approche de O'Reilly à des conférences technologiques en Allemagne, est un développement possible du partenariat. À cette fin, il y a des pourparlers entre O'Reilly et dpunkt, mais encore à ses débuts. dpunkt est en association avec Heise développeur et hôte iX plusieurs conférences de développeurs.

Entre O'Reilly et dpunkt existe depuis un certain temps une coopération étroite, en Allemagne et aux États-Unis. Ainsi, les deux sociétés partagent sur les ventes. l'acquisition devrait avoir aucun impact possible pour le courant ou le programme naissant, que les deux parties cherchent une transition en douceur pour tous les produits et services.

Dans le cadre du partenariat média entre les deux maisons d'édition a été mis fin aux employés O'Reilly allemand; le bureau de Cologne allemand d'une grande maison d'édition américaine fermera par étapes au cours de l'année prochaine. Le bureau de Cologne O'Reilly existe depuis 1994. Au fil des ans, environ 800 livres en langue allemande ont été publiés.

Dpunkt fin de l'année dernière avait annoncé que l'éditeur apportera également des traductions de Microsoft Press exclusivement pour le marché du livre allemand.

(Le dpunkt.verlag entendu comment l'Medien GmbH Heise, qui publie également Heise en ligne, le groupe de Heisenberg.)(ANE)

Logiciel Kanban en action

contenu
  1. Logiciel Kanban en action
  2. classes de service
  3. exécution
  4. lire sur un côté

Ceux qui veulent améliorer le développement de logiciels et ne veut pas commencer ici une révolution à l'échelle entreprise avec des méthodes agiles, est une bonne alternative dans le logiciel Kanban. L'article prévoit une procédure pour une mise en œuvre possible.

Kanban connaissait le système de production Toyota (TPS) [1], qui a révolutionné la production automobile. Le mot Kanban est le japonais et un moyen de carte de signal, et dans la TPS une carte Kanban signale la zone de production en amont respective, qui doit être produit et en quelle quantité. Cela conduit à une production juste à temps, ce qui ne produit que ce qui est vraiment nécessaire.

David J. Anderson a révisé l'idée de base de Kanban essentielle et les adapter aux besoins spécifiques de développement de logiciels [2]. Le résultat est une approche évolutive pour améliorer le développement de logiciels. Évolutionnaire, dans ce contexte signifie que les changements peu avec l'introduction initiale de Kanban dans le mode habituel de fonctionnement: Les processus établis et des rôles dans l'organisation ou restent dans l'équipe, et aucun nouveau titre d'emploi seront inventées. Cependant, l'équipe Kanban parvient à un accord sur rendre permanentes les petites améliorations dans le fonctionnement. Le point de départ des révisions est toujours la situation actuelle et que vous voulez atteindre est pas un état défini; Par conséquent, il n'y a pas "la" état cible Kanban. Au contraire, les équipes Kanban adhèrent aux principes fondamentaux [3] suivants:

  1. Visualisation du flux de travail et le travail
  2. Limitation de la WIP (WIP = Work In Progress, dans le travail d'exécution)
  3. Le contrôle et la mesure du flux de travail
  4. l'élaboration des règles de processus explicitement
  5. L'amélioration grâce à des modèles éprouvés et des méthodes scientifiques

Conformément à ces principes, les procédures ont été mis en place, qui partagent de nombreuses équipes Kanban et dont cet article découle d'une éventuelle mise en œuvre de Kanban dans une équipe informatique.

Flux de travail et le travail en vue

Toutes les étapes, à travers le travail jusqu'à son achèvement, une équipe Kanban sur un tableau blanc visualisé - le tableau Kanban. Un développement de logiciels de flux de travail exemplaire pourrait consister en des opérations de conception, de développement et de test. A chaque étape, les critères d'achèvement sont ("définition done") Dit explicitement, de sorte que tous les membres de l'équipe ont la même compréhension quand un travail est terminé. Les ordres de travail sont enregistrés sur les billets et se déplace dans les interstices de la carte où se trouve le travail au moment. De plus, chaque billet recevra un avatar de la personne responsable, afin qu'il puisse être vu un coup d'oeil qui est actuellement en cours de traitement qui ticket.

Des exemples du Conseil du Kanban (Fig. 1)

Lorsque le travail est interrompu à un billet, vous marquez le billet avec un autocollant rouge à bloquer. les blocages de travail peuvent être causés par exemple par un manque d'information, le manque d'infrastructures ou similaires. Un flux constant de travail est l'un des principaux objectifs de Kanban et a donc des blocages, qui interrompent la résolution du flux de travail, une priorité élevée.

Une division d'une étape de "faire" et "fini" (Fig. 2)

Dans Kanban terminé les travaux ne seront pas poussés dans l'étape suivante (push), mais l'éditeur de cette étape obtient le travail (traction) de la précédente quand il est prêt. Les travaux réalisés sont marqués d'un autocollant vert ou par une division du travail à l'étape "faire" et "fini",

Contre le goulot d'étranglement

Kanban limite le nombre de travail simultané dans chaque étape (limite WIP). Cette limitation est due en partie à la simple notion qu'il est plus logique d'avoir un travail à 100 pour cent prêt de dix œuvres à 10 pour cent. Plus le nombre de travail active dans le système, plus les temps de passage.

travail séquentielle par rapport à travail quasi-parallèle (Fig. 3)

La figure 3 montre comment trois travail peut être séquentiellement et exécution quasi-parallèle. Ce dernier signifie qu'une commutation de tâche permanente entre le travail a lieu parce que les gens ne sont pas en mesure d'effectuer des tâches actives simultanément. On voit que les tâches séquentielles sont exécutées dans cinq unités de temps - le délai est donc cinq unités de temps par tâche. Dans le traitement quasi-parallèle, les temps de traitement à 16, 17 et 18 unités de temps pour l'augmentation de la tâche rouge, jaune et bleu. La tâche constante de commutation appelle à un effort supplémentaire parce que le membre du projet est constamment besoin d'être réincorporé dans les tâches. Les dépenses supplémentaires est quantifiée dans cet exemple simplifié, avec une unité de temps par tâche.

En outre, dans un des goulots d'étranglement du système de traction limitée WIP deviennent visibles: Le goulot d'étranglement dans le Impliquez peut ramasser tout travail de son prédécesseur, parce qu'il est toujours occupé avec la tâche à accomplir. Et puisque le prédécesseur est limitée par une limite WIP, il peut aussi ramasser tout le travail de son prédécesseur. La conséquence est le blocage du flux de travail et ses collègues qui sont empêchés de nouveaux travaux.

Un tableau Kanban avec des limites WIP et un blocage dans le flux de travail (Fig. 4)

Les limites de TAF sont indiquées par les nombres dans l'étape respective. A bord au-dessus du développement de l'étape est une limite de WIP 2, par conséquent, peut être un maximum de deux billets dans cette colonne. Le conseil d'administration montre un état dans lequel un développeur avec le traitement des deux billets était terminé - il se bloque dans la colonne Fait à développement. Dans l'étape la conception d'un billet est fait. Cependant, le développeur ne peut pas obtenir ce ticket parce qu'il dépasserait la limite de WIP 2 s'il tire dans le développement sur le terrain. Dans ce cas, le développeur de telle sorte que le billet d'essai est terminée plus rapidement et est rétabli le flux de travail prend en charge le testeur dans sa tâche.

“URLs” sans .aspx pour ASP.NET Webforms

Depuis l'introduction d'ASP.NET WebForms en 2001 pour reconnaître les plupart des sites Web basée sur les formulaires Web ASP.NET vers des URL où le nom de fichier ".aspx" se termine. Il y avait toujours des façons de changer cette fin ou pour y renoncer. Maintenant, cependant, Microsoft fournit une solution officielle depuis la mise à jour ASP.NET 2012,2 sous la forme du projet "Microsoft.AspNet.FriendlyUrls", Tous les nouveaux dans Visual Studio 2012 échelle (avec les outils Web installés 2012.2 Mise à jour) projets Webform intégrer automatiquement cette fonction. Anciens projets peuvent être mis à niveau via un package Nuget ou simplement en faisant référence à l'Assemblée Microsoft.AspNet.FriendlyUrls.dll manuellement.

Ensuite, vous devez seulement deux lignes de code dans son code: Une instruction Imports (ou en utilisant C #) et un appel à la EnableFriendlyUrls méthode d'extension () dans Application_Start dans le fichier Global.asax:

Exemple dans Visual Basic .NET:

importations Microsoft.AspNet.FriendlyUrls
...
Sous Application_Start (expéditeur de ByVal comme objet, ByVal e comme EventArgs) System.Web.Routing.RouteTable.Routes.EnableFriendlyUrls ()
...
End Sub

Ensuite, vous pouvez appeler un site Web .aspx sans l'extension de nom de fichier, ainsi, par exemple,
http://www.it-visions.de/start à la place http://www.it-visions.de/start.aspx.

les informations "Ce package contient le contenu pour les projets d'application Web __gVirt_NP_NN_NNPS<__ C # (WAPs)" sur le site Nuget du projet devrait utilisateurs de projets de site web (sites sont une alternative à WAPs) sans se laisser décourager: Le manuel faisant référence à la Microsoft.AspNet.FriendlyUrls.dll fonctionne pour les projets de site dans tous les cas.

Au sein de site web code de programme peut être vu sur les segments individuels d'un "URL conviviale" Request.GetFriendlyUrlSegments sur () ou l'accès au modèle de liaison sur l'annotation d'un paramètre avec [FriendlyUrlSegments]. peut assembler les URL que vous (avec FriendlyUrl.Href).

Créer des machines virtuelles avec Vagrant

contenu
  1. Créer des machines virtuelles avec Vagrant
  2. utilisation
  3. Configuration et gestion de cluster
  4. Machines virtuelles assembler et produire des boîtes
  5. Options d'extension et conclusions
  6. lire sur un côté
Créer des machines virtuelles avec Vagrant

Les machines virtuelles ont depuis longtemps trouvé son chemin dans la vie quotidienne des administrateurs. En outre, les développeurs peuvent bénéficier de leur utilisation: Un standardisé et uniforme dans le développement de l'équipe et l'environnement de test est d'or. Vagrant est là pour simplifier la création et la fourniture de machines virtuelles et la vitesse.

Création d'une machine virtuelle (VM) démarre quel que soit le logiciel sélectionné est toujours les mêmes étapes: D'abord, vous spécifiez le matériel sélectionne le nombre de processeurs et détermine la quantité de mémoire et le disque ci-joint. Après cela, installer le système d'exploitation souhaité est.

Le processus nécessite généralement cependant, bien que difficilement intervention de l'utilisateur, prend beaucoup de temps pour terminer: En fonction du système d'exploitation, le positionnement peut facilement prendre entre une demi et deux heures. Ensuite, vous avez un démarrage via le système de base, mais aucun logiciel supplémentaire disponible.

ajouter va relativement vite, en règle générale, parce que les paquets sont plus compacts par rapport au système d'exploitation. Cependant, il est important de prêter attention aux versions et à résoudre de nombreuses dépendances. Cette tâche est fastidieuse et très sujette aux erreurs. En outre, la garantie est absent, que les machines virtuelles de chaque membre de l'équipe sont configurés de façon identique.

tirer les ficelles en arrière-plan

Le projet open source Vagrant veut résoudre les problèmes évoqués de façon élégante. En principe, il concerne avec Vagrant est un outil qui permet de contrôler à distance le logiciel de virtualisation comme VirtualBox ou VMware. Sur le chemin, il vous permet d'automatiser la création de machines virtuelles sous la main un fichier de configuration précédemment générée.

Depuis Vagrant fait également appel à des images préparées des systèmes d'exploitation couramment utilisés, l'installation peut accélérer de façon spectaculaire: au lieu qu'ils effectuent à chaque fois à partir de zéro est simplement télécharger l'image appropriée et une copie.

Pour utiliser l'outil, vous devez d'abord l'installer sur le système local. Correspondant à des paquets binaires pour les plates-formes populaires tels que OS X, Linux et Windows peut être téléchargé à partir du site Web du produit.

Par défaut Vagrant utilise le logiciel VirtualBox, qui est la raison pour laquelle ils doivent installer séparément plus tôt si nécessaire. Il convient de noter que chaque version est compatible avec toutes les variantes Vagrant. Si elles sont incompatibles, mais un avis et une liste des versions prises en charge apparaissent au démarrage.

Les informations individuelles sur une machine virtuelle gérée Vagrant dans un fichier de configuration appelé Vagrantfile, qui doit être écrit en Ruby. Si vous faites appel à Vagrant avec init, il crée un fichier de configuration comme modèle:

$ Vagrant à init

La commande peut appeler en toute sécurité dans un répertoire existant pour équiper un projet rétrospectivement avec le soutien de Vagrant.

Puisque le fichier Vagrantfile contient les paramètres de configuration de cette machine virtuelle, il est logique de les ajouter au contrôle de source: Comment la machine virtuelle restaurer toujours - est néanmoins dans le versioning peu d'espace, car seul le fichier de configuration est de gérer.

Pour eux, cependant, il existe deux formats différents, en fonction de la version de Vagrant: Format 1 a été introduit dans la version 1.0, la taille 2 dans la version 1.1. En principe, tous publiés depuis lors libère les deux formats en charge. Cependant, ce dernier plus n'a pas encore été défini, de sorte qu'il peut être éventuellement incompatibilités entre les différentes versions de Vagrant lors de l'utilisation.

Images du système d'exploitation

Pour créer maintenant la main à partir Vagrantfile une nouvelle machine virtuelle, vous devez d'abord une image du système d'exploitation. Une sélection est disponible par téléchargement direct sur le site de Vagrant disponible, sinon, il site spécialisé Vagrantbox.es considéré comme le premier point de contact.

le paramètre est utilisé pour l'installation locale ajouter une image du système d'exploitation qui attend un identifiant et l'URL de téléchargement. L'identifiant peut être modifié librement. Pour plus de clarté, cependant, il est utile de s'orienter sur le nom de l'image. Ubuntu 12.04.3 LTS "précise Pangolin" feuilles
Par exemple, télécharger et déployer comme suit:

$ Vagrant ajouter precise64 http://files.vagrantup.com/precise64.box

pas vous charger des images du système d'exploitation à partir du site Web officiel Vagrant maintenant, vous devriez toujours vérifier pour voir si chaque source est digne de confiance: Enfin images préconfigurées peuvent en principe contenir des virus ou autres codes malveillants.

Pour utiliser une image, vous devez le déposer dans le fichier Vagrantfile:

Vagrant.configure ("2") Do | config |
config.vm.box = "precise64"
fin

Cette étape toujours avoir à faire à la main serait ennuyeux. Par conséquent Vagrant permet lorsque vous appelez l'option init pour spécifier un nom et de l'image en option, même l'adresse de l'image, l'enregistrement de l'appel manuel d'ajouter:

$ Vagrant precise64 http://files.vagrantup.com/precise64.box initialisation

Il est particulièrement pratique que Vagrant déposé l'adresse de téléchargement dans Vagrantfile dans ce cas, il est donc en mesure de télécharger automatiquement en cas de besoin:

Vagrant.configure ("2") Do | config |
config.vm.box = "precise64"
config.vm.box_url = "http://files.vagrantup.com/precise64.box"
fin

Outil Spring Suite 3.9 fonctionne avec Eclipse Oxygen

Outil Spring Suite 3.9 fonctionne avec Eclipse Oxygene

La collection d'outils de Spring utilise la dernière version d'Eclipse. Il a également d'offrir de nouvelles fonctionnalités lors de l'édition des fichiers manifestes pour Cloud Foundry, et le début du printemps bateau peut être accéléré.

L'équipe Outils de printemps a publié la version 3.9 de la boîte à outils orientée Eclipse. Comme prévu, va de pair avec la nouvelle Suite Outils de printemps pour adapter à la fin de Juin libéré Oxygen version Eclipse. Dans le cas où il y a neuf questions en collaboration avec le personnel disponible pour Eclipse dès la version d'accès Java, les fabricants font référence à un manuel de l'équipe Eclipse pour configurer le système pour la machine virtuelle Java utilisée (Java Virtual Machine) manuellement configurer et à utiliser malgré existant Java-9 version de la machine virtuelle Java Java 8.

Une nouvelle fonctionnalité d'outils Spring Suite est une fonctionnalité qui accélère le démarrage des applications démarrage Spring en ajustant les drapeaux JVM. En plus d'une case à cocher pour activer les paramètres par défaut, la suite offre la possibilité de personnaliser les options de démarrage exactes. L'éditeur connaît également d'autres fonctions lors de l'édition du manifest.yml pour Cloud Foundry, y compris de nouvelles valeurs pour vérification de type santé. Il fournit également la pile lors de l'édition de l'auto-complétion de fichier manifest pour les propriétés, le domaine, les services et construire paquet.

La machine virtuelle peut être adapté afin d'accélérer le début du printemps bateau.La machine virtuelle peut être adapté afin d'accélérer le début du printemps bateau.(Photo: Spring)

D'autres nouvelles fonctionnalités telles que l'amélioration de l'intégration cloud Spring CLI se trouvent dans le blog et l'annonce officielle. L'outil Spring Suite est disponible sur la page Outils de printemps pour Windows, MacOS et Linux disponible en téléchargement. (RME)

compilateur Python de Dropbox: Pyston promet plus de vitesse pour les applications Python

Dropbox rend debout compilateur Python publicité Pyston pour son sous licence Apache Software, par le service de stockage met en jeu ses avantages à attendre en termes de vitesse d'exécution.

Le langage de programmation Python a ses avantages plutôt qu'il est en peu de temps à apprendre et à obtenir rapidement des résultats, mais on ne sait pas pour l'exécution rapide des programmes avec lesquels, par exemple, les langues points C et C ++. Le premier présenté par Dropbox en Avril 2014 projet open source Pyston veut sauter par un JIT (Just In Time) dans la brèche ici. lui a fait le service de stockage de données dont les applications sont clienseitige écrit en Python, maintenant présenté en version 0.2. De la maturité de la production, la mise en œuvre de Python est, mais apparemment encore loin et dans la performance, il est loin d'être la cible.

les développeurs Dropbox sont influencés par le succès que la mise en œuvre JavaScript V8 de Google peut avoir avec la compilation JIT. Pour la compilation JIT Pyston utilise le LLVM d'infrastructure de compilateur. Pyston traduire le code Python dans le format intermédiaire de LLVM que l'unité d'optimisation intégrée traite le code en conséquence et le transfère au moteur JIT, ce qui crée un code machine. Afin de contourner un éventuel conflit par les problèmes d'interprétation LLVM Pyston spécule sur les types probables des variables et des objets qu'il vérifie lors de l'exécution. Selon que la prédiction est vrai ou non, une séquence d'opérations est exécutée, avec moins de temps est nécessaire si elle avait raison.

La nouvelle version peut désormais gérer à titre expérimental avec l'API Python C qui peut communiquer la langue avec le code C et aux développeurs d'accéder à des fonctions qui tirent parti de la puissance de calcul natif de C. Autre désormais pris en charge les fonctionnalités de langage d'implémentation Python sont des exceptions, l'héritage et les métaclasses, les fonctions lambda et les fermetures (états de fonction) et les capacités de multithreading. En outre, plus de bibliothèques standard peuvent être utilisés.

Sur la feuille de route pour les prochaines versions Pyston sont optimisées collecte des ordures, ce qui élimine les fuites de mémoire et la possibilité d'utiliser la mise en œuvre d'un soi-disant remplacement de drop-in pour les moteurs standard de Python.(ANE)

RubyMine 7.1 inclut une nouvelle option refactoring

RubyMine 7.1 est livré avec de nouvelles options de refactoring

L'environnement de développement de JetBrains pour les programmeurs Ruby recevra dans la version mineure actuelle fabriquée à partir d'autres entreprises de services IDEs connus tels que "le mode sans Distraction",

Les développeurs de RubyMine IDE ont apporté la dernière version majeure de jusqu'à à ce jour et la version 7.1 publiée. Surtout certains des outils sont des développeurs Ruby après la mise à jour prêt qui avait récemment trouvé déjà entrée dans d'autres environnements de développement des fournisseurs JetBrains. Donc, les changements lors de l'édition sur une balise HTML et le jour associé, et il est un mode disponible, ce qui est de réduire en cachant les fenêtres environnantes, des onglets et des barres d'outils distraction pendant l'écriture de code.

L'équipe à l'action de refactoring mouvement a travaillé, qui est désormais en mesure de sous-traiter des classes ou des modules dans leurs propres fichiers et se glisse pour créer une hiérarchie de répertoire approprié et insère une require pour le nouveau fichier. Après la mise à jour, le débogueur intégré dans l'IDE avec Ruby 2.2.x devrait également fonctionner.

Quant à l'appui lorsque vous travaillez avec d'autres langues, il y a des améliorations pour les utilisateurs CoffeeScript-, JavaScript et dactylographiés. Alors RubyMine peut maintenant, par exemple, avec l'opérateur? = Traiter de CoffeeScript et ne supprimera pas une ligne masquée Pauses plus lors du formatage du code dans cette langue. En outre, un compilateur de script type est désormais intégré à convertir le code source JavaScript ainsi.(Dec)