Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 16182|Yanıt: 1

[ASP.NET] Temelleniyor. .NET platformu

[Bağlantıyı kopyala]
Yayınlandı 26.08.2016 16:20:18 | | |
Öğrendikten sonra. .NET, zarif programlama stili, son derece basit ölçeklenebilirlik, yeterince güçlü geliştirme araçları ve çok küçük bir öğrenme eğrisi, bu platforma büyük ilgi duymamı sağladı ve ayrıca çalışmalarımda ve çalışmalarımda bazı açık kaynak bileşenler biriktirdim.
Dağıtık önbellek çerçevesi:
Microsoft Velocity: Microsoft'un kendi dağıtık önbellek hizmet çerçevesi.
Memcahed: Şu anda birçok web sitesi tarafından web sitesi erişim hızını artırmak için kullanılan dağıtık bir önbellek sistemi.
Redis: yüksek performanslı bir KV veritabanıdır. Görünüşü, Memcached'in bazı açılardaki eksikliklerini büyük ölçüde telafi ediyor.
EnyimMemcached: Memcached'in en iyi .NET istemcisine iyi dağıtık eşitleme algoritmasına erişim sağlar.
Açık kaynak. .NET Sistem Önerisi:
OXITE: Microsoft ASP.NET MVC dava sunum çerçevesi.
PetShop: Microsoft ASP.NET evcil hayvan mağazası.
Orchard: Yabancı bir MVC açık kaynak blog sistemi.
SSCLI: Microsoft'un NET Framework 2.0 çağındaki açık kaynak kodu.
DasBlog: Yurtdışında asp.net tabanlı bir blog sistemi.
BlogEngine.NET: Yurtdışında ücretsiz ve açık kaynaklı bir blog sistemi.
Dotnetnuke.NET: Çok iyi bir ASP.NET tabanlı açık kaynak portal programları seti.
Discuz.NET: Yerel açık kaynak forum topluluk sistemi.
nopCommerce ve Aspxcommerce: Yurtdışında yüksek kaliteli açık kaynak B2C web sitesi sistemleri seti.
JumboTCMS ve DTCMS: Çin'de iki açık kaynak web sitesi yönetim sistemi:
İstisna yönetiminin kaydı:
Log4Net.dll: Hafif ve ücretsiz ve açık kaynaklı .NET log çerçevesi.
Enterprise Library Log Application Black: Microsoft Enterprise Library Loging.
Elmah: En popüler ASP.NET uygulama istisna kaydetme çerçevesini uygular.
NLog: Log4Net'ten daha yüksek performansa sahip, kullanımı ve bakımı düşük zorluk seviyesine sahip basit ve esnek bir kayıt kütüphanesidir.
NoSQL Veritabanları Hakkında:
Mongodb: Dağıtık dosya depolama veritabanı.
Membase: Ailenin yeni ağır siklet üyesi.
Otomatik görev zamanlama çerçevesi
Quartz.NET: Açık kaynaklı iş planlaması ve otomatik görev çerçevesi.
Topshelf: Windows hizmetleri oluşturmak için başka bir açık kaynak çerçevesi
Bağımlılık enjeksiyonu IOC konteyner çerçevesi:
Unity: Microsoft'un patterns & practicest ekibi tarafından geliştirilen, AOP çapraz endişelerini destekleyen bir IOC bağımlılık enjeksiyon çerçevesi.
MEF (Managed Extensibility Framework): .NET uygulamalarını genişletmek ve eklenti sistemlerinin geliştirilmesini mümkün kılmak için bir çerçevedir.
Spring.NET: Bağımlılık enjeksiyonu, aspekt odaklı programlama (AOP), veri erişimi soyutlama ve ASP.NET entegrasyonu.
Autofac: En popüler bağımlılık enjeksiyonu ve IOC çerçevesi, hafif ve yüksek performanslı, proje koduna neredeyse müdahale etmeyen bir yapı.
PostSharp: Endişelerin statik AOP çapraz kesintisini uygular, kullanımı kolaydır, güçlüdür ve hedef yakalama yönteminde herhangi bir değişiklik gerektirmez.
Ninject: .NET hafif ve açık kaynak temelli bir bağımlılık enjeksiyonu IOC çerçevesi
Yaygın olarak kullanılan birkaç ORM çerçevesi:
EF (ADO.NET Entity Framework): Microsoft tarafından geliştirilen ve ADO.NET temelinde geliştirilen bir ORM çerçevesidir.
Nhibernate: .NET ortamları için hafif bir ORM çerçevesi.
SqlMapper.cs: Küçük projeler için genel bir C# veritabanı erişim sınıfı.
AutoMapper: Sıkı kodlamayı azaltan, kompakt ve esnek, kabul edilebilir performansa sahip popüler bir nesne eşleme çerçevesidir.
SubSonic: İhtiyaçlarınıza uygun bir kod oluşturucu sağlayan mükemmel bir açık kaynaklı ORM haritalama çerçevesi.
FluentData: Açık kaynaklı bir Fluent API tabanlı zincirli sorgu ORM hafif çerçevesi.
Dapper: Hafif, yüksek performanslı, EMIT tarafından oluşturulan ORM çerçevesine dayanıyor.
EmitMapper: Çalışma zamanında EMIT üzerinden dinamik olarak IL kodu üreten, yansıtma mekanizması kullanmayan, yüksek performanslı bir ORM çerçevesidir.
Format ve veri tipi dönüşümü
Newtonsoft.Json: Şu anda .NET geliştirme aşamasında olan en popüler JSON serileştirme kütüphanesi ve WebApi kütüphanesinin yeni sürümünün temelini oluşturuyor.
System.JSON.dll: Microsoft'un kendi JSON serileştirme bileşeni (ayrı olarak indirilmelidir)
DataContractJsonSerializer ve DataContractXmlSerializer: Microsoft tarafından WCF'de kullanılan serileştiriciler.
Javascrip{filter}tSerializer: Microsoft'un WEB developers için varsayılan JSON formatlayıcısı.
iTextSharp, PDFsharp ve PDF.NET: Geçti. PDF belgeleri işlemek ve oluşturmak için .NET ile iletişime geçin.
SharpZipLib.dll: Ücretsiz ve açık kaynaklı ZIP ile GZIP dosya dekompresyon bileşenleri.
Math.NET: Güçlü matematiksel işlemler, kalkülüs, denklemleri çözme ve bilimsel işlemler.
DocX: Word yazılımı kurmaya gerek yok, word dosyalarını C# üzerinden çalıştırma.
SharpSerializer: Açık kaynaklı XML ve, ikili, JSON, sıkıştırma ve optimizasyon çerçevesi.
Yansıtıcı ve dinamik dil
Clay dynamic: Açık kaynaklı dinamik çerçeve, javascrip{filtering}t şeklinde nesneler oluşturmanıza olanak tanır.
ExposedObject: Sınıf dışındaki özel üyelere dinamik bir dil biçimiyle erişin.
PrivateObject: Microsoft birim test çerçevesinde sınıfın özel üyelerini dışarıdan çağırmak için kullanışlı bir sınıftır.
Çapraz platform ve çalışma zamanı çözümleri
MONO.NET: Platformlar arasında. .NET çalışma zamanı ortamı, .NET platformlar arası çalışmayı mümkün kılar.
DotGnu Portable.NET: MONO.NET'a benzer çapraz platform çalışma zamanı.
Phalanger: PHP'den .NET'e derlemek, PHP ve .NET birlikte çalışabilirliğini sağlar.
VMDotNet: China Mobile Feixin tarafından kullanılan .NET çalışma zamanı.
Unity3D: Microsoft'un C# ve Javascrip'in platformlar arası oyun geliştirme çerçevesine güçlü desteği.
Cassini, IIS Express ve Cassinidev: Açık kaynak ASP.NET yürütme ortamları.
Katana: Microsoft'un OWIN spesifikasyonuna dayalı IIS dışı boarding ASP.NET ve MVC'si.
IKVM.NET: Temellenerek. .NET, JAVA'nın .NET üzerinde çalışmasına olanak tanıyan bir JAVA sanal makinesidir.
WEB geliştirme ve tasarım
Jumony Core: .NET tabanlı geliştirilmiş bir HTML motoru.
Microsoft.mshtml.dll, Winista.HtmlParser.dll ve HtmlAgilityPack.dll: HTML belgelerini ayrıştıran ve işleyen çerçeveler.
Javascrip{filtering}t.NET ve Clearscrip{filtering}t (Microsoft tarafından üretilmiştir): Temelli . .NET geliştirdi Javascrip{filter}t engine.
NCrawler: HTML işleme motoru htmlagilitypack için açık kaynaklı bir web tarayıcısı.
AntiXSS: Microsoft'un resmi açık kaynak kütüphanesi, siteler arası XSS script müdahalelerini önlemek için kullanılır; içeriği beyaz liste mekanizmasıyla kodlar.
YUICompressor.NET, Microsoft Ajax Minifier ve Google Closure Derleyici: JavaScrip ve CSS Compressor.
NancyFx: hoş ve hafif açık kaynaklı .NET WEB framework'tür. Hızlı bir şekilde basit bir WEB uygulaması yapmak istiyorsanız.
AspNetPager: Çin'de çok sayıda sayfalama yöntemini destekleyen iyi bilinen bir ASP.NET sayfalama kontrolü.
NOPI.dll: Excel raporlarını dışa aktarmak için eklenti (Microsoft OpenXml uygulamasına dayalı) (css üzerinden nopi.css.dl stilinde)
Enterprise Library: Microsoft'un kurumsal düzeyde uygulama geliştirme için en iyi uygulama bileşeni.
PowerCollections: Yabancı bir harika tarafından yazılmış yüksek seviyeli açık kaynak koleksiyonu.
Mobil İnternet ve bulut bilişim
PushSharp: .NET üzerinden çeşitli mobil platformlara mesajları gönderin.
Android için Mono: Kullan. .NET dil geliştirme Android uygulaması:
MonoTouch: .NET dilinde IOS uygulamaları geliştirin.
PhoneGap ve AppCan: Platformlar arası HTML5 tabanlı mobil geliştirme platformları.
Cordova: PhoneGap'in Apache'ye katkısından sonra açık kaynak bir proje olan bu proje, PhoneGap'i çalıştıran temel motordur.
Ağ iletişimi ve ağ protokolleri
SuperSocket: .NET tabanlı hafif ve ölçeklenebilir bir soket geliştirme çerçevesi.
SuperWebSocket: TML5 WebSocket çerçevesini .NET üzerinden uygular.
XProxy: Dahili NAT, şifreleme ve şifre çözme, tersine, doğrudan ve dolaylı proxy'lere sahip eklentileri destekleyen temel ajan montajı.
Grafik ve görüntü işleme çerçeveleri
Paint.NET: Temellenen. .NET, kompakt, esnek ve güçlü bir grafik işleme açık kaynak projesidir.
Imagemagick.NET: Açık kaynak görüntü işleme bileşeni Imagemagick'in C# dilinde kapsüllenmesi.
Skimpt: .NET tabanlı açık kaynak ekran görüntü yazılımı.
ImageGlue.NET: Ticari görüntü işleme bileşenleri desteklenen geniş bir format listesine sahiptir.
Sprite ve Görüntü Optimizasyon Çerçevesi: Microsoft CSS Wizard, büyük bir görüntü ve CSS stilini birleştiren çoklu görüntü.
Masaüstü uygulama çerçevesi
DevExpress: Masaüstü uygulamaları için dünya çapında tanınan bir arayüz kontrol kütüphanesi.
Prism: Microsoft tarafından WPF ve Silverlight için geliştirilen, karmaşık iş fonksiyonları ile arayüz bağlantısını fonksiyonel modülerlik fikriyle ayıran MVVM çerçevesi.
WPFToolkit ve Fluent Ribbon Control Suite: Ofis tarzı Ribbon menüleri geliştirin.
Test ve performans değerlendirmesi
Faker.Net: Büyük test veri partileri oluşturmak için bir çerçeve.
Nunit: Hafif bir birim test çerçevesi.
MOQ: LINQ'yi, esnek ve yüksek performanslı destekleyecek çok popüler bir Mock framework.
xUnit: Nunit framework'ün yükseltilmiş versiyonu olan NUnit'ten daha iyi bir birim test framework'ü.
MiniProfiler ve Glimpse: İki MVC tabanlı performans olayı izleme çerçevesi.
İşlemsel ve dağıtık işlem desteği
KtmIntegration: NTFS dosya sistemini destekleyen işlemsel açık kaynak sınıfıdır.
NET İşlemsel Dosya Yöneticisi: Dosya sistemi işlemleri için işlem desteği eklendi (kopyalama, taşıma ve silme).
Kelime segmentasyonu, tam metin arama ve arama motoru
Lucene.net: Her türlü bilgi için güçlü arama fonksiyonları sağlayabilen popüler yüksek performanslı tam metin indeks kütüphanesi.
Lucene.Net.Analysis.PanGu: Pangu Çin segmentasyon genişletme kütüphanesinin en son sürümünü Lucene.Net.
Veri doğrulama bileşeni organizasyonu
FluentValidation için . NET: LINQ ifade yöntemi zincirine dayalı akıcı arayüz doğrulama bileşeni.
Microsoft.Practices.EnterpriseLibrary.Validation.dll: Microsoft Kurumsal Kütüphanesi doğrulama programı bloğu.
CuttingEdge.Conditions: Fluent arayüz yöntemine dayalı bir sözleşmeli programlama bileşeni.
DotNetOpenAuth: Web sitelerinin OpenID, OAuth, InfoCard ve daha fazlasıyla kimlik doğrulamayı desteklemesini sağlar.
Açık Kaynak Grafik İstatistikleri Kontrolleri:
Visifire: 3D çizim, eğriler, poliçizgiler, sektörler, halkalar ve trapezoidleri destekleyen çok iyi bir WPF grafik kontrolleri seti.
SparrowToolkit: Dinamik eğriler çizmeyi destekleyen WPF grafik kontrolleri setidir; osiloskoplar, CPU kullanımı ve dalga formları dahildir.
DynamicDataDisplay: Microsoft açık kaynaklı WPF dinamik grafikleri, çizgi grafikleri, baloncuk grafikleri ve ısı haritaları.

