Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 16182|Risposta: 1

[ASP.NET] Basato su. piattaforma .NET

[Copiato link]
Pubblicato su 26/08/2016 16:20:18 | | |
Da quando ho imparato. .NET, stile di programmazione elegante, scalabilità estremamente semplice, strumenti di sviluppo abbastanza potenti e una curva di apprendimento molto ridotta, mi hanno fatto provare un forte interesse per questa piattaforma, e ho anche accumulato alcuni componenti open source nel mio lavoro e nel mio studio.
Framework di cache distribuito:
Microsoft Velocity: Il framework di servizi di cache distribuiti di Microsoft.
Memcahed: Un sistema di cache distribuito attualmente utilizzato da molti siti web per migliorare la velocità di accesso ai sitis.
Redis: è un database KV ad alte prestazioni. La sua apparizione compensa in gran parte le carenze di Memcached sotto alcuni aspetti.
EnyimMemcached: Accedi al miglior client .NET di Memcached con un buon algoritmo di equalizzazione distribuita.
Open source. Raccomandazione sul sistema .NET:
OXITE: Microsoft ASP.NET framework di presentazione dei casi MVC.
PetShop: Microsoft ASP.NET negozio di animali.
Orchard: Un sistema di blog open source estero MVC.
SSCLI: Il codice open source di Microsoft nell'era del NET Framework 2.0.
DasBlog: Un sistema di blogging basato su ASP.NET all'estero.
BlogEngine.NET: Un sistema di blogging libero e open source all'estero.
Dotnetnuke.NET: Un ottimo insieme di programmi open source basati su ASP.NET.
Discuz.NET: Sistema comunitario di forum open source domestico.
nopCommerce e Aspxcommerce: Un insieme di sistemi web B2C open source di alta qualità all'estero.
JumboTCMS e DTCMS: Due sistemi open source di gestione di siti web in Cina:
Gestione delle eccezioni per la registrazione:
Log4Net.dll: Un framework di logging .NET leggero, gratuito e open-source.
Applicazione di log delle librerie aziendali Black: Registrazione delle biblioteche Microsoft Enterprise.
Elmah: Implementa il framework di registrazione eccezioni ASP.NET applicazioni più popolare.
NLog: è una libreria di logging semplice e flessibile con prestazioni superiori a Log4Net e bassa difficoltà di utilizzo e manutenzione.
Informazioni sui database NoSQL:
Mongodb: Database di archiviazione file distribuita.
Membase: Un nuovo membro di peso della famiglia.
Framework automatizzato per la pianificazione delle attività
Quartz.NET: Pianificazione open source dei lavori e framework automatizzato per le attività.
Topshelf: Un altro framework open source per la creazione di servizi Windows
Framework container IOC per l'iniezione di dipendenze:
Unity: Un framework di IOC addiction injection sviluppato dal team di Microsoft Patterns & Praticest che supporta le problematiche trasversali AOP.
MEF (Managed Extensibility Framework): è un framework per l'estensione delle applicazioni .NET e per consentire lo sviluppo di sistemi plug-in.
Spring.NET: Iniezione di dipendenze, programmazione orientata agli aspetti (AOP), astrazione dell'accesso ai dati e integrazione ASP.NET.
Autofac: Il framework di iniezione di dipendenza e IOC più popolare, leggero e ad alte prestazioni, praticamente non invasivo per il codice di progetto.
PostSharp: Implementa il cross-cutting AOP statico delle preoccupazioni, è semplice da usare, potente e non richiede modifiche al metodo di intercettazione del bersaglio.
Ninject: Un framework IOC per l'iniezione di dipendenza basato su .NET leggero e open source
Diversi framework ORM comunemente usati:
EF (ADO.NET Entity Framework): Un framework ORM sviluppato da Microsoft basato su ADO.NET.
Nhibernate: Un framework ORM leggero per ambienti .NET.
SqlMapper.cs: Una classe generica di accesso a database C# per piccoli progetti.
AutoMapper: Un popolare framework di mappatura degli oggetti che riduce molto il hardcoding, è compatto e flessibile, e offre prestazioni accettabili.
SubSonic: Un eccellente framework open-source per la mappatura ORM che fornisce un generatore di codice adatto alle tue esigenze.
FluentData: Un framework ORM ORM a query catenata open-source basato su API Fluent.
Dapper: Leggero, ad alte prestazioni, basato su framework ORM generato da EMIT.
EmitMapper: Un framework ORM ad alte prestazioni che genera dinamicamente codice IL tramite EMIT a runtime, invece di utilizzare un meccanismo di riflessione.
Conversione di formato e tipo di dati
Newtonsoft.Json: La libreria di serializzazione JSON più popolare attualmente in sviluppo di .NET, che fornisce la base per la nuova versione della libreria WebAPI.
System.JSON.dll: il componente di serializzazione JSON di Microsoft (deve essere scaricato separatamente)
DataContractJsonSerializer e DataContractXmlSerializer: Serializer usati da Microsoft in WCF.
Javascrip{filter}tSerializer: il formateatore JSON predefinito di Microsoft per sviluppatori WEB.
iTextSharp, PDFsharp e PDF.NET: Through. .NET per elaborare e generare documenti PDF.
SharpZipLib.dll: Componenti di decompressione ZIP e GZIP liberi e open source.
Math.NET: Operazioni matematiche forti, calcolo, risoluzione di equazioni e operazioni scientifiche.
DocX: Non serve installare software Word, gestire i file Word tramite C#.
SharpSerializer: framework open source per XML e binario, JSON, compressione e ottimizzazione.
Linguaggio riflessivo e dinamico
Clay dynamic: Il framework dinamico open-source permette di creare oggetti sotto forma di javascrip{filtering}t.
ExposedObject: Accedi ai membri privati al di fuori della classe in modo linguistico dinamico.
PrivateObject: Una classe nel framework di test unitario Microsoft che è comoda per chiamare membri privati della classe esternamente.
Soluzioni multipiattaforma e runtime
MONO.NET: Multipiattaforma. .NET, rendendo possibile l'operazione multipiattaforma di .NET.
DotGnu Portable.NET: runtime cross-platform simile a MONO.NET.
Phalanger: Compilare PHP in .NET consente l'interoperabilità tra PHP e .NET.
VMDotNet: il runtime .NET usato da China Mobile Feixin.
Unity3D: Il forte supporto di Microsoft per C# e il framework di sviluppo di giochi cross-platform di Javascrip.
Cassini, IIS Express e Cassinidev: ambienti open source ASP.NET di esecuzione.
Katana: il ASP.NET di imbarco non-IIS di Microsoft e MVC basato sulla specifica OWIN.
IKVM.NET: Basato su. .NET è una macchina virtuale JAVA che permette di eseguire JAVA sopra .NET.
Sviluppo e design WEB
Jumony Core: Un motore HTML sviluppato basato su .NET.
Microsoft.mshtml.dll, Winista.HtmlParser.dll e HtmlAgilityPack.dll: Framework che analizzano e elaborano documenti HTML.
Javascrip{filtering}t.NET e Clearscrip{filtering}t (prodotti da Microsoft): Basati su . .NET ha sviluppato il motore Javascrip{filter}t.
NCrawler: Un crawler web open-source per il suo motore di elaborazione HTML, htmlagilitypack.
AntiXSS: La libreria open-source ufficiale di Microsoft per prevenire attacchi di intrusione di script XSS cross-site, che codifica i contenuti tramite un meccanismo di whitelist.
YUICompressor.NET, Microsoft Ajax Minifier e Google Closure Compiler: JavaScrip e CSS Compressor.
NancyFx: è un bel framework open source e leggero .NET WEB. Se vuoi creare rapidamente una semplice applicazione WEB.
AspNetPager: Un noto controllo di paginazione ASP.NET in Cina, che supporta metodi di paging multipli.
NOPI.dll: Plugin per l'esportazione di report Excel (basato sull'implementazione Microsoft OpenXml) (nopi.css.dl in stile CSS)
Enterprise Library: Il componente delle migliori pratiche di Microsoft per lo sviluppo di applicazioni di livello enterprise.
PowerCollections: Una raccolta open source di alto livello scritta da un fantastico straniero.
Internet mobile e cloud computing
PushSharp: Invia messaggi push a varie piattaforme mobili tramite .NET.
Mono per Android: Utilizza. Sviluppo del linguaggio .NET applicazione Android:
MonoTouch: Sviluppare applicazioni IOS in linguaggio .NET.
PhoneGap e AppCan: piattaforme di sviluppo mobile multipiattaforma basate su HTML5.
Cordova: Un progetto open source dopo che PhoneGap ha contribuito ad Apache, è il motore centrale che guida PhoneGap.
Comunicazione di rete e protocolli di rete
SuperSocket: Un framework di sviluppo socket leggero e scalabile basato su .NET.
SuperWebSocket: Implementa il framework TML5 WebSocket tramite .NET.
XProxy: L'assembly base degli agenti che supporta plugin, con NAT integrati, crittografia e decrittazione, reverse e proxy diretti e indiretti.
Framework grafici e di elaborazione immagini
Paint.NET: Basato su. .NET è un progetto open source di elaborazione grafica compatto, flessibile e potente.
Imagemagick.NET: Incapsulamento del componente open-source di elaborazione immagini Imagemagick in C#.
Skimpt: software open source per screenshot basato su .NET.
ImageGlue.NET: I componenti commerciali di elaborazione delle immagini dispongono di un ampio elenco di formati supportati.
Sprite and Image Optimization Framework: Microsoft CSS Wizard, multi-immagine che combina una grande immagine e uno stile CSS.
Framework applicativo desktop
DevExpress: Una libreria di rinomata mondiale di controlli UI per applicazioni desktop.
Prism: Il framework MVVM sviluppato da Microsoft per WPF e Silverlight, che separa funzioni aziendali complesse e accoppiamento UI attraverso l'idea di modularità funzionale.
WPFToolkit e Fluent Ribbon Control Suite: Sviluppa menu a nastro in stile Office.
Test e valutazione delle prestazioni
Faker.Net: Un framework per generare grandi quantità di dati di test.
Nunit: Un framework leggero per il test unitario.
Moq: Un framework Mock molto popolare che supporta LINQ, flessibile e ad alte prestazioni.
xUnit: Un framework di test unitario migliore rispetto a NUnit, una versione aggiornata del framework Nunit.
MiniProfiler e Glimpse: Due framework di monitoraggio degli eventi delle prestazioni basati su MVC.
Supporto transazionale e distribuito
KtmIntegration: Una classe open-source transazionale che supporta il file system NTFS.
NET Transactional File Manager: Aggiunta la compatibilità transazionale per le operazioni del file system (copia, sposta ed elimina).
Segmentazione delle parole, ricerca a testo completo e motori di ricerca
Lucene.net: Una popolare libreria di indici a testo completo ad alte prestazioni che può essere utilizzata per fornire potenti funzioni di ricerca per ogni tipo di informazione.
Lucene.Net.Analysis.PanGu: Supporta l'ultima versione della libreria di estensione di segmentazione cinese Pangu Lucene.Net.
Organizzazione dei componenti di validazione dei dati
FluentValidation per . NET: componente di verifica fluente dell'interfaccia basato sulla catena di metodi di espressione LINQ.
Microsoft.Practices.EnterpriseLibrary.Validation.dll: Il blocco del programma di validazione Microsoft Enterprise Library.
CuttingEdge.Conditions: Un componente di programmazione a contratto basato sul metodo dell'interfaccia Fluent.
DotNetOpenAuth: Permette ai siti web di supportare l'autenticazione con OpenID, OAuth, InfoCard e altro.
Controlli delle statistiche delle tabelle open source:
Visifire: Un ottimo set di controlli grafici WPF che supportano disegno 3D, curve, polilinee, settori, anelli e trapezi.
SparrowToolkit: Un insieme di controlli grafici WPF che supportano il disegno di curve dinamiche, inclusi oscilloscopi, utilizzo della CPU e forme d'onda.
DynamicDataDisplay: grafici dinamici WPF open source Microsoft, grafici a linee, grafici a bolle e heat map.

