Python Programlama Dili Eğitimi

Bu kurs Python programlama diline yeni başlayanların ve ayrıca tecrübeli yazılımcıları sıfırdan başlayarak Python’a derinlemesine hakim olabilmelerini sağlamayı hedeflemektedir. Ayrıca bu eğitimde katılımcıların Python programlama dili, çevre teknolojileri ve bol miktarda open source araç kullanarak gerçek hayat projeleri ve ticari uygulamalar geliştirmelerini sağlıyoruz.

  • Yazılım Geliştirme Araçları & Ortamı
    • Python (v3.x),Visual Studio Code, Jupyter Notebook, PostgreSQL ve dahası…

Müfredat

Python Programlama Diline Genel Bakış

Compiler & Interpreter

    • Derleyici ve Yorumlayıcı Nedir?
    • Python Yorumlayıcısına Derinlemesine Bakış

Python Versiyonları

    • Geçmiş Python Versiyonları ile Gelen Yeni Özellikler
    • En Yeni Python : Python 3.10 ile Gelen Yeni Özellikler
Framework ve Library : Nedir ve Aralarındaki Farklar
Python Avantaj ve Dezavantajları
İnceleme : Python Standard Library
Python ile “Merhaba Mars!” Uygulaması
Python Versiyonlar Arası Uyumluluk ve Versiyon Yükseltmek

Python Geliştirme Araçlarına(IDE) Derinlemesine Bakış

    • Visual Studio Code IDE İnceleme ve Projeler Oluşturma
    • PyCharm IDE İnceleme ve Projeler Oluşturmak
Python Araç ve Ortamlarına Genel Bakış
Ortam Kurulumu
  • Kurulumlar
    • Anaconda Kurulumu
    • Python ve Jupyter Kurulumu
    • PyCharm Kurulum, İnceleme ve Projeler Oluşturmak
    • Visual Studio Code Kurulum, İnceleme ve Projeler Oluşturmak

  • Kullanım ve Testler
    • Jupyter Notebook Kullanımı
    • Google Colab ile Cloud Ortamında Python Programlama
  • Çalışma Dökümanları
Geliştirici Araçları
  • Pylint ile Programların Analizi
  • Debugger Kullanımı
  • Kod Profiling
  • Benchmarking ile Hız Testi
Python Dependencies : Python Bağımlılıklarını Yönetmek (Derinlemesine)
  • Dependency Management’a Genel Bakış
  • pip İşlemleri
  • Python Package Repository’lerig
  • PyPi
  • Virtual Environment
    • Virtual Environment’a Genel Bakış
    • Virtual Environment Yönetimi
      • Creation, Activation/Deactivation, Leaving, Switching, Destroying
  • ThirdParty Python Paketler
  • requirements.txt
    • Proje Bağımlılıklarını Otomatik Olarak Çıkarmak
    • Proje Bağımlılıklarını Restore Etmek
  • Development ve Production Bağımlılıklarını Ayırmak
  • Örnek Bir Gerçek Hayat Proje Dosya/Dizin Yapısı Oluşturmak
Bir Python Uygulamasının Yapısını İncelemek

Veri Tipi Nedir ve Neden Kullanılır

  • Veri Tiplerinin Kullanımı
Değer ve Referans Tip Kavramları

Değişken Nedir ve Neden Kullanılır

  • Global, Local ve NonLocal Değişkenler
  • Değişken Tanımlamak ve Kullanmak
  • Python’da Değişken Pratikleri

Operatörler

  • Operatörlere Genel Bakış
  • Python’da Kullanılan Operatörler
  • Proje : Python’da Operatör Pratikleri

Tür Dönüşümü Nedir ve Neden Kullanılır?

  • Tür Dönüşümüne Genel Bakış
  • Tür Dönüşümü İşlemleri
  • Python’da Türk Dönüşümü Pratikleri
Nesne Yönelimli Programlamaya(OOP) Genel Bakış
Python’da OOP Yaklaşımı
OOP Kavramlarına Genel Bakış
  • Class
  • Object
  • Method
  • Inheritance
  • Encapsulation
  • Polymorphism
  • Data Abstraction
Class (Sınıflar)
  • Class’lara Genel Bakış
  • Class Temelleri
  • Class ve Instance Attributes
  • Projeler : Python’da Sınıf Uygulamaları
  • Statik Metotlar
