Tải bản đầy đủ (.pdf) (5 trang)

O''''Reilly Network For Information About''''s Book part 29 pdf

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (31.01 KB, 5 trang )





9.3. The Next Big Thing
Of course,
the whole premise of this book is arrogant beyond belief. I'm making an
incredible number of assumptions and drawing some aggressive conclusions based
on little more than a couple of dozen interviews, a keen sense of intuition, and a
few massive piles of circumstantial evidence.
Java may need nothing more than a little overhaul. Maybe the problem is in the
massively complex libraries, and a few rewrites with some tweaks of the language
would extend Java's leadership for 10 more years. Maybe the community's culture
doesn't help define our libraries. The driving vendors may do an about-face and
focus more on simplifying the 80% path instead of building yet another XML-
obsessed framework. The JCP could suddenly start supporting the best existing
frameworks based on experience instead of standardizing a good idea that was
born in a committee.
Maybe Dion Almaer is right, and the big companies that drive this industry are not
remotely interested in moving away from Java, and we'll all be saddled with Java
for the foreseeable future.
Maybe Jason Hunter is right, and the next big thing won't be a programming
language at all. Maybe Java's all we'll ever need, and we'll use that foundation to
move up the abstraction ladder. Maybe Glenn and David are both right and there
won't be one next big thing, but lots of next little things, and both
metaprogramming and continuations will play a significant role.
I don't know the ultimate answers, so I've leaned on my mentors and peers. The
interviews in this book are the opinions of some of the people I respect the most.
It's been an honor to share these few pages with them. I'm not ready to say that
Java's dead, or that Ruby is next, or that continuation servers will reign supreme. I
just know:



 I'm hurting right now, and my customers are, too. It's getting harder and
harder to teach my customers to satisfy themselves with Java.
 Certain things, like baby-sitting a relational database with a web-based UI,
should be easier in Java, after nearly 10 years of effort, but they're still
cumbersome.
 The same people that dozed in conversations about other languages two
years ago seem to be paying attention now. My "Beyond Java" talks, at Java
conferences, are continually packed.
As for me, my eyes are wide open. I've seen what the alternatives can do. In
particular, Ruby on Rails lets me build reliable code fast, and put it in front of my
customer with more confidence and frequency. I didn't actively seek an
alternativeon the contrary, with four Java books out and a reputation in the Java
space, I've got every reason to maintain the status quo. I did find that some of the
alternatives are compelling, and make for a smooth transition.
9.3.1. A Charge to You
If you're a Java developer and this message is troubling you, that's natural. You've
got good reasons to feel threatened with this challenge of your world view. You
may feel even more unsettled when someone challenges the foundation of your
livelihood. I'd encourage you to put this book down and do some research of your
own.
Look around. When James Duncan Davidson did, he found a language that
responded to his needs for low-level user interface development. Stuart Halloway
found a language that let his start-up move at the speed of his ideas. Dave Thomas
found the foundation for an increasingly important publishing series. Glenn
Vanderburg found languages friendlier to his beloved metaprogramming
techniques.
If you decide to expand your horizons beyond Java, you may find that I'm right,
and some of the alternatives I've explored here, or even some I didn't, unleash you.
You'll be surfing the next wave that propels us forward.

If I'm wrong, Java will still be there for you; heck, even COBOL is still there for
you. But to you, it won't be the same Java. Other languages will expand your
horizons to other approaches, just as a wave of Java developers will bring our
unique view of the world with us. If you spend some time in Smalltalk, you'll
probably use Java's reflection more, you'll look for more opportunities to invert
control by simulating code blocks, and you may well tone down your use of XML.
(OK, I may have pushed things too far with that one.) If you explore continuation
servers, you may look for a way to simulate that programming style in Java. If you
explore Rails, you'll likely learn to pay more attention to defaults and convention.
Hibernate, Spring, Struts, servlets, collections, and the JDO could all use these
techniques.
Pick up your eyes by learning a language. Expand your mind to something a little
more powerful, and a lot more dynamic. Warp your perspective to functional
programming or continuations. Annoy your friends with a contrarian's view. Tell
them that you don't think the world's flat. There's a whole universe out there,
beyond Java.




