Search found 526 matches

Author Message

Скачать WYSIWYG

Post Yesterday 18:30

[Quote]

The Art of Micro Frontends
Год издания: 2021
Автор: Rappl Florian
Издательство: Packt
ISBN: 978-1-80056-356-8
Язык: Английский
Формат: PDF/epub
Качество: Издательский макет или текст (eBook)
Интерактивное оглавление: Да
Количество страниц: 310
Описание: Apply your experience of web development with HTML and JavaScript to build micro frontends for large-scale web projects using frameworks such as React and popular web tooling such as Node.js with Express or webpack.
Key Features:
  • Cut through the complexities of designing a monolithic web architecture using micro frontend architecture
  • Explore architecture patterns for building large-scale applications
  • Learn how to build, test, and secure your micro frontends efficiently
What you will learn:
  • Understand how to choose the right micro frontend architecture
  • Design screens for compositional UIs
  • Create a great developer experience for micro frontend solutions
  • Achieve enhanced user experiences with micro frontends
  • Introduce governance and boundary checks for managing distributed frontends
  • Build scalable modular web applications from scratch or by migrating an existing monolith
Who this book is for:
This book is for software/solution architects or (mostly lead) developers as well as web developers and frontend engineers. Beginner-level knowledge of HTML and CSS along with a solid understanding of JavaScript programming and its ecosystem, including Node.js and NPM, is assumed.

Примеры страниц

Оглавление

Chapter 1, Why Micro Frontends?, covers micro frontends in general, their primary areas
of use, as well as the challenges and problems they bring. This includes what strategies can
be used to mitigate these problems and challenges.
Chapter 2, Common Challenges and Pitfalls, discusses the most important challenges and
pitfalls when implementing micro frontends, together with a path leading to a proper
solution.
Chapter 3, Deployment Scenarios, looks at the scalability of micro frontends with respect
to their deployment. This includes examples of CI/CD pipelines and their ideal use cases.
Chapter 4, Domain Decomposition, reveals a way of thinking that can be used when
deciding what should be placed in a micro frontend. This chapter introduces the use of
methods from domain-driven design to make these decisions.
Chapter 5, Types of Micro Frontend Architectures, introduces the phase space for creating
micro frontend architectures, including the most popular patterns out there. This chapter
outlines the advantages and disadvantages of the extremes within the phase space.
Chapter 6, The Web Approach, discusses the simplest approach of handling micro
frontends by leveraging existing web technologies such as iframes and links.
Chapter 7, Server-Side Composition, discusses a popular backend method of combining
frontend fragments coming from different servers into a single website.
Chapter 8, Edge-Side Composition, takes an even more simplified approach than server-
side composition to compose a website on the edge using a reverse proxy setup.
Chapter 9, Client-Side Composition, shows how to leverage Web Components to compose
one website from different fragments in the user’s browser.
Chapter 10, SPA Composition, discusses a way of bringing together different SPA websites
in a joint solution composed within the user’s browser.
Chapter 11, Siteless UIs, introduces a micro frontend pattern that brings popular
properties of serverless functions to the frontend.
Chapter 12, Preparing Teams and Stakeholders, deals with the organizational shift that is
necessary when introducing micro frontends.
Chapter 13, Dependency Management, Governance, and Security, provides some guidance
on dependency sharing and general micro frontend governance for projects of any kind.
This chapter also touches on the topic of security from deployment to runtime.
Chapter 14, Impact on UX and Screen Design, reveals the most critical aspects that need to
be handled when creating designs for micro frontend solutions with practically unlimited
scalability.
Chapter 15, Developer Experience, lists the most crucial properties to include for satisfying
internal or external developers of the project. This is crucial for keeping up a high level of
productivity.
Chapter 16, Case Studies, lists three different real-world micro frontend projects with their
background, core decisions, and overall architecture used.
Code: https://github.com/PacktPublishing/The-Art-of-Micro-Frontends

Скачать WYSIWYG

Post 21-Jun-2021 16:30

[Quote]

Web Development with Blazor
Год издания: 2021
Автор: Engström J.
Издательство: Packt
ISBN: 978-1-80020-872-8
Язык: Английский
Формат: PDF/epub
Качество: Издательский макет или текст (eBook)
Интерактивное оглавление: Да
Количество страниц: 310
Описание: Learn modern web UI development with server-side Blazor and Blazor WebAssembly.
Key Features:
  • Packed with Blazor fundamentals, actionable insights, and best practices
  • Learn how to create and deploy a production-ready Blazor application
  • Find out how, when, and why to use server-side Blazor and Blazor WebAssembly
What you will learn:
  • Understand the different technologies that can be used with Blazor, such as server-side, client-side (WebAssembly), desktop, and mobile
  • Find out how to build simple and advanced Blazor components
  • Explore the differences between server-side and WebAssembly projects
  • Discover how Entity Framework works and build a simple API
  • Understand what components are and find out how to create basic and advanced components
  • Use existing JavaScript libraries in Blazor
  • Use techniques to debug your client-side and server-side Blazor applications
  • Test Blazor components using bUnit
Who This Book Is For:
The book is for web developers and software developers who want to explore Blazor for building dynamic web UIs. This book assumes familiarity with C# programming and web development concepts.

Примеры страниц

Оглавление