Le categorie di code di messaggi possono essere estese, come Kafka, che è un sistema di messaggistica distribuito basato su pubblicazione/iscrizione. Gli obiettivi principali di progettazione sono i seguenti:
La persistenza dei messaggi è fornita sotto forma di complessità temporale O(1), e le prestazioni di accesso a complessità costante possono essere garantite anche per dati superiori ai terabyte.
Alta produttività. Anche su macchine commerciali molto economiche, può supportare la trasmissione di più di 100K messaggi al secondo su una singola macchina.
Supporta la partizionazione dei messaggi e il consumo distribuito tra server Kafka, e garantisce la trasmissione sequenziale dei messaggi in ogni partizione.
Supporta sia l'elaborazione offline dei dati che l'elaborazione dei dati in tempo reale.
Scala in più: Supporta l'espansione orizzontale online.
RabbitMQ
RabbitMQ è una coda di messaggi open-source scritta in Erlang che supporta molti protocolli: AMQP, XMPP, SMTP, STOMP, motivo per cui è molto pesante e più adatta allo sviluppo a livello enterprise. Allo stesso tempo, viene implementata l'architettura del broker, il che significa che i messaggi vengono messi in coda nella coda centrale prima quando inviati al client. C'è un buon supporto per il routing, il bilanciamento del carico o la persistenza dei dati.
Redis
Redis è un database NoSQL basato su coppie chiave-valore, ed è attivamente sviluppato e mantenuto. Sebbene sia un sistema di archiviazione di database a chiave a valore, supporta la funzionalità MQ stessa, quindi può essere utilizzato come un servizio di coda leggero. Per le operazioni di onboarding e out-queue di RabbitMQ e Redis, 1 milione di volte ciascuno, e il tempo di esecuzione viene registrato ogni 100.000 volte. I dati di test sono suddivisi in quattro diverse dimensioni: 128Byte, 512Byte, 1K e 10K. Tabella sperimentale: Quando si entra nel team, le prestazioni di Redis sono superiori a quelle di RabbitMQ quando il confronto dei dati è piccolo e, se la dimensione dei dati supera i 10K, Redis è insopportabilmente lento. Quando usciva dal team, Redis mostrava ottime prestazioni indipendentemente dalla dimensione dei dati, mentre quelle di RabbitMQ erano molto inferiori a quelle di Redis.
ZeroMQ
ZeroMQ afferma di essere il sistema di coda messaggi più veloce, soprattutto per scenari di domanda ad alto throughput. ZeroMQ può implementare code avanzate/complesse in cui RabbitMQ non è bravo, ma gli sviluppatori devono combinare da soli più framework tecnici, e la complessità tecnica rappresenta una sfida per l'applicazione efficace di questo MQ. ZeroMQ ha una modalità unica non middleware in cui non è necessario installare e eseguire un server di messaggi o middleware perché la tua applicazione svolgerà questo ruolo di server. Tutto ciò che devi fare è semplicemente fare riferimento alla libreria ZeroMQ, che può essere installata tramite NuGet, e puoi volentieri inviare messaggi tra le applicazioni. Tuttavia, ZeroMQ fornisce solo code non persistenti, il che significa che se si interrompe, i dati verranno persi. Tra questi, la versione Storm di Twitter prima della 0.9.0 utilizza ZeroMQ come trasmissione di dati di default (Storm supporta sia ZeroMQ che Netty come modulo di trasmissione dalla versione 0.9).
ActiveMQ
ActiveMQ è un sottoprogetto sotto Apache. Simile a ZeroMQ, consente code con tecnologia agente e peer-to-peer. Allo stesso tempo, in modo simile a RabbitMQ, può implementare in modo efficiente scenari applicativi avanzati con una piccola quantità di codice.
Kafka/Jafka
Kafka è un sottoprogetto di Apache, un sistema distribuito ad alte prestazioni di coda di messaggi pubblicazione/iscrizione tra lingue, e Jafka è incubato sopra Kafka, che è una versione aggiornata di Kafka. Ha le seguenti caratteristiche: persistenza veloce, che può persistere i messaggi sotto il sovraccarico di sistema di O(1); Alta produttività, che può raggiungere una velocità di 10W/s su un server normale; Sistema completamente distribuito, Broker, Produttore e Consumatore supportano nativamente distribuito e realizzano automaticamente il bilanciamento del carico; Supporta il caricamento parallelo dei dati Hadoop, che è una soluzione valida per i dati di log e sistemi di analisi offline come Hadoop, ma con le limitazioni dell'elaborazione in tempo reale. Kafka unifica l'elaborazione dei messaggi online e offline tramite il meccanismo di caricamento parallelo di Hadoop. Apache Kafka è un sistema di messaggistica molto leggero rispetto ad ActiveMQ e, oltre a ottime prestazioni, è anche un sistema distribuito che funziona bene.




Precedente:Formattazione .net ToString()
Prossimo:C#/.NET IP Port Scanner [Codice sorgente]
Pubblicato su 26/08/2016 16:22:42 |
Sì, ne ho usati alcuni, alcune cornici, e non le ho ancora viste
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com