Practical web development with Haskell : master the essential skills to build fast and scalable web applications /: master the essential skills to build fast and scalable web applications. ([2018])
- Record Type:
- Book
- Title:
- Practical web development with Haskell : master the essential skills to build fast and scalable web applications /: master the essential skills to build fast and scalable web applications. ([2018])
- Main Title:
- Practical web development with Haskell : master the essential skills to build fast and scalable web applications
- Further Information:
- Note: Ecky Putrady.
- Authors:
- Putrady, Ecky
- 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. 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;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. 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. 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. 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. … (more)
- Publisher Details:
- Berkeley, CA : Apress L.P
- Publication Date:
- 2018
- Extent:
- 1 online resource (291 pages)
- Subjects:
- 006.76
006.7/8
Web applications -- Development
Haskell (Computer program language)
COMPUTERS -- General
Web Development
Haskell (Computer program language)
Electronic books - Languages:
- English
- ISBNs:
- 9781484237397
1484237390 - Related ISBNs:
- 9781484237380
1484237382 - Notes:
- Note: Description based on online resource; title from digital title page (viewed on January 30, 2019).
- Access Rights:
- Legal Deposit; Only available on premises controlled by the deposit library and to one user at any one time; The Legal Deposit Libraries (Non-Print Works) Regulations (UK).
- Access Usage:
- Restricted: Printing from this resource is governed by The Legal Deposit Libraries (Non-Print Works) Regulations (UK) and UK copyright law currently in force.
- View Content:
- Available online (eLD content is only available in our Reading Rooms) ↗
- Physical Locations:
- British Library HMNTS - ELD.DS.371396
- Ingest File:
- 02_351.xml