Was sind die Vorteile von C # gegenüber Python?

8

Ich mag Python hauptsächlich wegen der großen Portabilität und der einfachen Programmierung, aber ich frage mich, welche Vorteile C # gegenüber Python bietet?

Der Grund, warum ich frage, ist, dass einer meiner Freunde einen privaten Server für ein Online-Spiel (UO) betreibt, und er bot mir an, einen Entwickler zu machen, wenn ich wollte, aber die Software für den Server ist alles in C # geschrieben. Ich würde das gerne machen, aber ich habe nicht wirklich Zeit, mehrere Sprachen zu machen, und ich hatte nur ein paar weitere Gründe, um C # gegenüber Python für mich selbst zu rechtfertigen.

Ich mache das alles Autodidakt als Hobby, übrigens

    
Mella 20.03.2010, 20:12
quelle

10 Antworten

9

Es gibt viele Unterschiede, Vor- und Nachteile. Ich denke, die Hauptvorteile würden in Richtung

liegen
  • Hervorragende Windows-Integration, einschließlich Zugriff auf alle Standard-GUI-Funktionen und andere Bibliotheken.
  • JIT-Kompilierung, die in einigen oder den meisten Fällen zu einer besseren Leistung als Python führt. Wie bereits erwähnt, ist dies jetzt auch in Python möglich.
  • Unter Windows ist die IDE-Unterstützung wohl besser für C #. Visual Studio ist eine gut etablierte und fortschrittliche Entwicklungsumgebung, und die "Express" -Editionen sind kostenlos für den persönlichen Gebrauch . In einer Nicht-Windows-Umgebung ist es wahrscheinlich ein Unentschieden zwischen verschiedenen Editoren.

Der Rest hängt im Wesentlichen von der persönlichen Präferenz ab (statisch getippt im Vergleich zu dynamisch, C-ähnliche Syntax oder nicht, etc.).

    
Jakob Borg 20.03.2010, 20:16
quelle
13
  1. Visual Studio - die beste IDE da draußen.

  2. Von den im Umlauf befindlichen statisch getippten Sprachen ist C # sehr produktiv.

James L 20.03.2010 20:22
quelle
11

Viele von uns arbeiten gerne mit stark / statisch typisierten Sprachen . Das ist ein großer da.

    
Joel Coehoorn 20.03.2010 20:16
quelle
3
  • C # wird von Microsoft ; (Kommentare werden erwartet)
  • unterstützt
  • C # ist typesafe , was mit seinen Vorteilen einhergeht.
  • Nichts ist besser, wenn Sie Windows-Anwendungen entwickeln.
  • Seine Syntax ist auch sehr gut gestaltet. Der Code sieht ziemlich gut aus.
  • Es lohnt sich zu lernen, weil viel Code geschrieben wird und darin geschrieben wird.
  • Es fühlt sich so gut an, wenn Sie in Visual Studio in C # programmieren. Ich suche immer noch nach solch einer netten IDE für Python.
  • Mit C # können Sie viele interessante Dinge erforschen: .NET, WPF, WCF, XNA, ASP.NET, Jon Skeets Blog ... usw.
Pratik Deoghare 20.03.2010 22:45
quelle
1

Der JITer und die Tatsache, dass er aufgrund der statischen Typisierung einen strengeren Code produzieren kann. Der JITer kann umgangen werden, indem man eine der Nicht-CPython-Implementierungen verwendet oder auf i386 und psyco zurückgreift, aber die statische Typisierung kann nicht so trivial umgangen werden (und ich glaube auch nicht, dass es sein sollte).

>     
Ignacio Vazquez-Abrams 20.03.2010 20:17
quelle
0

Ich habe es hilfreich gefunden, mit verschiedenen Sprachen zu arbeiten, da sie jeweils ihre Stärken haben. Python ist extrem leistungsfähig, basiert aber auf guten Codierungskonventionen und -praktiken, um den Code wartbar zu halten. Insbesondere erübrigt es Typsicherheit oder Isolierung, was bedeutet, dass es einfach zu missbrauchen ist. C # ist eine moderne objektorientierte Sprache mit starker Typisierung und anderen Funktionen, um die Isolierung und Kapselung zu erzwingen. Es ist nicht so wild flexibel, aber ich habe auch festgestellt, dass größere C # -Programme viel einfacher zu pflegen sind (besonders, wenn Sie sie von anderen Entwicklern erben.)

    
Dan Bryant 20.03.2010 20:19
quelle
0

C # kann über "unmanaged code" direkt auf Zeiger zugreifen, was in manchen Situationen einen Leistungsvorteil bringen kann.

    
Joe Internet 20.03.2010 20:25
quelle
0

Nun, die Einfachheit der Codierung ist umstritten. Ich finde C # leichter zu codieren, wenn Sie die Hilfe, die Sie von den IDEs erhalten, berücksichtigen (z. B. den kostenlosen Visual Web Developer).

Portabilität ist also weniger ein Problem, wenn Sie Mono berücksichtigen. Die Leistung kann in einigen Szenarien besser sein. Ich finde die Online-Dokumentation in .NET generell besser.

Haben Sie IronPython in Betracht gezogen? Wenn Sie bereit sind, eines der .Net-Distributionen zu nutzen, in denen sich das DLR befindet (4.0 ist dort die beste Wahl, aber einige der DLR-Betas sind in Ordnung), dann können Sie C # -Code und Python-Code schreiben und haben zusammenarbeiten, ohne irgendwelche Schwierigkeiten außerhalb der Namenskonventionen ein bisschen anders.

    
Paul 20.03.2010 20:19
quelle
0

Wenn Sie Python bevorzugen, aber Code für .Net schreiben müssen, gibt es außer IronPython auch Boo , was eine starke- Python-inspirierte .NET-Sprache (einschließlich statischer Typen). Vielleicht möchten Sie es versuchen.

    
tzot 21.03.2010 15:01
quelle
0

Wenn Sie nicht daran interessiert sind, das .NET-Framework zu verwenden, können Sie stattdessen python und pyQt oder Tkinter verwenden, da Python nun eine IDE-Unterstützung für Visual Studio namens Python-Werkzeuge für Visual Studio (PTVS) bietet, die Ihnen Syntaxaufforderungen gibt Wie kommst du in VB und C # in Visual Studio? Wenn Sie jedoch auch .NET verwenden müssen, verwenden Sie Iron Python und dann Python Tools für Visual Studio und wählen Sie im Visual Studio den Compiler als Iron Python. Visual Studio wird in den Versionen 2013 und 2012 unterstützt. Ich würde sagen, es ist die beste IDE für Python und was mehr ist, wird auch von MSFT unterstützt

Überprüfen Sie den Link hier Ссылка

HINWEIS: Sie können ptvs entweder mit der Version 2.7 oder 3.0 verwenden. Ich verwende die Version 2.7, wie ich es gewohnt bin, aber für Anfänger würde ich vorschlagen, 3.0 zu verwenden, da es viele Vorteile gegenüber der Version 2.7 hat. ABER INSTALLIEREN SIE SIE NICHT IM GLEICHEN SYSTEM. Installieren Sie außerdem Visual Studio Shell Isolated und dann Integrated, bevor Sie PTVS installieren. Stellen Sie außerdem sicher, dass Ihre Python-Version mit der Betriebssystem-Bit-Version übereinstimmt.

:)

    
logicacker 25.04.2014 06:21
quelle

Tags und Links