<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Poyraz Avsever</title>
    <description>The latest articles on DEV Community by Poyraz Avsever (@poyrazavsever).</description>
    <link>https://dev.to/poyrazavsever</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F829282%2F3c291009-b7d6-428f-a4f9-30babb6ea59b.jpg</url>
      <title>DEV Community: Poyraz Avsever</title>
      <link>https://dev.to/poyrazavsever</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/poyrazavsever"/>
    <language>en</language>
    <item>
      <title>Tailwind CSS ile Tasarım Sürecini Nasıl Hızlandırabilirsiniz?</title>
      <dc:creator>Poyraz Avsever</dc:creator>
      <pubDate>Tue, 10 Sep 2024 16:17:05 +0000</pubDate>
      <link>https://dev.to/poyrazavsever/tailwind-css-ile-tasarim-surecini-nasil-hizlandirabilirsiniz-4k8</link>
      <guid>https://dev.to/poyrazavsever/tailwind-css-ile-tasarim-surecini-nasil-hizlandirabilirsiniz-4k8</guid>
      <description>&lt;p&gt;Tailwind CSS, son dönemde front-end geliştiricilerin gözdesi haline geldi. Klasik CSS yazımına göre daha oldukça hızlı ve esnek bir yapı sunması, özellikle hızlı prototipleme ve özelleştirilmiş tasarımlar oluşturma süreçlerinde büyük avantaj sağlıyor. Bu yazıda, Tailwind CSS ile nasıl daha hızlı ve verimli bir tasarım süreci yaratabileceğinizi adım adım ele alacağız. Her şeyden önce gelin “tailwind css nedir ve neden kullanmalıyız?” diye bir soralım.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnpv455p6olcqr6j7crii.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnpv455p6olcqr6j7crii.png" alt="tailwind" width="720" height="349"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Tailwind CSS Nedir ve Neden Kullanmalıyız?
&lt;/h3&gt;

&lt;p&gt;Tailwind CSS, klasik CSS yazımında alışık olduğumuz “class tanımla, sonra stilleri yaz” yöntemine alternatif olarak ortaya çıkmış, utility-first (yardımcı sınıf temelli) bir CSS framework’ü. Yani, önceden tanımlanmış küçük stil sınıflarını doğrudan HTML elementlerine ekleyerek stil verebiliyorsun. Örneğin, bir buton için bg-blue-500, text-white, p-4 gibi sınıfları ekleyerek, doğrudan istediğin görünüme hızlıca ulaşabilirsin.&lt;/p&gt;

&lt;h4&gt;
  
  
  Neden Tailwind Kullanmalıyız?
&lt;/h4&gt;

&lt;p&gt;&lt;strong&gt;1- Hızlı ve Kolay&lt;/strong&gt;&lt;br&gt;
CSS de her yeni stil için bir class yazman gerekiyor. Örneğin, bir butonun arka plan rengi, yazı rengi ve padding gibi özelliklerini tanımlamak için stil dosyana şöyle bir kod yazıyorsun:,&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

.btn {
  background-color: #3490dc;
  color: #fff;
  padding: 1rem;
}


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Tailwind de ise aynı butonu şu şekilde oluşturabilirsin:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;&amp;lt;button class="bg-blue-500 text-white p-4"&amp;gt;Click Me&amp;lt;/button&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Yani, her şey HTML içerisinde çok daha hızlı bir şekilde yönetilebiliyor. Bu da stili hızlıca oluşturmanı ve üzerinde anında değişiklik yapmanı sağlıyor. Üstelik terimler daha basite indirgendiği için kafa karışıklığından da kurtuluyoruz.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2- CSS Dosyası Karmasından Kurtul&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;CSS’de büyük projelerde zamanla stil dosyaları karmaşık hale gelebilir. Sınıf isimlerini organize etmek ve tutarlı bir sistem oturtmak zor olabilir. Tailwind ile ise her stil bileşeni için yeniden sınıf yazmak yerine, utility sınıflarını kullanarak kod tekrarını ve karmaşayı azaltıyorsun. Yani, tek bir dosya içinde “hangi sınıf hangi stili uyguluyor” derdine girmiyorsun.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3- Responsive Tasarım Kolaylığı&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;CSS de her ekran boyutu için ayrı media query yazman gerekiyor fakat Tailwind’de bu iş çok daha kolay. Örneğin:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

