Microsofts PowerShell ist jetzt OpenSource und für Linux und OS X verfügbar

Die auf dem .NET-Framework basierende PowerShell wurde jetzt von Microsoft als OpenSource-Projekt freigegeben. Das GitHub Repository ist hier zu finden: https://github.com/PowerShell/PowerShell

Darüber hinaus steht die PowerShell jetzt plattformübergreifend für OS X und Linux zur Verfügung. Die Downloads für die unterschiedlichen Plattformen sind über das GitHub-Repository erhältlich.

Die PowerShell verbindet die aus Unix-Shells bekannte Philosophie von Pipes und Filtern mit dem Paradigma der objektorientierten Programmierung. Der Benutzer kann wie bisher einfache Befehle an einer Kommandozeile ausführen und miteinander verknüpfen oder aber auch komplexe Skript-Programme mit der eigens dafür entwickelten PowerShell Scripting Language schreiben. Interessant sind hier vor allem die sogenannten Cmdlets. Cmdlets sind in einer .NET Sprache verfasste Erweiterungen für die PowerShell, die sich direkt wie Befehle aufrufen lassen.

Weitere Informationen:

https://azure.microsoft.com/en-us/blog/powershell-is-open-sourced-and-is-available-on-linux/

https://blogs.msdn.microsoft.com/powershell/2016/08/18/powershell-on-linux-and-open-source-2/

0  

C#: Exception Handling bei asynchronen Methoden (async/await)

Bei der Verwendung von async/await können Methoden drei unterschiedliche Rückgabetypen besitzen: Task, Task<T> oder void. In den Best Practices wird jetzt immer geschrieben: „Vermeide den Rückgabetyp void und gib immer ein Task-Objekt zurück!“ Doch warum ist das so? Das soll jetzt im nachfolgenden Artikel etwas genauer erläutert werden.

Read more »

0  

.NET Framework 4.6.2 erschienen

Das .NET Framework ist in der Version 4.6.2 erschienen. Es gibt Neuerungen in den folgenden Bereichen:

Hier mal ein paar neue Features:

  • Long Path Support (es werden jetzt Pfade mit mehr als 260 Zeichen in der System.IO API unterstützt)
  • TLS 1.1/1.2 support für das ClickOnce-Deployment
  • Support für zusätzliche Kryptografie-Standards
  • Group Sorting für WPF
  • Soft keyboard und Per-Monitor DPI Unterstützung für WPF

Die vollständige Liste mit vorgenommen Änderungen ist hier zu finden: https://github.com/Microsoft/dotnet/blob/master/releases/net462/dotnet462-changes.md

Downloads

Der vollständige News-Beitrag ist hier zu finden: https://blogs.msdn.microsoft.com/dotnet/2016/08/02/announcing-net-framework-4-6-2/

0  

C#: BlockingCollection<T> am Beispiel MetroFtpClient