Fonksiyonlara Genel Bakış
  • Fonksiyon Kapsam Kuralları
    • Global ve Yerel Değişkenler
  • Return : Değer Dönüşüne Sahip Fonksiyonlar
  • Parametreler ile Çalışmak
    • Parametreli Fonksiyonlar
    • İsteğe Bağlı Parametreler (*args)
    • Keyword Parametreler ve İsteğe Bağlı Keyword Parametreler
    • Varsayılan Parametreler
    • List Tipinde Parametreler
  • Fonksiyonların Parametre Olarak Kullanımı
    • Fonksiyon Tanımlarken Lambda Kullanımı
  • Decorator
    • Decorator’lara Genel Bakış
    • Decorator Oluşturmak ve Kullanımı
  • Property Method
    • Property Vs. Getters/Setters
    • Python’da Property Kullanımı
Inheritance (Kalıtım/Miras)
  • Inheritance’a Genel Bakış
  • Parents Class & Child Class
  • Super Functions
  • Proje : Python’da Inheritance Kullanımı
  • Multiple Inheritance
    • Proje : Python’da Multiple Inheritance Kullanımı
Magic Method ve Operator Overloading
  • Magic Method
    • Magic Method’lara Genel Bakış
    • Magic Method’lar
    • Proje : Magic Method Pratikleri
  • Operator Overloading’e Genel Bakış
    • Operator Overloading Neden ve Ne Zaman Kullanılır
    • Proje : Operator Overloading
Soyut Sınıflar : Abstract Classes
  • Soyut Sınıflara Genel Bakış
  • Proje : Soyut Sınıflar
Modüller
  • Modül Kavramına Genel Bakış
  • Namespace
    • Built-In Namespace’ler
    • Global Namespace
    • Local ve Enclosing Namespace’ler
    • Namespace Dictionary
      • globals() Fonksiyonu
      • locals() Fonksiyonu
    • Kapsam Dışındaki Değişkenler
      • global
      • nonlocal
  • Proje : Modül Odaklı Python Uygulaması
Streams
  • io modülü
  • Text Streams
  • Binary ve RAW IO Streams
Dosya Operasyonlarına Genel Bakış
  • Dosya ve Klasör Kavramlarını Anlamak
  • Serialization Nedir ve Neden Kullanılır?
    • Serialization Türleri
  • Python ile Dosya ve Klasörler İşlemleri
  • Dosya Açma & Yazma İşlemleri
  • Dosya Okuma İşlemleri
  • Bir Dosya Üzerine Yazmak
  • Bir Dosya Üzerine Yazmak
Marshal ve Pickle Serialization
repr ile Serialization
Serialization İçin eval ve exec Kullanımı
PDF Dosyaları ile Çalışmak
  • PDF Dosya Formatına Teknik Bakış
  • Python ile PDF İşleme Araçları
  • Proje : Python ile PDF İşleme Pratikleri
XML Formatı ile Çalışmak
  • XML Formatına Genel Bakış
  • Proje : XML Formatı ile Çalışmak
JSON Formatı ile Çalışmak
  • JSON Formatına Genel Bakış
  • Proje : JSON Formatı ile Çalışmak
  • Proje : Özelleştirilmiş Tipleri JSON’a Dönüştürmek (Custom Serialization)
  • Streaming JSON
  • Log Kayıtlarını JSON’a Dönüştürmek
msgpack Serialization
  • msgpack Serialization’a Genel Bakış
  • Proje : msgpack ile Serialization
CSV Formatı ile Çalışmak
  • CSV Formatına Genel Bakış
  • Proje : CSV Serialization
YAML Formatı ile Çalışmak
  • YAML Formatına Genel Bakış
  • Proje : YAML Serialization
TOML Formatı ile Çalışmak
  • TOML Formatına Genel Bakış
  • Proje : TOML Serialization
Protocol Buffers & gRPC
  • Protocol Buffers
  • Tanımlama Dosyası Yazmak
  • Serializer Üretmek
  • Protocol Buffer Kullanımı
  • Proje : Python ile gRPC Kullanımı
Hata Yönetimine Genel Bakış
Hatalar ve İstisnalar
Hata Yakalama : try, except, finally blokları
Exception’in İçerdiği Nesneleri İncelemek
Exception Chaining
  • Implicit Chaining
  • Explicit Chaining
