浅谈软件工程

浅谈软件工程

三年前开始接触编程,真正开始写代码也有两年多的时间。

 

1.代码积累

我们在谈论软件工程的时候,往往是不受语言的限制的。用任何一门语言都可以写出代码,都可以看做是一个程序,一个软件。然而,如果一个人没有深入的了解编程语言,他对于软件工程的理解也仅仅是浮于表面。这就像有个人说在优化一个hello world程序一样可笑。 
实践出真知,真正敲了代码才能体会到软件工程的思想。

 

2.指导但不限制

软件工程是一种思想,简单来说是指导一个程序员(或者一群程序员,或者一个开发程序的团队)如何写一个软件,但是只是指导,而不是限制程序员如何写代码。我们在写一个软件的时候回遇到很多问题,比如用什么样的数据结构,用什么样的设计模式,如何保证代码执行的效率,如何降低后期维护的难度等。通过学习软件工程这样一种思想,我们可以更加从容的应对这些问题,但是我们也不应该将我们的思想局限在软件工程中,我们应该结合自己的实际经验以及实际的需求来得出更优的解决方案。 
学习软件工程是为了让我们在开发软件的时候有一套正确的方法论。

 

3.工程

我们在讨论工程这一词语的时候,我们心中其实是有一定默认标准的。很显然,我们不太会把砌墙这样一件事情称为一个工程,但是我们会把建造一栋房子称为一个工程,而砌墙是这个工程中的一部分。我们不会把一个简单的hello world代码称为一个工程,因为在我们心中,工程不是这么简单的。所以我们谈论的软件工程一定是有一定复杂度的代码。 
所有的工程都是如此,最初,处于学习阶段,做几个简单的尝试,对于软件工程就是写一些demo。等到学习的东西足够多的时候,开始想实现一些“炫酷”功能,着手写一个简单的“工程”,等到代码到了几百上千行的时候,为了让自己看明白,开始注意变量函数命名的规范化。等代码到了几千上万行的时候就会开始注意设计模式,注意代码的逻辑结构,注意代码扩展性等问题。等到需求的不断扩大,一个人无法做完的时候,开始多人合作,这时候就会去注意代码的可读性,适当的添加注释,写一些简单的doc,注意版本管理等。

 

你可能感兴趣的:(浅谈软件工程)