İşleme (programlama dili) - Processing (programming language)

İşleme
Logo işleniyor
paradigma Nesne odaklı
Tarafından tasarlandı Casey Reas , Ben Fry
İlk ortaya çıktı 2001 ; 20 yıl önce ( 2001 )
kararlı sürüm
4.0b1 / 9 Ağustos 2021 ; 2 ay önce ( 2021-08-09 )
Lisans GPL , LGPL
Dosya adı uzantıları .pde
İnternet sitesi işleme .org

Processing , programcı olmayanlara bilgisayar programlamanın temellerini görsel bir bağlamda öğretmek amacıyla elektronik sanatlar, yeni medya sanatı ve görsel tasarım toplulukları için oluşturulmuş ücretsiz bir grafik kitaplık ve entegre geliştirme ortamıdır (IDE) .

İşleme, ek sınıflar ve diğer adlandırılmış matematiksel işlevler ve işlemler gibi ek basitleştirmelerle birlikte Java dilini kullanır . Ayrıca derleme ve yürütme aşamasını basitleştirmek için bir grafik kullanıcı arabirimi sağlar.

İşleme dili ve IDE, Arduino , Wiring ve p5.js dahil olmak üzere diğer projelerin öncüsü olmuştur.

Tarih

Proje 2001 yılında , her ikisi de eskiden MIT Medya Laboratuvarı Estetik ve Hesaplama Grubundan olan Casey Reas ve Ben Fry tarafından başlatıldı . 2012 yılında, üçüncü proje lideri olarak katılan Daniel Shiffman ile birlikte Processing Foundation'ı kurdular . Johanna Hedva , Vakfa 2014 yılında Savunuculuk Direktörü olarak katıldı.

Başlangıçta, İşleme etki alanı alındığı için İşleme , proce55ing.net URL'sine sahipti . Sonunda Reas ve Fry, işleme.org alanını satın aldı. İsmin harf ve rakamların bir kombinasyonu olmasına rağmen, yine de telaffuz edildi işleme . Proce55ing olarak adlandırılan ortamı tercih etmezler . Alan adı değişikliğine rağmen, İşleme hala p5 terimini bazen kısaltılmış bir ad olarak kullanır ( p5 özellikle kullanılır, p55 değil ), örneğin p5.js buna bir referanstır.

2012'de İşleme Vakfı kuruldu ve 501(c)(3) kar amacı gütmeyen statüsünü alarak, Topluluğu İşleme Projesi ile başlayan araçlar ve fikirler etrafında destekledi. Vakıf, dünyanın dört bir yanındaki insanları her yıl Processing Community Day adı verilen yerel etkinliklerde buluşmaya teşvik ediyor .

Özellikleri

IDE işleniyor
Logo işleniyor
4.0b1 Screenshot.png işleniyor
Processing'in entegre geliştirme ortamının ekran görüntüsü.
kararlı sürüm
3.5.4 / 17 Ocak 2020 ; 20 ay önce ( 2020-01-17 )
depo
Yazılmış Java , GLSL , JavaScript
İşletim sistemi Çapraz platform
Tip Entegre geliştirme ortamı
İnternet sitesi işleme .org

İşleme, projeleri düzenlemek için entegre bir geliştirme ortamına (IDE) minimal bir alternatif olan bir eskiz defteri içerir .

Her İşleme çizimi, aslında İşleme dilinin özelliklerinin çoğunu uygulayan PApplet Java sınıfının (önceden Java'nın yerleşik Uygulamasının bir alt sınıfı) bir alt sınıfıdır.

Processing'de programlama yaparken, kod derlemeden önce saf Java'ya çevrildiğinde, tanımlanan tüm ek sınıflar iç sınıflar olarak ele alınacaktır . Bu , Processing'e saf Java modunda kod yazması açıkça söylenmediği sürece, sınıflarda statik değişkenlerin ve yöntemlerin kullanılmasının yasak olduğu anlamına gelir .

İşleme ayrıca kullanıcıların PApplet taslağı içinde kendi sınıflarını oluşturmalarına olanak tanır. Bu, herhangi bir sayıda argüman içerebilen karmaşık veri türlerine izin verir ve yalnızca int (tamsayı), karakter (karakter), kayan nokta (gerçek sayı) ve renk (RGB, RGBA , hex ) gibi standart veri türlerini kullanma sınırlamalarını ortadan kaldırır. ).

Örnekler

İşlemedeki bir "Merhaba Dünya" programının mümkün olan en basit versiyonu şudur:

// This prints "Hello World." to the IDE console.
println("Hello World.");

Ancak, İşleme'nin daha görsel yönelimli doğası nedeniyle, aşağıdaki kod, dilin görünümü ve hissi için daha iyi bir örnektir.

// Hello mouse.
void setup() {
  size(400, 400);
  stroke(255);
  background(192, 64, 0);
}

void draw() {
  line(150, 25, mouseX, mouseY);
}

Ödüller

2005 yılında Reas ve Fry , İşleme konusundaki çalışmaları nedeniyle Net Vision kategorisinde Ars Electronica'dan Altın Nica ödülünü kazandı .

Ben Fry , Etkileşim Tasarımı kategorisinde Smithsonian Cooper-Hewitt Ulusal Tasarım Müzesi tarafından verilen 2011 Ulusal Tasarım Ödülü'nü kazandı . Ödül açıklaması şöyle diyor:

