תקציר

פייתון היא שפת תכנות דינמית יציבה ומוערכת אשר תופסת בשנים האחרונות מקום מרכזי בין השפות המובילות.

השפה מעודדת כתיבה של קוד קריא ונוח לתחזוקה ומגיעה עם ספריה סטנדרטית עשירה הנתמכת בעושר אדיר של חבילות תוכנה בפיתוח צד שלישי. קהילת הפיתוח הנה פעילה מאד והשפה זוכה לפיתוח ושיפור באופן שוטף. השפה משמשת לפיתוח עבור מחשבים אישיים וניידים, עבור שרתים ואף לבניית אפליקציות למובייל.
השפה מתאימה למגוון רחב של צרכים - מסקריפטים קצרים ועד מערכות מורכבות בשימוש ארגונים גדולים דוגמת Google והממשל האמריקאי.

בקורס נעשה היכרות עם המושגים הבסיסיים הנחוצים לפיתוח בפייתון ונצלול לעומק על מנת לבנות בסיס ידע רחב בשימוש בשלל הכלים שהשפה מאפשרת לנו. בין הנושאים בהם נעסוק כלולים טיפול מקיף במחרוזות ובביטויים רגולריים, שימוש בקבצים ובמסדי נתונים מובנים, בניית תוכנה מונחית עצמים (Object Oriented) ושימוש מתקדם במבני נתונים.

הקורס משלב לימוד בכיתה עם תרגול מעשי ובמהלכו נרכוש נסיון מעשי בכתיבת תוכנה בפייתון.

מטרות הקורס

  • כתיבת סקריפטים בפייתון תוך שימוש בספריית התוכנה העשירה
  • קריאה ושימוש בקוד קיים בפייתון והתאמתו לצרכים שונים
  • בניית תוכנה מודולרית תוך שימוש ביכולות המתקדמות של השפה

קהל היעד

מתכנתים בצוותי פיתוח R&D, צוותי IT ו-QA.

ידע נדרש

הקורס מתאים לטווח רחב של נסיון - מהיכרות בסיסית עם תכנות ועד מתכנתים מנוסים המיומנים בשפות אחרות כגון C, Java ו-Javascript.

משך הקורס

משך הקורס הינו 24 שעות אקדמיות.

הנושאים בקורס

Day 1 - Bootcamp

Python Programming Language Introduction

Python Basics

  • Using the Python Interpreter
  • Script Anatomy
  • Code Blocks
  • Line End

Types Overview

  • Numbers
  • Strings
  • Lists
  • Tuples
  • Sets
  • Dictionaries

Flow Control

  • Conditional statements
  • Various looping mechanisms

Using the Python Debugger

  • Running programs
  • Using Breakpoints
  • Debugging existing script
  • Analyzing crashed programs

Introduction to Modular Software Development

  • Handling and raising Exceptions
  • Splitting the code into functions
  • Separating code into different classes

Day 2

Effective use of Strings

  • String creating and concatenation
  • Formatting (new style and c-style)
  • Slicing
  • Overview of useful methods

Data Storage

  • Accessing files
  • Easily serializing and de-serializing using Pickle
  • Persistent storage using Shelve

Diving into Functions

  • Using named arguments
  • Flexible functions using Variadic Parameters
  • More flexibility using Keyword Parameters
  • Effective documentation using docstrings

Diving into Classes

  • Class Inheritance
  • Defining Properties
  • Property Decorator - Optional
  • Class Methods
  • Special Methods
  • Effective documentation using docstrings

Modules and Packages

  • Combining code into Modules
  • Combining Modules to Packages
  • Modules Overview: pyserial, subprocess, optparse

Day 3

Regular Expressions

  • Introduction and syntax
  • Grouping partial results and manipulating it
  • Use of matching functions
  • Use of manipulating functions
  • Search Flags for use with Regular Expressions

Error Handling and Exceptions

  • Logging options
  • Exiting the script using os.exit()
  • Handling Exceptions
  • Handling Multiple Exceptions
  • Exception Arguments
  • Raising Exceptions
  • Finally Block
  • Assert

Advanced Collections

  • Using map, filter and reduce
  • List Comprehension
  • Copying Collections - shallow and deep copy

(Optional) Extending Python with C

  • Intro: A Simple Example
  • Errors and Exceptions
  • Module's method table
  • Initialization function
  • Converting data from Python to C
  • Memory Management

עמית קוטלובסקי
טלפון 0544-730333
פקס 08-9349978
[email protected]
הודעתך נשלחה, תודה!
חלה תקלה בשליחה.

לפרטים נוספים