網站開發人(people)員現在(exist)沒有時(hour)間養成這(this)些習慣

發布時(hour)間:2020-06-14 20:19:43 浏覽次數:11

這(this)些結果可能會破壞我(I)們(them)的(of)信心,但實際上(superior),可以(by)通過适當的(of)開發實踐來(Come)解決這(this)些問題。 這(this)裏有10條值得您投資的(of)好習慣,因此您可以(by)輕松編寫更幹淨,更智能的(of)代碼。 讓我(I)們(them)現在(exist)開始培養這(this)些習慣!
  1.編寫用(use)戶友好的(of)代碼
  永遠記住,您不(No)僅在(exist)爲(for)機器編寫代碼,而且還在(exist)爲(for)自己的(of)未來(Come)寫代碼。 因此,編寫可讀代碼很重要(want)。 實際上(superior),編程就像寫一(one)首好詩。 語氣應保持一(one)緻,詞語應具有描述性,句子應有條理。
  這(this)裏是(yes)一(one)些編寫友好代碼的(of)技巧。
  遵循一(one)緻的(of)命名約定
  例如,如果将下劃線用(use)作(do)私有變量的(of)首字母,則在(exist)其餘代碼中應堅持使用(use)下劃線。
  如果您一(one)起工作(do),請在(exist)任何人(people)接觸代碼之前先讨論命名約定。
  但是(yes),大(big)多數編程語言現在(exist)可能都有自己的(of)标準命名約定,可以(by)由核心語言本身或由社區定義(例如PHP-FIG)。 因此,在(exist)大(big)多數情況下,您不(No)必創建自己的(of)命名約定。
  相反,您可以(by)使用(use)所謂的(of)linter或代碼嗅探器來(Come)幫助執行和(and)修複代碼,使其符合這(this)些标準。 以(by)下是(yes)編程語言中一(one)些常用(use)的(of)索引:
  PHP:PHPCS
  紅寶石:RuboCop
  Shell或Bash:ShellCheck
  ESLint和(and)JSHint
  泰勒:裁縫和(and)SwiftLint
  描述性變量/方法名稱
  變量和(and)方法名稱應完美地(land)描述代碼的(of)功能。 例如,諸如Sort_PT()之類的(of)不(No)常見縮寫可能會造成混淆:PT是(yes)什麽意思? 如果您在(exist)第二次檢查中無法回答此問題,請将該名稱優化爲(for)Sort_PostType()以(by)便更好地(land)理解。
  有一(one)個(indivual)例外。 大(big)多數程序員已經熟悉術語“ ID”,因此我(I)們(them)始終可以(by)以(by)縮寫形式“ ID”定義變量。
  縮進和(and)換行
  壓痕是(yes)神奇的(of)! 使用(use)一(one)些簡單的(of)Tab鍵,您可以(by)顯示整個(indivual)代碼結構并編輯代碼,同時(hour)清楚地(land)了(Got it)解代碼的(of)工作(do)方式。
  對于(At)換行符,當同一(one)行上(superior)的(of)兩個(indivual)代碼執行不(No)同的(of)内容時(hour),請使用(use)它。 例如,最好不(No)要(want)将CSS屬性鏈接在(exist)一(one)行上(superior),這(this)會使事情變得複雜。
  2.考慮組織
  除了(Got it)更簡潔的(of)代碼外,代碼結構和(and)組織還有助于(At)解決可訪問性問題。 将代碼分組以(by)便于(At)修改很重要(want)(如果需要(want)上(superior)下滾動多次才能找到(arrive)受影響的(of)部分,則需要(want)處理結構)
  另外,不(No)要(want)将所有代碼都放在(exist)一(one)個(indivual)腳本中。 盡管在(exist)文件中包含8000行以(by)上(superior)的(of)代碼似乎很方便,但是(yes)在(exist)嘗試重新調用(use)方法名稱時(hour),調試是(yes)一(one)個(indivual)噩夢。 總是(yes)想想改變有多容易。
  最佳實踐是(yes)根據代碼的(of)主要(want)功能(例如管理器,界面,動畫,擴展等)将代碼分成不(No)同的(of)文件。
  隻要(want)有可能,請确保該語言僅用(use)于(At)特定目的(of)。 如果要(want)使用(use)CSS3編寫動畫效果,除非有充分的(of)理由,否則不(No)要(want)編寫jQuery動畫效果。 如果這(this)樣做,請在(exist)CSS文件中注釋掉該異常。
  3.編碼前計劃

