reklama - zainteresowany?

Developing Web Apps with Haskell and Yesod. Safety-Driven Web Development. 2nd Edition - Helion

Developing Web Apps with Haskell and Yesod. Safety-Driven Web Development. 2nd Edition
ebook
Autor: Michael Snoyman
ISBN: 978-14-919-1555-4
stron: 396, Format: ebook
Data wydania: 2015-02-17
Księgarnia: Helion

Cena książki: 109,65 zł (poprzednio: 127,50 zł)
Oszczędzasz: 14% (-17,85 zł)

Dodaj do koszyka Developing Web Apps with Haskell and Yesod. Safety-Driven Web Development. 2nd Edition

Tagi: Inne | Technologie webowe

This fast-moving guide introduces web application development with Haskell and Yesod, a potent language/framework combination that supports high-performing applications that are modular, type-safe, and concise. Fully updated for Yesod 1.4, this second edition shows you how Yesod handles widgets, forms, persistence, and RESTful content. Author Michael Snoyman also introduces various Haskell tools to supplement your basic knowledge of the language.

By the time you finish this book, you’ll create a production-quality web application with Yesod’s ready-to-use scaffolding. You’ll also examine several real-world examples, including a blog, a wiki, a JSON web service, and a Sphinx search server.

  • Build a simple application to learn Yesod’s foundation datatype and Web Application Interface (WAI)
  • Output HTML, CSS, and Javascript with Shakespearean template languages
  • Get an indepth look at Yesod’s core monads for producing cleaner, more modular code
  • Probe Yesod’s internal workings: learn the request handling process for a typical application
  • Build forms on top of widgets by implementing the yesod-form declarative API
  • Learn how Yesod and Haskell handle persistence and session data
  • Serve an HTML page and a machine-friendly JSON page from the same URL

Dodaj do koszyka Developing Web Apps with Haskell and Yesod. Safety-Driven Web Development. 2nd Edition

 

Osoby które kupowały "Developing Web Apps with Haskell and Yesod. Safety-Driven Web Development. 2nd Edition", wybierały także:

  • Windows Media Center. Domowe centrum rozrywki
  • Przywództwo w Å›wiecie VUCA. Jak być skutecznym liderem w niepewnym Å›rodowisku
  • Mapa Agile & Scrum. Jak si
  • Lean dla bystrzaków. Wydanie II
  • Gra bez koÅ„ca

Dodaj do koszyka Developing Web Apps with Haskell and Yesod. Safety-Driven Web Development. 2nd Edition

Spis treści

