Scala for the Impatient


Author: Cay S. Horstmann
Publisher: Addison-Wesley Professional
ISBN: 0134540654
Category: Computers
Page: 384
View: 6502

Continue Reading →

This is the eBook of the printed book and may not include any media, website access codes, or print supplements that may come packaged with the bound book. Interest in the Scala programming language continues to grow for many reasons. Scala embraces the functional programming style without abandoning the object-oriented paradigm, and it allows you to write programs more concisely than in Java. Because Scala runs on the JVM, it can access any Java library and is interoperable with familiar Java frameworks. Scala also makes it easier to leverage the full power of concurrency. Written for experienced Java, C++, or C# programmers who are new to Scala or functional programming, Scala for the Impatient, Second Edition, introduces the key Scala concepts and techniques you need in order to be productive quickly. It is the perfect introduction to the language, particularly for impatient readers who want to learn the fundamentals of Scala so they can start coding quickly. It doesn’t attempt to exhaustively list all the features of the language or make you suffer through long and contrived examples. Instead, carefully crafted examples and hands-on activities guide you through well-defined stages of competency, from basic to expert. This revised edition has been thoroughly updated for Scala 2.12 and reflects current Scala usage. It includes added coverage of recent Scala features, including string interpolation, dynamic invocation, implicit classes, and futures. Scala is a big language, but you can use it effectively without knowing all of its details intimately. This title provides precisely the information that you need to get started in compact, easy-to-understand chunks. Get started quickly with Scala’s interpreter, syntax, tools, and unique idioms Master core language features: functions, arrays, maps, tuples, packages, imports, exception handling, and more Become familiar with object-oriented programming in Scala: classes, inheritance, and traits Use Scala for real-world programming tasks: working with files, regular expressions, and XML Work with higher-order functions and the powerful Scala collections library Leverage Scala’s powerful pattern matching and case classes Create concurrent programs with Scala futures Implement domain-specific languages Understand the Scala type system Apply advanced “power tools,” such as annotations, implicits, and type classes

Scala for the Impatient


Author: Cay S. Horstmann
Publisher: Pearson Education
ISBN: 0132761807
Category: Computers
Page: 448
View: 2987

Continue Reading →

Scala is a modern programming language for the Java Virtual Machine (JVM) that combines the best features of object-oriented and functional programming languages. Using Scala, you can write programs more concisely than in Java, as well as leverage the full power of concurrency. Since Scala runs on the JVM, it can access any Java library and is interoperable with Java frameworks. Scala for the Impatient concisely shows developers what Scala can do and how to do it. In this book, Cay Horstmann, the principal author of the international best-selling Core Java™, offers a rapid, code-based introduction that’s completely practical. Horstmann introduces Scala concepts and techniques in “blog-sized” chunks that you can quickly master and apply. Hands-on activities guide you through well-defined stages of competency, from basic to expert. Coverage includes Getting started quickly with Scala’s interpreter, syntax, tools, and unique idioms Mastering core language features: functions, arrays, maps, tuples, packages, imports, exception handling, and more Becoming familiar with object-oriented programming in Scala: classes, inheritance, and traits Using Scala for real-world programming tasks: working with files, regular expressions, and XML Working with higher-order functions and the powerful Scala collections library Leveraging Scala’s powerful pattern matching and case classes Creating concurrent programs with Scala actors Implementing domain-specific languages Understanding the Scala type system Applying advanced “power tools” such as annotations, implicits, and delimited continuations Scala is rapidly reaching a tipping point that will reshape the experience of programming. This book will help object-oriented programmers build on their existing skills, allowing them to immediately construct useful applications as they gradually master advanced programming techniques.

Scala for the Impatient


Author: Cay S. Horstmann
Publisher: Pearson Education
ISBN: 0321774094
Category: Computers
Page: 360
View: 6458

Continue Reading →

Presents an introduction to the Scala programming language which is an abbreviated version of object-orientated programming combined with the power of concurrency capable of running on the Java Virtual Machine.

Core Java SE 9 for the Impatient


Author: Cay S. Horstmann
Publisher: Addison-Wesley Professional
ISBN: 0134694821
Category: Computers
Page: 576
View: 2258

Continue Reading →

An Accessible Guide to the Java Language and Libraries Modern Java introduces major enhancements that impact the core Java technologies and APIs at the heart of the Java platform. Many old Java idioms are no longer needed and new features such as modularization make you far more effective. However, navigating these changes can be challenging. Core Java® SE 9 for the Impatient, Second Edition, is a complete yet concise guide that includes all the latest changes up to Java SE 9. Written by Cay S. Horstmann–author of the classic two-volume Core Java–this indispensable tutorial offers a faster, easier pathway for learning modern Java. Given Java SE 9’s size and the scope of its enhancements, there’s plenty to cover, but it’s presented in small chunks organized for quick access and easy understanding. Horstmann’s practical insights and sample code help you quickly take advantage of all that’s new, from Java SE 9’s long-awaited “Project Jigsaw” module system to the improvements first introduced in Java SE 8, including lambda expressions and streams. Use modules to simplify the development of well-performing complex systems Migrate applications to work with the modularized Java API and third-party modules Test code as you create it with the new JShell Read-Eval-Print Loop (REPL) Use lambda expressions to express actions more concisely Streamline and optimize data management with today’s Streams API Leverage modern concurrent programming based on cooperating tasks Take advantage of a multitude of API improvements for working with collections, input/output, regular expressions, and processes Whether you’re just getting started with modern Java or you’re an experienced developer, this guide will help you write tomorrow’s most robust, efficient, and secure Java code. Register your product at informit.com/register for convenient access to downloads, updates, and/or corrections as they become available.

Core Java for the Impatient


Author: Cay S. Horstmann
Publisher: Addison-Wesley Professional
ISBN: 013384496X
Category: Computers
Page: 512
View: 7666

Continue Reading →

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.

Java SE8 for the Really Impatient

A Short Course on the Basics
Author: Cay S. Horstmann
Publisher: Addison-Wesley Professional
ISBN: 0133430197
Category: Computers
Page: 240
View: 2181

Continue Reading →

Eagerly anticipated by millions of programmers, Java SE 8 is the most important Java update in many years. The addition of lambda expressions (closures) and streams represents the biggest change to Java programming since the introduction of generics and annotations. Now, with Java SE 8 for the Really Impatient , internationally renowned Java author Cay S. Horstmann concisely introduces Java 8’s most valuable new features (plus a few Java 7 innovations that haven’t gotten the attention they deserve). If you’re an experienced Java programmer, Horstmann’s practical insights and sample code will help you quickly take advantage of these and other Java language and platform improvements. This indispensable guide includes Coverage of using lambda expressions (closures) to write computation “snippets” that can be passed to utility functions The brand-new streams API that makes Java collections far more flexible and efficient Major updates to concurrent programming that make use of lambda expressions (filter/map/reduce) and that provide dramatic performance improvements for shared counters and hash tables A full chapter with advice on how you can put lambda expressions to work in your own programs Coverage of the long-awaited introduction of a well-designed date/time/calendar library (JSR 310) A concise introduction to JavaFX, which is positioned to replace Swing GUIs, and to the Nashorn Javascript engine A thorough discussion of many small library changes that make Java programming more productive and enjoyable This is the first title to cover all of these highly anticipated improvements and is invaluable for anyone who wants to write tomorrow’s most robust, efficient, and secure Java code.

Programming in Scala


Author: Martin Odersky,Lex Spoon,Bill Venners
Publisher: Artima Inc
ISBN: 0981531601
Category: Computers
Page: 736
View: 9559

Continue Reading →

Presents an introduction to the new programming language for the Java Platform.

Learning Scala

Practical Functional Programming for the JVM
Author: Jason Swartz
Publisher: "O'Reilly Media, Inc."
ISBN: 1449368840
Category: Computers
Page: 256
View: 9807

Continue Reading →

Why learn Scala? You don’t need to be a data scientist or distributed computing expert to appreciate this object-oriented functional programming language. This practical book provides a comprehensive yet approachable introduction to the language, complete with syntax diagrams, examples, and exercises. You’ll start with Scala's core types and syntax before diving into higher-order functions and immutable data structures. Author Jason Swartz demonstrates why Scala’s concise and expressive syntax make it an ideal language for Ruby or Python developers who want to improve their craft, while its type safety and performance ensures that it’s stable and fast enough for any application. Learn about the core data types, literals, values, and variables Discover how to think and write in expressions, the foundation for Scala's syntax Write higher-order functions that accept or return other functions Become familiar with immutable data structures and easily transform them with type-safe and declarative operations Create custom infix operators to simplify existing operations or even to start your own domain-specific language Build classes that compose one or more traits for full reusability, or create new functionality by mixing them in at instantiation

Swift for the Really Impatient


Author: Matt Henderson,Dave Wood
Publisher: Addison-Wesley Professional
ISBN: 0133960242
Category: Computers
Page: 176
View: 5493

Continue Reading →

Swift for the Really Impatient is the perfect jumpstart to the Swift language for every experienced Objective-C developer. Leading iOS and OS X developers Matt Henderson and Dave Wood help you take full advantage of Swift’s powerful innovations, without wasting time on basics you already know. Through expert code examples and crystal-clear explanations, Henderson and Wood reveal how Swift features improve on Objective-C and show how to make the most of them. You’ll quickly master “Swift-er” techniques for using objects, classes, optionals, generics, functions, closures, and more. Each chapter includes hands-on exercises designed to reinforce and deepen your skills. You’ll learn how to re-implement common Objective-C programming solutions in Swift, improving code clarity, power, and performance on both desktop and mobile devices. And, because you probably won’t (or can’t) abandon Objective-C anytime soon, you’ll discover how to use both languages together, smoothly integrate Swift into existing projects and workflows, and gradually move your current code base into the future. Coverage includes Using Swift’s new patterns and concise, expressive syntax to produce safer, more reliable code Leveraging the surprising power of Swift’s data structures Utilizing Swift’s type system to help prevent errors common in other languages Using optionals to correctly handle invalid, missing, or unknown values Implementing generics to reduce duplication, improve power, and simplify maintenance Interacting with C and Objective-C APIs Abstracting functionality for reusable code while maintaining type safety Isolating code in clean, flexible, low-overhead closures Combining Swift with Objective-C in the same project Avoiding gotchas when importing Objective-C classes in Swift projects Nesting types to improve code clarity Creating shared objects with singletons Managing threading and concurrency with Swift’s advanced Grand Central Dispatch (GCD) patterns

Scala Cookbook

Recipes for Object-Oriented and Functional Programming
Author: Alvin Alexander
Publisher: "O'Reilly Media, Inc."
ISBN: 1449340334
Category: Computers
Page: 722
View: 1976

Continue Reading →

Save time and trouble when using Scala to build object-oriented, functional, and concurrent applications. With more than 250 ready-to-use recipes and 700 code examples, this comprehensive cookbook covers the most common problems you’ll encounter when using the Scala language, libraries, and tools. It’s ideal not only for experienced Scala developers, but also for programmers learning to use this JVM language. Author Alvin Alexander (creator of DevDaily.com) provides solutions based on his experience using Scala for highly scalable, component-based applications that support concurrency and distribution. Packed with real-world scenarios, this book provides recipes for: Strings, numeric types, and control structures Classes, methods, objects, traits, and packaging Functional programming in a variety of situations Collections covering Scala's wealth of classes and methods Concurrency, using the Akka Actors library Using the Scala REPL and the Simple Build Tool (SBT) Web services on both the client and server sides Interacting with SQL and NoSQL databases Best practices in Scala development

Programming Scala

Scalability = Functional Programming + Objects
Author: Dean Wampler,Alex Payne
Publisher: "O'Reilly Media, Inc."
ISBN: 1491950153
Category: Computers
Page: 598
View: 2308

Continue Reading →

Get up to speed on Scala, the JVM language that offers all the benefits of a modern object model, functional programming, and an advanced type system. Packed with code examples, this comprehensive book shows you how to be productive with the language and ecosystem right away, and explains why Scala is ideal for today's highly scalable, data-centric applications that support concurrency and distribution. This second edition covers recent language features, with new chapters on pattern matching, comprehensions, and advanced functional programming. You’ll also learn about Scala’s command-line tools, third-party tools, libraries, and language-aware plugins for editors and IDEs. This book is ideal for beginning and advanced Scala developers alike. Program faster with Scala’s succinct and flexible syntax Dive into basic and advanced functional programming (FP) techniques Build killer big-data apps, using Scala’s functional combinators Use traits for mixin composition and pattern matching for data extraction Learn the sophisticated type system that combines FP and object-oriented programming concepts Explore Scala-specific concurrency tools, including Akka Understand how to develop rich domain-specific languages Learn good design techniques for building scalable and robust Scala applications

Functional Programming in Scala


Author: Paul Chiusano,Runar Bjarnason
Publisher: Manning Publications
ISBN: 9781617290657
Category: Computers
Page: 320
View: 4449