Chapter 1, Hello Blazor, will teach you about the difference between server-side and client-
side Blazor. You will get an overview of how the technology works and a brief history of
where Blazor comes from. Knowing the structure and differences between the hosting
models is essential for understanding the technology.
Chapter 2, Creating Your First Blazor App, helps you understand how to install and set up
your development environment. You will create your first Blazor app (both server-side
and client-side) and learn about the structure of the project template.
Chapter 3, Introducing Entity Framework Core, teaches you how to create your database
where you will store your data (blog posts, categories, and tags). You will be using the
dotnet tool to create a new project to get a feel for the tool.
Chapter 4, Understanding Basic Blazor Components, digs deeper into components, life
cycle events, adding parameters, and sharing parameters between components. You will
also create reusable components in this chapter.
Chapter 5, Creating Advanced Blazor Components, digs even deeper into components,
adding functionality such as child components, cascading parameters, and values, and
covering how to use actions and callbacks.
Chapter 6, Building Forms with Validation, takes a look at forms, how to validate forms,
and how to build your own validation mechanism. This chapter will cover the most
common use cases when it comes to handling forms, such as file upload, text, numbers,
and triggering code when checking a checkbox.
Chapter 7, Creating an API, looks at creating an API. When using Blazor WebAssembly,
we need an API to get data.
Chapter 8, Authentication and Authorization, looks at adding authentication and
authorization to Blazor and making sure navigation such as redirecting to a login page
works as expected.
Chapter 9, Sharing Code and Resources, teaches you how it is possible to share code
between client-side and server-side Blazor projects by adding all the things you need into
a shared library. In this chapter, you will build a shared library that can be packaged as a
NuGet package and shared with others.
Chapter 10, JavaScript Interop, explores how you can leverage JavaScript libraries when
using Blazor and make calls from C# to JavaScript. You will also take a look at how
JavaScript is able to call C# functions in our Blazor app.
Chapter 11, Managing State, looks into the different ways of managing state (persisting
data), such as using LocalStorage or just keeping data in memory by using dependency
injection. You will not only cover persisting data in a database, but you will also cover how
dependency injection works on the different project types.
Chapter 12, Debugging, teaches you how to debug your applications and add extended
logging to figure out what's wrong in your application. You will not only look at traditional
debugging but also at debugging C# code directly from within the web browser.
Chapter 13, Testing, looks at automated testing so that you can make sure your
components work as they should (and continue to do so). There is no built-in method to
test Blazor applications but there is a really good community project called bUnit.
Chapter 14, Deploying to Production, will take you through the different things you need
to think about when it comes to running Blazor in production.
Chapter 15, Where to Go from Here, is a short chapter with a call to action, some resources
you can use, and a finale.
Code: https://github.com/PacktPublishing/Web-Development-with-Blazor/archive/refs/heads/master.zip

Скачать WYSIWYG

Post 25-May-2021 00:20

[Quote]

TypeScript Quickly / TypeScript быстро
Год издания: 2021
Автор: Yakov Fain, Anton Moiseev / Яков Файн, Антон Моисеев
Переводчик: Д. Акуратер
Издательство: Питер
ISBN: 978-5-4461-1725-3
Серия: Для профессионалов
Язык: Русский
Формат: PDF
Качество: Издательский макет или текст (eBook)
Интерактивное оглавление: Да
Количество страниц: 528
Описание:
«TypeScript быстро» научит вас секретам продуктивной разработки веб- или самостоятельных приложений. Она написана практиками для практиков.
В книге разбираются актуальные для каждого программиста задачи, объясняется синтаксис языка и описывается разработка нескольких приложений, в том числе нетривиальных — так вы сможете понять, как использовать TypeScript с популярными библиотеками и фреймворками.
Вы разберетесь с превосходным инструментарием TypeScript и узнаете, как объединить в одном проекте TypeScript и JavaScript. Среди продвинутых тем, рассмотренных авторами, – декораторы, асинхронная обработка и динамические импорты.
Прочитав эту книгу, вы поймете, что именно делает TypeScript особенным.
Код доступен по адресу - https://www.manning.com/downloads/1899

Примеры страниц

Мои остальные раздачи -

Скачать WYSIWYG

Post 16-May-2021 09:20

[Quote]

The Official Joomla! Book
Год: 2011
Автор: Jennifer Marriott and Elin Waring
Жанр: WEB Development
Издательство: Pearson Education
ISBN: 978-0-321-70421-4
Язык: Английский
Формат: PDF
Качество: Отсканированные страницы
Интерактивное оглавление: Нет
Количество страниц: 362
Описание: When planning what should be in a book about Joomla!, we thought haul about the process we go through when building Web sites and when helping others build sites. We decided that this book should be about building a Web site using joomlal rather than how to use joomlal to build a Web site. Even though you can make aWeb site using loomla! in a few hours (or less), most likely it won't be a great site, and it won’t allow you take advantage of the power of Joomla! The focus should always be on how you envision your site, the goals of the site, and the audiences you want to reach rather than on the technology used to create it. Fortunately, with its combination of power and ease of use Joomla! lets you keep your focus on the big picture of your site and the small details of your content and not on mastering a complicated set of processes. This is why we start with a thorough discussion of things to think about you start building your site. We've also built a set of very simple sample sites that will give you a good idea of the initial process of thinking about and then building sites for various purposes.We hope that you'll follow along with the construction of those sites so that you understand the process that site developers use. If you do these tasks first, you will be ready to build your own site with confidence and a good plan. In addition, we try to help you have a basic understanding of how Joomla! really works “under the hood" so that when you are ready to take advantage of the power that comes with its extensibility, you will have the knowledge to do that in the right way. We think that, like us, you will want to steadily increase the sophistication of your site and your knowledge and understanding of Joomla! So, we've written this book with the idea of giving you a strong foundation for the future of your site and other sites you may build in the future. Free and open source software is empowering, but you need to have solid knowledge of the fundamentals to take advantage of it. We're passionate about Joomla!, and we hope that you will be, too. That's why we take time in this book to introduce you to the joomla! project and the joomla! co1mnunity. We hope that you'll want to become an active participant in the Joomla! world. And we hope that you enjoy building your site so much that you end up building other sites for the friends, family members, organizations, or causes you care about.

Примеры страниц

Оглавление

1 All About Joomla! 1
2 What Now and Where Do I Begin: Before You
Install Joomla! 17
3 Installing and Configuring Joomla! 37
4 Working with and Creating Content for Your
Joomla! Site 61
5 Customizing Templates and the Basics of Templates for Joomla! 83
6 The Basics of Joomla! Extensions: Components, Modules, Plugins, and Languages 103
7 Caring for Your Joomla! Web Site and Helpful Tips 123
8 Practical Application: Joomla! for Business 141
9 Practical Application: Joomla! for NGOs/NPOs, Groups,
Clubs, and Organizations 171
10 Practical Application: Joomla! for Education 193
11 A Look at Joomla! 1.6 and the Future 225
12 Interviews with Experts 237
A Common Problems and Solutions 275
B Resources 283
C A Look at Joomla! 1.6 ACL 293
Glossary 305
Index 315
Доп. информация: Joomla! 1.6

Скачать WYSIWYG

Post 06-May-2021 15:05

[Quote]

Spring Boot 2. Лучшие практики для профессионалов
Год издания: 2020
Автор: Гутьеррес Ф.
Издательство: Питер
ISBN: 978-5-4461-1587-7
Серия: Библиотека программиста
Язык: Русский
Формат: PDF
Качество: Издательский макет или текст (eBook)
Интерактивное оглавление: Да
Количество страниц: 464
Описание: Хотите повысить свою эффективность в разработке корпоративных и облачных Java-приложений?
Увеличьте скорость и простоту разработки микросервисов и сложных приложений, избавившись от забот по конфигурации Spring.
Используйте Spring Boot 2 и такие инструменты фреймворка Spring 5, как WebFlux, Security, Actuator, а также фреймворк Micrometer, предоставляющий новый способ сбора метрик.
В этой кнге: настройка и использование Spring Boot 2; работа с нефункциональными требованиями с помощью Spring Boot Actuator; разработка веб-приложений с помощью Spring Boot 2; постоянное хранение данных с использованием JDBC, JPA и баз данных NoSQL; обмен сообщениями с помощью JMS, RabbitMQ и WebSockets; краткое знакомство с проектами Spring Cloud; тестирование, микросервисы и развертывание в облачной среде с использованием Spring Boot 2; расширение Spring Boot путем создания своего собственного «стартового набора» и добавления функциональности