&amp;lt;div class="text-sm md:text-lg lg:text-xl"&amp;gt;
  Responsive Metin
&amp;lt;/div&amp;gt;


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Bu kod, küçük ekranlarda text-sm, orta ekranlarda text-lg, büyük ekranlarda text-xl sınıflarını uygular. Media query yazmaya gerek yok. Bana kalırsa Tailwind’in sağladığı en büyük avantajlardan birisi de bu.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tailwind CSS’i Daha Verimli Kullanmanın Yolları
&lt;/h2&gt;

&lt;p&gt;Tailwind CSS’in gücünü tam anlamıyla kullanmak için bazı ipuçları işini hızlandırabilir ve kodunu daha temiz hale getirebilir:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Config Dosyasını Özelleştir&lt;/strong&gt;&lt;br&gt;
Tailwind’in sunduğu yapı taşlarını kendi projen için optimize edebilirsin. tailwind.config.js dosyasını kullanarak renk paletlerini, fontları ve spacing değerlerini özelleştirmen, projende tutarlı bir tasarım sistemi oluşturmanı sağlar. Örneğin:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

module.exports = {
  theme: {
    extend: {
      colors: {
        customBlue: '#1e3a8a',
      },
      spacing: {
        '128': '32rem',
      },
    },
  },
}


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;2. apply Direktifini Kullan&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Aynı stilleri tekrar tekrar yazmak yerine Tailwind’in apply direktifini kullanarak ortak stilleri bir araya getiren sınıflar oluşturabilirsin. Böylece hem kodun daha temiz olur hem de yönetimi kolaylaşır. Örneği bir butonu projende onlarca defa kullanacaksan @applyile tanımlayabilirsin.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

.btn-primary {
  @apply bg-blue-500 text-white font-bold py-2 px-4 rounded;
}


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;3. PurgeCSS ile Dosya Boyutunu Küçült&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Tailwind projelerde kullanılmayan stiller de oluşturur. Bu yüzden dosya boyutunu optimize etmek için üretim aşamasında purge özelliğini kullanarak kullanılmayan stilleri kaldırabilirsin. Bu, özellikle büyük projelerde performansı artırır.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

module.exports = {
  purge: ['./src/**/*.html', './src/**/*.js']
}


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;4. Tailwind JIT Modunu Etkinleştir&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Tailwind’in Just-In-Time (JIT) modunu kullanarak, yazdığın sınıfların anında oluşturulmasını ve CSS dosyasının minimum seviyede tutulmasını sağlayabilirsin. Bu mod, Tailwind’in en güncel ve dinamik şekilde çalışmasını sağlar.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

module.exports = {
  mode: 'jit'
}


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;5. Responsive Tasarımı Kolaylaştır&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Tailwind ile responsive tasarımlar oluşturmak çok basittir. Sınıfların başına sm:, md:, lg: gibi prefix'ler ekleyerek farklı ekran boyutlarına göre stilleri kolayca tanımlayabilirsin. Bu, mobil uyumluluğu hızla sağlamanın en etkili yollarından biri. Web sitesini tasarlamaya başlarken mobil versiyonlardan başlarsan daha rahat edersin. Küçükten büyüğe&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

&amp;lt;div class="text-sm md:text-lg lg:text-xl"&amp;gt;
  Responsive Metin
&amp;lt;/div&amp;gt;


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;6. Tailwind Eklentilerini Keşfet&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Tailwind’in ekosisteminde birçok faydalı eklenti mevcut. Özellikle form bileşenleri, tipografi veya animasyonlar için Tailwind eklentileri işini daha da kolaylaştırabilir. Örneğin, &lt;a class="mentioned-user" href="https://dev.to/tailwindcss"&gt;@tailwindcss&lt;/a&gt;/formseklentisi ile form stillerini güzelleştirebilirsin. @tailwind-scrollbareklentisi ile scrollbar’larını özelleştirebilirsin. İnternetten detaylı bir aramayla işine yarayanları bulabilir, projelerine kolay bir şekilde entegre edebilirsin.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1goewescaxw3oi9es9ec.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1goewescaxw3oi9es9ec.png" alt="2" width="720" height="360"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Bu ipuçlarıyla, Tailwind CSS’i daha verimli kullanabilir ve projelerinde daha temiz, düzenli bir kod yapısına ulaşabilirsin! Kendi projelerinde Tailwind’i kullanarak, hem zaman kazanmaya başlayacak hem de bu alan da daha özgür olacaksın. Bu yazıda sunduğum ipuçları ile Tailwind CSS’i daha verimli kullanabilir, projelerinde fark yaratabilirsin. Hemen dene, iş akışını nasıl dönüştürdüğünü gör!&lt;/p&gt;