"Grafik tasarım ve bilgisayar biliminde bir arka plan çizen Ben Fry, verileri görselleştirme konusunda uzun süredir devam eden bir büyünün peşinde. insan genomundan beyzbol maaşlarına, metin belgelerinin evrimine. Casey Reas ile birlikte, hesaplamalı tasarım ve etkileşimli medya yazılımı çizimi için açık kaynaklı bir programlama ortamı olan Processing Project'i kurdu. Sanatçılara ve tasarımcılara erişilebilir çalışma araçları sağlar. mühendisleri ve bilgisayar bilimcilerini tasarım kavramları hakkında düşünmeye teşvik ederken kodla."

Lisans

Processing'in çekirdek kitaplıkları, dışa aktarılan uygulamalarda ve uygulamalarda bulunan kod, GNU Kısıtlı Genel Kamu Lisansı altında lisanslanmıştır ve kullanıcıların orijinal kodlarını bir lisans seçeneği ile yayınlamalarına olanak tanır.

IDE, GNU Genel Kamu Lisansı altında lisanslanmıştır .

İlgili Projeler

İşleme tek bir dil değil, daha çok öğrenme, öğretme ve kodla bir şeyler yapmaya yönelik sanat odaklı bir yaklaşımdır. Birkaç varyant ve ilgili projeler vardır:

Rakamlarla Tasarım

İşleme, MIT'de Design By Numbers projesinde yapılan orijinal çalışmaya dayanıyordu . Aynı fikirlerin çoğunu paylaşır ve bu deneyin doğrudan çocuğudur.

Processing.js

2008'de John Resig , işleme için Canvas öğesini kullanarak İşleme'yi JavaScript'e taşıdı ve İşleme'nin bir Java eklentisine gerek kalmadan modern web tarayıcılarında kullanılmasına izin verdi. O zamandan beri, Toronto'daki Seneca College öğrencileri de dahil olmak üzere özgür yazılım çalışanları projeyi devraldı.

Processing.js ayrıca, çizimler ve animasyonlar oluşturarak Khan Academy'de her yaştan öğrenciye çok temel programlamayı savunmak için kullanılır . Öğrenciler yarattıklarını diğer öğrencilere sergilerler.

p5.js

2013'te Lauren McCarthy , Processing Foundation'ın resmi desteğine sahip Processing.js'ye yerel bir JavaScript alternatifi olan p5.js'yi yarattı .

P5Py

p5, Python kullanarak hızlı bir şekilde simülasyonlar ve etkileşimli sanatlar oluşturmanıza yardımcı olmak için yüksek düzeyde çizim işlevselliği sağlayan bir Python kitaplığıdır. Programlamayı yeni başlayanlar, eğitimciler ve sanatçılar için daha erişilebilir hale getirmek için İşleme'nin temel fikirlerini (görsel bir bağlamda kodlamayı öğrenme) Python'un okunabilirliğiyle birleştirir.

Processing.py

İşleme için Python Modu veya Processing.py, temeldeki Java araç setine yönelik bir Python arabirimidir. Esas olarak 2010 yılında başlayarak, James Gilles ve Ben Alkov'un katkılarıyla Jonathan Feinberg tarafından geliştirilmiştir.

Kablolama, Arduino ve Fritzing

İşleme başka projeyi oluşmasına neden oldu Kablolama yazılmış kütüphaneler koleksiyonu ile İşleme IDE kullanan, C ++ nasıl programı öğretmek sanatçıların bir yolu olarak dile mikrodenetleyiciler . Artık Wiring ortamını ve dilini kullanan Wiring ve Arduino olmak üzere iki ayrı donanım projesi var . Fritzing , tasarımcıların ve sanatçıların etkileşimli prototiplerini belgelemelerine ve fiziksel prototiplemeden gerçek ürüne adım atmalarına yardımcı olan aynı türden başka bir yazılım ortamıdır.

Mobil İşleme

Artık feshedilmiş olan başka bir yan proje, İşleme dili ve ortamı kullanılarak yazılan yazılımların Java destekli mobil cihazlarda çalışmasına izin veren Francis Li'nin Mobil İşleme'sidir. Bugün aynı işlevlerin bir kısmı Processing'in kendisi tarafından sağlanmaktadır.

iProcessing

iProcessing, insanların Processing dilini kullanarak yerel iPhone uygulamaları geliştirmelerine yardımcı olmak için oluşturuldu. Processing.js kitaplığının ve iPhone için bir Javascript uygulama çerçevesinin bir entegrasyonudur.

Spde

Spde (Scala Processing Development Environment), Processing'in azaltılmış Java sözdizimini ve özel önişlemcisini , Java platformunda da çalışan ve statik yöntemlere izin vermemek gibi aynı kısıtlamalardan bazılarını uygulayan ve aynı zamanda daha kısa olmasına izin veren kullanıma hazır Scala programlama dili ile değiştirir. kod ve destekleyici işlevsel programlama .

JRubySanat

JRubyArt (eski adıyla Ruby-processing ), JRuby kullanarak Java platformunda çalışan Ruby dilinde İşleme için bir sarmalayıcıdır .

tüy

Quil, Clojure ve ClojureScript için İşleme tabanlı etkileşimli bir animasyon kitaplığıdır .

medya

İçin müzik video House of Cards tarafından Radiohead verileriyle birleştirilecek işleme kullanılarak oluşturuldu lidar kullanılarak birlikte, teknoloji akrilik cam ve aynalar görüntüsü bozuk olduğu sahneleri oluşturmak için, kısmen kaybolur veya rüzgarla taşınırken sanki disintegrate. İşleme ayrıca Nature ve New York Times gibi yayınlar için illüstrasyonlar oluşturmak , galeri sergileri için heykeller çıkarmak, devasa video duvarlarını kontrol etmek ve kazak örmek için kullanıldı.

Ayrıca bakınız

Dipnotlar

Referanslar

Dış bağlantılar