2013-08-19 8 views
5

Quindi prima di invocare l'ira dei puristi di SO, sono a conoscenza di When to develop using Powershell vs C#?. Tuttavia, credo che lo stato dell'arte sia cambiato da allora.Powershell vs C#

Quindi, in primo luogo, la grande rimozione dall'ultima domanda di Powershell contro C# è stata che in definitiva Powershell è un linguaggio interpretato rispetto a C# essendo un linguaggio compilato.

Tuttavia ritengo che mentre Roslyn matura questo argomento non mancherà di acqua.

Quindi, perché voglio imparare PowerShell. Dato che:

  • C# può (in teoria) essere eseguito in un ambiente interpretato.
  • C# ha un migliore supporto utensili (ad es ReSharper) e la documentazione
  • C# ha un grande controllo degli errori (il compilatore)
  • so già C#
+0

Si apprende PowerShell per le funzionalità amministrative. – D3vtr0n

risposta

4

modo da poter gestire qualsiasi degli strumenti di server Windows come

  • Cambio
  • Sql Server
  • SharePoint
  • Active Directory
  • TFS

in modo da poter distribuire e gestire i servizi Azure, in modo da poter distribuire e gestire i servizi AWS, un bel paio di motivi davvero

+0

Devo capire che non ci sono legami .net a questi servizi? – Aron

+3

Paul Rowland, per favore, rispondi al commento precedente. – vasili111

4

essere precisato PowerShell è molto più per gli amministratori. È perché fornisce strumenti simili (cmdlet) per gestire diversi sistemi

Ma PowerShell è anche molto utile per gli sviluppatori su cui stanno lavorando per esempio il filesystem. La scorsa settimana ho dovuto trovare la stessa stringa in molte soluzioni .NET. Usando 3 cmdlet ho trovato quello di cui avevo bisogno in un secondo. Lo sviluppo stesso in C# richiederà molto tempo

4

Penso che le persone debbano pensare un po 'fuori dagli schemi su questo argomento. Smetti di provare a confrontare PowerShell con C# o come sostituto di, è più di completarlo che sostituirlo.

Sono un DBA, ma sempre più mi trovo a svolgere attività simili allo sviluppatore per automatizzare di più il mio lavoro. Attualmente sto sviluppando uno strumento di valutazione per la società per cui lavoro, che è già stato scritto in PowerShell.

PowerShell è stato creato da Microsoft ed è diventato sempre più popolare tra gli amministratori o coloro che gestiscono applicazioni (SharePoint, Exchange, AD, ecc.). In tale scenario sta diventando un requisito per imparare e utilizzare PowerShell ora. Microsoft ha già dichiarato che qualsiasi prodotto che esce per Windows Server deve avere la funzionalità di PowerShell e l'interfaccia GUI deve utilizzare PowerShell sotto (non è possibile trovare la fonte ma averlo letto e ascoltato).

Ultimamente ho letto questo Windows PowerShell for Developers ed è abbastanza interessante scoprire che l'autore lo sta usando nel suo lavoro di sviluppo. Vale la pena la piccola quantità di ottenere l'e-book al massimo e leggere attraverso di essa.

alcuni punti che vorrei pensare uno sviluppatore potrebbe beneficiare di PowerShell (almeno avrei fatto se l'ho fatto a tempo pieno):

  1. Esso consente di codificare il compito più piccola all'interno del programma molto più veloce (ad esempio, scorrere i dati in un file, cercare il file system di Windows per un file, ecc.).
  2. Penso che potrebbe essere utilizzato come strumento di distribuzione come coerenza. È possibile compilare effettivamente il codice all'interno della console di PowerShell, poiché è basato su e ha accesso alla struttura .NET.
  3. Come accennato in precedenza se si desidera scrivere un piccolo programma per il proprio help desk per dire Active Directory, è possibile eseguire comandi e attività molto più facili contro AD con i comandi di PowerShell rispetto al tentativo di collegarsi a tutte le classi .NET. I comandi hanno già i collegamenti e i comandi standard che possono essere utilizzati da un utente dell'help desk.