6 puan yazan xguru 2024-11-07 | 4 yorum | WhatsApp'ta paylaş
  • GraphQL ve SQL'den ilham alan, Array ve Object için bir sorgu motoru
  • GraphQL tarzı Array.select() ve Array.where() özelliklerini JavaScript'e getirip kullanılmasını sağlayan bir kütüphane
from(data)  
.where({  
	friends: 'John'  
})  
.select({  
	name: o => o.name+' '+o.lastName  
})  

4 yorum

 
brain1401 2024-11-07

Yukarıdaki koda bakınca aklıma Drizzle ORM geliyor

 
wogns3623 2024-11-08

Drizzle ORM’yi yakın zamanda öğrendim; mevcut JS ekosistemindeki Knex veya TypeORM gibi sorgu oluşturucu odaklı bir ORM mi?

 
brain1401 2024-11-09

Drizzle, mevcut ORM'lerden biraz farklı bir yaklaşım benimsiyor. TypeScript için optimize edilmiş "ince bir SQL katmanı" olarak düşünebilirsiniz.

Knex ile karşılaştırıldığında, söz dizimi ve şema tanımlama biçimi benzer görünebilir ama TypeScript desteği tarafında büyük bir fark var. Drizzle, tip güvenliğine çok daha fazla odaklanıyor. Knex'te şema ve tip tanımlarını ayrı ayrı yapmak gerekirken, Drizzle'da tek bir tanımla hem şema hem de tipler üretiliyor; bu da daha kullanışlı oluyor ve daha az hataya yol açıyor.

TypeORM ile kıyaslarsak, TypeORM daha ağır ve geleneksel bir ORM'e daha yakın. Drizzle ise daha hafif ve performansı daha iyi; özellikle de serverless ortamlarda avantaj sağlıyor. Gerçek benchmark'lara bakıldığında Drizzle'ın TypeORM veya Prisma'dan birkaç kat daha hızlı olduğu söyleniyor.

Ek olarak ilginç bir nokta da Drizzle'ın migration yönetimini iyi desteklemesi. CLI aracı olan Drizzle Kit ile migration dosyalarını otomatik olarak oluşturabiliyor, geliştirme aşamasında ise push komutuyla şema değişikliklerini kolayca uygulayabiliyorsunuz.

Sonuç olarak Drizzle'ı, TypeScript dostu olmasının yanında hafif ve yüksek performanslı modern bir query builder olarak görmek mümkün. Özellikle tip güvenliği ve performansa önem verenlere tavsiye ederim!

 
brain1401 2024-11-09

Perplexity'ye sormanın sonucu bu.