欧美成人精品手机在线观看_69视频国产_动漫精品第一页_日韩中文字幕网 - 日本欧美一区二区

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

10個讓公司離不開你的垃圾編程技巧!

admin
2024年12月19日 23:1 本文熱度 349

今天來和大家聊聊那些讓人哭笑不得的編程技巧。

你知道嗎,有時候,我們程序員的一些“小技巧”能讓我們成為公司里不可或缺的存在,但這些技巧,可能并不是那么值得推廣。

不過,為了讓大家樂一樂,我還是決定分享一下這些“技巧”。

準備好了嗎?讓我們開始吧!

1. 縮短變量名

首先,讓我們聊聊變量命名。你知道的,變量名越短,代碼看起來越簡潔,我們就能有更多的時間去思考更深層次的邏輯問題。比如:

Good ????
let a = 42;

而不是:

Bad ????
let age = 42;

2. 不要寫注釋

接下來,我們聊聊注釋。你知道嗎,三行代碼不寫注釋,足以讓你的同事問你十八遍,這樣他們就徹底離不開你了。比如:

Good ????
const cdr = 700;

而不是:

Bad ????
// 700ms的數量是根據UX A/B測試結果進行經驗計算的。
// @查看: <詳細解釋700的一個鏈接>
const callbackDebounceRate = 700;

3. 盡可能把代碼寫成一行

有時候,我們為了減少項目體積,會手動壓縮代碼,比如:

Good ????
document.location.search.replace(/(^\?)/,'').split('&').reduce(function(o,n){n=n.split('=');o[n[0]]=n[1];return o},{})

而不是:

Bad ????
document.location.search
  .replace(/(^\?)/'')
  .split('&')
  .reduce((searchParams, keyValuePair) => {
    keyValuePair = keyValuePair.split('=');
    searchParams[keyValuePair[0]] = keyValuePair[1];
    return searchParams;
  }, {})

4. 不要處理錯誤

錯誤處理?那是什么?我們的代碼是完美的,沒有錯誤!比如:

Good ????
try {
  // 意料之外的情況。
catch (error) {
  // tss... ??
}

而不是:

Bad ????
try {
  // 意料之外的情況。
catch (error) {
  setErrorMessage(error.message);
  // and/or
  logError(error);
}

5. 廣泛使用全局變量

全球化的時代,我們的代碼也要跟上步伐。比如:

Good ????
let x = 5function square({
  x = x ** 2;
} square(); // 現在x是25

而不是:

Bad ????
let x = 5function square(num{
  return num ** 2;
} x = square(x); // 現在x是25

6. 備用變量

未雨綢繆,萬一用到了呢?比如:

Good ????
function sum(a, b, c{
  const timeout = 1300;
  const result = a + b;
  return a + b;
}

而不是:

Bad ????
function sum(a, b{
  return a + b;
}

7. 如果語言允許,不要執行類型檢查

無類型才是最好的類型。比如:

Good ????
function sum(a, b{
  return a + b;
// 在這里享受沒有注釋的快樂
const guessWhat = sum([], {}); // -> "[object Object]"
const guessWhatAgain = sum({}, []); // -> 0

而不是:

Bad ????
function sum(a: number, b: number): ?number {
  // 當我們在JS中不做置換和/或流類型檢查時,覆蓋這種情況。
  if (typeof a !== 'number' && typeof b !== 'number') {
    return undefined;
  }
  return a + b;
// 這個應該在轉換/編譯期間失敗。
const guessWhat = sum([], {}); // -> undefined

好的,小林君繼續給大家爆料,讓我們的“編程技巧”更加豐富多彩!

8. 代碼「Plan B」

準備一些永遠也運行不到的代碼,它們可以作為你的「Plan B」。比如:

Good ????
function square(num{
  if (typeof num === 'undefined') {
    return undefined;
  } else {
    return num ** 2;
  }
  return null// 這就是我的"Plan B".
}

而不是:

Bad ????
function square(num{
  if (typeof num === 'undefined') {
    return undefined;
  }
  return num ** 2;
}

9. 嵌套的三角法則

邏輯簡潔明了,一看就能懂。比如:

Good ????
function someFunction({
  if (condition1) {
    if (condition2) {
      asyncFunction(params, (result) => {
        if (result) {
          for (;;) {
            if (condition3) {
            }
          }
        }
      })
    }
  }
}

而不是:

Bad ????
async function someFunction({
if (!condition1 || !condition2) {
    return;
  }

const result = await asyncFunction(params);
if (!result) {
    return;
  }

for (;;) {
    if (condition3) {
    }
  }
}

10. 混合縮進

避免縮進,因為它們會使復雜的代碼在編輯器中占用更多的空間。如果你不喜歡回避他們,那就和他們搗亂。比如:

Good ????
const fruits = ['apple',
  'orange''grape''pineapple'];
const toppings = ['syrup''cream',
    'jam',
    'chocolate'];
const desserts = [];
fruits.forEach(fruit => {
  toppings.forEach(topping => {
    desserts.push([fruit, topping]);
  });
})

而不是:

Bad ????
const fruits = ['apple''orange''grape''pineapple'];
const toppings = ['syrup''cream''jam''chocolate'];
const desserts = []; fruits.forEach(fruit => {
  toppings.forEach(topping => {
    desserts.push([fruit, topping]);
  });
})

好了,今天的分享就到這里了。這些技巧雖然聽起來有點搞笑,但它們確實能讓我們成為公司里那個“不可或缺的人”。

不過,我建議大家還是不要真的去實踐這些技巧,畢竟,寫出清晰、可維護的代碼才是我們作為程序員的真正追求。


該文章在 2024/12/20 10:48:32 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved