悬镜司 悬镜司
  • 注册
  • 登录
  • 首页
  • 源码
    • asp源码
    • php源码
    • java源码
    • 其它源码
  • 模板市场
    • thinkphp模板
    • 织梦模板
    • 帝国模板
    • wordpress模板
    • 苹果cms模板
    • discuz模板
    • 其它模板
  • 帮助文档
    • cms教程
      • destoon
      • 织梦cms
      • 帝国cms
      • wordpress
      • Discuz
      • 苹果cms
      • 其它教程
    • 编程技术
    • 前端设计
    • 推广运营
    • 服务器
      • windows服务器
      • linux服务器
      • unix服务器
    • 数据库
      • mysql数据库
      • SQLite
    • 移动端
      • wap
      • Android
      • IOS
    • 其它
  • 游戏
  • 站长那些事
  • 软件推荐
  • 公告
首页 › 站长那些事 › Web开发人员养成良好的编程习惯

Web开发人员养成良好的编程习惯

悬镜司
4月前站长那些事
227 0 2

任何人都可以学习编码,但是养成良好的编程习惯完全是另一回事。编程是未经任何正式培训即可从事的最简单的职业之一。但是,当您完全自学成才时,您最终会养成难以剔除的坏习惯。
您甚至可能不知道自己已经拾起了一个普通的恶习,直到有人向您指出,从而导致了可怕的“Spaghetti Code ”。但是,这会使您的项目无法挽救,并导致人们不想与您一起工作。
准备养成更好的习惯?有些事情甚至是正规课程也不会告诉您,但是经验丰富的程序员已经通过多年的努力学习了。如果您想创建干净的,人类可读的代码,请立即开始执行以下例程。

一、制定计划

Web开发人员养成良好的编程习惯-悬镜司
在白板上进行项目计划是良好编程习惯的一部分

每个年轻的开发人员都做到了:当一个新想法激动到来时,您的第一个直觉是立即进入并开始编码。但是,一旦没有足够的计划,一旦您精疲力尽,您将最终陷入沉寂。
如果您放弃的项目数量超出了您的预期,解决方案就是开始进行预先计划。这不仅可以为您提供明确的目标,而且还可以提高代码质量并节省宝贵的时间。
这是您开始新事业之前所需的信息。
项目摘要 -它的用途,用途和目的。
您将要使用的技术列表 -包括语言,框架等。
总体功能概述 —考虑项目的架构以及每个元素将如何交互。标记哪些功能是必备功能,哪些是主要功能,哪些是次要功能。
截止日期 -规划何时完成项目的各个阶段。
甚至像这样的简单轮廓也比盲目地做得更好。另一方面,过度计划可能会有害。不要等到您有了一个完美的主意或完全想通了一切。只需勾勒出轮廓即可。
切记:在编程之前进行计划。它将在将来为您节省许多麻烦。

二、不要重复自己(干)

开发人员应该遵循数百个组织方面的小技巧,但最受欢迎的可能是DRY:不要重复自己。
这个共同原则指出:“每条知识在系统中都必须具有单一,明确,权威的表示形式。” 或者用更简单的术语来说,不要在多个地方使用相同的代码,并避免对两个不同的代码段执行相同的操作。
这是Ruby 中DRY代码的简单示例:

module Builder
  def build(n)
    n + 1
  end
endclass John
  include Builder  def destroy(n)
    n - 1
  end
endclass Peter
  include Builder
end

最好一次设置一个方法,然后在必要时重用它,然后在类需要使用它的每一次设置一次。如果将来需要更改该功能怎么办?编辑一件事比二十件事容易。
WET代码(“每次写入”,与DRY相反)将在将来维护它时引起问题,因此请不惜一切代价避免使用它。重用,不要重述。

三、使其易于阅读

Web开发人员养成良好的编程习惯-悬镜司

可以说,正确地格式化代码以使其可读性比优化和最小化代码更为重要。这不仅适用于与您一起工作的人。它也对您有帮助。如果您的变量是随机命名的,则不会注释您的代码,并且格式混乱,您稍后将遇到问题。
请遵循以下提示,以保持代码的清洁和可读性。

给变量起适当的名字
这是一个小技巧,但非常重要。您的变量,方法,文件等应命名,以便其功能立即清晰可见。从技术上来说1,给它们命名为2和可能更有效3,但是对于您和您的同事而言,记住他们的实际工作将是一场噩梦。
用简短的名词命名这些对象,以解释它们的用途。避免使用首字母缩写词或缩写,除非它们非常常见。
示例:formInput是一个很好的变量名。避免使用诸如frminp,form7或之类的名称,form因为它们要么使用令人困惑的缩写,要么不言自明。
评论您的代码
想象一下,在数周或数月后重返项目,并且不得不费心地筛选代码,想知道每个人在做什么。如果注释代码,则可以避免所有这些情况。此外,如果您正在与其他人一起工作,它也将阻止他们经历相同的过程。
您无需解释每一行代码。如果您使用适当的变量名,则代码通常会自行执行此操作。
但是,您应该使用注释来阐明不言自明的代码。它们还有助于解释为什么您没有使用看起来更好的解决方案。
还有一件事:避免在代码开始时使用大量注释标头,以详细说明更改日志,许可证和其他普通信息;创建一个自述文件。
正确缩进
没有人喜欢处理大量的代码。适当地缩进和换行是一门艺术,但是尝试将其弄错比根本不做是更好的。空格可以帮助其他人阅读您的代码,并使浏览更加容易。
缩进代码揭示了其结构以及每一行与下一行的交互方式。如何做到“正确”取决于您所使用的语言。
例如,使用HTML缩进时,应将开始和结束标记放在它们自己的行上(除非该行很短),然后在两者之间缩进文本。内联元素不应缩进。

