reklama - zainteresowany?

Hack and HHVM. Programming Productivity Without Breaking Things - Helion

Hack and HHVM. Programming Productivity Without Breaking Things
ebook
Autor: Owen Yamauchi
ISBN: 978-14-919-2083-1
stron: 284, Format: ebook
Data wydania: 2015-09-02
Księgarnia: Helion

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

Dodaj do koszyka Hack and HHVM. Programming Productivity Without Breaking Things

How can you take advantage of the HipHop Virtual Machine (HHVM) and the Hack programming language, two new technologies that Facebook developed to run their web servers? With this practical guide, Owen Yamauchi—a member of Facebook’s core Hack and HHVM teams—shows you how to get started with these battle-tested open-source tools.

You’ll explore static typechecking and several other features that separate Hack from its PHP origins, and learn how to set up, configure, deploy, and monitor HHVM. Ideal for developers with basic PHP knowledge or experience with other languages, this book also demonstrates how these tools can be used with existing PHP codebases and new projects alike.

  • Learn how Hack provides static typechecking while retaining PHP’s flexible, rapid development capability
  • Write typesafe code with Hack’s generics feature
  • Explore HHVM, a just-in-time compilation runtime engine with full PHP compatibility
  • Dive into Hack collections, asynchronous functions, and the XHP extension for PHP
  • Understand Hack’s design rationale, including why it omits some PHP features
  • Use Hack for multitasking, and for generating HTML securely
  • Learn tools for working with Hack code, including PHP-to-Hack migration

Dodaj do koszyka Hack and HHVM. Programming Productivity Without Breaking Things

 

Osoby które kupowały "Hack and HHVM. Programming Productivity Without Breaking Things", wybierały także:

  • Windows Media Center. Domowe centrum rozrywki
  • Ruby on Rails. Ćwiczenia
  • DevOps w praktyce. Kurs video. Jenkins, Ansible, Terraform i Docker
  • Przywództwo w Å›wiecie VUCA. Jak być skutecznym liderem w niepewnym Å›rodowisku
  • Scrum. O zwinnym zarzÄ…dzaniu projektami. Wydanie II rozszerzone

Dodaj do koszyka Hack and HHVM. Programming Productivity Without Breaking Things

Spis treści