Traceback
Assertion
Context Manager
  • The Context Manager Protocol
    • Proje : Context Manager Implementasyonu
  • Context Manager Decorator
    • Proje : Database Transaction
Veritabanı Programlamaya Genel Bakış
Veritabanı Yönetim Sistemlerine Genel Bakış
  • Hangi VTYS Ne Zaman Kullanılmalıdır
Python ve SQLite
  • SQLite Veritabanına Genel Bakış
  • SQLite’da Veritabanı Dosyası ve Tablo Oluşturmak
  • Python ve SQLite ile CRUD Operasyonları
  • Proje : Python ve SQLite ile Veritabanı Uygulaması
Python ve PostgreSQL
  • PostgreSQL Veritabanına Genel Bakış
  • PostgreSQL Veritabanında Veritabanı ve Tablo Oluşturmak
  • Python ve PostgreSQL ile CRUD Operasyonları
  • Proje : Python ve PostgreSQL ile Veritabanı Uygulaması
Yazılım Testi Kavramına Genel Bakış
Yazılım Test Türleri ve Süreçleri
Python ile Test Geliştirmek
PyTest ile Unit Test
  • Unit Test Nedir
  • Test Yazmak
  • Test Çalıştırmak
RESTful API Kavramlarına Genel Bakış
RESTful API Nedir
Neden RESTful API Kullanılır
RESTful API Mimarisi
RESTful API Mimarisine Derinlemesine Bakış
  • RESTful API Mimarisine Genel Bakış
  • RESTful API Terminolojisi
  • Request Anatomisi : Request’i Doğru Anlamak
  • HTTP Metot
  • HTTP Header
    • Data
RESTful API Mimarisio RESTful API Tasarım İlkeleri : Doğru RESTful API Mimarisi Tasarlamak
requests Modülü
  • requests Modülüne Genel Bakış
    • Proje : requests Modülü
Proje : RESTful API Uygulaması Geliştirmek ve Test Etmek
Proje :GitHub API Uygulaması Geliştirmek ve Test Etmek
Proje : Exchange API ile Döviz Kur Uygulaması Geliştirmek ve Test Etmek
Proje : The Movie Database API ile Film Uygulaması Geliştirmek ve Test Etmek
Web Uygulama Geliştirme Mimarisine Genel Bakış
Web Uygulama Geliştirme Framework’lerine Genel Bakış
Flask Microframework’e Genel Bakış
Flask Kurulum Operasyonları
İlk Flask Web Projesini Oluşturmak
Flask ile RESTful API Geliştirmek
    • Proje : Python ve Flask ile RESTful API Geliştirmek ve Test Etmek
Templates ve Layout
Statik Dosyalar ile Çalışmak
Temel Tasarım İşlemleri
Flask ile Session Management
Proje : Python ve Flask ile Kullanıcı Yetkilendirmeli Web Uygulaması Geliştirmek
  • Genel Proje Altyapısının Hazırlanması
  • Session ile Yetkilendirme
    • Session ile Login
    • Logging Out
  • Cookie ile Yetkilendirme
    • Cookie Kullanımı
    • Cookie ile ‘Beni Hatırla’
    • ‘Forget Me’
  • Kullanıcı Rolleri ile Yetki Vermek
  • Kullanıcı Hesaplarını Yönetmek
    • Kullanıcı Hesaplarını Yönetmek
    • Aktivasyon Maili Göndermek
    • Resending : Aktivasyon Mailini Tekrar Göndermek
    • Forgetten Password : Kullanıcı Parolasını Sıfırlamak
    • Celery ile Email Gönderimini Background Job Olarak Yönetmek
Deployment’a Genel Bakış
Deployment Süreçleri
Flask ile Örnek Web Uygulaması Oluşturmak
Web Uygulamasının Heroku’da Yayınlanması(Deployment)
  • Heroku Hesap Oluşturmak
  • Heroku Command-Line Interface(CLI)
  • Web Uygulamasını Yayınlamak
  • Heroku Deployment Workflow
    • Deployment Workflow’u Anlamak
    • Heroku’da Deployment Workflow
    • Production Ortamına Geçiş

 

  • Uygulama Ayarları ve Secret’ları Yönetmek

Eğitime Başvur

Eğitim programları ile alakalı tüm sorularını buradan ve sosyal medya hesaplarımızdan bize sorabilirsin.

Bu formu bitirebilmek için tarayıcınızda JavaScript'i etkinleştirin.