Curso Cython Programming
16 horasVisão Geral
Curso Cython Programming, Cython é uma linguagem de programação que estende Python com sintaxe semelhante a C. Ele permite que os programadores escrevam código Python que pode ser compilado em código C, resultando em melhorias significativas de desempenho. Cython é frequentemente usado para aplicações de computação de alto desempenho, computação científica e aprendizado de máquina. O Curso Cython Programming, ensina os participantes como escrever código de alto desempenho com Cython e usar arrays NumPy com Python, C e Cython.
Objetivo
Após realizar este Curso Cython Programming você será capaz de:
- Configure um ambiente de programação C
- Explore como programar e executar programas C
- Aprenda a organização do código por meio de funções e inclua arquivos
- Entenda a digitação estática e a alocação dinâmica de memória
- Pratique escrever código C chamado de Python
Pre-Requisitos
- Este Curso Cython Programming é para alunos que concluíram um curso de treinamento em C e Python ou são programadores autodidatas com muitos anos de experiência contínua em Python e C.
Materiais
Inglês/Português/Lab PráticoConteúdo Programatico
Introduction
Development Environment
- Overview of Virtual Machine for Class
- Visual Studio Code Extensions for C
- Debugging C with VS Code
C Programming Language
Development Tools
- Makefile
- CMake
- CPP Check
Program Structure
- Main Function
- Include Files
- Header Files
- Compile to Executable
- Compile to Shared Library
- Using Libraries
- Common Compile Options
Data Types
- Numbers
- Strings (Arrays of Characters)
- Arrays
- Structs
- Type Defs
- Type Casting
- Static Typing vs. Dynamic Typing
- Loose Typing vs. Strong Typing
- Static Types
Control Flow
- If
- Switch
- While
- Do-While
- For
- Goto
Functions
- Define a Function
- Call a Function
- Passing Arguments/Parameters
- Return Values
- Function References
Pointers
- Pass By Value vs. Pass By Reference
- Dynamically Allocating Memory on the Heap
- Principles and Practices of Dynamic Memory Allocation
- Linked Lists
- Untyped Pointers
Python and C Integration
- Numpy Arrays
- Ctypes FFI
- Python Struct and Structure
- Create a Simple C-Extension for Python
- Debug a C-Extension for Python
- Review C Code generated by Cython
- Basic Profiling of C functions