Showing posts with label reference. Show all posts
Showing posts with label reference. Show all posts

Friday, March 25, 2016

Mastering Concurrency Programming with Java 8

Master the principles and techniques of multithreaded programming with the Java 8 Concurrency API

Mastering Concurrency Programming with Java 8

About This Book
  • Implement concurrent applications using the Java 8 Concurrency API and its new components
  • Improve the performance of your applications or process more data at the same time, taking advantage of all of your resources.
  • Construct real-world examples related to machine learning, data mining, image processing, and client/server environments
Who This Book Is For
If you are a competent Java developer with a good understanding of concurrency but have no knowledge of how to effectively implement concurrent programs or use streams to make processes more efficient, then this book is for you.

What You Will Learn
  • Design concurrent applications by converting a sequential algorithm into a concurrent one
  • Discover how to avoid all the possible problems you can get in concurrent algorithms
  • Use the Executor framework to manage concurrent tasks without creating threads
  • Extend and modify Executors to adapt their behavior to your needs
  • Solve problems using the divide and conquer technique and the Fork/Join framework
  • Process massive data sets with parallel streams and Map/Reduce implementation
  • Control data-race conditions using concurrent data structures and synchronization mechanisms
  • Test and monitor concurrent applications
In Detail
Concurrency programming allows several large tasks to be divided into smaller sub-tasks, which are further processed as individual tasks that run in parallel. All the sub-tasks are combined together once the required results are achieved; they are then merged to get the final output. The whole process is very complex. This process goes from the design of concurrent algorithms to the testing phase where concurrent applications need extra attention. Java includes a comprehensive API with a lot of ready-to-use components to implement powerful concurrency applications in an easy way, but with a high flexibility to adapt these components to your needs.

The book starts with a full description of design principles of concurrent applications and how to parallelize a sequential algorithm. We'll show you how to use all the components of the Java Concurrency API from basics to the most advanced techniques to implement them in powerful concurrency applications in Java.

You will be using real-world examples of complex algorithms related to machine learning, data mining, natural language processing, image processing in client / server environments. Next, you will learn how to use the most important components of the Java 8 Concurrency API: the Executor framework to execute multiple tasks in your applications, the phaser class to implement concurrent tasks divided into phases, and the Fork/Join framework to implement concurrent tasks that can be split into smaller problems (using the divide and conquer technique). Toward the end, we will cover the new inclusions in Java 8 API, the Map and Reduce model, and the Map and Collect model. The book will also teach you about the data structures and synchronization utilities to avoid data-race conditions and other critical problems. Finally, the book ends with a detailed description of the tools and techniques that you can use to test a Java concurrent application.

Style and approach
A complete guide implementing real-world examples with algorithms related to machine learning, data mining, and natural language processing in client/server environments. All the examples are explained in a step-by-step approach.

Thursday, November 5, 2015

Java I/O, NIO and NIO.2


Java I/O, NIO and NIO.2

Java I/O, NIO, and NIO.2 is a power-packed book that accelerates your mastery of Java's various I/O APIs. In this book, you'll learn about classic I/O APIs (File, RandomAccessFile, the stream classes and related types, and the reader/writer classes). Next, you'll learn about NIO's buffer, channel, selector, regular expression, charset, and formatter APIs. Finally, you'll discover NIO.2's offerings in terms of an improved file system interface, asynchronous I/O, and the completion of socket channel functionality.

After reading and using thi book, you'll gain the accelerated knowledge and skill level to really build applications with efficient data access, especially for today's cloud computing streaming data needs.

What you’ll learn
  • How to set permissions and more with the classic File class
  • How to build a flat file database with RandomAccessFile
  • Get to know the byte array, file, filter, and other kinds of streams
  • Master serialization and externalization
  • Discover character streams and their associated writers/readers
  • Tour the buffer APIs
  • Work with channels to transfer buffers to and from I/O services
  • Find out about selectors and readiness selection
  • Master regular expressions
  • Discover charsets and their association with Java's String< class
  • Take advantage of the formatter API to create formatted output
  • How to customize the formatter API
  • Explore the improved file system interface
  • Discover asynchronous I/O and its association with futures and completion handlers
  • Encounter socket channel improvements, including multicasting
Who this book is for
This book is for those experienced with Java, beyond the fundamentals.