&lt;h4&gt;
  
  
  Başarılar ve keyifli kodlamalar!
&lt;/h4&gt;

&lt;h2&gt;
  
  
  Kaynaklar
&lt;/h2&gt;

&lt;p&gt;Tailwind CSS Resmi Dokümantasyonu&lt;br&gt;
&lt;a href="https://tailwindcss.com/docs" rel="noopener noreferrer"&gt;Tailwind’in utility-first yapısına dair tüm detaylar ve kullanım örneklerini burada bulabilirsin:&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Tailwind CSS Konfigürasyon Rehberi&lt;br&gt;
&lt;a href="https://tailwindcss.com/docs/configuration" rel="noopener noreferrer"&gt;Tailwind’in tailwind.config.js dosyasını nasıl özelleştirebileceğin hakkında daha fazla bilgi için:&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;PurgeCSS ile Optimizasyon&lt;br&gt;
&lt;a href="https://tailwindcss.com/docs/optimizing-for-production" rel="noopener noreferrer"&gt;Tailwind ile kullanılan PurgeCSS hakkında detaylı rehber için:&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Tailwind CSS Just-In-Time (JIT) Modu&lt;br&gt;
&lt;a href="https://tailwindcss.com/docs/just-in-time-mode" rel="noopener noreferrer"&gt;Tailwind JIT modunun nasıl etkinleştirileceği ve faydaları hakkında daha fazla bilgi:&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Tailwind CSS Eklentileri&lt;br&gt;
&lt;a href="https://tailwindcss.com/docs/plugins" rel="noopener noreferrer"&gt;Forms, Typography gibi eklentilerin nasıl kullanılacağına dair rehberler:&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Bu kaynaklar, Tailwind CSS’i daha derinlemesine öğrenmek ve projelerinde en iyi şekilde kullanmak için faydalı olacaktır.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Kullanıcı Araştırması ve Personas Oluşturma: Tasarımın Gizli Kahramanları</title>
      <dc:creator>Poyraz Avsever</dc:creator>
      <pubDate>Mon, 02 Sep 2024 12:09:03 +0000</pubDate>
      <link>https://dev.to/poyrazavsever/kullanici-arastirmasi-ve-personas-olusturma-tasarimin-gizli-kahramanlari-1o37</link>
      <guid>https://dev.to/poyrazavsever/kullanici-arastirmasi-ve-personas-olusturma-tasarimin-gizli-kahramanlari-1o37</guid>
      <description>&lt;p&gt;Tasarım dünyasında, ürünlerimizin kullanıcılarımızın ihtiyaçlarını en iyi şekilde karşılamasını istemek, hepimizin ortak amacı. Ancak bu hedefe ulaşmak için bazen en temel adımları gözden kaçırabiliyoruz. Bu adımlardan biri de kullanıcı araştırması ve personas oluşturma. Gelin, bu iki önemli adımı nasıl gerçekleştirebileceğimizi ve tasarım sürecindeki kritik rollerini birlikte keşfedelim.&lt;/p&gt;

&lt;h2&gt;
  
  
  Kullanıcı Araştırması: “Yolu Aydınlatan Işık”
&lt;/h2&gt;

