2008年8月6日星期三

软件开发(2)

永远不要以为你知道用户想做的一切事情。
在软件开发(1)里面写了很多关于软件的编写,但是软件的开发不仅仅是在于设计,而且编写的过程也是很重要的,还有就是团队的重要性,没有一个好的团队是不能编写大型的软件的,或者是很难的。还有就是要进行调试,修改bug也很重要。
在这几方面注意,才可以开发出不错的软件。
好好学懂一门编程语言,尽可能的去精通它,现在就要确定自己的目标,那样就更容易前进了,还有就是多交流,那样学习的更快。
还有就是不能急于开发而忽略很多细节,尤其是我们现在学习开发的初级阶段。
原来软件的一些小bug也许就会导致很多人丧失生命,其实很多时候是把我们人类变得更加的不可思议了,所以自己编写自己的软件的时候一定要好好的编写,不要马虎,好好的调试,把文档写好,写详细。我们的生活中有很多我们看不到的软件在运行着,所以软件开发这是一条不错的道路。
程序一般是编写,编译和运行。但是细节问题有很多,今天就简单的介绍一些,而不涉及过多的细节问题。
a.out的意思是assembler output,即汇编输出。
系统为正常使用提供的程序,包括用于程序开发的工具,都可以在目录/usr/bin中找到,系统管理员可以为某个特定的主机或本地网络添加的程序通常可在目录/usr/local/bin或/opt中找到。
*头文件*
用C语言及其他的程序设计语言进行程序设计时,我们要用头文件来提供对常量的定义和对系统及库函数的调用的声明。对C语言来说,这些头文件几乎总是在/usr/include目录及其子目录下。那些依赖于特定的Linux版本的头文件通常可在目录/usr/include/sys或/usr/include/linux中找到。调用C语言编译器时,我们可以使用-I标志来包含保存在子目录或者非标准位置中的include文件。用grep命令搜索包含某些特定定义和函数原型的头文件是很方便的。
*库文件*
库是一组预先编译好的函数的集合,这些函数都是按照可重用的原则编写的。他们通常由一组相互关联的函数组成并执行某项常见的任务。标准系统库文件一般存储在/lib和/usr/lib目录中。.a代表的是静态函数库。.so代表的是共享库。静态库,也称作归档文件(archive),按照惯例它们的文件名都以.a结尾。用ar程序和gcc -c命令对函数分别进行编译。静态库的一个缺点是当我们同时运行许多个应用程序并且它们都使用来自同一个函数库的函数时,就会在内存中有同一函数的多份拷贝,在程序文件自身中也有多份同样的拷贝。这将消耗大量宝贵的内存和磁盘空间。程序使用共享库时,它本身不再包含函数代码,而是引用运行时间访问的共享代码。当编译好的程序被装载到内存中执行时,函数引用被解析并产生对共享库的调用,如果有闭源共享才被加载到内存中。

没有评论:

time