如果我們想確保擁有最好的必要工具,那么在 wordpress 中構(gòu)建工具、主題、插件和應(yīng)用程序需要各種不同的東西。
如果您詢問 10 個(gè)不同的人他們更喜歡哪種工具,您不僅會得到各種各樣的答案(從 IDE 到依賴管理應(yīng)用程序再到構(gòu)建工具),而且您還會給出各種各樣的答案不同的答案,所有這些都提供了您可能需要的類似功能。
例如,您可能讀到的一些內(nèi)容包括:
- 咕嚕聲
- Bower
- 作曲家
- 代碼包
- JSLint
- …以及更多
這甚至沒有涉及 Web 服務(wù)器、數(shù)據(jù)庫系統(tǒng)和 PHP 版本等主題的表面。所有這些都是應(yīng)該討論的重要主題,但在他們自己的帖子中。
使用 WordPress 時(shí),與高效完成工作相關(guān)的一些不可協(xié)商的事項(xiàng)包括以下內(nèi)容:
- An IDE
- 在調(diào)試器中
- 代碼檢查和縮小
- 版本控制
- 部署工具
與大多數(shù)事情一樣,開發(fā)人員對于他們喜歡使用的工具以及為什么喜歡使用這些工具有自己特定的選擇。
在本文中,我將分享一些我喜歡使用并且在我的專業(yè) WordPress 開發(fā)工作中發(fā)現(xiàn)有用的工具;不過,我想澄清一下,這并不是您應(yīng)該使用哪些工具的明確列表。
相反,請將其視為有關(guān)質(zhì)量開發(fā)的質(zhì)量工具的構(gòu)成示例的指南。如果您對所使用的工具集感到滿意,那就太好了!但是,如果您正在尋找可以幫助您以更有效的方式完成工作的東西,那么也許這些將幫助您走上正確的道路。
在開始之前,我確實(shí)想分享一下我使用 OS X,因此我的許多建議將基于該平臺。然而,我使用的許多應(yīng)用程序都有 Windows 和 Linux 對應(yīng)版本以及開源且跨平臺可用的工具。
1. IDE
擁有一個(gè)用于編寫代碼的 IDE 至關(guān)重要。當(dāng)然,一些開發(fā)人員更喜歡像 TextEdit 或 Notepad++ 這樣簡單的東西。給他們更多的力量!但是,如果您正在尋找具有語法突出顯示、代碼完成、插件支持、S/FTP 集成甚至版本控制集成的功能,那么有多種工具可供使用。
就個(gè)人而言,我選擇的 IDE 是 Coda 2。
這個(gè)特定的 IDE 導(dǎo)致 WordPress 開發(fā)中的意見不一。有些人喜歡 Atom,有些人喜歡 Sublime Text,有些人喜歡 Vim,有些人喜歡 PHPStorm,他們都有自己的優(yōu)勢。
就我個(gè)人而言,我喜歡 Coda 2,因?yàn)樗峁┝顺掷m(xù)的支持、更新、應(yīng)用程序的移動版本以及總體外觀和感覺。我喜歡他們在支持 WordPress 等平臺方面所取得的進(jìn)展,并且內(nèi)置代碼完成功能也很棒。
當(dāng)然,其他 IDE 也提供完全相同的功能;但是,如果您選擇使用 Coda,這里有一些我更喜歡用于 WordPress 開發(fā)的插件。排名不分先后:
- Coda 2 的 WordPress 模式
- PHP 文檔塊生成器
- 白化
當(dāng)然,您還可以安裝很多其他組件。
對于您推薦的其他 IDE,請務(wù)必查看結(jié)論,了解我們希望如何將它們合并到這篇特定帖子的評論源中。
2. 調(diào)試器
調(diào)試器是任何開發(fā)人員工具箱中最強(qiáng)大的工具之一。對于那些不熟悉的人來說,這個(gè)軟件允許您在運(yùn)行時(shí)通過程序正在執(zhí)行的操作來監(jiān)視源代碼到底在做什么。
這使您能夠:
- 查看哪個(gè)函數(shù)正在觸發(fā)
- 查看各個(gè)變量的值
- 跳過您想要避免的某些函數(shù)
- 進(jìn)入您想要查看的功能(例如 WordPress 核心功能)
- …還有更多
許多 IDE(例如 PHPStorm)都帶有內(nèi)置調(diào)試器。但如果您選擇使用本身不包含調(diào)試器的其他 IDE,那么我強(qiáng)烈推薦 Codebug。
這是一個(gè)優(yōu)雅且易于使用的調(diào)試器,可為您提供本機(jī)調(diào)試器的所有功能,但在獨(dú)立應(yīng)用程序中。將其添加到您的武器庫中是非常值得的。
警告:如果您不熟悉調(diào)試和/或不確定系統(tǒng)如何工作,請務(wù)必閱讀文檔。它實(shí)際上相對容易學(xué)習(xí),但確實(shí)有其學(xué)習(xí)曲線。
不過,一旦您習(xí)慣了使用調(diào)試器,您就會想知道沒有調(diào)試器您是如何生活的。
3. 代碼檢查和縮小工具
代碼檢查和縮小工具可能是兩個(gè)獨(dú)立的主題,但是現(xiàn)在,它們是如此緊密地結(jié)合在一起,以至于我認(rèn)為它們值得放在一起。
檢查
首先,對于那些不熟悉的人來說,linting 基本上是確保您的代碼(在本例中為 JavaScript 代碼)符合特定標(biāo)準(zhǔn)的過程。也就是說,它沒有使用任何不良做法。
根據(jù)維基百科:
lint 最初是一個(gè)特定程序的名稱,該程序在 C 語言源代碼中標(biāo)記了一些可疑且不可移植的結(jié)構(gòu)(可能是錯(cuò)誤)。該術(shù)語現(xiàn)在一般適用于標(biāo)記以任何計(jì)算機(jī)語言編寫的軟件中的可疑使用情況的工具。
在我們的例子中,我們有 JSLint 和 JSHint 等工具,可以讓我們用 JavaScript 代碼來做到這一點(diǎn)。
您肯定也可以找到其他語言的 linting,但可以說,您在 WordPress 中找到 linting 的最常見情況是 JavaScript。您還可以在本文開頭提到的任何構(gòu)建工具中找到此功能。
縮小
縮小是指采用一種語言(無論是 CSS、Sass、LESS、JavaScript 等),然后刪除所有空格、長變量名等,將其變成更緊湊的文件的過程。 p>
這個(gè)想法不是創(chuàng)建混淆的代碼,而是創(chuàng)建輕量級文件,您可以在生產(chǎn)環(huán)境中為瀏覽器提供服務(wù),以便您的網(wǎng)站加載速度更快,因?yàn)樾枰螺d的內(nèi)容更少。
還有串聯(lián)的概念超出了本文的范圍,但串聯(lián)背后的想法是所有縮小的腳本和樣式表將組合成一個(gè)文件,這樣瀏覽器只需要發(fā)出兩個(gè)請求 – 一個(gè)對于每個(gè)文件。
無論如何,上述所有工具還將負(fù)責(zé)提供腳本和樣式的縮小(和串聯(lián)),并將它們輸出到您選擇的目錄中。
4.版本控制
每當(dāng)您在代碼庫上工作時(shí),無論是與您自己還是與團(tuán)隊(duì)一起工作,確保維護(hù)軟件版本的一致總是有幫助的。
簡而言之,版本控制是一種將代碼提交到存儲庫的方法,這樣,當(dāng)您或您的團(tuán)隊(duì)成員進(jìn)行更改時(shí),最新版本的代碼將得到維護(hù),以便您可以看到歷史記錄已完成的操作,并且如果出現(xiàn)問題,您可以回滾到時(shí)間線中的某個(gè)點(diǎn)。
就什么軟件最適合版本控制而言,有 Subversion、Git 和 Mercurial 等工具。
如果您習(xí)慣在 WordPress 經(jīng)濟(jì)中工作,那么您很可能熟悉 Subversion,因?yàn)楹诵氖褂盟鼇砭S護(hù)系統(tǒng)中的更改。
同樣,如果您曾經(jīng)構(gòu)建并發(fā)布過插件,那么您必須使用 Subversion 來提交代碼、標(biāo)記您的版本等等。
但是 Git 正變得越來越流行。可以說,兩個(gè)最受歡迎的 Git 托管網(wǎng)站是 GitHub 和 Bitbucket。無論如何,如果您正在尋找可靠的 Git 客戶端,那么我強(qiáng)烈推薦 Tower 2。
雖然這是我選擇的客戶,但還有很多其他選擇。最終,重點(diǎn)是確保您將代碼添加到源代碼管理中,您正在與您喜歡的客戶合作,并且如果可能的話,您已將其連接到部署系統(tǒng),以便每次您推送特定功能或要求時(shí),客戶用于審查產(chǎn)品的環(huán)境將使用新代碼進(jìn)行更新。
5.部署工具
每當(dāng)您致力于構(gòu)建 WordPress 項(xiàng)目(或任何軟件項(xiàng)目)時(shí),我們都遵循的標(biāo)準(zhǔn)、高級工作流程是:
- 一個(gè)開發(fā)環(huán)境,我們在其中有一臺本地計(jì)算機(jī)進(jìn)行開發(fā)。
- 我們在其中部署代碼的臨時(shí)環(huán)境,以便客戶可以在我們按照要求進(jìn)行工作時(shí)對項(xiàng)目進(jìn)行錘煉。
- 然后是生產(chǎn)環(huán)境,這是最終項(xiàng)目的部署位置。
此時(shí),將部署系統(tǒng)連接到源代碼管理軟件并不罕見,這樣每次將新更新提交到源代碼存儲庫時(shí),都會發(fā)布項(xiàng)目的最新版本.
幸運(yùn)的是,有許多出色的工具可用于設(shè)置自動化部署。
代碼飛船
Codeship 將自己定位為持續(xù)集成服務(wù),可以執(zhí)行必要的腳本來構(gòu)建、測試和部署您的項(xiàng)目,所有這些都可以在 Git 提交中完成。
這意味著您可以在部署期間執(zhí)行多個(gè)腳本來觸發(fā),并在將任何內(nèi)容投入生產(chǎn)之前接收通知。
根據(jù)您的團(tuán)隊(duì)和/或項(xiàng)目的規(guī)模,Codeship 是一個(gè)很好的解決方案,特別是對于大型組織來說由業(yè)主、經(jīng)理、項(xiàng)目經(jīng)理等組成。
也就是說,我個(gè)人在一個(gè)兩人團(tuán)隊(duì)中使用過這個(gè)工具,并且對結(jié)果很滿意。
部署機(jī)器人
DeployBot 以前名為 Dploy.io。與 Codeship 類似,DeployBot 旨在獲取提交到 Git 存儲庫的源代碼并將其部署到您選擇的環(huán)境中。
它還能夠運(yùn)行腳本、構(gòu)建和編譯代碼,并根據(jù)您提供的配置將其部署到不同的環(huán)境。
當(dāng)然,這些并不是所有可用的部署工具,但您可能會找到以下兩個(gè)以專業(yè)軟件身份工作時(shí)。對于您可能嘗試做的事情,它們中的每一個(gè)都有自己的優(yōu)點(diǎn)和缺點(diǎn);但是,由于這不是一篇評論或比較文章,因此我將把該練習(xí)留給您來確定最適合您的工作流程。
結(jié)論
正如簡介中提到的,這些工具只不過是關(guān)于從哪里開始使用一些 WordPress 開發(fā)工具的建議。我知道你們中的許多人對于上述每個(gè)標(biāo)準(zhǔn)的使用都有自己的偏好。
話雖如此,我希望大家能夠在評論中分享您喜歡的工具以及為什么喜歡使用它們。這樣,當(dāng)前和未來的讀者不僅可以獲得包含推薦的帖子,還可以獲得提供替代方案的評論。
畢竟,發(fā)展不僅僅是解決問題。這是為了找到一些工具,讓我們在每天花八個(gè)小時(shí)左右的時(shí)間在計(jì)算機(jī)前工作時(shí)也能感到愉快。