1 / 7

Flow-Based Programming

This article delves into Flow-Based Programming (FBP), focusing on its key characteristics such as component-based architecture, standardized communication through ports, and the use of processes and co-routines. FBP emphasizes encapsulation, composition, and hierarchy, drawing comparisons with technologies like Erlang, UML, and LabView. It highlights FBP's role in software engineering and architecture, and addresses its application in environments such as NoFlo for JavaScript. Learn how FBP simplifies complex software development processes.

lee
Télécharger la présentation

Flow-Based Programming

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction Toronto, Sept 11, 2013 Paul Tarvydas paul.tarvydas@gmail.com Flow-Based Programming

  2. ls -l | less Characteristics: components ports standardized communication Simple (text) example of FBP

  3. FBP • subroutine / statement-level components • visual components & pipes (textual also) • {processes | co-routines | stackless} • ports (queues) – {bounded | unbounded} • {streams | events} • encapsulation (namespace, time, space, control flow, …), composition, hierarchy

  4. Often Compared to... • Erlang, CSP, Actors (FBP is hierarchical, siblings invisible) • UML (FBP is for compiling designs, not modeling them) • LabView (FBP preserves component separation at runtime) • Scratch, etc. (FBP is primarily meant to simplify s/w engineering / architecting, not targeted at non-programmers per se)

  5. http://www.kickstarter.com/projects/noflo/noflo-development-environmenthttp://www.kickstarter.com/projects/noflo/noflo-development-environment http://noflojs.org Javascript (Coffeescript) + Node.js NoFlo

  6. FBP in FBPhttps://github.com/guitarvydas/vsh/yEd + 800 LOC + fork();

  7. http://www.jpaulmorrison.com/fbp/ https://groups.google.com/forum/#!forum/flow-based-programming http://www.kickstarter.com/projects/noflo/noflo-development-environment http://noflojs.org Websites

More Related