創造行星,1.2億次下載,近3萬Star的開源項目是為何會“死”掉?

 2023-10-22 阅读 27 评论 0

摘要:整理 | 孫勝? ? ? ?出品 | CSDN(ID:CSDNnews)Faker 是一個流行的模擬數據生成庫,程序員只需簡單地幾步操作,就可以在瀏覽器和 Node.js 中生成大量的假數據,GitHub 的 Star 已超過 25000 星,但是 Faker 的開發人員 Fran?ois

整理 | 孫勝? ? ? ?

出品 | CSDN(ID:CSDNnews)

Faker 是一個流行的模擬數據生成庫,程序員只需簡單地幾步操作,就可以在瀏覽器和 Node.js 中生成大量的假數據,GitHub 的 Star 已超過 25000 星,但是 Faker 的開發人員 Fran?ois Zaninotto 計劃放棄對 Faker 更新維護。根據 GitHub 的數據顯示,最近一次更新在? 2020 年 12 月 11 日。

Faker 意外誕生

Faker 誕生很意外,Fran?ois Zaninotto 需要為他的項目生成模擬數據,于是就在 2011 年 10 月開發了 Faker 項目 。由于 Faker 能產生大量的模擬逼真的數據,因此 Faker 在 PHP 社區被很多開源愛好者使用并獲得好評。據 Fran?ois Zaninotto 在博文中透露,截至 2020 年 10 月已有 450 多個貢獻者(感謝他們的付出),被 713k 個項目所依賴。

<?php
// use the factory to create a Faker\Generator instance
$faker?=?Faker\Factory::create();
// generate data by accessing properties
echo $faker->name;// 'Lucy Cechtelar';
echo $faker->address;// "426 Jordy Lodge// Cartwrightshire, SC 88120-6700"
echo $faker->text;// Dolores sit sint laboriosam dolorem culpa et autem. Beatae nam sunt fugit// et sit et mollitia sed.// Fuga deserunt tempora facere magni omnis. Omnis quia temporibus laudantium// sit minima sint

?Faker 存在設計瑕疵

Fran?ois Zaninotto 表示 Faker 很臃腫,在于很多用戶下載了不必要的語言版本,原先只要 10 KB,現在卻必須下載 3 MB。另一個核心設計問題是 seed (數據庫模擬數據填充命令),為了允許可復用的構建,Faker 生成器接受 seeder,使用相同的 seeder,Faker 將始終生成相同的模擬數據。這導致無法對現有提供程序進行任何重大更改,例如刪除過時的數據或重復的內容,為了填入新的模擬數據,Faker 必須避免數據被修改。

Faker 維護太難了

創造行星,作者認為維護這個 Faker 太難了,因為 Faker 很多模擬數據都是從別的地方粘貼復制過來的,并受到版權法律保護,還有用戶提交的 PR 都是作者看不懂的語種,因此他無法辨析數據的優劣,出于版權等風險考慮,他最終關閉了許多 PR,并盲目地合并了部分其他 PR。最主要原因是 Fran?ois Zaninotto 沒有時間去維護 Faker,而且他已經有 5 年時間沒有寫過一行 PHP 代碼了。

有人提議將 Faker 移交到專門維護項目的組織, Fran?ois Zaninotto 拒絕了,他認為這是在“詆毀”一個 25,000 Star 項目的聲譽。

Faker使命完成了


?Packagist ?統計,Faker 已被下載 1.21 億次

Fran?ois Zaninotto 表示:“Faker 被下載了 1.21 億次,足以說明它已經足夠好。成千上萬的 Faker 用戶不可能同時都錯了,對吧?”

所以 Fran?ois Zaninotto 決定 “退休”,意味著 Fran?ois Zaninotto 不會接受新的 PR,不會合并現有的 PR,不會發布新版本,也不會接受新的維護者,將完全禁用來自 Faker 存儲庫的通知,并刪除收件箱中所有與 Faker 相關的消息的存檔——這對地球來說又是一個好舉措。他認為這個決定傷害了那些為 Faker 付出時間和工作的貢獻者,他對此深表歉意,另外他認為這個舉動符合 PHP 社區的利益。

starl挖礦、Fran?ois Zaninotto 最后表示:“Faker 仍然可以在 Packagist 上使用,只要您不升級 PHP 版本,它就會繼續工作。相信其他人很快就會發布一個新的庫來代替 Faker,它會比 Faker 好得多,而且會發展得更快。”

最后,屏幕前的你使用過 Faker 項目嗎?你要是原開發者會放棄這個項目嗎?

參考鏈接:

https://marmelab.com/blog/2020/10/21/sunsetting-faker.html

?免費的開源軟件那么“香”,為何他們寧愿花錢去買軟件??程序員門檻再被“神器”降低:只要會英文,就能寫代碼!?真假黃仁勛疑云?英偉達推出全球首個元宇宙平臺

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/4/159313.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息