Document Type
|
:
|
BL
|
Record Number
|
:
|
851104
|
Main Entry
|
:
|
Putrady, Ecky
|
Title & Author
|
:
|
Practical web development with Haskell : : master the essential skills to build fast and scalable web applications /\ Ecky Putrady.
|
Publication Statement
|
:
|
[Berkeley, CA] :: Apress L.P.,, [2018]
|
Page. NO
|
:
|
1 online resource (291 pages)
|
ISBN
|
:
|
1484237390
|
|
:
|
: 9781484237397
|
|
:
|
1484237382
|
|
:
|
9781484237380
|
Notes
|
:
|
Testing Adapter. RabbitMQ. Auth.
|
Contents
|
:
|
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.
|
|
:
|
Adapter. HTTP. API. Types. Auth ImplementationAPI Server Refactoring; Module Refactoring; HTTP Client Implementation; Adapter. HTTP. API. Client.Common Module; Adapter. HTTP. API. Client. Auth Module; Verifying Implementation with REPL; Summary; Chapter 10: Configuration; System. Environment Module; Making Our Application Configurable; Summary; Chapter 11: Testing; Making Our Application More Testable; Test Implementation; Test Framework Setup; Testing Domain. Validation; Testing Domain. Auth. Types; Testing Domain. Auth. Service; Testing Adapter. PostgreSQL. Auth; Testing Adapter. Redis. Auth.
|
|
:
|
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.
|
|
:
|
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.
|
|
:
|
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.
|
Abstract
|
:
|
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.
|
Subject
|
:
|
Haskell (Computer program language)
|
Subject
|
:
|
Web applications-- Development.
|
Subject
|
:
|
COMPUTERS-- General.
|
Subject
|
:
|
Haskell (Computer program language)
|
Dewey Classification
|
:
|
006.7/8
|
|
:
|
006.76
|
LC Classification
|
:
|
QA76.76.A65P88 2018
|
|
:
|
TK5105.875.I6
|