About the Author
Bruce A. Tate is a kayaker, mountain biker, father, author, and Java programmer in

Austin, Texas. His five books include the Jolt award-winning Better, Faster,
Lighter Java (O'Reilly) and the bestselling Bitter Java (Manning). His 17 years of
experience include stints at IBM, two failed startups, and his own independent
consulting practice, called J2Life, LLC.






Colophon
Our look is the result of reader comments, our own experimentation, and feedback
from distribution chan
nels. Distinctive covers complement our distinctive approach
to technical topics, breathing personality and life into potentially dry subjects.
The animal on the cover of Beyond Java is a bassaris. The bassaris (Bassaris
astuta) is a North American carnivore found in Mexico, Texas, and California.
About the size of a typical domestic cat, the bassaris is closely related to the
raccoon and fox.
This brown- or tan-furred animal has a black-and-white-ringed tail that grows as
long as the length of its body. The size of the tail provides balance for negotiating
narrow ledges and limbs, and even allowsthe animal to reverse direction by
performing a cartwheel. It can rotate its hind feet 180 degrees, giving it the ability
to rapidly descend cliffs or trees, as well as cacti.
The bassaris is a nocturnal, non-aggressive creature. It lives in caves, crevices, and
hollow trees, and has been found in abandoned buildings and even attics of
occupied dwellings. It has been known to visit campsites and rummage through
gear, sometimes taking itemsespecially shiny ones. An agile climber, it negotiates
trees and sheer rock faces with ease.
Foraging mainly at night on small birds, rodents, lizards, snakes, invertebrates, and
fruit, the bassaris will also regularly consume carrio
n. Fruit is a main component of
its diet, and this may reduce its need for water.
Trapped for fur in some locations, the bassaris is also frequently tamed as a pet,
especially in parts of Mexico. It is called by several different names, including the
mountain cat, civit cat, and cat squirrel. The Mexican name for this creature is
cacomixl. Its scientific name (bassaris) stems from the Greek word for fox, and in
some Greek mythological tales, Dionysus wears a bassaris, which symbolizes new

life.




Beyond the C++ Standard Library: An Introduction to Boost

By Björn Karlsson

Publisher:
Addison Wesley Professional

Pub Date:
August 31, 2005

ISBN:
0321133544

Pages:
432






Table of Contents | Index

Introducing the Boost libraries: the next breakthrough in C++ programming
Boost takes you far beyond the C++ Standard Library, making C++ programming

more elegant, robust, and productive. Now, for the first time, a leading Boost
expert systematically introduces the broad set of Boost libraries and teaches best
practices for their use.
Writing for intermediate-to-advanced C++ developers, Björn Karlsson briefly
outlines all 58 Boost libraries, and then presents comprehensive coverage of 12
libraries you're likely to find especially useful. Karlsson's topics range from smart
pointers and conversions to containers and data structures, explaining exactly how
using each library can improve your code. He offers detailed coverage of higher-
order function objects that enable you to write code that is more concise,
expressive, and readable. He even takes you "behind the scenes" with Boost,
revealing tools and techniques for creating your own generic libraries.
Coverage includes
 Smart pointers that provide automatic lifetime management of objects and
simplify resource sharing
 Consistent, best-practice solutions for performing type conversions and
lexical conversions
 Utility classes that make programming simpler and clearer
 Flexible container libraries that solve common problems not covered by the
C++ Standard Library
 Powerful support for regular expressions with Boost.Regex
 Function objects defined at the call site with Boost.Bind and Boost.Lambda
 More flexible callbacks with Boost.Function
 Managed signals and slots (a.k.a. the Observer pattern) with Boost.Signals
The Boost libraries are proving so useful that many of them are planned for
inclusion in the next version of the C++ Standard Library. Get your head start now,
with Beyond the C++ Standard Library.
© Copyright Pearson Education. All rights reserved.



×