<p> 
    Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor
    incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud
    exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. 
</p>

CSS缩进规则随着每个元素相对于其他元素的缩进变得更加复杂。您可以找到在线编写的任何语言的标准。
还有一件事:对于许多Web开发语言,建议使用空格而不是制表符。HTML,CSS和Javascript的通用标准是两个空格。另外,使用空格而不是制表符的开发人员可以赚更多的钱。

始终如一

每个开发人员对于如何缩进,注释和命名文件都有自己的见解。但是无论您做什么,最重要的是要保持一致。
您可以使用所需的任何命名约定,但每次都应相同。如果使用camelcase(functionName)来命名Javascript函数,而使用pascal case(ClassName)来命名类,请不要将其切换。缩进标准也是如此。每次都以相同的方式格式化代码。
您将开发自己的怪癖,但是查找所用语言的通用约定是一个好主意。一码棉短绒可以帮助你找到你的代码不一致或不正确的格式。

四、重构代码

是否曾经有过在项目中间清理代码的冲动?现在是该养成这种习惯的时候了。代码重构是删除所有杂散位,对其进行优化以使其占用更少空间并遵循DRY之类的过程。功能不变。您只是在优化已经存在的内容。
改进键盘上的按键,以作为代码重构的隐喻,这是一种良好的编程习惯
尽管清理代码很重要,但是您不希望随正在进行的工作而烦恼。就像作者的初稿一样,您的第一次尝试可能会有些混乱,但是您可以稍后对其进行完善。现在,只专注于完成它。
您当然应该避免重复代码,并牢记编程原则。但是,请抵制在完成之前进行广泛审核的冲动,或者仅在代码的结构方式目前给您造成问题时才进行审核。
请查阅此代码重构指南,以了解在修复项目时要遵循的一些标准。

五、使用版本控制软件

无论您是在开发软件,Web项目,还是将Git与WordPress结合使用,版本控制都可以在任何地方使用。Git被70%的开发人员使用,如果您不是其中之一,则应该使用。
版本控制软件有助于跟踪对项目所做的更改,这是非常宝贵的,尤其是当您在团队中时。使用Git,您可以访问项目的所有版本,并确切查看谁在做什么以及何时进行。
而且,如果您需要回滚,只需单击一个按钮即可。无需查找越野车代码。或者,如果您发现一个错误,可以检查旧版本以查看何时添加了它以及导致它的原因。
使用Git或其他版本控制软件的一些技巧:
频繁提交 -不要进行大量的更改然后提交,而仅在不可避免地导致错误时才将其全部回滚。
不过,请不要过度使用 -您不需要提交所有微小的更改或不完整的代码。进行一些更改或添加一个小功能,然后将其向前推进。
文档 -为了方便您的队友(以及您自己需要回滚的情况),请在提交中添加一条注释,说明您添加或更改的内容。

六、完成项目

如果您已经开发了几年以上,则您的计算机上可能有许多未完成的项目。对于Web开发人员来说,这不是一个小问题。但是,将各种原型或测试站点掩埋在PC的内部绝对仍然很常见。
如果您想尝试,这是不可避免的。然而,这是一种习惯,可能会从您的测试版本泄漏到您真正打算完成的重要项目中。作为一个成长中的开发人员,重要的是要掌握一些成品-所有这些废弃的原型对于您来说并没有多大用处。
因此,除了在进入项目之前进行预先计划外,您还应该一次只坚持几个。盘子上的东西太多了,您很快就会筋疲力尽。
愤怒的瓦普族的形象
您还需要学习克服障碍。一两个晚上就可以将很酷的原型放在一起。但是,一旦您遇到了困难的部分,您将很容易转向其他原型。这是一个非常不好的习惯。着手开始某件事后,请系紧安全带并尝试完成。
在较小的规模上,避免留下“要做”的评论。很有可能,您会在脑海中标记掉那部分代码,而永远不会再回头。一旦开始编写代码部分,只需完成它,然后在必要时进行调整。

七、选择新的语言