Innerhalb des MetroFtpClients (https://github.com/steve600/MetroFtpClient) gibt es eine Warteschlange um die auszuführenden Up- und Downloads zu verwalten. Bei der Abarbeitung der Warteschlange wünscht man sich nun oft einen gewissen Grad an Parallelität um die Performance zu steigern (z.B. mehrere simultane Downloads). Mit .NET 4.0 hat Microsoft einen großen Schritt in diese Richtung getan und den Entwicklern durch die sogenannten ConcurrentCollections (Quelle [1]) viel Arbeit abgenommen. In diesem Beitrag wird auf Basis des MetroFtpClients gezeigt wie man eine solche ConcurrentCollection einsetzen kann um mehrere simultane Downloads zu realisieren.

Read more »

0  

OpenSource: Vorstellung MetroFtpClient

In diesem Beitrag möchte ich mal ein kleines Tool für FTP-Zugriffe vorstellen. Als Ausgangsbasis für den MetroFtpClient (https://github.com/steve600/MetroFtpClient) diente das PrismMahAppsSample (https://github.com/steve600/PrismMahAppsSample) und die Standard .NET-Klassen FtpWebRequest/FtpWebRespsonse. Auch für dieses Projekt wurden wieder einige OpenSource-Projekte verwendet. Hier mal eine Übersicht:

Hier schon einmal ein erster Screenshot:

MetroFtpClient Verbindungsansicht

MetroFtpClient


Read more »

0  

Visual Studio 2015: Mole Visual Studio Debugger/Visualizer

Mole ist ein alternativer Visualisierer für Visual Studio zum detaillierten Inspizieren von .NET-Anwendungen. Während einer Debugging-Session erlauben Visualisierer das Betrachten von UI- und Datenobjekten. Somit kann man sich z.B. den VisualTree einer WPF-Awendung direkt im Debugger anschauen, ohne auf zusätzliche Tools zurückgreifen zu müssen. Darüber hinaus unterstützt Mole das Suchen und Editieren von Eigenschaften und Feldern. Hier mal ein Screenshot:

Mole Visual Studio Debugger

Mole Visual Studio Debugger

Features:

  • Anzeige des Elementbaums für WPF- und WinForms-Anwendungen
  • Anzeige eines Bildes des selektierten Elements
  • Möglichkeit zum Editieren einzelner Eigenschaften
  • Analyse von WPF-Databindings
  • Export-Funktionalität

Mole unterstützt Visual Studio 2015 in der Professional oder Enterprise Version. Weitere Informationen zur Historie und Tutorials sind hier zu finden:

GitHub: https://github.com/Oceanware/Mole2015
Website: https://oceanware.wordpress.com/mole-visual-studio-debugger-visualizer/

0  

Tipps: Nützliche Community-Projekte aus dem .NET-Umfeld

In diesem Beitrag möchte ich mal einige Community-Projekte vorstellen. Gerade in den letzten Jahren ist die Open Source Community rasant gewachsen. Das zeigt sich auch schon an den diversen Plattformen: Angefangen beim Klassiker SourceForge über CodePlex von Microsoft bis hin zu GitHub. Auf jeder einzelnen Plattform sind tausende Projekte gehostet und da kann eine Suche schon recht schwierig werden. Ich möchte hier jetzt mal einen kleinen Überblick über Projekte aus dem .NET-Umfeld geben (diese Liste hat keinen Anspruch auf Vollständigkeit und wird kontinuierlich aktualisiert).

Read more »

0  

NDepend: Abfragen und Code-Regeln mit CQLinq

Im ersten Beitrag NDepend: Tool zur statischen Code-Analyse wurden einige Grundlagen des Tools NDepend beschrieben. NDepend ist ein Tool zur statischen Code-Analyse. Dabei analysiert NDepend den Quellcode auf Basis verschiedener Abfragen (z.B. Lines of Code (LOC) oder die Anzahl von Methoden innerhalb einer Klasse) und Code-Regeln. Mit Hilfe von Code-Regeln lassen sich definierte Eigenschaften von Quelltext (und deren Einhaltung) überprüfen. Abfragen und Code-Regeln werden in einer NDepend spezifischen Sprache namens CQLinq definiert. Wie der Name bereits vermuten lässt basiert das Ganze auf LINQ, was die Einarbeitung erheblich vereinfacht. Das Erstellen und Editieren eigener Code-Regeln und die Anpassung der ebenfalls in CQLinq implementierten, mitgelieferten Regeln bringt eine hohe Flexibilität. Wie man eigene Abfragen und Code-Regeln erstellen kann wird jetzt in diesem Beitrag erklärt.

Read more »

0  

Visual Studio 2015: Productivity Power Tools 2015

Bei den Productivity Power Tools handelt es sich um eine Sammlung von Werkzeugen, die (noch) nicht zum Funktionsumfang von Visual Studio gehören, sich dann aber nachträglich separat installieren lassen und oft in einem späteren Release von Visual Studio Einzug halten. Seit März 2016 sind die Productivity Power Tools OpenSource und der Quellcode steht via GitHub zur Verfügung: https://github.com/Microsoft/VS-PPT

Read more »

0  

NDepend: Tool zur statischen Code-Analyse

NDepend ist ein Tool für die statische Codeanalyse. Mit NDepend können Entwickler und Architekten Code-Strukturen analysieren, Code-Regeln definieren und deren Einhaltung prüfen, Code-Reviews und Refactorings durchführen. NDepend ist vollständig in Visual Studio integriert, lässt sich aber auch als Stand-Alone Applikation ausführen. Dies ist vor allem dann von Vorteil wenn auf dem entsprechenden Rechner keine Entwicklungsumgebung installiert ist (z.B. auf einem Buildserver). Das Tool lässt sich darüber hinaus in den Build-Prozess integrieren was kontinuierliche Analysen des Quellcodes ermöglicht. Hier mal einige Features:

  • Auswertung div. Softwaremetriken
  • Visualisierung von Abhängigkeiten (Abhängigkeitsgraph und Abhängigkeitsmatrix)
  • Unterstützung von Code-Regeln
  • Visual Studio Integration
  • Build-Prozess Integration
  • Umfangreiche Reporting-Möglichkeiten

In dem folgenden Beitrag wird nun ein Beispielprojekt mit NDepend analysiert und die daraus resultierenden Ergebnisse erläutert. Darüber hinaus werden einige Features von NDepend näher beschrieben.

Read more »

1  
Fork me on GitHub