Programlamada Fonksiyon Nedir?

Programlamada Fonksiyon Nedir?

Programınızdaki farklı bölümlerde yeniden kullanmak için kodunuzu sık sık kopyalayıp yapıştırırken buluyor musunuz?





Öyleyse, işlevleri kullanmayı düşünebilirsiniz. Fonksiyonlar, programlama dillerinin çok güçlü bir özelliğidir. Kodu daha verimli, okunması kolay ve zarif hale getirebilirler.





İşlev Nedir?

İşlev, bir görevi gerçekleştiren bir kod bloğudur. Birden çok kez çağrılabilir ve yeniden kullanılabilir. Bir fonksiyona bilgi iletebilirsiniz ve o fonksiyon bilgiyi geri gönderebilir. Birçok programlama dilinde, kitaplıklarından erişebileceğiniz yerleşik işlevler bulunur, ancak kendi işlevlerinizi de oluşturabilirsiniz.





Bir işlevi çağırdığınızda, program mevcut programı duraklatacak ve işlevi yürütecektir. Fonksiyon yukarıdan aşağıya okunacaktır. İşlev tamamlandığında, Program duraklatıldığı yerden çalışmaya devam eder. İşlev bir değer döndürdüyse, bu değer işlevin çağrıldığı yerde kullanılacaktır.

Bir Fonksiyonu Nasıl Yazarsınız?

Fonksiyon yazmanın birçok farklı yolu vardır. Tam sözdizimi, programlama yaptığınız dile bağlı olacaktır. Bir dizi programlama sözdizimini göstermek için Python, JavaScript ve C++'da örnekler göstereceğiz.



İlgili: Programlama Dilleri Neden Fonksiyonlar Olmadan Var Olmaz?

Geçersiz İşlevler

Bakacağımız ilk fonksiyon türü bir void fonksiyonudur. Bu, işlevin bir değer döndürmediği anlamına gelir. Void işlevleri, bir dizi talimatı tamamlamak için kullanılır. Bu örneklerde yazdığımız fonksiyona merhabaFonksiyon . Fonksiyonun amacı 'Merhaba Dünya' çıktısını vermektir.





İPUCU: ne yaptıklarını açıklayan işlev adları verin. Programınız daha karmaşık hale geldikçe işlevleri yönetmek ve kodu okumak daha kolay olacaktır.

piton





def helloFunction():
print('Hello World')
helloFunction()

anahtar kelime tanım Python'da bir fonksiyon tanımlamak ve oluşturmak için kullanılır. Sonraki, işlevin adıdır. İşlevdeki talimatlar, iki nokta üst üste işaretinden sonraki satırda gelir. Python'da beyaz boşluk önemlidir, bu nedenle işlevinizin çalışmasını istediğiniz tüm kodu girintili hale getirdiğinizden emin olun. Yukarıdaki örnekte, işlev bir satır kod çalıştırır.

Keskin gözlerin bunu fark etmiş olabilir Yazdır() aynı zamanda bir fonksiyondur, ancak bizim fonksiyonumuzdan farklı olarak adlandırılır. Şu anda bu düşünceye tutunun, daha sonra fonksiyonları ve parametreleri keşfedeceğiz.

JavaScript

xbox one x vs xbox serisi x
function helloFunction(){
alert('Hello World!');
}
helloFunction();

JavaScript'te anahtar kelime işlev fonksiyonlar oluşturmak için kullanılır. Ardından, işlevin adını alıyoruz. İşlev çağrıldığında, küme parantezleri arasına giren herhangi bir kod çalıştırılır.

JavaScript'te beyaz boşluk önemli değildir, ancak kodu işlevde girintilemek gelenekseldir. Girinti, kodun okunmasını kolaylaştırır; bu, programlarınız daha karmaşık hale geldikçe çok önemlidir.

Not: Çok beğendim Yazdır() önceki örnekte, Alarm() aynı zamanda bir fonksiyondur.