&lt;p&gt;Kullanıcı araştırması, tasarım sürecinin temel taşlarından biridir. Ancak ne yazık ki, bu adım sıklıkla atlanabiliyor veya yeterince önemsenmiyor. Peki, neden bu kadar önemli?&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv6xi27g4vpjvlgzsjxk5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv6xi27g4vpjvlgzsjxk5.png" alt="kullanıcı-araştırması" width="720" height="439"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Kullanıcı araştırması, gerçek kullanıcıların ihtiyaçlarını, beklentilerini ve zorluklarını anlamamıza yardımcı olur. Yani, tasarımımızın doğru yolda olup olmadığını bilmek için bir tür GPS cihazı gibi düşünün. Anketler, mülakatlar, gözlem ve kullanım testleri gibi yöntemlerle toplanan veriler, tasarım kararlarımızı şekillendirir. Bu veriler olmadan, tasarım sürecimiz kısa bir yolculuk olurdu; hem kullanıcı hem de tasarımcı için tatmin edici olmayan bir yolculuk.&lt;/p&gt;

&lt;h3&gt;
  
  
  Personas Oluşturma: Kullanıcılarımızı Tanıyalım
&lt;/h3&gt;

&lt;p&gt;Kullanıcı araştırmasından elde ettiğimiz verileri, personas adı verilen karakterlere dönüştürürüz. Persona, gerçek kullanıcıların temsilcisi olan hayali bir karakterdir. Bu karakterler, tasarım sürecinde karar alırken göz önünde bulundurmamız gereken “ideal” kullanıcılarımızı temsil eder.&lt;/p&gt;

&lt;p&gt;Bir persona oluştururken, demografik bilgilerden tutun, kullanıcıların hedeflerine, ihtiyaçlarına ve acı noktalarına kadar birçok ayrıntıyı dikkate alırız. Örneğin, “Mert”, 28 yaşında bir yazılım geliştirici olabilir. Mert, verimliliği artırmak isteyen bir teknoloji meraklısıdır ve kullanıcı dostu ara yüzler arar. Mert’in bu özellikleri, tasarım sürecinde ihtiyaçlarını karşılamak için nelere dikkat etmemiz gerektiğini anlamamıza yardımcı olur.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnja0mmu84m37dkdaggf5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnja0mmu84m37dkdaggf5.png" alt="persona" width="720" height="360"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Personas’ın Gücü: Empati ve Odaklanma
&lt;/h3&gt;

&lt;p&gt;Personalar oluşturmanın bir başka avantajı da, ekibinizin kullanıcılarla daha empatik bir bağ kurmasına yardımcı olmasıdır. Persona karakterlerinizle sohbet ederken, onların ihtiyaçlarını ve beklentilerini anlamak daha kolay hale gelir. Bu empati, tasarım kararlarınızda daha bilinçli ve kullanıcı merkezli bir yaklaşım benimsemenizi sağlar.&lt;/p&gt;

&lt;p&gt;Ayrıca personas oluşturmak, ekip içindeki tüm paydaşların aynı hedefe odaklanmasına yardımcı olur. Herkesin aynı **“Mert”i, “Elif”i veya “Ahmet”i **tanıması, tasarım sürecinde daha tutarlı ve uyumlu bir yaklaşım sergilenmesine olanak tanır.&lt;/p&gt;

&lt;h3&gt;
  
  
  Sonuç: Kullanıcılarınızı Tanıyın, Onlara Uygun Tasarımlar Yapın
&lt;/h3&gt;

&lt;p&gt;Kullanıcı araştırması ve personas oluşturma, sadece tasarım sürecinin bir parçası değil, aynı zamanda başarılı bir UX (Kullanıcı Deneyimi) tasarımı için vazgeçilmez adımlardır. Bu adımlar, tasarım sürecinizi bilgiyle donatır ve gerçek kullanıcıların ihtiyaçlarını karşılamanıza yardımcı olur.&lt;/p&gt;

