热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

程序开发,不只是手艺,更是谋划

程序开发是技术活。只有通过不断积累经验,并且反思过去,才能偶有所得,进而改进自己的开发方式,提高工作效率。写程序,不是体力活。一般写程序出现问题,都在于前期准备不够,其实写程序有一句箴言:厚积薄发。你要是思路清晰,不费劲,很快能开发出一个像模像样的系统出来。你要是思维混乱,折腾吧,管你怎么折腾,都会弄成一团糨糊。

程序开发是技术活。只有通过不断积累经验,并且反思过去,才能偶有所得,进而改进自己的开发方式,提高工作效率。

写程序,不是体力活。一般写程序出现问题,都在于前期准备不够,其实写程序有一句箴言:厚积薄发。你要是思路清晰,不费劲,很快能开发出一个像模像样的系统出来。你要是思维混乱,折腾吧,管你怎么折腾,都会弄成一团糨糊。程序开发不是简单的,可以度量的,平滑的劳动积累,而是一系列公关的过程,你走了99%的路程,可能就卡死在这最后的1%之中,所以不能死板、粗暴的对待程序开发,必须保持头脑的清醒,必须经常留意是否走进死胡同。

对于程序开发,人们往往都太急于动手。对问题根本不清楚,以为借助开发行动,就能自然而然的理解,这样太过自信,太过蔑视问题。程序开发所面对的问题几乎总有我们想象不到的难,也许因为我们只是人类,是不是神明,去设计一套指挥别人行动的方案,这种神明的职能对我们来说很陌生。每件很普通平常的事情,深究下去,里面蕴含的结构和逻辑都异常复杂,只有没有试过深究的人才敢贸然行动。

作为前期准备,首先应该压制自己蠢蠢欲动的心情,然后也压制自己的雄心壮志,卑微的去观察,去模仿,进而吸取前人的劳动成果,才是正确的方法。很少人以模仿和顺从别人为荣,但实际这是一个很实在的做法。如果你连前人做了什么都一无所知,试问你做出来的东西可否知道究竟优胜在哪里呢?可是人们往往就是忽视这些,急于表现自己的聪明才智。

观察别人的成果,至少有个优点,你知道自己要开发什么,开发目标是什么。这种目标并不是“成功学”所谓的目标,也就是所谓的“我一定成功”,而是具体的,比如,我想让游戏这个部分的物品这样摆放,速度在这里这里可以改变一下。你只有真的去认识一个完整的产品之后,才能在大脑里形成比较成熟的观点。这种观点越是具体,你就越有可能将它实现出来。

一开始,你可能会对某些细节有看法,经过大量的反思之后,你能发现更加宏观性的架构问题,并有改进的方案。这就是一个积累的过程。 等待这个过程越来越明显,脑海中的印象越来越清晰,你就知道该开始动手了。

当你动手之后,发现原来之前的认识只是局部的,有很多漏洞,如果漏洞比想象中要多,你就不可能继续下去,说明你的积累还不够,认识太过片面,与其修补漏洞,还不如再次系统化的研究一下别人的成果。

程序开发,并不是手艺,而是谋划,需要积累对事物的正确认识的前提下,深思熟虑,规划方案,层层深入,步步为营,逐个击破。这就是程序开发的方法学。

本文地址:http://www.nowamagic.net/librarys/veda/detail/1200,欢迎访问原出处。


推荐阅读
  • 精选煲机软件推荐:提升耳机音质的秘密武器
    本文介绍了几款市面上流行的煲机软件,包括它们的特点、使用方法以及如何通过这些工具有效提升耳机和音箱的音质。 ... [详细]
  • H5技术实现经典游戏《贪吃蛇》
    本文将分享一个使用HTML5技术实现的经典小游戏——《贪吃蛇》。通过H5技术,我们将探讨如何构建这款游戏的两种主要玩法:积分闯关和无尽模式。 ... [详细]
  • 在1995年,Simon Plouffe 发现了一种特殊的求和方法来表示某些常数。两年后,Bailey 和 Borwein 在他们的论文中发表了这一发现,这种方法被命名为 Bailey-Borwein-Plouffe (BBP) 公式。该问题要求计算圆周率 π 的第 n 个十六进制数字。 ... [详细]
  • 本文详细介绍了如何在Oracle VM VirtualBox中实现主机与虚拟机之间的数据交换,包括安装Guest Additions增强功能,以及如何利用这些功能进行文件传输、屏幕调整等操作。 ... [详细]
  • CSS Border 属性:solid 边框的使用详解
    本文详细介绍了如何在CSS中使用solid边框属性,包括其基本语法、应用场景及高级技巧,适合初学者和进阶用户参考。 ... [详细]
  • 2023年,Android开发前景如何?25岁还能转行吗?
    近期,关于Android开发行业的讨论在多个平台上热度不减,许多人担忧其未来发展。本文将探讨当前Android开发市场的现状、薪资水平及职业选择建议。 ... [详细]
  • 本文介绍了SIP(Session Initiation Protocol,会话发起协议)的基本概念、功能、消息格式及其实现机制。SIP是一种在IP网络上用于建立、管理和终止多媒体通信会话的应用层协议。 ... [详细]
  • 二维码的实现与应用
    本文介绍了二维码的基本概念、分类及其优缺点,并详细描述了如何使用Java编程语言结合第三方库(如ZXing和qrcode.jar)来实现二维码的生成与解析。 ... [详细]
  • 在日常生活中,支付宝已成为不可或缺的支付工具之一。本文将详细介绍如何通过支付宝实现免费提现,帮助用户更好地管理个人财务,避免不必要的手续费支出。 ... [详细]
  • 解决Win10系统显示模糊问题的方法
    Windows 10作为一款深受用户喜爱的操作系统,提供了丰富的个性化设置选项,让每位用户都能根据个人偏好定制系统界面。然而,在进行个性化设置的过程中,有时会出现显示模糊的情况,影响用户体验。本文将详细介绍如何有效解决Win10系统显示模糊的问题。 ... [详细]
  • 拨打电话时遇到‘正在通话’或无人接听的情况解析及解决方法
    当您尝试联系他人时,可能会遇到电话提示‘正在通话’或是虽然接通但无人应答的情况。本文将详细解释可能的原因,并提供相应的解决策略。 ... [详细]
  • 本文详细介绍了在Windows系统中如何配置Nginx以实现高效的缓存加速功能,包括关键的配置文件设置和示例代码。 ... [详细]
  • 如何在PyCharm中配置Python脚本的默认模板
    本文介绍如何在PyCharm中设置Python脚本的默认模板,以便每次创建新的.py文件时自动填充预设内容,提高开发效率。 ... [详细]
  • 当需要确保对象的状态在创建后不可更改时,使用记录(Record)类型是一个理想的选择。本文探讨了如何通过记录类型实现对象的不可变性,并提供了一个简单的示例来说明其用法。 ... [详细]
  • 本文详细介绍了FLV播放器的构建过程,包括如何解析FLV标签并将这些标签传递给解码器,以及如何在Qt环境中注册共享指针的信号和槽机制。 ... [详细]
author-avatar
手机用户2502914831
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有