-
-
Notifications
You must be signed in to change notification settings - Fork 6.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
🌐 Update Turkish translation for docs/tr/docs/features.md
#10492
Changes from all commits
fba0af5
790b113
a01cd4c
f56704f
573c580
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,24 @@ | ||
# Özelikler | ||
--- | ||
hide: | ||
- navigation | ||
--- | ||
|
||
## FastAPI özellikleri | ||
# Özellikler | ||
|
||
**FastAPI** sana bunları sağlıyor | ||
## FastAPI Özellikleri | ||
|
||
### Açık standartları temel alır | ||
**FastAPI** bize şu özellikleri sunuyor: | ||
|
||
* API oluşturma işlemlerinde <a href="https://github.com/OAI/OpenAPI-Specification" class="external-link" target="_blank"><strong>OpenAPI</strong></a> buna <abbr title="also known as: endpoints, routes">path</abbr> <abbr title=" HTTP metodları olarak bilinen, POST, GET, PUT, DELETE">operasyonları </abbr>parametreleri, body talebi, güvenlik gibi şeyler dahil olmak üzere deklare bunların deklare edilmesi. | ||
* Otomatik olarak data modelinin <a href="http://json-schema.org/" class="external-link" target="_blank"><strong>JSON Schema</strong></a> ile beraber dokümante edilmesi (OpenAPI'n kendisi zaten JSON Schema'ya dayanıyor). | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
|
||
* Titiz bir çalışmanın sonucunda yukarıdaki standartlara uygun bir framework oluşturduk. Standartları pastanın üzerine sonradan eklenmiş bir çilek olarak görmedik. | ||
* Ayrıca bu bir çok dilde kullanılabilecek **client code generator** kullanımına da izin veriyor. | ||
### Açık Kaynak Standartlar Üzerine Kurulu | ||
|
||
### Otomatik dokümantasyon | ||
* <a href="https://github.com/OAI/OpenAPI-Specification" class="external-link" target="_blank"><strong>OpenAPI</strong></a> oluşturduğumuz <abbr title="path, endpoints yada routes olarak da isimlendirilebilir">adres</abbr> <abbr title="HTTP metodları olarak bilinen, POST, GET, PUT, DELETE">operasyonlarını </abbr>parametreleri, gövde talebi, güvenlik gibi şeyler dahil olmak üzere bunların tanımlamalarının yapılması. | ||
* Otomatik olarak veri modelinin <a href="http://json-schema.org/" class="external-link" target="_blank"><strong>JSON Schema</strong></a> ile beraber dökümante edilmesi (OpenAPI'n kendisi zaten JSON Schema'ya dayanıyor). | ||
* Titiz bir çalışmanın sonucunda yukarıdaki standartlara uygun bir framework oluşturduk. Standartları pastanın üzerine sonradan eklenmiş bir çilek olarak görmedik.* <a href="https://github.com/OAI/OpenAPI-Specification" class="external-link" target="_blank"><strong>OpenAPI</strong></a> oluşturduğumuz <abbr title="path, endpoints yada routes olarak da isimlendirilebilir">adres</abbr> <abbr title="HTTP metodları olarak bilinen, POST, GET, PUT, DELETE">operasyonlarını </abbr>parametreleri, gövde talebi, güvenlik gibi şeyler dahil olmak üzere bunların tanımlamalarının yapılması. | ||
* Ayrıca bu bir çok dilde kullanılabilecek <abbr title="client code generation">**istemci taraflı kod oluşturucu**</abbr> kullanımına da izin veriyor. | ||
|
||
### Otomatik Dokümantasyon | ||
|
||
OpenAPI standartlarına dayalı olan bir framework olarak, geliştiricilerin birden çok seçeneği var, varsayılan olarak gelen 2 farklı interaktif API dokümantasyonu ve web kullanıcı arayüzü var. | ||
|
||
Etkileşimli API Dokümantasyonu ve Web Kullanıcı Arayüzü: Bu framework OpenAPI standartlarına dayalı olduğu için, birden fazla opsiyonumuz var ve bunlardan iki tanesi kullanımınıza hazır. | ||
|
||
BilalAlpaslan marked this conversation as resolved.
Show resolved
Hide resolved
|
||
* <a href="https://github.com/swagger-api/swagger-ui" class="external-link" target="_blank"><strong>Swagger UI</strong></a> interaktif olarak API'ınızı tarayıcı üzerinden çağırıp test edebilmenize olanak sağlıyor. | ||
BilalAlpaslan marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
|
@@ -25,23 +28,21 @@ OpenAPI standartlarına dayalı olan bir framework olarak, geliştiricilerin bir | |
|
||
![ReDoc](https://fastapi.tiangolo.com/img/index/index-06-redoc-02.png) | ||
|
||
### Sadece modern Python | ||
|
||
Tamamiyle standartlar **Python 3.8**'nın type hintlerine dayanıyor (Pydantic'in sayesinde). Yeni bir syntax öğrenmene gerek yok. Sadece modern Python. | ||
### Sadece Modern Python | ||
|
||
Tamamen **Python 3.6**'nın tip belirteçlerine dayanıyor (Pydantic'in sayesinde). Yeni bir syntax öğrenmene gerek yok. Sadece modern Python. | ||
|
||
Eğer Python type hintlerini bilmiyorsan veya bir hatırlatmaya ihtiyacın var ise(FastAPI kullanmasan bile) şu iki dakikalık küçük bilgilendirici içeriğe bir göz at: [Python Types](python-types.md){.internal-link target=_blank}. | ||
Eğer Python tip belirteçlerini bilmiyorsan veya bir hatırlatmaya ihtiyacın var ise (FastAPI kullanmasan bile) şu iki dakikalık küçük bilgilendirici içeriğe bir göz atabilirsin: [Python Types](python-types.md){.internal-link target=_blank}. | ||
|
||
Standart Python'u typelarını belirterek yazıyorsun: | ||
Standart Python'u tiplerini belirterek yazıyorsun: | ||
|
||
```Python | ||
from typing import List, Dict | ||
from datetime import date | ||
|
||
from pydantic import BaseModel | ||
|
||
# Değişkeni str olarak belirt | ||
# ve o fonksiyon için harika bir editör desteği al | ||
# Değişkeni str olarak belirtelim | ||
# Bu bize o fonksiyon için harika bir editör desteği vericek | ||
def main(user_id: str): | ||
return user_id | ||
|
||
|
@@ -67,18 +68,18 @@ second_user_data = { | |
my_second_user: User = User(**second_user_data) | ||
``` | ||
|
||
!!! info | ||
!!! info "Bilgi" | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 57'de cümle sonunda ":" unutulmuş. |
||
`**second_user_data` şu anlama geliyor: | ||
|
||
Key-Value çiftini direkt olarak `second_user_data` dictionarysine kaydet , yaptığın şey buna eşit olacak: `User(id=4, name="Mary", joined="2018-11-30")` | ||
Anahtar-Değer çiftini doğrudan `second_user_data` sözlüğüne kaydet, bu işlemin sonucunda alacağınız çıktı: `User(id=4, name="Mary", joined="2018-11-30")` | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
|
||
|
||
### Editor desteği | ||
### Editor Desteği | ||
|
||
Bütün framework kullanılması kolay ve sezgileri güçlü olması için tasarlandı, verilen bütün kararlar geliştiricilere en iyi geliştirme deneyimini yaşatmak üzere, bir çok editör üzerinde test edildi. | ||
Bütün framework kolay ve sezgisel olması için tasarlandı, verilen bütün kararlar geliştiricilere en iyi geliştirme deneyimini yaşatmak üzere tasarlandı ve bir çok editör üzerinde test edildi. | ||
BilalAlpaslan marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
Son yapılan Python geliştiricileri anketinde, açık ara <a href="https://www.jetbrains.com/research/python-developers-survey-2017/#tools-and-features" class="external-link" target="_blank">en çok kullanılan özellik "oto-tamamlama" idi.</a>. | ||
Son yapılan Python geliştiricileri anketinde, açık ara <a href="https://www.jetbrains.com/research/python-developers-survey-2017/#tools-and-features" class="external-link" target="_blank">en çok kullanılan özellik "otomatik tamamlama" idi.</a>. | ||
|
||
Bütün **FastAPI** frameworkü oto-tamamlama açısından geliştiriciyi tatmin etmek üzerine tasarlandı. Otomatik tamamlama her yerde çalışıyor. | ||
**FastAPI** frameworkü baştan sona otomatik tamamlama açısından geliştiriciyi tatmin etmek üzerine tasarlandı. Otomatik tamamlama her yerde çalışıyor. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. ...üzere tasarlandı... |
||
|
||
Dokümantasyona tekrardan çok nadir olarak geleceksin. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. "Dokümantasyona tekrar tekrar bakmanıza bile gerek kalmayacak." Bu daha iyi bir ifade olabilir mi? |
||
|
||
|
@@ -92,8 +93,7 @@ Editörün sana nasıl yardım ettiğine bir bak: | |
|
||
![editor support](https://fastapi.tiangolo.com/img/pycharm-completion.png) | ||
|
||
|
||
Daha önceden düşünüp en imkansız diyebileceğin durumlarda bile otomatik tamamlama alacaksın, örnek olarak `price` JSON body içerisinde (nested bir JSON body de olabilirdi.) direkt olarak istekten geliyor, bu durumda bile oto-tammalama sağlıyor. | ||
Daha önceden düşünüp en imkansız diyebileceğin durumlarda bile otomatik tamamlama alacaksın, örnek olarak `price` JSON içerisinde (iç içer bir JSON'da olabilirdi.) direkt olarak istekten geliyor, bu durumda bile otomatik tamamlama sağlıyor. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
|
||
|
||
Artık key isimlerini yanlış yazma, dokümantasyona dönüp deliler gibi yukarı aşağı sayfada gezmek ve en sonunda `username` mi yoksa `user_name` mi kullandım gibi sorular yok. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
|
||
|
||
|
@@ -103,106 +103,101 @@ Her şey için mantıklı bir **varsayılanı** var. Parametrelerini opsiyonel o | |
|
||
Hepsi varsayılan olarak **çalışıyor**. | ||
|
||
|
||
### Doğrulama | ||
|
||
* Neredeyse bütün (ya da hepsi?) Python **data typeları** için doğrulama, kapsadıkları: | ||
* JSON objeleri (`dict`). | ||
* JSON array (`list`) item type'ı belirtirken. | ||
* Neredeyse bütün (ya da hepsi?) Python **veri tipleri** için doğrulama, kapsadıkları: | ||
* JSON nesneleri (`dict`). | ||
* JSON array (`list`) item tipini belirtirken. | ||
* String (`str`) parametresi, minimum ve maksimum uzunluk gibi sınırlandırmalar yaparken. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
|
||
* Numaralar (`int`, `float`) maksimum ve minimum gibi sınırlandırmalar yaparken. | ||
|
||
* Bunlar gibi en egzotik typelarla bile doğrulama yapabiliyorsunuz.: | ||
* Bunlar gibi sık kullanılmayan tiplerle bile doğrulama yapabiliyorsunuz: | ||
* URL. | ||
* Email. | ||
* UUID. | ||
* ...ve diğerleri. | ||
|
||
Bütün doğrulama olayları çok güçlü bir kütüphane sayesinde yapılıyor, **Pydantic**. | ||
|
||
### Güvenlik ve kimlik doğrulama | ||
### Güvenlik ve Kimlik Doğrulama | ||
|
||
Güvenlik ve doğrulama database ve data modellerinden taviz vermeden entegre edilebilir durumda. | ||
Güvenlik ve doğrulama veritabanı ve veri modellerinden taviz vermeden entegre edilebilir durumda. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
|
||
|
||
Bütün güvenlik şemaları OpenAPI'da tanımlanmış durumda, kapsadıkları: | ||
|
||
* HTTP Basic. | ||
* **OAuth2** (ve **JWT tokenleriyle** beraber). Bu öğretici içeriğe göz atabilirsin [OAuth2 with JWT](tutorial/security/oauth2-jwt.md){.internal-link target=_blank}. | ||
* API anahtarları: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Buranın İngilizce versiyonu |
||
* Headerlar. | ||
* Query parametreleri. | ||
* Cookies, vs. | ||
* Sorgu parametreleri. | ||
* Çerezler vb | ||
|
||
Bütün güvenlik özellikleri Starlette'den geliyor (**session cookies'de** dahil olmak üzere). | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
|
||
|
||
Bütün hepsi tekrardan kullanılabilir aletler ve bileşenler olarak, kolayca sistemlerinize, data depolarınıza, ilişkisel ve NoSQL databaselerinize entegre edebileceğiniz şekilde yapıldı. | ||
Bunların tamamı tekrardan kullanılabilir araçlar ve bileşenler olarak, sistemlerinize, veri depolarınıza, ilişkisel ve NoSQL veritabanlarınıza kolayca entegre edebileceğiniz şekilde yapıldı | ||
|
||
### Dependency injection | ||
### Bağımlılık Enjeksiyonu | ||
|
||
FastAPI'ın inanılmaz derecede kullanımı kolay, fakat inanılmaz derecede güçlü <abbr title='"components", "resources", "services", "providers" olarak da bilinen'><strong>Dependency Injection </strong></abbr> sistemi var. | ||
FastAPI'ın inanılmaz derecede kullanımı kolay, fakat inanılmaz derecede güçlü <abbr title='"bileşen", "kaynak", "servis", "sağlayıcı" olarak da bilinen'><strong>Bağımlılık Enjeksiyonu </strong></abbr> sistemi var. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
|
||
|
||
* Dependencylerin bile dependencies'i olabiliyor, FastAPI bunun için **graph of "dependency"** yaratıyor. | ||
* Bağımlılıkların bile bağımlılıkları olabiliyor, FastAPI bunun için **"bağımlılık" grafiği** oluşturuyor. | ||
* Hepsi **otomatik olarak** FastAPI tarafından hallediliyor. | ||
* Bütün zorunlulukların gelen datalara bağlı olarak farklı gereksinimleri olabiliyor, ilave path operasyonlarının kısıtlamaları ve otomatik dokümantasyonu da ayrıca yapılıyor . | ||
* Path operasyonu parametreleri içerisinde belirtilen gereksinimler için bile **Otomatik doğrulama** yapılabiliyor. | ||
* Kompleks kimlik doğrulama sistemleri için destek, **database bağlantıları**, vs. | ||
* **Taviz yok** hiçbir şeyden taviz vermeden, database frontend vs. Bütün hepsinin kolayca entegre edilebiliyor. | ||
|
||
### Sınırsız "plug-inler" | ||
* Bütün zorunlulukların gelen datalara bağlı olarak farklı gereksinimleri olabiliyor, ilave yol operasyonlarının kısıtlamaları ve otomatik dokümantasyonu da ayrıca yapılıyor . | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Doküman genelinde hala bir |
||
* Yol operasyonu parametreleri içerisinde belirtilen gereksinimler için bile **Otomatik doğrulama** yapılabiliyor. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yol operasyonu kullanımı yerine adres operasyonu kullanımını tercih etmiştik, yol olan yerleri düzeltebilir miyiz? Üst satırda da var. |
||
* Kompleks kimlik doğrulama sistemleri için destek, **veritabanı bağlantıları**, vb. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Karmaşık desek daha iyi olmaz mı? |
||
* **Taviz yok** hiçbir şeyden taviz vermeden, database frontend vb. Bütün hepsinin kolayca entegre edilebiliyor. | ||
|
||
Başka bir deyişle, plug-inlere ihtiyacımız yok, import edip direkt olarak kullanmaya başlayabiliriz. | ||
### Sınırsız "Eklenti" | ||
|
||
Bütün entegrasyonlar kullanımı kolay olmak üzere (zorunluluklar ile beraber) tasarlandı, sen bir "plug-in" yaratıp 2 satır kod ile, *path operasyonlarında* kullandığımız syntax ve aynı yapı ile koduna entregre edebilirsin. | ||
Başka bir deyişle, eklentilere ihtiyacımız yok, import edip direkt olarak kullanmaya başlayabiliriz. | ||
|
||
Bütün entegrasyonlar kullanımı kolay olmak üzere (zorunluluklar ile beraber) tasarlandı, sen bir "eklenti" oluşturup 2 satır kod ile, *yol operasyonlarında* kullandığımız syntax ve aynı yapı ile koduna entregre edebilirsin. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. syntax => sözdizimi |
||
|
||
### Test edildi | ||
### Tamamen Test Edilmiş ve Güvenilir | ||
|
||
* 100% <abbr title="Kodun ne kadarının test edildiği">test coverage</abbr>. | ||
* 100% <abbr title="Python type annotations, with this your editor and external tools can give you better support">typeları belirtilmiş</abbr> codebase. | ||
* FastAPI ile yapılan bir çok proje insanlar tarafından kullanılıyor. | ||
* %100 <abbr title="Kodun ne kadarının test edildiği">testle kapsanmış</abbr>. | ||
* %100 <abbr title="Python tip belirteçleri bazı kod editörleri ve araçlarda daha iyi destek sunar">tipleri belirtilmiş</abbr> kod tabanı. | ||
* Son kullanıcılar tarafından kullanılan FastAPI ile geliştirilmiş bir çok proje bulunuyor. | ||
|
||
## Starlette özellikleri | ||
## Starlette Özellikleri | ||
|
||
**FastAPI**, <a href="https://www.starlette.io/" class="external-link" target="_blank"><strong>Starlette</strong></a> ile tamamiyle uyumlu ve üzerine kurulu. Yani FastAPI üzerine ekleme yapacağınız herhangi bir Starlette kodu da çalışacaktır. | ||
|
||
`FastAPI` aslında `Starlette`'nin bir sub-class'ı. Eğer Starlette'nin nasıl kullanılacağını biliyor isen, çoğu işlevini aynı şekilde yapıyor. | ||
`FastAPI` aslında `Starlette`'nin alt katmanında kullanan bir üst framework. Eğer Starlette'nin nasıl kullanılacağını biliyorsanız, çoğu işlevini aynı şekilde yapıyor. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. FastAPI aslında Starlette'i genişleten bir Framework. |
||
|
||
**FastAPI** ile beraber **Starlette**'nin bütün özelliklerine de sahip olacaksınız (FastAPI aslında Starlette'nin steroid basmış hali): | ||
|
||
* Gerçekten etkileyici bir performansa sahip.Python'un ise en hızlı frameworklerinden bir tanesi, <a href="https://github.com/encode/starlette#performance" class="external-link" target="_blank">**NodeJS** ve **Go** ile ise eşdeğer performansa sahip.</a>. | ||
* Gerçekten etkileyici bir performansa sahip. Python'un ise en hızlı frameworklerinden bir tanesi, <a href="https://github.com/encode/starlette#performance" class="external-link" target="_blank">**NodeJS** ve **Go** ile ise eşdeğer performansa sahip.</a>. | ||
* **WebSocket** desteği. | ||
* **GraphQL** desteği. | ||
* Kullanım halinde arka plan işlevleri. | ||
* Başlatma ve kapatma eventleri(startup and shutdown). | ||
* Test sunucusu HTTPX üzerine kurulu. | ||
* **CORS**, GZip, Static dosyalar, Streaming responseları. | ||
* **Session and Cookie** desteği. | ||
* 100% test kapsayıcılığı. | ||
* 100% typeları belirtilmiş codebase. | ||
* Çalışma anında arka planda iş parçacıkları çalıştırabilme imkanı. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Çift boşluk kullanılmış, bir kaç yerde de gördüm. Düzeltebilir miyiz? |
||
* Başlatma ve kapatma anında kod çalıştırabilme (startup and shutdown). | ||
* HTTPX kütüphanesi üzerine kurulu test sistemi sunar. | ||
* **CORS**, GZip, Static dosyalar, Streaming yanıtları. | ||
* **Oturum and Çerez** desteği. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Session'ı oturum olarak çevirmişiz, mükemmel. Dokümanın genelinde kullanılan session kullanımlarını oturum olarak güncelleyebilir miyiz? |
||
* Kod tabanının tamamen (100%) test ile kapsanmıştır. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Hatalı yüzde yazımı. |
||
* Kod tabanının tamamen (100%) tip belirteçleriyle desteklenmiştir. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Hatalı yüzde yazımı. |
||
|
||
## Pydantic özellikleri | ||
## Pydantic Özellikleri | ||
|
||
**FastAPI** ile <a href="https://pydantic-docs.helpmanual.io" class="external-link" target="_blank"><strong>Pydantic</strong></a> tamamiyle uyumlu ve üzerine kurulu. Yani FastAPI üzerine ekleme yapacağınız herhangi bir Pydantic kodu da çalışacaktır. | ||
**FastAPI** <a href="https://pydantic-docs.helpmanual.io" class="external-link" target="_blank"><strong>Pydantic</strong></a> ile tamamen uyumlu ve üzerine kurulu. Sonuç olarak sahip olduğunuz herhangi bir Pydantic kodu FastAPI ile birlikte çalışacaktır. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Fazladan boşluk kullanımı. |
||
|
||
Bunlara Pydantic üzerine kurulu <abbr title="Object-Relational Mapper">ORM</abbr> databaseler ve , <abbr title="Object-Document Mapper">ODM</abbr> kütüphaneler de dahil olmak üzere. | ||
Bunlara Pydantic üzerine kurulu <abbr title="Object-Relational Mapper">ORM</abbr> veritabanları ve , <abbr title="Object-Document Mapper">ODM</abbr> kütüphaneler de dahil olmak üzere. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Virgülden önce boşluk hatası. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Şeklinde güncelleyebilir miyiz? |
||
|
||
Bu ayrıca şu anlama da geliyor, bir çok durumda requestten gelen objeyi **direkt olarak database**'e her şeyi otomatik olarak doğrulanmış bir biçimde aktarabilirisin. | ||
Bu ayrıca şu anlama da geliyor, bir çok durumda requestten gelen nesneyi **direkt olarak database**'e her şeyi otomatik olarak doğrulanmış bir biçimde aktarabilirisin. | ||
|
||
Aynı şekilde, databaseden gelen objeyi de **direkt olarak isteğe** de tamamiyle doğrulanmış bir biçimde gönderebilirsiniz. | ||
Aynı şekilde, veritabanından gelen nesneyi de **direkt olarak isteğe** de tamamiyle doğrulanmış bir biçimde gönderebilirsiniz. | ||
|
||
**FastAPI** ile beraber **Pydantic**'in bütün özelliklerine sahip olacaksınız (FastAPI data kontrolünü Pydantic'in üzerine kurduğu için): | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. data => veri |
||
|
||
* **Kafa karıştırmaz**: | ||
BilalAlpaslan marked this conversation as resolved.
Show resolved
Hide resolved
|
||
* Farklı bir syntax öğrenmenize gerek kalmaz, | ||
* Eğer Python typelarını nasıl kullanacağını biliyorsan Pydantic kullanmayı da biliyorsundur. | ||
* Farklı bir sözyazımı öğrenmenize gerek kalmaz, | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Bu satır sonunda virgül, sonraki satırların sonunda nokta kullanılmış. Sözyazımı doğru bir kullanım mı? |
||
* Eğer Python tiplerini nasıl kullanacağını biliyorsan Pydantic kullanmayı da biliyorsundur. | ||
* Kullandığın geliştirme araçları ile iyi çalışır **<abbr title="Integrated Development Environment, kod editörüne benzer">IDE</abbr>/<abbr title="Code errorlarınızı inceleyen program">linter</abbr>/brain**: | ||
* Pydantic'in veri yapıları aslında sadece senin tanımladığın classlar; Bu yüzden doğrulanmış dataların ile otomatik tamamlama, linting ve mypy'ı kullanarak sorunsuz bir şekilde çalışabilirsin | ||
* **Hızlı**: | ||
* <a href="https://pydantic-docs.helpmanual.io/benchmarks/" class="external-link" target="_blank">Benchmarklarda</a>, Pydantic'in diğer bütün test edilmiş bütün kütüphanelerden daha hızlı. | ||
* Pydantic'in veri yapıları aslında sadece senin tanımladığın classlar; Bu yüzden doğrulanmış dataların ile otomatik tamamlama, linting ve mypy'ı kullanarak sorunsuz bir şekilde çalışabilirsin. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
|
||
* **En kompleks** yapıları bile doğrula: | ||
* Hiyerarşik Pydantic modellerinin kullanımı ile beraber, Python `typing`’s `List` and `Dict`, vs gibi şeyleri doğrula. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Burayı dikkatlice okuyup tekrar çevirmeni tavsiye ediyorum, çevirmeyi unuttuğumuz yerler var. |
||
* Doğrulayıcılar en kompleks data şemalarının bile temiz ve kolay bir şekilde tanımlanmasına izin veriyor, ve hepsi JSON şeması olarak dokümante ediliyor | ||
* Pydantic, JSON objen ne kadar derin (nested) olursa olsun doğrulamasını ve gösterimini yapıyor | ||
* Doğrulayıcılar en kompleks data şemalarının bile temiz ve kolay bir şekilde tanımlanmasına izin veriyor, ve hepsi JSON şeması olarak dokümante ediliyor. | ||
* Pydantic, JSON nesnen ne kadar derin (nested) olursa olsun doğrulamasını ve gösterimini yapıyor. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Dokümanın sonunda bir tane boş satır bırakabilir miyiz lütfen? |
||
* **Genişletilebilir**: | ||
* Pydantic özelleştirilmiş data tiplerinin tanımlanmasının yapılmasına izin veriyor ayrıca validator decoratorü ile senin doğrulamaları genişletip, kendi doğrulayıcılarını yazmana izin veriyor. | ||
* 100% test kapsayıcılığı. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Boşlukları lütfen abbr etiketinin dışında bırakalım.