首页 > 编程知识 正文

程序员要会什么,程序员工作

时间:2023-05-05 00:20:15 阅读:153307 作者:1412

我是程序员。 我知道程序员在做什么,但周围有很多不认识的朋友和家人。

他们经常认为程序员精通计算机。 包括计算机的硬件和软件问题,以及在计算机上安装系统。

事实上,除了我的朋友和家人,大多数不成为程序员的人可能都不太清楚程序员在做什么,什么是程序,什么是软件。 程序员在做什么,这可能是很多想进入软件业的人想知道的问题。 那么,根据我现在的理解来陈述我的意见。 如果理解有错误的话,欢迎指出来。

无论软件和硬件的区别如何,电脑和手机目前使用非常普遍,手机和电脑都有微信、QQ、支付宝(Alipay )等多种软件,这一点众所周知。 他们都是软件,手机的基本功能电话、短信、手机和电脑的基本操作系统等也都是软件。

与这些软件相对应,我们可以直接接触的设备,如电脑、手机、平板电脑等是硬件,软件最终取决于硬件。

在软件的部分分类中列举了很多软件,但正如硬件各不相同,软件也各不相同,软件也有很多分类。

例如,在Wechat、QQ、支付宝、电话、邮件等中是APP软件,在windows系统中是操作系统软件。

APP软件一般具有直接为特定用户服务的功能,操作系统可以直接管理硬件资源,APP软件一般依靠操作系统。

这些是软件,但区别可能和飞机和火车一样。 能开飞机的人不一定能开火车,制造火车的人也不一定制造飞机。

软件和程序之间的差异越大,越能了解软件和硬件之间的差异,对软件有一个大致的概念,然后才能了解软件和程序之间的差异。

一般来说,软件由程序组成,软件一般是具有特定功能的可用软件包,程序可能是小型代码。

如果说轿车是软件,那么上边的车轮、方向盘、离合器都是不同的程序,各种部件最终组装在轿车上,各种程序的碎片最终形成软件。

在程序和代码上面,我说过程序可能是短代码,但在生活中可能有人会说程序员是代码农业,或者敲代码。 那么,代码是什么?

在某种意义上,代码和程序可能可以理解为一个意思。 简单地说,代码是用编程语言编写的一行字符串。

什么是字符串,简单理解就是几种文字的组合,什么是文字,常见的字母和数字可以称为文字。

如果不考虑中文编程语言,则可以根据特定规则将代码理解为由字母、数字和各种符号组成的字符串。

由于该字符串遵循特定的格式,最终可被电脑、手机等电子设备识别,并能做点什么。

什么是编程语言,代码就是根据特定规则编写的字符串。 由于这些特定的规则,最终这些字符串可以转换成电信号,而电信号才是直接与电子设备的硬件进行交换。

电信号在某种意义上只有有电或没有电的区别。 在中,第一个直接转换为代码的字符串由0和1组成。 一个表示有一个,另一个表示没有。 从专业的角度来说,以真或假、真或假的格式构成的代码称为机器语言。

简单的0和1组成的字符串对人来说一定很不友好,完全看不懂,所以需要比较翻译特定的对比规则。

为了对人类友好,在由0和1构成的机器语言的基础上,开发了一种新的编程语言,它增加了一种叫做汇编语言的英语单词规则,这些英语单词被称为助记符号。

汇编语言由于在机器语言上添加了助记符,所以一定容易理解和记住,但由于助记符有限,实际上并不是那么简单。 在此基础上,开发了更人性化的编程语言,称为高级编程语言。 在这个阶段语言的思想是面向过程的,代表性的是c语言。

什么是面向过程呢? 我理解的是这一步做什么,下一步做什么。

那么随着软件技术的发展,其他高级编程语言如C、JAVA、C#、IOS等也得到了进一步的发展。 JAVA等语言的思想是面向对象的,关注点是这个东西能做什么,有什么,而不是关注过程。

面向对象的思想相对于过程导向,对复用、重用是友好的。 但是,做一件事一定有优先顺序,因此最终过程导向的东西在里面。 并不是面向对象忽略了流程。

程序员是什么,有了那样上边的知识基础,就能说出什么是程序员。

在上面的叙述中,应该知道软件由基于编程语言编写的程序组成,用于操作电子设备。 那么,写这样程序的人一定是程序员。

但是,要说程序员敲代码,并不完全正确。 因为程序员的分类至少有开发、测试、运行时、DBA这些,开发主要是写代码。 测试和运行时以及DBA不一定会写代码,但他们实际上是程序员。

程序员有什么分类

其实上面也提到了,开发、测试、运输、DBA都是程序员。 这是一个比较大的分类,但不是唯一的。 如果是为了简单地初步了解程序员的话,我觉得足够了。

开发主要实现软件的功能,主要是敲代码。

测试主要是进行专业的测试和验证,但不限于功能,还需要进行性能测试,在很多情况下,可能需要编写脚本代码来支持自动化测试。

运行时主要负责软件运行时环境的构建和部署以及对某些软件使用问题的支持,可能需要编写脚本和其他代码来支持部署自动化。

DBA主要处理与数据库相关的事务,经常需要优化与数据库交互的sql,sql本身也是代码。

除了上面说的,单纯的开发,事实上

际还可以有更多细分,例如主要负责看得到的页面的,称作UI,但是很多时候实际没有专门的UI,而是页面由前端一起负责,前端程序员实际就是直接操作看得到的页面功能的程序员。
与前端对应的就是后端开发程序员,实现一些看不到的功能逻辑,有的直接有前端的功能页面对应,有的就是纯粹的后端程序。
上边的简单分类实际是站在软件分层的角度说的,那么实际还可以站在编程语言的角度分类,例如java程序员、c++程序员、c#程序员等等,这些分类实际就是以命名的这个编程语言为主,但是实际未必就只会这一种。
就拿java后端程序员来说,一般可能都还会一些前端javascript语言以及linux的shell语言。

怎么成为程序员

可能有一些不是程序员的朋友想要成为一个程序员,因为目前公认的,程序员普遍收入是比较高的。
那么怎么成为一个程序员呢?
首先,我觉得要先确定好自己的方向,是想做软件开发,还是软件测试,还是软件运维,还是DBA?或者所有都做,成为一个全栈程序员?
众所周知,人的精力是有限的,术业有专攻,虽然也有很多人是全栈程序员,是什么都做,但是个人认为如果零基础想要直接成为一个全栈,实际是有很大难度的,所以个人觉得还是先找一个熟了再说。
话再说回来,怎么成为一个程序员呢?
首先,还在读书的,可以选择计算机专业,很多计算机专业,学校都会有程序员相关的专业和课程。
其次,如果已经选择了非计算机专业或者已经出了社会,也可以自学或者参加培训机构的培训,或者有人脉的也可以直接找熟人教。
计算机专业就不说了,应该也不需要看这篇文章。
先说自学,这个对于多数人都是很有难度的,很容易信心满满的开始,垂头丧气的放弃,虽然我觉得很多编程语言入门都很简单,但是自学依然还是会有很大难度。
再说培训,这个是很多野生程序员的选择,正所谓术业有专攻,人家就是吃这碗饭的,自然有能吃这饭的道理。相对于自学,参加培训肯定更容易入门学会,只是不同的培训机构水平不同,不同的培训机构理念不能,能否找到好的培训机构就需要注意。
另外,培训机构一般讲的都很快,最好是先试听一段时间再说。
最后再说熟人教这事,这应该选择的人比较少,虽然可能看起来省钱,但是也可能因此没有那么大的压迫感,也因为并不是专业教学的,所以最终很难学会。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。