Hack and HHVM : programming productivity without breaking things /
Annotation
Clasificación: | Libro Electrónico |
---|---|
Autor principal: | |
Formato: | Electrónico eBook |
Idioma: | Inglés |
Publicado: |
Sebastopol, CA :
O'Reilly,
2015.
|
Edición: | First edition. |
Temas: | |
Acceso en línea: | Texto completo (Requiere registro previo con correo institucional) |
Tabla de Contenidos:
- Copyright; Table of Contents; 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; Acknowledgments; Chapter 1. Typechecking; Why Use the Typechecker?; Setting Up the Typechecker; Autoload Everything; Reading Error Messages; Type Annotation Syntax; Function Return Types; Function Parameters; Properties; Hack's Type System; Typechecker Modes; Code Without Annotations; Calling into PHP; Rules; Using Superglobals
- Types of Overriding MethodsProperty Initialization; Typed Variadic Arguments; Types for Generators; Fallthrough in switch Statements; Type Inference; Variables Don't 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; Chapter 2. Generics; Introductory Example; Other Generic Entities; Functions and Methods; Traits and Interfaces; Type Aliases; Type Erasure; Constraints; Unresolved Types, Revisited
- Generics and SubtypesArrays and Collections; Advanced: Covariance and Contravariance; Syntax; When to Use Them; Chapter 3. Other Features of Hack; Enums; Enum Functions; Type Aliases; Transparent Type Aliases; Opaque Type Aliases; Autoloading Type Aliases; Array Shapes; Lambda Expressions; Constructor Parameter Promotion; Attributes; Attribute Syntax; Special Attributes; Enhanced Autoloading; Integer Arithmetic Overflow; Nullsafe Method Call Operator; Trait and Interface Requirements; Silencing Typechecker Errors; Chapter 4. PHP Features Not Supported in Hack; References; The global Statement
- Top-Level CodeOld-Style Constructors; Case-Insensitive Name Lookup; Variable Variables; Dynamic Properties; Mixing Method Call Syntax; isset, empty, and unset; Others; Chapter 5. Collections; Why Use Collections?; Collections Have Reference Semantics; Using Collections; Literal Syntax; Reading and Writing; 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; Chapter 6. Async; Introductory Examples; Async in Detail
- Wait HandlesAsync and Callable Types; await Is Not an Expression; Async Generators; Exceptions in Async Functions; Mapping and Filtering Helpers; Structuring Async Code; Data Dependencies; Antipatterns; Other Types of Waiting; Sleeping; Rescheduling; Common Mistakes; Dropping Wait Handles; Memoizing Async Functions; Async Extensions; MySQL; MCRouter and memcached; cURL; Streams; Chapter 7. XHP; Why Use XHP?; Runtime Validation; Secure by Default; How to Use XHP; Basic Tag Usage; Attributes; Embedding Hack Code; Type Annotations for XHP; Object Interface; Validation