C++

#include
using namespace std;
void helloFunction(){
cout << 'Hello World!';
}
int main(){
helloFunction();
return 0;
}

Fonksiyonlar C++'da farklı yaratılmıştır. Bir işlevi tanımlamak için bir anahtar sözcük yerine, ilk sözcük, işlevin döndüreceği veri türünü tanımlar. Bu durumda, fonksiyonumuz herhangi bir veri döndürmez, bu nedenle veriler geçersizdir. Ardından, işlevin adı var. JavaScript'e benzer şekilde, işlev çağrıldığında küme parantezleri arasındaki tüm kodlar çalıştırılır. Ayrıca JavaScript'e benzer şekilde, beyaz boşluk işlevi etkilemez ancak iyi bir uygulamadır.

C++ kodunda başka bir işlev gördünüz mü? Evet, ana() bir fonksiyondur. Bir C++ programını çalıştırdığınızda, ana işlevi otomatik olarak çağırırsınız. Ana işlev başarıyla tamamlandığında, programı çalıştırırken hiçbir hata olmadığını bildirmek için programdan çıkarken 0 döndürür.

Değer Gerektiren Fonksiyonlar

Aynı kodu tekrar tekrar yazdığınızı fark ederseniz, geçersiz işlevler harikadır. Ama sınırlayıcı olabilirler. Statiktirler ve değişmezler. Her zaman aynı talimatları tamamlarlar. Kullanışlılıklarını artırmanın bir yolu, işleve farklı değerler aktarmaktır.

Parantezlerin tüm işlevlerimizin adlarını takip ettiğini fark etmişsinizdir. Parantez içinde, fonksiyonumuzu çalıştırmak için veriye ihtiyaç olduğunu beyan edebiliriz. Daha sonra fonksiyonumuza iletilen verileri fonksiyon içerisinde kullanabiliriz. Önceki örneklere tekrar bir göz atalım, ancak bu sefer çıktısını almak istediğimiz ifadeyi geçelim.

piton

def helloFunction(newPhrase):
print(newPhrase)
helloFunction('Our new phrase')

Şimdi, parantezler arasında, fonksiyonumuz çalışması için bir değişkene ihtiyacı olduğunu bildiriyor. Değişkeni adlandırdık yeniİfade ve şimdi onu fonksiyonumuzda kullanabiliriz. Fonksiyonu çağırdığımızda istenilen bilgiyi parantezler arasına yerleştirerek iletmemiz gerekiyor. Aynı değişiklikler JavaScript'te de yapıldı.

JavaScript

function helloFunction(newPhrase){
alert(newPhrase);
}
helloFunction('Our new phrase');

C++

diskim neden 100 Windows 10'da çalışıyor
#include
using namespace std;
void helloFunction(string newPhrase){
cout << newPhrase;
}
int main(){
helloFunction('Our new Phrase');
return 0;
}

C++ işlevimiz biraz daha fazla bilgi gerektiriyordu. İşlevinizin dize verileri istediğini biliyoruz, ancak bu C++ için yeterince iyi değil. İşlevinizi oluşturduğunuzda, işlevinizin ne tür veriler gerektirdiğini belirtmeniz gerekir. Doğru türde veri göndermezseniz, işlev bir hata oluşturur.

Bu biraz can sıkıcı görünebilir, ancak katı diller genellikle baş ağrısından kurtarabilir. JavaScript'te bir tamsayı gerektiren bir işlev yazarsanız, ancak sayı bir dize olarak gönderilirse, izlenmesi çok zor bir hata oluşturabilir.

İlgili: Bilmeniz Gereken 5 İşlevsel Programlama Dili

Değer Döndüren Fonksiyonlar

