我在 mac 上編寫 wordPress/ target=_blank class=infotextkey>WordPress 插件,這些是我的工具列表。
- 來源:https://linux.cn/article-12337-1.html
- 作者:David Gewirtz
- 譯者:Xingyu.Wang
(本文字?jǐn)?shù):4974,閱讀時長大約:8 分鐘)
根據(jù) 2020 年 Stack Overflow 開發(fā)者調(diào)查報告 ,在 Mac 上工作的編碼者(27.5%)比在 Linux 上工作的編碼者(26.6%)要多一點。相比之下,使用 windows 作為開發(fā)機(jī)器的開發(fā)者數(shù)量幾乎是其兩倍(45.8%)。多年來,我在不同的平臺之間跳來跳去,但我發(fā)現(xiàn)自己經(jīng)常回到 Mac 上。
事實上,我從 Mac 專用的應(yīng)用程序中獲得了很多生產(chǎn)力,尤其是用于視頻制作的 Final Cut Pro X。我喜歡能夠在同一臺機(jī)器上運行 Windows、Linux 和 Mac 應(yīng)用程序,而這只有在 Mac 上才能實現(xiàn)(我將在下文中詳談)。雖然 Windows 也提供了一個強(qiáng)大的命令行環(huán)境,但我喜歡擁有一個完全是 Linux 風(fēng)格的命令行,并且 Mac 上集成良好的圖形工具對其進(jìn)行了完整補(bǔ)充。
在本文中,我將向你展示我使用的工具。許多是跨平臺的,而另一些是 Mac 專用的。雖然我過去曾開發(fā)過 Mac 應(yīng)用和 IOS 應(yīng)用,但我現(xiàn)在的開發(fā)工作完全是針對 Web 的。我維護(hù)了 10 個開源的 WordPress 插件,包括一個支持了 10000 多個非營利組織的捐款插件和一個支持了 20000 多個網(wǎng)站的網(wǎng)站隱私插件。
雖然我過去用過很多編程語言(也寫過自己的編程語言),但我目前的項目主要涉及 php 和 JAVAScript,并擅長 css、HTML 和 SQL(及一些框架)。為了創(chuàng)建和維護(hù)這些代碼,我使用了下面所示的各種工具。在本篇中,我將向你展示我安裝的工具。在以后的文章中,我將向你展示和深入介紹有助于完成工作的云服務(wù)。
就這樣,讓我們開始吧。
集成開發(fā)環(huán)境:PhpStorm
關(guān)于代碼編輯和開發(fā)環(huán)境的話題,引發(fā)的宗教式的爭論我都數(shù)不清了。有些程序員堅持走老路,只依靠命令行和 vi、emacs 等編輯器。有些程序員喜歡輕量級的文本編輯器,有些則喜歡可擴(kuò)展性更強(qiáng)的編輯器,比如 vi 和 emacs。其他人則喜歡更加可擴(kuò)展的編輯器,比如 Atom 和 Sublime Text。還有一些編碼者,包括我自己,喜歡完整的集成開發(fā)環(huán)境,比如 PhpStorm、Visual Studio Code 和 Xcode(主要是它的 Mac 和 iOS 原生開發(fā)工具)。
我選擇的武器一直是 PhpStorm 。我已經(jīng)使用它多年了。它有一個優(yōu)秀的集成調(diào)試環(huán)境,可以進(jìn)行本地和遠(yuǎn)程調(diào)試。它還集成了我日常使用的各種功能,從它自帶的終端窗口到文件同步,再到版本控制和逐行文件歷史記錄。另外,它還有豐富的插件可供選擇,可以擴(kuò)展和提升編碼體驗。
我最喜歡的一些插件包括:
- Rainbow Brackets(彩虹括號):一個很棒的插件,它不僅能用行匹配括號,還能用顏色來匹配。它可以非常容易地看到哪些代碼屬于哪里。
- String Manipulation(字符串操作):各種各樣的字符串操作、大小寫轉(zhuǎn)換等等。
- WordPress:語法格式化和 WordPress 式的函數(shù)格式化,以及對 WordPress 掛鉤的支持。對于任何一個 WordPress 插件的編碼者來說都是必備的。
本地環(huán)境:Local
在做 Web 開發(fā)時,通常最好有一個本地開發(fā)棧。 Local 就是這樣一個棧。它提供了 Nginx 或 Apache、MySQL、帶有 Xdebug 的 PHP 安裝包,以及其他一些資源,最重要的是它帶有一個隧道,這樣基于互聯(lián)網(wǎng)的資源就可以訪問本地環(huán)境進(jìn)行編碼和測試,內(nèi)置了 SSL 集成,以及 MailHog —— 它可以攔截電子郵件,用于基于電子郵件的應(yīng)用測試。哦,而且是免費的。
快速編輯:Sublime Text
我之前就提到過 Sublime Text ,很多編碼者都把它作為主要的開發(fā)環(huán)境。它幾乎支持一系列傳說中的插件和附加組件。當(dāng)我想在 PhpStorm 固有的項目結(jié)構(gòu)之外編輯項目文件時,我使用 Sublime Text 作為一個快速編輯器。它的速度快,反應(yīng)靈敏,而且相當(dāng)有特點。
提交文件到倉庫:SmartSVN
WordPress 插件庫(所有通過的插件都在這里提供給 WordPress 用戶)不使用 Git 或 Github,而是使用 SVN 源碼控制系統(tǒng)。我覺得 SVN 的命令行很煩人,所以我使用一個叫做 SmartSVN 的圖形化用戶界面來將我的文件發(fā)送到倉庫中。它大大降低了我在發(fā)布新版本時出錯的幾率。
瀟灑的命令行:iTerm2
雖然在我的開發(fā)工具箱中,我更喜歡使用 GUI 界面來實現(xiàn)大部分功能,但我并不害怕在適當(dāng)?shù)臅r候使用命令行。雖然只使用標(biāo)準(zhǔn)的 MacOS 終端也是可以的,但我更喜歡 iTerm2 。它提供了分屏、命令補(bǔ)全、粘貼歷史等功能。它還可以根據(jù)你的心情和項目進(jìn)行配置。
節(jié)省點擊的每一秒:Shortcut Bar
這款 Mac App Store 的小寶貝是一款方便的工具,可以捕捉快速項目,并從 Mac 的菜單欄訪問它們。我最大的用途是為我正在開發(fā)的各種網(wǎng)站創(chuàng)建管理頁面和用戶頁面的 快捷方式 。與其切換到瀏覽器窗口,然后調(diào)用書簽,我只需進(jìn)入菜單,選擇我要去的地方,就會打開瀏覽器。
這似乎是一個小功能,但當(dāng)每天在 IDE 和瀏覽器之間切換數(shù)千次時,這些節(jié)省下來的鼠標(biāo)動作確實不少。因為快捷欄允許分組,所以我還將本地和遠(yuǎn)程服務(wù)器測試位置的鏈接進(jìn)行了分組。
Mac 上的 Windows 和 Linux:Parallels Desktop
因為我是做 Web 開發(fā)的,我必須在基于 Windows 的瀏覽器上檢查我的代碼,這意味著我需要啟動 Windows 10 來測試新的 Edge、Chrome、Firefox 和 —— 請原諒我,還有 IE11。是的,還有用 IE11 的用戶。
我在本文的介紹中提到了 Parallels Desktop 。我發(fā)現(xiàn)在同一臺機(jī)器上運行 Windows、Mac 和 Linux 的能力在某些情況下是非常有用的。也就是說,我一直在 樓上辦公室的 Mac 上運行 Windows,它是我的速度和容量最大的一臺機(jī)器。那臺機(jī)器也是我用于視頻制作的機(jī)器。
我的主要開發(fā)機(jī)器其實是在樓下,就在沙發(fā)旁邊。這要追溯到我的狗狗還小的時候,我在辦公室工作的時候,它經(jīng)常會覺得孤獨和害怕。現(xiàn)在,我在工作時,它趴在我的腿上是相當(dāng)愉快的,我已經(jīng)建立了一個完整的工作站,可以讓我坐在客廳里,與鍵盤和狗共享我的膝蓋。
那臺機(jī)器是一臺 2013 年的 i7 iMac ,內(nèi)存 32GB。它是開發(fā)的理想之選,但它的速度實在不夠快,無法滿足多個 4K 視頻流的需求。也不足以快到真正成功地托管 Windows 桌面。這讓我想到了……
連接到遠(yuǎn)程機(jī)器:屏幕共享和微軟遠(yuǎn)程桌面
盡管我的開發(fā)機(jī)器在樓下,而我的視頻制作機(jī)器在樓上,但無論我在哪里,我都可以在其中任何一臺機(jī)器上工作。我只需使用 MacOS 內(nèi)置的“屏幕共享”應(yīng)用來連接到遠(yuǎn)程機(jī)器。
當(dāng)我想從樓下的開發(fā)機(jī)器連接到 Windows 時,我使用“ 微軟遠(yuǎn)程訪問 ”。這是從 Mac OS 應(yīng)用商店免費下載的,它提供了一個進(jìn)入我的 Windows 10 機(jī)器的完整的遠(yuǎn)程界面。請注意,如果你打算使用“微軟遠(yuǎn)程訪問”,你需要運行 Windows 10 Pro。Windows Home 不支持遠(yuǎn)程訪問。
哦,如果你想知道為什么這套環(huán)境似乎沒有一個用于移動環(huán)境中,在咖啡店編程的組件,這很簡單:如今的大流行病。一旦明確我所有的編碼工作都將在家里完成,我就把我的開發(fā)工作整合到一臺容量不錯的固定機(jī)器上,并針對機(jī)器之間的千兆以太網(wǎng)進(jìn)行了優(yōu)化。如果我們還生活在之前的“舊常態(tài)”中,我就會有一個更以云為中心的實現(xiàn)。我很懷念咖啡店。
管理 MySQL 數(shù)據(jù)的整潔界面:Sequel Pro
我的代碼要做大量的 SQL 操作。因此,我需要能夠查看已經(jīng)存儲到數(shù)據(jù)庫中的內(nèi)容。對我來說,最簡單、最快速的方法不是 PhpMyAdmin,而是一個叫 Sequel Pro 的 Mac 本地應(yīng)用(很奇妙,它的圖標(biāo)上把煎餅和數(shù)據(jù)存儲混為一體)。
我最常用的方式是打開一個數(shù)據(jù)庫表,搜索 “value contains” 或 “option_name contains”,然后查找結(jié)果。它的速度很快,并且允許我在開發(fā)過程中對數(shù)據(jù)進(jìn)行操作。我應(yīng)該指出,PhpStorm 也有一個數(shù)據(jù)庫瀏覽器,但我發(fā)現(xiàn) Sequel Pro 對我來說更有效率。
一個不太復(fù)雜的 SFTP 客戶端:Forklift
我花了很長時間才改掉了通過命令行和 SSH 隧道使用 SFTP 的習(xí)慣。而 Forklift 是一個很好的替代品。它保留了一個網(wǎng)站和登錄信息的列表,支持加密,并提供了一個傳統(tǒng)的拖放界面來批量移動文件。
強(qiáng)大的應(yīng)用自動化:Keyboard Maestro
與 Final Cut Pro X 一樣, Keyboard Maestro 是讓我繼續(xù)使用 Mac 的專用軟件工具之一。我在 2011 年首次購買了 Keyboard Maestro,此后我一直使用它來制作各種專業(yè)腳本。
它是一個非常強(qiáng)大的跨應(yīng)用腳本工具,也非常容易使用。我經(jīng)常寫一些特殊用途的腳本來運行一個原本需要很長時間的任務(wù)。我的一些腳本是非常強(qiáng)大的,可以跨多個應(yīng)用程序。其他的腳本,比如截圖中的 Stripe 填充測試,只做一件事,一遍又一遍。
我們來談?wù)勥@個問題。在為我的捐贈插件開發(fā) Stripe 支付網(wǎng)關(guān)時,我必須發(fā)起測試支付,大概有上千次。在我編碼、測試和調(diào)試的過程中,我不得不用相同的測試數(shù)據(jù)填寫相同的信用卡字段,一遍又一遍。Keyboard Maestro 中的一個簡單的腳本為我完成了所有這些工作。我不需要為每一次測試手工填寫數(shù)據(jù),而是讓 Keyboard Maestro 幫我完成。
特定用途的快速搜索:Alfred
Alfred 是我的生產(chǎn)力家族的新成員。它會彈出一個命令欄,有點像 Spotlight,但增加了功能。你可以創(chuàng)建工作流來完成相對復(fù)雜的任務(wù),但到目前為止,我的主要用處是四個自定義搜索。當(dāng)我按下 Alt-Space 時,就會彈出 Alfred 的輸入欄。
如果我鍵入 “codex”,它就會把后面的任何內(nèi)容作為搜索字符串來在 WordPress 開發(fā)者文檔站 codex 上搜索。輸入 “plugin”,會搜索 WordPress 插件庫。輸入 “zdme”,會搜索 Z.NET 中我寫過的帶有要搜索的字符串的文章。我經(jīng)常使用這個方法在文章中放置鏈接。現(xiàn)在,這些可能看起來很簡單,你可以設(shè)置 Chrome 瀏覽器來進(jìn)行自定義搜索,但同樣,與快捷欄一樣,這可以節(jié)省鼠標(biāo)移動和按鍵。如果我需要查看 WordPress 函數(shù)的定義,只需輕點一下按鍵,就能得到它,而不需要動用鼠標(biāo)。
你覺得怎么樣?
那么,你看到了,這些是我的主要開發(fā)工具,可以幫助我完成工作。那你呢?你是編程人員嗎?如果是的話,什么軟件工具能幫助你提高工作效率?請在下面的評論中告訴我們。
via: https://www.zdnet.com/article/one-developers-favorite-mac-coding-tools-for-php-and-web-development/
作者: David Gewirtz 譯者: wxy 校對: wxy
本文由 LCTT 原創(chuàng)編譯, Linux中國 榮譽推出