100% found this document useful (1 vote)
7 views

TypeScript Essentials 1st Edition Christopher Nance instant download

TypeScript Essentials is a comprehensive guide for learning TypeScript, covering its features, compiler, and practical applications through hands-on examples. The book is structured into eight chapters, starting from the basics of TypeScript to creating applications and debugging. It is intended for anyone looking to develop rich web applications, requiring a basic understanding of JavaScript and web development.

Uploaded by

sinilegulane
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
7 views

TypeScript Essentials 1st Edition Christopher Nance instant download

TypeScript Essentials is a comprehensive guide for learning TypeScript, covering its features, compiler, and practical applications through hands-on examples. The book is structured into eight chapters, starting from the basics of TypeScript to creating applications and debugging. It is intended for anyone looking to develop rich web applications, requiring a basic understanding of JavaScript and web development.

Uploaded by

sinilegulane
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 48

TypeScript Essentials 1st Edition Christopher

Nance pdf download

https://ebookfinal.com/download/typescript-essentials-1st-
edition-christopher-nance/

Explore and download more ebooks or textbooks


at ebookfinal.com
We have selected some products that you may be interested in
Click the link to download now or visit ebookfinal.com
for more options!.

TypeScript in 50 Lessons 1st Edition Stefan Baumgartner

https://ebookfinal.com/download/typescript-in-50-lessons-1st-edition-
stefan-baumgartner/

Correspondence Analysis and West Mexico Archaeology


Ceramics from the Long Glassow Collection 1st Edition C.
Roger Nance
https://ebookfinal.com/download/correspondence-analysis-and-west-
mexico-archaeology-ceramics-from-the-long-glassow-collection-1st-
edition-c-roger-nance/

IFRS Essentials 1st Edition Christian

https://ebookfinal.com/download/ifrs-essentials-1st-edition-christian/

Essentials of Modern Spectrum Management The Cambridge


Wireless Essentials Series 1st Edition Martin Cave

https://ebookfinal.com/download/essentials-of-modern-spectrum-
management-the-cambridge-wireless-essentials-series-1st-edition-
martin-cave/
Essentials of Evidence Based Academic Interventions
Essentials of Psychological Assessment 1st Edition Barbara
J. Wendling
https://ebookfinal.com/download/essentials-of-evidence-based-academic-
interventions-essentials-of-psychological-assessment-1st-edition-
barbara-j-wendling/

Depp Christopher Heard

https://ebookfinal.com/download/depp-christopher-heard/

Consciousness 1st Edition Christopher S. Hill

https://ebookfinal.com/download/consciousness-1st-edition-christopher-
s-hill/

First Impressions 1st Edition Christopher Koehler

https://ebookfinal.com/download/first-impressions-1st-edition-
christopher-koehler/

Hydrometeorology 1st Edition Christopher G. Collier

https://ebookfinal.com/download/hydrometeorology-1st-edition-
christopher-g-collier/
TypeScript Essentials 1st Edition Christopher Nance
Digital Instant Download
Author(s): Christopher Nance
ISBN(s): 9781783985760, 1783985763
Edition: 1
File Details: PDF, 1.78 MB
Year: 2014
Language: english
TypeScript Essentials
Table of Contents
TypeScript Essentials
Credits
About the Author
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers, and more
Why subscribe?
Free access for Packt account holders
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Errata
Piracy
Questions
1. Getting Started with TypeScript
The advantages of TypeScript
Setting up the IDE
Hello World
Command-line compilation
Integrating Visual Studio
Creating a new project
Build options
Summary
2. TypeScript Basics
Types
Functions
Interfaces
Classes
Definitions
Interfaces
Static and instance members
Properties
Enums
Modules
Internal modules
Generic objects
Summary
3. The TypeScript Compiler
Generation of ECMAScript
ECMAScript version
Code manipulation
Controlling compiler output
JavaScript output
Source maps
Advanced options
Summary
4. Object-oriented Programming with TypeScript
The basics
SOLID – object-oriented design
Understanding inheritance
Encapsulation
Abstraction
Polymorphism
Method overloading
Operator overloading
Method overrides
References
Summary
5. Creating a Simple Drawing Application
Setting up the project
The shapes
Basic shapes
Drawing shapes
Making the application interactive
The engine
Mouse events
User options
Summary
6. Declaration Files and Library Integrations
Declaration files
Third-party library integration
Installing NuGet packages
Integrating with jQuery
Integrating with Knockout
Using RequireJS
Summary
7. Enhancing the Drawing Application
Converting to AMD modules
Binding the user controls
Reusable controls
Creating a ViewModel
Generating a single output file
Styling the application
Summary
8. Debugging TypeScript
Debugging
Source maps
Debuggers
Test-driven development
Unit testing
Adding tests
Summary
Index
TypeScript Essentials
TypeScript Essentials
Copyright © 2014 Packt Publishing