Mesaj kuyruğu kategorileri genişletilebilir; örneğin Kafka, dağıtık, yayınlama/abone olma tabanlı bir mesajlaşma sistemidir. Ana tasarım hedefleri şunlardır:
Mesaj kalıcılığı, O(1) zaman karmaşıklığı şeklinde sağlanır ve terabaytların üzerindeki veriler için bile sabit zaman karmaşıklığında erişim performansı garanti edilebilir.
Yüksek veri akımı. Çok ucuz ticari makinelerde bile, tek bir makinede saniyede 100K'dan fazla mesajın iletilmesini destekleyebilir.
Kafka sunucuları arasında mesaj bölümlemesini ve dağıtılmış tüketimi destekler ve her bölümdeki mesajların ardışık iletimini sağlar.
Hem çevrimdışı veri işlemeyi hem de gerçek zamanlı veri işlemeyi destekler.
Ölçeklendirme: Çevrimiçi yatay genişlemeyi destekleyin.
RabbitMQ
RabbitMQ, Erlang dilinde yazılmış ve AMQP, XMPP, SMTP, STOMP gibi birçok protokolü destekleyen açık kaynaklı bir mesaj kuyrucudur; bu nedenle çok ağır ve kurumsal düzeyde geliştirme için daha uygundur. Aynı zamanda, aracı mimarisi uygulanır; bu da mesajların istemciye gönderildiğinde önce merkezi kuyruğun içine alındığı anlamına gelir. Yönlendirme, yük dengeleme veya veri kalıcılığı için iyi bir destek var.
Redis
Redis, Anahtar-Değer çiftlerine dayalı bir NoSQL veritabanıdır ve aktif olarak geliştirilip bakımı yapılmaktadır. Anahtar-değer veritabanı depolama sistemi olmasına rağmen, MQ işlevselliğini kendisi desteklediği için hafif bir kuyruk servisi olarak kullanılabilir. RabbitMQ ve Redis'in işe alım ve çıkış operasyonları için her biri 1 milyon kez ve uygulama süresi her 100.000 kez kaydedilir. Test verileri dört farklı boyuta ayrılmıştır: 128 Bayt, 512 Bayt, 1K ve 10K. Deneysel tablo: Ekibe katıldığında, veri karşılaştırması küçük olduğunda Redis'in performansı RabbitMQ'dan daha yüksektir ve veri boyutu 10K'yı azarsa, Redis dayanılmaz derecede yavaştır. Takımdan ayrıldığında, Redis verilerin büyüklüğüne bakılmaksızın çok iyi performans sergilerken, RabbitMQ'nun performansı Redis'ten çok daha düşüktü.
ZeroMQ
ZeroMQ, özellikle yüksek verimli talep senaryoları için en hızlı mesaj kuyrtma sistemi olduğunu iddia ediyor. ZeroMQ, RabbitMQ'nun iyi olmadığı gelişmiş/karmaşık kuyrukları uygulayabilir, ancak geliştiricilerin birden fazla teknik çerçeveyi tek başına birleştirmesi gerekir ve teknik karmaşıklık, bu MQ'nun başarılı uygulanması için bir zorluktur. ZeroMQ'nun benzersiz bir ara yazılım dışı modu var; burada mesaj sunucusu veya ara yazılım kurup çalıştırmanıza gerek yok, çünkü uygulamanız bu sunucu rolünü üstlenecek. Tek yapmanız gereken ZeroMQ kütüphanesine başvurmak, NuGet ile kurulabilir ve uygulamalar arasında mesajları memnuniyetle gönderebilirsiniz. Ancak ZeroMQ yalnızca kalıcı olmayan kuyruklar sağlar, bu da devre kesilirse verilerin kaybolacağı anlamına gelir. Bunlar arasında, Twitter'ın 0.9.0 öncesi Storm sürümü, varsayılan olarak veri akışlarının iletimi olarak ZeroMQ kullanıyor (Storm, 0.9 sürümünden itibaren hem ZeroMQ hem de Netty'yi iletim modülü olarak destekliyor).
ActiveMQ
ActiveMQ, Apache bünyesinde bir alt projedir. ZeroMQ'ya benzer şekilde, ajan ve eşler arası teknolojilerle kuyrukları etkinleştiriyor. Aynı zamanda, RabbitMQ gibi, az miktarda kodla gelişmiş uygulama senaryolarını verimli şekilde uygulayabilir.
Kafka/Jafka
Kafka, diller arasında yüksek performanslı dağıtık yayın/abone mesaj kuyruklama sistemi olan Apache'nin bir alt projesidir ve Jafka, Kafka'nın geliştirilmiş bir versiyonu olan Kafka'nın üzerinde kuluçka aşamasında yer alır. Aşağıdaki özelliklere sahiptir: O(1) sistem yükü altında mesajları sürebilen hızlı süreklilik; Yüksek veri kapasitesi, sıradan bir sunucuda 10W/s hızına ulaşabilen; Tamamen dağıtık sistem, Broker, Üretici ve Tüketici tamamen dağıtık ve otomatik olarak yük dengelemesini destekler; Hadoop verilerinin paralel yüklenmesini destekler; bu, günlük verileri ve Hadoop gibi çevrimdışı analiz sistemleri için geçerli bir çözümdür, ancak gerçek zamanlı işleme sınırlamaları vardır. Kafka, Hadoop'un paralel yükleme mekanizması aracılığıyla çevrimiçi ve çevrimdışı mesaj işlemeyi birleştirir. Apache Kafka, ActiveMQ'ya kıyasla çok hafif bir mesajlaşma sistemidir ve çok iyi performansının yanı sıra iyi çalışan dağıtık bir sistemdir.




Önceki:.net ToString() formatlama
Önümüzdeki:C#/.NET IP Port Tarayıcı [Kaynak Kodu]
Yayınlandı 26.08.2016 16:22:42 |
Evet, birkaç çerçeve kullandım ve henüz görmedim
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com