Developing Backbone.js Applications. Building Better JavaScript Applications
- Autor:
- Addy Osmani
- Ocena:
- Bądź pierwszym, który oceni tę książkę
- Stron:
- 374
- Dostępne formaty:
-
ePubMobi
Opis ebooka: Developing Backbone.js Applications. Building Better JavaScript Applications
If you want to build your site’s frontend with the single-page application (SPA) model, this hands-on book shows you how to get the job done with Backbone.js. You’ll learn how to create structured JavaScript applications, using Backbone’s own flavor of model-view-controller (MVC) architecture.
Start with the basics of MVC, SPA, and Backbone, then get your hands dirty building sample applications—a simple Todo list app, a RESTful book library app, and a modular app with Backbone and RequireJS. Author Addy Osmani, an engineer for Google’s Chrome team, also demonstrates advanced uses of the framework.
- Learn how Backbone.js brings MVC benefits to the client-side
- Write code that can be easily read, structured, and extended
- Work with the Backbone.Marionette and Thorax extension frameworks
- Solve common problems you’ll encounter when using Backbone.js
- Organize your code into modules with AMD and RequireJS
- Paginate data for your Collections with the Backbone.Paginator plugin
- Bootstrap a new Backbone.js application with boilerplate code
- Use Backbone with jQuery Mobile and resolve routing problems between the two
- Unit-test your Backbone apps with Jasmine, QUnit, and SinonJS
Wybrane bestsellery
-
W tej książce omówiono ponad 20 najprzydatniejszych wzorców projektowych, dzięki którym tworzone aplikacje internetowe będą łatwe w późniejszej obsłudze technicznej i w trakcie skalowania. Poza wzorcami projektowymi przedstawiono wzorce generowania i wydajności działania, których znaczenie dla uż...
Wzorce projektowe w JavaScripcie. Przewodnik dla programistów JavaScriptu i Reacta. Wydanie II Wzorce projektowe w JavaScripcie. Przewodnik dla programistów JavaScriptu i Reacta. Wydanie II
(44.85 zł najniższa cena z 30 dni)41.40 zł
69.00 zł(-40%) -
Do you want to write beautiful, structured, and maintainable JavaScript by applying modern design patterns to the language? Do you want clean, efficient, manageable code? Want to stay up-to-date with the latest best practices? If so, the updated second edition of Learning JavaScript Design Patter...(203.15 zł najniższa cena z 30 dni)
203.15 zł
239.00 zł(-15%) -
Dzięki tej książce zrozumiesz, że w rekurencji nie kryje się żadna magia. Dowiesz się, na czym polega jej działanie i kiedy warto zastosować algorytm rekursywny, a kiedy lepiej tego nie robić. Poznasz szereg klasycznych i mniej znanych algorytmów rekurencyjnych. Pracę z zawartym tu materiałem uła...
Rekurencyjna książka o rekurencji. Zostań mistrzem rozmów kwalifikacyjnych poświęconych językom Python i JavaScript Rekurencyjna książka o rekurencji. Zostań mistrzem rozmów kwalifikacyjnych poświęconych językom Python i JavaScript
(51.35 zł najniższa cena z 30 dni)47.40 zł
79.00 zł(-40%) -
JavaScript gives web developers great power to create rich interactive browser experiences, and much of that power is provided by the browser itself. Modern web APIs enable web-based applications to come to life like never before, supporting actions that once required browser plug-ins. Some are s...(177.65 zł najniższa cena z 30 dni)
186.15 zł
219.00 zł(-15%) -
This book provides a thorough understanding of JavaScript design patterns and assists with writing and structuring your JavaScript code and applications in a way that offers high performance to JavaScript application users.
JavaScript Design Patterns. Deliver fast and efficient production-grade JavaScript applications at scale JavaScript Design Patterns. Deliver fast and efficient production-grade JavaScript applications at scale
-
Znany i uwielbiany przez programistów React doczekał się potomka. Tak bowiem można by nazwać Gatsby.js – generator stron statycznych bazujący na bibliotece React. Gatsby używa jej jako swojej podstawy do budowania interfejsów użytkownika. Dalsze podobieństwa to między innymi struktura proje...
React i GatsbyJS. Kurs video. Nowoczesne strony internetowe w oparciu o headless CMS i GraphQL React i GatsbyJS. Kurs video. Nowoczesne strony internetowe w oparciu o headless CMS i GraphQL
(67.05 zł najniższa cena z 30 dni)39.90 zł
149.00 zł(-73%) -
Web apps are getting increasingly complex and frontend development more challenging. In this book, you’ll learn to better utilize the potential of the Angular framework and the design patterns that will simplify the challenges of your application.
Angular Design Patterns and Best Practices. Create scalable and adaptable applications that grow to meet evolving user needs Angular Design Patterns and Best Practices. Create scalable and adaptable applications that grow to meet evolving user needs
O autorze ebooka
Addy Osmani od lat pracuje jako programista JavaScriptu, jest autorem kilku popularnych książek na temat tego języka. Często występuje na konferencjach i innych wydarzeniach branżowych. Chętnie angażuje się w pomaganie innym programistom w rozwoju ich umiejętności.
Ebooka "Developing Backbone.js Applications. Building Better JavaScript Applications" przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook, Onyx Boox i innych
-
systemach Windows, MacOS i innych
-
systemach Windows, Android, iOS, HarmonyOS
-
na dowolnych urządzeniach i aplikacjach obsługujących formaty: PDF, EPub, Mobi
Masz pytania? Zajrzyj do zakładki Pomoc »
Audiobooka "Developing Backbone.js Applications. Building Better JavaScript Applications" posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolnych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video "Developing Backbone.js Applications. Building Better JavaScript Applications" zobaczysz:
-
w aplikacjach Ebookpoint i Videopoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych z dostępem do najnowszej wersji Twojej przeglądarki internetowej
Szczegóły ebooka
- ISBN Ebooka:
- 978-14-493-2855-9, 9781449328559
- Data wydania ebooka:
- 2013-05-10 Data wydania ebooka często jest dniem wprowadzenia tytułu do sprzedaży i może nie być równoznaczna z datą wydania książki papierowej. Dodatkowe informacje możesz znaleźć w darmowym fragmencie. Jeśli masz wątpliwości skontaktuj się z nami sklep@ebookpoint.pl.
- Język publikacji:
- angielski
- Rozmiar pliku ePub:
- 6.0MB
- Rozmiar pliku Mobi:
- 14.4MB
Spis treści ebooka
- Developing Backbone.js Applications
- Preface
- Target Audience
- Credits
- Reading
- Conventions Used in This Book
- Using Code Examples
- Safari Books Online
- How to Contact Us
- Acknowledgments
- 1. Introduction
- What Is MVC?
- What Is Backbone.js?
- When Do I Need a JavaScript MVC Framework?
- Why Consider Backbone.js?
- Setting Expectations
- 2. Fundamentals
- MVC
- Smalltalk-80 MVC
- MVC Applied to the Web
- Client-Side MVC and Single-Page Apps
- Client-Side MVC: Backbone Style
- Implementation Specifics
- Models
- Views
- Templating
- Handlebars.js
- Underscore.js microtemplates
- Controllers
- MVC
- What Does MVC Give Us?
- Delving Deeper into MVC
- Summary
- Further Reading
- Fast Facts
- Backbone.js
- Used by
- 3. Backbone Basics
- Getting Set Up
- Models
- Initialization
- Default values
- Initialization
- Getters and Setters
- Model.get()
- Model.set()
- Direct access
- Listening for Changes to Your Model
- Validation
- Views
- Creating New Views
- What Is el?
- $el and $()
- setElement
- Understanding render()
- The events hash
- Collections
- Adding and Removing Models
- Retrieving Models
- Listening for Events
- Resetting/Refreshing Collections
- Underscore Utility Functions
- forEach: Iterate over collections
- sortBy(): Sort a collection on a specific attribute
- map(): Create a new collection by mapping each value in a list through a transformation function
- min()/max(): Retrieve item with the min or max value of an attribute
- pluck(): Extract a specific attribute
- filter(): Filter a collection
- indexOf(): Return the item at a particular index within a collection
- any() : Confirm if any of the values in a collection pass an iterator truth test
- size(): Return the size of a collection
- isEmpty(): Determine whether a collection is empty
- groupBy(): Group a collection into groups like items
- pick(): Extract a set of attributes from a model
- omit(): Extract all attributes from a model except those listed
- keys() and values(): Get lists of attribute names and values
- pairs(): Get list of attributes as [key, value] pairs
- invert(): Create object in which the values are keys and the attributes are values
- Chainable API
- RESTful Persistence
- Fetching Models from the Server
- Saving Models to the Server
- Deleting Models from the Server
- Options
- Events
- on(), off(), and trigger()
- listenTo() and stopListening()
- Events and Views
- Routers
- Backbone.history
- Backbones Sync API
- Overriding Backbone.sync
- Dependencies
- Summary
- 4. Exercise 1: TodosYour First Backbone.js App
- Static HTML
- Header and Scripts
- Application HTML
- Templates
- Static HTML
- Todo Model
- Todo Collection
- Application View
- Individual TodoView
- Startup
- In Action
- Completing and Deleting Todos
- Todo Routing
- Summary
- 5. Exercise 2: Book LibraryYour First RESTful Backbone.js App
- Setting Up
- Creating the Model, Collection, Views, and App
- Setting Up
- Wiring in the Interface
- Adding Models
- Removing Models
- Creating the Backend
- Install Node.js, npm, and MongoDB
- Install Node Modules
- Create a Simple Web Server
- Connect to the Database
- Talking to the Server
- Summary
- 6. Backbone Extensions
- MarionetteJS (Backbone.Marionette)
- Boilerplate Rendering Code
- Reducing Boilerplate with Marionette.ItemView
- Memory Management
- Region Management
- Marionette Todo App
- TodoMVC.js
- TodoMVC.Layout.js
- TodoMVC.TodoList.js
- Controllers
- CompositeView
- TodoMVC.TodoList.Views.js
- Todos.js
- Is the Marionette Implementation of the Todo App More Maintainable?
- Marionette and Flexibility
- And So Much More
- MarionetteJS (Backbone.Marionette)
- Thorax
- Hello World
- Embedding Child Views
- View Helpers
- collection Helper
- Custom HTML Data Attributes
- Thorax Resources
- Summary
- 7. Common Problems and Solutions
- Working with Nested Views
- Problem
- Solution 1
- Solution 2
- Solution 3
- Solution 4
- Working with Nested Views
- Managing Models in Nested Views
- Problem
- Solution
- Rendering a Parent View from a Child View
- Problem
- Solution
- Disposing View Hierarchies
- Problem
- Solution
- Rendering View Hierarchies
- Problem
- Solution
- Working with Nested Models or Collections
- Problem
- Solution
- Better Model Property Validation
- Problem
- Solution
- Backbone.validateAll
- Backbone.Validation
- Form-Specific Validation Classes
- Avoiding Conflicts with Multiple Backbone Versions
- Problem
- Solution
- Building Model and View Hierarchies
- Problem
- Solution
- Calling Overridden Methods
- Backbone-Super
- Event Aggregators and Mediators
- Problem
- Solution
- Event Aggregator
- Backbones event aggregator
- jQuerys event aggregator
- Mediator
- A mediator for Backbone
- Similarities and Differences
- Events
- Third-party objects
- Relationships: When to Use Which
- Event aggregator use
- Mediator use
- Event Aggregator and Mediator Together
- Pattern Language: Semantics
- 8. Modular Development
- Organizing Modules with RequireJS and AMD
- Maintainability Problems with Multiple Script Files
- Need for Better Dependency Management
- Asynchronous Module Definition (AMD)
- Writing AMD Modules with RequireJS
- Alternate syntax
- Getting Started with RequireJS
- RequireJS configuration
- RequireJS Shims
- RequireJS configuration
- Custom paths
- Organizing Modules with RequireJS and AMD
- Require.js and Backbone Examples
- Wrapping models, views, and other components with AMD
- Keeping Your Templates External Using RequireJS and the Text Plug-in
- Optimizing Backbone Apps for Production with the RequireJS Optimizer
- Summary
- 9. Exercise 3: Your First Modular Backbone and RequireJS App
- Overview
- Markup
- Configuration Options
- Modularizing Our Models, Views, and Collections
- Route-Based Module Loading
- JSON-Based Module Configuration
- Module Loader Router
- Using NodeJS to Handle pushState
- An Asset Package Alternative for Dependency Management
- 10. Paginating Backbone.js Requests and Collections
- Backbone.Paginator
- Live Examples
- Backbone.Paginator
- Paginator.requestPager
- Convenience Methods
- Paginator.clientPager
- Convenience Methods
- Implementation Notes
- Plug-ins
- Bootstrapping
- Styling
- Summary
- 11. Backbone Boilerplate and Grunt-BBB
- Getting Started
- Creating a New Project
- index.html
- config.js
- main.js
- app.js
- Creating Backbone Boilerplate Modules
- router.js
- Other Useful Tools and Projects
- Yeoman
- Backbone DevTools
- Summary
- 12. Backbone and jQuery Mobile
- Mobile App Development with jQuery Mobile
- The Principle of Progressive Widget Enhancement by jQMobile
- Understanding jQuery Mobile Navigation
- Mobile App Development with jQuery Mobile
- Basic Backbone App Setup for jQuery Mobile
- Workflow with Backbone and jQueryMobile
- Routing to a Concrete View Page, Inheriting from BasicView
- Management of Mobile Page Templates
- DOM Management and $.mobile.changePage
- Applying Advanced jQM Techniques to Backbone
- Dynamic DOM Scripting
- Intercepting jQuery Mobile Events
- Performance
- Clever Multiplatform Support Management
- 13. Jasmine
- Behavior-Driven Development
- Suites, Specs, and Spies
- beforeEach() and afterEach()
- Shared Scope
- Getting Set Up
- TDD with Backbone
- Models
- Collections
- Views
- View Testing
- Initial setup
- View rendering
- Rendering with a templating system
- View Testing
- Exercise
- Further Reading
- Summary
- 14. QUnit
- Getting Set Up
- Sample HTML with QUnit-Compatible Markup
- Getting Set Up
- Assertions
- Basic Test Case Using test( name, callback )
- Comparing the Actual Output of a Function Against the Expected Output
- Adding Structure to Assertions
- Basic QUnit Modules
- Using setup() and teardown()
- Using setup() and teardown() for Instantiation and Clean Up
- Assertion Examples
- Fixtures
- Fixtures Example
- Asynchronous Code
- 15. SinonJS
- What Is SinonJS?
- Basic Spies
- Spying on Existing Functions
- Inspection Interface
- Matching arguments: Test that a spy was called with a specific set of arguments
- Stricter argument matching: Test that a spy was called at least once with specific arguments and no others
- Testing call order: Test that a spy was called before or after another spy
- Match execution counts: Test that a spy was called a specific number of times
- What Is SinonJS?
- Stubs and Mocks
- Stubs
- Mocks
- Exercise
- Models
- Collections
- Views
- App
- Further Reading and Resources
- 16. Conclusions
- A. Further Learning
- A Simple JavaScript MVC Implementation
- Event System
- Models
- Views
- Controllers
- Practical Usage
- A Simple JavaScript MVC Implementation
- MVP
- Models, Views, and Presenters
- MVP or MVC?
- MVC, MVP, and Backbone.js
- Namespacing
- What Is Namespacing?
- Single global variables
- Object literals
- Nested namespacing
- What Is Namespacing?
- What Does DocumentCloud Use?
- Recommendation
- Backbone Dependency Details
- DOM Manipulation
- Utilities
- RESTful Persistence
- Routing
- Backbone Versus Other Libraries and Frameworks
- B. Resources
- Books and Courses
- Extensions/Libraries
- Index
- About the Author
- Colophon
- Copyright
O'Reilly Media - inne książki
-
How will software development and operations have to change to meet the sustainability and green needs of the planet? And what does that imply for development organizations? In this eye-opening book, sustainable software advocates Anne Currie, Sarah Hsu, and Sara Bergman provide a unique overview...(160.65 zł najniższa cena z 30 dni)
169.14 zł
199.00 zł(-15%) -
OpenTelemetry is a revolution in observability data. Instead of running multiple uncoordinated pipelines, OpenTelemetry provides users with a single integrated stream of data, providing multiple sources of high-quality telemetry data: tracing, metrics, logs, RUM, eBPF, and more. This practical gu...(143.65 zł najniższa cena z 30 dni)
143.65 zł
169.00 zł(-15%) -
Interested in developing embedded systems? Since they don't tolerate inefficiency, these systems require a disciplined approach to programming. This easy-to-read guide helps you cultivate good development practices based on classic software design patterns and new patterns unique to embedded prog...(152.15 zł najniższa cena z 30 dni)
160.65 zł
189.00 zł(-15%) -
If you use Linux in your day-to-day work, then Linux Pocket Guide is the perfect on-the-job reference. This thoroughly updated 20th anniversary edition explains more than 200 Linux commands, including new commands for file handling, package management, version control, file format conversions, an...(92.65 zł najniższa cena z 30 dni)
92.65 zł
109.00 zł(-15%) -
Gain the valuable skills and techniques you need to accelerate the delivery of machine learning solutions. With this practical guide, data scientists, ML engineers, and their leaders will learn how to bridge the gap between data science and Lean product delivery in a practical and simple way. Dav...(237.15 zł najniższa cena z 30 dni)
245.65 zł
289.00 zł(-15%) -
This practical book provides a detailed explanation of the zero trust security model. Zero trust is a security paradigm shift that eliminates the concept of traditional perimeter-based security and requires you to "always assume breach" and "never trust but always verify." The updated edition off...(203.15 zł najniższa cena z 30 dni)
203.15 zł
239.00 zł(-15%) -
Decentralized finance (DeFi) is a rapidly growing field in fintech, having grown from $700 million to $100 billion over the past three years alone. But the lack of reliable information makes this area both risky and murky. In this practical book, experienced securities attorney Alexandra Damsker ...(194.65 zł najniższa cena z 30 dni)
203.15 zł
239.00 zł(-15%) -
Whether you're a startup founder trying to disrupt an industry or an entrepreneur trying to provoke change from within, your biggest challenge is creating a product people actually want. Lean Analytics steers you in the right direction.This book shows you how to validate your initial idea, find t...(126.65 zł najniższa cena z 30 dni)
126.65 zł
149.00 zł(-15%) -
When it comes to building user interfaces on the web, React enables web developers to unlock a new world of possibilities. This practical book helps you take a deep dive into fundamental concepts of this JavaScript library, including JSX syntax and advanced patterns, the virtual DOM, React reconc...(194.65 zł najniższa cena z 30 dni)
203.15 zł
239.00 zł(-15%) -
If programming is magic, then web scraping is surely a form of wizardry. By writing a simple automated program, you can query web servers, request data, and parse it to extract the information you need. This thoroughly updated third edition not only introduces you to web scraping but also serves ...(203.15 zł najniższa cena z 30 dni)
203.15 zł
239.00 zł(-15%)
Dzieki opcji "Druk na żądanie" do sprzedaży wracają tytuły Grupy Helion, które cieszyły sie dużym zainteresowaniem, a których nakład został wyprzedany.
Dla naszych Czytelników wydrukowaliśmy dodatkową pulę egzemplarzy w technice druku cyfrowego.
Co powinieneś wiedzieć o usłudze "Druk na żądanie":
- usługa obejmuje tylko widoczną poniżej listę tytułów, którą na bieżąco aktualizujemy;
- cena książki może być wyższa od początkowej ceny detalicznej, co jest spowodowane kosztami druku cyfrowego (wyższymi niż koszty tradycyjnego druku offsetowego). Obowiązująca cena jest zawsze podawana na stronie WWW książki;
- zawartość książki wraz z dodatkami (płyta CD, DVD) odpowiada jej pierwotnemu wydaniu i jest w pełni komplementarna;
- usługa nie obejmuje książek w kolorze.
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka, którą chcesz zamówić pochodzi z końcówki nakładu. Oznacza to, że mogą się pojawić drobne defekty (otarcia, rysy, zagięcia).
Co powinieneś wiedzieć o usłudze "Końcówka nakładu":
- usługa obejmuje tylko książki oznaczone tagiem "Końcówka nakładu";
- wady o których mowa powyżej nie podlegają reklamacji;
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka drukowana
Oceny i opinie klientów: Developing Backbone.js Applications. Building Better JavaScript Applications Addy Osmani (0) Weryfikacja opinii następuję na podstawie historii zamówień na koncie Użytkownika umieszczającego opinię. Użytkownik mógł otrzymać punkty za opublikowanie opinii uprawniające do uzyskania rabatu w ramach Programu Punktowego.