以前超市结账,老板用计算器,现在基本都用pos机。显然pos机更方便,计算器只能计算,
计算器
如果要退换货,打印收银条,计算器就搞不了了。因为计算器里只有当前总金额,没有记录每个商品的详细信息。比起计算器来,pos机这个计算机系统里存储了更多的信息。而且pos 机更自动, 输入商品,直接扫条码 就可以了 , 直接自动查找商品价格, 不需要操作人员记忆和输入商品价格。 所以 pos 机比 计算器 还多了 流程控制的功能。
收银机自动化程度高多了
当然pos机比计算器多的这些功能需要开发对应的pos机软件。
从这个问题上,也可以看出计算机编程语言,主要是做什么功能的。
一个是规定程序里存储什么信息。比如c语言的 变量,数组, 结构体,都是 用来存储信息的,变量, 数组,结构体 只是格式不同而已。python语言的变量,list(列表),dict,(字典),tuple 也是用来存储信息的。
一段 c语言程序
二个是规定程序的执行流程,条件判断语句,循环,c语言中的goto语句,都是用来控制程序的执行流程的。python当然有条件判断和循环语句,只是和c语言的大同小异。
单纯的数值计算功能,由计算机硬件电路完成,通过编程语言来写出软件, 就可以控制计算机系统存储什么样的信息, 按照什么样的流程来运行。构成了 功能各异的 各种 app.
同样是存储信息,c语言,比python可以控制更多的硬件细节。比如c语言变量是有类型的,分int , long , char ,float, 等等,这个就可以相信规定每个变量 占用空间大小, 详细格式。而且c 语言可以通过指针,来控制信息存储具体的硬件地址。 所以c 语言适合用来编写底层程序, 比如 操作系统,驱动程序。python 信息存储的地址,以及格式 都是有语言解释器本身来自动控制的。所以编写同样一个功能的程序, 用python 比c语言速度快的多。如果要计算大数相乘,比如两个1000位的十进制数,c语言实现起来,需要调用大数计算库,比较复杂,python语言,直接就可以计算。
在信息存储上,Python提供了方便的list和dict 符合人类自然的思维习惯,c语言中,要实现按关键字存储和检索信息, 实现起来就复杂多了。
c语言里的位操作,以及位段功能,可以精确控制信息存储每一比特的格式。
在流程控制方面,c语言和java以及python功能上没什么重大差别, 都提供条件判断, 循环等机制。 就是具体的语法细节不一样, 比如 c语言有 switch 语句, python 实现类似的功能要用 if elif 语句来实现。c语言有 do while 循环, python 没有。
反正,编程语言的学习,比高数简单多了,比学习英语也简单多了。只要多做几个有实用功能的程序,就会很快熟悉一门编程语言。档次高的软件开发工作,都涉及到算法设计和开发。 现在开源软件平台流行, 人工智能也有很大的发展, 传统上把业务流程实现为 编程语言的工作,需求量在减少。 一个安卓平台,装机量有几十亿,好多重复劳动被消除了。