Table of Contents
Part 1: Getting Started with I/O
Chapter 1: I/O Basics and APIs
Part 2: Classic I/O APIs
Chapter 2: File
Chapter 3: RandomAccessFile
Chapter 4: Streams
Chapter 5: Writers and Readers
Part 3: New I/O APIs
Chapter 6: Buffers
Chapter 7: Channels
Chapter 8: Selectors
Chapter 9: Regular Expressions
Chapter 10: Charsets
Chapter 11: Formatter and Scanner
Part 4: More New I/O APIs
Chapter 12: File System APIs
Chapter 13: Asynchronous I/O
Chapter 14: Additional NIO.2 APIs
Appendix A: Answers to Review Exercises

Saturday, September 12, 2015

Test-Driven Java Development

Invoke TDD principles for end-to-end application development with Java

About This Book
  • Explore the most popular TDD tools and frameworks and become more proficient in building applications
  • Create applications with better code design, fewer bugs, and higher test coverage, enabling you to get them to market quickly
  • Implement test-driven programming methods into your development workflows
Who This Book Is For
If you're an experienced Java developer and want to implement more effective methods of programming systems and applications, then this book is for you.

What You Will Learn
  • Explore the tools and frameworks required for effective TDD development
  • Perform the Red-Green-Refactor process efficiently, the pillar around which all other TDD procedures are based
  • Master effective unit testing in isolation from the rest of your code
  • Design simple and easily maintainable codes by implementing different techniques
  • Use mocking frameworks and techniques to easily write and quickly execute tests
  • Develop an application to implement behaviour-driven development in conjunction with unit testing
  • Enable and disable features using Feature Toggles
In Detail
Test-driven development (TDD) is a development approach that relies on a test-first procedure that emphasises writing a test before writing the necessary code, and then refactoring the code to optimize it.

The value of performing TDD with Java, one of the most established programming languages, is to improve the productivity of programmers, the maintainability and performance of code, and develop a deeper understanding of the language and how to employ it effectively.

Starting with the basics of TDD and reasons why its adoption is beneficial, this book will take you from the first steps of TDD with Java until you are confident enough to embrace the practice in your day-to-day routine.

You'll be guided through setting up tools, frameworks, and the environment you need, and will dive right in to hands-on exercises with the goal of mastering one practice, tool, or framework at a time. You'll learn about the Red-Green-Refactor procedure, how to write unit tests, and how to use them as executable documentation.

With this book you'll also discover how to design simple and easily maintainable code, work with mocks, utilise behaviour-driven development, refactor old legacy code, and release a half-finished feature to production with feature toggles.

You will finish this book with a deep understanding of the test-driven development methodology and the confidence to apply it to application programming with Java.

Style and approach
An easy-to-follow, hands-on guide to building applications through effective coding practices. This book covers practical examples by introducing different problems, each one designed as a learning exercise to help you understand each aspect of TDD.

Wednesday, September 2, 2015

Introducing JavaFX 8 Programming (Oracle Press)


Learn the Fundamentals of JavaFX 8 from Programming Guru Herb Schildt

Introducing JavaFX 8 Programming provides a fast-paced, practical introduction to JavaFX, Java’s next-generation GUI programming framework. In this easy-to-read guide, best-selling author Herb Schildt presents the key topics and concepts you’ll need to start developing modern, dynamic JavaFX GUI applications. The book begins with the fundamentals, including the general form of a JavaFX program. You then advance to event handling, controls, images, fonts, layouts, effects, transforms, animations (including 3-D animations), menus, and more. Numerous complete examples are included that put key topics and techniques into action. Designed for Java programmers, the book’s focus is on the JavaFX API and all examples are written entirely in Java. Best of all, the book is written in the clear, crisp, uncompromising style that has made Herb Schildt the choice of millions worldwide.

  • Learn the general form of a JavaFX program
  • Work with scenes and stages
  • Understand the fundamentals of JavaFX event handling
  • Explore several controls, such as buttons, list views, sliders, trees, tables, scroll panes, and more
  • Work with images, fonts, and layouts
  • Explore the JavaFX menu system
  • Use visual effects and transforms
  • Incorporate 2-D and 3-D animation
  • Present data in JavaFX charts
  • Display Web-based content using WebView and WebEngine


About This Book
  • Develop amazing gestures –based applications and an interactive JavaFX application powered by leap motion devices
  • Get in touch with the right tools to rapidly develop your JavaFX application and give you essential hands-on experience with JavaFX 8
  • A step-by-step guide with examples to help you develop applications
Who This Book Is For
If you are a Java developer, an experienced Java Swing, Flash/Flex, SWT, or web developer looking to take your client-side applications to the next level, this book is for you.