&lt;p&gt;Sonuç olarak, kullanıcınızı tanıdığınızda ve onların beklentilerine uygun çözümler sunduğunuzda, sadece daha etkili bir tasarım değil, aynı zamanda daha tatmin edici bir kullanıcı deneyimi elde edersiniz. Tasarım dünyasında başarılı olmak için bu adımları asla atlamayın; çünkü kullanıcılarınızı anlamak, başarılı tasarımların sırrıdır.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Tasarım sadece nasıl göründüğü ya da nasıl hissettirdiği ile ilgili bir şey değildir. Tasarım nasıl çalıştığı ile ilgilidir.” — Steve Jobs&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>design</category>
      <category>ux</category>
      <category>webdev</category>
      <category>ui</category>
    </item>
    <item>
      <title>Yazılım Projelerinde Düzen ve Verimlilik İçin: Conventional Commits Nedir?</title>
      <dc:creator>Poyraz Avsever</dc:creator>
      <pubDate>Fri, 23 Aug 2024 20:05:03 +0000</pubDate>
      <link>https://dev.to/poyrazavsever/yazilim-projelerinde-duzen-ve-verimlilik-icin-conventional-commits-nedir-40ni</link>
      <guid>https://dev.to/poyrazavsever/yazilim-projelerinde-duzen-ve-verimlilik-icin-conventional-commits-nedir-40ni</guid>
      <description>&lt;p&gt;Yazılım geliştirme sürecinde, kod yazmanın ötesinde pek çok detayla uğraşıyoruz. Commit mesajları da bu sürecin kritik bir parçası tabii ki. Ancak commit mesajları, bazen dağınık, anlaşılmaz ve düzensiz olabiliyor. İşte bu noktada “Conventional Commits” devreye giriyor.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg6ucl9klti2emqlajarh.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg6ucl9klti2emqlajarh.JPG" alt="Image description" width="800" height="241"&gt;&lt;/a&gt;&lt;br&gt;
Conventional Commits Nedir?&lt;br&gt;
Conventional Commits, commit mesajlarınızı belirli bir formata oturtan bir yazılım standardı. Amaç, her commit’in ne yaptığını net bir şekilde ifade etmek ve proje geçmişini daha anlaşılır hale getirmek. Commit mesajlarınızı bu standarda göre yazmak, projeyi daha düzenli, takip edilebilir ve sürdürülebilir kılar. Gelin şimdi beraber inceleyelim.&lt;/p&gt;

&lt;h2&gt;
  
  
  Neden Conventional Commits Kullanmalıyız?
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;1. Anlaşılabilirlik&lt;/strong&gt;&lt;br&gt;
Commit geçmişinin anlaşılabilir olması hepimiz için önemli. Bu standart, projede yapılan değişikliklerin kolayca takip edilmesini sağlıyor. Büyük projelerde, hangi commit’in hangi sorunu çözdüğünü veya hangi yeni özelliği eklediğini anlamak zaman zaman zorlaştığı için bu gibi standartları kullanmak yazılımcıların işini kolaylaştırıyor.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. İzlenebilirlik ve Şeffaflık&lt;/strong&gt;&lt;br&gt;
Commit mesajlarımızı tutarlı ve net hale getirmek, proje geçmişimizde yapılan değişikliklerin izlenmesini kolaylaştırıyor. Özellikle geriye dönük uyumluluğu bozan değişikliklerde, bu düzenlemeler büyük bir avantaj sağlıyor.&lt;/p&gt;

&lt;h2&gt;
  
  
  Peki Bu Commit Mesajları Nasıl Yazılıyor?
&lt;/h2&gt;

&lt;p&gt;Conventional Commits’e göre, her commit mesajı üç ana bölümden oluşur:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Başlık (Summary): Mesajın türünü ve kısaca ne yaptığını belirtir.
Gövde 
2- (Body): Değişikliğin detaylarını açıklar. Neden yapıldığını ve nasıl yapıldığını anlatır.
Altbilgi 
3- (Footer): Breaking changes gibi uyumluluğu bozan değişiklikler veya kapatılan sorunlar burada belirtilir.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Commit Türleri
&lt;/h2&gt;

&lt;p&gt;Commit mesajları belirli türlerle başlar. İşte en yaygın kullanılan türler: Daha detaylı commit türlerini incelemek için tıklayın.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;feat:&lt;/code&gt; Yeni bir özellik eklenmesi.&lt;br&gt;
&lt;code&gt;fix:&lt;/code&gt; Bir hatanın düzeltilmesi.&lt;br&gt;
&lt;code&gt;docs:&lt;/code&gt; Sadece dokümantasyonla ilgili değişiklikler.&lt;br&gt;
&lt;code&gt;style:&lt;/code&gt; Kodun işleyişini değiştirmeyen biçimlendirme (boşluklar, noktalı virgüller vb.).&lt;br&gt;
&lt;code&gt;refactor:&lt;/code&gt; Kodda, işlevini değiştirmeyen yeniden düzenleme.&lt;br&gt;
Gelin beraber örnek bir Commit Mesajını inceleyelim:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

