大山姆的機機車車™ #19

#19・
499

subscribers

22

issues

Subscribe to our newsletter

By subscribing, you agree with Revue’s Terms of Service and Privacy Policy and understand that 《大山姆的機機車車™》電子報 will receive your email address.

《大山姆的機機車車™》電子報
▋好久不見!
距離上一次發刊,竟然是一年多前的事了!為慶祝復刊,這一期有「贈書活動」,有興趣的讀者,請往下看。👇
今年 C++ 圈最大的新聞非「C++20 標準規格定案」莫屬。C++20 可以說是自 C++11 以來,加入最多新功能的一版,其中幾個功能對於 C++ 生態圈未來的走向,有舉足輕重的影響。待各大編譯器廠商支援 C++20 後,未來的 C++ 程式碼如何「質變」,令人期待!
雖然 C++20 了,但開發者別擔心跟不上,C++ 依然是熟悉的 C++,強者不會被廢去武功,新人也不必擔心看不懂。據我多年的觀察,新功能的「發酵期」長達數年,有心人士有足夠時間適應。
幾個較常被討論的 C++ 新功能:
  • Concepts
  • Modules
  • Coroutines
  • Ranges
  • std::format
之後的電子報我會收集與 C++20 有關的資訊,望讀者跟這些新功能「日久生情」,不再陌生。迫不急待的躁進者,可以到這裡看看有哪些新功能。
▋Windows UI Framework
我在上一期(去年的事了)提到:
Microsoft 在 MFC 之後,幾乎停止了 C++ GUI Framework 的開發(ATL/WTL 不算)。
去年 Microsoft BUILD 大會,微軟端出了新技術,有機會解決 Windows 平台上,C++ GUI Framework 欠缺的問題。其中,有幾個技術我特別感興趣:
有了 XAML Islands,你可以在傳統 Win32 應用程式、WPF、Windows Form 裡,放 UWP 元件。藉此幫傳統應用程式續命。
WinUI 目前已經有穩定的 2.x 版,但今年即將釋出正式版的 WinUI 3.0,是微軟未來 Native Application 開發的重要角色。WinUI 使用 XAML 做為 UI 描述語言,經過數年的發展 XAML 在許多場合被重用,例如 Xamarin, NoesisGUI。
今年以前,我們是凡人。今年開始,我們是脆弱的凡人。疫情當前,保護好自己,留下拯救世界的本錢。
我是山姆,《大山姆的機機車車™》是我投注心力製作的電子報,希望透過這份小報,把我感興趣的資訊分享給同樣求知若渴的您。

贈書
Titus Winters,一個我很敬佩的 C++ 職人。他是 Google 的資深工程頭子,也是 C++ 委員會成員。最近出了一本書(應該是他的第一本書)《Software Engineering at Google》,副標是「Lessons Learned from Programming Over Time」。
為紀念大機車報復刊,山姆決定送這本新書給一位讀者。如何獲得這本書呢?
有別於上次贈書,這次採用「Opt-in」的模式,規則如下:
  1. 你必須是本報訂戶
  2. 對該書有興趣
  3. 真的對該書有興趣
  4. 有 Amazon 帳號
  5. 在電子報尾按「👍」並「留言」或寫信至 [email protected] ,表明你對 Titus 的書有興趣
在第 #21 期出刊前,以「抽籤」的方式選出幸運讀者,公告於報頭(以及推特),確認讀者回覆後,方送出 Kindle 電子書。
一本好書 推薦閱讀
一本好書 推薦閱讀
參兩摘
SourceGear | DiffMerge
Collaborative Collection of C++ Best Practices
C++ 人在推特
Introduction  |  C++ Education
Talking C++: An Interview with Bjarne Stroustrup
C++ 17 constexpr 與 Lambda 表達式 | 羅根學習筆記
摘影片
Troubleshooting Memory Problems
Troubleshooting with Process Explorer
C++ and Memory: Between Correctness and Performance
RedHat 工程師 Ulrich Drepper 介紹 C++ 是源自於設計給作業系統的 C 語言,所以延續了管理所有資源的權限,因此 C++ 的封裝行為的內容必須幾乎跟 C 一樣。
C++ 的新功能 atomic 、 vector 、 shared_ptr 都是在讓使用者更容易寫大型系統程式。
By Sidney Niu
C++ and Memory: Between Correctness and Performance
C++ and Memory: Between Correctness and Performance - Ulrich Drepper
C++ and Memory: Between Correctness and Performance - Ulrich Drepper
Chandler Carruth “Spectre: Secrets, Side-Channels, Sandboxes, and Security”
因為這幾年蠻多快取漏洞像是 Meltdown 之類的,所以安全性問題這幾年抬頭很快。 最好的安全性就是不要讓程式內的快取有可以攻擊的資料。
By Sidney Niu
Chandler Carruth “Spectre: Secrets, Side-Channels, Sandboxes, and Security”
Chandler Carruth “Spectre: Secrets, Side-Channels, Sandboxes, and Security”
Premake | Game Engine Series by The Cherno
使用 Lua 來設計 Build Script 用以產生各個工具的專案。似乎存在好一陣子了,但我看了這支影片才知道有這款東西。
Premake | Game Engine Series
Premake | Game Engine Series
開源專案
The new Windows Terminal
GitHub - KjellKod/g3log
A dbg(…) macro for C++
Port of the xxhash library to C++14.
PowerToys: Windows system utilities to maximize productivity
課程推薦
Unreal Engine 4 Course (Create Multiplayer Games with C++) | Udemy
WorkFlowy Tips
想知道更多 WorkFlowy 撇步,請快步前往 WorkFlowy Tips 。還沒有 WorkFlowy 帳號?請用此連結申請,加倍免費清單上限。
還有還有,我在臉書開了一個以 WorkFlowy 為主題的社團——山姆的 WorkFlowy 大小撇步,歡迎加入分享你最酷的 WorkFlowy 使用技的更多同好!
💌 喜歡這一期的內容,請幫我按「👍」。不喜歡請按「👎」,並寫下你認為哪裡做得不好,你的回饋是我進步的動力。偏愛匿名表心意的讀者,我開了一個「提問箱」,歡迎使用,謝謝!
本報內含 Affiliate Link 連結,透過我的推薦購買相關服務或產品,我有機會從中獲益。我也接受小額贊助,歡迎大家用行動支持我。感謝!
Bon Jovi - Livin' On A Prayer (Official Music Video)
Bon Jovi - Livin' On A Prayer (Official Music Video)
Did you enjoy this issue? Yes No
Sam Tsai
Sam Tsai @mhtx

我是山姆,這份以 C++ 為主題的電子報,兩週一期,給你最新、最有價值的 C++ 與軟體開發資訊。

《大山姆的機機車車™》,資訊充滿,垃圾沒有,歡迎訂閱。

In order to unsubscribe, click here.
If you were forwarded this newsletter and you like it, you can subscribe here.
Created with Revue by Twitter.