阶段0:拟出一个计划

第一步是决定在后面的过程中采取哪些步骤。这听起来似乎很简单(事实上,我们这儿说的一切都似乎很简 单),但很常见的一种情况是:有些人甚至没有进入阶段 1,便忙忙慌慌地开始编写代码。如果你的计划本 来就是“直接开始开始编码”,那样做当然也无可非议(若对自己要解决的问题已有很透彻的理解,便可考 虑那样做)。但最低程度也应同意自己该有个计划。 在这个阶段,可能要决定一些必要的附加处理结构。但非常不幸,有些程序员写程序时喜欢随心所欲,他们 认为“该完成的时候自然会完成”。这样做刚开始可能不会有什么问题,但我觉得假如能在整个过程中设置 几个标志,或者“路标”,将更有益于你集中注意力。这恐怕比单纯地为了“完成工作”而工作好得多。至 少,在达到了一个又一个的目标,经过了一个接一个的路标以后,可对自己的进度有清晰的把握,干劲也会 相应地提高,不会产生“路遥漫漫无期”的感觉。 座我刚开始学习故事结构起(我想有一天能写本小说出来),就一直坚持这种做法,感觉就象简单地让文字 “流”到纸上。在我写与计算机有关的东西时,发现结构要比小说简单得多,所以不需要考虑太多这方面的 问题。但我仍然制订了整个写作的结构,使自己对要写什么做到心中有数。因此,即使你的计划就是直接开 始写程序,仍然需要经历以下的阶段,同时向自己提出一些特定的问题。

 1 package Com.TomTest;
 2
 3 interface Cubics {
 4     double getCubic(int n);
 5 }
 6 interface  Sqrts {
 7    public double getSqrt(int x);
 8 }
 9 class Asss{
10     void f(Cubics cubic) {
11        double result=cubic.getCubic(3);
12        System.out.println(result);
13     }
14 }
15 public class TomTest_37{
16    public static void main(String args[]){
17       Asss a=new Asss();
18       a.f(new Cubics(){                         //可以看做是Cubic接口的的实现类
19              public double getCubic(int n) {   //实现了Cubic类的getCubic()方法
20                 return n*n*n;
21               }
22            }
23          );
24      Sqrts ss=new Sqrts(){                          //可以看做是Sqrt接口的的实现类
25               public double getSqrt(int x) {
26                  return Math.sqrt(x);             //实现了Sqrt类的getSqrt()方法
27                }
28             };
29      double m=ss.getSqrt(5);
30      System.out.println(m);
31    }
32 }

原文地址:https://www.cnblogs.com/borter/p/9438758.html

时间: 2024-10-13 21:57:14

阶段0:拟出一个计划的相关文章

2.3为方便旅客,某航空公司拟开发一个机票预定系统。 写出问题定义并分析系统的可行性。

为方便旅客,某航空公司拟开发一个机票预定系统.旅行社把预定机票的旅客信息(姓名.性别.工作单位.身份证号码.旅行时间.旅行目的地等)输入进 入该系统,系统为旅客安排航班,印出取票通知和账单,旅客在飞机起飞的前一天凭取票通知和账单交款取票,系统校对无误即印出机票给旅客. 写出问题定义并分析系统的可行性. 1>     目标:在一个月内建立一个高效率,无差错的航空公司机票预定系统 2>     存在的主要问题:人工不易管理,手续繁琐 3>     建立新系统 ①  经济可行性        

LINUX小白重装上百次后, 最终找出一个成功方案 CentOS LAMP +wordpress+phpmyadmin 共0.84G

折腾了几天,终于找到很节省资源的安装wordpress方案. 成功搭建网站 http://www.gudianxiaoshuo.com     and   http://www.gudianbook.com 同时向大家推荐下wordpress建站利器 书画小说软件4.0版  我的网站 就是用这个软件搭建的  222本书 15000余篇文章 共用8个半钟头左右. 好了,转回正题,入手了一台LINUX VPS  进去一看 黑乎乎的DOS  立马傻眼.  更可恨的是没有提供相关资料,只能去自己找.自己

给出一个区间[a, b],计算区间内“神奇数”的个数。 神奇数的定义:存在不同位置的两个数位,组成一个两位数(且不含前导0),且这个两位数为质数。 比如:153,可以使用数字3和数字1组成13,13是质数,满足神奇数。同样153可以找到31和53也为质数,只要找到一个质数即满足神奇数。

