<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Mehmet's Blog]]></title><description><![CDATA[Passionate software engineer with a flair for creating elegant solutions to complex problems. When I'm not coding, you can find me exploring the outdoors, learn]]></description><link>https://blog.coskun.dev</link><generator>RSS for Node</generator><lastBuildDate>Tue, 14 Apr 2026 02:43:22 GMT</lastBuildDate><atom:link href="https://blog.coskun.dev/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[NestJS: Express ve Angular benzerliğiyle Node.js'i yeniden tanımlayan bir framework]]></title><description><![CDATA[NestJS, Node.js tabanlı web uygulamalarının geliştirilmesine yönelik bir frameworktir. Express ve Angular gibi popüler teknolojilerin en iyi özelliklerini birleştirerek Node.js dünyasında yeni bir çözüm sunar. Bu yazıda, NestJS'in Express ve Angular ...]]></description><link>https://blog.coskun.dev/nestjs-ile-esnek-ve-guvenli-web-uygulamalari-gelistirme</link><guid isPermaLink="true">https://blog.coskun.dev/nestjs-ile-esnek-ve-guvenli-web-uygulamalari-gelistirme</guid><category><![CDATA[nestjs]]></category><category><![CDATA[TypeScript]]></category><category><![CDATA[GraphQL]]></category><category><![CDATA[Express.js]]></category><category><![CDATA[Microservices]]></category><dc:creator><![CDATA[Mehmet Coşkun]]></dc:creator><pubDate>Fri, 10 Feb 2023 13:00:04 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1676030764856/d99a37fa-3d06-487b-a7ef-81fac600b491.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>NestJS, Node.js tabanlı web uygulamalarının geliştirilmesine yönelik bir frameworktir. Express ve Angular gibi popüler teknolojilerin en iyi özelliklerini birleştirerek Node.js dünyasında yeni bir çözüm sunar. Bu yazıda, NestJS'in Express ve Angular benzerliği, TypeScript desteği, modüler yapısı, microservices desteği ve testing odaklı yaklaşımı hakkında bilgi vereceğiz.</p>
<h3 id="heading-express-benzerligi">Express Benzerliği</h3>
<p>NestJS, Express framework'ünün yapısını ve Angular'daki çok modüllü yapısını birleştirir. Bu, NestJS'in Express'in kolay kullanımı ve Angular'ın esnekliğini sunmasını sağlar. Ayrıca, NestJS, Express gibi middleware tabanlı bir yapı sunar ve bu middleware'leri kolayca tanımlayabilmenize olanak tanır.</p>
<h3 id="heading-typescript-destegi">TypeScript Desteği</h3>
<p>NestJS, TypeScript dili ile üzerine inşa edilmiştir. TypeScript, JavaScript'in bir superset'idir ve tip tanımlamaları gibi gelişmiş özellikler sunar. Bu, kodun daha güvenli ve anlaşılabilir olmasını sağlar ve hata oranını azaltır. NestJS, TypeScript desteği sayesinde geliştirme sürecini daha kolay ve güvenli hale getirir.</p>
<h3 id="heading-moduler-yapi">Modüler Yapı</h3>
<p>NestJS, modüler bir yapı sunar ve bu modüller arasında kolayca entegrasyon sağlar. Proje büyüdükçe ve ihtiyaçlar değiştikçe, modüllerin eklenmesi veya değiştirilmesi kolaydır. Bu, projeyi kolayca genişletmenize olanak tanır ve zamanla büyüyen ve karmaşık hale gelen projelerin yönetimini kolaylaştırır.</p>
<h3 id="heading-microservices-destegi">Microservices Desteği</h3>
<p>Microservices desteği sayesinde, uygulamanızın büyümesi ve karmaşıklaşması halinde, tek bir monolitik uygulama yerine, daha esnek ve skalenebilir bir yapıya sahip olursunuz. Ayrıca, microservices mimarisi, uygulamanızın bileşenlerini tek tek test etmenize, deploy etmenize ve yönetmenize olanak tanır.</p>
<h3 id="heading-graphql-destegi">GraphQL Desteği</h3>
<p>GraphQL, REST API'lerine alternatif olarak kullanılan bir API türüdür ve NestJS, GraphQL desteği sayesinde, geliştiriciler uygulamalarında daha etkili ve esnek bir API yapısı oluşturabilirler. GraphQL, sunucu tarafındaki veri isteklerinin yapılandırılmasına olanak tanır ve bu sayede geliştiriciler sadece gereksinim duydukları veriyi isteyebilirler. Ayrıca, NestJS ile birlikte GraphQL playground aracını da kullanabilirsiniz ve bu sayede API'nizi daha kolay ve hızlı bir şekilde test edebilirsiniz.</p>
<h3 id="heading-testing-odakli-yaklasim">Testing Odaklı Yaklaşım</h3>
<p>NestJS, test odaklı bir yaklaşım sunar ve bu sayede geliştiricilerin uygulamalarının kalitesini ve güvenilirliğini arttırmasına olanak tanır. NestJS, test kolaylığı sunan birçok araç ve özelliğe sahiptir ve geliştiriciler, uygulamalarını basit ve etkili bir şekilde test edebilirler.</p>
<h3 id="heading-kurulum">Kurulum</h3>
<ol>
<li><p>Node.js ve npm (Node Package Manager) kurulu olmalıdır. Eğer kurulu değilse, resmi Node.js web sitesinden indirip kurabilirsiniz.</p>
</li>
<li><p>Terminalden (Command Prompt veya Terminal) aşağıdaki komutu çalıştırarak, Nest CLI'yi (Command Line Interface) kurabilirsiniz:</p>
</li>
</ol>
<pre><code class="lang-bash">npm i -g @nestjs/cli
</code></pre>
<ol>
<li>Yeni bir proje oluşturmak için aşağıdaki komutu çalıştırabilirsiniz:</li>
</ol>
<pre><code class="lang-bash">nest new my-project
</code></pre>
<h3 id="heading-kullanim">Kullanım</h3>
<ol>
<li>Projenize gidin ve aşağıdaki komutu çalıştırarak projenizi çalıştırabilirsiniz:</li>
</ol>
<pre><code class="lang-bash"><span class="hljs-built_in">cd</span> my-project
npm run start
</code></pre>
<ol>
<li><p>Tarayıcınızdan <a target="_blank" href="http://localhost:3000"><code>http://localhost:3000</code></a> adresine giderek, projenizin çalışıp çalışmadığını kontrol edebilirsiniz.</p>
</li>
<li><p>Projenizi geliştirmeye başlamadan önce, <code>src</code> dizininde bulunan dosyaları inceleyin ve NestJS'nin nasıl çalıştığını anlayın.</p>
</li>
<li><p>Yeni bir modül oluşturmak için aşağıdaki komutu çalıştırabilirsiniz:</p>
</li>
</ol>
<pre><code class="lang-bash">nest generate module my-module
</code></pre>
<ol>
<li>Yeni bir controller oluşturmak için aşağıdaki komutu çalıştırabilirsiniz:</li>
</ol>
<pre><code class="lang-bash">nest generate controller my-controller
</code></pre>
<ol>
<li>Projenizi geliştirmeye devam edin ve NestJS'nin tüm özelliklerini keşfedin.</li>
</ol>
<h3 id="heading-sonuc">Sonuç</h3>
<p>NestJS, Node.js dünyasında Express ve Angular benzerliği, TypeScript desteği, modüler yapısı, microservices desteği ve testing odaklı yaklaşımıyla dikkat çeken bir frameworktir. Bu özellikler sayesinde, geliştiriciler Node.js tabanlı web uygulamalarının geliştirilmesini kolay, esnek ve güvenli bir şekilde yapabilirler. Eğer Node.js tabanlı bir web uygulaması geliştirmeye niyetliyseniz, NestJS'i deneyebilir ve kendinize göre bir yargı oluşturabilirsiniz.</p>
]]></content:encoded></item></channel></rss>