All rights reserved. No part of this book may be reproduced, stored in a retrieval
system, or transmitted in any form or by any means, without the prior written
permission of the publisher, except in the case of brief quotations embedded in
critical articles or reviews.

Every effort has been made in the preparation of this book to ensure the accuracy
of the information presented. However, the information contained in this book is
sold without warranty, either express or implied. Neither the author, nor Packt
Publishing, and its dealers and distributors will be held liable for any damages
caused or alleged to be caused directly or indirectly by this book.

Packt Publishing has endeavored to provide trademark information about all of


the companies and products mentioned in this book by the appropriate use of
capitals. However, Packt Publishing cannot guarantee the accuracy of this
information.

First published: October 2014

Production reference: 1161014

Published by Packt Publishing Ltd.

Livery Place

35 Livery Street

Birmingham B3 2PB, UK.

ISBN 978-1-78398-576-0

www.packtpub.com
Credits
Author

Christopher Nance

Re vie we rs

Andrea Martinelli

Nathan Rozentals

Basarat Ali Syed

Carlos Ballesteros Velasco

Commissioning Editor

Amarabha Banerjee

Acquisition Editor

Richard Gall

Conte nt De ve lopme nt Editor

Arvind Koul

Te chnical Editor

Kunal Anil Gaikwad

Copy Editors

Maria Gould

Paul Hindle

Proje ct Coordinator

Neha Bhatnagar

Proofre ade rs

Simran Bhogal

Ameesha Green

Paul Hindle

Inde xe rs
Monica Ajmera Mehta

Priya Sane

Graphics

Disha Haria

Production Coordinators

Adonia Jones

Komal Ramchandani

Nitesh Thakur

Cove r Work

Komal Ramchandani
About the Author
Christophe r Nance is an experienced software engineer and has been
developing rich web applications for more than 4 years. At KnowledgeLake, he
adopted TypeScript to develop a series of reusable components to scale across
multiple product offerings and platforms.

I would like to thank my parents for their constant support and encouragement. I
would also like to thank my team at KnowledgeLake for pushing me to improve
my skills as an engineer.
About the Reviewers
Andre a Martine lli is a passionate software developer who is currently working
on Shaman.IO, a tool that automatically detects and extracts structured data from
the Web.

In the past, he worked on Songr, a music player and aggregator. His interests span
across web data extraction, code performance, and statically typed languages. He
is a proficient C# developer and has been interested in TypeScript since its
initial announcement. He graduated from the University of Trento in Computer
Science and then studied at the Technical University of Denmark, even though he
is now dedicating more time to the Shaman.IO project while moving across
Europe.

I would like to thank my friends, especially Gianluca and Stefano, for always
being supportive. I would also like to thank Prof. Filz, who was one of my most
influential teachers in high school. Thanks also to Mads, a special person that I
will never forget. And to my family, who I haven't seen for quite a long time.

Nathan Roz e ntals has been writing commercial software for over 23 years,
starting with COBOL on mainframes, through C, on to C++ and Java, and finally
settling on C# and ASP.NET.

He picked up TypeScript in October 2012—a day after the 0.8.0 release—and


could not put it down. In TypeScript, he found a language that could bring all of
the design patterns and practices he had learned over the years—in a variety of
languages—to JavaScript.

Some 6 days after the 0.8.0 release, he began blogging about TypeScript;
covering a variety of topics, including unit testing, implementing an IoC
container, and organizing code with AMD modules. He knew he had hit the mark
when Microsoft themselves started to reference his blog in their CodePlex
discussion forums.

You can find his blog at http://blorkfish.wordpress.com.

He currently works in the health industry, bringing touchscreen interfaces to


medical systems, thereby enabling BYOD for clinicians and hospital staff.

He is passionate about code quality, unit testing, and continuous integration, and
has helped many large teams implement CI across many different software
projects in many different languages.

When he is not coding, he loves windsurfing and playing soccer. He is also an


avid Liverpool FC supporter.

