Category NodeJS

JavaScript'te Kendi Kendini Çağıran Fonksiyonlar (Self-Invoking Functions)

JavaScript, web geliştiricileri arasında popülerliğini koruyan dinamik ve esnek bir programlama dilidir. Bu dilin sunduğu pek çok özellikten biri de kendi kendini çağıran fonksiyonlardır. Bu makalede, JavaScript’teki kendi kendini çağıran...

ExpressJS - Middleware Nasıl Çalışır?

ExpressJS, Node.js ile web geliştirme yapan neredeyse herkesin hayatı boyunca en az bir kez kullandığı bir framework. Oldukça kolay adapte olabilmemizin yanı sıra, geliştirmeyi de çok kolaylaştırdığı için hızlıca popülerleşmiş...

Node.js - Cheerio ile Web Scraping/Crawling

Regex ile Web Scraping makalesinin devamı niteliğindeki bu yazımızda aynı projeyi bu kez cheerio modülünü kullanarak nasıl yapacağımızı anlatmaya çalışacağım. Cheerio modülü, Node.js içinde jQuery metotlarını kullanmamızı sağlayan bir modüldür....

Node.js - Regex ile Web Scraping/Crawling

Web Scraping/Crawling, bir -ya da daha fazla- web sitesindeki verileri ayıklamak ve uygulama kullanıcılarına uygun hale getirme tekniğinin adıdır. Türkçe’ye Web Kazıma olarak geçse de yaygın olarak web scraping ya...

Node.js - Loglama (Logging)

Loglama, bir uygulamanın en temel ve en önemli parçalarından biridir. Şimdiye kadarki tüm yazılarımızda logları built-in olarak gelen console modülünü kullanarak ekrana basmıştık. Şimdi loglama konusunda biraz daha detaylı inceleme...

Node.js - Generators

Generators, bazı iteratif işlemlerimizi yapmamızı sağlayan fonksiyon türüdür. Generator tipindeki fonksiyonlar, bir döngü (iterasyon) içinde çağrıldıklarında yeni sonuçlar döner. Dönüşü return ile değil yield anahtar kelimesi ile yapılır. Döndürdüğü değerler...

Node.js - Events

Node.js’in yapısına kısaca değindiğimiz Asenkron Fonksiyonlar makalesinde de söylediğimiz gibi; Node.js Single Threaded çalışan ve bir Event Loop üzerinden işlemlerini yürüten bir Javascript run-time environment’tir. Events, bu yapıyı daha iyi...

Node.js - Çevre Değişkenleri (Environment Variables)

Bir önceki yazımızda Node.js ile CLI uygulaması geliştirmeyi ve bu uygulamaya argümanlar ile nasıl veri aktarabileceğimizi anlatmıştım. Bu yazıdaysa aynı işlevi farklı bir biçimde gerçekleştiren ve özellikle büyük uygulamalar geliştirdiğimizde...

Node.js - Komut Satırı Argümanları (Command Line Arguments)

Node.js ile geliştirdiğimiz bir uygulamayı çalıştırırken, uygulama içine argümanlar iletmek basit ama bir o kadar önemli bir işlevdir. Bu basit ama gerekli olan işlev, özellikle bir CLI(Command Line Interface) uygulaması...

Node.js - Modül Oluşturma ve Export

Node.js Temelleri serisinde şimdiye kadar tüm örneklerimizi sadece bir dosya üzerinden anlattık. Ancak bir uygulamayı sadece bir dosya ile geliştiremeyeceğimiz çok açık. Bu nedenle uygulamada kullanacağımız sınıfları, metotları vs. ayrı...

Node.js - Modüller

Node.js Temelleri serisinde bu makalemizde modüllerden bahsedeceğiz. Modüller, belli başlı işler yapan metodları bir arada sunan kütüphanelerdir. Node.js’te built-in modüller olduğu gibi sonradan projemize ekleyebileceğimiz modüller de mevcuttur.

Node.js - Asenkron Fonksiyonlar (Asynchronous Functions)

Node.js Temelleri yazı dizisinde bu makalemizin konusu Asenkron Fonksiyonlar. Daha önce fonksiyonlar konusuna değinmiştik şimdiyse konuyu biraz daha ileri düzeye taşıyalım. Ancak Asenkron fonksiyonları incelemeye başlamadan önce buna neden ihtiyaç...

Node.js - Built-in Methods

