SOCKET PROGRAMMING IN PYTHON: INTRODUCTION EĞİTİMİ

Python ile ilk ağ uygulamanızı yazın

TCP ve UDP soketleriyle istemci-sunucu iletişimini, adreslemeyi ve temel hata yönetimini öğrenin.

Eğitim, soket kavramı ile IP, port ve DNS çözümlemeyi tanıtır; socket modülüyle TCP sunucu ve istemci yazımı, send/recv davranışı, UDP datagram iletişimi, broadcast, basit port tarayıcı, echo sunucusu ve temel hata/zaman aşımı yönetimini uygulamalı olarak işl…

2 gün Temel Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

Soketlerin temelinden TCP/UDP iletişimine giriş yapın.

Eğitim, soket kavramı ile IP, port ve DNS çözümlemeyi tanıtır; socket modülüyle TCP sunucu ve istemci yazımı, send/recv davranışı, UDP datagram iletişimi, broadcast, basit port tarayıcı, echo sunucusu ve temel hata/zaman aşımı yönetimini uygulamalı olarak işler.

Süre ve Format

2 Gün. Her gün dört modül; sabah kavram ve kod, öğleden sonra uygulama; ikinci gün mini ağ aracı.

Seviye

Temel Seviye — TCP ve UDP istemci/sunucu, adresleme ve temel mesajlaşma ile Python soket programlamaya giriş

Öğrenme Metodu

Her kavram iki terminalde sunucu ve istemci yazılarak, netstat ve telnet ile gözlemlenerek öğrenilir.

Neden Bu Eğitim?

🎯Ağın Temeli

İletişimin soket seviyesinde nasıl yürüdüğünü doğrudan kodla görürsünüz.

🛠️TCP ve UDP

İki protokolün güvenilirlik ve hız farkını uygulamayla kavrarsınız.

📈Araç Yazımı

Port tarayıcı ve sohbet gibi küçük ağ araçlarını kendiniz yazarsınız.

Anahtar Konular

Python socketsoket programlamaTCP UDP Pythonağ programlama girişecho sunucuport tarayıcı Pythonistemci sunucusocket modülü
“Her ağ uygulaması, iki soketin konuşmasıyla başlar.”

Ön Koşullar

Eğitimden verim almak için faydalı olacak bilgi ve ortam gereksinimleri

1
Python temelleri

Fonksiyon, döngü ve string/bytes bilgisi gerekir.

2
Ağ temelleri

IP adresi ve port kavramlarına genel aşinalık yeterlidir.

3
Komut satırı

Terminal kullanımı bilinmelidir.

4
Ortam

Python 3.10+ ve bir metin editörü yeterlidir.

Eğitim İçeriği

Programın gün gün akışı aşağıdadır. Bir güne tıklayarak o günün modüllerini ve içeriklerini görebilirsiniz.

Günün hedefiKatılımcı TCP sunucu ve istemci yazar, bayt/metin dönüşümünü yönetir.
Modül 1
Socket Kavramları ve TCP İstemci/Sunucu
  • OSI/TCP-IP modeli, IP, port ve soket tanımı
  • socket.socket(AF_INET, SOCK_STREAM) ile bind, listen, accept, connect
  • send/sendall/recv ve bayt-string dönüşümü (encode/decode)
  • Echo sunucusu ve basit sohbet uygulaması
  • Soketi kapatma, SO_REUSEADDR ve hata kodları
  • netstat/ss ve telnet/nc ile bağlantıyı gözlemleme