Developing Web Apps with Haskell and Yesod. Safety-Driven Web Development. 2nd Edition eBook -- spis treści

  • Preface
    • Who This Book Is For
    • Conventions Used in This Book
    • Using Code Examples
    • Safari Books Online
    • How to Contact Us
    • Acknowledgments
  • I. Basics
  • 1. Introduction
    • Type Safety
    • Concise Code
    • Performance
    • Modularity
    • A Solid Foundation
  • 2. Haskell
    • Terminology
    • Tools
    • Language Pragmas
    • Overloaded Strings
    • Type Families
    • Template Haskell
    • QuasiQuotes
    • API Documentation
    • Summary
  • 3. Basics
    • Hello, World
    • Routing
    • Handler Function
    • The Foundation
    • Running
    • Resources and Type-Safe URLs
    • Non-HTML Responses
    • The Scaffolded Site
    • Development Server
    • Summary
  • 4. Shakespearean Templates
    • Synopsis
      • Hamlet (HTML)
      • Lucius (CSS)
      • Cassius (CSS)
      • Julius (JavaScript)
    • Types
      • Type-Safe URLs
    • Syntax
      • Hamlet Syntax
        • Tags
        • Interpolation
        • Attributes
        • Conditionals
        • maybe
        • forall
        • case
        • with
        • doctype
      • Lucius Syntax
      • Cassius Syntax
      • Julius Syntax
    • Calling Shakespeare
      • Alternative Hamlet Types
    • Other Shakespeare
    • General Recommendations
  • 5. Widgets
    • Synopsis
    • Whats in a Widget?
    • Constructing Widgets
    • Combining Widgets
    • Generating IDs
    • whamlet
      • Types
    • Using Widgets
    • Using Handler Functions
    • Summary
  • 6. The Yesod Typeclass
    • Rendering and Parsing URLs
      • joinPath
      • cleanPath
    • defaultLayout
      • getMessage
    • Custom Error Pages
    • External CSS and JavaScript
    • Smarter Static Files
    • Authentication/Authorization
    • Some Simple Settings
    • Summary
  • 7. Routing and Handlers
    • Route Syntax
      • Pieces
        • Types of pieces
        • Overlap checking
      • Resource Name
      • Handler Specification
    • Dispatch
      • Return Type
        • Handler monad
        • Html
      • Arguments
    • The Handler Functions
      • Application Information
      • Request Information
      • Short-Circuiting
      • Response Headers
    • I/O and Debugging
    • Query String and Hash Fragments
    • Summary
  • 8. Forms
    • Synopsis
    • Kinds of Forms
    • Types
    • Converting
    • Creating AForms
      • Optional Fields
    • Validation
    • More Sophisticated Fields
    • Running Forms
    • i18n
    • Monadic Forms
    • Input Forms
    • Custom Fields
    • Values That Dont Come from the User
    • Summary
  • 9. Sessions
    • clientsession
    • Controlling Sessions
    • Session Operations
    • Messages
    • Ultimate Destination
    • Summary
  • 10. Persistent
    • Synopsis
    • Solving the Boundary Issue
      • Types
      • Code Generation
      • PersistStore
    • Migrations
    • Uniqueness
    • Queries
      • Fetching by ID
      • Fetching by Unique Constraint
      • Select Functions
        • SelectOpt
    • Manipulation
      • Insert
      • Update
      • Delete
    • Attributes
    • Relations
    • A Closer Look at Types
      • More Complicated, More Generic
    • Custom Fields
    • Persistent: Raw SQL
    • Integration with Yesod
    • More Complex SQL
    • Something Besides SQLite
    • Summary
  • 11. Deploying Your Web App
    • Keter
    • Compiling
    • Files to Deploy
    • SSL and Static Files
    • Warp
      • Nginx Configuration
      • Server Process
    • Nginx + FastCGI
    • Desktop
    • CGI on Apache
    • FastCGI on lighttpd
    • CGI on lighttpd
  • II. Advanced
  • 12. RESTful Content
    • Request Methods
    • Representations
      • JSON Conveniences
      • New Data Types
    • Other Request Headers
    • Summary
  • 13. Yesods Monads
    • Monad Transformers
    • The Three Transformers
    • Example: Database-Driven Navbar
    • Example: Request Information
    • Performance and Error Messages
    • Adding a New Monad Transformer
    • Summary
  • 14. Authentication and Authorization
    • Overview
    • Authenticate Me
    • Email
    • Authorization
    • Summary
  • 15. Scaffolding and the Site Template
    • How to Scaffold
    • File Structure
      • Cabal File
      • Routes and Entities
      • Foundation and Application Modules
      • Import
      • Handler Modules
    • widgetFile
    • defaultLayout
    • Static Files
    • Summary
  • 16. Internationalization
    • Synopsis
    • Overview
    • Message Files
      • Specifying Types
    • RenderMessage typeclass
    • Interpolation
    • Phrases, Not Words
  • 17. Creating a Subsite
    • Hello, World
  • 18. Understanding a Request
    • Handlers
      • Layers
      • Content
      • Short-Circuit Responses
    • Dispatch
      • toWaiApp, toWaiAppPlain, and warp
      • Generated Code
      • Complete Code
    • Summary
  • 19. SQL Joins
    • Multiauthor Blog
    • Database Queries in Widgets
    • Joins
    • Esqueleto
    • Streaming
    • Summary
  • 20. Yesod for Haskellers
    • Hello, Warp
    • What About Yesod?
    • The HandlerT Monad Transformer
      • (To)Content, (To)TypedContent
      • HasContentType and Representations
      • Convenience warp Function
    • Writing Handlers
      • Getting Request Parameters
      • Short-Circuiting
      • Streaming
    • Dynamic Parameters
    • Routing with Template Haskell
      • LiteApp
    • Shakespeare
      • The URL Rendering Function
    • Widgets
    • Details We Wont Cover
  • III. Examples
  • 21. Initializing Data in the Foundation Data Type
    • Step 1: Define Your Foundation
    • Step 2: Use the Foundation
    • Step 3: Create the Foundation Value
    • Summary
  • 22. Blog: i18n, Authentication, Authorization, and Database
  • 23. Wiki: Markdown, Chat Subsite, Event Source
    • Subsite: Data
    • Subsite: Handlers
    • Subsite: Widget
    • Master Site: Data
    • Master Site: Instances
    • Master Site: Wiki Handlers
    • Master Site: Running
    • Summary
  • 24. JSON Web Service
    • Server
    • Client
  • 25. Case Study: Sphinx-Based Search
    • Sphinx Setup
    • Basic Yesod Setup
    • Searching
    • Streaming xmlpipe Output
    • Full Code
  • 26. Visitor Counter
  • 27. Single-Process Pub/Sub
    • Foundation Data Type
    • Allocate a Job
    • Fork Our Background Job
    • View Progress
    • Complete Application
  • 28. Environment Variables for Configuration
  • 29. Route Attributes
    • Alternative Approach: Hierarchical Routes
  • IV. Appendices
  • A. monad-control
    • Overview
    • Intuition
    • Types
      • MonadTransControl
      • MonadControlIO
    • Real-Life Examples
    • Lost State
    • More Complicated Cases
  • B. Web Application Interface
    • The Interface
      • Response Body
      • Request Body
    • Hello, World
    • Resource Allocation
    • Streaming Response
    • Middleware
  • C. Settings Types
  • D. http-conduit
    • Synopsis
    • Concepts
    • Request
    • Manager
    • Response
    • http and httpLbs
  • E. xml-conduit
    • Synopsis
    • Types
      • The Four Types of Nodes
      • Documents
      • Events
    • Text.XML
      • A Note About File Paths
    • Cursor
    • xml-hamlet
    • xml2html
  • Index

Dodaj do koszyka Developing Web Apps with Haskell and Yesod. Safety-Driven Web Development. 2nd Edition

Code, Publish & WebDesing by CATALIST.com.pl



(c) 2005-2024 CATALIST agencja interaktywna, znaki firmowe należą do wydawnictwa Helion S.A.