Պրոցեսսինգ
![]() | |
---|---|
![]() | |
Տեսակ | օբյեկտ կողմնորոշված ծրագրավորման լեզու, ծրագրավորման լեզու և զարգացման ինտեգրված միջավայր |
Առաջացել է | 2001 |
Ստեղծող | Processing Foundation? |
ՕՀ | Վինդոուզ, Լինուքս և մաքՕՍ |
Ընթացիկ տարբերակ | 4.1.1 (նոյեմբերի 28, 2022)[1] |
Ներշնչվել է | Design By Numbers, PostScript, Լոգո, Ջավա և C |
Արտոնագիր | GNU Lesser General Public License և GPLv2 |
Կայք | processing.org(անգլ.) |
Աղբյուր կոդ | github.com/processing/processing |
![]() |
Պրոցեսսինգ (անգլ.՝ Processing), բաց աղբյուրի գրաֆիկական գրադարան և ինտեգրված զարգացման միջավայր, որը կառուցվել է էլեկտրոնային արվեստի, նոր մեդիա արվեստի և վիզուալ ձևավորման համայնքների համար, որոնք ոչ-ծրագրավորողներին ուսուցանելու նպատակով ծրագրավորելու հիմունքներն են ՝ տեսողական համատեքստում։
Պրոցեսսինգն օգտագործում է Ջավայի լեզուն՝ լրացուցիչ պարզեցումներով, ինչպիսիք են լրացուցիչ դասերը և մաթեմատիկական այլընտրանքային գործառույթներն ու գործողությունները։ Ինչպես նաև սա, այն նաև ունի գրաֆիկական ինտերֆեյս ՝ կազմման և կատարման փուլը պարզեցնելու համար։
Պրոցեսսինգ լեզուն և IDE- ն նախադրյալն էին այլ նախագծերի, ներառյալ Արդուինո, Վիրինգ և Պէ5.ջիէս։
Պատմություն[խմբագրել | խմբագրել կոդը]
Ծրագիրը նախաձեռնվել է 2001 թ.-ին Քեյսի Ռեյսի և Բեն Ֆրայի կողմից ՝ երկուսն էլ նախկինում գեղագիտության և հաշվարկների խմբի MIT Մեդիա Լաբի կողմից։ 2012-ին նրանք սկսեցին Պրոցեսսինգ հիմնադրամը Դանիել Շիֆֆմանի հետ միասին, որը միացավ որպես երրորդ ծրագրի ղեկավար։ Յոհաննա Հեդվան հիմնադրամին միացել է 2014 թ.-ին ՝ որպես Փաստաբանության տնօրեն[2]։
Սկզբնապես, Պրոցեսսինգն ուներ URL պրոցե55ինգ.նեթ-ում, քանի որ պրոցեսսինգի տիրույթի անունը վերցված էր։ Վերջապես Ռեյսը և Ֆրայը ձեռք բերեցին տիրույթ պրոցեսսինգ.օրգ[3]։ Չնայած անունն ուներ տառերի և թվերի համադրություն, այն դեռևս արտասանվում էր պրոցեսսինգ։ Նրանք չեն նախընտրում միջավայրը, որը կոչվում է Պրոցե55ինգ։ Չնայած տիրույթի անվան փոփոխությանը, Պրոցեսսինգը դեռևս օգտագործում է p5 տերմինը երբեմն որպես կրճատված անուն (p5 մասնավորապես օգտագործվում է, այլ ոչ թե p55), օրինակ p5.js- ը դրա հղում է[4]։
Առանձնահատկություններ[խմբագրել | խմբագրել կոդը]
Յուրաքանչյուր Պրոցեսսինգի ուրվագիծ իրականում հանդիսանում է ՊԱպպլետ
Ջավա դասի ենթախումբ (նախկինում ՝ Ջավայի ներկառուցված Applet- ի ենթադաս), որն իրականացնում է Պրոցեսսինգ լեզվի առանձնահատկությունների մեծ մասը[5]։
Պրոցեսսինգի գործընթացում ծրագրավորելիս, սահմանված բոլոր լրացուցիչ դասերը կդիտարկվեն որպես ներքին դասեր, երբ կոդը նախքան կազմելը թարգմանվում է մաքուր Ջավա[6]։ Սա նշանակում է, որ դասերում ստատիկ փոփոխականների և մեթոդների օգտագործումը արգելված է, քանի դեռ Պրոցեսսինգի գործընթացին հստակորեն չի պահանջվում ծածկագրվել մաքուր Ջավա ռեժիմով։
Պրոցեսսինգը նաև թույլ է տալիս օգտվողներին ստեղծել իրենց սեփական դասերը ՊԱպպլետ ուրվագծի շրջանակներում։ Սա թույլ է տալիս բարդ տվյալների տիպեր, որոնք կարող են ներառել ցանկացած փաստարկ և կարող են խուսափել բացառապես ստանդարտ տվյալների տեսակների օգտագործման սահմանափակումներից, ինչպիսիք են ՝ ինթ (ամբողջական), չար (նիշ), ֆլոթ (իրական համարը) և գույնը։
Օրինակներ[խմբագրել | խմբագրել կոդը]
Պրոցեսսինգի մեջ «Բարև աշխարհ»-ն ամենապարզ հնարավոր տարբերակն է.
//This prints "Hello World." to the IDE console.
println("Hello World.");
Այնուամենայնիվ, Պրոցեսսինգի ավելի տեսողականորեն կողմնորոշված բնույթի պատճառով հետևյալ ծածկագիրը լեզվի տեսքի և զգալու ավելի լավ օրինակ է։
//Hello mouse.
void setup() {
size(400, 400);
stroke(255);
background(192, 64, 0);
}
void draw() {
line(150, 25, mouseX, mouseY);
}
Մրցանակներ[խմբագրել | խմբագրել կոդը]
2005 թվականին Ռեյսը և Ֆրայը շահեցին Արվեստ էլեկտրոնիկայից «Ոսկե Նիկա» մրցանակը Համացանցային հեռատեսություն անվանակարգում ՝ Պրոցեսսինգի վերաբերյալ իրենց աշխատանքի համար[7]։
Բեն Ֆրայը շահեց Սմիթսոնյան Կուպեր-Հյուիթ ազգային դիզայնի թանգարանի կողմից տրված 2011 թվականի դիզայնի ազգային մրցանակը `Փոխգործակցության դիզայնի կատեգորիայում։ Մրցանակաբաշխության մեջ ասվում է.
«Գրաֆիկական դիզայնի և համակարգչային գիտության գծով ֆոնի վրա նկարելը, Բեն Ֆրային հետապնդում է երկար հմայքը տվյալների արտացոլման միջոցով։ Որպես Բոստոնում Fathom տեղեկատվական դիզայնի վարիչ, Fry- ը մշակում է ծրագրակազմ, տպագիր աշխատանքներ և գրքեր, որոնք պատկերում և բացատրում են թեմաներ բեյսբոլի աշխատավարձերի մարդկային գենոմը դեպի տեքստային փաստաթղթերի էվոլյուցիան։ Քեյսի Ռեյսի հետ նա հիմնադրել է Պրոցեսսինգի նախագիծը `բաց կոդով ծրագրավորման միջավայր, համակարգչային նախագծման դասավանդման և ինտերակտիվ-մեդիա համակարգչային ծրագրերի մշակման համար:Այն արվեստագետներին և դիզայներներին տրամադրում է աշխատանքի մատչելի միջոցներ կոդով՝ ինժեներներին և համակարգչային գիտնականներին խրախուսելով մտածել նախագծման հասկացությունների մասին[8]»։
Լիցենզիա[խմբագրել | խմբագրել կոդը]
Պրոցեսսինգի հիմնական գրադարանները, արտահանվող ծրագրերում և հավելվածներում ներառված ծածկագիրը արտոնագրված են GNU- ի Փոքր ընդհանուր հանրային լիցենզիայի ներքո, ինչը թույլ է տալիս օգտվողներին լիցենզիայի ընտրությամբ թողարկել իրենց բնօրինակ կոդը։ IDE- ն արտոնագրված է GNU- ի հանրային ընդհանուր արտոնագրի ներքո։
Կապված նախագծեր[խմբագրել | խմբագրել կոդը]
Պրոցեսսինգը միայնակ լեզու չէ, այլ ՝ արվեստի վրա հիմնված մոտեցում սովորելու, դասավանդելու և իրերը կոդով կազմելու համար։ Կան մի քանի տարբերակներ և հարակից նախագծեր.
Դիզայնն ըստ համարների[խմբագրել | խմբագրել կոդը]
Պրոցեսսինգը հիմնված էր MIT- ում Դիզայն Ըստ Համարների նախագծի վրա կատարված բուն աշխատանքի վրա։ Այն կիսում է նույն գաղափարներից շատերը և այդ փորձի անմիջական երեխան է։
Պրոցեսսինգ․ջիէս[խմբագրել | խմբագրել կոդը]
2008-ին Ջոն Ռեզիգը Պրոցեսսինգը միացրեց ՋավաՍկրիպտին` օգտագործելով Կանվաս տարրը` մատուցման համար[9], ինչը թույլ է տալիս Պրոցեսսինգն օգտագործել ժամանակակից վեբ բրաուզերներում `առանց Ջավա փլագինի անհրաժեշտության։
Այդ ժամանակվանից սկսած, նախագիծը ստանձնեց բաց կոդով համայնքը, ներառյալ ուսանողները Տորոնտոյի Սենեկա քոլեջում։ Պրոցեսսինգ․ջիէսն օգտագործվում է նաև Խան Ակադեմիայի բոլոր տարիքի ուսանողների համար հիմնական ծրագրավորում դասավանդելու համար `ստեղծելով գծանկարներ և անիմացիա։ Սովորողները իրենց ստեղծագործությունները ցույց են տալիս մյուս սովորողներին։
Պէ5.ջիէս[խմբագրել | խմբագրել կոդը]
2013 թ.-ին Լորան Մաքքարթին ստեղծեց Պէ5.ջիէս-ը, ՋավաՍկրիպտի հայրենի այլընտրանքն է Պրոցեսսինգ.ջիէս-ին, որն ունի Պրոցեսսինգ հիմնադրամի պաշտոնական աջակցություն։ Մաքքարթին նաև ներդնում է ներածական դասընթաց Պէ5.ջիէս- ին՝ Կադենզեի վերաբերյալ[10]։
Պրոցեսսինգ.py[խմբագրել | խմբագրել կոդը]
Փայթընի ռեժիմը Պրոցեսսինգի կամ Պրոցեսսինգ.py- ի համար Փայթընի միջերես է հանդիսանում Ջավայի հիմքում ընկած գործիքակազմին։ Այն հիմնականում մշակվել է Ջnնաթան Ֆայնբերգի կողմից ՝ սկսած 2010 թվականից ՝ Ջեյմս Գիլլեսի և Բեն Ալկովի ներդրումներով[11]։
Վիրինգ, Արդուինո և Ֆրիթզինգ[խմբագրել | խմբագրել կոդը]
Պրոցեսսինգն առաջացրել է մեկ այլ նախագիծ՝ Վիրինգ, որն օգտագործում է Պրոցեսսինգի IDE- ն ՝ C ++ լեզվով գրված գրադարանների հավաքածուով, որպես արվեստագետներին սովորեցնելու միջոց ՝ ինչպես ծրագրավորել միկրոկառավարիչներ[12]։ Այժմ կան երկու առանձին ապարատային նախագծեր՝ Վիրինգ և Արդուինո, որոնք օգտագործում են Վիրինգ միջավայրը և լեզուն։ Ֆրիթզինգը նույն տեսակի մեկ այլ ծրագրային միջավայր է, որն օգնում է դիզայներներին և նկարիչներին փաստաթղթավորել իրենց ինտերակտիվ նախատիպերը և քայլը կատարել ֆիզիկական նախատիպերից մինչև իրական արտադրանք։
Բջջային Պրոցեսսինգ[խմբագրել | խմբագրել կոդը]
Մեկ այլ ակնթարթային նախագիծ, որն այժմ անպաշտպան է, դա Ֆրենսիս Լիի Բջջային Պրոցեսսինգն է, որը թույլ է տվել օգտագործել Պրոցեսսինգ լեզուն և միջավայրը և գործարկել Ջավայի միջոցով աշխատող շարժական սարքերում։ Այսօր նույն գործառույթների մի մասը ապահովվում է հենց Պրոցեսսինգի կողմից[13]։
ԱյՊրոցեսսինգ[խմբագրել | խմբագրել կոդը]
ԱյՊրոցեսսինգը ստեղծվել է `օգնելու մարդկանց զարգացել ազգաին Այֆոն հավելվածներ` օգտագործելով Պրոցեսսինգ լեզուն։ Դա Պրոցեսսինգ.ջիէս Գրադարանի ինտեգրացիա է և Այֆոնի համար ՋավաՍկրիպտի կիրառման շրջանակ[14]։
ՍՊԴԵ[խմբագրել | խմբագրել կոդը]
ՍՊԴԵ-ն (Սքալա Պրոցեսսինգ զարգացման միջավայր) փոխարինում է Պրոցեսսինգի իջեցված Ջավա շարահյուսությանը և սովորական պրոցեսորին `փոխարինելով արտարժույթի Սքալա ծրագրավորման լեզվով, որը գործում է նաև Ջավա պլատֆորմի վրա և իրականացնում է նույն սահմանափակումները, ինչպիսիք են ստատիկ մեթոդները չթողնելը, միևնույն ժամանակ թույլ տալով ավելի հակիրճ կոդ և ֆունկցիոնալ ծրագրավորման աջակցություն[15][16][17]։
Ծանոթագրություններ[խմբագրել | խմբագրել կոդը]
- ↑ Release 4.1.1 — 2022.
- ↑ «People»։ processingfoundation.org։ Վերցված է 2017-04-24
- ↑ «Processing 1.0 _ALPHA_ - processing.org»։ processing.org։ Արխիվացված է օրիգինալից 2012-04-28-ին։ Վերցված է 2019-10-13
- ↑ «What means number 5 in name "p5"? · Issue #2443 · processing/p5.js»։ GitHub
- ↑ Jeanine Meyer (հունիսի 15, 2018)։ Programming 101: The How and Why of Programming Revealed Using the Processing Programming Language։ Apress։ էջեր 121–։ ISBN 978-1-4842-3697-0
- ↑ Ira Greenberg (մարտի 25, 2010)։ The Essential Guide to Processing for Flash Developers։ Apress։ էջեր 412–։ ISBN 978-1-4302-1980-4
- ↑ Meredith Hoy (հունվարի 3, 2017)։ From Point to Pixel: A Genealogy of Digital Aesthetics։ Dartmouth College Press։ էջեր 142–։ ISBN 978-1-5126-0023-0
- ↑ http://cdn.cooperhewitt.org/2011/05/26/Final%20-%20CHNDM%20NDA%202011%20Winner%20Release%205-26-11.pdf
- ↑ «John Resig - Processing.js»
- ↑ Introduction to Programming for the Visual Arts with p5.js on Kadenze
- ↑ Allison Parrish, Ben Fry, Casey Reas (մայիսի 11, 2016)։ Getting Started with Processing.py: Making Interactive Graphics with Processing's Python Mode։ Maker Media, Incorporated։ ISBN 978-1-4571-8679-0
- ↑ «Processing, Wiring, and Arduino (EE Tip 101) - Circuit Cellar»։ սեպտեմբերի 18, 2013
- ↑ «Android - Processing»։ Արխիվացված է օրիգինալից 2014-08-19-ին։ Վերցված է 2013-06-03
- ↑ «iProcessing Puts Processing.js on iPhone - But What About Browsers? - CDM Create Digital Music»։ փետրվարի 11, 2010
- ↑ «Spde: Spde»։ Technically.us։ Արխիվացված է օրիգինալից 2011-08-02-ին։ Վերցված է 2013-08-20
- ↑ «Coderspiel / Runaway processing»։ Technically.us։ Վերցված է 2013-08-20
- ↑ «Coderspiel / Flocking with Spde»։ Technically.us։ Վերցված է 2013-08-20
Ծանոթագրություններ[խմբագրել | խմբագրել կոդը]
- Bohnacker, Hartmut; Gross, Benedikt; Laub, Julia; Lazzeroni, Claudius (August 22, 2012), Generative Design: Visualize, Program, and Create with Processing (1st տպ.), Princeton Architectural Press, p. 472, ISBN 978-1616890773
- Glassner, Andrew (August 9, 2010), Processing for Visual Artists: How to Create Expressive Images and Interactive Art (1st տպ.), A K Peters/CRC Press, p. 955, ISBN 1-56881-716-9, արխիվացված օրիգինալից April 21, 2011-ին, https://web.archive.org/web/20110421204824/http://www.crcpress.com/ecommerce_product/product_detail.jsf?isbn=9781568817163
- Reas, Casey; Fry, Ben (June 17, 2010), Getting Started with Processing (1st տպ.), Make, p. 208, ISBN 1-4493-7980-X
- Noble, Joshua (July 21, 2009), Programming Interactivity: A Designer's Guide to Processing, Arduino, and Openframeworks (1st տպ.), O'Reilly Media, p. 736, ISBN 0-596-15414-3, http://oreilly.com/catalog/9780596154141/
- Terzidis, Kostas (May 11, 2009), Algorithms for Visual Design Using the Processing Language (1st տպ.), Wiley, p. 384, ISBN 0-470-37548-5, http://www.wiley.com/WileyCDA/WileyTitle/productCd-0470375485.html
- Reas, Casey; Fry, Ben; Maeda, John (September 30, 2007), Processing: A Programming Handbook for Visual Designers and Artists (1st տպ.), The MIT Press, p. 736, ISBN 0-262-18262-9, արխիվացված օրիգինալից April 17, 2011-ին, https://web.archive.org/web/20110417063708/http://mitpress.mit.edu/catalog/item/default.asp?tid=11251&ttype=2
- Fry, Ben (January 11, 2008), Visualizing Data (1st տպ.), O'Reilly Media, p. 382, ISBN 0-596-51455-7, http://oreilly.com/catalog/9780596514556/
- Greenberg, Ira (May 28, 2007), Processing: Creative Coding and Computational Art (Foundation) (1st տպ.), friends of ED, p. 840, ISBN 1-59059-617-X, արխիվացված օրիգինալից January 27, 2011-ին, https://web.archive.org/web/20110127204040/http://www.friendsofed.com/book.html?isbn=159059617X
- Shiffman, Daniel (August 19, 2008), Learning Processing: A Beginner's Guide to Programming Images, Animation, and Interaction (1st տպ.), Morgan Kaufmann, p. 450, ISBN 0-12-373602-1, http://www.learningprocessing.com/
- Faludi, Robert (January 4, 2011), Building Wireless Sensor Networks: with ZigBee, XBee, Arduino, and Processing (1st տպ.), O'Reilly Media, p. 320, ISBN 978-0-596-80774-0, http://faludi.com/bwsn
- Vantomme, Jan (September 20, 2012), Processing 2, Creative Programming Cookbook (1st տպ.), Packt Publishing, p. 291, ISBN 9781849517942, արխիվացված օրիգինալից July 2, 2014-ին, https://web.archive.org/web/20140702050306/http://www.packtpub.com/processing-2-creative-programming-cookbook/book, վերցված է October 13, 2019
- Pearson, Matt (June 1, 2011), Generative Art, A practical guide using Processing (1st տպ.), Manning, p. 240, ISBN 9781935182627, արխիվացված օրիգինալից June 24, 2019-ին, https://web.archive.org/web/20190624064208/http://zenbullets.com/book.php, վերցված է October 13, 2019
- Jan, Vantomme (September 20, 2012), Processing 2: Creative Programming Cookbook (1st տպ.), Packt Publishing, p. 306, ISBN 978-1849517942, արխիվացված օրիգինալից July 2, 2014-ին, https://web.archive.org/web/20140702050306/http://www.packtpub.com/processing-2-creative-programming-cookbook/book, վերցված է October 13, 2019
- Sauter, Daniel (May 2, 2013), Rapid Android Development: Build Rich, Sensor-Based Applications with Processing (1st տպ.), Pragmatic Bookshelf, p. 300, ISBN 978-1937785062, արխիվացված օրիգինալից October 13, 2019-ին, https://web.archive.org/web/20191013080133/https://pragprog.com/book/dsproc/rapid-android-development, վերցված է October 13, 2019
- Gradwohl, Nikolaus (May 20, 2013), Processing 2: Creative Coding Hotshot (1st տպ.), Packt Publishing, p. 266, ISBN 978-1782166726, արխիվացված օրիգինալից July 2, 2014-ին, https://web.archive.org/web/20140702041655/http://www.packtpub.com/processing-2-creative-coding-hotshot/book, վերցված է October 13, 2019
Արտաքին հղումներ[խմբագրել | խմբագրել կոդը]
![]() |
Processing Վիքիպահեստում |
---|
- Official wiki
- Official forum
- OpenProcessing - sketches library
- Website for Generative Gestaltung book with examples and source codes
- Working with Processing and Arduino Archived 2010-06-14 at the Wayback Machine.
- Ruby-Processing, which is a ruby wrapper around the Processing code art framework, built using JRuby
|