aspose file tools*
The moose likes Jobs Discussion and the fly likes Data Structures, Algorithms and design patterns in Java EE programming ? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Spring in Action this week in the Spring forum!
JavaRanch » Java Forums » Careers » Jobs Discussion
Bookmark "Data Structures, Algorithms and design patterns in Java EE programming ? " Watch "Data Structures, Algorithms and design patterns in Java EE programming ? " New topic
Author

Data Structures, Algorithms and design patterns in Java EE programming ?

David Blaine
Ranch Hand

Joined: Mar 23, 2013
Posts: 70
I was wondering if the guys who do this "spring, hibernate, XML, REST, Servlet" kind of development really need to know data structures, algorithms and design patterns very well and if they encounter
them frequently on the job.

I wanted to know what kind of Data structures and algorithms are most commonly used in Java EE programming. More importantly, does one encounter algorithms frequently in EE ?
What are the most commonly used design patterns used in EE ?

Bear Bibeault
Author and ninkuma
Marshal

Joined: Jan 10, 2002
Posts: 61434
    
  67

Why do you think that it would be different from any other type of Java programming? What other types of programming are you thinking about that you are comparing against?


[Asking smart questions] [Bear's FrontMan] [About Bear] [Books by Bear]
David Blaine
Ranch Hand

Joined: Mar 23, 2013
Posts: 70
Bear Bibeault wrote:Why do you think that it would be different from any other type of Java programming? What other types of programming are you thinking about that you are comparing against?


Okay this might be very naive. I am under the impression that Java EE jobs would only require application of data structures, ie using them in your code instead of creating/implementing old or new types of data structures.
As regards algorithms, I am not sure if EE developers would ever need them. Probably the people who do things like image processing, search technologies, parallel processing and such would need to be experts in algorithms
and would make use of them a lot in their job.

Can you give me some examples of Java EE programming which involve a lot of data structures and algorithms ?

Devaka Cooray
ExamLab Creator
Saloon Keeper

Joined: Jul 29, 2008
Posts: 3168
    
  47

David Blaine wrote:Can you give me some examples of Java EE programming which involve a lot of data structures and algorithms ?

What is the most efficient way to sort friends of each user of a social network having over 10 million users?


Author of ExamLab ExamLab - a free SCJP / OCPJP exam simulator
What would SCJP exam questions look like? -- Home -- Twitter -- How to Ask a Question
David Blaine
Ranch Hand

Joined: Mar 23, 2013
Posts: 70
Devaka Cooray wrote:
David Blaine wrote:Can you give me some examples of Java EE programming which involve a lot of data structures and algorithms ?

What is the most efficient way to sort friends of each user of a social network having over 10 million users?


Thanks. Can you also give me an example from the "boring" types of programs - Banking, financial, Shopping cart apps that EE is usually used for ?
arulk pillai
Author
Ranch Hand

Joined: May 31, 2007
Posts: 3223
With excellent libraries available, rarely do I come across algorithms. Design patterns and data structures are important. In terms of algorithms, some basic knowledge is good to have.


Java Interview Questions and Answers Blog | Amazon.com profile | Java Interview Books
Ulf Dittmer
Marshal

Joined: Mar 22, 2005
Posts: 42289
    
  64
I think there's some confusion in this topic because the terms "data structure" and "algorithm" are not clearly defined. When it comes down to it, code is nothing BUT algorithms and data structures.

Whether the data structures are primitive, complex, language-defined or user-defined is another matter. With respect to Java you could say that most classes are data structures (which happen to have methods to go with them). So you need a good understanding of what's out there, what's not out there, why the stuff that's out there works the way it does, etc.

As regards algorithms, when arulk says he rarely comes across them, that uses a non-standard definition of algorithms - maybe he means standard algorithms for sorting or something like that (which, indeed, you probably won't have to implement). But really any code you write implements an algorithm, so being able to design them is an important skill. Studying standard algorithms can help you learn that skill.


Ping & DNS - my free Android networking tools app
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Data Structures, Algorithms and design patterns in Java EE programming ?