成为一名Web开发人员不仅要做好编码。在这个竞争激烈的领域中,您需要不断学习新技能。新语言一直在涌现,如果您所知道的只是一点Javascript,那么您很可能会落伍。
检查网络开发人员的职位空缺,以了解雇主认为合适的语言。像PYPL这样的资源也可以帮助您关注趋势。
pypl排名
这样,您将知道接下来要追求的目标以及与哪些语言保持距离。如果您对一种不断发展的语言进行投资并精通该语言,则可以为自己赢得一份更高薪的工作。
利用您的空闲时间尝试一些新事物,看看是否可以为您的曲目增添一项技能。如果有几分钟的时间,请养成检查趋势或浏览语言文档的习惯。跟踪那些看起来很有趣的内容,并在有时间的时候尝试一下。这可能会对您的职业产生巨大影响。
形成更好的编程习惯
编程会花费很多时间。尤其是当您独自从事大型项目时,可能会尝试做任何可行的工作。但是,尽管您最终可能会使用一个能运行的原型,但是代码中的潜在问题最终还是会再次咬住您。
如果您想成为一个更好的Web开发人员,尤其是想在团队合作中发展职业,则需要了解正确的编程方法。
您的代码不仅仅应该对您可读,因此请在跳入之前尝试制定一个计划,并努力使之井井有条。试用版本控制软件,并考虑在业余时间学习一些新语言。通过一些习惯的调整,您的代码将更加整洁,并且您会发现自己也正在成为一个更加熟练,全面的开发人员。

您过去有哪些不良的编程习惯?您停了多长时间?在评论中与其他开发人员分享您的经验。

Web Web开发 Web开发人员 开发 编程习惯
赞赏
如果感觉小编写的不错,打赏支持一下小编吧~
2
本文系作者 @悬镜司 原创发布在 悬镜司。未经许可,禁止转载。
3个不败的电子商务网站做法,可促进电商平台转化
上一篇
客户留下负面评价时该怎么办
下一篇
评论 (0)

请登录以参与评论。

现在登录
随机推荐
Destoon7.0模板 蓝色宽屏 整站打包
5月前
Google BERT解释:这对您的网站意味着什么
4月前
您需要了解的有关WordPress 5.5的所有信息
4月前
wordpress网站访问慢的一些原因及优化
5月前
如何将WordPress面包屑添加到您的网站主题
4月前
Web开发人员养成良好的编程习惯
4月前
热门标签
asp源码 dedecms dedecms5.8 dedecms安装教程 dedecms教程 Destoon Destoon模板 linux linux面板 php SEO优化 thinklc thinklc手机模板 thinklc模板 thinkphp thinkphp模板 Web wordpress wordpress5.5 wordpress主题 WordPress优化 wordpress安全 wordpress忘记密码 wordpress插件 xml 企业模板 分类信息 分类信息模板 分类信息源码 单位网站程序 响应式 宝塔面板 宝塔面板漏洞 帝国cms 帝国cms模板 护卫神面板 政府CMS 政府程序 漏洞 网址导航 网址导航源码 网站 网站地图 苗木程序模板 行业模板
2
相关文章
帮助您的客户获得成功
关于如何撰写完美故事的6条提示
使用Web应用程序防火墙(WAF)保护您的站点安全
WordPress为什么是博客和企业最常用的网站之一?
关于我们

悬镜司(www.xuanjingsi.com)为您提供php、小程序、app等各类程序源码搭建、二次开发、修改、维护服务,wordpress、苹果cms、dedecms、帝国cms主题模板定制,我们致力于打造一个优秀的建站资源下载学习平台。

专题推荐
宝塔面板 wordpress教程 wordpress模板 thinkphp dedecms Destoon 帝国cms wordpress插件
推荐栏目
php源码 java源码 wordpress dedecms 站长 服务器 游戏 thinkphp 数据库 推广运营 前端设计 编程技术 教程
Copyright © 2018-2021 悬镜司版权所有.由WordPress强力驱动. 苏ICP备18018208号-2 苏公网备案32131102000445号
  • 首页
  • 源码
    • asp源码
    • php源码
    • java源码
    • 其它源码
  • 模板市场
    • thinkphp模板
    • 织梦模板
    • 帝国模板
    • wordpress模板
    • 苹果cms模板
    • discuz模板
    • 其它模板
  • 帮助文档
    • cms教程
    • 编程技术
    • 前端设计
    • 推广运营
    • 服务器
    • 数据库
    • 移动端
    • 其它
  • 游戏
  • 站长那些事
  • 软件推荐
  • 公告
热门搜索
  • wordpress
  • wordpress主题
  • wordpress5.5
  • wordpress插件
  • linux面板
  • linux
  • 网站
  • 宝塔面板
  • php
  • 分类信息源码
  • dedecms
  • 网站地图
  • xml
  • wordpress安全
  • Web
  • 分类信息
  • 护卫神面板
  • SEO优化
悬镜司
悬镜司(www.xuanjingsi.com)为站长提供网站模板、源码资源,dedecms模板,discuz模板,wordpress模板,html5模板下载,我们致力于打造一个优秀的建站资源下载学习平台。
33 文章
2 评论
32 喜欢
  • 2
  • 0
  • Top
没有账号? 注册忘记密码?

社交账号快速登录

QQ登录 微信登录
获取邮箱验证码
已有账号? 登录

社交账号快速注册

QQ注册 微信注册