Help coderanch get a
new server
by contributing to the fundraiser
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Ron McLeod
  • Paul Clapham
  • Devaka Cooray
  • Liutauras Vilda
Sheriffs:
  • Jeanne Boyarsky
  • paul wheaton
  • Henry Wong
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Tim Moores
  • Carey Brown
  • Mikalai Zaikin
Bartenders:
  • Lou Hamers
  • Piet Souris
  • Frits Walraven

Java Application Architecture - Are patterns essential to being a good programmer?

 
Greenhorn
Posts: 8
MySQL Database Flex
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hello,
I am in the process of teaching myself Java and JavaEE. While I have been studying various programming books for the last year and a half and feel like I have a pretty good grasp of how to use the language. However as much as I understand how to move files and read and write to a database I seem to be at a loss when trying to figure out how to write programs from scratch. Is this where patterns come in? Is your book easy enough for a beginner like myself to make good use out of it?

On a side note I'm also curious about what kind of situations it would be good to use OSGI with in an application server like Glassfish?

Thanks
 
author
Posts: 41
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hello Calvin,

Patterns can be controversial. Some folks believe patterns are essential. Others believe developers focus too much on using the pattern and not enough on solving the problem the right way. I tend to fall into the former camp while recognizing the latter is a risk. I believe anything that helps you create better software (i.e., resilient, maintainable, flexible, extensible) is a good thing. Patterns helps us solve complex design challenges using proven techniques. They are a starting point. The patterns in the book are a starting point to designing modular software. Don't rely on them to solve problems for you. Rely on them to help you solve problems by tailoring the pattern to your context.

Visit the book's website at modularity.kirkk.com where you can review all 18 patterns and download an excerpt of the book. There is also a mobile web application available that you can take with you wherever you go.

--kirk
 
Rancher
Posts: 2759
32
Eclipse IDE Spring Tomcat Server
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Patterns are a good thing to learn for someone who is beginning to master the core language. However, be aware of the fact that to effectively use patterns you have to be aware of general design principles, and it takes a lot of time to use patterns effectively. It's not something you can learn by reading a book

generally what happens is that for junior developers who don't understand patterns, the designer/architect has to create detailed design that the developer can convert to code. When a developer knows patterns well, the architect can then basically explain the general principle behind the design and what pattern s/he wants to use, and the developer can then work independently. When you can work independently, you are considered a senior developer. When you are considered a senior developer, you get a raise.
 
Greenhorn
Posts: 9
Android Spring Ubuntu
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Kirk,
I quickly glanced the table of contents of your book at Amazon. Any specific reason why you've chosen scala and groovy in particular for the 2 chapters in the book?

Thanks
Venkat
 
Greenhorn
Posts: 6
Mac Eclipse IDE Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Personally, I didn't understood the meaning, importance and usefulness of Design Patterns until I started to program. A lot. Daily.
 
Ranch Hand
Posts: 78
Eclipse IDE Spring Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Patterns are lovely my friend. All of the standard patterns are carefully designed by the experienced experts who (after screwing some of their projects initially) excelled in software development. My suggestion is rather than judging about the usefulness of the patterns, simply learn all of them and then start your project. Only then you will find that no matter what ever the challenges you face while coding there will be one standard pattern which will specifically helps you over coming the challenges.
 
Kirk Knoernschild
author
Posts: 41
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Venkat Moncompu wrote:Hi Kirk,
I quickly glanced the table of contents of your book at Amazon. Any specific reason why you've chosen scala and groovy in particular for the 2 chapters in the book?

Thanks
Venkat



Venkat,

No reason in particular, I suppose. Just that they are two languages with excellent JVM support, with one being a dynamic language and the other being a functional language. It would be a fun exercise (and easy) to use another language like Clojure. Just design the Clojure module and install it. That's it. No other changes to existing code necessary. Cool stuff.

Visit the book's website at modularity.kirkk.com where you can review all 18 patterns and download an excerpt of the book. There is also a mobile web application available that you can take with you wherever you go.

--kirk
Twitter: @pragkirk
reply
    Bookmark Topic Watch Topic
  • New Topic