Julia: Fonksiyonlar – Bölüm 5

Herkese selamlar ve sağlıklı günler. 🙂

Julia programlama dili serimizin 5. bölümüyle tekrardan bir aradayız. 🙂 İlk 4 bölüm itibariyle Julia’da kod yazarken kullanacağımız yapıları, mantıksal işlemleri ve döngüleri tanıdık. Bu bölümde de programlama dillerinin bel kemiği yapılarından olan fonksiyonların ne olduğunu ve nasıl kullandığını keşfedeceğiz.

O halde, dilerseniz başlayalım! 🙂

Bölümler

Bölüm İçeriği

Aşağıda Julia dersleri Bölüm 5 kapsamındaki başlıklar listelenmiştir.

  • Fonksiyonlar

Fonksiyonlar

Programlama yapmak, düzen gerektiren bir eylemdir. Kodlarımızı yazarken kolay okunabilirlik ve yapacağımız işlemleri kolaylaştırmak önemli bir faktördür. Bunu sağlamak için kullanılan en önemli işlevlerden biri de; fonksiyonlardır. Karmaşıklığı ve düzensizliği engellememize ayriyeten belirli işlemleri gerçekleştirmek için bir komutlar kümesi oluşturmamıza yararlar. Bir fonksiyon saf olarak matematiksel olabilir veya programdaki diğer nesnelerin durumuna etkide bulunabilir. Hangi işlevleri gerçekleştireceği tamamen geliştiriciye kalmıştır. Julia programlama dilinde fonksiyon oluşturmak ve fonksiyonların kullanımı oldukça kolaydır. Fonksiyonları kullanarak, bir veya birkaç adımdan oluşan işlemleri tek bir çatı altında toplayabiliriz. Diğer yandan Julia’nın esnek söz dizimi yapısı sebebiyle büyük hesaplamaları, çok daha az kod satırında fonksiyonlar içerisinde yazabiliriz.

Julia’da fonksiyonlar, gereksinime göre birden çok türde olabilir.

Bu türlerden bazıları aşağıda listelenmektedir:

  • Tek ifadeli fonksiyon
  • Birden çok ifadeye sahip fonksiyon
  • Bağımsız değişkeni olmayan fonksiyon
  • Değişken argümanları vb. içeren fonksiyon

Bir fonksiyonu tanımlamak ve çağırmak oldukça kolaydır. Tek yapmamız gereken, sadece Julia’da tanımlı anahtar kelime olan function kelimesi yazmak ve ona bir fonksiyon_adi atamak. Kontrol akışları ve döngülerde de olduğu gibi, bir fonksiyonun da kapanışının belirtilmesi için bir end deyimine ihtiyaç bulunmaktadır.

Söz dizim formatı:

Not: Julia’da fonksiyon isimleri Unicode karakterler ile kullanılabilir.

Kısa Tanımlama

Julia’da bir fonksiyonu tanımlamak için ikinci bir yol daha bulunur. Daha kısa bir söz dizimine sahip olan aşağıdaki atama formu formatı, geleneksel fonksiyon tanımlamasına eşdeğerdir:

Atama formunda, işlev gövdesi tek bir ifadeye sahip olmalıdır, ancak bileşik ifade şeklinde de olabilir: Bkz: Bölüm 4 – Kontrol Akış Yapıları >Bileşik İfadeler

Kısa, basit fonksiyon tanımları Julia’da yaygın olarak görülür. Kısa fonksiyon söz dizimi buna göre oldukça deyimseldir, hem yazmayı hem de görsel olarak karmaşıklığı azaltır.

Argüman Kullanımı

Fonksiyon çağrılırken gönderilen değerlere argüman denilmektedir. Fonksiyonun içi ile iletişime geçmemizi sağlayan, değer taşıyan yapılar olarak düşünülebilirler.

Örnek Kullanım:

return Kullanımı

Bazen fonksiyonumuzun bazı hesaplamalarda kullanılabileceğimiz bir değer döndürmesini istiyor olabiliriz. Bu durumda fonksiyon içerisinde return anahtar kelimesini kullanırız. Bir fonksiyon tarafından döndürülen değer, varsayılan olarak işlev tanımının gövdesindeki son ifade olan, değerlendirilen son ifadenin değeridir. C ve diğer birçok zorunlu veya işlevsel programlama dilinde olduğu gibi, return anahtar sözcüğü, değeri döndürülen bir ifade sağlayarak bir işlevin hemen geri dönmesine neden olur:

Söz dizim formatı:

Örnek Kullanım:

Not: return ifadesinden sonra fonksiyondan çıkılır. Yani, daha sonraki kod satırları okunmaz.

Bir değer döndürmesi gerekmeyen işlevler için ise nothing ifadesi kullanılır:

Operatörlerin Fonksiyon Olarak Kullanımı

Julia’da operatörler fonksiyon olarak da kullanılabilirler. Bir değişkene operatör atarken, ifade satırının bir; (noktalı virgül) ile bitmesi gerekmektedir. Aksi takdirde derleyici tarafından hata üretilir.

+, -, * vb. operatörleri fonksiyon olarak kullanıp işlemler gerçekleştirebilirsiniz.

Örnek Kullanım:

Çoklu Değer Döndürme

Julia programlama dilinde, “tuples” yani demetler sıklıkla çoklu değer döndürmek için kullanılmaktadır. Demet yapısı çoklu değer döndürmeyi simüle etmektedir. Bununla birlikte, demetler parantez gerekmeksizin oluşturulabilir ve değiştirilebilir, böylece tek bir değer yerine birden fazla değerin döndürüldüğü yanılsaması elde edilmiş olur. Bu durum, birden çok veri yapısını tek bir dönüş ifadesinde bir demet olarak döndürmemizi sağlamaktadır.

Örnek Kullanım:

Anonim Fonksiyonların Kullanımı

Julia’da isimsiz fonksiyonlar oluşturulmasına izin verilmektedir. Julia, otomatik olarak son hesaplanan değere karşılık gelen bir anahtar kelime sağlar. Bu anahtar kelime, anonim fonksiyona bağımsız değişkenler iletmek için kullanılabilir.

Söz dizim formatı:

Tip Parametrelemesi

Fonksiyonların şablonlar ile birlikte kullanımıyla hangi türlerle çalıştıklarına dair daha fazla bilgi edinilebilmektedir:

 

Fonksiyonlar üzerine daha birçok kullanım formatı bulunmaktadır. Buradaki dökümanda Bölüm 11 aracılığıyla Julia’nın olanak tanıdığı tüm kullanımları detaylı olarak inceleyebilirsiniz.

Bir sonraki bölümde görüşmek dileğiyle. 🙂

One thought on

Julia: Fonksiyonlar – Bölüm 5

Bir cevap yazın