Modül 2
Python Dil Temelleri
  • Değişkenler, int/float/str/bool türleri ve f-string biçimlendirme
  • list, tuple, set ve dict veri yapıları ile kapsamlar (comprehension)
  • if/elif/else, for, while ve break/continue kontrol akışı
  • Fonksiyon tanımı, varsayılan argüman, *args/**kwargs ve lambda
  • Modüller, import yapısı ve standart kütüphaneye genel bakış
  • PEP 8 stil kuralları ve docstring yazımı
Modül 3
Sınıflar, Hata Yönetimi ve Dosya İşlemleri
  • class, __init__, öznitelikler ve __repr__/__str__ metotları
  • Kalıtım, super() ve dataclasses ile veri sınıfları
  • try/except/else/finally ve özel exception sınıfları
  • with ifadesi ve bağlam yöneticileri ile dosya okuma/yazma
  • pathlib ile yol işlemleri, json ve csv modülleri
  • Üreteçler (generator), yineleyiciler ve dekoratörlere giriş
Modül 4
Python Projesi Yapısı ve Paketleme
  • pyproject.toml, src düzeni ve sanal ortam yönetimi
  • pip, pip-tools ve Poetry ile bağımlılık kilitleme
  • logging modülü ile seviyeli günlükleme
  • argparse ve click ile komut satırı araçları
  • Ortam değişkenleri, .env ve yapılandırma yönetimi
  • wheel paketi oluşturma ve özel indekse yayınlama
Günün hedefiKatılımcı UDP iletişimi kurar ve basit ağ araçları geliştirir.
Modül 1
UDP Soketleri ve Ağ Adresleme
  • SOCK_DGRAM, sendto ve recvfrom ile datagram iletişimi
  • TCP ile UDP arasındaki güvenilirlik ve akış farkı
  • Broadcast ve multicast (IP_ADD_MEMBERSHIP) örnekleri
  • socket.gethostbyname, getaddrinfo ve DNS çözümleme
  • IPv4 ve IPv6 (AF_INET6) desteği, ipaddress modülü
  • Basit port tarayıcı ve ping benzeri araç yazımı
Modül 2
Mesaj Çerçeveleme ve Protokol Tasarımı
  • TCP'nin bayt akışı doğası ve kısmi okuma problemi
  • Uzunluk önekli (struct.pack) mesaj çerçeveleme
  • Sınırlayıcı tabanlı (newline) protokoller
  • JSON ve pickle ile veri serileştirme, pickle güvenlik riski
  • Sürüm alanı, başlık yapısı ve hata kodlu protokol
  • Basit dosya aktarım protokolü uygulaması
Modül 3
Çoklu İstemci: Thread, select ve asyncio
  • threading ile istemci başına iş parçacığı modeli
  • socketserver.ThreadingTCPServer kullanımı
  • select ve selectors (epoll/kqueue) ile olay döngüsü
  • asyncio.start_server, StreamReader ve StreamWriter
  • Eşzamanlılık modellerinin ölçeklenebilirlik karşılaştırması
  • Yarış koşulları ve Lock ile paylaşılan durum koruması
Modül 4
SSL/TLS, Güvenlik ve Hata Ayıklama
  • ssl.create_default_context ile TLS istemci/sunucu
  • Sertifika doğrulama, kendi imzalı sertifika ve openssl komutları
  • Zaman aşımı (settimeout), non-blocking mod ve keepalive
  • Girdi doğrulama ve servis reddi risklerine karşı sınırlar
  • Wireshark ile TCP el sıkışması ve payload inceleme
  • Nagle algoritması, TCP_NODELAY ve tampon boyutu ayarı

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
TCP soketleri

Python socket modülüyle TCP istemci ve sunucu yazabilirsiniz

⚙️
Python temelleri

Python'un veri türleri, akış kontrolü ve fonksiyonlarını rahatça kullanabilirsiniz

🔍
Nesne yönelimli Python

sınıf tasarlayıp istisnaları ve dosya işlemlerini düzgün yönetebilirsiniz

📊
Proje yapısı

bağımlılık yönetimi ve paketleme ile sürdürülebilir bir Python projesi kurabilirsiniz

🧩
UDP ve adresleme

UDP datagram ve yayın (broadcast) iletişimini TCP ile kıyaslayarak uygulayabilirsiniz

🚀
Protokol tasarımı

TCP akışı üzerinde mesaj sınırlarını yöneten kendi protokolünüzü tasarlayabilirsiniz

🔒
Eşzamanlı sunucular

thread, selectors ve asyncio ile çok istemcili sunucu yazabilirsiniz

📦
Güvenli soketler

ssl modülüyle şifreli bağlantı kurup soket uygulamalarını Wireshark ile ayıklayabilirsiniz

Kimler İçin Uygundur?

  • Ağ programlamaya başlayan Python geliştiricileri
  • bilgisayar mühendisliği öğrencileri
  • sistem yöneticileri

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Ağ programlamaya başlayan Python geliştiricileri, bilgisayar mühendisliği öğrencileri ve sistem yöneticileri. Ön bilgi beklentileri için eğitimin ön koşullar bölümüne bakabilirsiniz.
Ağ bilgisi olmadan katılabilir miyim?
Evet. Gerekli ağ kavramları (IP, port, DNS) eğitimin başında kısaca anlatılır.
Hangi işletim sistemlerinde çalışılır?
Windows, macOS ve Linux'ta aynı kod çalışır; sadece raw socket örnekleri yetki gerektirir.
Eğitim sonunda sertifika verilir mi?
Katılım ve başarı koşullarını yerine getiren katılımcılara Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir.
Eğitim uygulamalı mı ilerliyor?
Her kavram iki terminalde sunucu ve istemci yazılarak, netstat ve telnet ile gözlemlenerek öğrenilir. Süre 2 gündür; her gün dört modül işlenir.

Sertifikalandırma

Bu eğitim Digital Vizyon Akademi Başarı Sertifikası ile tamamlanır.

Eğitim başında “Ön Test”, bitiminde “Son Test” uygulanarak gelişim ölçümlenir. Değerlendirme formunu dolduran katılımcılar sertifikalarını alır. Sertifikanızın geçerliliğini Sertifika Sorgulama sayfasından doğrulayabilirsiniz.

Örnek Sertifika d Digital Vizyon AKADEMİ KATILIM SERTİFİKASI Bu sertifika [Katılımcı Adı Soyadı] adlı katılımcının aşağıdaki eğitim programını başarıyla tamamladığını belgeler. Socket Programming in Python: Introduction Eğitimi Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

Süre2 gün
SeviyeTemel Seviye
FormatOnline / Yüz Yüze / Hibrit
KonuPython
Sertifika✓ Var
Hemen Bilgi Al
İlgili Eğitimler

Bu Eğitimle Birlikte Tercih Edilenler

PythonAdvanced Python for network engineers Eğitimi
Yazılım Geliştirme Eğitimleri

Advanced Python for network engineers Eğitimi

2 günİleriOnline / Yüz Yüze / Hibrit

Netmiko, NAPALM, Nornir, Jinja2, RESTCONF ve NETCONF ile ağ otomasyonu. Ağ mühendisleri için ileri Python eğitimi Digital Vizyon Akademi'de.

Detayları Gör →
PythonAdvanced Python Topics: Exceptions & Command Line Arguments Eğitimi
Yazılım Geliştirme Eğitimleri

Advanced Python Topics: Exceptions & Command Line Arguments Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

Python istisna yönetimi, ExceptionGroup, logging, argparse, click ve typer ile CLI geliştirme ve paketleme. Digital Vizyon Akademi ileri Python konuları.

Detayları Gör →
PythonAdvanced Python Topics: File Operations in Python Eğitimi
Yazılım Geliştirme Eğitimleri

Advanced Python Topics: File Operations in Python Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

Python pathlib, encoding, CSV, JSON, YAML, ikili dosya, mmap, zipfile ve büyük dosya akış işleme. Uygulamalı Digital Vizyon Akademi ileri Python konuları.

Detayları Gör →
PythonAdvanced Python Topics: Modules & Virtual Environments Eğitimi
Yazılım Geliştirme Eğitimleri

Advanced Python Topics: Modules & Virtual Environments Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

Python import sistemi, paket yapısı, venv, pip, poetry, uv, pyproject.toml, wheel ve bağımlılık yönetimi. Digital Vizyon Akademi ileri Python konuları.

Detayları Gör →
PythonAdvanced Python: Best Practices and Design Patterns Eğitimi
Yazılım Geliştirme Eğitimleri

Advanced Python: Best Practices and Design Patterns Eğitimi

2 günİleriOnline / Yüz Yüze / Hibrit

Python best practices, SOLID, Factory, Strategy, Observer, Decorator, Adapter, dependency injection ve temiz mimari. Digital Vizyon Akademi ileri Python eğitimi

Detayları Gör →
+90 (501) 369 40 14 WhatsApp [email protected] LinkedIn