<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>rest &#8211; The Server Side Technology</title>
	<atom:link href="https://www.theserverside.technology/it/tag/rest/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.theserverside.technology/it</link>
	<description>in-depth information for tech pros</description>
	<lastBuildDate>Sat, 14 Dec 2019 14:36:51 +0000</lastBuildDate>
	<language>it-IT</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.0.1</generator>
	<item>
		<title>Il framework per lo sviluppo: .NET Core</title>
		<link>https://www.theserverside.technology/it/2019/12/14/il-framework-per-lo-sviluppo-net-core/?pk_campaign=feed&#038;pk_kwd=il-framework-per-lo-sviluppo-net-core</link>
					<comments>https://www.theserverside.technology/it/2019/12/14/il-framework-per-lo-sviluppo-net-core/?pk_campaign=feed&#038;pk_kwd=il-framework-per-lo-sviluppo-net-core#respond</comments>
		
		<dc:creator><![CDATA[Guglielmo Mengora]]></dc:creator>
		<pubDate>Sat, 14 Dec 2019 14:30:50 +0000</pubDate>
				<category><![CDATA[Skynet blog]]></category>
		<category><![CDATA[.net core]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[frontend]]></category>
		<category><![CDATA[grpc]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[powershell]]></category>
		<category><![CDATA[powershell core]]></category>
		<category><![CDATA[rest]]></category>
		<category><![CDATA[skynet]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[windows server]]></category>
		<guid isPermaLink="false">https://www.theserverside.technology/?p=1492</guid>

					<description><![CDATA[<div style="margin: 5px 5% 10px 5%;"><img src="https://www.theserverside.technology/wp-content/uploads/2019/12/backend_1920-300x169.jpg" width="300" height="169" title="" alt="" /></div><div>
<p>La prima scelta che è stato necessario prendere mentre progettavamo il design di Skynet era ovviamente il framework o i framework da usare per lo sviluppo. Le soluzioni sono moltissime e sicuramente ognuno ha delle ragioni specifiche per pensare a questa o quella soluzione in modo da semplificare il lavoro ed ottenere magari una piattaforma aperta che possa includere altre tecnologie o soluzioni. Un esempio tipico è quello di partire da un progetto opensource o magari disegnare un frontend basato su WordPress e sviluppare estensioni e moduli per integrare le funzionalità che servono. Con tutte le tecnologie che esistono, non c&#8217;è un modo giusto o sbagliato ma semplicemente una preferenza in base ad alcune valutazioni che si fanno internamente e che dipendono anche dall&#8217;esperienza che il team ha acquisito nonché dall&#8217;integrazione che è possibile o meno con altre tecnologie che magari sono già presenti in azienda e che si vogliono riutilizzare o estendere.</p>



I requisiti di Skynet



<p>Come sempre, si parte da quelli che sono i requisiti del progetto. Il design di Skynet deve avere alcune caratteristiche che derivano dalla nostra esperienza nell&#8217;uso di decine o anche centinaia di tecnologie tra orchestration, pannelli di controllo, sistemi di gestione e così via.</p>



Multipiattaforma 



<p>La tecnologia di cui avevamo bisogno doveva essere multipiattaforma in modo da consentire la gestione e soprattutto l&#8217;automazione dei sistemi più diffusi e quindi Windows e Linux. L&#8217;uso di un framework multipiattaforma doveva consentire anche il riutilizzo massiccio del codice che prevedevamo di scrivere per le decine di componenti che comporranno Skynet. </p>



<p>C&#8217;è inoltre da fare una ulteriore divisione all&#8217;interno del codice, prevedendo codice applicativo, che sarà indirizzato alle componenti principali, e un layer di interazione con i sistemi da gestire con i quali non sempre la scelta migliore è quella di usare un software ma spesso è più pratico affidarsi alle tecnologie di scripting. Inoltre, un layer di scripting consente &#8211; se messo in sicurezza &#8211; di prevedere anche un modo veloce per far evolvere singole funzionalità senza costringere al deployment dell&#8217;intero software.</p>



Prevalentemente asincrono e durevole



<p>Un sistema di gestione e di orchestrazione come quello che stiamo progettando deve necessariamente prevedere la possibilità di comunicare con diversi moduli che possano trovarsi non solo su sistemi diversi ma addirittura in datacenter diversi e distribuiti geograficamente e persino interagire con sistemi esterni alla nostra infrastruttura. Per la loro stessa natura queste interazioni non possono essere considerate come affidabili o parte di una rete costantemente connessa ma si deve dare per scontato che che questi sistemi possano essere saltuariamente disconnessi, ad esempio a causa di un temporaneo errore di rete, o incapaci di completare le azioni richieste al primo tentativo magari per un sovraccarico dei sistemi coinvolti o un altro problema saltuario.</p>



<p>Per questa ragione il framework che è stato scelto deve avere una forte impronta asincrona e non può essere basato su workflow che si aspettano di completare le operazioni in pochi secondi e senza una logica di retry/fail. Questo significa anche che i workflow che vengono eseguiti devono poter gestire questi possibili errori [...]</div><img src="https://stats1.vaisulweb.cloud/piwik.php?idsite=1&amp;rec=1&amp;url=https%3A%2F%2Fwww.theserverside.technology%2Fit%2F2019%2F12%2F14%2Fil-framework-per-lo-sviluppo-net-core%2F%3Fpk_campaign%3Dfeed%26pk_kwd%3Dil-framework-per-lo-sviluppo-net-core&amp;action_name=Il+framework+per+lo+sviluppo%3A+.NET+Core&amp;urlref=https%3A%2F%2Fwww.theserverside.technology%2Fit%2Ffeed%2F" style="border:0;width:0;height:0" width="0" height="0" alt="" />]]></description>
		
					<wfw:commentRss>https://www.theserverside.technology/it/2019/12/14/il-framework-per-lo-sviluppo-net-core/?pk_campaign=feed&#038;pk_kwd=il-framework-per-lo-sviluppo-net-core/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<enclosure url="https://www.theserverside.technology/wp-content/uploads/2019/12/backend_1920.jpg" length="356511" type="image/jpg" />
<media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://www.theserverside.technology/wp-content/uploads/2019/12/backend_1920-300x169.jpg" width="300" height="169" medium="image" type="image/jpeg">
	<media:copyright>The Server Side Technology</media:copyright>
	<media:title></media:title>
	<media:description type="html"><![CDATA[]]></media:description>
</media:content>
<media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://www.theserverside.technology/wp-content/uploads/2019/12/backend_1920-300x169.jpg" width="300" height="169" />
	</item>
	</channel>
</rss>