feat(login): add JWT authentication

Added JWT authentication to the login process to enhance security.
This change involves updating the login controller and modifying the user model.

BREAKING CHANGE: The user model now requires a JWT token for all login operations.


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;1. Başlık (Summary):&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;feat:&lt;/code&gt;&lt;br&gt;
Commit türünü belirtir. Burada feat (feature) türü kullanılmış, bu da commit'in projeye yeni bir özellik eklediğini gösterir. Başka türler de kullanılabilir, örneğin fix (bir hatayı düzeltmek), docs (dokümantasyon güncellemeleri) gibi.&lt;/p&gt;

&lt;p&gt;(login):&lt;br&gt;
Parantez içinde belirtilen bölüm, bu özelliğin veya değişikliğin hangi modülü veya bölümü etkilediğini gösterir. Burada login kullanılmış, yani yapılan değişiklik, login (giriş) süreciyle ilgilidir.&lt;br&gt;
add JWT authentication:&lt;br&gt;
Bu, commit'in yaptığı spesifik değişikliği kısa ve öz bir şekilde açıklar. Burada, JWT (JSON Web Token) ile kimlik doğrulamanın login sürecine eklendiği belirtiliyor.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Gövde (Body):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;İlk Cümle:&lt;br&gt;
“Added JWT authentication to the login process to enhance security.”&lt;br&gt;
Bu cümle, yapılan değişikliğin amacını ve sonucunu açıklar. Burada, JWT kimlik doğrulamasının login sürecine eklendiği ve bunun güvenliği artırmak amacıyla yapıldığı belirtiliyor.&lt;br&gt;
İkinci Cümle:&lt;br&gt;
“This change involves updating the login controller and modifying the user model.”&lt;br&gt;
Bu cümle, değişikliğin hangi dosya veya modülleri etkilediğini daha detaylı açıklar. Burada, login controller’ın güncellendiği ve user model’in değiştirildiği belirtiliyor.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Altbilgi (Footer):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;BREAKING CHANGE:&lt;/code&gt;&lt;br&gt;
Bu ifade, uyumluluğu bozan bir değişiklik olduğunu gösterir. Eğer bir commit, mevcut kodun çalışmasını bozacak bir değişiklik yapıyorsa, bu mutlaka belirtilmelidir. Bu, diğer geliştiricilerin bu değişiklikten haberdar olmasını sağlar.&lt;br&gt;
Detay:&lt;br&gt;
“The user model now requires a JWT token for all login operations.”&lt;br&gt;
Bu açıklama, uyumluluğu bozan değişikliğin ne olduğunu detaylandırır. Burada, kullanıcı modelinin artık tüm giriş işlemleri için bir JWT token gerektirdiği belirtiliyor. Bu, diğer geliştiricilerin bu değişikliği uygularken dikkatli olmaları gerektiğini ifade eder.&lt;br&gt;
Sonuç olarak&lt;br&gt;
Conventional Commits, yazılım geliştirme sürecimizi daha düzenli, anlaşılır ve verimli hale getirdi. Commit mesajlarımızı belirli bir yapıya oturtarak, proje yönetimimizi daha sürdürülebilir ve izlenebilir bir hale getirdik.&lt;/p&gt;

&lt;p&gt;Eğer siz de projelerinizde daha düzenli bir commit geçmişi istiyorsanız, Conventional Commits’i denemenizi tavsiye ederim.&lt;/p&gt;

&lt;h2&gt;
  
  
  Kaynak
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.conventionalcommits.org/en/v1.0.0/" rel="noopener noreferrer"&gt;https://www.conventionalcommits.org/en/v1.0.0/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://developer.vonage.com/en/blog/3-reasons-why-you-should-use-conventional-commits" rel="noopener noreferrer"&gt;https://developer.vonage.com/en/blog/3-reasons-why-you-should-use-conventional-commits&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>github</category>
      <category>git</category>
      <category>commit</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
