Announcement Announcement Module
Collapse
No announcement yet.
Recommended additions to bookshelf Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • Recommended additions to bookshelf

    After doing for a while I turned back to reading how it *should* be done
    . Recently I have read (or re-read)

    Evans: Domain-Driven Design
    Richardson: POJOs in Action
    McConnel: Code Complete, 2nd ed.
    GoF: Design Patterns: *snip*
    Alur: Core J2EE patterns

    Any recommended additions to that list? Any good Agile/Test-driven Development books you can recommend?

  • #2
    A friend recently recommended "Java Persistence with Hibernate" and "JUnit Recipes". I don't have either so I'm interested in having a read.
    Last edited by karldmoore; Aug 29th, 2007, 11:40 AM.

    Comment


    • #3
      I would add couple more if I may

      Pragmatic programmer
      Refactoring

      Comment


      • #4
        How could I forget Refactoring! Effective Java is another general one. Could we get away without mentioning J2EE Design and Development and J2EE without EJB .
        Last edited by karldmoore; Aug 29th, 2007, 11:40 AM.

        Comment


        • #5
          Analysis Pattern
          Refactoring to Patterns

          Comment


          • #6
            Agile Software Development, Principles, Patterns, and Practices (Prentice Hall - Robert C. Martin)
            Groovy in Action (Manning)
            The definitive guide to Grails (Apress)
            Practices of an Agile Developer (Pragmatic Bookshelf)

            I'm also looking forward to 'The definitive Antlr reference' for building DSL's. Another book that's recommended on Amazon when you're interested in compiler/interpreter/DSL design: 'Programming Language Processors in Java: Compilers and Interpreters'. I haven't read it yet but it seems highly recommended. I think DSL's will become more important in the future.

            Comment


            • #7
              I think multi-threading might become more and important, especially with the arrival of muti-core processors. So if you want a nice and very readable introduction to the topic I can recommend the following book:
              Java Concurrency in Practice (Goetz)

              BTW: I read the first 150 pages of the 'Programming Language Processors in Java' book I mentioned before and I must say: it's a 'superb' book on Compiler/Interpreter design if you need some introductory material to a complex topic like this!!

              Comment


              • #8
                Thanks for the tips, I started with the Martin: Agile Software Development and will probably go Fowler: Refactoring after that.

                Of course, I can't get everything I read to stick in my brain before implementing some of it but hopefully I will get some more insight in topics that I can look up later when I run into them and remember reading about them...

                I think I will leave CFGs and push-down automatas for someone else, I had enough of them in CS-classes :-)
                Last edited by Nik; Mar 16th, 2007, 06:34 AM.

                Comment


                • #9
                  Originally posted by Nik View Post
                  Thanks for the tips, I started with the Martin: Agile Software Development and will probably go Fowler: Refactoring after that.
                  Can't comment on the first, but Refactoring is a great book. Lots of people already follow practices in there already but I found it really useful. I wish people would stop hacking code and calling it refactoring however . It's a cowboy way of pretending to do something properly, "yeah I'm just refactoring some code" vs "I'm hacking away completely blind because I haven't got a clue what I'm doing".

                  Originally posted by Nik View Post
                  Of course, I can't get everything I read to stick in my brain before implementing some of it but hopefully I will get some more insight in topics that I can look up later when I run into them and remember reading about them...

                  I think I will leave CFGs and push-down automatas for someone else, I had enough of them in CS-classes :-)
                  That's the biggest problem I have, lots of things go in but I'm sure something else gets wiped out .
                  Last edited by karldmoore; Aug 29th, 2007, 11:39 AM.

                  Comment


                  • #10
                    Before picking up any of these books about technical details of software, I would recommend you go through pragmatic programmer and start following it like mantra, after that every book you read would make way way way too much sense.

                    Comment


                    • #11
                      Originally posted by tatvamasi View Post
                      Before picking up any of these books about technical details of software, I would recommend you go through pragmatic programmer and start following it like mantra, after that every book you read would make way way way too much sense.
                      I have understood it's a bit like Code Complete(?)

                      Comment


                      • #12
                        No, This book is way beyond that.
                        Last edited by tatvamasi; Mar 16th, 2007, 11:49 AM.

                        Comment


                        • #13
                          Originally posted by karldmoore View Post
                          That's the biggest problem I have, lots of things go in but I'm sure something else gets wiped out .
                          Seriously, I get the feeling that in the last few years I've started to have problems remembering things. Names, phone numbers etc. I remember old, unimportant stuff fine but if I get introduces to three people, I've forgot the name for the first one when I've got to number three. Probably something with the amount of news and information that I plough trough. And I'm not even 32 yet!

                          Comment


                          • #14
                            Originally posted by Nik View Post
                            Seriously, I get the feeling that in the last few years I've started to have problems remembering things. Names, phone numbers etc. I remember old, unimportant stuff fine but if I get introduces to three people, I've forgot the name for the first one when I've got to number three. Probably something with the amount of news and information that I plough trough. And I'm not even 32 yet!
                            I'm not that bad yet but I'm only 25. Give me a few years and I'll be wearing a name badge just in case . I think the trouble is there are sooooo many technologies out there with more and more everyday. It's impossible to keep up. I think if you focus on the concepts, the good techologies standout. Even then my todo list is only going one way.............. bigger.
                            Last edited by karldmoore; Aug 29th, 2007, 11:39 AM.

                            Comment


                            • #15
                              Originally posted by karldmoore View Post
                              I think the trouble is there are sooooo many technologies out there with more and more everyday. It's impossible to keep up. I think if you focus on the concepts, the good techologies standout. Even then my todo list is only going one way.............. bigger.
                              Yep. Flex, GWT etc. I've only glanced at them - if they are still in the news a year from now I'll look into them. And if they overlap too much which something I already know, they have to be *very* nice for me to switch, no point in running after everything new and shiny. Most things can be done with several technologies anyway.

                              This is one reason I've started reading more about design, architecture, patterns and methodologies - the information stays "current" much longer.

                              Comment

                              Working...
                              X