Clojure Web Development Essentials.

Functional programming enables developers to create and deploy applications quickly and easily. Using the Clojure programming language and the Leiningen build tool, this book teaches you how to leverage various Clojure libraries into the building blocks of a web-based application. We'll start b...

Full description

Saved in:
Bibliographic Details
Main Author: Baldwin, Ryan
Format: Electronic eBook
Language:English
Published: Packt Publishing, 2015.
Subjects:
Online Access:CONNECT

MARC

LEADER 00000cam a22000007a 4500
001 in00005990725
006 m o d
007 cr |n|||||||||
008 150306s2015 xx o 000 0 eng d
005 20240618150636.2
019 |a 968038274  |a 969062418 
020 |a 1336026006  |q (ebk) 
020 |a 9781336026001  |q (ebk) 
020 |a 1784394874 
020 |a 9781784394875  |q (electronic bk.) 
035 |a 1WRLDSHRocn904426393 
035 |a (OCoLC)904426393  |z (OCoLC)968038274  |z (OCoLC)969062418 
037 |a 733886  |b MIL 
040 |a IDEBK  |b eng  |e pn  |c IDEBK  |d EBLCP  |d DEBBG  |d CHVBK  |d OCLCO  |d OCLCQ  |d FEM  |d IDB  |d OCLCQ  |d MERUC  |d OCLCF  |d OCLCQ  |d DKC  |d OCLCQ  |d N$T  |d HS0  |d OCLCO  |d K6U  |d OCLCQ  |d OCLCO  |d OCLCL 
049 |a TXMM 
050 4 |a T55.4-60.8 
082 0 4 |a 005.133 
100 1 |a Baldwin, Ryan. 
245 1 0 |a Clojure Web Development Essentials. 
260 |b Packt Publishing,  |c 2015. 
300 |a 1 online resource 
336 |a text  |b txt  |2 rdacontent 
337 |a computer  |b c  |2 rdamedia 
338 |a online resource  |b cr  |2 rdacarrier 
347 |a text file 
588 0 |a Print version record. 
520 |a Functional programming enables developers to create and deploy applications quickly and easily. Using the Clojure programming language and the Leiningen build tool, this book teaches you how to leverage various Clojure libraries into the building blocks of a web-based application. We'll start by generating a new, fully runnable, baseline web application using the Leiningen Luminus template. From there we'll examine the different pieces that compose our application, and learn the basics of the underlying Ring framework. Subsequent chapters will focus on each technology and leverage those technologies to build additional functionality into our application. You'll learn how to validate user submitted data, authentication, account creation, how to interact with a database, and more. Finally, we'll create an environment configuration and deploy our app. By the end of this book you'll have created a full fledged application from start to finish, and you'll have the requisite skills to develop an efficient and robust web application. 
505 0 |a Cover -- Copyright -- Credits -- About the Author -- About the Reviewers -- www.PacktPub.com -- Table of Contents -- Preface -- Chapter 1: Getting Started with Luminus -- Leiningen -- Using Leiningen -- Generating the application -- Getting help -- Dependencies of the app -- Luminus file structure -- util.clj -- session_manager.clj -- layout.clj -- middleware.clj -- routes/home.clj -- handler.clj -- repl.clj -- Summary -- Chapter 2: Ring and the Ring Server -- Understanding Ring in Clojure -- Request maps -- Response maps -- Handlers 
505 8 |a MiddlewareAdapters -- What is the Ring Server? -- hipstr.handler -- Initialization hooks -- Shutdown hooks -- App routes -- The application handler -- hipstr.repl -- Start-server -- Stop-server -- Get-handler -- Configuring and running the Ring Server -- Summary -- Chapter 3: Logging -- What is Timbre? -- What is an appender? -- Configuring a Timbre appender -- Timbre log levels -- Appender configuration keys -- Appender map -- Shared appender configuration -- Logging with Timbre -- Adding an appender -- Adding the rolling appender 
505 8 |a SummaryChapter 4: URL Routing and Template Rendering -- What is Compojure? -- Creating a Compojure route -- Using defroutes -- Anatomy of a route -- Defining the method -- Defining the URL -- Parameter destructuring -- Constructing the response -- Generating complex responses -- What is Selmer? -- Creating your first page -- Rendering a page -- Variables -- Filters -- Filter parameters -- Tags -- Template inheritance -- Editing the home page -- Serving the sign up form -- Creating the sign up page -- Summary 
505 8 |a Chapter 5: Handling Form InputHandling the form POST -- Validating the form POST -- The noir.validation namespace -- The Validateur library -- Adding the Validateur dependency -- Creating the user validation namespace -- Validating required fields -- Validating the format -- Validating length of values -- Validation predicates -- Making reusable validators -- Reporting errors to the user -- Summary -- Chapter 6: Testing in Clojure -- The necessity of testing -- Anatomy of a test -- Writing and running our first test -- Running tests 
505 8 |a Running tests automaticallyRefactoring tests -- Writing a high-level integration test -- Using ring.mock.request -- Summary -- Chapter 7: Getting Started with the Database -- Creating the database schema -- Maintaining the database schema -- Migratus -- Getting Migratus -- Configuring Migratus -- Creating the user table -- Dropping the user table -- Running the down scripts -- Migrating the database -- Running all migration scripts from Leiningen -- Running migrations programatically -- Adding migrations to the hipstr initialization 
500 |a EBSCO eBook Academic Comprehensive Collection North America  |5 TMurS 
650 0 |a Application software  |x Development. 
650 0 |a Clojure. 
650 0 |a Computer programming. 
730 0 |a WORLDSHARE SUB RECORDS 
758 |i has work:  |a Clojure Web Development Essentials (Text)  |1 https://id.oclc.org/worldcat/entity/E39PCXxxD9pGW4WY9FcqWHRtcd  |4 https://id.oclc.org/worldcat/ontology/hasWork 
776 0 8 |i Print version:  |n Druck-Ausgabe  |t Baldwin, Ryan. Clojure Web Development Essentials 
856 4 0 |u https://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&AN=959195&authtype=ip,sso&custid=s4672406  |z CONNECT  |3 eBooks on EBSCOhost  |t 0 
949 |a ho0 
994 |a 92  |b TXM 
998 |a wi  |d z 
999 f f |s 79dc4353-e339-4c5d-92ec-96b6779e8935  |i 79dc4353-e339-4c5d-92ec-96b6779e8935  |t 0 
952 f f |a Middle Tennessee State University  |b Main  |c James E. Walker Library  |d Electronic Resources  |t 0  |e T55.4-60.8   |h Library of Congress classification