Примеры страниц

Оглавление

Об авторе 16
О научных редакторах 17
Благодарности 18
Глава 1. Фреймворк Spring 5 19
Глава 2. Введение в Spring Boot 45
Глава 3. Внутреннее устройство и возможности Spring Boot 59
Глава 4. Создание веб-приложений 96
Глава 5. Доступ к данным 131
Глава 6. Работа с WebFlux и Reactive Data 172
Глава 7. Тестирование 203
Глава 8. Безопасность 215
Глава 9. Обмен сообщениями 257
Глава 10. Spring Boot Actuator 301
Глава 11. Создание приложений Spring Integration и Spring Cloud Stream 353
Глава 12. Spring Boot в облаке 398
Глава 13. Расширение возможностей Spring Boot 420
Приложение. Интерфейс командной строки Spring Boot 442

Скачать WYSIWYG

Post 25-Apr-2021 18:25

[Quote]

Mastering TypeScript, 4th edition / Осваиваем TypeScript, 4-е издание
Год издания: 2021
Автор: Rozentals Nathan / Розенталс Натан
Издательство: Packt
ISBN: 9781800564732
Язык: Английский
Формат: PDF/epub
Качество: Издательский макет или текст (eBook)
Интерактивное оглавление: Да
Описание: TypeScript is both a language and a set of tools to generate JavaScript. It was designed by Anders Hejlsberg at Microsoft to help developers write enterprise-scale JavaScript.
Using a fast-paced, but easy-to-follow set of code samples, this fourth edition will get you up and running with Typescript quickly, introduce core concepts, and then build on this knowledge to help you understand and then apply more advanced language features.
Mastering TypeScript, Fourth Edition also covers a variety of modern JavaScript and TypeScript frameworks and compares their respective strengths and weaknesses. As you advance through this TypeScript book, you'll explore Angular, React, Vue, RxJs, Express, NodeJS, and others. You'll get up to speed with unit and integration testing, data transformation, serverless technologies, and asynchronous programming. You’ll also learn how to integrate with existing JavaScript libraries, control your compiler options, and use decorators and generics.
By the end of the book, you will have built a comprehensive set of web applications using Angular, React, and Vue, having integrated them into a single cohesive website, using micro front-end techniques. Mastering TypeScript, Fourth Edition is about learning the language, understanding when to apply its features, and then selecting the framework that is the perfect fit for your real-world project.
Key Features:
  • Explore TypeScript 4's key elements and advanced language features
  • Use TypeScript with modern frameworks such as Angular, Vue, React, RxJS and Node
  • Understand TDD, serverless techniques, micro frontends, and other industry-standard best practices to create high-quality and modular apps
What you will learn:
  • Gain insights into core and advanced TypeScript language features
  • Integrate with existing JavaScript libraries and third-party frameworks
  • Build full working applications using JavaScript frameworks, such as Angular, React, Vue and more
  • Create test suites for your application with Jest and Selenium
  • Apply industry standard design patterns to build modular code
  • Develop web server solutions using Node and Express
  • Design and implement serverless API solutions
  • Explore micro front-end technologies and techniques
Who This Book Is For:
This book serves as a guide for beginners, as well as providing practical insights and techniques for experienced JavaScript and TypeScript programmers. No prior knowledge of JavaScript is required.

Примеры страниц

Оглавление

Up and Running Quickly
Exploring the Type System
Interfaces, Classes, Inheritance, and Modules
Generics and Advanced Type Inference
Asynchronous Language Features
Decorators
Integration with JavaScript
Strict Compiler Options
Using Observables to Transform Data
Test-Driven Development
Angular
React
Vue
Node and Express
An AWS Serverless API
Micro Front-ends

Скачать WYSIWYG

Post 12-Apr-2021 20:00

[Quote]

Fullstack GraphQL
Год издания: 2020
Автор: Derks Roy, Checinski Gaetano
Издательство: newline
Язык: Английский
Формат: PDF/epub
Качество: Издательский макет или текст (eBook)
Интерактивное оглавление: Да
Количество страниц: 231
Описание: Build Robust, Safe, and Flexible APIs with GraphQL
GraphQL changed the way data is transferred between applications.
As you will work through this book, we hope you won’t just add GraphQL to your toolbox, but also develop a new way of thinking about data models, APIs, and full-stack development.
GraphQL – and it’s huge ecosystem – give you tools to create and consume flexible, easy-to-use, type-safe APIs.
Usage Driven: It encourages users to define queries that specify what data to fetch in a granular way.
Intuitive: GraphQL delivers you only the data that you request, in the exact format that you requested
Self-descriptive: GraphQL schemas are strongly typed and define a strict contract between a query and its response.
GraphQL embodies many lessons learned from API design that enforces several best practices into one solution, and in Fullstack GraphQL we show you how to use these tools with practical code-driven examples.
What’s in the book
Fullstack GraphQL is the busy engineer’s guide to building real-world GraphQL servers and clients with examples in Node.js, React, TypeScript, and Apollo.
How to write GraphQL Schemas
How to write flexible APIs with GraphQL and Node.js
How to generate TypeScript types from your GraphQL types – for type-safe code that matches your API
How to use an ORM to automatically generate your GraphQL API
How to setup authentication and authorization for your API
How to use Apollo Client with Hooks in your React app
How to use GraphQL developer tools
How to optimize your GraphQL server fetching with DataLoader
How to paginate queries and write efficient pagination resolvers
How to modify data with Mutations

Примеры страниц