Hack and HHVM. Programming Productivity Without Breaking Things eBook -- spis treści

  • Foreword
  • Preface
    • What Are Hack and HHVM?
    • Who This Book Is For
    • Philosophy
      • Program Types
      • Gradual Migration
    • How the Book Is Organized
    • Versions
    • Conventions Used in This Book
    • Safari Books Online
    • How to Contact Us
    • Content Updates
      • January 15, 2016
    • Acknowledgments
  • 1. Typechecking
    • Why Use the Typechecker?
    • Setting Up the Typechecker
      • Autoload Everything
      • Reading Error Messages
    • Type Annotation Syntax
      • Function Return Types
      • Function Parameters
        • Variadic functions
      • Properties
    • Hacks Type System
      • Typechecker Modes
      • Code Without Annotations
      • Calling into PHP
    • Rules
      • Using Superglobals
      • Types of Overriding Methods
      • Property Initialization
      • Typed Variadic Arguments
      • Types for Generators
      • Fallthrough in switch Statements
    • Type Inference
      • Variables Dont Have Types
      • Unresolved Types
      • Inference Is Function-Local
    • Refining Types
      • Refining Nullable Types to Non-Nullable
      • Refining Mixed Types to Primitives
      • Refining Object Types
      • Inference on Properties
    • Enforcement of Type Annotations at Runtime
  • 2. Generics
    • Introductory Example
    • Other Generic Entities
      • Functions and Methods
      • Traits and Interfaces
      • Type Aliases
    • Type Erasure
    • Constraints
    • Unresolved Types, Revisited
    • Generics and Subtypes
      • Arrays and Collections
    • Advanced: Covariance and Contravariance
      • Syntax
      • When to Use Them
        • Covariance
        • Contravariance
  • 3. Other Features of Hack
    • Enums
      • Enum Functions
    • Type Aliases
      • Transparent Type Aliases
      • Opaque Type Aliases
      • Restrictions
      • Autoloading Type Aliases
    • Type Constants
      • Defining Type Constants
      • Constraints
      • Using Type Constants
    • Array Shapes
      • Structural Subtyping
      • The Shapes Library
      • Restrictions on Shapes
    • Lambda Expressions
    • Constructor Parameter Promotion
    • Attributes
      • Attribute Syntax
      • Special Attributes
    • Enhanced Autoloading
    • Integer Arithmetic Overflow
    • Nullsafe Method Call and Property Access
    • Trait and Interface Requirements
    • Silencing Typechecker Errors
  • 4. PHP Features Not Supported in Hack
    • References
      • The global Statement
      • Top-Level Code
    • Old-Style Constructors
    • Case-Insensitive Name Lookup
    • Variable Variables
    • Dynamic Properties
    • Mixing Method Call Syntax
    • isset, empty, and unset
    • Others
  • 5. Collections
    • Why Use Collections?
    • Collections Have Reference Semantics
    • Using Collections
      • Literal Syntax
      • Reading and Writing
        • Iterating
        • Adding values
        • Deleting values
        • Operators
        • Immutable collections
    • Type Annotations for Collections
      • Core Interfaces
      • General Collection Interfaces
      • Specific Collection Interfaces
      • Concrete Collection Classes
    • Interoperating with Arrays
      • Conversion to Arrays
      • Use with Built-In and User Functions
        • The sort built-ins
        • Other built-ins
        • Non-built-in functions
  • 6. Async
    • Introductory Examples
    • Async in Detail
      • Wait Handles
      • Async and Callable Types
      • await Is Not an Expression
      • Async Generators
      • Exceptions in Async Functions
      • Mapping and Filtering Helpers
    • Structuring Async Code
      • Data Dependencies
      • Antipatterns
        • Awaiting in a loop
        • The multi-ID pattern
    • Other Types of Waiting
      • Sleeping
      • Rescheduling
        • Polling
        • Batching
    • Common Mistakes
      • Dropping Wait Handles
      • Memoizing Async Functions
    • Async Extensions
      • MySQL
        • Connecting and querying
        • Connection pools
        • Query results
      • MCRouter and memcached
      • cURL
      • Streams
  • 7. XHP
    • Why Use XHP?
      • Runtime Validation
      • Secure by Default
    • How to Use XHP
      • Basic Tag Usage
        • HTML character references
      • Attributes
      • Embedding Hack Code
      • Type Annotations for XHP
      • Object Interface
      • Validation
    • Creating Your Own XHP Classes
      • Attributes
        • Attribute types
        • Inheriting attributes
      • children Declarations
      • Categories
      • Context
      • Async XHP
      • XHP Helpers
        • Transferring attributes
        • Unique IDs
        • Managing the class attribute
    • XHP Best Practices
      • No Additional Public API
      • Composition, Not Inheritance
      • Dont Make Control Flow Tags
      • Distinguish Attributes from Children
      • Style Guide
    • Migrating to XHP
      • Converting Bottom-Up
      • Getting Around XHPs Escaping
    • XHP Internals
      • The Parser Transformation
      • The Hack Library
  • 8. Configuring and Deploying HHVM
    • Specifying Configuration Options
      • Important Options
    • Server Mode
    • Warming Up the JIT
    • Repo-Authoritative Mode
      • Building the Repo
      • Deploying the Repo
    • The Admin Server
  • 9. hphpd: Interactive Debugging
    • Getting Started
    • Evaluating Code
    • The Execution Environment
      • Local Mode
      • Remote Mode
    • Using Breakpoints
      • Setting Breakpoints
        • Breakpoint expressions and conditions
        • Breaking from code
      • Navigating the Call Stack
      • Navigating Code
      • Managing Breakpoints
    • Viewing Code and Documentation
    • Macros
    • Configuring hphpd
  • 10. Hack Tools
    • Inspecting the Codebase
      • Scripting Support
    • Migrating PHP to Hack
      • The Hackificator
        • Top-down or bottom-up migration
        • Upgrading typechecker modes
      • Inferring and Adding Type Annotations
        • Adding annotations
        • Removing incorrect annotations
        • Hardening annotations
    • Transpiling Hack to PHP
      • Conversions
      • Unsupported Features
  • Index

Dodaj do koszyka Hack and HHVM. Programming Productivity Without Breaking Things

Code, Publish & WebDesing by CATALIST.com.pl



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