据复杂性分为不同类别；实现的算法通常经过剖析（）以测试其性能。请注意虽然一个算法在理论上有效可行，但是一个糟糕的算法仍会浪费宝贵的计算机资源。（更详细信息，参见算法信息论（））
开发.编写程序是以下步骤的一个往复过程：编写新的源代码，测试、分析和提高新编写的代码以找出语法和语义错误。从事这种工作的人叫做程序员。由于计算机的飞速发展，编程的要求和种类也日趋多样，由此产生了不同种类的程序设计员，每一种都有更细致的分工和任务。软件工程师和系统分析员就是两个例子。现在，编程的长时间过程被称