zoukankan      html  css  js  c++  java
  • 一起学编程(5--流程)

    程序的流程能够分为3种基本流程:顺序流程,分支流程和循环流程。其他程序流程都能够由这三种基本流程复合而成。顺序流程没什么可说的,分支流程是依据推断条件的结果来运行不同的流程分支,一般语言都有的ifelse,switch等。须要注意的是switch语句中的case语法,不同的语言有不同的处理方式。非常多编程语言中,这样的case分支间假设没有break中断,则会一次运行的。循环流程也没什么特别之处。与程序流程密切相关的另一个递归调用,递归调用都能够使用循环加堆栈的方式来替代。

    因此能够将递归调用看作是循环流程的一种。对于循环流程须要特别注意的就是死循环问题。

    数据类型,凝视,程序流程等都是程序的基本元素和结构。一般编程语言都具有这些特性。搞懂了这些,就具有了主要的程序表达能力(编程能力)。再复杂的程序都是由这些主要的元素或者结构复合构成的。


    对于Goto语句普通情况下建议不使用,这样的语句会破坏程序结构的严谨性。

    一般程序的结构设计都遵循单一出入口的原则。

    特别是函数(有的叫过程)的调用返回应该是确定的。A过程调用B过程:A.B,应保证B过程运行完毕后回到A.B这个调用处。在系统比較大的时候,这样的原则有利于程序逻辑正确性的保证。

    在日常工作中,处理事务事实上也是流程化的,仅仅是没有程序要求的这么严。

    我们非常多应用程序本质上都是将日常的处理流程转换成计算机软件系统的处理流程,因此在做这样的转换(需求分析和程序设计)时须要注意这样的区别。

    学习编程一定要有这样的流程化的概念,没事的时候能够进行一些训练。比方将手头上的某件工作流程化。

    流程当然还涉及到串行和并行的问题,串行逻辑比較简单,并行须要用到多线程技术。当然在更高的业务层面的并行。须要一些推断来保证并行过程的一致性问题。通过实际工作的流程化来驱动程序的流程化是一个不错的训练方式。

    不要光用脑袋想,应该动笔写和画。但训练到一定程度时,动笔写就能够降低,由于脑袋想想就已经OK了。

    流程化本身也是一种思想方法。

  • 相关阅读:
    Math 类、Random 类、BigDecimal 类
    Redis 持久化原理及过期 key 清除策略
    MySql 存储引擎和索引
    MySql 视图、触发器以及存储过程
    布隆过滤器
    微信红包实现原理
    11-散列3 QQ帐户的申请与登陆 (25 分)
    11-散列2 Hashing (25 分)
    11-散列1 电话聊天狂人 (25 分)
    C语言实现Linux之ls
  • 原文地址:https://www.cnblogs.com/zhchoutai/p/8467794.html
Copyright © 2011-2022 走看看