繁体   English   中英

使用参数vs全局变量-代码的可读性/可维护性

[英]Using parameters vs global variables — Code readability / maintainability

我试图理解可读性与在代码中重复自己之间的最佳结合。

我正在用Javascript创建Conway的生活游戏。 我的函数一遍又一遍地使用许多相同的变量,就像这样...

const BOARD_HEIGHT = 50
const BOARD_WIDTH = 50
let gameBoard = createGameBoard();

function createGameBoard(width, height){}
function randomizeGameBoard(gameBoard, width, height){}
function updateGameBoard(gameBoard, width, height){}
function runGameLoop(gameBoard, width, height){}

我应该声明这样的功能吗? 如果所有函数都采用完全相同的参数,或者我的函数不应该采用参数,而是直接访问常用变量(全局变量)?

function createGameBoard() {do stuff with BOARD_WIDTH, BOARD_HEIGHT};
function randomizeGameBoard() {do stuff with gameBoard};

全局变量和传递变量都不是到达此处(IMO)的方法。 如果仔细观察,宽度和高度实际上是gameBoard的属性...,所有这些功能实际上都可以是类的方法:

  class GameBoard {
    constructor(width, height) {
      this.width = width; this.height = height;
      //...
    }

    randomize() { /*...*/ }
    update() { /*...*/ }
  }

  const board = new GameBoard();

如果只有一块木板,那么一个对象就足够了:

  const board = {
    width: 50, height: 50,
    randomize() { /*...*/ },
    update() { /*...*/ },
  };

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM