master the essential skills to build fast and scalable web applications /
First Statement of Responsibility
Ecky Putrady.
.PUBLICATION, DISTRIBUTION, ETC
Place of Publication, Distribution, etc.
[Berkeley, CA] :
Name of Publisher, Distributor, etc.
Apress L.P.,
Date of Publication, Distribution, etc.
[2018]
PHYSICAL DESCRIPTION
Specific Material Designation and Extent of Item
1 online resource (291 pages)
GENERAL NOTES
Text of Note
Testing Adapter. RabbitMQ. Auth.
CONTENTS NOTE
Text of Note
Intro; Table of Contents; About the Author; About the Technical Reviewers; Acknowledgments; Introduction; Chapter 1: Getting Started; Stack; Haskell IDE; Default Project Structure; The Build Configuration; Summary; Chapter 2: Practical Haskell; ClassyPrelude; String, Text, and ByteString; Data Structures and Operations; Date and Time; Regular Expression; JSON; Exception Handling; Summary; Chapter 3: Domain Modeling; Port and Adapter Architecture; Auth Data Structure; Types Definition; Validation Implementation; mkEmail and mkPassword Implementation; Registration; Types Definition.
Handling ExceptionsBuilding Responses; Middleware; Cookies; Input Validation; Implementing RESTful API; Overview; Adapter.HTTP.Common Implementation; Adapter.HTTP.API.Auth Implementation; Adapter.HTTP.Main Implementation; Modification in Lib Module; Running the Application; Summary; Chapter 8: Web Programming; Serving Multiple WAI Applications; Implementing Web Module; Summary; Chapter 9: HTTP Client; http-client package; Manager; Request; Executing a Request; Response; Exceptions; RESTful API Client for Our Project; JSON Payload; Adapter.HTTP.API.Types.AesonHelper Implementation.
Text of Note
ImplementationEmail Verification; Types Definition; Implementation; Login and Resolving Session; Types Definition; Implementation; User Page; Exposing Safe Functions; In-Memory Database; Software Transactional Memory; Repositories Implementation; SessionRepo Implementation; EmailVerificationNotif Implementation; AuthRepo Implementation; Verification in REPL; Tying Everything Together; Summary; Chapter 4: Logging; When putStrLn Is Not Enough; Katip; Log Structure; Scribe; KatipContext; LogEnv; Working with Katip; Integrating Log in Our Project; Summary; Chapter 5: Databases; PostgreSQL.
Text of Note
ORM vs. Non-ORMpostgresql-simple; Connection Management; Connection Pool; Database Migration; Queries; Transaction; Implementation; Redis; hedis; Implementation; Summary; Chapter 6: Queues; amqp Package Overview; Connection and Channel; Declaring Exchange, Queue, and Binding; Publishing Messages; Consuming Messages; Implementation; Acquiring Connection; Creating Network Topology and Initializing Push-Based Consumers; Publishing and Consuming; Repository Implementation; Tying Them All Up; Summary; Chapter 7: RESTful APIs; Scotty Basics; Hello, Scotty; Routing; Request Parameters.
0
8
8
8
8
SUMMARY OR ABSTRACT
Text of Note
Learn how to advance your skill level of Haskell, and use this language for practical web development. This book uses a direct, no nonsense approach, so you no longer need to spend extra time reading the documentation, blog posts, and forums to understand how to use Haskell - all that knowledge is provided in one coherent resource. You'll start by reviewing how multiple facets of web development are done in Haskell, such as routing, building HTMLs, interacting with databases, caches, and queues, etc. You'll then move on to using notable libraries, such as "scotty" for routings, "digestive-functor" for input validation, and "postgresql-simple" for interacting with databases. In the later chapters, you'll learn how all of these libraries can be used together by working on a fully functioning project deployed on Heroku.
ACQUISITION INFORMATION NOTE
Source for Acquisition/Subscription Address
Springer Nature
Stock Number
com.springer.onix.9781484237397
OTHER EDITION IN ANOTHER MEDIUM
Title
Practical Web Development with Haskell : Master the Essential Skills to Build Fast and Scalable Web Applications.