HTTP ve REST mimarisinin özellikleri nelerdir? GraphQL hangi sorunları çözmektedir?

Image for post
Image for post
Photo by Jon Flobrant on Unsplash

İstemci-Sunucu mimarisi günümüzde en çok kullanılan veri iletişim modelidir. Sunucu(server), bir veya daha çok yazılımı bir makine üzerinde çalıştırır ve gelecek olan istekleri dinler. İstemciler(client), sunucularla iletişimi başlatır ve sunucunun sağladığı bir kaynağa(resource) veya servise(service) erişim isteğinde bulunur.

İnternet üzerinde haberleşmeyi sağlayan web servisleri yaratmak için sıklıkla kullanılan yazılım mimarilerinden bir tanesi REST(Representational state transfer) mimarisidir. Sunucu üzerinde çalışan yazılımda, daha önceden belirlenmiş ve istemciye ait durum bilgileri içermeyen(stateless) bazı uç noktalar(endpoints) bulunur. İstemciler, bu uç noktalara HTTP istekleri(request) yollayarak, sunucunun sağladığı kaynaklardan faydalanır.

REST ve HTTP

RESTful servisler için bir standart olmamasına rağmen bazı kısıtlamalar bulunmaktadır. …


Understanding and using functional programming techniques

Image for post
Image for post
Fizz buzz game — Haskell

The world is big and complicated. Events, that needed to be solved, have many factors that affect the outcomes. The human mind is not capable of evaluating all these factors. That’s why we built and advanced our technology to deal with these problems. We coded programs to solve issues, but our problems didn’t stop to arise. Just the opposite, they start to become more complex.

Yet, problems tend to have similarities, so do the solutions. There are patterns occurring, naturally, in solutions. People put together these patterns and we get programming paradigms. Different problem sets require different tools to solve…


Image for post
Image for post
Photo by Fabian Grohs on Unsplash

Kotlin, standart programlama alışkanlıklarımızın üzerine birçok yenilik getiren ve alanında dinamik bir programlama dili. Nesneye dayalı programlamanın ve fonksiyonel programlamanın temel ilkelerinin bir arada olduğu, her iki alanın da güçlü yanlarının sentezlendiği bir yapıya sahip.

Standart kütüphanesinde yer alan scope(kapsam / alan / bağlam) fonksiyonları, Kotlin’in sunduğu avantajları gösteren önemli konulardan. Yapılarının benzerliği ve benzer bağlamlarda kullanılmaları nedeniyle birbirlerine karıştırılabilen bu fonksiyonların görevlerinin neler olduğunu ve ne gibi konularda ayrıştıklarını beraber inceleyelim.

Öncelikle scope fonksiyonlarının neler olduğunu anlamakla başlayalım. Kotlin dokümantasyonu bu fonksiyonları, “Bir nesnenin bağlamı içerisinde bir kod bloğunu çalıştırmayı sağlayan fonksiyonlar” olarak tanımlıyor. Bu fonksiyonların ortak özellikleri bir…

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store