Оглавление

Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
What is GraphQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Why GraphQL? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Usage driven and Intuitive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Self-descriptive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Other advantages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Prerequisites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Join Our Discord . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Hello GraphQL - GraphiQL and Github’s GraphQL Playground . . . . . . . 11
Enter GraphiQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Our First Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Named Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Multiple Queries and Renaming Result fields . . . . . . . . . . . . . . . . . . 24
Fragments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Union Types and Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Pagination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Mutations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
GraphQL queries over HTTP - fetching with fetch and curl . . . . . . . . 37
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Hello GraphQL from Node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
A GraphQL Hello World from Node . . . . . . . . . . . . . . . . . . . . . . . 39
Making Changes with Mutations . . . . . . . . . . . . . . . . . . . . . . . . . 41
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Hello GraphQL in the Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
A GraphQL Hello World from Localhost . . . . . . . . . . . . . . . . . . . . 43
Putting the Query in the App . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Creating a Custom Hook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Making Updates with Mutations . . . . . . . . . . . . . . . . . . . . . . . . . 49
Handling User Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Picking a GraphQL Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
GraphQL is just JSON over HTTP (well, usually) . . . . . . . . . . . . . . . 54
Why You Might Want a Dedicated GraphQL Client . . . . . . . . . . . . . . 55
So What Are The Options? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
graphql-request . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
urql . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Relay Modern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Apollo Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
What to Choose? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
The Basics of Apollo Client and React . . . . . . . . . . . . . . . . . . . . . . . . 62
Apollo Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Getting Hooked on useQuery . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Getting hooked on useMutation . . . . . . . . . . . . . . . . . . . . . . . . . . 66
How to use Apollo Client across your app . . . . . . . . . . . . . . . . . . . . 67
ApolloClient and Testing Components . . . . . . . . . . . . . . . . . . . . . . 67
Remember . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Building a TypeSafe GraphQL React Client App - Part 1 . . . . . . . . . . . . 72
What are we building? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Tooling and Project Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
TypeScript and GraphQL Types - There is a difference . . . . . . . . . . . . 75
Generating Types with graphql-codegen . . . . . . . . . . . . . . . . . . . . . 76
Generating Types for Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Generating Helper Functions for Apollo . . . . . . . . . . . . . . . . . . . . . 79
Building the Issue Finder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Creating the Search Component . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Visualizing Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Pagination with cursors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Tracking our cursorState . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Building a TypeSafe GraphQL React Client App - Part 2 . . . . . . . . . . . . 93
What are we building? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Loading Comments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Mutations - Modifying Existing Data . . . . . . . . . . . . . . . . . . . . . . . 103
Mutations - Creating New Data . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Refetching Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Manually Updating the Apollo Cache . . . . . . . . . . . . . . . . . . . . . . 110
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
What’s Next? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
FAQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Your First GraphQL Server with Apollo Server . . . . . . . . . . . . . . . . . . 115
Getting started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Schema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
The Obligatory Boilerplate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
Mocking the Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Resolvers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
Chaining Resolvers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
Passing Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
Using GraphQL Servers with A Database . . . . . . . . . . . . . . . . . . . . . 137
Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
Using GraphQL with a Database . . . . . . . . . . . . . . . . . . . . . . . . . 138
Queries with pagination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
Writing Mutation Resolvers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Handling Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
Caching and Batching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Optimized queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Batching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
Caching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
Cost computation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
Authentication and Authorization in GraphQL . . . . . . . . . . . . . . . . . . 178
JWT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
Resolver Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
Context Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
Schema Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
Code First GraphQL with TypeORM and TypeGraphQL . . . . . . . . . . . . 205
TypeGraphQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
Implementing Pagination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
Using Context in a Resolver . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
TypeORM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
Authorization with TypeGraphQL . . . . . . . . . . . . . . . . . . . . . . . . 221
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
More on TypeGraphQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
Where to Go From Here? Advanced GraphQL . . . . . . . . . . . . . . . . . . 224
What did you think? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
Awesome GraphQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
Say Hello . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224

Скачать WYSIWYG

Post 12-Apr-2021 14:10

[Quote]

Fullstack Vue: The Complete Guide to Vue.js (Revision 13)
Год издания: 2021
Автор: Djirdeh Hassan, Murray Nate, Lerner Ari
Издательство: \newline (Fullstack.io)
Язык: Английский
Формат: PDF/epub
Качество: Издательский макет или текст (eBook)
Интерактивное оглавление: Да
Количество страниц: 625
Описание:
Revision 13 - 2021-02-01
Updated to Vue 3!

Ready to Master Vue.js?
What if you could master the entire framework - with solid foundations - in less time without beating your head against a wall? Imagine how quickly you could work if you knew the best practices and the best tools?
Stop wasting your time searching and have everything you need to be productive in one, well-organized place, with complete examples to get your project up without needing to resort to endless hours of research.
Lots of Sample Apps and Code
You will learn what you need to know to work professionally with Fullstack Vue: The Complete Guide to Vue.js
You'll build:
A Server-Persisted Shopping Cart: Use the Flux-like library Vuex to manage data for a large shopping cart application that persists information on to a local server.
A Calendar Event App: Dive deeper into component based architecture by learning how simple state management works with Vue Single-file components.
A Voting Application: Learn how to render dynamic components and use standard Vue directives to build an interactive voting application.
Forms with Validations: Build powerful forms that accept user input, and give clear messaging when the input is of an invalid format.
Vuex-based Routes and Authentication: Build on top of the server persisted shopping cart app by creating dynamic routes and a token authentication flow with the official vue-router library.
Build bullet-proof apps with Testing: Use Vue's official test utility library, vue-test-utils, to create meaningful tests for a daily weather app that interacts with a third party API.

Примеры страниц

Оглавление

Foreword . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
How to Get the Most Out of This Book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Vue 3.x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Running Code Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Code Blocks and Context . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Instruction for Windows users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Live online community . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Getting Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Emailing Us . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Get excited! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Your first Vue.js Web Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Building UpVote! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Development environment setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
JavaScript ES6/ES7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Getting started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Setting up the view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Making the view data-driven . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
List rendering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Sorting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Event handling (our app’s first interaction) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
v-bind and v-on shorthand syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Congratulations! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Single-file components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Setting up our development environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Getting started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Single-File Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Breaking the app into components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Managing data between components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Simple State Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Steps to building Vue apps from scratch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Step 1: A static version of the app . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Step 2: Breaking the app into components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Step 3: Hardcode Initial States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Step 4: Create state mutations (and corresponding component actions) . . . . . . . . . . . . 76
The Calendar App . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Methodology review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Custom Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
JavaScript Custom Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Vue Custom Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Event Bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
Custom events and managing data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
Introduction to Vuex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
Recap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
What is Flux? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
Flux implementations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Vuex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Refactoring the note-taking app . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
Vuex Store . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
Building the components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
Vuex and Servers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
Preparation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
The Server API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
Playing with the API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
Client and server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Preparing the application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
The Vuex Store . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
productModule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
cartModule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
Interactivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
Vuex and medium to large scale applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
Recap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
Form Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
Forms 101 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
Preparation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
The Basic Button . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
Text Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
Multiple Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
Validations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
Async Persistence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
Vuex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
Form Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
Routing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
What is routing? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
URL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
Single-page applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
Basic Vue Router . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
Dynamic Route Matching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
The Server API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
Starting point of the app . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
Integrating vue-router . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
Supporting authenticated routes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Implementing login . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
Vue Watchers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
Navigation Guards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
Recap and further reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352
Unit Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
End-to-end vs. Unit Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
Testing tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
Testing a basic Vue component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
Testing App . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
vue-test-utils . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
More assertions for App.vue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
Writing tests for a weather app . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
Store . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
Further reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
Composition API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
Why do need the Composition API? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
What is the Composition API? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
Building a simple listings app . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
app/ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
Updating . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
Updating . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
Updating . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474
Notifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
Dark Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489
The Store . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 499
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 508
TypeScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 509
What is TypeScript? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510
Vue & TypeScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512
Annotating Props . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557
Vue Apollo & GraphQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 558
GraphQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 558
Consuming GraphQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 560
The GraphQL API we’ll be working with . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562
Vue Apollo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 571
Fullstack Vue Screencast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608
Building SimpleCoinCap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608
Agenda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 610
Updates with the new API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 611
Changelog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 617

