tft每日頭條

 > 科技

 > 程序員的所有編程代碼大全

程序員的所有編程代碼大全

科技 更新时间:2024-11-10 19:54:55

  程序員的所有編程代碼大全(程序員的10個編程小技巧)(1)

  編碼規範是成為一個優質程序員的重要一課,它是編程的樣式的模闆。這篇文章将介紹12中編程規範及技巧,相信學習之後你的代碼一定會提升一個檔次。

  首先我們要明确,為什麼要遵循編碼規範?遵循這樣的約定有什麼好處?

  1. 遵循規範可以寫出幹淨簡潔的代碼

  2. 可以代碼的質量

  3. 提升代碼的可讀性

  4. 使代碼維護更加容易

  代碼整潔之道一書的作者羅伯特曾經說過:

  “幹淨的代碼既簡單又直接。幹淨的代碼讀起來像寫得很好的散文。簡潔的代碼永遠不會掩蓋設計者的意圖,而是充滿清晰的抽象和直接的控制線。” -羅伯特·馬丁(Robert C. Martin)

  1.不要出現莫名其妙的數字

  很多程序員在實現功能的時候會分配一個沒有明确意義的數字,用于特定的目的,寫完這個數字後沒有即使去做注釋,然後過兩天當程序出現問題時,翻看代碼碰到這個數字,連自己都忘了它的意義。當程序需要固定的數值參與時,給予特定的名稱。

  案例

  //錯誤的示範:

  for(let i = 0; i i ){

  //do something

  }

  //正确的示範:

  let NUMBER_OF_STUDENTS= 50

  for(let i = 0; i NUMBER_OF_STUDENTS; i ){

  //do something

  }

  2.深度嵌套

  有些程序需要使用到無數次的嵌套循環,看着看着就暈了,這時可以将所有循環提取到單獨的函數中。

  假設有一個包含兩層嵌套的數組,想要拿到最後一個數組的值?一般情況下開發者都會使用嵌套循環,但不是最佳的辦法。可以嘗試使用函數的反複調用來完成操作執行相同操作的,這樣一來代碼重複性更小,更易于閱讀、重用性高。

  // 錯誤示範

  const array = [ [ [Shoaib Mehedi] ] ]

  array.forEach((firstArr) ={

  firstArr.forEach((secondArr) = {

  secondArr.forEach((element) = {

  console.log(element);

  })

  })

  })

  // 正确示範

  const array = [ [ [Shoaib Mehedi] ] ]

  const getValuesOfNestedArray = (element) = {

  if(Array.isArray(element)){

  return getValuesOfNestedArray(element[0])

  }

  return element

  }

  getValuesOfNestedArray(array)

  3.注釋

  注釋是一個老生常談的話題,很多人不重視,為了快速完成項目忽略注釋,導緻後期修改和複用出現很大問題,得不償失。

  4.避免創建大函數

  當一個函數或一個類需要實現的功能太多時,建議将其分成多個小的函數。

  假設我們需要加減兩個數字。我們可以用一個功能做到這一點。但是好的做法是将它們分為兩部分。如果有單獨的功能,則可以在整個應用程序中重複使用。

  // 錯誤示範

  const addSub = (a,b) = {

  // add

  const addition = a b

  // sub

  const sub = a-b

  // returning as a string

  return `${addition}${sub}`

  }

  //正确示範

  // add

  const add = (a,b) = {

  return a b

  }

  // sub

  const sub = (a,b) = {

  return a-b

  }

  5.重複代碼

  重複代碼也是常見的問題,如遇到此情況,将重複代碼提取到函數中。

  繼續用上面的第2點“深層嵌套”中的例子來舉例。

  // 錯誤示範

  const array = [ [ [Shoaib Mehedi] ] ]

  array.forEach((firstArr) ={

  firstArr.forEach((secondArr) = {

  secondArr.forEach((element) = {

  console.log(element);

  })

  })

  })

  // 正确示範

  const array = [ [ [Shoaib Mehedi] ] ]

  const getValuesOfNestedArray = (element) = {

  if(Array.isArray(element)){

  return getValuesOfNestedArray(element[0])

  }

  return element

  }

  getValuesOfNestedArray(array)

  6.變量命名

  變量命名也是有講究的,好的變量命名可以讓代碼更加通俗易懂,一般來說命名遵循以下标準,名稱以小寫字母開頭,之後的每一個單詞首字母都用大寫,比如駱駝的大小寫為camelCase

  函數和變量都必須遵循此規則。

  示例代碼:

  let camelCase = const thisIsCamelCase = () = { //so something}

  7.函數命名

  函數的命名基本與上述提到的變量命名規則基本一樣,但需要注意的是,命名盡量注意詳細,比如我們需要一個能夠獲取用戶銀行信息的功能,那麼要盡量将命名具體化,如下

  錯誤的示範:getUserInfo。

  正确的示範:getUserBankInfo

  8.命名時注意動詞的使用

  比如我們需要從數據庫中獲取用戶信息,函數的名稱可以是userInfo,user或者fetchUser,但我推薦使用含有動詞的命名 getUser。

  //正确示範

  function getUser(){//do something}

  9. 常量值所有都大寫

  常量命名都使用全大寫的名稱,并用下劃線分割所有單詞

  //正确示範

  const DAYS_IN_A_YEAR = 365;

  10. 避免變量使用字母

  在功能性的命名中盡量避免使用單個字母,不過如果在循環中,可以忽略這一點

  //錯誤示範

  const q = () = {

  //....

  }

  //正确示範

  const query = () = {

  //....

  }//this is also okay

  for(let i = 0;i i ){

  //...

  }

  結論

  從長遠來看,遵循代碼編寫規範,對開發者的自身發展來說是百利而無一害的。每個項目的生命周期都很長,在很長的周期中誰也無法确定會用到之前的哪段代碼,哪個功能。所以對現在的每一段代碼負責,就是對以後的自己負責。加油,程序猿!!!

  ,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved