Object-Orientation, Abstraction, and Data Structures Using Scala
eBook - PDF

Object-Orientation, Abstraction, and Data Structures Using Scala

  1. 632 pages
  2. English
  3. PDF
  4. Available on iOS & Android
eBook - PDF

Object-Orientation, Abstraction, and Data Structures Using Scala

About this book

Praise for the first edition:

"The well-written, comprehensive book…[is] aiming to become a de facto reference for the language and its features and capabilities. The pace is appropriate for beginners; programming concepts are introduced progressively through a range of examples and then used as tools for building applications in various domains, including sophisticated data structures and algorithms…Highly recommended. Students of all levels, faculty, and professionals/practitioners.
— D. Papamichail, University of Miami in CHOICE Magazine

Mark Lewis' Introduction to the Art of Programming Using Scala was the first textbook to use Scala for introductory CS courses. Fully revised and expanded, the new edition of this popular text has been divided into two books. Object-Orientation, Abstraction, and Data Structures Using Scala, Second Edition is intended to be used as a textbook for a second or third semester course in Computer Science.

The Scala programming language provides powerful constructs for expressing both object orientation and abstraction. This book provides students with these tools of object orientation to help them structure solutions to larger, more complex problems, and to expand on their knowledge of abstraction so that they can make their code more powerful and flexible. The book also illustrates key concepts through the creation of data structures, showing how data structures can be written, and the strengths and weaknesses of each one. Libraries that provide the functionality needed to do real programming are also explored in the text, including GUIs, multithreading, and networking.

The book is filled with end-of-chapter projects and exercises, and the authors have also posted a number of different supplements on the book website. Video lectures for each chapter in the book are also available on YouTube. The videos show construction of code from the ground up and this type of "live coding" is invaluable for learning to program, as it allows students into the mind of a more experienced programmer, where they can see the thought processes associated with the development of the code.

About the Authors

Mark Lewis is an Associate Professor at Trinity University. He teaches a number of different courses, spanning from first semester introductory courses to advanced seminars. His research interests included simulations and modeling, programming languages, and numerical modeling of rings around planets with nearby moons.

Lisa Lacher is an Assistant Professor at the University of Houston, Clear Lake with over 25 years of professional software development experience. She teaches a number of different courses spanning from first semester introductory courses to graduate level courses. Her research interests include Computer Science Education, Agile Software Development, Human Computer Interaction and Usability Engineering, as well as Measurement and Empirical Software Engineering.

Frequently asked questions

Yes, you can cancel anytime from the Subscription tab in your account settings on the Perlego website. Your subscription will stay active until the end of your current billing period. Learn how to cancel your subscription.
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
Perlego offers two plans: Essential and Complete
  • Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
  • Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Both plans are available with monthly, semester, or annual billing cycles.
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Yes! You can use the Perlego app on both iOS or Android devices to read anytime, anywhere — even offline. Perfect for commutes or when you’re on the go.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app.
Yes, you can access Object-Orientation, Abstraction, and Data Structures Using Scala by Mark C. Lewis,Lisa L. Lacher in PDF and/or ePUB format, as well as other popular books in Computer Science & Programming Games. We have over one million books available in our catalogue for you to explore.

Information

Scala
Language
Basics
49
12.
Make
a
text
file
that
contains
a
list
of
the
50
states
and
the
state’s
abbreviation
(you
can
find
many
sample
files
on
the
Internet).
Each
line
should
contain
a
state
name
and
abbreviation
which
are
separated
by
some
symbol
such
as
a
comma.
Write
an
application
that
reads
in
this
information
and
then
creates
a
new
file
that
only
contains
the
abbreviations.
For
an
added
challenge,
you
can
practice
using
different
methods
that
will
convert
the
abbreviation
to
all
lower
case,
all
upper
case,
or
mixed
case.

Table of contents

  1. Cover
  2. Half Title
  3. Title Page
  4. Copyright Page
  5. Contents
  6. List of Figures
  7. List of Tables
  8. Preface
  9. 1 Scala Language Basics
  10. 2 Basics of Object-Orientation and Software Development
  11. 3 Details of Object-Orientation in Scala
  12. 4 Abstraction and Polymorphism
  13. 5 GUIs and Graphics
  14. 6 Other Collection Types
  15. 7 Stacks and Queues
  16. 8 Multithreading and Concurrency
  17. 9 Low-Level Multithreading and Java Libraries
  18. 10 Stream I/O and XML
  19. 11 Networking
  20. 12 Linked Lists
  21. 13 Priority Queues
  22. 14 Refactoring
  23. 15 Recursion
  24. 16 Trees
  25. 17 Regular Expressions and Context-Free Parsers
  26. 18 Binary Heaps
  27. 19 Direct Access Binary Files
  28. 20 Spatial Trees
  29. 21 Augmenting Trees
  30. 22 Hash Tables
  31. Bibliography
  32. Index