Continue Reading →

Helps programmers learn functional programming and apply it to the everyday business of coding. Original.

Scala for Java Developers


Author: Thomas Alexandre
Publisher: Packt Publishing Ltd
ISBN: 1783283645
Category: Computers
Page: 282
View: 2590

Continue Reading →

This step-by-step guide is full of easy-to-follow code taken from real-world examples explaining the migration and integration of Scala in a Java project. If you are a Java developer or a Java architect, working in Java EE-based solutions and want to start using Scala in your daily programming, this book is ideal for you. This book will get you up and running quickly by adopting a pragmatic approach with real-world code samples. No prior knowledge of Scala is required.

Scala in Depth


Author: Joshua D. Suereth
Publisher: Manning Publications
ISBN: 9781935182702
Category: Computers
Page: 284
View: 1958

Continue Reading →

Presents an introduction to the Scala programming language which is an abbreviated version of object-orientated programming combined with the power of concurrency capable of running on the Java Virtual Machine.

Scala in Action


Author: Nilanjan Raychaudhuri
Publisher: Manning Publications Company
ISBN: 9781935182757
Category: Computers
Page: 393
View: 4529

Continue Reading →

Offers a tutorial to the Scala programming language, describing how to use the open source libraries for both Java and Scala, how to build DSLs and other productivity tools,and ways to debug and test using ScalaTest.

C++ for Everyone, 2nd Edition


Author: Cay S. Horstmann
Publisher: Wiley Global Education
ISBN: 1118137248
Category: Computers
Page: 560
View: 6468

Continue Reading →

This exciting new edition by respected author Cay Horstmann provides an introduction to C++ and computer programming that focuses on the essentials — and on effective learning. Suitable for a rst course in programming for students in computer science, engineering, technology, and the physical sciences, it requires no prior programming experience. The new edition provides even more tools for motivating students to program and giving them the tools to succeed.

Core Java Volume I--Fundamentals


Author: Cay S. Horstmann
Publisher: Prentice Hall
ISBN: 0134177355
Category: Computers
Page: 1040
View: 4787

Continue Reading →

Core Java® has long been recognized as the leading, no-nonsense tutorial and reference for experienced programmers who want to write robust Java code for real-world applications. Now, Core Java®, Volume I—Fundamentals, Tenth Edition, has been extensively updated to reflect the most eagerly awaited and innovative version of Java in years: Java SE 8. Rewritten and reorganized to illuminate new Java SE 8 features, idioms, and best practices, it contains hundreds of example programs—all carefully crafted for easy understanding and practical applicability. Writing for serious programmers solving real-world problems, Cay Horstmann helps you achieve a deep understanding of the Java language and library. In this first volume of the two-volume work, Horstmann focuses on fundamental language concepts and the foundations of modern user interface programming. You’ll find in-depth coverage of topics ranging from Java object-oriented programming to generics, collections, lambda expressions, Swing UI design, and the latest approaches to concurrency and functional programming. This guide will help you Leverage your existing programming knowledge to quickly master core Java syntax Understand how encapsulation, classes, and inheritance work in Java Master interfaces, inner classes, and lambda expressions for functional programming Improve program robustness with exception handling and effective debugging Write safer, more readable programs with generics and strong typing Use pre-built collections to collect multiple objects for later retrieval Master concurrent programming techniques from the ground up Build modern cross-platform GUIs with standard Swing components Deploy configurable applications and applets, and deliver them across the Internet Simplify concurrency and enhance performance with new functional techniques If you’re an experienced programmer moving to Java SE 8, Core Java®, Tenth Edition, will be your reliable, practical companion—now and for many years to come. Look for the companion volume, Core Java®, Volume II—Advanced Features, Tenth Edition (ISBN-13: 978-0-13-417729-8), for coverage of Java 8 streams, input and output, XML, databases, annotations, and other advanced topics. Register your product at informit.com/register for convenient access to downloads, updates, and corrections as they become available.

Introduction to the Art of Programming Using Scala


Author: Mark C. Lewis
Publisher: CRC Press
ISBN: 1498759688
Category: Computers
Page: 936
View: 7961

Continue Reading →

With its flexibility for programming both small and large projects, Scala is an ideal language for teaching beginning programming. Yet there are no textbooks on Scala currently available for the CS1/CS2 levels. Introduction to the Art of Programming Using Scala presents many concepts from CS1 and CS2 using a modern, JVM-based language that works well for both programming in the small and programming in the large. The book progresses from true programming in the small to more significant projects later, leveraging the full benefits of object orientation. It first focuses on fundamental problem solving and programming in the small using the REPL and scripting environments. It covers basic logic and problem decomposition and explains how to use GUIs and graphics in programs. The text then illustrates the benefits of object-oriented design and presents a large collection of basic data structures showing different implementations of key ADTs along with more atypical data structures. It also introduces multithreading and networking to provide further motivating examples. By using Scala as the language for both CS1 and CS2 topics, this textbook gives students an easy entry into programming small projects as well as a firm foundation for taking on larger-scale projects. Many student and instructor resources are available at www.programmingusingscala.net

Scala for Data Science


Author: Pascal Bugnion
Publisher: Packt Publishing Ltd
ISBN: 1785289381
Category: Computers
Page: 416
View: 5417

Continue Reading →

Leverage the power of Scala with different tools to build scalable, robust data science applications About This Book A complete guide for scalable data science solutions, from data ingestion to data visualization Deploy horizontally scalable data processing pipelines and take advantage of web frameworks to build engaging visualizations Build functional, type-safe routines to interact with relational and NoSQL databases with the help of tutorials and examples provided Who This Book Is For If you are a Scala developer or data scientist, or if you want to enter the field of data science, then this book will give you all the tools you need to implement data science solutions. What You Will Learn Transform and filter tabular data to extract features for machine learning Implement your own algorithms or take advantage of MLLib's extensive suite of models to build distributed machine learning pipelines Read, transform, and write data to both SQL and NoSQL databases in a functional manner Write robust routines to query web APIs Read data from web APIs such as the GitHub or Twitter API Use Scala to interact with MongoDB, which offers high performance and helps to store large data sets with uncertain query requirements Create Scala web applications that couple with JavaScript libraries such as D3 to create compelling interactive visualizations Deploy scalable parallel applications using Apache Spark, loading data from HDFS or Hive In Detail Scala is a multi-paradigm programming language (it supports both object-oriented and functional programming) and scripting language used to build applications for the JVM. Languages such as R, Python, Java, and so on are mostly used for data science. It is particularly good at analyzing large sets of data without any significant impact on performance and thus Scala is being adopted by many developers and data scientists. Data scientists might be aware that building applications that are truly scalable is hard. Scala, with its powerful functional libraries for interacting with databases and building scalable frameworks will give you the tools to construct robust data pipelines. This book will introduce you to the libraries for ingesting, storing, manipulating, processing, and visualizing data in Scala. Packed with real-world examples and interesting data sets, this book will teach you to ingest data from flat files and web APIs and store it in a SQL or NoSQL database. It will show you how to design scalable architectures to process and modelling your data, starting from simple concurrency constructs such as parallel collections and futures, through to actor systems and Apache Spark. As well as Scala's emphasis on functional structures and immutability, you will learn how to use the right parallel construct for the job at hand, minimizing development time without compromising scalability. Finally, you will learn how to build beautiful interactive visualizations using web frameworks. This book gives tutorials on some of the most common Scala libraries for data science, allowing you to quickly get up to speed with building data science and data engineering solutions. Style and approach A tutorial with complete examples, this book will give you the tools to start building useful data engineering and data science solutions straightaway

Becoming Functional

Steps for Transforming Into a Functional Programmer
Author: Joshua Backfield
Publisher: "O'Reilly Media, Inc."
ISBN: 1491947500
Category: Computers
Page: 152
View: 4987

Continue Reading →

If you have an imperative (and probably object-oriented) programming background, this hands-on book will guide you through the alien world of functional programming. Author Joshua Backfield begins slowly by showing you how to apply the most useful implementation concepts before taking you further into functional-style concepts and practices. In each chapter, you’ll learn a functional concept and then use it to refactor the fictional XXY company’s imperative-style legacy code, writing and testing the functional code yourself. As you progress through the book, you’ll migrate from Java 7 to Groovy and finally to Scala as the need for better functional language support gradually increases. Learn why today’s finely tuned applications work better with functional code Transform imperative-style patterns into functional code, following basic steps Get up to speed with Groovy and Scala through examples Understand how first-class functions are passed and returned from other functions Convert existing methods into pure functions, and loops into recursive methods Change mutable variables into immutable variables Get hands-on experience with statements and nonstrict evaluations Use functional programming alongside object-oriented design