在(exist)按下第一(one)個(indivual)鍵之前,至關重要(want)的(of)是(yes)确切地(land)知道要(want)做什麽。 在(exist)編程領域,預先計劃很重要(want)。 編寫固定的(of)導航菜單很容易,但是(yes)如果菜單需要(want)響應并且同時(hour)當訪客向下滾動頁面時(hour)又能夠使其最小化,該怎麽辦?
  在(exist)編寫代碼時(hour)如果沒有清晰的(of)流程,通常會導緻重試,失敗和(and)沮喪。
  計劃您的(of)代碼
  因此,與其并行解決問題和(and)進行編程,不(No)如先計算過程然後編寫解決方案,這(this)是(yes)更好的(of)選擇。 首先列出(out)了(Got it)常規步驟(這(this)裏是(yes)一(one)個(indivual)示例):
  使用(use)指導作(do)爲(for)響應框架。
  創建一(one)個(indivual)導航菜單。
  将.navbar-fixed-top添加到(arrive)菜單。
  當用(use)戶向下滾動超過200像素時(hour),創建一(one)個(indivual)jQuery腳本來(Come)調整菜單大(big)小。
  如果用(use)戶滾動到(arrive)頂部,請再次調整菜單大(big)小。
  疑難排解
  此時(hour),您應該找到(arrive)其他(he)潛在(exist)問題,例如如何根據菜單大(big)小來(Come)調整站點徽标和(and)菜單标題的(of)大(big)小,或者是(yes)否需要(want)同時(hour)調整下拉菜單的(of)大(big)小, 還是(yes)您需要(want)動态檢測而不(No)是(yes)固定檢測。 一(one)旦您了(Got it)解了(Got it)這(this)一(one)點,完成菜單就是(yes)小菜一(one)碟。
  4.編寫管理代碼
  相信我(I),您不(No)想逐行更改數百個(indivual)變量。 我(I)已經連續一(one)年了(Got it)。 這(this)是(yes)一(one)次不(No)起眼的(of)經曆,從那時(hour)起,我(I)學會了(Got it)編寫盡可能少的(of)手動更改。
  如何實現呢? 使用(use)數組。 它非常适合存儲多個(indivual)變量,您可以(by)輕松地(land)使用(use)for循環或每種方法訪問這(this)些變量。
  有更多動态方式可以(by)以(by)特定語言(例如c#的(of)List和(and)LINQ)添加,排列和(and)檢索數據,因此請确保定期檢查更好的(of)功能,庫或插件以(by)實現更智能的(of)數據管理。
  最後,爲(for)了(Got it)避免不(No)斷修改代碼的(of)内容,請編寫高度獨立的(of)代碼,當應用(use)新功能或更改時(hour),這(this)些代碼不(No)會破壞整個(indivual)系統。 這(this)稱爲(for)松耦合。 經過優化後,開發人(people)員隻需要(want)在(exist)一(one)個(indivual)類中調整代碼,而無需在(exist)三個(indivual)類中調整新功能。
  5.防止過度特征
  随着我(I)們(them)技能的(of)成熟,我(I)們(them)傾向于(At)開發更複雜的(of)解決方案來(Come)滿足更廣泛的(of)需求。 這(this)是(yes)增長的(of)一(one)個(indivual)好兆頭,但要(want)小心,因爲(for)您可能會進入另一(one)個(indivual)陷阱,過度使用(use)對該項目完全不(No)必要(want)的(of)功能。
  在(exist)開發過程中,始終提醒自己項目的(of)主要(want)目标,并且僅添加實現目标的(of)功能非常重要(want)。 如果您知道确切的(of)集合大(big)小,請使用(use)數組。 如果List函數可以(by)按所需方式檢索數據,則不(No)要(want)使用(use)高級LINQ。
  當您幾乎不(No)使用(use)該功能時(hour),爲(for)什麽要(want)開發一(one)個(indivual)插件? 您可以(by),但這(this)并不(No)意味着您應該這(this)樣做。 不(No)要(want)浪費你的(of)時(hour)間。 請記住,完成項目最耗時(hour)的(of)部分尚未出(out)現! 現在(exist),進行調試!
  6.學習更聰明地(land)調試
  有代碼的(of)地(land)方就有錯誤。 沒有錯誤代碼的(of)解決方案是(yes)不(No)可能的(of),因此非常歡迎調試技巧。 這(this)種古老的(of)反複試驗方法可能有效,但速度很慢。 太慢了(Got it)。 另外,由于(At)調試器是(yes)爲(for)您開發的(of),爲(for)什麽還要(want)折磨自己?
  調試工具
  該浏覽器現在(exist)配備了(Got it)功能非常強大(big)的(of)開發工具或DevTools(簡稱爲(for)開發工具),它們(them)具有錯誤檢測,斷點設置,表達式跟蹤,性能檢查等功能,所有這(this)些功能都可以(by)方便調試。
  像AptanaStudio3和(and)XamarinStudio這(this)樣的(of)IDE甚至發布了(Got it)自己強大(big)的(of)内置調試器,因此,花時(hour)間學習它們(them)可以(by)使您的(of)生(born)活更輕松。
  但是(yes),調試器将無法完全理解您的(of)代碼。 如有疑問,可以(by)将log函數放入代碼中,例如console.logfor,并确保它适用(use)于(At)變量集成(而不(No)是(yes)将變量名重新輸入爲(for)字符串或直接輸入“ itworks!”)。  Web上(superior)充滿了(Got it)每種語言的(of)更高級和(and)特定的(of)調試方法。

7.尋找更強大(big)的(of)編輯器
  正确的(of)編輯可以(by)幫助您增加知識并加速項目的(of)完成。 無論您有多少經驗,都強烈建議您使用(use)代碼完成的(of)編輯器,例如SublimeText,VisualStudio代碼和(and)AptanaStudio3。
  此功能不(No)僅對初學者識别和(and)學習語法很有幫助,而且專業人(people)員還可以(by)使用(use)它來(Come)檢查可能更好的(of)代碼或解決方案。 請注意,大(big)多數IDE僅支持特定語言的(of)代碼完成,因此請尋找正确的(of)代碼完成。
  功能過濾
  例如,我(I)喜歡MonoDevelop的(of)是(yes)它的(of)代碼模闆功能。 使用(use)自定義快捷方式,您可以(by)将自定義代碼模闆從commonswitch語句輸出(out)到(arrive)成熟的(of)管理器腳本。 這(this)對于(At)大(big)型項目非常有用(use),因此當您尋找編輯器時(hour),請優先使用(use)此功能。
  其他(he)需要(want)注意的(of)基本功能:
  調試器
  正則表達式替換
  巨集
  版本控制支持
  數據庫支持
  将編輯
  布局編輯器
  所見即所得編輯器
  8.做版本控制
  有時(hour)您會犯一(one)個(indivual)巨大(big)的(of)編程錯誤,并想返回到(arrive)早期版本的(of)代碼。 現在(exist),如果您的(of)錯誤涉及代碼庫中的(of)多個(indivual)文件,而其中一(one)些文件是(yes)在(exist)幾天甚至幾個(indivual)月前被修改的(of),該怎麽辦?
  恢複原始狀态,并在(exist)解決錯誤的(of)同時(hour)一(one)點一(one)點地(land)更新代碼? 這(this)适得其反,爲(for)什麽版本控制系統非常重要(want)。
  版本控制系統
  在(exist)衆多版本控制軟件中,Git是(yes)最受歡迎的(of)軟件,它提供了(Got it)大(big)量的(of)在(exist)線文檔。 使用(use)Git,您可以(by)保留盡可能多的(of)修訂版本,将文件分支出(out)以(by)進行一(one)些代碼實驗,跟蹤最後更改的(of)代碼部分,并在(exist)需要(want)時(hour)恢複到(arrive)原始狀态。
  感覺過度嗎? 也許是(yes)因爲(for)它最初是(yes)爲(for)團隊編程而開發的(of),但對于(At)長期的(of)個(indivual)人(people)項目也很完美。 您可能會猶豫,因爲(for)即使對于(At)GUI版本,Git本身也有很多東西要(want)學習。 但這(this)是(yes)遲早的(of)事情(因此,您最好使其更快),以(by)及Internet上(superior)的(of)許多教程和(and)指南來(Come)幫助簡化學習過程。
  9.沒有其他(he)原型,請完成當前項目
  冗長的(of)代碼編寫和(and)調試将消耗個(indivual)人(people)的(of)體力和(and)精力。 我(I)們(them)中有些人(people)甚至更喜歡在(exist)工作(do)完成之前制作(do)原型。 盡管從長遠來(Come)看,原型制作(do)是(yes)一(one)種有益的(of)行爲(for),但是(yes)這(this)樣做對您避免工作(do)很有幫助。
  放松的(of)一(one)種更好的(of)方法是(yes)享受與工作(do),鍛煉,玩遊戲和(and)閱讀(也許嗎?)完全無關的(of)東西-您必須保持工作(do)與生(born)活的(of)平衡。 除了(Got it)原型。
  10.總是(yes)學習新事物
  在(exist)這(this)方面,您很快就會被淘汰。 即使在(exist)過去的(of)十年中,許多開發方法和(and)編程語言也被宣布爲(for)過時(hour)的(of)。 即使您從頂級大(big)學畢業并獲得了(Got it)該主題的(of)學位,也不(No)能确保您仍然具有就業條件。
  生(born)存和(and)發展的(of)唯一(one)途徑就是(yes)不(No)斷學習。 最好的(of)學習方法是(yes)什麽? 不(No)要(want)隻是(yes)閱讀,編程。 用(use)需要(want)更大(big)可伸縮性的(of)真實項目挑戰自己。 這(this)迫使您更有效地(land)思考。 探索并享受創作(do)過程。 在(exist)編程中,實踐不(No)能忽略。 您編寫的(of)程序越多,就可以(by)成爲(for)一(one)名優秀的(of)程序員。

網站建設

深圳市维缇网络科技有限公司提供網站建設,網站制作(do),網站開發,網站設計,網頁開發,網站定制,網頁設計等服務,幫助企業提高知名度和(and)影響力,提高企業網上(superior)競争力。我(I)們(them)的(of)客戶來(Come)自各行各業,爲(for)了(Got it)共同目标,工作(do)上(superior)密切配合,從創業型小企業到(arrive)行業有影響力的(of)網站建設公司,感謝他(he)們(them)對我(I)們(them)的(of)高要(want)求,感謝他(he)們(them)從不(No)同領域給我(I)們(them)帶來(Come)的(of)挑戰,讓我(I)們(them)的(of)團隊用(use)頭腦與智慧給客戶帶來(Come)驚喜。


閱讀推薦
關閉

在(exist)線留言