elektrik port üyelik servisleri elektrik port üyelik servisleri

Processing Dili Nedir? |
ElektrikPort Akademi

Basit bir programlama dili olan Processing, programlama öğrenmeye başlamak, Arduino ile etkileşimli çalışabilecek basit programlar yazmak için iyi bir seçenek veya eğlenceli bir hobi olabilir. Bu yazımızda sizlerle birlikte Processing dilini inceleyeceğiz.



A- A+
15.06.2015 tarihli yazı 20806 kez okunmuştur.

Processing Dili Nedir?


Processing dili 2001 yılından bu yana görsel odaklı geliştirilen basit seviyede bir programlama dili ve ortamıdır. Hızlı prototip çıkarma ve eskiz çalışması yapabilme için geliştirilse de zaman içinde programlama temellerini anlayabilmek ve anlatabilmek için programlamaya giriş aşamasında eğitim aracı olarak kullanılmaya başlanmıştır. Processing, programlamaya yeni başlamış insanların kullanabileceği bir tümleşik geliştirme ortamıdır. Bu tümleşik ortam kolay bir şekilde programlamayı öğretirken aynı kolaylıkla zengin görsellikler yaratmaya yardımcı oluyor.
 
►İlginizi Çekebilir: Processing Programlama - 1. Bölüm
 
Türkiye'de çok fazla yaygın olmasa da yurtdışında özellikle görsel sanatçıların çok sıklıkla kullandıkları bir programlama dili olan Processing, 100'den fazla kütüphane içermektedir. Çoklu ortam türleriyle (video, resim, ses gibi) sorunsuz ve kolay bir şekilde çalışılabilmesi, çok kolay öğrenilebilir olması, programlama prensiplerini anlamaya olanak sağlaması nedeniyle birçok araştırmacı, öğrenci, tasarımcı ve sanatçı tarafından kullanılmaktadır.
 

 
Processing dilinde prototip amaçlı oluşturulduğu için klasik programlama dillerindeki yapı ikinci planda kalıyor. Ekstra hiç bir komut kullanmadan sadece hazır fonksiyon ve nesneleri kullanarak program yazabiliyorsunuz. Bu da öğrenme sürecini hızlandırıyor ve bilgisayar mimarisine girmeden temel programlamayı kavrayabilmenizi sağlıyor.



Şekil 1: Processing Programlama Dili için Örnekler



 
Ayrıca bu yapı kullanıcıya esneklik sağlıyor. Kağıt üzerinde çizdiğiniz bir karakteri kolayca programa aktararak onu hareketlendirebiliyor ya da zengin kütüphaneleri kullanıp profesyonel programlar yazabiliyorsunuz. 
 
Processing dilini incelediğimizde Java'ya olan benzerliği fark ediliyor. Fakat Java'dan en önemli farkı grafikler ve iletişim metodları üzerine özel nitelikleri olması. Geliştirme arayüzü Processing  Development Envirioment (PDE), Processing için özel tasarlandığı için çok basit ve sade, bir o kadarda kolay bir arabirim. Yazdığınız programları çalışmaya hazır hale getirebilmek için sadece PDE deki "export" butonunu kullanmak yeterli.
 
 

İlk Program

 
void setup() {
       size(400, 400);
       stroke(255);
       background(192, 64, 0);
       } 
void draw() {
       line(150, 25, mouseX, mouseY); 
       }
void mousePressed() {
       saveFrame("output-####.png");
       background(192, 64, 0);
       } 
 
 


Şekil 2: Yazılan Programın Ön İzlemesi
 
 


Şimdi kodları birlikte inceleyelim;
 

void setup(); Program ilk başlatıldığında atanacak özellikleri belirler. Bu bloktaki kodlar program ilk çalıştırıldığında işletilir ve program yeniden çalıştırılana kadar tekrar işletilmez.
 
size(x,y); Program çalıştığında açılacak pencerenin boyutunu piksel cinsinden belirler. Burada x genişlik y ise yüksekliktir. Bu pikseller arasında bir koordinat sisteminde olduğu gibi koordinat belirterek çalışabiliriz.
 