Ele alacağımız son işlev yeteneği, verileri döndürmek. Bu, verileri kullanmadan önce değiştirmek istediğinizde özellikle değerlidir. Bunu satır içi yazabilseniz de, emperyal değeri metriğe dönüştürmek gibi aynı hesaplamaları birçok kez kullanacaksanız, bunu bir işlev olarak yazmak daha mantıklı olabilir. Örneğimiz daha basit olacak. Fonksiyonumuz iki tamsayı gerektirecek ve toplamı döndürecektir.

piton

def addingFunction(a, b):
return a + b
print(addingFunction(2, 4))

Bu örnekte, fonksiyonumuz bir yerine iki değişken gerektiriyor. Değişken isimlerimizi virgülle ayırarak belirtiyoruz. anahtar kelime dönüş fonksiyona aşağıdaki verileri, bu durumda 2 + 4 veya 6'yı döndürmesini söyler. Yazdır() işlev.

Programımız o satıra ulaştığında duraklar, fonksiyonumuzu çalıştırır ve sonra sanki devam edermiş gibi devam ederdi. eklemeFonksiyon(2, 4) aslında sadece döndürülen değer 6 idi.

JavaScript

JavaScript kodu Python koduna çok benzer. Birincil fark, işlevin bir uyarıda çağrılmasıdır.

function addingFunction(a, b){
return a + b;
}
alert(addingFunction(2, 4));

C++

#include
using namespace std;
int addingFunction(int a, int b){
return a + b;
}
int main(){
cout << addingFunction(2, 4) ;
return 0;
}

C++ kodu benzer şekilde çalışır, ancak her zamanki gibi biraz daha fazla bilgi gerektirir. Öncelikle fonksiyonumuzun ne tür veriler döndüreceğini söylemeliyiz. Bunu göreceksin geçersiz olarak değiştirildi int . Bu, fonksiyonumuzun veri döndürmek yerine bir tamsayı döndüreceği anlamına gelir. Bunun ötesinde, kod, daha önce incelediğimiz koda benzer.

İşlevlerinizi Yönetin

İşlevlerle ilgili eğlenceli bir şey, işlevlerin diğer işlevleri çağırabilmesidir. Kendilerini bile arayabilirler! Ancak büyük güç, büyük sorumluluk getirir. Daha fazla işlev çağıran diğer işlevleri çağıran işlevlerle kod oluştururken çıldırmayın.

Belirtildiği gibi, bir işlev her çağrıldığında, program işlevi çalıştırırken duraklar. Bu, programın aktif bellekte tutulduğu anlamına gelir. Birkaç işlevi daha tamamlamadan çağırırsanız, daha aktif hafıza kullanıyorsunuz demektir. Dikkatli olmazsanız, programınız kontrolden çıkabilir.

Paylaş Paylaş Cıvıldamak E-posta Nesne Kapsülleme ile Kodunuzu Nasıl Temiz Tutabilirsiniz?

Genel değişkenler basit görünebilir, ancak çoğu zaman birçok hatanın nedenidir. Kapsülleme ile kodunuzu nasıl kolaylaştıracağınız aşağıda açıklanmıştır.

Sonrakini Oku
İlgili konular
  • Programlama
  • Programlama
  • Fonksiyonel Programlama
Yazar hakkında Jennifer Seaton(21 Makale Yayınlandı)

J. Seaton, karmaşık konuları ayrıştırma konusunda uzmanlaşmış bir Bilim Yazarıdır. Saskatchewan Üniversitesi'nden doktora derecesine sahiptir; Araştırması, öğrencilerin çevrimiçi katılımını artırmak için oyun tabanlı öğrenmeyi kullanmaya odaklandı. Çalışmadığı zamanlarda onu kitap okurken, video oyunları oynarken ya da bahçe işleriyle uğraşırken bulacaksınız.

Jennifer Seaton'dan Daha Fazla

Haber bültenimize abone ol

Teknik ipuçları, incelemeler, ücretsiz e-kitaplar ve özel fırsatlar için bültenimize katılın!

Abone olmak için buraya tıklayın