No Silver Bullet – Essence and Accident in Software Engineeringchangeability, and invisibility.”Complexity • Software entities are more complex for their size than perhaps any other human construct, because no two parts are alike • The complexity of software automatic programming has always been a euphemism for programming with a higher-level language than was presently available to the programmer • In essence, it is the solution method, not the problem error-proof programs • There is no magic here either, mathematical proofs can be faulty • Even perfect program validation can only establish that a program meets its specification, the hardest part0 码力 | 35 页 | 1.43 MB | 5 月前3
C++20: An (Almost) Complete OverviewT x { }; T::static_function(); // ... };29 Templated Lambda Expressions Motivation 2 Perfect forwarding (pre C++20): [](auto&& ...args) { return foo(std::forward(args)...); count binary semaphore: only has 1 slot, i.e. only has two states: free slot or no free slot (perfect for a mutex)42 The C++20 Synchronization Library Latches & barriers Help with thread coordination atomic object to change its value, notified by a notification function Can be more performant than polling Methods wait() notify_one() notify_all()45 std::atomic_ref Atomic 0 码力 | 85 页 | 512.18 KB | 6 月前3
使用硬件加速Tokio - 戴翔Picking the next entry by any core or thread Conclusion: • DLB channel scales with core count much better than SW channels • Core count >2 shows advantage From the Pictures: • SW channels depicted in red Scenario MPSC channel allows many threads sending to one place. Conclusion: • DLB channel is more stable than SW channels • Core count >2 shows advantage From the Pictures: • SW channels depicted in origin0 码力 | 17 页 | 1.66 MB | 1 年前3
陈东 - 利用Rust重塑移动应用开发-230618Rust 重塑移动应用开发 跨平台开发的优势和局限性 Pros: - Fast - Single Codebase - Third-party support (Javascript better than Dart) 利用 Rust 重塑移动应用开发 跨平台开发的优势和局 限性 Cons: - Performance - Native feature utilize - Existing0 码力 | 22 页 | 2.10 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 07 深入浅出访存优化the CPU will have to wait. What if the application needs fast access to neighboring data, rather than elements in a row, or must transverse the data multiple times? • To improve data locality of multi-dimensional ordering, can help in many cases. When data is held in cache or in cache lines, performance will be better than if data is held in different cache lines. On the Intel Xeon Phi coprocessor, a single cache line0 码力 | 147 页 | 18.88 MB | 1 年前3
ClickHouse: настоящее и будущееCompressed logs and snapshots • No issues with zxid overflow • No issues with large packets • Better memory usage • No issues with GC and Java heap 2. Может запускаться встроенным в clickhouse-server0 码力 | 32 页 | 2.62 MB | 1 年前3
NativeScript 101are we here? How did NativeScript come to be? Swift/Obj-C Java .NET We ❤ Web. But… We need: • Better offline support • Access to all device APIs • Home screen availability • Push notifications •0 码力 | 90 页 | 40.11 MB | 1 年前3
应用 waPC (rust) 做软件测试工具register more function • https://github.com/wasmmock/ wasm_mock_server • Serialization in Rust is better Rust VS TinyGo (Serialization) • Protobuf (with modified generated pb)✅ • JSON • string ✅0 码力 | 30 页 | 2.50 MB | 1 年前3
whats new in visual studio00 800.00 751.93 682.06 677.07 66.76 62.86 59.00 26.72 26.25 22.90 Gears 5 Link Times (lower is better) Series1 Series2 Series3 Link Time in Seconds Performance of Visual Studio Developer0 码力 | 42 页 | 19.02 MB | 6 月前3
C++20 STL Features: 1 Year of Development on GitHub• span is a non-owning view of contiguous elements • spanis like a pair of T* and size_t, but better • spans are implicitly constructible from arrays and vectors • Avoids ownership confusion, accidental 0 码力 | 45 页 | 702.09 KB | 6 月前3
共 15 条
- 1
- 2













