وبلاگ بلیان

Pro Apache NetBeans - Building Applications on the Rich Client Platform [ Java ]

معرفی کتاب «Pro Apache NetBeans - Building Applications on the Rich Client Platform [ Java ]» نوشتهٔ Ioannis Kostaras, Constantin Drabo, Josh Juneau, Sven Reimers, Mario Schröder, Geertjan Wielenga، منتشرشده توسط نشر Apress : Imprint: Apress در سال 2020. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است.

Front Matter ....Pages i-xxiii Front Matter ....Pages 1-1 What Is Apache NetBeans (Ioannis Kostaras, Constantin Drabo, Josh Juneau, Sven Reimers, Mario Schröder, Geertjan Wielenga)....Pages 3-28 Getting Started with NetBeans (Ioannis Kostaras, Constantin Drabo, Josh Juneau, Sven Reimers, Mario Schröder, Geertjan Wielenga)....Pages 29-62 Apache NetBeans: New Features (Ioannis Kostaras, Constantin Drabo, Josh Juneau, Sven Reimers, Mario Schröder, Geertjan Wielenga)....Pages 63-72 Developing Desktop Applications (Ioannis Kostaras, Constantin Drabo, Josh Juneau, Sven Reimers, Mario Schröder, Geertjan Wielenga)....Pages 73-109 Apache NetBeans Java EE Development (Ioannis Kostaras, Constantin Drabo, Josh Juneau, Sven Reimers, Mario Schröder, Geertjan Wielenga)....Pages 111-126 Debugging and Profiling (Ioannis Kostaras, Constantin Drabo, Josh Juneau, Sven Reimers, Mario Schröder, Geertjan Wielenga)....Pages 127-178 Front Matter ....Pages 179-179 Mastering the Core Platform (Ioannis Kostaras, Constantin Drabo, Josh Juneau, Sven Reimers, Mario Schröder, Geertjan Wielenga)....Pages 181-220 Mastering the User Interface (Ioannis Kostaras, Constantin Drabo, Josh Juneau, Sven Reimers, Mario Schröder, Geertjan Wielenga)....Pages 221-253 Porting an Application to the NetBeans Platform (Ioannis Kostaras, Constantin Drabo, Josh Juneau, Sven Reimers, Mario Schröder, Geertjan Wielenga)....Pages 255-297 Learning the Extras of the Platform (Ioannis Kostaras, Constantin Drabo, Josh Juneau, Sven Reimers, Mario Schröder, Geertjan Wielenga)....Pages 299-340 Writing a Plugin for NetBeans (Ioannis Kostaras, Constantin Drabo, Josh Juneau, Sven Reimers, Mario Schröder, Geertjan Wielenga)....Pages 341-408 Front Matter ....Pages 409-409 The Apache NetBeans Process (Ioannis Kostaras, Constantin Drabo, Josh Juneau, Sven Reimers, Mario Schröder, Geertjan Wielenga)....Pages 411-420 Apache Infrastructure (Ioannis Kostaras, Constantin Drabo, Josh Juneau, Sven Reimers, Mario Schröder, Geertjan Wielenga)....Pages 421-430 The NetCAT Program on Testing (Ioannis Kostaras, Constantin Drabo, Josh Juneau, Sven Reimers, Mario Schröder, Geertjan Wielenga)....Pages 431-440 Apache NetBeans Sources Overview (Ioannis Kostaras, Constantin Drabo, Josh Juneau, Sven Reimers, Mario Schröder, Geertjan Wielenga)....Pages 441-455 Back Matter ....Pages 457-467 Take a detailed look at the NetBeans IDE and new features in the NetBeans Platform. Learn about support for JShell, the Jigsaw Module System, and Local Variable Type Inference, focusing on what this new version of NetBeans brings to developers who are working in Java and other supported languages. The book is a practical, hands-on guide providing a number of step-by-step recipes that help you take advantage of the power in the latest Java (and other) software platforms, and gives a good grounding on using NetBeans IDE for your projects. This book has been written by Apache community members who both use the IDE and actively contribute and develop Apache NetBeans as an open source project. Pro Apache NetBeans consists of three parts. The first part describes how to use the IDE as well as the new features that it brings to support the latest Java versions. The second part describes how you can extend NetBeans by creating plugins and writing your own applications using the Rich Client Platform. The third part describes how you can contribute to develop NetBeans IDE further, becoming part of the open source team that is driving future developments in the toolset. What You Will Learn Work faster and more effectively by applying expert tips and tricks Apply NetBeans' most cutting-edge features to your Java development Debug your applications using intuitive features built into the IDE Identify performance issues in your application by using the NetBeans profiler Develop using the latest API of the NetBeans Rich Client Platform Extend Apache NetBeans by creating plugins built on the Rich Client Platform Build NetBeans from source and understand the internals of NetBeans itself Contribute to the large community that supports and develops NetBeans Who This Book Is For Developers who want to know the latest features in NetBeans, as well as how the transition to Apache has affected the future of the NetBeans IDE. The book is also of interest to those desiring to become contributors to the NetBeans project and to influence its future development. Java developers who need to create a new desktop application from scratch also will benefit from this book. About the Author Ioannis (​John) Kostaras graduated from the Informatics Department at the University of Athens. He also holds a Master of Science degree in Telecommunications from the Electronics Systems Engineering department of Essex University, and a Master of Arts degree in Management Studies from Essex University. John is a software architect in a big organization and has been a Java developer since JDK 1.0 was released. One of the many applications he has written for the industry, developed in the NetBeans Rich Client Platform, was awarded the 2012 Duke’s Choice Community Choice Award. He is also a member of the NetBeans Dream Team. Apart from Java, he speaks other languages, too, such as C/C++, C#, Python, Ruby, Erlang, and Visual Basic. He has written a number of articles in JavaCodeGeeks, and in the NetBeans wiki, and is preparing an online course for Java in Greek in the Mathesis platform, teaching the latest Java and Apache NetBeans to audiences speaking Greek. Constantin Drabo earned a master’s degree from the Université de Picardie Jules Verne (France) in Internet Technologies. He is a software engineer in the National Treasury of Burkina Faso, and is a part-time teacher at the Université Nazi Boni of Bobo-Dioulasso, where he teaches on Java/Java EE and the Human/Machine Interface. He participates in the Java Community Process (JCP) through his contribution to JSR 381 (Visual Recognition). Constantin is a member of the NetBeans Dream Team, and creator of the FasoJUG Java User Group. He is currently studying for his PhD in Machine Learning in Medical Systems. Josh Juneau has been developing software and database systems for several years. Database application development and sophisticated web apps have been the focus of his career since the beginning. Early in his career, he became an Oracle database administrator and adopted the PL/SQL language for performing administrative tasks and developing applications for Oracle database. In an effort to build more complex solutions, he began to incorporate Java into his PL/SQL applications, and later developed standalone and web applications with Java. Josh wrote his early Java web applications utilizing JDBC to work with backend databases. Later, he incorporated frameworks into his enterprise solutions, including Java EE, Spring, and JBoss Seam. Today, he primarily develops enterprise web solutions utilizing Java EE. He is an avid contributor to Oracle’s Java Magazine, speaks at conferences and Java user group events, contributes to the Chicago Java User Group, and is an Apache NetBeans committer and a Java Champion. Sven Reimers is based at Lake Constance in southern Germany where he works as a systems engineer for Airbus Defense and Space creating next-generation ground segment software for space systems. He has more than 20 years experience building complex software systems, and more than 20 years experience with Java. In 2009 Reimers was the winner of the Duke`s Choice Award in the Network Solutions category for ND SatCom Satellite Communication Management Software. He is part of the Apache NetBeans PMC, a contributor to OpenJFX, and leader and founder of JUG Bodensee. For his long-term commitment to Java and the community, Reimers was named a Java Champion in 2014. Mario Schröder earned a master’s degree in civil engineering from the University of Rostock in Germany. However, he discovered his passion for computer science during his studies and made programming and software development into his profession. He started working with Java professionally in 2001. His first contact with NetBeans was in 2004. He was a member of the NetCat team for Version 7.2, has contributed patches to the platform, and has developed several plugins. Geertjan Wielenga is a product manager in the NetBeans team. He lives and works in Amsterdam. He is a Java technology enthusiast, evangelist, trainer, speaker, and writer. He studied law at the University of Natal in Pietermaritzburg (South Africa). In early 1996, however, he found himself as a proofreader for a software organization in the Netherlands called SuperNova. After having worked at various other software organizations in the Netherlands, he moved to Vienna, Austria and worked for Coca-Cola’s ERP system. In 2004 he moved to Prague, Czech Republic, to work on a free and open source called NetBeans IDE. He discovered that NetBeans IDE was a unique product, project, and ecosystem. Geertjan became inspired and continually enthused by the open source ecosystem and the central role that the NetBeans community was playing in it. He is happy and proud of the role NetBeans has played in Java’s 20+ years of existence, and of as his own small personal contributions to the process. Table of Contents 5 About the Authors 13 About the Technical Reviewer 16 Acknowledgments 17 Introduction 18 Part I: Using Apache NetBeans 21 Chapter 1: What Is Apache NetBeans 22 The Journey to Apache NetBeans 23 Installing Apache NetBeans 24 Integrated Development Environment 25 Java Code Editor 26 Java SE Applications 27 Java Web Applications 30 PHP and Other Languages 34 Maven Support 35 Collaboration 36 Profiling, Debugging, and Refactoring 40 Apache NetBeans Platform 43 Development of Standalone Apache NetBeans Modules 44 Development of Applications Built on the NetBeans Platform 46 Apache NetBeans Community 46 Mailing Lists and NetCAT 46 Tackle an Issue 47 Chapter 2: Getting Started with NetBeans 48 Default Layout and Purpose 48 Explorer Window 49 Projects Window 49 Files Window 50 Services Window 51 Tasks Window 53 Navigator Window 53 Editor Window 55 Source Editor 55 Java Platform Shells 57 Output Window 58 Terminal Window 59 Palette Window 60 Properties Window 60 Design a Project 61 Set Up an Ant-Based Project 61 Set Up a Maven-Based Project 65 Set Up a Gradle-Based Project 68 Speed Up Your Application Coding 68 Intelligent Code Completion 69 Hints 70 Refactoring 71 Comparing Files 72 Generating Code 73 Using Code Templates 76 Splitting Windows 77 Enriching Your IDE 79 Conclusion 81 Chapter 3: Apache NetBeans: New Features 82 Apache NetBeans 9.0 83 Jigsaw (Modularity) Support 83 Local Variable Type Inference 83 JShell 84 Apache NetBeans 10.0 85 JDK 11 Support 86 PHP 87 Apache NetBeans 11.0 90 JDK 12 Support 90 Java EE Support 90 Gradle 90 Conclusion 91 Chapter 4: Developing Desktop Applications 92 Apache NetBeans Support for Desktop Applications 93 AWT Support 94 Swing Support 96 Aligning Components 98 Anchoring Components 100 Resizing Components 100 Properties 101 Connection Tool 104 JavaFX Support 106 Developing a Swing Application 110 Design the Main Tasks List Window 111 Design the Task Details Dialog 117 Developing a JavaFX Application 124 Conclusion 128 Chapter 5: Apache NetBeans Java EE Development 129 Configuring Server Containers 129 Creating a Maven Web Application 132 Developing JSF Applications 135 Creating JSF Application Files 135 Developing Entity Classes 139 Using Java Persistence Query Language (JPQL) 140 Deploying and Debugging 141 Other Java EE Support Features 142 Summary 144 Chapter 6: Debugging and Profiling 145 Debugging 145 Getting Started 145 The Debugging View 148 Expression Evaluation 151 Variables View 154 Watches View 157 Threads View 158 Call Stack View 158 Loaded Classes View 159 Instances View 160 Breakpoints 161 Class Breakpoints 165 Exception Breakpoints 166 Field Breakpoints 167 Line Breakpoints 168 Method Breakpoints 168 Thread Breakpoints 169 AWT/Swing Component Breakpoints 169 Breakpoints View 170 Visual Swing Debugging 172 Multi-Session Debugging 176 Profiling 178 Getting Started 178 Basic Profiling Actions 179 Telemetry 179 Methods 180 Objects 184 Threads and Locks 189 SQL Queries 191 Heap Walker 191 Summary 196 Part II: Extending Apache NetBeans 197 Chapter 7: Mastering the Core Platform 198 The Core Platform 200 The Module System API 201 Lookup API 204 Creating Your Own Lookups 208 Empty Lookup 208 Lookup Containing One Object 208 Lookup with Fixed Number of Objects 209 Lookup with Dynamic Content 209 ProxyLookup Merges Other Lookups 209 Lookup Delegating Searches to Lookup of Some Object 209 Exclude Classes from a Lookup 210 The NetBeans Module System API versus the Java 9 Module API 210 The File System API 215 System FileSystem or Layer.xml 218 The File System API vs. Java NIO 219 DataSystem API 220 An Example Application 221 Build the Todo Swing Application 221 The Todo Swing Application 223 Summary 237 Chapter 8: Mastering the User Interface 238 Window System 239 Benefits and Features 239 Lookup 243 Nodes 243 Lookup 247 Actions 247 Explorer Views 248 Lookup 250 Properties 251 JavaFX and the NetBeans Platform 252 HTML/Java API 253 Action System 260 Summary 270 Chapter 9: Porting an Application to the NetBeans Platform 271 Step 1 – Build the “Static” Prototype 271 Step 2 – Build the “Dynamic” Prototype 284 Handling Events 287 JavaFX and the NetBeans Platform 298 HTML/Java UI API 304 TodoHTMLJava 309 Summary 313 Chapter 10: Learning the Extras of the Platform 314 Dialogs API 314 Predefined Dialogs 315 Custom Dialogs 319 Securing Access 320 Wizards 323 Static Wizards 324 Dynamic Wizards 326 Other Properties of Wizards 328 Miscellaneous 329 Status Bar 329 Notifications 329 ImageUtilities 330 Quick Search 330 Output Window 337 Settings 338 Progress 341 Visual Library 343 Widgets 343 Scene 346 ConnectionWidget 346 Borders 347 Layouts 348 WidgetAction 348 Palette 349 Branding, Distribution, and Internationalization 351 Summary 352 Chapter 11: Writing a Plugin for NetBeans 356 Purpose of the Plugin 356 Introduction to Blockchain 357 Preparation for Hyperledger 359 Create a New Module 360 Project Template 363 File Support 369 Syntax Highlighting 372 Error Hints 387 Code Completion 394 Navigator Panel 406 Signing and Sharing a Plugin 420 Signing the Project 420 Create the NBM 421 Summary 423 Part III: Participating in Apache NetBeans 424 Chapter 12: The Apache NetBeans Process 425 Of Pubs and Legends 425 Modular Transition to Apache 426 Of Purgatory and Incubation 427 Apache NetBeans (Incubating) 9.0 428 Apache NetBeans (Incubating) 10.0 430 Apache NetBeans (Incubating) 11.0 430 Graduation to Top-Level Apache Project 432 Beyond the Incubator 433 Summary 434 Chapter 13: Apache Infrastructure 435 Apache NetBeans JIRA 435 Apache NetBeans Wiki 439 Mailing Lists 440 Announce (announce@netbeans.incubator.apache.org) 440 Users (users@netbeansincubator.apache.org) 440 Netcat (netcat@netbeans.incubator.apache.org) 440 Dev (dev@netbeans.incubator.apache.org) 440 Commits (commits@netbeans.incubator.apache.org) 441 Notifications (notifications@netbeans.incubator.apache.org) 441 Website 441 Making a Website Page Update 442 Making a Website Template Update 443 Summary 444 Chapter 14: The NetCAT Program on Testing 445 Time Schedule 445 How to Participate 446 What Are NetCAT Tribes? 447 Tribe Leader 448 NetCAT Coordinator 449 Synergy 450 Test Specifications 451 Test Runs 453 Summary 454 Chapter 15: Apache NetBeans Sources Overview 455 Download Apache NetBeans Sources 455 Build from Source 456 Apache NetBeans IDE Architecture 456 IDE Cluster Architecture 462 Issue Tracker 464 Debugging Apache NetBeans 465 Commit Code 469 Summary 469 Index 470
دانلود کتاب Pro Apache NetBeans - Building Applications on the Rich Client Platform [ Java ]