给出一个区间[a, b],计算区间内"神奇数"的个数.神奇数的定义:存在不同位置的两个数位,组成一个两位数(且不含前导0),且这个两位数为质数.比如:153,可以使用数字3和数字1组成13,13是质数,满足神奇数.同样153可以找到31和53也为质数,只要找到一个质数即满足神奇数. 输入描述: 输入为两个整数a和b,代表[a, b]区间 (1 ≤ a ≤ b ≤ 10000). 输出描述: 输出为一个整数,表示区间内满足条件的整数个数 输入例子: 11 20 输出例子: 6 1 #in

怎么用snapman一个人在三天内开发出一个复杂的软件开发项目管理系统

snapman是一个简单而强大的团队协作软件,在上面的信息可以是数据.可以是规则.也可以是自动化代码:最重要的它是一个可以开发的协作平台,所有信息都可以作用到所有人或机器上,大大减少了工作的复杂度.软件开发项目是人类工程中对人力.脑力的配合度要求最高的项目.所以高智商的人才开发出各种项目定义实施流程:PMBOK.CMMI.IPD.SCRUM.XP等,这些流程的实施离不开各种强大的信息系统.但是这些系统只适合于大公司大流程,到单个的项目组级别很难为项目具体的特点做适配,随心所欲的更改.比如做10个

如何弹出一个窗口气泡(使用定时器向上移动)

原文链接:http://blog.csdn.net/tangaowen/article/details/5108980 如何弹出一个窗口气泡 最近在工作中遇到这样一个需求,就是需要将一个窗口从右下角任务栏下面缓缓的上升到任务栏的上面,现在有很多的软件都有这样的气泡,比如:搜狗输入法的词条更新窗口,还比如CSDN的广告窗口等等. 1.首先 将要弹出的窗口移动到任务栏(当前屏幕)以下 2.然后,获得任务栏(本质是个窗口)的高度,这样就可以知道窗口最终的位置了 3.然后,计算获得窗口最终停止的位置:计

程序员面试100题之十:快速找出一个数组中的两个数字,让这两个数字之和等于一个给定的值(转)

能否快速找出一个数组中的两个数字,让这两个数字之和等于一个给定的值,为了简化起见,我们假设这个数组中肯定存在至少一组符合要求的解. 假如有如下的两个数组,如图所示: 5,6,1,4,7,9,8 给定Sum= 10 1,5,6,7,8,9 给定Sum= 10 分析与解法 这个题目不是很难,也很容易理解.但是要得出高效率的解法,还是需要一番思考的. 解法一 一个直接的解法就是穷举:从数组中任意取出两个数字,计算两者之和是否为给定的数字. 显然其时间复杂度为N(N-1)/2即O(N^2).这个算法很简

javaScript 弹出一个窗体

我们在做后台管理的时候经常需要弹出一个会话窗体,这是我们可以用框架带的接口来弹出,也可以用jQuery带的来弹出,并且现在jQuery被大量使用,所以还是这种好用点,不用额外引入其他的框架js资源. 如下就是一种弹窗: ① application.window.OpenWindowFn('${ctx}/escmauthority/initGetParentHelp.do?selfId='+selfId+"&auth_type="+auth_type+"&own

经测试稳定可用的蓝牙链接通信Demo,记录过程中遇到的问题的思考和解决办法,并整理后给出一个Utils类可以简单调用来实现蓝牙功能

说明:这是本人在蓝牙开发过程中遇到过的问题记录和分析,以及解决办法. 在研究过程中,许多的前人给出的解决方案和思路指导对我相当有帮助,但并非都是可采取的解决方法, 经过本人对这些方法的测试和使用过后,给出自己的理解和解决方案,不一定是正确的,但这些方法的确可以解决问题. 如果有人遇到同样的问题,并且看到我的文章解决,那是我的荣幸. !!!!!!但特别需要说明的是,看的越多,不明白的越多,我的看法可能是完全错误的,这些方法只是暂时解决了我的问题, !!!!!!如果有人发现了我的错误,请私信或评论告

给出一个数组A,找出一对 (i, j)使得A[i] <= A[j] (i < j)并且j-i最大

题目:给出一个数组A,找出一对 (i, j)使得A[i] <= A[j] (i <= j)并且j-i最大 ,若有多个这样的位置对,返回i最小的那一对. 最直接的想法就是对于每一个 i 从数组最尾端开始向前找到第一个大于等于 A[i] 的位置 j ,时间复杂度O(n^2). 1. pair<int, int> find(const vector<int> &A) 2. { 3. int n = A.size(); 4. if(n == 0) 5. throw ne