0

在我们公司,我们正在尝试遵循编码约定,我的一些前辈告诉我一些编码约定,其中大多数都是我知道的,它们很好,但其中一个是相等对齐,整个代码中的对齐相等看起来有点怪。我知道在我们专门在配置值中进行一组赋值时,我们通常会进行相等对齐。喜欢:

$params = array(
                        'dbdriver'  => $dns['scheme'],
                        'hostname'  => (isset($dns['host'])) ? rawurldecode($dns['host']) : '',
                        'username'  => (isset($dns['user'])) ? rawurldecode($dns['user']) : '',
                        'password'  => (isset($dns['pass'])) ? rawurldecode($dns['pass']) : '',
                        'database'  => (isset($dns['path'])) ? rawurldecode(substr($dns['path'], 1)) : ''
                    );

或喜欢:

var $next_link          = '>';
var $prev_link          = '<';
var $last_link          = 'Last ›';
var $uri_segment        = 3;
var $full_tag_open      = '';
var $full_tag_close     = '';
var $first_tag_open     = '';
var $first_tag_close    = ' ';
var $last_tag_open      = ' ';
var $last_tag_close     = '';
var $first_url          = ''; // Alternative URL for the First Page.
var $cur_tag_open       = '&nbsp;<strong>';
var $cur_tag_close      = '</strong>';
var $next_tag_open      = '&nbsp;';
var $next_tag_close     = '&nbsp;';
var $prev_tag_open      = '&nbsp;';
var $prev_tag_close     = '';
var $num_tag_open       = '&nbsp;';
var $num_tag_close      = '';
var $page_query_string  = FALSE;
var $query_string_segment = 'per_page';
var $display_pages      = TRUE;
var $anchor_class       = '';

但是,当我们在普通代码中加载库、实例化值、调用方法并在变量中获取响应时,仍然应该有相等对齐吗?就像有 ec2class 的构造函数:

public function __construct(array $options = array())
{
    $this->api_version = '2012-07-20';
    $this->hostname = self::DEFAULT_URL;
    $this->auth_class = 'AuthV2Query';

    return parent::__construct($options);
}

或这样的地方:

        $this->CI->load->library('awslib');

    $s3          = new AmazonS3();
    $bucket_name = ($is_private) ? 'private_s3_bucket' : 'public_s3_bucket';
    $bucket      = $this->CI->config->item($bucket_name);
    $options     = array(
        'fileUpload' => $file_path,
        'acl'        => AmazonS3::ACL_PUBLIC
    );

    try {
        $response = $s3->create_object($bucket, $file_name, $options);
    } catch (Exception $e) {
        echo "<pre>";
        exit($e);
        echo '</pre>';
    }

所以在最后两个例子中,平等对齐真的很重要吗?有没有这样的标准?因为我认为当它混合了实例化库、加载其他东西、有条件地分配值时,可能是相等对齐并不重要,因为我认为它对我来说更具可读性,请告诉是否有一些标准然后请提供一些参考,在许多框架和库等中,只要在这些语句中存在混合和分配,我从未见过等式对齐这样的地方。所以请告诉。

4

1 回答 1

0

我相信以有意义的方式对齐代码很重要,这样您就可以识别模式。但是,您似乎花费了大量时间重新排列代码,这对可读性的提升是最低的。

在这种情况下,如果是我的公司,我会尝试改变惯例,或者至少让它更灵活一点。尤其是因为它是本地的。我找不到任何提到将相等运算符对齐作为最佳实践的文档。

于 2013-06-18T13:48:56.420 回答