Şimdiye kadar makalelerimizde genelde tüm programlama dillerinde var olan ve küçük farklar olsa da kullanımları oldukça benzeyen yapılardan bahsettim. Bu makalemizle birlikte artık daha çok Node.js’e özel sık kullanılan metotlar...

Node.js - Destructuring Assignment

Destructuring Assignment, array ve object tipindeki değişkenlerin içinde bulunan değerleri, ayrı birer değişkene kolayca aktarmamızı sağlayan bir yapıdır. Tüm makale boyunca kullanacağımız dizi ve objemizi görelim.

Node.js - Hata Yakalama (Error Handling)

Hata yakalama, projelerin önemli bir parçasıdır. Node.js’te bir hata oluşması durumunda process çöker ve bu da uygulamamızın kapandığı anlamına gelir. Javascript’te fırlatılan hataların tipleri vardır. Bu tipleri bir tabloda inceleyelim....

Node.js - Kalıtım (Inheritance)

Bir önceki Node.js Temelleri - Sınıflar (Classes) makalemizde sınıf tanımlama, constructor, property, metodlar ve erişim belirteçlerinden bahsetmiştik. Bu yazımızdaysa hedefimiz kalıtım(inheritance) kavramına değinmek ve uygulamalı nasıl ve ne zaman kullanılacağını...

Node.js - Değişken Kapsamları (Variable Scope)

Değişken kapsamları, bir değişkenin erişim alanını ifade eder. Literatürde “değişken kapsamları” ifadesi kullanılmayıp “scope” ya da “variable scope” ifadesi kullanılır. EcmaScript 6’dan önce Javascript’te sadece Global Scope ve Function Scope...

Node.js - Fonksiyonlar (Functions)

Bir uygulama geliştirirken her şeyi tek sayfada, alt alta yazmaya çalıştığınızı, bir matematiksel hesabı onlarca kez yaptığınızı, veritabanından aynı veriyi defalarca çektiğinizi bir düşünün. Bu şekilde yazılmış kodların bakımı da...

Node.js - Döngüler (Loops)

Son makalemizde uygulama içinde koşullar tanımlayarak program akışını nasıl yönlendirebileceğinizi anlatmıştım. Döngüler konusu; değişkenleri, koşulları, operatörleri sıklıkla kullandığımız bir konudur. Bu nedenle buralarda eksiğiniz olduğunu düşünüyorsanız öncelikle onu tamamlamanızı öneririm....

Node.js - Koşullar (Conditions)

Bir önceki yazımızda operatörlerden bahsetmiştik. Bu yazımızdaysa özellikle karşılaştırma operatörlerinin en sık kullanıldığı yer olan koşullar konusuna değineceğiz.

Node.js - Operatörler (Operators)

Daha önceki yazılarımızda Node.js’te değişken tanımlama ve veri tiplerinden bahsetmiştik. Bu yazımızda ise operatörlere değineceğiz. Tüm programlama dillerinin olmazsa olmazlarından biri olan operatörler; aritmetik operatörler, atama operatörleri, karşılaştırma operatörleri, mantıksal...

Node.js - Değişkenler (Variables)

Değişkenler, programlamanın en temel taşlarından biridir. Değişkenler, bellekte saklanan verilere erişmemiz için kullandığımız, verilerin depolandığı bellek adresini ifade eder. Bir değişken tanımlarken hatırlaması kolay ve değişkenin hangi veriyi sakladığını anlatan...

Node.js - Veri Tipleri (Data Types)

Veri tipleri, tüm programlama dillerinde var olan temel taşlardan biridir. Veri tiplerinin programlamada doğru seçilmesi performans ve uygulanabilirlik açısından önemlidir. Tipleri doğru öğrenip uygulamak, geliştirmedeki kaliteyi artıracaktır. En temel yapılardan...

Category Regex

Regex Nedir? Nasıl Çalışır? Kullanım Amacı Nedir?

Regex konusu, yazılım hayatımız boyunca karşımıza çıkacak olan önemli bir konudur. Sadece Javascript’te değil, tüm programlama dillerinde ortak olarak kullanılan bir dildir de diyebiliriz. Dil olarak tanımlamamızın sebebi, kendine özel...

Category Apps

Git Nedir ve Temel Komutları Nelerdir? Başlangıç Rehberi