Скачать WYSIWYG

Post 05-Apr-2021 22:10

[Quote]

Phoenix in Action / Phoenix в действии
Год издания: 2019
Автор: Lessel Geoffrey / Лессел Джеффри
Издательство: Manning
ISBN: 9781617295041
Язык: Английский
Формат: PDF/epub
Качество: Издательский макет или текст (eBook)
Интерактивное оглавление: Да
Количество страниц: 337
Описание: Covers Phoenix 1.4
Phoenix is a modern web framework built for the Elixir programming language. Elegant, fault-tolerant, and performant, Phoenix is as easy to use as Rails and as rock-solid as Elixir's Erlang-based foundation. Phoenix in Action builds on your existing web dev skills, teaching you the unique benefits of Phoenix along with just enough Elixir to get the job done.
about the technology
Modern web applications need to be efficient to develop, lightning fast, and unfailingly reliable. Phoenix, a web framework for the Elixir programming language, delivers on all counts. Elegant and intuitive, Phoenix radically simplifies the dev process. Built for concurrency, Phoenix channels make short work of developing real-time applications. And as for reliability, Phoenix apps run on the battle-tested Erlang VM, so they’re rock solid!
what's inside
Functional programming in a web environment
An introduction to Elixir
Database interactions with Ecto
Real-time communication with channels
about the reader
For web developers familiar with a framework like Rails or ASP.NET. No experience with Elixir or Phoenix required.
about the book
Phoenix in Action is an example-based book that teaches you to build production-quality web apps. You’ll handle business logic, database interactions, and app designs as you progressively create an online auction site. As you go, you’ll build everything from the core components to the real-time user interactions where Phoenix really shines.

Примеры страниц

Оглавление

Copyright
Brief Table of Contents
Table of Contents
Foreword
Preface
Acknowledgments
About this book
About the author
About the cover illustration
Part 1. Getting started
Chapter 1. Ride the Phoenix
1.1. What is Phoenix?
1.2. Elixir and Phoenix vs. the alternatives
1.3. The power of Elixir
1.4. Functional vs. object-oriented programming
1.5. Keep reading
Summary
Chapter 2. Intro to Elixir
2.1. The basics
2.2. Other idiomatic Elixir language features
Summary
Chapter 3. A little Phoenix overview
3.1. Follow the data
3.2. Putting it all together
Summary
Part 2. Diving in deep
Chapter 4. Phoenix is not your application
4.1. I thought this book was about Phoenix
4.2. The first steps in building your application
4.3. Next steps
Summary
Chapter 5. Elixir application structure
5.1. Moving from a single file to an application
5.2. Organizing, compiling, and running your new application
5.3. Using Hex to get external dependencies
Summary
Chapter 6. Bring in Phoenix
6.1. Installing Phoenix on your system
6.2. Creating a new Phoenix application
6.3. Listing items from the fake repo
Summary
Chapter 7. Being persistent with a database
7.1. A quick intro to Ecto
7.2. Configuring Ecto
7.3. Preparing Auction to use the database
7.4. Creating, retrieving, and deleting data in the database
Summary
Chapter 8. Making changes with Ecto.Changeset
8.1. Can’t I just ... update?
8.2. Now you can update!
Summary
Chapter 9. Transforming data in your browser
9.1. Handling new routes in your application
9.2. Viewing the details of a single item
9.3. Creating items through web forms
9.4. Editing items through web forms
Summary
Chapter 10. Plugs, assigns, and dealing with session data
10.1. Preparing your application for user registration
10.2. Handling user login and sessions
10.3. Plugs
10.4. Adding site navigation
10.5. Restricting users from certain pages
Summary
Chapter 11. Associating records and accepting bids
11.1. Creating bids
11.2. Adding associations to the Auction.Bid schema
11.3. Using has_many with items and users
11.4. Listing a user’s bids on their profile page
11.5. Some ideas for further improvement
Summary
Part 3. Those important extras
Chapter 12. Using Phoenix channels for real-time communication
12.1. What are Phoenix channels?
12.2. Connecting a user to a channel and a topic
12.3. Sending real-time messages to a user
12.4. Updating all users when a new bid is made
Summary
Chapter 13. Building an API
13.1. Scoping API requests to a new controller
13.2. Creating the AuctionWeb.Api.ItemController controller and view
13.3. Including related bid and user data
Summary
Chapter 14. Testing in Elixir and Phoenix
14.1. An introduction to ExUnit
14.2. Setting up tests for Ecto
14.3. Testing Ecto queries in Auction
14.4. Simultaneously writing documentation and tests with doctests
14.5. Writing tests For Phoenix
14.6. What next?
Summary
Appendix A. Installing Elixir and Phoenix
A.1. Installing Elixir
A.2. Installing Phoenix
Appendix B. More Elixir resources
On the web
Books
Community
The general flow of a request as it moves through Phoenix
Index
Code: https://www.manning.com/downloads/1991

Скачать WYSIWYG

Post 03-Apr-2021 01:50

[Quote]