I would like to thank my partner, Kathy, for her never ending love and support,
and for giving me the freedom to spend long hours working on something that I
am so passionate about. You are the best.
To Ayron and Dayna—you are always in my thoughts—your enthusiasm for life
and curious nature have given me such inspiration. I will always be there for you.

Basarat Ali Sye d (BAS) is a senior developer and the go-to guy for frontend
issues at Picnic Software (http://picnicsoftware.com/) in Melbourne, Australia.
He has a Master of Computing degree from Australian National University and
graduated with high distinction in all courses. He is a familiar face at developer
meetups and conferences in Australia and has been a speaker at events such as
ALT.NET, DDD Melbourne, MelbJS, and Node.js meetups, among others. He is
deeply passionate about web technologies. He is a known member of the
TypeScript community and works on the DefinitelyTyped team
(https://github.com/DefinitelyTyped). In his spare time, he enjoys bodybuilding,
cycling, and maintains a YouTube channel for helping fellow developers
(http://youtube.com/basaratali). You can easily find him on Twitter @basarat,
www.github.com/basarat, and www.basarat.com.
www.PacktPub.com
Support files, eBooks, discount offers,
and more
For support files and downloads related to your book, please visit
www.PacktPub.com.

Did you know that Packt offers eBook versions of every book published, with
PDF and ePub files available? You can upgrade to the eBook version at
www.PacktPub.com and as a print book customer, you are entitled to a discount
on the eBook copy. Get in touch with us at <service@packtpub.com> for more
details.

At www.PacktPub.com, you can also read a collection of free technical articles,


sign up for a range of free newsletters and receive exclusive discounts and offers
on Packt books and eBooks.

http://PacktLib.PacktPub.com

Do you need instant solutions to your IT questions? PacktLib is Packt's online


digital book library. Here, you can search, access, and read Packt's entire library
of books.
Why subscribe?
Fully searchable across every book published by Packt
Copy and paste, print, and bookmark content
On demand and accessible via a web browser
Free access for Packt account holders
If you have an account with Packt at www.PacktPub.com, you can use this to
access PacktLib today and view nine entirely free books. Simply use your login
credentials for immediate access.
Preface
This book is a quick and useful guide to learning the TypeScript language. The
language features that TypeScript provides on top of JavaScript are covered
thoroughly in this book with hands-on examples. TypeScript is a fairly new
development language that can ease the pain of normal JavaScript development.
Starting from downloading the compiler, covering language features, and
implementing a dynamic application, this book will leave you ready to create
new, large-scale JavaScript-based applications.
What this book covers
Chapter 1, Getting Started with TypeScript, covers setting up an environment for
developing TypeScript applications and creating a simple application.

Chapter 2, TypeScript Basics, covers the primary language features that


TypeScript creates on top of JavaScript and how each of these features compiles
into plain JavaScript.

Chapter 3, The TypeScript Compiler, examines the TypeScript compiler and the
different parameters that it accepts. The results of the different parameters will
be discussed as well as how they affect the final JavaScript output.

Chapter 4, Object-oriented Programming with TypeScript, is all about the


basics of object-oriented programming. You will be presented with the benefits
that TypeScript adds to make ECMA Script a more full-fledged object-oriented
language.

Chapter 5, Creating a Simple Drawing Application, walks you through creating a


simple drawing application using the concepts already covered in the book. By
the end of the chapter, you will have created a web-based drawing application
that will give you a good understanding of writing complex applications using
TypeScript.

Chapter 6, Declaration Files and Library Integrations, discusses declaration


files and how they help us integrate with other JavaScript libraries. Libraries
such as jQuery, KnockoutJS, and RequireJS will be covered.

Chapter 7, Enhancing the Drawing Application, re-examines the drawing


application and shows you how to create a more reusable set of objects. Module
definitions will be created and the process of minifying code is covered.

Chapter 8, Debugging TypeScript, discusses the different options available to


debug TypeScript once it is deployed and running. We also cover unit testing and
test-driven development, which will allow us to test functionality with code.
What you need for this book
TypeScript has a standalone compiler install, so any text editor can be used to
develop TypeScript applications. The examples provided with this book will use
Microsoft's Visual Studio, and it is recommended that you use it too to help you
follow the examples; however, this is not a requirement. A basic understanding of
JavaScript and web development is required as not every language construct will
be covered; just the ones that TypeScript provides on top of it.
Who this book is for
This book is intended to introduce the TypeScript language and its features to
anyone looking to develop rich web applications. Whether you are new to web
development or are an experienced engineer with strong JavaScript skills, this
book will get you writing code quickly. A basic understanding of JavaScript and
its language features is necessary for this book.
Discovering Diverse Content Through
Random Scribd Documents
Chapter Twenty-seven

THE GRAND REVIEW

Tilly Titter flew as she never flew before and in a short time she
landed on the ground beside the shoe house, her feathers all ruffled
up with excitement.
“I’ve got news,” she shouted, as the little women gathered about
her. “I’ve just come from the General and the army will be home in
about three days.”
“Is my husband well?” shouted Mrs. Lover.
“He’s as healthy as a dandelion and as pink as a rose bud,”
answered Tilly.
“How’s the Poet and the Lady of Fashion?” asked Grandpa.
“Well and ’appy,” cried Tilly. “As I was a sayin’, the army will be
’ome in about three days. The General said to tell you that they
would arrive on Friday afternoon if everthing goes well. He says for
you to have a good supper ready for the boys and to have plenty, for
they will be as hungry as young robins.”
“Is the Sailor getting along nicely?” asked Miss Guff.
“Fine as a fiddle! Fine as a fiddle!” answered the sparrow. “Wants
to walk, ’e’s feelin’ so well, but the Doctor makes ’im stay in the litter
and ride.”
“Well, we have got to get busy and do somethin’ for the boys,”
cried Grandpa. “We’ve got to give ’em a big feed and decorate the
place with flags and show ’em we’re glad to see ’em.”
“We’ll get up a grand supper for them,” cried Mrs. Lover, “and we’ll
have a dance afterwards.”
“I’ll bring over a big chunk of cheese,” cried the mouse that had
joined the crowd.
“I’ll get some fat worms for the supper,” cried Tilly, and instantly
she blushed a deep brown. “Oh, I forget you don’t eat worms. Well,
I’ll get some sunflower seeds.”
“I’ll donate a few nuts,” said Nick, the squirrel, who had been
hoping for a chance to speak.
“Oh, I forgot to say that the General said ’e would come in ahead
of the army so ’e could review them as they marched into the
village,” cried Tilly.
“He’s going to review the troops, did you say?” asked Grandpa,
who was hard of hearing.
“Yes!” shouted Tilly, right into the old gentleman’s ear. “The
General is goin’ to review the army.”
“Well, we got to get a reviewing stand ready for him,” cried
Grandpa.
“I’ll help,” shouted the mouse, “and I’ll get some mice to help,
too.”
“All right, get ’em!” cried Grandpa. “The sooner we get to work the
better it will be.”
In a short time the Teenie Weenies were as busy as bees in a
clover field. The little women set to work cooking and baking. They
made cakes and cookies by the thimble full. They made ginger
cookies, nut cookies, chocolate cake, fruit cake and half an English
walnut full of doughnuts, besides all sorts of other good things.
Grandpa put eight mice, a chipmunk and half a dozen bugs to
work getting the place ready for the returning soldiers. They cleaned
up the rubbish under the rose-bush, they moved all the desks out of
the schoolhouse, where the dinner and dance were to be held, and
they made a reviewing stand out of the top of a candy box.
Nick, the squirrel, worked hard opening nuts. He gnawed so many
his teeth became sore, but he never complained, for he was a very
patriotic squirrel and most fond of the Teenie Weenies.
The little folks decorated the village with Teenie Weenie flags and
bunting and when the time arrived for the army to march home the
village was crowded with all sorts of visitors. Bugs, mice, squirrels,
birds, chipmunks, and even a few chickens and ducks, crowded
under the rose-bush.
The General rode in ahead of the army and took his place on the
reviewing stand amid the wildest shouting and waving of flags, but
when the troops came marching into view there was such a
squealing of squirrels and mice and squawking of chickens, ducks
and birds, one could hardly hear oneself think. Grandpa shouted so
hard that he had one of his choking fits, and a mouse had to pound
him on the back until he could get his breath.
When the review was over there was much hugging and kissing
and some crying, for most of the little women shed a few tears of
happiness, but that’s a strange way women folks have of showing
they are happy. One old hen cried so hard she had to be led away. A
duck insisted on kissing the Dunce and a mouse hugged Paddy Pinn
so hard it nearly broke his arm.
After the little soldiers had visited for a time they were called into
the old derby hat for supper and such a supper as they had! There
was roasted bird’s egg, frog ham, escalloped hickory nut, walnut au
gratin, creamed hearts of sunflower seed, water cress and wild
cherry salad, and cakes and cookies and sliced grape and ice cream.
When the little soldiers had eaten until they could not hold
another morsel, the General arose from his seat at the head of the
big table and made a speech.
“Friends and men of the Teenie Weenie army,” he began, “I want
to thank you for your loyal and hearty service. You have gone
through hardships and you have risked your lives in battle without
complaint. You have done this to aid those in trouble and nothing
greater can be said of your deeds than that they were done willingly.
Men, I am proud to have been your leader.”
“Three cheers for the army!” shouted a mouse who had been
helping to wait on table, and the cheers were given with a will.
Next the Lady of Fashion made a little speech. She very prettily
thanked the General and the army for having rescued the Poet and
herself from the wild men and as she sat down there were tears in
her pretty eyes. The Poet spoke and Grandpa made a speech about
the great war in forty-two, but few heard what the old gentleman
said, for they were anxious to talk to one another about the great
events of the rescue of their friends.
“Friends!” shouted Paddy Pinn, when Grandpa had sat down, “I
think the Dunce ought to explain to the rest of us just why that old
duck was so anxious to kiss him.” Every one yelled so loudly for the
Dunce that he was forced to stand up, but he was so embarrassed
he couldn’t speak a word and the Teenie Weenies laughed so hard
they cried.
When the tables had been cleared away the orchestra started
playing and in a few minutes the little folks were swinging around to
the music of “The Lady of Fashion Waltz.” They danced until nearly
morning—in fact it was broad daylight when the tired little soldiers
crawled into their tiny beds, every one of them mighty thankful that
they were safely home again.
“The war is over, our duty is done;
Hang up the pistol, the sword and the gun.”

Rufus Rhyme,
Teenie Weenie Poet.
Transcriber’s Notes:
Missing or obscured punctuation was silently
corrected.
Typographical errors were silently corrected.
Inconsistent spelling and hyphenation were
made consistent only when a predominant
form was found in this book.
*** END OF THE PROJECT GUTENBERG EBOOK THE TEENIE
WEENIES IN THE WILDWOOD ***

Updated editions will replace the previous one—the old editions


will be renamed.

Creating the works from print editions not protected by U.S.


copyright law means that no one owns a United States
copyright in these works, so the Foundation (and you!) can copy
and distribute it in the United States without permission and
without paying copyright royalties. Special rules, set forth in the
General Terms of Use part of this license, apply to copying and
distributing Project Gutenberg™ electronic works to protect the
PROJECT GUTENBERG™ concept and trademark. Project
Gutenberg is a registered trademark, and may not be used if
you charge for an eBook, except by following the terms of the
trademark license, including paying royalties for use of the
Project Gutenberg trademark. If you do not charge anything for
copies of this eBook, complying with the trademark license is
very easy. You may use this eBook for nearly any purpose such
as creation of derivative works, reports, performances and
research. Project Gutenberg eBooks may be modified and
printed and given away—you may do practically ANYTHING in
the United States with eBooks not protected by U.S. copyright
law. Redistribution is subject to the trademark license, especially
commercial redistribution.

START: FULL LICENSE


THE FULL PROJECT GUTENBERG LICENSE
PLEASE READ THIS BEFORE YOU DISTRIBUTE OR USE THIS WORK

To protect the Project Gutenberg™ mission of promoting the


free distribution of electronic works, by using or distributing this
work (or any other work associated in any way with the phrase
“Project Gutenberg”), you agree to comply with all the terms of
the Full Project Gutenberg™ License available with this file or
online at www.gutenberg.org/license.

Section 1. General Terms of Use and


Redistributing Project Gutenberg™
electronic works
1.A. By reading or using any part of this Project Gutenberg™
electronic work, you indicate that you have read, understand,
agree to and accept all the terms of this license and intellectual
property (trademark/copyright) agreement. If you do not agree
to abide by all the terms of this agreement, you must cease
using and return or destroy all copies of Project Gutenberg™
electronic works in your possession. If you paid a fee for
obtaining a copy of or access to a Project Gutenberg™
electronic work and you do not agree to be bound by the terms
of this agreement, you may obtain a refund from the person or
entity to whom you paid the fee as set forth in paragraph 1.E.8.

1.B. “Project Gutenberg” is a registered trademark. It may only


be used on or associated in any way with an electronic work by
people who agree to be bound by the terms of this agreement.
There are a few things that you can do with most Project
Gutenberg™ electronic works even without complying with the
full terms of this agreement. See paragraph 1.C below. There
are a lot of things you can do with Project Gutenberg™
electronic works if you follow the terms of this agreement and
help preserve free future access to Project Gutenberg™
electronic works. See paragraph 1.E below.
1.C. The Project Gutenberg Literary Archive Foundation (“the
Foundation” or PGLAF), owns a compilation copyright in the
collection of Project Gutenberg™ electronic works. Nearly all the
individual works in the collection are in the public domain in the
United States. If an individual work is unprotected by copyright
law in the United States and you are located in the United
States, we do not claim a right to prevent you from copying,
distributing, performing, displaying or creating derivative works
based on the work as long as all references to Project
Gutenberg are removed. Of course, we hope that you will
support the Project Gutenberg™ mission of promoting free
access to electronic works by freely sharing Project Gutenberg™
works in compliance with the terms of this agreement for
keeping the Project Gutenberg™ name associated with the
work. You can easily comply with the terms of this agreement
by keeping this work in the same format with its attached full
Project Gutenberg™ License when you share it without charge
with others.

1.D. The copyright laws of the place where you are located also
govern what you can do with this work. Copyright laws in most
countries are in a constant state of change. If you are outside
the United States, check the laws of your country in addition to
the terms of this agreement before downloading, copying,
displaying, performing, distributing or creating derivative works
based on this work or any other Project Gutenberg™ work. The
Foundation makes no representations concerning the copyright
status of any work in any country other than the United States.

1.E. Unless you have removed all references to Project


Gutenberg:

1.E.1. The following sentence, with active links to, or other


immediate access to, the full Project Gutenberg™ License must
appear prominently whenever any copy of a Project
Gutenberg™ work (any work on which the phrase “Project
Gutenberg” appears, or with which the phrase “Project
Gutenberg” is associated) is accessed, displayed, performed,
viewed, copied or distributed:

This eBook is for the use of anyone anywhere in the United


States and most other parts of the world at no cost and
with almost no restrictions whatsoever. You may copy it,
give it away or re-use it under the terms of the Project
Gutenberg License included with this eBook or online at
www.gutenberg.org. If you are not located in the United
States, you will have to check the laws of the country
where you are located before using this eBook.

1.E.2. If an individual Project Gutenberg™ electronic work is


derived from texts not protected by U.S. copyright law (does not
contain a notice indicating that it is posted with permission of
the copyright holder), the work can be copied and distributed to
anyone in the United States without paying any fees or charges.
If you are redistributing or providing access to a work with the
phrase “Project Gutenberg” associated with or appearing on the
work, you must comply either with the requirements of
paragraphs 1.E.1 through 1.E.7 or obtain permission for the use
of the work and the Project Gutenberg™ trademark as set forth
in paragraphs 1.E.8 or 1.E.9.

1.E.3. If an individual Project Gutenberg™ electronic work is


posted with the permission of the copyright holder, your use and
distribution must comply with both paragraphs 1.E.1 through
1.E.7 and any additional terms imposed by the copyright holder.
Additional terms will be linked to the Project Gutenberg™
License for all works posted with the permission of the copyright
holder found at the beginning of this work.

1.E.4. Do not unlink or detach or remove the full Project


Gutenberg™ License terms from this work, or any files
containing a part of this work or any other work associated with
Project Gutenberg™.

1.E.5. Do not copy, display, perform, distribute or redistribute


this electronic work, or any part of this electronic work, without
prominently displaying the sentence set forth in paragraph 1.E.1
with active links or immediate access to the full terms of the
Project Gutenberg™ License.

1.E.6. You may convert to and distribute this work in any binary,
compressed, marked up, nonproprietary or proprietary form,
including any word processing or hypertext form. However, if
you provide access to or distribute copies of a Project
Gutenberg™ work in a format other than “Plain Vanilla ASCII” or
other format used in the official version posted on the official
Project Gutenberg™ website (www.gutenberg.org), you must,
at no additional cost, fee or expense to the user, provide a copy,
a means of exporting a copy, or a means of obtaining a copy
upon request, of the work in its original “Plain Vanilla ASCII” or
other form. Any alternate format must include the full Project
Gutenberg™ License as specified in paragraph 1.E.1.

1.E.7. Do not charge a fee for access to, viewing, displaying,


performing, copying or distributing any Project Gutenberg™
works unless you comply with paragraph 1.E.8 or 1.E.9.

1.E.8. You may charge a reasonable fee for copies of or


providing access to or distributing Project Gutenberg™
electronic works provided that:

• You pay a royalty fee of 20% of the gross profits you derive
from the use of Project Gutenberg™ works calculated using the
method you already use to calculate your applicable taxes. The
fee is owed to the owner of the Project Gutenberg™ trademark,
but he has agreed to donate royalties under this paragraph to
the Project Gutenberg Literary Archive Foundation. Royalty
payments must be paid within 60 days following each date on
which you prepare (or are legally required to prepare) your
periodic tax returns. Royalty payments should be clearly marked
as such and sent to the Project Gutenberg Literary Archive
Foundation at the address specified in Section 4, “Information
about donations to the Project Gutenberg Literary Archive
Foundation.”

• You provide a full refund of any money paid by a user who


notifies you in writing (or by e-mail) within 30 days of receipt
that s/he does not agree to the terms of the full Project
Gutenberg™ License. You must require such a user to return or
destroy all copies of the works possessed in a physical medium
and discontinue all use of and all access to other copies of
Project Gutenberg™ works.

• You provide, in accordance with paragraph 1.F.3, a full refund of


any money paid for a work or a replacement copy, if a defect in
the electronic work is discovered and reported to you within 90
days of receipt of the work.

• You comply with all other terms of this agreement for free
distribution of Project Gutenberg™ works.

1.E.9. If you wish to charge a fee or distribute a Project


Gutenberg™ electronic work or group of works on different
terms than are set forth in this agreement, you must obtain
permission in writing from the Project Gutenberg Literary
Archive Foundation, the manager of the Project Gutenberg™
trademark. Contact the Foundation as set forth in Section 3
below.

1.F.

1.F.1. Project Gutenberg volunteers and employees expend


considerable effort to identify, do copyright research on,
transcribe and proofread works not protected by U.S. copyright
law in creating the Project Gutenberg™ collection. Despite these
efforts, Project Gutenberg™ electronic works, and the medium
on which they may be stored, may contain “Defects,” such as,
but not limited to, incomplete, inaccurate or corrupt data,
transcription errors, a copyright or other intellectual property
infringement, a defective or damaged disk or other medium, a
computer virus, or computer codes that damage or cannot be
read by your equipment.

1.F.2. LIMITED WARRANTY, DISCLAIMER OF DAMAGES - Except


for the “Right of Replacement or Refund” described in
paragraph 1.F.3, the Project Gutenberg Literary Archive
Foundation, the owner of the Project Gutenberg™ trademark,
and any other party distributing a Project Gutenberg™ electronic
work under this agreement, disclaim all liability to you for
damages, costs and expenses, including legal fees. YOU AGREE
THAT YOU HAVE NO REMEDIES FOR NEGLIGENCE, STRICT
LIABILITY, BREACH OF WARRANTY OR BREACH OF CONTRACT
EXCEPT THOSE PROVIDED IN PARAGRAPH 1.F.3. YOU AGREE
THAT THE FOUNDATION, THE TRADEMARK OWNER, AND ANY
DISTRIBUTOR UNDER THIS AGREEMENT WILL NOT BE LIABLE
TO YOU FOR ACTUAL, DIRECT, INDIRECT, CONSEQUENTIAL,
PUNITIVE OR INCIDENTAL DAMAGES EVEN IF YOU GIVE
NOTICE OF THE POSSIBILITY OF SUCH DAMAGE.

1.F.3. LIMITED RIGHT OF REPLACEMENT OR REFUND - If you


discover a defect in this electronic work within 90 days of
receiving it, you can receive a refund of the money (if any) you
paid for it by sending a written explanation to the person you
received the work from. If you received the work on a physical
medium, you must return the medium with your written
explanation. The person or entity that provided you with the
defective work may elect to provide a replacement copy in lieu
of a refund. If you received the work electronically, the person
or entity providing it to you may choose to give you a second
opportunity to receive the work electronically in lieu of a refund.
If the second copy is also defective, you may demand a refund
in writing without further opportunities to fix the problem.

1.F.4. Except for the limited right of replacement or refund set


forth in paragraph 1.F.3, this work is provided to you ‘AS-IS’,
WITH NO OTHER WARRANTIES OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO WARRANTIES OF
MERCHANTABILITY OR FITNESS FOR ANY PURPOSE.

1.F.5. Some states do not allow disclaimers of certain implied


warranties or the exclusion or limitation of certain types of
damages. If any disclaimer or limitation set forth in this
agreement violates the law of the state applicable to this
agreement, the agreement shall be interpreted to make the
maximum disclaimer or limitation permitted by the applicable
state law. The invalidity or unenforceability of any provision of
this agreement shall not void the remaining provisions.

1.F.6. INDEMNITY - You agree to indemnify and hold the


Foundation, the trademark owner, any agent or employee of the
Foundation, anyone providing copies of Project Gutenberg™
electronic works in accordance with this agreement, and any
volunteers associated with the production, promotion and
distribution of Project Gutenberg™ electronic works, harmless
from all liability, costs and expenses, including legal fees, that
arise directly or indirectly from any of the following which you
do or cause to occur: (a) distribution of this or any Project
Gutenberg™ work, (b) alteration, modification, or additions or
deletions to any Project Gutenberg™ work, and (c) any Defect
you cause.

Section 2. Information about the Mission


of Project Gutenberg™
Project Gutenberg™ is synonymous with the free distribution of
electronic works in formats readable by the widest variety of
computers including obsolete, old, middle-aged and new
computers. It exists because of the efforts of hundreds of
volunteers and donations from people in all walks of life.

Volunteers and financial support to provide volunteers with the


assistance they need are critical to reaching Project
Gutenberg™’s goals and ensuring that the Project Gutenberg™
collection will remain freely available for generations to come. In
2001, the Project Gutenberg Literary Archive Foundation was
created to provide a secure and permanent future for Project
Gutenberg™ and future generations. To learn more about the
Project Gutenberg Literary Archive Foundation and how your
efforts and donations can help, see Sections 3 and 4 and the
Foundation information page at www.gutenberg.org.

Section 3. Information about the Project


Gutenberg Literary Archive Foundation
The Project Gutenberg Literary Archive Foundation is a non-
profit 501(c)(3) educational corporation organized under the
laws of the state of Mississippi and granted tax exempt status
by the Internal Revenue Service. The Foundation’s EIN or
federal tax identification number is 64-6221541. Contributions
to the Project Gutenberg Literary Archive Foundation are tax
deductible to the full extent permitted by U.S. federal laws and
your state’s laws.

The Foundation’s business office is located at 809 North 1500


West, Salt Lake City, UT 84116, (801) 596-1887. Email contact
links and up to date contact information can be found at the
Foundation’s website and official page at
www.gutenberg.org/contact
Section 4. Information about Donations to
the Project Gutenberg Literary Archive
Foundation
Project Gutenberg™ depends upon and cannot survive without
widespread public support and donations to carry out its mission
of increasing the number of public domain and licensed works
that can be freely distributed in machine-readable form
accessible by the widest array of equipment including outdated
equipment. Many small donations ($1 to $5,000) are particularly
important to maintaining tax exempt status with the IRS.

The Foundation is committed to complying with the laws


regulating charities and charitable donations in all 50 states of
the United States. Compliance requirements are not uniform
and it takes a considerable effort, much paperwork and many
fees to meet and keep up with these requirements. We do not
solicit donations in locations where we have not received written
confirmation of compliance. To SEND DONATIONS or determine
the status of compliance for any particular state visit
www.gutenberg.org/donate.

While we cannot and do not solicit contributions from states


where we have not met the solicitation requirements, we know
of no prohibition against accepting unsolicited donations from
donors in such states who approach us with offers to donate.

International donations are gratefully accepted, but we cannot


make any statements concerning tax treatment of donations
received from outside the United States. U.S. laws alone swamp
our small staff.

Please check the Project Gutenberg web pages for current


donation methods and addresses. Donations are accepted in a
number of other ways including checks, online payments and
credit card donations. To donate, please visit:
www.gutenberg.org/donate.

Section 5. General Information About


Project Gutenberg™ electronic works
Professor Michael S. Hart was the originator of the Project
Gutenberg™ concept of a library of electronic works that could
be freely shared with anyone. For forty years, he produced and
distributed Project Gutenberg™ eBooks with only a loose
network of volunteer support.

Project Gutenberg™ eBooks are often created from several


printed editions, all of which are confirmed as not protected by
copyright in the U.S. unless a copyright notice is included. Thus,
we do not necessarily keep eBooks in compliance with any
particular paper edition.

Most people start at our website which has the main PG search
facility: www.gutenberg.org.

This website includes information about Project Gutenberg™,


including how to make donations to the Project Gutenberg
Literary Archive Foundation, how to help produce our new
eBooks, and how to subscribe to our email newsletter to hear
about new eBooks.
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

ebookfinal.com

You might also like