Filter by products, topics, and types of content

(0 Products)

(119 Topics)

(3 Industries)

(6 Types)

1 - 34 of 34 results
Show Summaries | Hide Summaries
View Results
Title none Type none Date none
Functional thinking: Why functional programming is on the rise
Java developers should learn functional paradigms now, even if they have no immediate plans to move to a functional language such as Scala or Clojure. Over time, all mainstream languages will become more functional; Neal Ford explores the reasons why in this installment.
Also available in: Chinese   Russian   Japanese  
Articles 29 Jan 2013
Practically Groovy: Functional programming with curried closures
Spice up your standard closures with the curry method, invented by Haskell Curry and found in the Groovy language since before the JSR compliant releases.
Also available in: Russian   Japanese  
Articles 23 Aug 2005
Use functional programming techniques to write elegant JavaScript
Functional, or declarative, programming is a very powerful programming method and is gaining popularity in the software industry. This article introduces some of the relevant functional programming concepts, and provides examples to use those concepts effectively. The author explains how to write elegant code with JavaScript(TM), which can import constructs and features from functional programming.
Also available in: Japanese  
Articles 13 Jun 2006
The busy Java developer's guide to Scala: Functional programming for the object oriented
The Java platform has historically been the province of object-oriented programming, but even Java language stalwarts are starting to pay attention to the latest old-is-new trend in application development: functional programming. In this new series, Ted Neward introduces Scala, a programming language that combines functional and object-oriented techniques for the JVM. Along the way, Ted makes the case for why you should take the time to learn Scala -- concurrency, for one -- and shows you how quickly it will pay off.
Also available in: Chinese   Russian   Japanese  
Articles 22 Jan 2008
Introducing the Java Message Service
This tutorial provides an introductory overview of the Java Message Service, its functionality, and its capabilities. You will learn the basic programming techniques for creating JMS programs and work with sample code that demonstrates these techniques. Note: This tutorial has been updated to include changes to JMS version 1.1.
Tutorial 08 Jun 2004
Functional thinking: Functional design patterns, Part 1
Contrary to popular belief, design patterns exist in functional programming -- but they sometimes differ from their object-oriented counterparts in appearance and behavior. In this installment of Functional thinking, Neal Ford looks at ways in which patterns manifest in the functional paradigm, illustrating how the solutions differ.
Also available in: Chinese   Russian   Japanese  
Articles 06 Mar 2012
Java.next: Functional coding styles
All of the Java.next languages include functional programming constructs, which enable you to think at a higher level of abstraction. However, differences in terminology among the languages can make it difficult to see similar constructs. This installment shows how common functional programming constructs manifest in the Java.next languages, pointing out some subtle differences in the implementation details of those features.
Also available in: Chinese   Russian   Japanese   Portuguese  
Articles 24 Dec 2013
Functional thinking: Thinking functionally, Part 1
Functional programming has generated a recent surge of interest with claims of fewer bugs and greater productivity. But many developers have tried and failed to understand what makes functional languages compelling for some types of jobs. Learning the syntax of a new language is easy, but learning to think in a different way is hard. In the first installment of his Functional thinking column series, Neal Ford introduces some functional programming concepts and discusses how to use them in both Java and Groovy.
Also available in: Chinese   Russian   Japanese   Portuguese   Spanish  
Articles 03 May 2011
Functional thinking: Tons of transformations
Functional programming constructs are appearing in all major languages now, but they can be hard to spot because they're identified by a wide variety of common names. This installment of Functional thinking shows the same example written using seven different functional frameworks and languages, investigating similarities and differences.
Also available in: Chinese   Russian   Japanese   Portuguese  
Articles 25 Sep 2012
Guidelines for using the Java 2 reference classes
In this article, Peter Haggar examines the functionality and behavior of the SoftReference, WeakReference, and PhantomReference classes and recommends programming idioms for their use.
Also available in: Japanese  
Articles 01 Oct 2002
Functional thinking: Functional features in Groovy, Part 2
With Groovy, metaprogramming and functional programming form a potent combination. See how metaprogramming enables you to add methods to the Integer data type that take advantage of Groovy's built-in functional capabilities. And learn how to use metaprogramming to incorporate the Functional Java framework's rich set of functional features seamlessly into Groovy.
Also available in: Chinese   Russian   Japanese  
Articles 20 Dec 2011
Functional thinking: Coupling and composition, Part 2
Programmers accustomed to using the building blocks of object orientation (inheritance, polymorphism, and so on) can become blind both to its shortcomings and to alternatives. Functional programming uses different building blocks to achieve reuse, based on more general-purpose concepts like list transformations and portable code. This installment of Functional thinking compares coupling via inheritance with composition as reuse mechanisms, and pinpoints one of the key differences between imperative and functional programming.
Also available in: Chinese   Russian   Japanese   Spanish  
Articles 04 Oct 2011
Functional thinking: Thinking functionally, Part 3
Functional thinking series author Neal Ford continues his guided tour of functional programming constructs and paradigms. You'll look at number-classification code in Scala and take a glance at unit testing in the functional world. Then you'll learn about partial application and currying -- two functional approaches that facilitate code reuse -- and see how recursion fits into the functional way of thinking.
Also available in: Chinese   Russian   Japanese   Spanish  
Articles 28 Jun 2011
Functional thinking: Functional design patterns, Part 2
Design patterns represent just one way to solve problems, but if you primarily use object-oriented languages, you may come to think in design patterns. In this installment of Functional thinking, Neal Ford illustrates solutions to a common problem -- incompatible interfaces -- using traditional design patterns, metaprogramming, and functional composition. Each approach has pros and cons, but thinking about the design of the solutions helps you see problems in new ways.
Also available in: Chinese   Russian   Japanese  
Articles 03 Apr 2012
Understanding pureQuery, Part 1: pureQuery: IBM's new paradigm for writing Java database applications
The project called pureQuery gives database application developers an easy, GUI-based means to significantly increase productivity in both the design and implementation phases. This is accomplished through user-initiated automatic transformation of relational data into Java objects for access and manipulation of data. In turn, these objects can be seamlessly utilized in a natural OO programming paradigm to write the business logic and the underlying code. pureQuery's functionality in effect eliminates traditional JDBC programming by integrating the query language with Java itself.
Also available in: Chinese   Japanese  
Articles 14 Dec 2007
Functional thinking: Laziness, Part 1
A common feature of many functional programming languages is lazy evaluation, whereby expressions are evaluated only when necessary rather than upon declaration. Java doesn't support this style of laziness, but several frameworks and related languages do. This article shows how to build laziness into your Java applications, using pure Java and functional frameworks.
Also available in: Chinese   Russian   Japanese  
Articles 20 Nov 2012
Functional thinking: Immutability
Immutability is one of the building blocks of functional programming. This Functional thinking installment discusses the many aspects of immutability in the Java language and shows how to create immutable Java classes in both traditional and newer styles. It also shows two ways to create immutable classes in Groovy, removing much of the pain of the Java implementation. Finally, you'll learn when this abstraction is appropriate.
Also available in: Chinese   Russian   Japanese  
Articles 26 Jul 2011
Making the cut: Top Java content from developerWorks
A quick rundown of the top content published in the Java hub in 2017.
Also available in: Chinese  
Articles 15 Jan 2018
Crossing borders: The beauty of Lisp
Lisp has long been recognized as one of the great programming languages. The fanatical following it has inspired throughout its long history -- nearly 50 years -- tells you it's something special. At MIT, Lisp plays a foundational role in the curriculum for all programmers. Entrepreneurs like Paul Graham used Lisp's incredible productivity as the jet fuel for successful startups. But to the chagrin of its followers, Lisp never made it into the mainstream. As a Java programmer, if you spend some time with Lisp -- this lost city of gold -- you'll discover many techniques that will change the way you code, for the better.
Also available in: Chinese   Russian   Japanese  
Articles 07 Feb 2007
Functional thinking: Functional error handling with Either and Option
Java developers are accustomed to handling errors by throwing and catching exceptions, which doesn't match the functional paradigm. This Functional thinking installment investigates ways to indicate Java errors functionally while still preserving type safety, shows how to wrap checked exceptions with functional returns, and introduces a handy abstraction named Either.
Also available in: Chinese   Russian   Japanese  
Articles 12 Jun 2012
Diagnosing Java code: Design for easy code maintenance
This month, Eric Allen explains how avoiding and controlling gratuitous mutation is key to retaining code robustness while making the code easier to maintain. He focuses on such concepts as functional style code crafting and ways of marking fields, methods, and classes to handle and prevent mutability. Also, Eric explains the role of unit testing and refactoring in this task, and offers two tools to aid in refactoring efforts.
Also available in: Japanese  
Articles 01 Jan 2003
Functional thinking: Functional features in Groovy, Part 3
Modern dynamic languages have incorporated many functional features to take mundane tasks off developers' hands. This article explores the benefits of caching at the function level with Groovy, contrasting it with an imperative approach. It illustrates two types of caching -- intramethod and external -- and discusses the advantages and disadvantages of the imperative and functional versions.
Also available in: Chinese   Russian   Japanese  
Articles 31 Jan 2012
Tree visitors in Clojure
The Visitor pattern is commonly used to traverse and manipulate tree data in Java and other object-oriented programs. Now let's see what happens when Alex Miller rewrites the pattern using Clojure's functional zippers.
Also available in: Chinese   Russian   Japanese  
Articles 20 Sep 2011
alt.lang.jre: Feeling Groovy
Andrew Glover offers an informal introduction to Groovy, the proposed addition to the standard programming languages for the Java platform.
Articles 03 Aug 2004
Functional JavaScript with CoffeeScript and Node
Master web application complexity with the functional scripting superstack of CoffeeScript, Node, and Underscore.js.
Also available in: Chinese   Russian   Japanese  
Articles 21 Feb 2012
Functional thinking: Laziness, Part 2
Implementing lazy evaluation is easy in a language that supports closures. This Functional thinking installment shows how to derive a lazy list using Groovy's closures as building blocks. Then it explores some of the performance and conceptual benefits of lazy evaluation, including the ability to initialize fields lazily in some languages.
Also available in: Chinese   Russian   Japanese  
Articles 19 Dec 2012
Java.next: Choosing your next JVM language
Any of the Java.next languages is a suitable candidate for your next language, so how do you choose? Investigate the factors that contribute to this important decision.
Also available in: Chinese   Russian   Japanese  
Articles 13 May 2014
Functional thinking: Transformations and optimizations
Various functional languages and frameworks feature many of the same abstractions and behaviors but name them differently. In this Functional thinking article, series author Neal Ford optimizes the solution from the preceding installment by improving the algorithm and adding caching, illustrating how each language or framework accommodates the required changes.
Also available in: Chinese   Russian   Japanese  
Articles 16 Oct 2012
Functional thinking: Rethinking dispatch
Next-generation languages for the Java platform have more-flexible method-dispatch mechanisms than the Java language. In this Functional thinking installment, Neal Ford explores dispatch mechanisms in functional languages like Scala and Clojure, showing new ways to think about executing code.
Also available in: Chinese   Russian   Japanese   Portuguese  
Articles 21 Aug 2012
Functional thinking: Thinking functionally, Part 2
Functional languages and frameworks let the runtime control mundane coding details such as iteration, concurrency, and state. But that doesn't mean you can't take back control when you need to. One important aspect of thinking functionally is knowing how much control you want to give up, and when.
Also available in: Chinese   Russian   Japanese   Spanish  
Articles 31 May 2011
Testing, fun? Really?
Testing. Yuck! Puh! Aagh! I've always hated testing. Testing, both unit and functional, is something that gets in the way of the "real" work. Everyone knows that their code is perfect, right? In the unlikely event that the code does need to change, the comments are so well written that anyone could figure it out. Wow, am I in need of growth (maybe some counseling as well.
Also available in: Japanese  
Articles 01 Mar 2001
Functional thinking: Functional design patterns, Part 3
The Gang of Four's Interpreter design pattern encourages extending a language by building a new language from it. Most functional languages let you extend the language in a variety of ways, such as operator overloading and pattern matching. Although Java doesn't permit any of these techniques, next-generation JVM languages do, with varying implementation details. In this article, Neal Ford investigates how Groovy, Scala, and Clojure realize the intent of the Interpreter design pattern by allowing functional extensions in ways that Java does not.
Also available in: Chinese   Russian   Japanese  
Articles 15 May 2012
Functional thinking: Functional features in Groovy, Part 1
Over time, languages and runtimes have handled more and more mundane details for us. Functional languages exemplify this trend, but modern dynamic languages have also incorporated many functional features to make developers' lives easier. This installment investigates some of the functional features already lurking in Groovy, showing how recursion hides state and how to build lazy lists.
Also available in: Chinese   Russian   Japanese   Spanish  
Articles 22 Nov 2011
Java 8 language changes
Java 8 incorporates important new language features that give you easier ways to construct programs. Lamba expressions define a new syntax for inline code blocks that gives you the same flexibility as anonymous inner classes, with much less boilerplate. Interface changes make it possible to add to existing interfaces without breaking compatibility with existing code. Learn how these changes work together.
Also available in: Chinese   Russian   Japanese  
Articles 08 Apr 2014
1 - 34 of 34 results
Show Summaries | Hide Summaries