作为一个刚入行的小白,你可能想知道:
- 软件是如何开发出来的?
- 程序员是如何工作的?
- 需要用到哪些技术?
- 你如何才能入门?
- 怎样快速在这个行业里找到工作?
![ec9e8d75fcfa8b701ccb3c22e17e8860.png](https://i-blog.csdnimg.cn/blog_migrate/0f85017bded6f6ff20cf875886fc2433.jpeg)
我们就先来看看在软件公司里不同的程序员是如何协同工作的,需要哪些技术以及这些技术之间相互的联系。
知道了这些,更有利于你明确未来学习的方向和目标。
1.什么是软件开发?
我们都知道计算机系统是由「硬件」和「软件」两个部分组成的。所谓硬件就是计算机的物理部分,就是那些你可以看得见摸得着的外壳、屏幕、电路板这些。但是只有这些计算机是不可以工作的,就像人如果只有完整的躯体是不够的一样。
所以,当计算机从生产线上装配完毕以后或者到我们手中后,要做的第一件事就是给它装上各种软件(例如Windows, QQ, Steam)。
软件(Software)就是使计算机可以运作起来完成我们指定任务的程序和数据。
这和人类也很像——我们在出生以后,成年人就给我们的大脑装入各种数据和程序,我们识别人和物体并记住他们,学会喝水、吃饭、说话等等。
除了现有的、已经被开发出来的软件,各行各业的用户还有自己特定的需求,软件开发就是根据用户的需要,帮助他们编写一系列的程序,满足他们正常或变态需求的过程。
软件开发是一项包括需求获取、开发规划、需求分析和设计、编程实现、软件测试、版本控制的系统工程
1.2 谁在开发软件?
从事软件开发的公司有两种:
- 一种是根据已有客户的需求,先签订合同,再定制软件系统的「项目型公司」。
- 另一种是创造一个软件系统,然后让很多客户购买或使用它的公司,这种公司我们称为「产品型公司」。
还有一种叫「互联网公司」,这种定义不太好下,因为现在谁都在宣称自己是互联网公司了,但是互联网公司也是做产品的,所以我们还是把他们当作产品型公司好了。
在这些公司里