Fonksiyonel Programlama (1) # Python

in #blog5 years ago


Source

İşlerin yoğunluğundan kod yazmaya ara vermiştim. Bu gün kısa bir vaktim var ve uzun zamandır aklıma takılan bir konuyu sizinle paylaşmak istiyorum.

Aslında Python dilinde yeni olsam da geçmişte farklı programlama dilleri denedim. Biraz tecrübem var sayılır.

Ancak bu konu normal programlama dillerine de yeni gelen bir özellik olduğundan ben de ilk defa Python da karşılaştım.

Daha fazla uzatmadan hemen konuya gireyim. Functional programming denilen bir kavram var.

Normalde bilirsiniz programlamada kodlar alt alta yazılır. Hatta derleyici ya da interpreter da kod işleyişini bu şekilde yapar, yani satır satır.

Fonksiyonel programlama olarak geçen bu kavramda alt alta yerine kodları yan yana yazıyorsunuz. Bu da benim gibi geleneksel kodlama bilen insanlar için anlamayı zorlaştırıyor.

Ama sanırım yeni trend olarak geçen bu kavramı anlamadan geçmem lazım. Neyse başlayalım.

Olayı örnekler üzerinden giderek anlatacağım. Daha önceki yazılarımda listelerden örnekler verdim.

Bir liste birkaç çeşit yolla oluşturulabiliyordu. Mesela boş bir liste oluşturmak için:

myList = list()

ya da

myList = []

dememiz yeterliydi. İçerisinde atıyorum tam sayılar olan bir liste oluşturmak için de

myList = [1,2,3,4,5]

gibi liste operatörünün içine elemanları yazıyorduk. Şimdi basit bir for döngüsü ile liste oluşturalım :

Bu kodun çıktısı aşağıdaki gibidir :

Şimdi de fonksiyonel programlama kullanarak aynı listeyi baştan oluşturmayı deneyelim :

Bu kodun çıktısı da yukarıdakinin aynısıdır. Görüldüğü gibi tek satırda hem diziyi oluşturduk hem de for döngüsü ile yaptığımız modifiye işlemini yapmış olduk.

Gayet kolay görünüyor değil mi? Bu sebeple sanırım fonksiyonel programlama trend haline geldi.

Ama her zaman bu kolaylıkta olmuyor. Şimdi çıkmam lazım karşılaştığım örnekleri bir sonraki yazımda sizinle paylaşacağım.

İyi günler dilerim.

Sort:  

Congratulations @bpn! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :

You published more than 10 posts. Your next target is to reach 20 posts.

You can view your badges on your Steem Board and compare to others on the Steem Ranking
If you no longer want to receive notifications, reply to this comment with the word STOP

To support your work, I also upvoted your post!

Vote for @Steemitboard as a witness to get one more award and increased upvotes!

you just rose a upvote from @curationhelper thanks for post promotion.

You got a 50.00% upvote from @bid4joy courtesy of @addo.sports!

You got a 50.00% promotion boost from @shares courtesy of @addo.sports! Thank you for following @Shares rules of promoting your articles.

Have a nice day.
@Shares - Keep steeming good articles to help Steem network grow.

You got a 50.00% upvote from @whalepromobot courtesy of @bpn!

You got a 50.00% upvote from @redlambo courtesy of @addo.sports! Make sure to use tag #redlambo to be considered for the curation post!

You got a 50.00% upvote from @whalecreator courtesy of @addo.sports! Delegate your Steem Power to earn 100% payouts.

This post has received a $100.00 % upvote from @siditech thanks to: @addo.sports.
Here's a banana! banana-small.png

Coin Marketplace

STEEM 0.16
TRX 0.15
JST 0.028
BTC 56705.83
ETH 2400.24
USDT 1.00
SBD 2.30