Ext JS Application Development Blueprints 1st Edition Ramsay instant download
Ext JS Application Development Blueprints 1st Edition Ramsay instant download
https://ebookname.com/product/ext-js-application-development-
blueprints-1st-edition-ramsay/
https://ebookname.com/product/ext-js-4-web-application-
development-cookbook-duncan/
https://ebookname.com/product/mastering-ext-js-avancini/
https://ebookname.com/product/node-js-blueprints-tsonev/
https://ebookname.com/product/organic-chemistry-seventh-edition-
john-mcmurry/
Indigenous Agency in the Amazon The Mojos in Liberal
and Rubber Boom Bolivia 1842 1932 1st Edition Gary Van
Valen
https://ebookname.com/product/indigenous-agency-in-the-amazon-
the-mojos-in-liberal-and-rubber-boom-bolivia-1842-1932-1st-
edition-gary-van-valen/
https://ebookname.com/product/production-and-operations-
management-3rd-edition-r-panneerselvam/
https://ebookname.com/product/alien-resurrection-1st-edition-a-c-
crispin/
https://ebookname.com/product/questioning-eu-enlargement-
routledge-studies-on-democratizing-europe-1st-edition-helene-
sjursen/
https://ebookname.com/product/practical-psychiatric-epidemiology-
oxford-medical-publications-1st-edition-martin-prince/
Python for Engineering and Scientific Computing 1st
Edition Veit Steinkamp
https://ebookname.com/product/python-for-engineering-and-
scientific-computing-1st-edition-veit-steinkamp/
Ext JS Application Development
Blueprints
Colin Ramsay
BIRMINGHAM - MUMBAI
Ext JS Application Development Blueprints
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.
ISBN 978-1-78439-530-8
www.packtpub.com
Credits
Indexer
Content Development Editor Hemangini Bari
Arwa Manasawala
Graphics
Technical Editor Disha Haria
Shashank Desai
Production Coordinator
Copy Editor Melwyn D'sa
Relin Hedly
Cover Work
Melwyn D'sa
About the Author
I'd like to thank all the people who listened to the ideas, updates,
and complaints while I was writing this book; you have the patience
of saints and I love you for it.
About the Reviewers
He is the coauthor of Oracle Enterprise Manager Grid Control 11g R1: Business Service
Management, Packt Publishing.
I would like to thank the author and Packt Publishing for giving
me this opportunity to be a reviewer. I would also like to thank my
mother, Padma, my wife, Nithya, and my toddler, Anirudh, for
letting me spend precious family time in the review process. I would
also like to thank my managers, Huan Tran and Reza Bfar, at Oracle
for approving my request to be a formal reviewer of this book.
Vincent Stanislaus is an ICT professional with more than 18 years of industry
experience; since the past 10 years, he has been working with a global wealth
management investment banking firm; his other areas of Industry expertise include
Superannuation, Banking, Insurance, Student Management, and Government
Divisions (Education/Housing).
Prior to this, his focus was on enforcing standards for the development team and
ensuring they were adhered to by developers. He loves reviewing code prepared
by developers, highlights any issues, and prevents them from being released to
production in order to mitigate outages.
He has reviewed the book Oracle Application Express 4.0 with Ext JS and the e-video
Oracle APEX Techniques, both by Packt Publishing.
He resides in Melbourne, Australia with his wife, Robina, and two lovely children,
Jonathan and Marilyn.
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.
TM
https://www2.packtpub.com/books/subscription/packtlib
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
[i]
Table of Contents
[ ii ]
Table of Contents
[ iii ]
Table of Contents
[ iv ]
Table of Contents
[v]
Table of Contents
[ vi ]
Table of Contents
[ vii ]
Preface
In times gone by, JavaScript was used to provide minor enhancements to the Web
in order to decorate pages with amusing effects or to validate user input. Slowly but
surely, as browsers implemented faster JavaScript engines and new features and
as developers and engineers came up with new techniques and ideas, JavaScript
became near-ubiquitous in providing the functionality that end users have come to
expect. With Ext JS, you have a toolset that allows you to build advanced JavaScript
applications, but with great power comes great responsibility.
An application architect is the guiding hand of a project. They help to ensure that client
expectations are met, timescales are achieved, and costs are contained. While juggling
these requirements, the architect must provide the foundations for a technically
successful project consisting of high quality, understandable code.
In Ext JS Application Development Blueprints, we'll go through the theory and practice
of designing and building Ext JS applications. Over the next 11 chapters, you'll learn
how Ext JS gives developers the key to a professionally designed software project
and how to take this knowledge and use it in a range of real-world scenarios.
Chapter 2, MVC and MVVM, introduces two classic patterns in software development
and how they're implemented in Ext JS.
Chapter 3, Application Structure, shows how the various parts of an Ext JS application
can be organized into a form that eases the development process.
[ ix ]
Preface
Chapter 4, Sencha Cmd, looks at the way Sencha's command-line tools act as a
powerful companion for your developers, enabling a leaner product that is delivered
on schedule.
Chapter 5, Practical – a CMS Application, shows how to design and build a simple
CMS application and how to start employing the ideas you've learned so far.
Chapter 7, Practical – an E-mail Client, shows off the responsive features of Ext JS 5
while continuing to demonstrate advanced use of the MVVM pattern.
Chapter 9, A Shopping Application, brings all the techniques from previous chapters to
bear on a tablet-centric shopping app.
Chapter 10, Debugging and Performance, teaches you advanced techniques to diagnose
a range of problems in development and production.
Chapter 11, Application Testing, provides you with techniques to build automated tests
that allow for the kind of robust application expected from an application architect.
[x]
Preface
Conventions
In this book, you will find a number of text styles that distinguish between different
kinds of information. Here are some examples of these styles and an explanation of
their meaning.
Code words in text, database table names, folder names, filenames, file extensions,
pathnames, dummy URLs, user input, and Twitter handles are shown as follows:
"This should be familiar to a seasoned Ext JS developer: we use Ext.define to create
a class called MyApp.SessionManager."
loginSuccess: function() {
this.isLoggedIn = true;
}
});
New terms and important words are shown in bold. Words that you see on
the screen, for example, in menus or dialog boxes, appear in the text like this:
"Clicking on Record again allows you to analyze the results."
[ xi ]
Preface
Reader feedback
Feedback from our readers is always welcome. Let us know what you think about
this book—what you liked or disliked. Reader feedback is important for us as it helps
us develop titles that you will really get the most out of.
If there is a topic that you have expertise in and you are interested in either writing
or contributing to a book, see our author guide at www.packtpub.com/authors.
Customer support
Now that you are the proud owner of a Packt book, we have a number of things to
help you to get the most from your purchase.
Errata
Although we have taken every care to ensure the accuracy of our content, mistakes
do happen. If you find a mistake in one of our books—maybe a mistake in the text or
the code—we would be grateful if you could report this to us. By doing so, you can
save other readers from frustration and help us improve subsequent versions of this
book. If you find any errata, please report them by visiting http://www.packtpub.
com/submit-errata, selecting your book, clicking on the Errata Submission Form
link, and entering the details of your errata. Once your errata are verified, your
submission will be accepted and the errata will be uploaded to our website or added
to any list of existing errata under the Errata section of that title.
[ xii ]
Preface
Piracy
Piracy of copyrighted material on the Internet is an ongoing problem across all
media. At Packt, we take the protection of our copyright and licenses very seriously.
If you come across any illegal copies of our works in any form on the Internet, please
provide us with the location address or website name immediately so that we can
pursue a remedy.
We appreciate your help in protecting our authors and our ability to bring you
valuable content.
Questions
If you have a problem with any aspect of this book, you can contact us at
questions@packtpub.com, and we will do our best to address the problem.
[ xiii ]
Introduction
Learning how to understand a single line of code, building that first "Hello World"
script, and experiencing the thrill when it works as you expect are the small steps
that draw us into the world of programming. This book is about the projects we
can build in this world using Sencha's Ext JS 5 and how to ensure you're building
on a strong foundation.
Let's start with talking about what we mean by software architecture and why it's
important for a successful project.
Humble beginnings
As coders, many of us would have started our development career by writing
scripts or code that we found helpful, which helped out with a hobby. That buzz,
the insight that you can create something practical and useful, that's where the
passion starts. It's from these hastily assembled first few lines on which many
of us have built a career.
[1]
Introduction
In those early days, we found ourselves writing code that spanned hundreds of
lines, but with no regard for how it might look if we came back to it in six months.
Would it be understandable? Can a feature be added without breaking something
else? Also, what if we want to share it with a friend or on the Internet? Trying to
work out the cause of a bug is going to rapidly become a nightmare.
In fact, the Internet is littered with such code. Why is this a problem? Let's say you
got roped into building a simple shopping cart for a friend. You knew enough to
get it working, but also enough to be dangerous. A shopping cart is responsible
for taking payment for goods, and a single security hole could result in someone
being out of pocket. Suddenly, your favor for a friend has become something that
has caused them to lose face and money.
With time, the solution comes organically; we start to break our work into smaller
chunks that make sense for the application. It will slowly become clear that there are
sensible ways of working, which make life easier, as your codebase grows. In the
photo gallery example, I could start to extract very simple aspects (such as headers,
footers, and pagination links) in order to focus on the core functionality.
Of course, not everyone starts this way. Developing a hobby into a career is just
one path by which the coding community develops its skillset. University or online
courses, books, and forums contribute to our learning process. The important thing
to bear in mind is that neither coder nor architect was born into the world knowing
everything and it's okay, even essential, to admit when there's a gap in your
knowledge. From a senior consultant to hobbyist hacker, we're going to try
and fill some of these gaps, as you build larger and more complex applications.
Growing up
Rather than writing code that is for a hobby or side project, we're now writing
applications that help run businesses. Someone is paying for this development time,
and someone's livelihood is relying on it. As professional software developers, we
need to adopt a professional mindset and skillset to match. Rather than coming up
with an idea and sitting down to code it immediately, we need to carefully consider
how our application is constructed. We need to ensure that it will work as expected
when real-world users get their hands on it; this will provide a strong platform for
future developers to build on.
[2]
Another Random Document on
Scribd Without Any Related Topics
including Erasmus In Praise of Folly. In 1685 he became vicar of
Ambrosden, Oxfordshire. A few years afterwards he returned to Oxford
as tutor and vice-principal of St Edmund’s Hall, where he gave
considerable impetus to the study of antiquities. George Hickes gave
him lessons in Old English. In 1695 he published Parochial Antiquities.
In 1700 he became rector of St Botolph’s, Aldgate, London, and in 1701
archdeacon of Huntingdon. For a eulogistic sermon on the first duke of
Devonshire he was in 1707 recommended to the deanery of
Peterborough. He afterwards joined the Low Church party, strenuously
opposed the Sacheverel movement, and in the Bangorian controversy
supported with great zeal and considerable bitterness the side of
Bishop Hoadly. His intimacy with Charles Trimnell, bishop of Norwich,
who was high in favour with the king, secured for him in 1718 the
bishopric of Peterborough. He died at Westminster in December 1728.
After John’s childless death the earldom appears to have been held
by his sister Joan, “the fair maid of Kent,” and in 1360 Joan’s husband,
Sir Thomas de Holand, or Holland, was summoned to parliament as
earl of Kent. Holand, who was a soldier of some repute, died in
Normandy on the 28th of December 1360, and his widow married
Edward the Black Prince, by whom she was the mother of Richard II.
The next earl was Holand’s eldest son Thomas (1350-1397), who was
marshal of England from 1380 to 1385, and was in high favour with his
half-brother, Richard II. The 3rd earl of Kent of the Holand family was
his son Thomas (1374-1400). In September 1397, a few months after
becoming earl of Kent, Thomas was made duke of Surrey as a reward
for assisting Richard II. against the lords appellant; but he was
degraded from his dukedom in 1399, and was beheaded in January of
the following year for conspiring against Henry IV. However, his brother
Edmund (1384-1408) was allowed to succeed to the earldom, which
became extinct on his death in Brittany in September 1408.
The long connexion of the family of Grey with this title began in
1465, when Edmund, Lord Grey of Ruthin, was created earl of Kent.
Edmund (c. 1420-1489) was the eldest son of Sir John Grey, while his
mother, Constance, was a daughter of John Holand, duke of Exeter.
During the earlier part of the Wars of the Roses Grey fought for Henry
VI.; but by deserting the Lancastrians during the battle of Northampton
in 1460 he gave the victory to the Yorkists. He was treasurer of
England and held other high offices under Edward IV. and Richard III.
His son and successor, George, 2nd earl of Kent (c. 1455-1503), also a
soldier, married Anne Woodville, a sister of Edward IV.’s queen,
Elizabeth, and was succeeded by his son Richard (1481-1524). After
Richard’s death without issue, his half-brother and heir, Henry (c. 1495-
1562), did not assume the title of earl of Kent on account of his
poverty; but in 1572 Henry’s grandson Reginald (d. 1573), who had
been member of parliament for Weymouth, was recognized as earl; he
was followed by his brother Henry (1541-1615), and then by another
brother, Charles (c. 1545-1623). Charles’s son, Henry, the 8th earl (c.
1583-1639), married Elizabeth (1581-1651), daughter of Gilbert Talbot,
7th earl of Shrewsbury. This lady, who was an authoress, took for her
second husband the jurist John Selden. Henry died without children in
November 1639, when the earldom of Kent, separated from the barony
of Ruthin, passed to his cousin Anthony (1557-1643), a clergyman, who
was succeeded by his son Henry (1594-1651), Lord Grey of Ruthin.
Henry had been a member of parliament from 1640 to 1643, and as a
supporter of the popular party was speaker of the House of Lords until
its abolition. The 11th earl was his son Anthony (1645-1702), whose
son Henry became 12th earl in August 1702, lord chamberlain of the
royal household from 1704 to 1710, and in 1706 was created earl of
Harold and marquess of Kent, becoming duke of Kent four years later.
All his sons predeceased their father, and when the duke died in June
1740, his titles of earl, marquess and duke of Kent became extinct.
The London Clay is much used for bricks, coarse pottery and
Roman cement. Lime is obtained from the Chalk and Greensand
formations. Ironstone is found in the Wadhurst Clay, a subdivision
of the Hastings beds, clays and calcareous ironstone in the
Ashdown sand, but the industry has long been discontinued. The
last Wealden furnace was put out in 1828.
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.
ebookname.com