nodejs Node.js Nedir?  Node.js Google Chrome'un JavaScript V8 Motoru üzerinde oluşturulmuş çok güçlü bir JavaScript tabanlı açık...

Node.js Nedir? #1

13:22:00 Mustafa TÜRKÖZ 8 Yorum

nodejs
nodejs


Node.js Nedir? 

Node.js Google Chrome'un JavaScript V8 Motoru üzerinde oluşturulmuş çok güçlü bir JavaScript tabanlı açık kaynak sunucu framework'üdür.

 Node.js  ile hem arayüzde hem de sunucu tarafında javascript ile uygulamalar geliştirebilirsiniz.

Node.js web uygulamaları geliştirmek için gerçekten iyi bir platform, ama Node.js'e başlamadan önce bilmeniz gereken bazı temel teknolojiler var. Bunlar:

 x  HTML
 x  CSS
 x  AJAX

Bunlardan sonra JavaScript bilginizi de geliştirmeniz gerekecek. Geliştiremem derseniz siz bilirsiniz, Node.js yazamazsınız ozaman :)

Node.js neymiş, bununla neler yapılırmış az buçuk anladıysak adım adım kodlamaya da geçeceğiz. Node.js karmaşık gelip gözünüzü korkutursa pes etmeyin. Aslında karmaşık değil, tam tersi eğlenceli bir platform.



Ben Node.js ile neler yazdım? 

Profesyonel olarak bir şey yazmadım, ama Node.js ile API, mini bir blog sistemi ve chat sayfası gibi denemeler yaptım. Geliştirme yaparken hepsinde de hiç canım sıkılmadı ve kolay bir şekilde yazdım.



Bu teknolojinin alternatifi var mı, elbette var. Mesela Php, Asp.. falan filan. Ama benim özellikle Node.js'i seçmemde ki temel sebep asenkron programlama özelliğinin olmasıdır. Diğer bir nedeni ise JavaScript bilerek hem sunucu hem de arayüz tarafında tek bir dille geliştirme yapabiliyor olmam.

Asenkron olmayan dillerde işleyiş şöyledir: 

 >  Yapılacak görev, iş her neyse bilgisayarın dosya sistemine gönderilir.
 >  Dosya sistemi dosyayı açıp okuyana kadar bekleriz, hatta bazen yanımıza kahve alıp bekleriz.
 >  Sonra işlem tamamlanınca, içerik kullanıcıya gönderilir.
 >  Tüm bunlar bittikten sonra diğer bir isteği gönderebiliriz.

Node.js tarafında nasıl oluyor bu olaylar? 

 >  Yine yapılacak görev, iş her neyse bilgisayarın dosya sistemine gönderiliyor.
 >  Ama bu ilk adımdan sonra sistem hala bir sonraki isteği işlemeye hazır vaziyettedir.
 >  Demin anlattığımda ise bu 2. adım en sonuncu adımdı dikkat edin!
 >  Sonra, dosya sistemi dosyayı açıp okuduğunda, sunucu içeriği kullanıcıya döndürür.

Node.js beklemeyi ortadan kaldırır.

Olayı bi de başka bir örnekle özetleyecek olursam. Düşünün ki bir restorana gittiniz. Bu restoran asenkron bir şekilde çalışmıyor olsun, yani senkron diyelim. Sırada beklerken önünüzde ki beyfendi 10 tane lahmacun söyledi. Sizde sadece bir tane çay alacaksınız. Sizce o kişinin sipariş verdiği 10 lahmacunun hepsinin hazırlanıp bitmesinden sonra mı çayınızı söyleyebilmeniz mantıklı, yoksa onun lahmacunları olurken çayınızı alıp gitmeniz mi? Eğer önünüzdeki kişinin isteği yapılırken bi yandan da sizin çayınızı hazırlıyorlarsa bu asenkron olur.

İşte Node.js teknolojisi, bir iş yapılırken diğer başka bir işi yaptırabilmenizi sağlıyor. Sunucu yükümüz böylelikle azalıyor. İşi hallolan gidiyor.. Php gibi dillerde bu yöntem olmadığından sunucuyu şişirebilirler. Bu diller eski zamanın hastanelerine benzetilirse yanlış olmaz sanırım..

10 tane sunucu üzerinde sekron çalışan bir dil yerine Node.js'e geçmek, belkide bizi fazladan 9 sunucu masrafından kurtaracaktır.


Yazının yayınlanma tarihi: 28.03.2018  
Mustafa Türköz tarafından yazılmıştır.

8 yorum:

  1. Node js uzun zamandır benimde listemde. Dediğin gibi javascript kütüphanelerin kullanmak için tabii ki öncelikle js bilmek gerek. Ve js'de kocaman bir dünya. Artık js kütüphaneleri kendi başına bir uzmanlık alanına dönüştü. Ben yazılım dünyasında web programlamaya yöneldim. Temel html css bilgimin üzerine bootstrap ve php ekledim. Şimdilik bu iki alanda kendimi geliştirmeye devam ediyorum. Öte yandan asp ve mvc gibi microsoft tabanlı dillere hiç sıcak bakmıyorum. İşletim sistemi olarak linux(ubuntu) , editör olarak atom, dil olarakta php kullanıyorum. Yaşasın open source, yaşasın özgür yazılım 👍

    YanıtlaSil
    Yanıtlar
    1. İlk cümlelerine katılıyorum. Ekstra olarak, web'in yanında mobile'de bak derim. İhtiyacın fazla olduğu bir sektör. Ayrıca MVC'ye Microsoft tabanlı demek doğru olmaz. Her dil MVC ile geliştirilebiliyor ve faydalı bir teknoloji. Mesela Node.js'de API oluştururken MVC yapısında geliştirdim. Yanlış hatırlamıyorsam Atom ide'si de Node.js ile yazılmış. Php'yi çok kullanmadığım için kötülemek bana düşmez, ama yeni teknolojilere yönelmeni tavsiye ederim. Yorumun için teşekkürler.👍

      Sil
  2. nodejs ye ben de bakacağım kısmet olursa. yazı için teşekkürler

    YanıtlaSil
  3. Hic anlamiyorum ben bu seylerden ya iade-i ziyarete geldim ben Mustafa kardesim😁
    Emegine saglik.
    Bilgilendirici bir yazi...😊

    YanıtlaSil
    Yanıtlar
    1. hoş geldiniz, teşekkürler :) teknik bir konsepti de olunca bloğumun bazen her kesime hitap etmiyor yazılar, programlama sevenler içindi bu yazım :) inşallah zamanla anlaşılabilirim :)

      Sil

UYUYAN BİR ADAMA SADECE RÜYALAR GELİR..