What You Will Learn
  • Deliver complex, compelling, and high performance JavaFX 8 applications with new impressive Java SE 8 core features and enhancements
  • Run JavaFX applications on embedded devices such as Raspberry Pi
  • Use Scene Builder to create and define UI screens graphically and save them as JavaFX FXML-formatted files
  • Develop amazing gesture-based applications and an interactive touchless JavaFX application with Leap motion devices
  • Get hands-on knowledge about mobile development and create native JavaFX applications for Apple iOS and Android platforms
  • Use JavaFX with an Arduino board to develop desktop applications to monitor data coming from the real world or control real devices
In Detail
JavaFX is a software platform to create and deliver rich Internet applications (RIAs) that can run across a wide variety of devices.

JavaFX Essentials will help you to design and build high performance JavaFX 8-based applications that run on a variety of devices.

Starting with the basics of the framework, it will take you all the way through creating your first working application to discovering the core and main JavaFX 8 features, then controlling and monitoring your outside world. The examples provided illustrate different JavaFX and Java SE 8 features.

This guide is an invaluable tutorial if you are planning to develop and create JavaFX 8 applications to run on a variety of devices and platforms.

Saturday, May 30, 2015

Pro Java 8 Programming, Third Edition

Pro Java 8 Programming

Pro Java 8 Programming covers the core Java development kit and the finer points of the core standard edition (SE) and development kit version 8. You'll discover the particulars of working with the Java language and APIs to develop applications in many different contexts.

You will also delve into more advanced topics like lambda expressions, closures, new i/o (NIO.2), enums, generics, XML, metadata and the Swing APIs for GUI design and development. By the end of the book, you’ll be fully prepared to take advantage of Java's ease of development, and able to create powerful, sophisticated Java applications.

What you’ll learn
  • How to use and design your own libraries, classes and methods
  • How to use the new lambda expressions, closures, stream API and more
  • How to use the new thread and I/O APIs for today's Java applications that must perform at enterprise and parallel scales
  • How to use the improved collections APIs
  • How to build a better Java UI/UX using layout managers, Swing's JTable and JTree APIs, cut-and-paste, and drag-and-drop
  • How to use Java Database Connectivity (JDBC) to connect and integrate with various MySQL, Oracle, and NoSQL databases
  • How to work with internationalization, localization and more
  • How to effectively use XML and add annotations to your Java applications and more
Who this book is for
This book is for experienced Java programmers or developers looking to further refine or add to their skills and knowledge base.

Table of Contents
1. Going Inside Java 8
2. Designing Libraries, Classes, and Methods
3. Lambda Expressions and Closures
4. Using Threads in Your Applications
5. Using Stream APIs and Collections
6. Using Layout Managers
7. Using Swing’s JTable
8. Using Swing’s JTree
9. Adding Cut-and-Paste Functionality
10. Adding Drag-and-Drop Functionality
11. Printing
12. Introducing Java Database Connectivity (JDBC)
13. Internationalizing Your Applications
14. Using XML
15. Adding Annotations

Monday, April 13, 2015

JavaFX For Dummies


Unleash the power of JavaFX for a wide range of devices


JavaFX For Dummies gives you access to an innovative software platform that allows you to create and deliver rich Internet applications that can run across a wide variety of connected devices. This accessible book highlights the most important features of this powerful graphics platform, giving you the tools to understand it quickly and easily! No experience with JavaFX? No problem. JavaFX For Dummies has been written especially for newbies and it also serves as a great reference resource for more experienced Java developers.

Author Doug Lowe has been writing programming books for decades, and he brings his experience and passion to this guide, sharing his expert approach to coding using JavaFX. The book shows you how to work with JavaFX controls, how to enhance your scenic design, and also offers advice on how to make a splash with your programs. Then, the author wraps it all up with extra recommendations and resources to guide you as you move forward. * Helps developers quickly learn to take advantage of JavaFX's lightweight, high-performance platform * Highlights essential JavaFX features for simple coding that can be rolled out across multiple devices * Instructs readers on methods for creating compelling, visually appealing applications * Includes recommendations and resources for honing your JavaFX skills

With JavaFX For Dummies, you'll be on your way to easier, more efficient coding for a variety of connected devices.

Thursday, March 26, 2015

Professional Java EE Design Patterns


