Sdílet prostřednictvím


Plán výuky jazyka C pro vývojáře v Pythonu#

C# a Python sdílejí podobné koncepty. Tyto známé konstruktory vám pomůžou naučit se jazyk C#, když už znáte Python.

  1. Objektově orientované: Python i C# jsou objektově orientované jazyky. Všechny koncepty týkající se tříd v Pythonu platí v jazyce C# i v případě, že se syntaxe liší.
  2. Multiplatformní: Python i C# jsou multiplatformní jazyky. Aplikace napsané v obou jazycích se můžou spouštět na mnoha platformách.
  3. Uvolňování paměti: Oba jazyky využívají automatickou správu paměti prostřednictvím uvolňování paměti. Modul runtime uvolní paměť z objektů, na které se neodkazují.
  4. Silné typy: Python i C# jsou jazyky silného typu. Převod typu se neprovádí implicitně. Později jsou popsané rozdíly, protože jazyk C# je staticky napsaný, zatímco Python je dynamicky napsaný.
  5. Asynchronní / Await: async Python a await funkce byla přímo inspirovaná jazykem C# async a await podporou.
  6. Porovnávání vzorů: Porovnávání výrazů match a vzorů Pythonu se podobá výrazu porovnáváníswitch vzorů jazyka C#. Použijete je ke kontrole komplexního datového výrazu, abyste zjistili, jestli odpovídá vzoru.
  7. Klíčová slova příkazů: Python a C# sdílejí mnoho klíčových slov, například if, elsewhile, , fora mnoho dalších. I když není všechna syntaxe stejná, existuje dostatek podobnosti, kterou můžete přečíst v jazyce C#, pokud znáte Python.

Při učení jazyka C# se seznámíte s těmito důležitými koncepty, ve kterých se jazyk C# liší od Pythonu:

  1. Odsazení vs. tokeny: V Pythonu jsou nové spojnice a odsazení syntaktické prvky první třídy. V jazyce C# není prázdné znaky významné. Tokeny, jako jsou ; samostatné příkazy, a další tokeny { a } rozsah řídicího bloku pro if a další příkazy bloku. Pro čitelnost však většina stylů kódování (včetně stylu používaného v těchto dokumentech) využívá odsazení k posílení rozsahů bloků deklarovaných { v a }.
  2. Statické psaní: V jazyce C# obsahuje deklarace proměnné svůj typ. Změna přiřazení proměnné k objektu jiného typu generuje chybu kompilátoru. V Pythonu se typ může při opětovném přiřazení změnit.
  3. Typy s možnou hodnotou null: Proměnné jazyka C# můžou být nullable nebo nenulové. Typ, který není null, je typ, který nemůže být null (nebo nic). Vždy odkazuje na platný objekt. Naproti tomu může typ s možnou hodnotou null odkazovat na platný objekt nebo hodnotu null.
  4. LINQ: Klíčová slova výrazu dotazu, která tvoří jazyk integrovaný dotaz (LINQ), nejsou klíčová slova v Pythonu. Knihovny Pythonu, jako itertoolsje , more-itertoolsale py-linq poskytují podobné funkce.
  5. Obecné typy: Obecné typy jazyka C# používají statické psaní jazyka C# k vytváření kontrolních výrazů o argumentech zadaných pro parametry typu. Obecný algoritmus může potřebovat určit omezení, která musí typ argumentu splňovat.

A konečně existují některé funkce Pythonu, které nejsou v jazyce C#k dispozici:

  1. Strukturální psaní (kachna): V jazyce C# mají typy názvy a deklarace. S výjimkou řazených kolekcí členů nejsou typy se stejnou strukturou zaměnitelné.
  2. REPL: C# nemá smyčku REPL (Read-Eval-Print Loop) pro rychlé prototypy řešení.
  3. Významné prázdné znaky: Musíte správně používat složené závorky { a } poznamenejte si rozsah bloku.

Učení jazyka C#, pokud víte, že Python je bezproblémová cesta. Jazyky mají podobné koncepty a podobné idiomy, které se mají použít.