PTT評價

[心得] 2020-2-7 每日新聞

看板Soft_Job標題[心得] 2020-2-7 每日新聞作者
damody
(天亮damody)
時間推噓 4 推:4 噓:0 →:15

#每日新聞
# 2020-2-7 每日新聞
# FB: http://bit.ly/2UizW6X

# 為什麼 Discord 要從go轉換到rust

今天來講的更詳細一點

他們發現go程式每兩分鐘就會有一個延遲高峰

這個延遲高峰是因為go每兩分鐘就要清一次記憶體垃圾

這個問題出現在 go 1.9.2 也許最新版修掉了

不過已經對現在的Discord沒有意義了

這次的測試是在 2019年5月進行的

結論:

有GC的語言不代表你可以不用處理記憶體問題

如果你持續使用,他會在未來轉化成另一種成本更高的問題

但有GC的開發速度的確快,可以先用有GC的語言先開發個雛形驗證商業模式

在你的商業模式短時間不會改變的情況下,再用其它高效安全沒GC的語言去重寫

http://bit.ly/38dIGQd

# Mint 用於編寫單頁App的程式語言

看起來是想幹掉JavaScript, TypeScript

http://bit.ly/2S4HAQP

# 從React的角度來看Rust和GTK

作者試了幾種能讓React跨平台的方案都失敗後決定來用native的UI

最後他選擇了 Rust + GTK

這種轉換對過去都寫前端的他並不容易

所以他整理了一些方向

方便之後有寫過React的Web前端

快速上手Rust + GTK來做Native前端

http://bit.ly/31DBp9F

# Rust遊戲開發-生態系統調查

去年八月,我們對Rust gamedev生態系統進行了一項調查。

現在終於可以展示結果了。

1. 是業餘愛好者,還是專業遊戲開發想用Rust做遊戲呢?

75%是業餘愛好者 20%是商業遊戲開發人員

2. 你有用過Rust在遊戲開發嗎?

45% 考慮使用 50%正在用

3. 作為一種語言和生態系統,Rust會給您作為遊戲開發人員帶來最大的負面影響嗎?

專業人士和業餘愛好者的工作重點基本相同。最大的區別是:

愛好者希望將生態系統成熟度提高兩倍。

愛好者更關心手機、網路的支援程度

專業人士更關心console(Xbox, PS4)支援

專業人士更關心C++互相溝通

4. Rust的其它問題

無法正確除錯,例如hashmap絕對無法查看內容。不知道它在Rust是如何運作的。

缺少像Visual Studio這類強大的IDE支援

會Rust的人太少,不好找

Sony或Microsoft尚未正式在console(Xbox, PS4)上支援Rust

沒有專業的遊戲引擎(UE4,Unity)與Rust集成。

程式碼以及引擎都是C++。一起使用Rust和C++會很痛苦,

而將現有技術完全重寫為Rust將成本太高。

http://bit.ly/31wmqyg

# 成立LLVM ICE-breaker小組| Inside Rust博客

什麼是Cleaning Crew ICE-breaker組?

“ Cleanup Crew”專注於改進錯誤報告。具體而言,目標是嘗試確保每個錯誤報告都包
含修復它所需的所有信息:

一個錯誤的最小程式範例。

連接錯誤報告到重複錯誤報告或相關錯誤報告

如果錯誤是重新出現(曾經有用,但不再有效),把修正的PR的分為stable, nightly

誰應該加入?
熟悉Rust的任何人都可以完成此工作,而無需特別了解編譯器。

您可以在rustc-guide部分找到有關該組的更多信息。

http://bit.ly/2UvNood


# gsl-lite v0.36 released

Guidelines Support Library for C++98, C++11 up

這個庫能對C++的特性做檢查與提示

下面用 gsl::not_null 來表示 p 永遠不為 0

```cpp
#include <gsl/gsl-lite.hpp>

int * use( gsl::not_null<int *> p )
{
// use p knowing it's not nullptr, NULL or 0.
return p;
}

struct Widget
{
Widget() : owned_ptr( new int(42) ) {}
~Widget() { delete owned_ptr; }

void work() { non_owned_ptr_ = use( owned_ptr ); }

owner<int *> owned_ptr_; // if alias template support
int * non_owned_ptr_;
};

int main()
{
Widget w;
w.work();
}
```

http://bit.ly/373NqX1

# Luamon 即時開發小工具

檢查檔案變更並重新執行

http://bit.ly/2UCXhAJ

# Java Collections 該重製了

Java Collections 是該淬鍊重生了!

目前少了哪些功能呢?

好用的 API 來直接操作 Collections

記憶效率

優化的Eager API

所有原生類似的Collections

保證不變的 Collections

惰性求值API

並行執行的階層迭代器

新類型的資料結構 Multimaps, Bags, BiMaps

可變和不可變的Collection工廠

64位元的Collections

http://bit.ly/31wmVZf

# 5種python常見的錯誤

https://youtu.be/fMRzuwlqfzs




--
標題 [閒聊] 寫程式的時候要吃甜食
del680202:我寫程式的時候 都想脫光衣服
lgzenith:雙腳放到桌上反而容易進入狀況
loveme00835:看吉澤明步...
#1Hc6x55S (Soft_Job)

--

※ PTT 留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.45.64.114 (臺灣)
PTT 網址

robler02/07 09:56我覺那只是單純的GO的GC寫的很爛

domototice02/07 10:24visual studio express 是免費版的 SQL express也是

domototice02/07 10:25但LAMP WAMP or WAM+其他語言 是免費的 unbuntu也是

johnny9402/07 10:29第一篇有人問說為何不先試試新版的 go 呢XD

domototice02/07 10:36Unity3D 可以用看看 蠻多遊戲用的

x246libra02/07 14:11GO 得主要維護者 維基可以看到名字

domototice02/07 14:21謝謝分享~!

domototice02/07 14:33文章寫得很好 可以看標題找重點 只是怎麼沒有摘要?

domototice02/07 14:34(abstract)接下來的心得我實在不想講可能有人會了

domototice02/07 14:34因為我不想給對岸的學生還是工作者看到

domototice02/07 14:35讀英文的時候 你就把它想成白話 自然而然改善的方式

domototice02/07 14:35有哪些 就想的出來了 比如我論文是知識分享之內外在

domototice02/07 14:36動機與知識分享障礙 在社群中一開始人都有動機去做某

domototice02/07 14:36件事情 然後分享知識的溝通過程中會遭遇到障礙

domototice02/07 14:37舊式簡單化 生活化 思考化 不好意思 獻醜了。。。

domototice02/07 14:37就是

domototice02/08 05:11這是我的指導教授孫思源老師的用心良苦..才有今日我..

damody02/08 12:01好喔