舉報

會員
Hands-On Full Stack Web Development with Aurelia
Hands-OnFullStackWebDevelopmentwithAureliaisforyouifyouareaweborfull-stackJavaScriptdeveloperwhohasexperiencewithtraditionalstackssuchasLAMP,MEAN,orMERNandwishtoexplorethepowerofAureliaandnewstackwithmodernwebtechnologies.
目錄(303章)
倒序
- 封面
- 版權信息
- Dedication
- Packt Upsell
- Why subscribe?
- PacktPub.com
- Foreword
- Contributors
- About the authors
- About the reviewer
- Packt is searching for authors like you
- Preface
- Who this book is for
- What this book covers
- To get the most out of this book
- Download the example code files
- Conventions used
- Get in touch
- Reviews
- Introducing Aurelia
- JavaScript fundamentals
- Dynamic typing
- Object oriented
- Functional
- Prototyped
- Events handling
- The ECMAScript standard
- ES 6
- Arrow functions
- String interpolation
- Destructuring
- Setting up our environment
- Installing Node.js
- The Node Package Manager
- NPM website
- NPM Registry
- NPM CLI
- Common NPM operations
- Updating NPM
- Installing NPM packages
- Versions
- The package.json file
- Dependencies and devDependencies
- The Aurelia framework
- What is a JavaScript framework?
- Why use a JavaScript framework?
- JavaScript framework comparison
- Why Aurelia?
- Angular
- Technical information
- Dependency injection
- Component encapsulation
- React.js
- Technical information
- Dependency injection
- Component encapsulation
- Aurelia
- Technical information
- Dependency injection
- Component encapsulation
- Aurelia command-line tool
- Installation
- Creating a new application
- Running our Application
- Testing our application
- Building our application
- Generating custom resources
- World Cup app overview
- Exploring the application features
- Matches explorer
- Listing the matches
- Creating a new Match
- Teams explorer
- Listing the teams
- Creating a new team
- News
- Listing the News
- Create a New
- Social authentication
- Creating our app
- The project structure
- The Bootstrap process
- Understanding components
- Summary
- Styling the User Interface
- Talking about CSS
- How does it work?
- Exploring SASS and LESS
- Variables
- Nesting
- Extends
- If/else statements
- Automating tasks with Gulp
- Understanding Gulp
- How does Gulp.js work?
- Installing Gulp
- JavaScript task
- Automating tasks
- Exploring CSS frameworks
- Bootstrap
- Material Design
- Material is the metaphor
- Bold graphic and intentional
- Motion provides meaning
- Semantic UI
- The mobile-first approach
- Configuring our project with Aurelia-Materialize
- Summary
- Testing and Debugging
- Benefits of testing
- For the development team
- For the project
- For the organization
- For the users
- Test-Driven Development
- Making our code fail
- Implementing the code
- Refactoring our code
- Aurelia testing frameworks
- Learning JasmineJS
- Installation and configuration
- Test suites
- Test cases
- Expects
- Learning KarmaJS
- Installing karma
- Configuring Karma
- Testing example
- Launching the test runner
- Testing an Aurelia component
- Coding the application
- Creating the application
- Creating our component
- Implementing the info-box view model
- Implementing the info-box view HTML template
- Rendering the info-box component
- Writing the test
- Bootstrapping the component
- Testing the component
- Debugging our code
- Refactoring our application
- Debugging with Chrome Developer Tools
- Summary
- Creating Components and Templates
- Lego components
- A little puzzle
- Learning how DI works
- Managing a component's life cycle
- Managing events with Aurelia
- Data binding
- Binding computed properties
- Value converters
- Routing and resources
- Testing our components
- Testing component life cycle
- Time to practice!
- Summary
- Creating Our RESTful API
- Understanding RESTful
- Understanding HTTP
- URLs
- Verbs
- Headers
- Body
- CRUD over HTTP
- Designing APIs
- API first
- API design
- Nouns as paths
- HTTP verbs for CRUD
- API documentation
- Creating an API with Node.js
- Node advantages
- Asynchronous
- Single-thread
- Simple HTTP Server
- Improving our API with Express.js
- Coding our server
- Using routes
- Coding our project
- Our project structure
- Implementing the Teams API
- Configuring the JSON Parser
- Refactoring routes
- Creating a team
- Retrieving the list
- Updating a Team
- Deleting a Team
- Summary
- Storing Our Data in MongoDB
- NoSQL databases
- Document databases
- Introducing MongoDB
- Installing MongoDB
- CRUD operations
- Creating a document
- Retrieving documents
- Updating documents
- Deleting documents
- MongooseJS
- Installing Mongoose
- Configuring Mongoose
- Defining schemas
- Data types
- Validation
- Creating models
- Integrating our API with MongoDB
- Decoupling the Team Model
- Implementing the Rest Controller
- Connecting the app
- Creating a new team
- Listing the teams
- Finding a single team
- Updating teams
- The async/await instruction
- Deleting teams
- Summary
- Advanced Features on Aurelia
- Subscribing and publishing events – Event Aggregator at the rescue!
- Configuring Event Aggregator
- publish(event data)
- subscribe(event callbackFunction)
- subscribeOnce(event callbackFunction)
- Adding more languages to our application – Internationalization!
- Installation and configuration
- For Webpack users
- JSPM users
- Aurelia CLI users
- Configuring and defining our first translation files
- Using the plugin – Multilanguage support!
- Tracking method calls and user actions – Logging
- Configuring your log manager
- Modal configuration – Aurelia dialog at rescue!
- Getting the Aurelia-dialog plugin
- Adding dialog components to our application
- Dynamic value converters – Less code more functionality
- The problem – Data is not exposed as we need
- Binding custom behaviors to our application
- Improving our application forms – Validators
- Preparing for war – Getting the validation plugin
- First steps – Defining our rules
- Manipulating the DOM – Custom attributes
- Understanding how computed properties work
- Summary
- Security
- Understanding JSON Web Tokens
- JWT
- Custom authentication and authorization
- Implementing authentication
- The authentication logic
- Generating the token
- The authentication REST controller
- Implementing authorization
- Creating the Admin API
- Managing matches
- Creating the Match schema
- Creating the REST controller
- Creating Matches
- List Matches
- Updating the Scores
- Securing the REST controller
- Validate token
- Validate permissions
- Introducing Auth0
- A simple example
- Creating an account
- Registering an Auth0 client application
- Exploring our example application
- Social Login with Auth0
- Single sign-on
- Summary
- Running E2E Tests
- Integration testing – Multiple services one application
- Configuring applications for integration testing
- Mocking external dependencies
- Calculating code coverage
- Does our app meet our business requirements? UI testing
- Scripted testing
- Exploratory testing
- UX testing
- Planning our tests – Time for the truth
- Defining common scenarios
- Writing test cases
- Organizing our test – Creating scripts
- API test with Swagger
- Installing Swagger
- Summary
- Deployment
- Configuring our web for production
- Deploying on your own server
- Creating our NGINX configuration file
- Creating our Dockerfile
- Running our application on Docker
- Deploying on Heroku
- Creating a Heroku account
- Preparing the application
- Deploy
- Deploying on AWS S3 Buckets
- Uploading files
- Configuring our S3 Bucket for the web
- Summary
- Other Books You May Enjoy
- Leave a review - let other readers know what you think 更新時間:2021-06-25 20:59:01
推薦閱讀
- 解析QUIC/HTTP3:未來互聯網的基石
- Building Django 2.0 Web Applications
- React:Cross-Platform Application Development with React Native
- SSL VPN : Understanding, evaluating and planning secure, web/based remote access
- 大話社交網絡
- 企業網絡安全管理
- Mastering Dart
- 6G:面向2030年的移動通信
- 互聯網+思維與創新:通往未來的+號
- 物聯網工程概論
- 5G時代的大數據技術架構和關鍵技術詳解
- 數據血緣分析原理與實踐
- Getting Started with tmux
- Guide to NoSQL with Azure Cosmos DB
- 物聯網
- 信息技術安全評估準則:源流、方法與實踐
- ReasonML Quick Start Guide
- 物聯網傳感器技術與應用
- 網絡空間作戰:機理與籌劃
- SD-WAN 架構與技術
- Telerik WPF Controls Tutorial
- 網絡信息編輯項目化實操教程(第2版)
- 物聯網與智能制造
- OCF技術原理及物聯網程序開發指南
- Web滲透測試實戰:基于Metasploit 5.0
- IMS網絡部署、運營與未來演進
- CCNP SWITCH (642-813) 認證考試指南
- 網絡升級與改造實戰指南
- 社交網絡分析
- INSTANT Google Map Maker Starter