2010-11-15 25 views
11

Sadece PowerShell'de başlıyorum ve sistem yöneticilerimden biri, Powershell'in daha fazla olmasa da, C# sistem yönetimi için yapabileceğini söyledi.Powershell vs C# kullanarak ne zaman geliştirilir?

Lütfen bu sorunun bilgisizliğini affedin, ancak C# üzerinde Powershell'i ne zaman kullanırdım? Ben uzun zaman önce, Windows inşa laboratuarında çalıştı zaman

+0

Zaten iki yazının karşılaştırmaları üzerine birkaç mesaj var ... –

cevap

13

(1997) kuralı ben de bu iki durumun kod tatmin yorumlanır senaryoya yazarsanız, aksi derlenmiş kod yazmak öğretildi:

kodundan daha havai var
  1. yeniden yayınlanması hale geçmeden kod değişecek daha iyi 10'dan olasılığı%
  2. (/ kullanarak çizgileri, işlevi bildirimi, vb dahil)
18

1) PowerShell iyidir nispeten küçük iyi tanımlanmış görev için s, komut satırında doğru kodlama yaparken, özellikle geçici bir günlük görevler ve etkileşimli görevler. Eğer bir görev sadece birkaç satırlık bir PowerShell kodu gerektiriyorsa (ve PowerShell'i yeterince iyi bildiğiniz için bunu biliyorsunuz demektir!), Tam bir C# projesinin başlatılması genellikle çok fazladır.

2) C#, büyük projeler için veya performansın kritik olduğu yerlerde çok daha iyidir. Muhtemelen hata ayıklama ve sorun giderme gerektirecek herhangi bir proje için daha iyidir.

3) PowerShell ve C# birlikte çalışabilirler. Birinden diğerini aramak kolaydır. PowerShell, .NET bileşenlerini bağlamak için iyidir. C# 'daki karmaşık ve performans kritik parçalarınızı uygulayabilir ve daha sonra bu parçaları PowerShell ile bir araya getirip birleştirebilirsiniz.

+0

+1 .. İki cevabı işaretleyemiyorum - Teşekkürler! – LamonteCristo

+1

2. noktanın ikinci kısmına katılmıyorum. PowerShell, saygın bir yerel hata ayıklama özelliğine sahiptir ve tüm modern kod düzenleyicileri, onu uygularken iyi bir iş çıkarır. – xcud

+0

Cevabın oldukça eski olduğunu biliyorum, ancak nokta 1 için "... daha sonra tam bir C# projesinin başlatılması çoğu zaman fazladır" dedi. Hızlı (ve genellikle kirli) bir çözüme ihtiyacınız varsa, sadece [Linqpad] kullanabilirsiniz (https://www.linqpad.net/) –

İlgili konular