Node.js vs Deno
Node.js versus Deno: JavaScript runtime maturity, TypeScript support, security model, package ecosystem, and which fits your modern backend stack.
Python'ın en hızlı web framework'ü
Node.js'in minimalist web framework'ü
# FastAPI - Kullanıcı CRUD API
from fastapi import FastAPI, HTTPException
from pydantic import BaseModel, EmailStr
app = FastAPI(title="Kullanıcı API")
class UserCreate(BaseModel):
name: str
email: EmailStr
age: int
class UserResponse(UserCreate):
id: int
users_db: dict[int, UserResponse] = {}
@app.post("/users", response_model=UserResponse, status_code=201)
async def create_user(user: UserCreate):
user_id = len(users_db) + 1
db_user = UserResponse(id=user_id, **user.model_dump())
users_db[user_id] = db_user
return db_user
@app.get("/users/{user_id}", response_model=UserResponse)
async def get_user(user_id: int):
if user_id not in users_db:
raise HTTPException(status_code=404, detail="Kullanıcı bulunamadı")
return users_db[user_id]// Express.js - Kullanıcı CRUD API (TypeScript)
import express, { Request, Response } from 'express';
const app = express();
app.use(express.json());
interface User {
id: number;
name: string;
email: string;
age: number;
}
const usersDb: Map<number, User> = new Map();
let nextId = 1;
app.post('/users', (req: Request, res: Response) => {
const { name, email, age } = req.body;
if (!name || !email || !age) {
return res.status(400).json({ error: 'Eksik alan' });
}
const user: User = { id: nextId++, name, email, age };
usersDb.set(user.id, user);
res.status(201).json(user);
});
app.get('/users/:id', (req: Request, res: Response) => {
const user = usersDb.get(Number(req.params.id));
if (!user) return res.status(404).json({ error: 'Bulunamadı' });
res.json(user);
});
app.listen(3000);FastAPI, özellikle ML/AI entegrasyonu ve otomatik dokümantasyon isteyen Python ekipleri için mükemmel bir tercih. Express.js ise JavaScript ekosistemiyle çalışan, esnek ve hızlı prototipleme isteyen projeler için hâlâ en yaygın tercih olmaya devam ediyor. Dil tercihi genellikle belirleyici faktördür.
Ücretsiz Danışmanlık AlBu yazının en değerli bilgisi
Bu ipucu, yazının en önemli çıkarımını içeriyor.
Haftalık Swift tips, SwiftUI tricks ve iOS best practices. Spam yok, sadece değerli içerik.
Gizliliğinize saygı duyuyoruz. İstediğiniz zaman abonelikten çıkabilirsiniz.
FastAPI, Starlette ve Uvicorn üzerine inşa edilmiştir. TechEmpower benchmark'larında Node.js/Express'e yakın veya üstünde performans gösterir. Async endpoint'lerde IO yoğun işlemlerde Node.js ile rekabet edebilir.