- 
Kurulumlar:
- Visual Studio Code
 - Git
 - Postman
 - NodeJS
 - Visual Studio Code için Python Extension'u kurun.
 
 - 
Programlama Görevi:
2000 ile 3200 arasında 7'ye bölünebilen ancak 5'in katı olmayan sayıları bulan bir program yazın.
 - 
Faktöriyel Hesaplama:
a. Bir sayının faktöriyelini for döngüsü kullanarak hesaplayan bir program yazın. Sonuçları tek satırda, virgüllerle ayrılmış şekilde yazdırın.
b. Ayni programı recursive olarak yazın.
 - 
Parola Kontrol Programı:
Kullanıcıdan alınan parola için aşağıdaki şartları sağlayan bir program yazın:
- En az bir büyük harf içermeli.
 - En az bir rakam içermeli.
 - Bir noktalama işareti veya matematiksel sembol içermeli.
 - "parola" kelimesi içermemeli.
 - Uzunluğu 7 karakterden fazla, 31 karakterden az olmalı.
 
 - 
Regex ile Parola Kontrolü:
Yukarıdaki parola kontrolünü regex kullanarak yapın. https://regex101.com/ adresinden test edebilirsiniz.
 - 
Regex ile İsim Kontrolü:
İsim, göbek adı (opsiyonel), ve soyisimden oluşan bir kontrol programı yazın. İsimlerin ilk harfi büyük, soyisimler büyük harfle yazılmalıdır.
Geçerli isimler:
- Cemre MENGU
 - Sude Sevval CILOGLU
 
Geçersiz isimler:
- Cemre Mengu
 - Sude Sevval Ciloglu
 - cemre mengu
 - sude
 - Sude
 - cemre MENGU
 
 - 
Tire Ekleme Programı:
Verilen string içindeki her iki tek sayı arasına tire ekleyen bir program yazın. Örneğin parametre 454793 ise çıktı 4547-9-3 olmalıdır.
 - 
Flask ile API Geliştirme:
Flask kütüphanesini kullanarak bir API oluşturun. Postman ve Browser ile sonuçları görüntüleyin. https://flask.palletsprojects.com/en/3.0.x/quickstart/#a-minimal-application
 - 
SQLite Veritabanı Oluşturma:
Python dokümantasyonundaki örnekleri takip ederek bir SQLite veritabanı oluşturun. https://docs.python.org/3/library/sqlite3.html
 - 
GET İsteği ile Veri Çekme:
Flask kullanarak
GET /yolu ile veritabanındanyearvetitlesütunlarını SQL kullanarak çekin ve JSON formatında döndürün. Sonuçlaryearkolonuna göre artan şekilde sıralı olmalıdır. - 
Sorguya Yıl Ekleme:
Yılı query parameter olarak alıp o yıla ait filmleri döndüren bir endpoint oluşturun.
Endpoint bu şekilde olacak:
/movies?year=1983 - 
POST İsteği ile Film Ekleme:
Bir film kaydı oluşturmak için POST isteği kullanın. POST request body içerisinde bu formatta bir json gönderilecek:
{ "year": 2023, "title": "Barbie" } - 
DELETE İsteği ile Film Silme:
Verilen yıldaki tüm filmleri silen bir DELETE isteği yapın.
 - 
Path Param ile Film Silme:
Query param yerine path param kullanarak film silme işlemi yapın.
 - 
Arama Endpointi:
"title" query param alarak film arayan bir endpoint oluşturun.
 - 
React Projesi Oluşturma:
Vite ve Antd ile React uygulaması oluşturun ve projeyi Visual Studio Code içinde açıp çalıştırın. Sonrasında DatePicker bileşenini ekleyin.
 - 
Axios Kütüphanesi ile Veri Listeleme:
Axios kütüphanesini yükleyin ve REST API kullanarak filmleri listeyin.
 - 
Veri Yükleme Butonu:
Tablo başlangıçta boş gelmeli, kullanıcı butona bastığında veriler yüklenmeli.
 - 
Arama İşlevi:
Kullanıcı input ve
/searchendpoint'ini kullanarak tabloda filmleri filtreleyin.GETrequest ile yapılacak. Örnek endpoint/search?title=testQuery param icerisinde verilen değer
titlekolonu içerisinde artılacak (likeile).https://ant.design/components/input#components-input-demo-search-input
 - 
Film Ekleme Formu:
"Ekle" butonuna basıldığında modal içinde form açılmalı ve yeni film bilgileri girildikten sonra kaydedilmeli.
POSTisteği ile yapılacaktır. - 
Film Güncelleme Formu:
"Güncelle" butonuna basıldığında modal içinde form açılmalı ve film bilgileri güncellenebilmelidir.
PUTisteği ile yapılacaktır. - 
Film Export
Kayıtlı filmleri excel,csv gibi formatlarda dışarıya aktar (örneğin Export isimli bir button'a tıklayarak)
 
Ekstra
- Flask yerine FastAPI kullan
 - Java (SpringBoot) ve/veya Golang kullanarak API kısmını tekrar yaz.