Python for the C# developer


Published on

Video at:

If you love C# and .NET, you may be surprised to see how many of the features you love also exist in Python (often first). Python is a wonderful language. It is a clean high-level language which values readability over many trade-offs. You can build web applications serving billions of monthly page views. You can build cross-platform GUI applications such as DropBox. You can access amazingly powerful database servers such as MongoDB and SQL Server. But did you know many of the things you absolutely love about C# also exist in Python? Lambda expressions - check. foreach loops - check. Rich class library - check. Iterators - check. And there is more. Come learn about all the things you love from C# and see how they are accomplished in Python.

Published in: Technology, Education
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Python for the C# developer

  1. 1. Python for the C# developer by Michael Kennedy DevelopMentor | @mkennedy |
  2. 2. Agenda ● Introduce the basics of the Python language ● Review what is awesome about C# and .NET ● Explore Python's version of each C# / .NET feature
  3. 3. The Python language in 10 minutes ● ● ● ● ● ● ● Batteries included (large standard library) High-level programming language Interpreted (sometimes JIT compiled) Object-oriented (especially Python 3) Strongly-typed with dynamic semantics Syntax emphasizes readability Supports modules and packages
  4. 4. The ‘shape’ of a Python program ● Python defines code blocks (known as suites in Python) using whitespace and colons.
  5. 5. Demo Python language demo
  6. 6. What's awesome about C# and .NET? System.Object: Everything is an object. LINQ IEnumerable + foreach loops Visual Studio / IDEs Class properties ( int Age {get; set;} ) Side-by-side execution (isolation) Anonymous types Iterator methods / yield return Add reference Anonymous methods / lambdas / closures NuGET package management Base class libraries Entity Framework / ORMs JIT compilation Great debugging tools Resharper and IDE plugins ASP.NET MVC GUI designers
  7. 7. Visual Studio C# Python
  8. 8. IDEs C# Python
  9. 9. Great debuggers C# Python
  10. 10. Everything is an object C# Python
  11. 11. IEnumerable + foreach loops C# Python
  12. 12. IEnumerable + foreach loops C# Python
  13. 13. Properties C# Python
  14. 14. Anonymous objects C# Python
  15. 15. Lambda expressions C# Python
  16. 16. LINQ C# Python
  17. 17. NuGET package management C# Python
  18. 18. NuGET package management 17,326 packages 37,571 packages
  19. 19. Iterator methods / yield return C# code Python code
  20. 20. ASP.NET MVC C# Python
  21. 21. Entity Framework C# Python
  22. 22. JIT Compilation C# JIT compilation via CLR Python
  23. 23. GUI Designer C# Python
  24. 24. Summary: Python for the C# developer ● Python language is simple, concise, and readable ● Many parts of C# and .NET are awesome ● Python often has equivalent features ○ ○ ● sometimes nicer sometimes less nice Python has a very capable IDE / Debugger in PyCharm