stroke(r,g,b); Burada ekrana yazdırılacak ya da çizdirilecek nesnelerin rengi belirlenir. Renk yoğunlukları 0-255 arasında verilecek sayıyla belirlenir. "r" kırmızı yoğunluğunu, "g" yeşil yoğunluğunu "b" mavi yoğunluğunu belirtir.
 
stroke(r,g,b,t) şeklinde kullanıldığında t ye girilen değer (0-255 aralığında) transparanlığı ayarlar. 

stroke(w) şeklinde de kullanılabilir w yerine web renkleri cinsinden değer yazılabilir.
 
stroke(128, 100,0,128)   // kırmızı yoğunluğu %50, yeşil %40, mavi %0, transparanlık %50

stroke(#FF8000);             // parlak turuncu 

Ayrıca renk seçimi için "Tools" menüsü altındaki "Color Selector" ü kullanabilirsiniz.
 
background(r,g,b); Bu kod arka plan rengini belirtir. Çalışma şekli stroke ile aynıdır.
 
void draw(); Bu blok programa bir şey çizmesi gerektiğini bildirir. Blok içine yazılacak kodlar çizilecek nesnenin özelliklerini belirler program akışı esnasında bu bloğun sonuna gelindiğinde tekrar bloğun başına döner ve program kapatılana kadar döngü şeklinde çalıştırılır.
 
Draw bloğu içerisindeki;
 
line(x,y,z,t); Bu fonksiyon adından da anlaşılacağı gibi çizgi çizme fonksiyonudur. X ve Y çizginin başlangıç koordinatlarını ZT ise bitiş koordinatlarını belirtir. Burada "150, 25" çizilecek çizgilerin başlangıç noktasıdır, mouseX ve mouseY ise o anda mouse imlecinin bulunduğu noktanın koordinatlarıdır. Yani draw bloğu her çalıştığında başlangıç noktasıyla mouse imlecinin bulunduğu nokta arasına bir çizgi çizer.



Şekil 3: Line (x,y,z,t) Fonksiyonunun Düzlem Üzerinde Gösterilmesi

 
►İlginizi Çekebilir: Swift Programlama | 1. Bölüm


Başlangıç noktasını açılan ekranın ortasındaki nokta olarak belirlemek için başlangıç noktası değerlerini width ve height ile belirleyebiliriz;
 
line(width/2 , height/2 , mauseX , mauseY) ; bu durumda başlangıç noktası açılan pencerenin ortasındaki nokta olacaktır.
 
Ayrıca;

rect(x,y,z,t); ile kare
ellipse(x,y,z,t); ile elips çizebilirsiniz
 
Draw bloğundan sonraki;

void mousePressed(); Bu fonksiyon mouse butonuna tıklanma olayı durumunda bu bloğun içine yazılan kodlar işletir. Sadece mouse butonuna tıklandığında bir kere çalıştırılır.

saveFrame("output-####.png"); bu fonksiyon her çalıştırıldığında işletim sisteminizin kurulu olduğu sürücünüze "output-####.png " adında pencerenizin ekran görüntüsünü kaydeder. "####" kısmına her defasında farklı bir sayı vererek ekran görüntülerinin üst üste yazılmasını önleyecektir.
 
background(192,64,0); Bu fonksiyona girilen değerler setup bloğundaki background fonksiyonuna girilen değerlerle aynı olacağı için Mouse tıklandığında arka planı ilk durumuna getirir ve o ana kadar ekranda beliren tüm nesneler silinmiş olur. 
 
Böylece mouse butonuna her tıkladığınızda önce pencerenin son halini ekran görüntüsü olarak kaydedecek, daha sonra pencerenizi temizleyerek tekrar çizmeye hazır hale getirecektir.
 
Processing open-source (açık kaynaklı) bir yazılımdır. Ücretsiz olarak buradan indirebilirsiniz. Yine aynı sitenin tutorial kısmıda sizin Processing adına kafanızda bir şeyler oluşturmak yeterli olacaktır. Bununla yeterli kalmamınızı ve File>>Examples menüsünde tek tek her örneğe bakmanızı tavsiye ederiz. Eminiz ki ilgi alanınıza uygun birçok şey bulacaksınız.
 
Kaynak:
 
►Processing.org

Aktif etkinlik bulunmamaktadır.
ANKET
Endüstri 4.0 için En Hazır Sektör Hangisidir

Sonuçlar