Master JavaEE Design Pattern implementation to improve your coding efficiency Professional JavaEE Design Patterns is the ultimate guide to working more efficiently with JavaEE, and the only resource that covers both the theory and application of design patterns in solving real-world problems. The authors guide readers through both the fundamentals and little-known secrets of JavaEE6/7, presenting patterns throughout, and demonstrating how they are used in day-to-day programming. As the standard computing platform in community-driven enterprise software, JavaEE provides an API and runtime environment above and beyond JavaSE. Written for the experienced JavaEE developer hoping to improve code quality and efficiency, the book contains time saving patterns, including: Implementation and problem-solving with design patterns Connection between existing non-JavaEE design patterns and new JavaEE concepts Unique organization that prioritizes the most relevant patterns before expanding into advanced techniques Individually-based focus that fully explores each pattern Unlike most JavaEE books that simply offer descriptions or recipes, this book drives home the actual implementation and application to keep square pegs away from round holes. For the programmer looking for a comprehensive guide that is actually useful in the everyday workflow, Professional JavaEE Design Patterns is the definitive resource on the market.

Monday, March 23, 2015

Beginning Java Programming: The Object-Oriented Approach

Beginning Java Programming: The Object-Oriented Approach

A comprehensive Java guide, with samples, exercises, casestudies, and step-by-step instruction

Beginning Java Programming: The Object Oriented Approachis a straightforward resource for getting started with one of theworld's most enduringly popular programming languages. Based onclasses taught by the authors, the book starts with the basics andgradually builds into more advanced concepts. The approach utilizesan integrated development environment that allows readers toimmediately apply what they learn, and includes step-by-stepinstruction with plenty of sample programs. Each chapter containsexercises based on real-world business and educational scenarios,and the final chapter uses case studies to combine several conceptsand put readers' new skills to the test.

Beginning Java Programming: The Object Oriented Approachprovides both the information and the tools beginners need todevelop Java skills, from the general concepts of object-orientedprogramming. Learn to: * Understand the Java language and object-oriented conceptimplementation * Use Java to access and manipulate external data * Make applications accessible to users with GUIs * Streamline workflow with object-oriented patterns

The book is geared for those who want to use Java in an appliedenvironment while learning at the same time. Useful as either acourse text or a stand-alone self-study program, Beginning JavaProgramming is a thorough, comprehensive guide.

Java Cookbook, 3rd edition

Java Cookbook

From lambda expressions and JavaFX 8 to new support for network programming and mobile development, Java 8 brings a wealth of changes. This cookbook helps you get up to speed right away with hundreds of hands-on recipes across a broad range of Java topics. You’ll learn useful techniques for everything from debugging and data structures to GUI development and functional programming.

Each recipe includes self-contained code solutions that you can freely use, along with a discussion of how and why they work. If you are familiar with Java basics, this cookbook will bolster your knowledge of the language in general and Java 8’s main APIs in particular.

Recipes include:
  • Methods for compiling, running, and debugging
  • Manipulating, comparing, and rearranging text
  • Regular expressions for string- and pattern-matching
  • Handling numbers, dates, and times
  • Structuring data with collections, arrays, and other types
  • Object-oriented and functional programming techniques
  • Directory and filesystem operations
  • Working with graphics, audio, and video
  • GUI development, including JavaFX and handlers
  • Network programming on both client and server
  • Database access, using JPA, Hibernate, and JDBC
  • Processing JSON and XML for data storage
  • Multithreading and concurrency

Tuesday, February 10, 2015

Core Java for the Impatient

The release of Java SE 8 introduced significant enhancements that impact the Core Java technologies and APIs at the heart of the Java platform. Many old Java idioms are no longer required and new features like lambda expressions will increase programmer productivity, but navigating these changes can be challenging.

Core Java for the Impatient is a complete but concise guide to Java SE 8. Written by Cay Horstmann—the author of Java SE 8 for the Really Impatient and Core Java™, the classic, two-volume introduction to the Java language—this indispensable new tutorial offers a faster, easier pathway for learning the language and libraries. Given the size of the language and the scope of the new features introduced in Java SE 8, there’s plenty of material to cover, but it’s presented in small chunks organized for quick access and easy understanding.

If you’re an experienced programmer, Horstmann’s practical insights and sample code will help you quickly take advantage of lambda expressions (closures), streams, and other Java language and platform improvements. Horstmann covers everything developers need to know about modern Java, including
  • Crisp and effective coverage of lambda expressions, enabling you to express actions with a concise syntax
  • A thorough introduction to the new streams API, which makes working with data far more flexible and efficient
  • A treatment of concurrent programming that encourages you to design your programs in terms of cooperating tasks instead of low-level threads and locks
  • Up-to-date coverage of new libraries like Date and Time
  • Other new features that will be especially valuable for server-side or mobile programmers
Whether you are just getting started with modern Java or are an experienced developer, this guide will be invaluable for anyone who wants to write tomorrow’s most robust, efficient, and secure Java code.

Subscribe to: Comments (Atom)

AltStyle によって変換されたページ (->オリジナル) /