什么是程序设计和编程?
程序设计(Programming)是给出解决特定问题程序的过程,是软件构造活动中的重要组成部分。
程序设计往往以某种程序设计语言为工具,给出这种语言下的程序。程序设计过程应当包括分析、设计、编码、测试、排错等不同阶段。专业的程序设计人员常被称为程序员。
某种意义上,程序设计的出现甚至早于电子计算机的出现。英国著名诗人拜伦的女儿Ada Lovelace曾设计了巴贝奇分析机上解伯努利方程的一个程序。她甚至还建立了循环和子程序的概念。由于她在程序设计上的开创性工作,Ada Lovelace被称为世界上第一位程序员。
任何设计活动都是在各种约束条件和相互矛盾的需求之间寻求一种平衡,程序设计也不例外。在计算机技术发展的早期,由于机器资源比较昂贵,程序的时间和空间代价往往是设计关心的主要因素;随着硬件技术的飞速发展和软件规模的日益庞大,程序的结构、可维护性、复用性、可扩展性等因素日益重要。
1,程序设计是给出解决特定问题程序的过程,是软件构造活动中的重要组成部分。程序设计往往以某种程序设计语言为工具,给出这种语言下的程序。
2,程序设计过程应当包括分析、设计、编码、测试、排错等不同阶段。专业的程序设计人员常被称为程序员。
3,任何设计活动都是在各种约束条件和相互矛盾的需求之间寻求一种平衡,程序设计也不例外。在计算机技术发展的早期,由于机器资源比较昂贵,程序的时间和空间代价往往是设计关心的主要因素;
4,随着硬件技术的飞速发展和软件规模的日益庞大,程序的结构、可维护性、复用性、可扩展性等因素日益重要。
5,程序设计是对软件进行规划,对软件中所用到的架构,数据结构进行设计,而不管具体的算法,因为在面向对象的设计里,算法是属于某个类的,是局部的。
总之程序设计相当是在确定轮船航行的大方向。
而编程就好比是在划桨,编程就是要操作程序设计定下来的数据结构,因此算法是在编程过程中确定的,而不是在设计中,所以二楼说的有一定道理
一般程序(软件)设计是由架构师来负责,具体的编程工作初级程序员在做,当然核心的算法由于涉及到效率等因素还是要一个高级程序员来搞定。
本人现在正处在Junior阶段(公司最近评的),日常工作就是分析代码和改代码