Home > Point2 - Technical > Concurrent Programming

Concurrent Programming

CoresI noticed that Concurrent Programming, Functional Programming and Parallel Programming became one of phenomenon for developer from SD West 2009.
There are many session which focus on concurrent Programming such as F#, Scala, Clojure, Ruby and Java with multi-thread.
With coming multi-core cpu, concurrent programming seems inevitable choice for developer who are daily meeting scaling issue.

1. Object-Oriented Programming: Java with multi-thread
Java already supported multi-thread, but it’s not simple to handle synchronize mutable variable. Especially when we are doing TDD, creating unit test for code with unsafe thread is very hard. However java supports rich concurrent api: java.lang.concurrrent.
But still writing concurrent programming with thread needs a lot of effort to solve synchronization issue.

2. Functional Programming
Writing concurrent programming with functional language is much easy to solve synchronization issue, because all the variables are immutable in functional programming. There is nothing to synchronize. It enables developers to feel free to write concurrent program.
F#, Scala, Clojure, Erlang and Ruby are a few examples of functional languages meeting this requirement.

For solving scaling issues or using multi-core processor, concurrent programming is not an option to us anymore. It becomes one of the essential parts of our development.

By:  Henry Ha

About these ads
  1. March 13, 2009 at 9:14 AM | #1

    I’m glad to hear that this was a popular topic at SD West 2009.

    I just wanted to point out that Ruby is not a functional programming language. Although it is still pretty awesome.

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

%d bloggers like this: