• Complain

Dane Cameron - A Software Engineer Learns Java and Object Orientated Programming

Here you can read online Dane Cameron - A Software Engineer Learns Java and Object Orientated Programming full text of the book (entire story) in english for free. Download pdf and epub, get meaning, cover and reviews about this ebook. year: 2015, publisher: CreateSpace Independent Publishing Platform, genre: Computer. Description of the work, (preface) as well as reviews are available. Best literature library LitArk.com created for fans of good reading and offers a wide selection of genres:

Romance novel Science fiction Adventure Detective Science History Home and family Prose Art Politics Computer Non-fiction Religion Business Children Humor

Choose a favorite category and find really read worthwhile books. Enjoy immersion in the world of imagination, feel the emotions of the characters or learn something new for yourself, make an fascinating discovery.

Dane Cameron A Software Engineer Learns Java and Object Orientated Programming
  • Book:
    A Software Engineer Learns Java and Object Orientated Programming
  • Author:
  • Publisher:
    CreateSpace Independent Publishing Platform
  • Genre:
  • Year:
    2015
  • Rating:
    4 / 5
  • Favourites:
    Add to favourites
  • Your mark:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

A Software Engineer Learns Java and Object Orientated Programming: summary, description and annotation

We offer to read an annotation, description, summary or preface (depends on what the author of the book "A Software Engineer Learns Java and Object Orientated Programming" wrote himself). If you haven't found the necessary information about the book — write in the comments, we will try to find it.

Learn to write Java the right way - using the latest version of the language.

Amazon Bestselling author Dane Cameron has worked professionally with Java for the last 16 years, and continues to use Java on a daily basis. In this book he shares the knowledge he has gained over that time, and teaches Java as it should be learned by anyone aspiring to become a professional software engineer, or migrate to Java from other technologies.

This book walks you through all the key features of Java Standard Edition. All important features of the Java language are covered in detail, but throughout the book you will learn far more than just how to write Java code, you will also learn:

  • How to structure your code using design patterns
  • How to use the Eclipse IDE to build, debug and execute Java programs
  • The fundamental principles of Object Orientated Programming, and how these relate to Java
  • How Java is a multi-paradigm language, and how to embrace the best of functional programming and imperative programming techniques into your code
  • How to write automated unit tests for your code
  • How to document and distribute your programs

This book has been written from the outset to include all the new featured Java 8 has to offer, including lambda expressions and the Streams API. The intention of this book is to leave you with a deep understanding of how Java works, and how you can use it for solving a variety of problems.

By the end of the book you will be in a position to continue with more advanced topics, such as Java EE, if you choose, or you can use the knowledge you have gained to solve interesting real world problems.

Dane Cameron: author's other books


Who wrote A Software Engineer Learns Java and Object Orientated Programming? Find out the surname, the name of the author of the book and a list of all author's works by series.

A Software Engineer Learns Java and Object Orientated Programming — read online for free the complete book (whole text) full work

Below is the text of the book, divided by pages. System saving the place of the last page read, allows you to conveniently read the book "A Software Engineer Learns Java and Object Orientated Programming" online for free, without having to search again every time where you left off. Put a bookmark, and you can go to the page where you finished reading at any time.

Light

Font size:

Reset

Interval:

Bookmark:

Make

A Software Engineer LearnsJava and Object Orientated Programming

By Dane Cameron


2015 Cisdal Publishing

Allrights reserved. No part of this publication may be reproduced, distributed, ortransmitted in any form or by any means, including photocopying, recording, orother electronic or mechanical methods, without the prior written permission ofthe publisher, except in the case of brief quotations embodied in criticalreviews and certain other non-commercial uses permitted by copyright law. Forpermission requests, write to the publisher, addressed Attention: PermissionsCoordinator, at the address below.

Original and modified cover art by Karunakar Rayker and CoverDesignStudio.com

Cisdal

www.cisdal.com

Table of Contents
Design Patterns
Preface

Tell me and I forget.Teach me and I remember. Involve me and I learn.

Benjamin Franklin

I wrote my first Java code in 1998, just 2 years after itsinitial release. In the subsequent 17 years I have continued to use Java,including as a professional software engineer for the last 16 years.

A lot has changed in the world of technology in the last 17years, but in many ways Java has remained a beacon of stability. The code Iwrote 17 years ago does not look vastly different from the code I wrote lastweek, and that code I wrote 17 years ago would still run on modern versions ofJava (for the most part).

Despite the fact that the Java language has remainedrelatively stable, the role Java plays in the work of IT has changeddramatically. Java first came to prominence as a language for writing browserbased applications (called Applets). Applets created a huge sense ofexcitement around the language through the later part of the 1990s and the Dotcomboom, but have fallen by the wayside as native browser-based technologies havecontinued to improve.

Instead, Java became the dominant language for server-sideprogramming, and is now the driving forces behind many of the worlds largestand most visited web sites, along with the business applications powering theworlds largest corporations.

In 2014 Java underwent a number of dramatic changes with therelease of Java 8. This is the most significant release of Java since theinitial release of the language, and has the potential to fundamentally changethe way Java is used. This book has been written from the ground-up toincorporate these features, and treats them as integral to the language.

This book is my attempt to pass on what I have learned overthe last 17 years. It is not intended as a simple primer on the syntax of theJava language (although the syntax of the language is covered in detail), it isintended to introduce you to the way a software engineer thinks about Java, andthe way they structure their code in a world of large-scale, and increasinglycomplex software.

The intention of this book is to leave you in a positionwhere you can write useful, real-world Java programs that solve interestingproblems. This book will not teach you everything you know to become an expertJava programmer; much of that knowledge can only come through experience. Ihave, however, tried to write the book I would want to read if I was startingfrom scratch with Java.

1
Introduction to Java

Java is a statically typed object-orientated programminglanguage. That sentence may mean a lot to you, or it may mean nothing. Restassured, this sentence will make sense to you by the end of this book.

Java was originally created by Sun Microsystems in 1995. Ithas subsequently undergone a number of major revisions, most recently in 2014with the release of Java 8, and has become one of the most widely usedprogramming languages.

Sun Microsystems was purchased by Oracle in 2009, and theyhave continued to support and extend Java.

It is very difficult to describe the fundamental features ofJava in an introduction. Like anything complex, Java is best explained once itis understood to some degree. This chapter will, however, provide somebackground on what Java is and how it works - but you may want to return tothis section once you have progressed some way through the book.

Compiled vs. interpreted languages

Programming languages can be classified in many ways; oneform of classification is whether they are compiled or interpreted.

In order for any software to run on a computer it must beconverted into machine code: the sequence of 0s and 1s representing a set ofinstructions that can be comprehended by a computer processor. A compiledlanguage is one where the source code is converted into machine code by a toolcalled a compiler, and packaged as a program that can be distributed directlyto end-users.

Because each operating system is different, compilers needto be written for each operating system. The beauty of compilers, however, isthat the same source code can be used to create executable programs fordifferent operating systems. Examples of compiled languages are C and C++.

Interpreted languages also need their source code to beconverted to machine code in order to be run on a specific operating system,but with interpreted languages this happens in real-time as the program executes.This means that the same code can be executed on any operating systemsupporting an interpreter for that language (which is the software thatconverts the source code into machine code in real time).

Interpreted languages are generally slower than compiledlanguages, because the compilation step is effectively happening while theprogram executes. Examples of languages that can be run by interpreters areJavaScript and Perl. Many interpreted languages can also be compiled, however,therefore the line between interpreted and compiled languages is sometimesblurred.

Java does not easily fit into either of these categories.Java is a compiled language: all source code must be compiled before it can beexecuted. As you will see, the Java Development Kit (JDK) contains a utilityprogram called javac that isresponsible for compiling Java source code.

Unlike traditional compilers however, the Java compiler doesnot produce machine code for a specific operating system. Instead, it producesJava bytecode.

Java bytecode does contain a set of instructions, just likemachine code. Unlike machine code, however, Java bytecode cannot be executeddirectly by a computer. Java requires an intermediary called the Java VirtualMachine which is provided by the Java Runtime Environment (JRE).

Any computer that wishes to run a program written in Javamust have a JRE installed, and this will perform the task of converting theJava bytecode into machine code for the specific operating system as theprogram executes.

If you use Windows or OSX you have probably noticed that youare often requested to install a new version of Java: this is the Java RuntimeEnvironment. Once Java is installed you can run any application written inJava.

You may be wondering why Java uses this approach? Javabytecode can be thought of as a halfway house between source code and machinecode. It contains a set of instructions that can be executed by an interpretermore efficiently than regular source code.

Java chose this approach as part of its write-once,run-anywhere philosophy. The same compiled version of the program can beexecuted on any computer that has a JRE installed: it is not necessary to builddifferent versions of the program for each platform. This has been immenselyvaluable, because JREs are available not just for desktop computers, but formobile phones, set-top boxes, and home appliances. In fact, Oracle claims some3 billion devices run Java.

This approach was also intended to make the language moresecure. Traditional compiled programs can do anything on the operating systemthat the user running them can do including deleting files, or sendingthem over the Internet to a hacker. The JRE by comparison provides a sandboxthat programs run inside of, and it is possible to control what the program cando inside this sandbox, or make it request the ability to perform certainoperations. This approach has become standard with Android and iOS in recentyears, but was built into Java from the very beginning.

Next page
Light

Font size:

Reset

Interval:

Bookmark:

Make

Similar books «A Software Engineer Learns Java and Object Orientated Programming»

Look at similar books to A Software Engineer Learns Java and Object Orientated Programming. We have selected literature similar in name and meaning in the hope of providing readers with more options to find new, interesting, not yet read works.


Reviews about «A Software Engineer Learns Java and Object Orientated Programming»

Discussion, reviews of the book A Software Engineer Learns Java and Object Orientated Programming and just readers' own opinions. Leave your comments, write what you think about the work, its meaning or the main characters. Specify what exactly you liked and what you didn't like, and why you think so.