←Older revision |
Revision as of 10:56, 23 July 2014 |
Line 3: |
Line 3: |
| == For Beginners == | | == For Beginners == |
| | | |
- | There is a new book about the [[NetBeans Platform]] and I am fascinated by it. During writing my [[TheAPIBook|Practical API Design]] I tried to stress as much as I could that proper API entry point should not be [[Javadoc]] with its list of classes and methods, but a list of [[Usecase]]s. Because newcomers using your [[API]] are not interested in hierarchy of your classes - they have a problem and they want to solve it. If the [[API]] contains [[good]] list of [[usecase]s, the chances are high, one of them will match user's need and it will be easy to use it as a starting point and modify it slightly to solve the actual need.
| + | [[Image:NetBeansPlatformForBeginners.jpg|right|Go to https://leanpub.com/nbp4beginners]] |
| | | |
- | The '''[[NetBeans Platform]] for Beginners''' book has exactly this structure. Each chapter is focused on one of such [[usecase]], describes what problem it helps to solve, and only then the book shows the actual [[Java]] code on a cute car related sample. The high-level concepts and their usefulness is described first, the actual usage later. Gory [[API]] details (like description of {{nb|org-openide-dialogs|org/openide/WizardDescriptor}} class) is left for the last chapter. I love the approach: This is the book that should replace our standard documentation!
| + | There is a new book about the [[NetBeans Platform]] and I am fascinated by it. During writing my [[TheAPIBook|Practical API Design]] book I tried to stress as much as I could that proper [[API]] entry point should not be default [[Javadoc]] with its list of classes and methods, but a list of [[usecase]]s. Because newcomers starting to use your [[API]] are not interested in hierarchy of your classes - they have a real problem and they want to solve it - looking at flat list of all classes won't help them with that! However, if your [[API]] contains [[good]] list of [[usecase]]s, the chances are high, one of them matches user's need and it will be easy to use it as a starting point and modify it slightly to solve the actual need. |
| | | |
- | [[I]] often say that [[I]] have become good API designer by making all possible mistakes when designing [[NetBeans]]. One of such mistakes was not enough stress on [[usecase]] description in our [[Javadoc]]. We improved significantly in recently designed [[API]]s, but the old ones, are really too ''class hierarchy''-oriented. We don't have cycles to fix that, but there is one thing I am going to do: I will put reference to ''[[NetBeans Platform]] for Beginners'' into each module [[Javadoc]] entry page - because, if you are developing [[modular]] desktop application in [[Java]], this book is clearly a must read!
| + | The '''[[NetBeans Platform]] for Beginners''' book has exactly this structure. Each chapter is focused on one of such [[usecase]], describes what problem it helps to solve, and only then the book shows the actual [[Java]] code on a cute ''car related'' sample. The high-level concepts and their usefulness is described first, the actual usage later. Gory [[API]] details (like description of {{NB|org-openide-dialogs|org/openide|WizardDescriptor}} class) is left for the last chapter. I love the approach: This is the book that should replace our standard documentation! |
| | | |
- | [[Image:NetBeansPlatformForBeginners.jpg|right|Go to https://leanpub.com/nbp4beginners]] | + | [[I]] often say that [[I]] have become [[good]] [[API]] designer by making all possible mistakes when designing [[NetBeans]]. One of such mistakes was not enough stress on [[usecase]] description in our [[Javadoc]]. We improved significantly in recently designed [[API]]s, but the description of old ones is really too ''class hierarchy''-oriented. We don't have cycles to fix that, but there is one thing I am going to do: I will put reference to '''[[NetBeans Platform]] for Beginners''' into each module [[Javadoc]] entry page - because, if you are developing [[modular]] desktop application in [[Java]], this book is clearly a must read! |
| + | |
| + | Get your copy at https://leanpub.com/nbp4beginners |