Server-Side Swift: Vapor Edition - Paul Hudson

Server-Side Swift: Vapor Edition

By Paul Hudson

  • Release Date: 2017-12-27
  • Genre: Programmering
  • Size: 5.27 MB

Alternative Downloads

Server Link Speed
Mirror [#1] Server-Side Swift: Vapor Edition.pdf 46,498 KB/Sec
Mirror [#2] Server-Side Swift: Vapor Edition.pdf 31,893 KB/Sec
Mirror [#3] Server-Side Swift: Vapor Edition.pdf 33,325 KB/Sec


Building web apps using Swift and Vapor 3 lets you re-use the skills you've already mastered, while being faster and safer than other languages. This course teaches you everything you need to craft your own server-side APIs and websites, all using Swift and Vapor 3.

100% Swift 4.2: Don't waste time with out of date tutorials – here you can learn smart, powerful, and expressive Swift the way it was meant to be written.

100% Practical: You learn Swift while you make real web apps, which means you get to apply your new skills immediately and see them work in context.

100% Coverage: Master sessions, databases, logging, templating, user authentication, and more – everything you need to build your own web apps.

100% Proven: I've taught thousands of people to build iOS apps, and I'll help you transfer your skills to the web and unleash Swift on your server.

Server-Side Swift teaches you Swift and web development through real-world projects. There's a comprehensive Swift introduction for beginners, but the rest of the book is focused on building real web apps and websites using Swift.

Server-Side Swift includes 12 projects in total: eight apps, and four technique projects that focus on specific APIs. The projects are:

1. Million Hairs: Get started coding server-side Swift by making a website using templates and routing.

2. JSON Poll: Learn how databases can help you load and save user data quickly, then use that new-found knowledge to build your own custom voting API using JSON.

3. Routing: Routing requests lies at the heart of any web app, and this technique project teaches you how to structure your web routes in powerful, expressive ways.

4. Swift Fan Club: Build a database-backed messageboard, that uses sessions, encrypted login credentials, templates, and Bootstrap to let users write and reply to forum posts.

5. Meme Machine: Learn how to process image uploads and work with the filesystem.

6. Templates: Template engines are packed with features, and in this technique project we look at conditions, loops, and comments, as well a how to write your own custom tags.

7. Barkr: Build a microblogging platform aimed at animal lovers that brings together JSON input and output plus token-based user authentication for extra security.

8. ASCII art: Learn to fetch and manipulate remote data, and serve the results using ajax.

9. Databases: Dive deep into advanced SQL techniques and learn how indexing, normalization, referential integrity, and transactions can help you build faster, safer databases.

10. Instant Coder: Learn how to block access to sensitive areas of your website based on user authentication, then mix in sessions and tabbed navigation using Bootstrap.

11. AppleFanatic: Build your own website content management system split into front-end and back-end services, then render articles for end users by transforming Markdown into HTML.

12. Testing: Learn how XCTest can help validate your back-end APIs in seconds.

While building projects, you'll learn all this and more:

- How to transfer your existing Swift knowledge to the server.

- Connecting to databases to read and write data.

- Creating server-side sessions for temporary storage.

- Building re-usable templates to separate your presentation from your logic.

- How to design, build, and test web APIs for your Swift apps.

- Authenticating users to create login screens.

You'll also learn some HTML, JavaScript, and SQL along the way, as part of the Swift projects.

Server-Side Swift follows the same approach I used with Hacking with Swift: small, standalone projects that teach individual techniques starting from scratch, so you end up with a huge library of finished projects you can develop further or use as the base for something entirely new.