Coder Social home page Coder Social logo

msai-python's Introduction

msai-python

Annotation โญ

This course focuses on the fundamentals of software engineering. Proper design is an important part of any project. This course covers the basics of the Python programming language, basic concepts and language constructs. Along with this, this course provides tools for using Python programming language in complex projects. You will gain insight into the correct design of the code, maintaining the codebase and integrating your applications with others.

Included themes ๐Ÿ“œ

Pre-course ๐ŸŽ’

  • CLI / git
  • Introduction, Zen Python
  • Installation python 3
  • Code-writing tools
    • Ipython Notebook
    • IDE Pycharm
    • Interactive mode
  • Virtual environment + conda + pip list / pip freeze / Requirements management
  • Troubleshooting

Python Basics ๐ŸŽ“

  • Numbers, Strings, Lists, Dicts
  • Data Model: objects, values and types
  • Flow control statements: if, for, while
  • Python Data structures
  • PEP8, Style guides
  • Complex conditions
  • Functions: Declaration, Signature, Call by assignment, Call Stack, Closures, Recursions
  • Functional programming elements
  • Modules: imports, module search path, standard modules, dir()
  • Packages: init.py, all, dotted imports
  • Scopes and Namespaces
  • Classes: Declaration, Inheritance, attributes, instances, instance variables, private section
  • Iterators, Generators, Generator Expressions, Context Managers, Decorators
  • Exceptions: Built-In Exceptions, handling exception, raise exception, custom exceptions
  • Standard Library, inspect
  • Logging
  • Multi-threading: Process Pool, Thread Pool, threading module, multiprocessing

Complex themes ๐Ÿ”Ž

  • Compilation and interpretation strategies (AOT, JIT)
  • How to speed up the python code: numba, cython, joblib, dask, c++ extensions
  • Data Science toolbox overview
  • Garbage collector
  • Metaclasses
  • OOP, functional programming
  • Design Patterns
  • Testing
  • CI, CD, automatization

Literature ๐Ÿ“š

  • Fluent Python by Luciano Ramalho O'Reilly Media, Inc. 2015
  • Learn Python 3 the Hard Way Zed A. Shaw Addison-Wesley, 2016
  • Effective Python: 59 Ways to Write Better Python Brett Slatkin Addison-Wesley, 2015
  • Test-Driven Development with Python Harry Percival, 2nd edition O'Reilly Media, Inc.
  • Clean Architecture: A Craftsman's Guide to Software Structure and Design: A Craftsman's Guide to Software Structure and Design (Robert C. Martin Series) Paperback โ€“ Illustrated, 17 Sept. 2017
  • Design Patterns: Elements of Reusable Object-Oriented Software 1st Edition, Kindle Edition by Gamma Erich, Helm Richard, Johnson Ralph, Vlissides John
  • Intermediate Python Obi Ike-Nwosu 1st Edition., 2016
  • Mark Lutz. Learning Python, 5th Edition. O'Reilly Media, Inc., 2013

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.