{"id":15210,"date":"2025-03-15T04:15:15","date_gmt":"2025-03-15T01:15:15","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/"},"modified":"2025-03-15T04:15:15","modified_gmt":"2025-03-15T01:15:15","slug":"reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/","title":{"rendered":"React&#8217;te Yay\u0131mc\u0131-Abone (Pub-Sub) Desenini Kullanarak Bildirim Sistemi Olu\u015fturma"},"content":{"rendered":"<p><body><\/p>\n<p>React&#8217;te Yay\u0131mc\u0131-Abone (Pub-Sub) Desenini Kullanarak Bildirim Sistemi Olu\u015fturma<\/p>\n<p>Merhaba!  Fatih Soysal olarak, bug\u00fcn size React uygulamalar\u0131n\u0131zda g\u00fc\u00e7l\u00fc ve \u00f6l\u00e7eklenebilir bildirim sistemleri olu\u015fturman\u0131n etkili bir yolunu g\u00f6sterece\u011fim: Yay\u0131mc\u0131-Abone (Pub\/Sub) deseni.  Bu desen, uygulaman\u0131z\u0131n farkl\u0131 bile\u015fenleri aras\u0131nda veri al\u0131\u015fveri\u015fini kolayla\u015ft\u0131r\u0131r ve karma\u015f\u0131kl\u0131\u011f\u0131 azalt\u0131r.  Ba\u015fka bir deyi\u015fle, farkl\u0131 bile\u015fenler birbirlerinden ba\u011f\u0131ms\u0131z olarak \u00e7al\u0131\u015fabilir ve yine de birbirleriyle etkili bir \u015fekilde ileti\u015fim kurabilirler.<\/p>\n<p>\u00d6ncelikle, Pub-Sub deseninin ne oldu\u011funu a\u00e7\u0131klayal\u0131m.  Bu desen,  &#8220;yay\u0131mc\u0131&#8221; (publisher) ve &#8220;abone&#8221; (subscriber)  olarak adland\u0131rd\u0131\u011f\u0131m\u0131z iki ana bile\u015fenden olu\u015fur.  Yay\u0131mc\u0131, belirli bir konuya (topic) bir mesaj yay\u0131mlar.  Bu konuya abone olan bile\u015fenler ise bu mesaj\u0131 al\u0131r ve ona g\u00f6re i\u015flem yapar.  Bu, bile\u015fenler aras\u0131nda do\u011frudan bir ba\u011f\u0131ml\u0131l\u0131k olmaks\u0131z\u0131n ileti\u015fim kurman\u0131n harika bir yoludur.  Ayr\u0131ca, yeni bile\u015fenler kolayca eklenebilir ve mevcut sistemin geri kalan\u0131n\u0131 etkilemeden abone olabilirler.<\/p>\n<h2>Pub-Sub Deseninin Avantajlar\u0131<\/h2>\n<p>Bu desenin bir\u00e7ok avantaj\u0131 vard\u0131r.  \u00d6rne\u011fin, bile\u015fenler aras\u0131 gev\u015fek ba\u011flant\u0131 sa\u011flar.  Bu, uygulaman\u0131z\u0131n bak\u0131m\u0131n\u0131 ve geni\u015fletilmesini kolayla\u015ft\u0131r\u0131r.  Ayr\u0131ca, kodunuzun daha mod\u00fcler ve okunabilir olmas\u0131n\u0131 sa\u011flar.  Sonu\u00e7 olarak, daha s\u00fcrd\u00fcr\u00fclebilir ve \u00f6l\u00e7eklenebilir bir uygulama geli\u015ftirmenize yard\u0131mc\u0131 olur.  Bununla birlikte, karma\u015f\u0131k uygulamalarda, \u00e7ok say\u0131da konunun y\u00f6netilmesi biraz zorla\u015fabilir.<\/p>\n<h2>React&#8217;te Pub-Sub Uygulamas\u0131<\/h2>\n<p>\u015eimdi, React&#8217;te Pub-Sub desenini nas\u0131l uygulayabilece\u011fimize bakal\u0131m.  Birka\u00e7 k\u00fct\u00fcphane bu g\u00f6revi kolayla\u015ft\u0131r\u0131r; ancak basit bir uygulama i\u00e7in kendimizi yazabiliriz.  A\u015fa\u011f\u0131daki \u00f6rnekte, basit bir yay\u0131mc\u0131-abone sistemi nas\u0131l olu\u015fturulaca\u011f\u0131n\u0131 g\u00f6steriyoruz:<\/p>\n<pre><code>\n\/\/ pubsub.js\nconst subscribers = {};\n\nexport const subscribe = (topic, callback) => {\n  if (!subscribers[topic]) {\n    subscribers[topic] = [];\n  }\n  subscribers[topic].push(callback);\n};\n\nexport const publish = (topic, data) => {\n  if (subscribers[topic]) {\n    subscribers[topic].forEach(callback => callback(data));\n  }\n};\n\n\/\/ App.js\nimport React, { useState } from 'react';\nimport { subscribe, publish } from '.\/pubsub';\n\nfunction App() {\n  const [message, setMessage] = useState('');\n\n  subscribe('notification', (data) => setMessage(data));\n\n  const handleClick = () => {\n    publish('notification', 'Yeni bir bildirim!');\n  };\n\n  return (\n    <div>\n      <p>{message}<\/p>\n      <button onClick={handleClick}>Bildirim G\u00f6nder<\/button>\n    <\/div>\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n<p>Bu basit \u00f6rnekte, bir &#8220;notification&#8221; konumuz var.  <code>App<\/code> bile\u015feni bu konuya abone olur ve bir mesaj yay\u0131mland\u0131\u011f\u0131nda bu mesaj\u0131 al\u0131r ve g\u00f6r\u00fcnt\u00fcler.  Bu \u00f6rnekte, basit bir fonksiyonellik g\u00f6sterilmi\u015ftir.  Ger\u00e7ek d\u00fcnya uygulamalar\u0131nda, daha geli\u015fmi\u015f hata y\u00f6netimi ve performans optimizasyonlar\u0131 gerekli olabilir.<\/p>\n<p>Daha geli\u015fmi\u015f uygulamalar i\u00e7in,  <a href=\"https:\/\/www.npmjs.com\/package\/pubsub-js\" target=\"_blank\">pubsub-js<\/a> gibi haz\u0131r k\u00fct\u00fcphaneleri kullanabilirsiniz.  Bu k\u00fct\u00fcphaneler, daha fazla \u00f6zellik ve geli\u015fmi\u015f hata y\u00f6netimi sa\u011flar.<\/p>\n<h2>Sonu\u00e7<\/h2>\n<p>React uygulamalar\u0131n\u0131zda Pub-Sub desenini kullanarak, bile\u015fenleriniz aras\u0131nda temiz ve \u00f6l\u00e7eklenebilir bir ileti\u015fim mekanizmas\u0131 kurabilirsiniz.  Bu, \u00f6zellikle b\u00fcy\u00fck ve karma\u015f\u0131k uygulamalar i\u00e7in \u00e7ok faydal\u0131d\u0131r.  Unutmay\u0131n ki, do\u011fru ara\u00e7lar\u0131 se\u00e7mek ve uygulaman\u0131z\u0131n \u00f6zel ihtiya\u00e7lar\u0131n\u0131 g\u00f6z \u00f6n\u00fcnde bulundurmak \u00f6nemlidir.  Bu konuda daha fazla bilgi edinmek isterseniz, kendi web sitemi <a href=\"https:\/\/fatihsoysal.com\" target=\"_blank\">fatihsoysal.com<\/a>&#8216;u ziyaret edebilirsiniz.<\/p>\n<p>Umar\u0131m bu makale yard\u0131mc\u0131 olmu\u015ftur.  Herhangi bir sorunuz varsa, l\u00fctfen bana bildirin!<\/p>\n<p>#Etiketler: React, Bildirim Sistemi, Pub-Sub, Yay\u0131mc\u0131-Abone, Tasar\u0131m Deseni, Javascript, Yaz\u0131l\u0131m Geli\u015ftirme, Fatih Soysal<\/p>\n<p><\/body><br \/>\n<\/html><\/p>\n","protected":false},"excerpt":{"rendered":"React&#8217;te Yay\u0131mc\u0131-Abone (Pub-Sub) Desenini Kullanarak Bildirim Sistemi Olu\u015fturma Merhaba! Fatih Soysal olarak, bug\u00fcn size React uygulamalar\u0131n\u0131zda g\u00fc\u00e7l\u00fc ve&hellip;","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1],"tags":[],"class_list":{"0":"post-15210","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-genel","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>React&#039;te Yay\u0131mc\u0131-Abone (Pub-Sub) Desenini Kullanarak Bildirim Sistemi Olu\u015fturma<\/title>\n<meta name=\"description\" content=\"Merhaba! Fatih Soysal olarak, bug\u00fcn size React uygulamalar\u0131n\u0131zda g\u00fc\u00e7l\u00fc ve \u00f6l\u00e7eklenebilir bildirim sistemleri olu\u015fturman\u0131n etkili bir yolunu g\u00f6sterece\u011fim: Yay\u0131mc\u0131-Abone (Pub\/Sub) deseni. Bu desen, uygulaman\u0131z\u0131n farkl\u0131 bile\u015fenleri aras\u0131nda veri al\u0131\u015fveri\u015fini kolayla\u015ft\u0131r\u0131r ve karma\u015f\u0131kl\u0131\u011f\u0131 azalt\u0131r. Ba\u015fka bir deyi\u015fle, farkl\u0131 bile\u015fenler birbirlerinden ba\u011f\u0131ms\u0131z olarak \u00e7al\u0131\u015fabilir ve yine de birbirleriyle etkili bir \u015fekilde ileti\u015fim kurabilirler.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"React&#039;te Yay\u0131mc\u0131-Abone (Pub-Sub) Desenini Kullanarak Bildirim Sistemi Olu\u015fturma\" \/>\n<meta property=\"og:description\" content=\"Merhaba! Fatih Soysal olarak, bug\u00fcn size React uygulamalar\u0131n\u0131zda g\u00fc\u00e7l\u00fc ve \u00f6l\u00e7eklenebilir bildirim sistemleri olu\u015fturman\u0131n etkili bir yolunu g\u00f6sterece\u011fim: Yay\u0131mc\u0131-Abone (Pub\/Sub) deseni. Bu desen, uygulaman\u0131z\u0131n farkl\u0131 bile\u015fenleri aras\u0131nda veri al\u0131\u015fveri\u015fini kolayla\u015ft\u0131r\u0131r ve karma\u015f\u0131kl\u0131\u011f\u0131 azalt\u0131r. Ba\u015fka bir deyi\u015fle, farkl\u0131 bile\u015fenler birbirlerinden ba\u011f\u0131ms\u0131z olarak \u00e7al\u0131\u015fabilir ve yine de birbirleriyle etkili bir \u015fekilde ileti\u015fim kurabilirler.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-03-15T01:15:15+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"React&#8217;te Yay\u0131mc\u0131-Abone (Pub-Sub) Desenini Kullanarak Bildirim Sistemi Olu\u015fturma\",\"datePublished\":\"2025-03-15T01:15:15+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/\"},\"wordCount\":519,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/\",\"name\":\"React'te Yay\u0131mc\u0131-Abone (Pub-Sub) Desenini Kullanarak Bildirim Sistemi Olu\u015fturma\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-03-15T01:15:15+00:00\",\"description\":\"Merhaba! Fatih Soysal olarak, bug\u00fcn size React uygulamalar\u0131n\u0131zda g\u00fc\u00e7l\u00fc ve \u00f6l\u00e7eklenebilir bildirim sistemleri olu\u015fturman\u0131n etkili bir yolunu g\u00f6sterece\u011fim: Yay\u0131mc\u0131-Abone (Pub\/Sub) deseni. Bu desen, uygulaman\u0131z\u0131n farkl\u0131 bile\u015fenleri aras\u0131nda veri al\u0131\u015fveri\u015fini kolayla\u015ft\u0131r\u0131r ve karma\u015f\u0131kl\u0131\u011f\u0131 azalt\u0131r. Ba\u015fka bir deyi\u015fle, farkl\u0131 bile\u015fenler birbirlerinden ba\u011f\u0131ms\u0131z olarak \u00e7al\u0131\u015fabilir ve yine de birbirleriyle etkili bir \u015fekilde ileti\u015fim kurabilirler.\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"React&#8217;te Yay\u0131mc\u0131-Abone (Pub-Sub) Desenini Kullanarak Bildirim Sistemi Olu\u015fturma\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"React'te Yay\u0131mc\u0131-Abone (Pub-Sub) Desenini Kullanarak Bildirim Sistemi Olu\u015fturma","description":"Merhaba! Fatih Soysal olarak, bug\u00fcn size React uygulamalar\u0131n\u0131zda g\u00fc\u00e7l\u00fc ve \u00f6l\u00e7eklenebilir bildirim sistemleri olu\u015fturman\u0131n etkili bir yolunu g\u00f6sterece\u011fim: Yay\u0131mc\u0131-Abone (Pub\/Sub) deseni. Bu desen, uygulaman\u0131z\u0131n farkl\u0131 bile\u015fenleri aras\u0131nda veri al\u0131\u015fveri\u015fini kolayla\u015ft\u0131r\u0131r ve karma\u015f\u0131kl\u0131\u011f\u0131 azalt\u0131r. Ba\u015fka bir deyi\u015fle, farkl\u0131 bile\u015fenler birbirlerinden ba\u011f\u0131ms\u0131z olarak \u00e7al\u0131\u015fabilir ve yine de birbirleriyle etkili bir \u015fekilde ileti\u015fim kurabilirler.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/","og_locale":"tr_TR","og_type":"article","og_title":"React'te Yay\u0131mc\u0131-Abone (Pub-Sub) Desenini Kullanarak Bildirim Sistemi Olu\u015fturma","og_description":"Merhaba! Fatih Soysal olarak, bug\u00fcn size React uygulamalar\u0131n\u0131zda g\u00fc\u00e7l\u00fc ve \u00f6l\u00e7eklenebilir bildirim sistemleri olu\u015fturman\u0131n etkili bir yolunu g\u00f6sterece\u011fim: Yay\u0131mc\u0131-Abone (Pub\/Sub) deseni. Bu desen, uygulaman\u0131z\u0131n farkl\u0131 bile\u015fenleri aras\u0131nda veri al\u0131\u015fveri\u015fini kolayla\u015ft\u0131r\u0131r ve karma\u015f\u0131kl\u0131\u011f\u0131 azalt\u0131r. Ba\u015fka bir deyi\u015fle, farkl\u0131 bile\u015fenler birbirlerinden ba\u011f\u0131ms\u0131z olarak \u00e7al\u0131\u015fabilir ve yine de birbirleriyle etkili bir \u015fekilde ileti\u015fim kurabilirler.","og_url":"https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-03-15T01:15:15+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"3 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"React&#8217;te Yay\u0131mc\u0131-Abone (Pub-Sub) Desenini Kullanarak Bildirim Sistemi Olu\u015fturma","datePublished":"2025-03-15T01:15:15+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/"},"wordCount":519,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/","url":"https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/","name":"React'te Yay\u0131mc\u0131-Abone (Pub-Sub) Desenini Kullanarak Bildirim Sistemi Olu\u015fturma","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-03-15T01:15:15+00:00","description":"Merhaba! Fatih Soysal olarak, bug\u00fcn size React uygulamalar\u0131n\u0131zda g\u00fc\u00e7l\u00fc ve \u00f6l\u00e7eklenebilir bildirim sistemleri olu\u015fturman\u0131n etkili bir yolunu g\u00f6sterece\u011fim: Yay\u0131mc\u0131-Abone (Pub\/Sub) deseni. Bu desen, uygulaman\u0131z\u0131n farkl\u0131 bile\u015fenleri aras\u0131nda veri al\u0131\u015fveri\u015fini kolayla\u015ft\u0131r\u0131r ve karma\u015f\u0131kl\u0131\u011f\u0131 azalt\u0131r. Ba\u015fka bir deyi\u015fle, farkl\u0131 bile\u015fenler birbirlerinden ba\u011f\u0131ms\u0131z olarak \u00e7al\u0131\u015fabilir ve yine de birbirleriyle etkili bir \u015fekilde ileti\u015fim kurabilirler.","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/reactte-yayimci-abone-pub-sub-desenini-kullanarak-bildirim-sistemi-olusturma\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"React&#8217;te Yay\u0131mc\u0131-Abone (Pub-Sub) Desenini Kullanarak Bildirim Sistemi Olu\u015fturma"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/15210","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=15210"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/15210\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=15210"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=15210"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=15210"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}