Git, yazılım geliştirme süreçlerinde kullanılan, dağıtık bir versiyon kontrol sistemidir. Linus Torvalds tarafından 2005 yılında geliştirilen Git, kod değişikliklerini takip etme, geri alma ve birden fazla kişiyle aynı projede çalışma...

Ucuz Domain Satın Alma ve Karşılaştırma

Domain Satın Almanın Önemi Domain satın almak, bir web sitesi kurmanın ilk ve en önemli adımlarından biridir. Ancak, uygun fiyatlı ve ihtiyaca en uygun domaini bulmak, birçok farklı kayıt şirketinin...

Docker'da Farklı YAML Dosyaları Arasında Uygulama Haberleşmesi

Docker, mikroservis mimarilerinde ve konteyner yönetiminde öncü bir araçtır. Ancak, farklı docker-compose.yaml dosyalarında tanımlanmış uygulamaların birbiriyle nasıl haberleşeceği, özellikle yeni başlayanlar için kafa karıştırıcı olabilir. Bu makalede, Docker’da farklı YAML...

TamperMonkey ile Sitelerde Özel Script Çalıştırma

Bazen tarayıcı tabanlı oyunlarda, bazen de sürekli kullandığımız web sitelerindeki bazı alanları kendimize göre düzenlemek isteyebiliyoruz. Bu gibi durumlarda imdadımıza TamperMonkey yetişir. TamperMonkey, bir Chrome eklentisidir ve bir web sitesinde...

Category MongoDB

MongoDB Performans Artırma Yöntemleri

MongoDB, genel olarak oldukça hızlı sorgulama yapmamıza imkan tanıyan bir veritabanıdır. Ancak sakladığı veriler büyüdükçe eğer doğru şekilde indexleme yapılmadıysa performansta ciddi olarak düşüş yaşanır. Bu makaledeki amacımız; mongodb performans...

Category General

10 Dakikada Kendi Blog Siteni Ücretsiz Oluştur

Herkese Merhaba! Bugün sizlerle birlikte GitHub Pages ve Jekyll kullanarak tamamen ücretsiz ve profesyonel bir blog sitesi nasıl kurulur, bunu adım adım inceleyeceğiz. Bu rehberde, hiçbir ücret ödemeden, kendi alan...

Kobo E-Reader'a EPUB Dosyaları Nasıl Aktarılır?

Kobo e-reader’ınızla mükemmel bir okuma deneyimi yaşamak için, sevdiğiniz kitapları cihazınıza aktarmanız gerekir. EPUB formatı, Kobo e-reader’lar için en uyumlu dosya türlerinden biridir. Bu rehberde, Kobo’nuzla EPUB dosyalarını nasıl kolayca...

Google Keyword Planner Nedir?

Google Keyword Planner, dijital pazarlama ve SEO (Arama Motoru Optimizasyonu) çalışmalarında kritik bir rol oynar. Bu araç, Google’ın sunduğu ücretsiz bir hizmet olup, kullanıcıların anahtar kelime araştırması yapmalarına, reklam kampanyaları...

VidIQ Nedir? Nasıl Kullanılır?

VidIQ, YouTube içerik üreticileri ve dijital pazarlamacılar için tasarlanmış, kapsamlı bir video SEO aracıdır. Bu platform, videolarınızın performansını artırmak, daha fazla izlenme ve abone kazanmak için gerekli analizleri ve önerileri...

Category AI

LangGraph ile Reflection AI Agent Nasıl Yapılır?

Merhaba arkadaşlar! Bugün LangGraph kütüphanesini kullanarak, kendi kendini değerlendirebilen ve iyileştirebilen bir AI Agent geliştireceğiz.

En Çok Kullanılan 5 AI Agent Design Pattern

Herkese merhaba! Bugün sizlerle yapay zeka dünyasının çok önemli bir konusunu konuşacayız: AI agent’ler ve bunların design pattern’leri.

Youtube Videosuna Yapay Zeka ile Dublaj Nasıl Yapılır?

Herkese merhaba, bugün YouTube videolarınıza yapay zekâ kullanarak nasıl ücretsiz dublaj yapabileceğimizi konuşacağız.

🚀 Deepseek R1’i WebLLM ile Tarayıcınızda Çalıştırın!

Bugün yapay zeka dünyasına yeni bir soluk getiren Deepseek R1 modelini konuşacağız! Bu model, özellikle kodlama, metin üretimi ve analitik yetenekleriyle dikkat çekiyor. Peki, onu diğer modellerden ayıran özellikler neler?...