shanhuhai的文章

课程

如何写好代码(4)——函数篇其二

不要使用单例模式 单例模式是一个反模式。 单例模式常用于全局实例,这样导致代码里隐藏了依赖关系,而不是通过接口公开依赖关系 单利模式导致了代码的紧耦合 。 这样导致单元测试难以实现。 单例模式的状态贯穿整个应用程序的整个生命周期,导致难以进行单元测试, 因为每个单元测试应该彼此...

2年前 (2020-12-02) 618℃ 3喜欢

课程

如何写好代码(3)——函数篇其一

函数是程序设计中的重要组成部分,下面所说的函数包括了一般的函数,也包括了类里面的方法。 函数参数最好少于两个 为什么要限制函数参数个数: 如果函数的参数超过2个说明它要处理的事情太多了,如果必须要传入很多数据, 可以选择封装一个高级别对象作为参数。 函数参数少方便做单元测试...

2年前 (2020-11-23) 701℃ 1喜欢

课程

如何写好代码(2)——变量篇

#课程 上一课介绍了写好代码的重要性, 以及什么是好的代码, 接下来通过一些示例介绍如何写出好的代码。 以下示例用PHP代码编写,其他编写语言可以理解思想后自行推敲 变量部分技巧及示例 使用有意义有可读性的变量 不友好的: $ymdstr = $moment->format...

2年前 (2020-11-19) 646℃ 1喜欢

课程

如何写好代码(1)——引子

一个程序员的核心能力其实分为两部分:代码能力和数据处理能力。 而代码能力是核心中的核心,代码能力是一个程序员的内功, 好的代码能起到四两拨千斤的作用。 写好代码的重要性 好的代码是编写出优秀软件的基础。好的代码是软件的支撑 ,代码设计混乱的软件非常容易崩溃,也无法产生稳定价值给企...

2年前 (2020-11-19) 703℃ 0喜欢

推荐文章

软件项目管理(二)工时评估

一下描述适用于外包公司 软件项目开发中工时评估是一门玄学。不同的软件公司 ,不同的角色对工时评估有不同的看法与标准, 这就导致工时评估可能会变成一项非常『难』的工作, 但是越是『难』或者越是不可描述的事情,越要以简单的方式处理。 工时评估的目的 报价 工时评估的目的对于公司来一个...

2年前 (2020-06-23) 2825℃ 20喜欢

推荐文章

架构设计之——域名设计

域名的使用规划, 看似不重要,但是在大型的软件架构中实际非常关键。域名是用户的请求入口,设计不恰当, 使用不规范,非常容易造成系统的不稳定。在系统架构过程中,我总结了以下经验, 供君参考: 资源域名与动态域名分开 网站打开时,页面上的图片、js、 css 等文件是无状态的,不需要...

3年前 (2020-06-13) 1727℃ 3喜欢

教程

Nginx 一个域名下部署多个网站运行多个PHP 版本

我们可能会遇到需要在一个域名下用几套程序来构建一个网站,这时候可能需要在在不同的目录下绑定不同的网站。 比如 根目录 / 是用 Laravel 构建的cms程序,/blog 下绑定的是一个 wordpress 开源博客程序。 问题一:如何将不同程序的代码目录绑定到一个域名下的不同...

3年前 (2020-04-09) 5295℃ 6喜欢

教程

软件项目管理(一)成本、产值及利润计算

如何计算项目利润? 首先一个项目一定是由多个不同角色的工程师协作完成的。 软件项目的成本可以折算为各角色在项目中投入的工时 * 单位工时的人力价格。 软件项目的利润 = 软件项目的销售额 – 软件项目的成本 举一个例子, 一个新闻类客户端软件项目需要 项目经理、 产品...

3年前 (2019-12-09) 4742℃ 4喜欢

教程

用 webpack+vue+vue-router 搭建单页应用

1. 初始化一个项目 创建一个项目 mkdir demo 进入项目,并用 npm 初始化 npm init -y 这时会在 demo 目录下生成一个文件 package.json 2. 安装依赖包 安装最新版vue npm install --save vue 安装web...

3年前 (2019-07-13) 3974℃ 3喜欢

技巧

用 git rabase 修改提交历史

比如要修改最近三次提交的作者、邮箱、提交时间等, 在代码目录下执行 git rebase -i HEAD~3 会显示最近提交的三次记录,注意顺序是倒序的 例如显示 pick 4cbce22 add 2.html pick 01fffe5 add new line pick 8e...

4年前 (2018-10-18) 5550℃ 3喜欢