PHP 8 Objects, Patterns, and Practice: Mastering OO Enhancements, Design Patterns, and Essential Development Tools. Sixth Edition
Год издания: 2021
Автор: Matt Zandstra
Издательство: Apress
ISBN: 978-1-4842-6790-5
Язык: Английский
Формат: PDF/EPUB
Качество: Издательский макет или текст (eBook)
Интерактивное оглавление: Да
Количество страниц: 842/585
Описание:
Learn how to develop elegant and rock-solid systems using PHP, aided by three key elements: object fundamentals, design principles, and best practices. The 6th edition of this popular book has been fully updated for PHP 8, including attributes, constructor property promotion, new argument and return pseudo-types, and more. It also covers many features new since the last edition including typed properties, the null coalescing operator, and void return types. This book provides a solid grounding in PHP's support for objects, it builds on this foundation to instill core principles of software design and then covers the tools and practices needed to develop, test, and deploy robust code.
PHP 8 Objects, Patterns, and Practice begins by covering PHP's object-oriented features. It introduces key topics including class declarations, inheritance, and reflection. The next section is devoted to design patterns. It explains the principles that make patterns powerful. You’ll cover many of the classic design patterns including enterprise and database patterns. The last segment of the book covers the tools and practices that can help turn great code into a successful project. The section shows how to manage multiple developers and releases with git, and how to manage builds and dependencies with Composer. It also explores strategies for automated testing and continuous integration.
After reading and using this book, you will have mastered object-oriented enhancements, design patterns, and the essential development tools available for PHP 8.
What You Will Learn:
• Work with object fundamentals: write classes and methods, instantiate objects, and create powerful class hierarchies using inheritance
• Master advanced object-oriented features, including static methods and properties, managing error conditions with exceptions, and creating abstract classes and interfaces
• Understand and use design principles to deploy objects and classes effectively in your projects
• Discover a set of powerful patterns that you can implement in your own projects
• Guarantee a successful project including unit testing; version control and build, installation, and package management; and continuous integration
Code Examples - https://github.com/Apress/php-8-objects-patterns-practice

Примеры страниц

Скачать WYSIWYG

Post 09-Mar-2021 17:15

[Quote]

Fullstack React with TypeScript (Revision r10)
Год издания: 2021
Автор: Ivanov Maksim, Bespoyasov Alex
Издательство: /newline
Язык: Английский
Формат: PDF/epub
Качество: Издательский макет или текст (eBook)
Интерактивное оглавление: Да
Количество страниц: 571
Описание: Revision r10 – 2021-03-03
Welcome to Fullstack React with TypeScript! React and TypeScript are a powerful combination that can prevent bugs and help you (and your team) ship products faster. But understanding idiomatic React patterns and getting the typings setup isn’t always straightforward.
This practical, hands-on book is a guide that will have you (and your team) writing React apps with TypeScript (and hooks) in no time.
This book consists of several sections. Each section covers one practical case of using Typescript with React.
Your First React and Typescript Application: Building Trello with Drag and Drop: There you will learn how to bootstrap a React Typescript application and all the basics of using React with Typescript. We will build a kanban board application like Trello that will store it’s state on backend.
Testing React With TypeScript: Testing a Digital-Goods Store:. In this section you will set up your testing environment and learn how to test your application. We will take an online store application and cover it with tests.
Patterns in React Typescript Applications: Making Music with React: Making Music with React. Here we cover Higher Order Components (HOCs) and render props React patterns. We show when are they useful and how to use them with Typescript. In this section we will build a virtual piano that supports different sound sets.
Next.js and Static Site Generation: Building a Medium-like Blog Building Medium with SSG. React can be rendered server-side. It allows to create multi-page interactive websites. In this section we cover the basics of server-side generation with React and then we build an advanced application using NextJS framework. The example application will be blogging platform (like Medium).
State Management With Redux and Typescript. (coming soon – Summer 2020) Some React applications are so complex that they require using some external state management library. Redux is a solid choice in this case. It is worth learning how to use it with Typescript. In this section we will build a drawing application with undo/redo support. It will also let you save your drawings on backend.
VI GraphQL With React And Typescript. (coming soon – Summer 2020) GraphQL is a query language that allows to create flexible APIs. Facebook, Github, Twitter and a lot of other companies provide GraphQL APIs. Typescript works pretty well with GraphQL. In this section we will build a Github issue viewer.

Примеры страниц

Оглавление

Contents
Book Revision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Join Our Discord Channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Bug Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Be notified of updates via Twitter . . . . . . . . . . . . . . . . . . . . . . . . . 1
We’d love to hear from you! . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
How To Get The Most Out Of This Book . . . . . . . . . . . . . . . . . . . . 2
What is TypeScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Why Use TypeScript With React . . . . . . . . . . . . . . . . . . . . . . . . . 9
A Necessary Word Of Caution . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Your First React and TypeScript Application: Building Trello with Drag
and Drop
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Prerequisites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
What Are We Building? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Preview The Final Result . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
How to Bootstrap React + TypeScript App Automatically . . . . . . . . . . 17
App Layout. React + TypeScript Basics . . . . . . . . . . . . . . . . . . . . . . 31
Create The Card Component . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Render Children Inside The Columns . . . . . . . . . . . . . . . . . . . . . . 50
Render Everything Together . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Component For Adding New Items. State, Hooks, and Events . . . . . . . . 53
Add Global State And Business Logic . . . . . . . . . . . . . . . . . . . . . . 66
Using useReducer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Implement State Management . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Adding Items. TypeScript Interfaces Vs Types . . . . . . . . . . . . . . . . . 79
Moving Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
Implement Custom Dragging Preview . . . . . . . . . . . . . . . . . . . . . . 105
Move The Dragged Item Preview . . . . . . . . . . . . . . . . . . . . . . . . . 112
Hide The Default Drag Preview . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Drag Cards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Update CustomDragLayer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
Update The Reducer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
Drag a Card To an Empty Column . . . . . . . . . . . . . . . . . . . . . . . . 125
Saving State On Backend. How To Make Network Requests . . . . . . . . . 127
Loading The Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
How to Test Your Applications: Testing a Digital Goods Store . . . . . . . . 147
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
Initial Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
Writing Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Home Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
Testing React Hooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
Congratulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
Patterns in React TypeScript Applications: Making Music with React . . . 227
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
What We’re Going to Build . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
What We’re Going to Use . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
First Steps and Basic Application Layout . . . . . . . . . . . . . . . . . . . . 229
A Bit of a Music Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
Third Party API and Browser API . . . . . . . . . . . . . . . . . . . . . . . . . 247
Patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
Creating a Keyboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
Playing a Sound . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
Mapping Real Keys to Virtual . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
Instruments List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
Render Props . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
Higher Order Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310
Using Redux and TypeScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
What Are We Building? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
Preview The Final Result . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312
What is Redux? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
Why Can’t We Use useReducer Instead of Redux? . . . . . . . . . . . . . . . 319
Initial Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
Prepare The Styles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
Working With Canvas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
Handling Canvas Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
Define The Store Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Add Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
Add The Reducer Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
Define The First Selector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
Use The Selector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
Dispatch Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
Draw The Current Stroke . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
Implement Selecting Colors . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
Implement Undo and Redo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
Splitting Root Reducer And Using combineReducers . . . . . . . . . . . . . 348
Exporting An Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
Using Redux Toolkit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
Configuring The Store . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
Using createAction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
Using createReducer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
Using Slices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
Remake The Imports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
Save And Load Data Using Thunks . . . . . . . . . . . . . . . . . . . . . . . . 376
Add Modal Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
Add The Modal Manager Component . . . . . . . . . . . . . . . . . . . . . . 379
Save The Project Using Thunks . . . . . . . . . . . . . . . . . . . . . . . . . . 383
Load The Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
Define The ProjectsList Module . . . . . . . . . . . . . . . . . . . . . . . . . . 388
Static Site Generation and Server-Side Rendering Using Next.js . . . . . . . 395
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
What We’re Going to Build . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
Pre-Rendering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
Next.js . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
Setting Up a Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
Creating A First Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
Basic Application Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
Center Component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
Footer Component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
Custom App Component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
Application Theme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
Custom Document Component . . . . . . . . . . . . . . . . . . . . . . . . . . 410
Site Front Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
Page 404 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
Post Page Template . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
Backend API Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
Frontend API Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426
Updating The Main Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427
Pre-Render Post Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432
Category Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437
Adding Breadcrumbs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442
Comments and Server-Side Rendering . . . . . . . . . . . . . . . . . . . . . . 443
Add Comments to Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446
API for Adding Comments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449
Adding Comments on Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
Converting Statically Generated Page to Rendered on Server . . . . . . . . 453
Connecting Redux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
Building Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
GraphQL, React, and TypeScript . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
Is GraphQL Better Than REST? . . . . . . . . . . . . . . . . . . . . . . . . . . 467
What Are We Building? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
Preview The Final Result . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
Setting Up The Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474
Running Typescript in The Console . . . . . . . . . . . . . . . . . . . . . . . . 474
Authenticating in GitHub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475
Initializing The Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
Authentication Context . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
Authenticating The ApolloClient . . . . . . . . . . . . . . . . . . . . . . . . . 487
GraphQL Queries - Getting The User Data . . . . . . . . . . . . . . . . . . . 488
Add The Panel Component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492
Define The WelcomeWindow Layout . . . . . . . . . . . . . . . . . . . . . . . 493
Getting GitHub GraphQL Schema . . . . . . . . . . . . . . . . . . . . . . . . 495
Generating The Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496
Adding Navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497
Working With GitHub Repositories . . . . . . . . . . . . . . . . . . . . . . . . 500
Define The List Component . . . . . . . . . . . . . . . . . . . . . . . . . . . . 504
Getting The Repositories List . . . . . . . . . . . . . . . . . . . . . . . . . . . . 505
Define Form Helper Components . . . . . . . . . . . . . . . . . . . . . . . . . 511
GraphQL Mutations - Creating The Repositories . . . . . . . . . . . . . . . . 515
Getting The Repository ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 523
Working With GitHub Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . 524
Getting The List Of Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528
Creating An Issue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532
Working With Github Pull Requests . . . . . . . . . . . . . . . . . . . . . . . 540
Getting The Pull Requests List . . . . . . . . . . . . . . . . . . . . . . . . . . . 543
Creating A New Pull Request . . . . . . . . . . . . . . . . . . . . . . . . . . . 547
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 559
Appendix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561
Changelog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562
Revision r10 (03-03-2021) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562
Revision r9 (26-02-2021) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562
Revision r8 (17-02-2021) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562
Revision r7 (01-12-2020) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562
Revision r6 (01-12-2020) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562
Revision r5 (10-11-2020) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563
Revision r4 (26-08-2020) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563
Revision 3p (07-30-2020) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563
Revision 2p (06-08-2020) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563
Revision 1p (05-20-2020) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563

Скачать WYSIWYG

Post 27-Feb-2021 17:15

[Quote]

ASP.NET Core 5 and Angular (4th edition) / ASP.NET Core 5 и Angular (4-е издание)
Год издания: 2021
Автор: De Sanctis Valerio / Де Санктис Валерио
Издательство: Packt
ISBN: 9781800560338
Язык: Английский
Формат: PDF/epub
Качество: Издательский макет или текст (eBook)
Интерактивное оглавление: Да
Количество страниц: 747
Описание: Learning full-stack development calls for knowledge of both front-end and back-end web development. ASP.NET Core 5 and Angular, Fourth Edition will get you started with Angular to build robust web applications as well as the ASP.NET Core 5 and Web API Controllers to implement API calls and server-side routing in the back-end. This fully revised edition includes a side-by-side comparison of the Visual Studio Angular app versus NG App and coverage of the Angular routing module.
You will learn how to build a data model with Entity Framework Core, alongside utilizing the Entity Core Fluent API and EntityTypeConfiguration class. As you progress, you will learn how to handle user input with Angular reactive forms and front-end and back-end validators for maximum effect. You will later explore the advanced debugging and unit testing features provided by xUnit.net (.NET 5) and Jasmine, as well as Karma for Angular.
Further, you will dive deep into progressive web applications (PWAs), learning about their technical requirements, testing, and converting SWAs to PWAs. Finally, you will learn how to deploy apps on Windows, Linux, and Azure using IIS, Kestrel, and nginx.
By the end of this book, you will be equipped with the skills you need to create, debug, and deploy efficient web applications using ASP.NET Core and Angular.
What you will learn
Implement a Web API interface with ASP.NET Core and consume it with Angular using RxJS Observables
Set up an SQL database server using a local instance or a cloud data store
Perform C# and TypeScript debugging using Visual Studio 2019
Create TDD and BDD unit tests using xUnit, Jasmine, and Karma
Explore EF Core Fluent API and EntityTypeConfiguration classes
Perform DBMS structured logging using third-party providers such as SeriLog
Deploy the Web Application to Windows and Linux web servers, or to cloud-based PaaS solutions
Who This Book Is For
This book is for experienced ASP.NET developers who already possess some experience with ASP.NET Core and Angular and are looking to learn how to use them together to create production-ready Single Page Applications (SPAs) or Progressive Web Applications (PWAs).

Примеры страниц

Оглавление

Getting Ready
Looking Around
Front-End and Back-End Interactions
Data Model with Entity Framework Core
Fetching and Displaying Data
Forms and Data Validation
Code Tweaks and Data Services
Back-End and Front-End Debugging
ASP.NET Core and Angular Unit Testing
Authentication and Authorization
Progressive Web Apps
Windows, Linux, and Azure Deployment

Скачать WYSIWYG

Post 13-Feb-2021 17:00

