首頁 > 計(jì)算機(jī)網(wǎng)絡(luò) >
編程語言與程序設(shè)計(jì)
> Mastering High Performance with Kotlin最新章節(jié)目錄
舉報

會員
Mastering High Performance with Kotlin
ThisbookisforKotlindeveloperswhowouldliketobuildreliableandhigh-performanceapplications.PriorKotlinprogrammingknowledgeisassumed.
目錄(194章)
倒序
- 封面
- 版權(quán)信息
- Packt Upsell
- Why subscribe?
- PacktPub.com
- Contributors
- About the author
- About the reviewer
- Packt is searching for authors like you
- Preface
- Who this book is for
- What this book covers
- To get the most out of this book
- Download the example code files
- Download the color images
- Conventions used
- Get in touch
- Reviews
- Identifying Performance Bottlenecks
- Reasons for performance issues
- Memory management
- Garbage collection
- Working principles of the garbage collector
- Impacts of garbage collection
- Heap fragmentation
- Finalization
- Resource leaks
- Memory leaks
- String pool
- Memory model
- The problem of concurrency and parallelism
- Java Memory Model (JMM)
- Synchronization
- Slow rendering
- Device refresh rate
- Frame rate
- Summary
- Identifying Indicators of Performance Issues
- Benchmarking
- Microbenchmarks
- Java Microbenchmark Harness (JMH)
- Benchmark modes
- Benchmark time units
- Benchmark state
- State scope
- Fixture methods
- Levels of fixture methods
- Writing good benchmarks
- The pitfalls of loops
- Dead Code Elimination
- Using black holes
- Constant folding
- Kotlin benchmarks
- IDEA JMH plugin
- General performance metrics
- Types of performance testing
- Performance testing process
- Overview of performance testing tools
- JMeter
- Fabric
- Summary
- Learning How to Use Profiling Tools
- Memory profiling
- Memory Viewer
- HProf
- Eclipse Memory Analyzer Tool
- Histogram
- Shallow and Retained Heap
- Dominator Tree
- Top Consumers
- Analyzing class loaders
- Android Studio Memory Profiler
- Memory categories
- Recording memory allocation
- Threads profiling
- Threads viewer
- Frames pane
- The Threads pane
- Thread profiling in the MAT
- Threads Overview
- Thread Details
- CPU Profiler in Android Studio
- Call Chart and Flame Chart tabs
- Top Down and Bottom Up tabs
- Summary
- Functional Approach
- Functional programming
- Declarative versus imperative
- Pure functions
- First-class functions
- Higher-order functions
- Function composition
- Lambdas
- Closures
- Typeclasses
- Arrow library
- Functor
- Monad
- Immutability
- Inspecting functional features
- Inline versus non-inline
- Capturing and non-capturing lambdas
- Summary
- Enhancing the Performance of Collections
- Data structures
- Arrays
- Linked lists
- Stacks
- Queues
- Sets
- Maps
- Hash tables
- Binary search trees
- Tries
- Binary heaps
- Graphs
- Time complexity
- Calculating time complexity
- Time complexity of lists
- Time complexity of sets
- Time complexity of queues
- Time complexity of maps
- Collections in Kotlin
- Sequences in Kotlin
- Summary
- Optimizing Access to Properties
- Fields and properties
- Backing fields
- Backing properties
- @JvmField annotation
- Properties inspection
- Compile-time constants
- Inner classes
- lateinit
- Companion objects
- Summary
- Preventing Unnecessary Overhead Using Delegates
- Types of delegation
- Explicit delegation
- Implicit delegation
- Class delegation
- Delegated properties
- Lazy
- Creating a delegated property
- Inspecting the lazy function
- Observable delegates
- Summary
- Ranges and Identifying Performance Issues
- Ranges in Kotlin
- Utility functions
- Range benchmarking
- Summary
- Multithreading and Reactive Programming
- Concurrency and parallelism
- Reactive programming
- Coroutines
- Setting up a project
- The launch function
- The async function
- The buildSequence function
- The suspendingSequence function
- The produce function
- Coroutines with reactive programming
- Summary
- Best Practices
- The disposable pattern
- Immutability
- Data classes
- The String pool
- StringBuilder
- Functional programming
- Declarative versus imperative
- Pure functions
- First-class functions
- Higher-order functions
- Inline functions
- Function composition
- Capturing lambdas
- Collections
- Properties
- Backing properties
- @JvmField annotation
- Top-level members
- Compile-time constants
- The lateinit modifier
- Delegation
- Singleton delegate object
- The lazy funcation with unsafe thread mode
- Delegate object with generic
- Ranges
- Concurrency and parallelism
- Summary
- Other Books You May Enjoy
- Leave a review - let other readers know what you think 更新時間:2021-06-25 20:55:53
推薦閱讀
- 精通軟件性能測試與LoadRunner實(shí)戰(zhàn)(第2版)
- Python機(jī)器學(xué)習(xí):手把手教你掌握150個精彩案例(微課視頻版)
- concrete5 Cookbook
- 從0到1:Python數(shù)據(jù)分析
- Android開發(fā)案例教程與項(xiàng)目實(shí)戰(zhàn)(在線實(shí)驗(yàn)+在線自測)
- Teaching with Google Classroom
- Swift 4 Protocol-Oriented Programming(Third Edition)
- Kubernetes源碼剖析
- Android應(yīng)用開發(fā)實(shí)戰(zhàn)
- PhoneGap 4 Mobile Application Development Cookbook
- Java程序設(shè)計(jì)教程
- Redmine Cookbook
- Android編程權(quán)威指南(第4版)
- 基于MATLAB的控制系統(tǒng)仿真及應(yīng)用
- JavaScript設(shè)計(jì)模式與開發(fā)實(shí)踐
- Java Script從入門到精通(第5版)
- Three.js Essentials
- Switching to Angular 2
- Python編程基礎(chǔ)
- Learning ClojureScript
- Unity3D游戲開發(fā)標(biāo)準(zhǔn)教程
- Hadoop實(shí)戰(zhàn)
- 數(shù)據(jù)可視化實(shí)戰(zhàn):使用D3設(shè)計(jì)交互式圖表(第2版)
- C++語言程序設(shè)計(jì)
- INSTANT RSpec Test-Driven Development How-to
- Python量化投資:技術(shù)、模型與策略
- SaltStack技術(shù)入門與實(shí)戰(zhàn)
- 深入理解網(wǎng)站優(yōu)化:提升網(wǎng)站轉(zhuǎn)化率的藝術(shù)與科學(xué)
- Learning PHP 7 High Performance
- 高可用可伸縮微服務(wù)架構(gòu):基于Dubbo、Spring Cloud和Service Mesh