[Quote]

ASP.NET Core 5 and React, 2nd edition / ASP.NET Core 5 и React, 2-е издание
Год издания: 2021
Автор: Rippon Carl / Риппон Карл
Издательство: Packt
ISBN: 9781800206168
Язык: Английский
Формат: PDF/epub
Качество: Издательский макет или текст (eBook)
Интерактивное оглавление: Да
Количество страниц: 568
Описание: Microsoft’s .NET framework is a robust server-side framework, now even more powerful thanks to the recent unification of the Microsoft ecosystem with the .NET 5 framework. This updated second edition addresses these changes in the .NET framework and the latest release of React.
The book starts by taking you through React and TypeScript components for building an intuitive single-page application and then shows you how to design scalable REST APIs that can integrate with a React-based frontend. Next, you’ll get to grips with the latest features, popular patterns, and tools available in the React ecosystem, including function-based components, React Router, and Redux. As you progress through the chapters, you’ll learn how to use React with TypeScript to make the frontend robust and maintainable and cover key ASP.NET 5 features such as API controllers, attribute routing, and model binding to build a sturdy backend. In addition to this, you’ll explore API security with ASP.NET 5 identity and authorization policies and write reliable unit tests using both .NET and React, before deploying your app on Azure.
By the end of this book, you’ll have gained the knowledge you need to enhance your C# and JavaScript skills and build full-stack, production-ready applications with ASP.NET 5 and React.
What you will learn
Build RESTful APIs with .NET 5 using API controllers
Secure REST APIs with identity and authorization policies
Create strongly typed, interactive, and function-based React components using Hooks
Understand how to style React components using Emotion.js
Perform client-side state management with Redux
Run a range of automated tests on the frontend and backend
Implement continuous integration and continuous delivery (CI/CD) processes in Azure using Azure DevOps
Who This Book Is For
If you’re a web developer looking to get up to speed with full-stack web application development with .NET Core and React, this book is for you. Although the book does not assume any knowledge of React, a basic understanding of .NET Core will help you to get to grips with the concepts covered.

Примеры страниц

Оглавление

Section 1: Getting Started
Chapter 1: Understanding the ASP.NET 5 React Template
Chapter 2: Creating Decoupled React and ASP.NET 5 Apps
Section 2: Building a Frontend with React and TypeScript
Chapter 3: Getting Started with React and TypeScript
Chapter 4: Styling React Components with Emotion
Chapter 5: Routing with React Router
Chapter 6: Working with Forms
Chapter 7: Managing State with Redux
Section 3: Building an ASP.NET Backend
Chapter 8: Interacting with the Database with Dapper
Chapter 9: Creating REST API Endpoints
Chapter 10: Improving Performance and Scalability
Chapter 11: Securing the Backend
Chapter 12: Interacting with RESTful APIs
Section 4: Moving into Production
Chapter 13: Adding Automated Tests
Chapter 14: Configuring and Deploying to Azure
Chapter 15: Implementing CI and CD with Azure DevOps
Code: https://github.com/PacktPublishing/ASP.NET-Core-5-and-React-Second-Edition/archive/master.zip

Скачать WYSIWYG

Post 11-Feb-2021 21:45

[Quote]

JavaScript: The Definitive Guide, 7th edition / JavaScript. Полное руководство, 7-е издание
Год издания: 2021
Автор: Flanagan D. / Флэнаган Д.
Издательство: Диалектика
Язык: Русский
Формат: PDF
Качество: Отсканированные страницы + слой распознанного текста
Интерактивное оглавление: Да
Количество страниц: 732
Описание: Справочник по самому популярному языку программирования!
JavaScript — это язык программирования для веб-сети, который в настоящее время используется большим количеством разработчиков программного обеспечения, чем любой другой язык программирования. В течение почти 25 лет этот бестселлер служил исчерпывающим руководством для программистов на JavaScript, и новое издание книги полностью обновлено с целью охвата версии 2020 языка JavaScript. Повсюду в книге вы будете находить яркие и привлекательные примеры кода. Вам также предлагаются новые главы, в которых раскрываются классы, модули, итераторы, генераторы, объекты Promise и async/await.
Книга предназначена для программистов, желающих изучить язык JavaScript, и для разработчиков веб-приложений, которые стремятся повысить уровень своих знаний и мастерства.
Основные темы книги:
Типы, переменные, операции, операторы, объекты и массивы
Функции, классы, модули, итераторы, генераторы, объекты Promise и async/await
Стандартная библиотека JavaScript: структуры данных, регулярные выражения, JSON, интернационализация и работа с URL
Веб-платформа: документы, компоненты, графические возможности, взаимодействие с сетью, хранилище и потоки
Node.js: буферы, файлы, потоки данных, потоки управления, дочерние процессы, веб-клиенты и веб-серверы
Инструменты и расширения языка, на которые полагаются профессиональные разработчики на JavaScript

Примеры страниц

Оглавление

Глава 1. Введение в JavaScript
Глава 2. Лексическая структура
Глава 3. Типы, значения и переменные
Глава 4. Выражения и операции
Глава 5. Операторы
Глава 6. Объекты
Глава 7. Массивы
Глава 8. Функции
Глава 9. Классы
Глава 10. Модули
Глава 11. Стандартная библиотека JavaScript
Глава 12. Итераторы и генераторы
Глава 13. Асинхронный JavaScript
Глава 14. Метапрограммирование
Глава 15. JavaScript в веб-браузерах
Глава 16. JavaScript на стороне сервера с использованием Node
Глава 17. Инструменты и расширения JavaScript
Исходный код: http://archive.williamspublishing.com/archive/978-5-907203-79-2/jstdg7-master.zip

Скачать WYSIWYG

Post 07-Feb-2021 00:05

[Quote]

PHP 8 Revealed: Use Attributes, the JIT Compiler, Union Types, and More for Web Development
Год издания: 2021
Автор: Gunnard Engebreth
Издательство: Apress
ISBN: 978-1-4842-6818-6
Язык: Английский
Формат: PDF/EPUB
Качество: Издательский макет или текст (eBook)
Интерактивное оглавление: Да
Количество страниц: 139/80
Описание:
Discover the new and updated features of PHP 8, such as the JIT compiler, union types, and attributes, with code examples of each. For each feature, the author includes real-life cases for its use and explains its benefits.
What You Will Learn
• Utilize the new features of PHP 8 and modern development technologies
• Work with the JIT compiler in PHP 8
• Discover PHP 8 using real-life cases
• Increase your available resources to become more valuable in your development team

Примеры страниц

 

The time now is: Today 07:49

All times are GMT + 4 Hours