非专业人员该学什么程序语言

news2024/9/22 23:32:51

编程,一度被认为和驾驶一样是一项现代社会的基本技能,非专业人员也该有所掌握,中小学也在教。但实际上,它的普及程度远比驾驶差,掌握这个技能的人很少,在学校学过的知识,因为工作中用不上也都忘掉了。
为什么会这样?
要搞清这个问题,先要回答:为什么要学编程?学来想干什么?
除了个别人就是兴趣大之外(这些人很可能成为专业人员),大部分非专业人员学习编程的目的应该是辅助日常工作。确实有很多事务如果用编程来解决是非常轻松的,而手工去做就非常麻烦。比如把 500 个 Excel 表格合并起来、用花名册生成员工卡片等等。街上有很多培训班鼓吹学完 XXX 后工作效率一日千里,也会令很多职场人士心动。

这种目的,需要学习两层内容:
第一层是程序的基本逻辑
比如变量、分支、循环等等。不理解这些,几乎啥程序都写不出来。不过这部分内容并不复杂也不算很多,有 Excel 公式使用基础的同学,稍加努力就可以学会了。而且,几乎所有程序语言在这方面的能力都很接近,甚至使用的关键字和语法规则都很像,学会一种再去看其它也容易,可以举一反三。
但是,学了这一层内容,也只会做一些中小学的算术题,比如解个鸡兔问题、分解个质因数什么的,练练脑筋没问题,对协助日常工作几乎毫无用处。
不幸的是,面对非专业人员,很多教程书籍甚至培训教到这里就结束了,或者说只能教到这里,后面会解释。

要想学以致用,还必须学习第二层内容,就是结构化数据及其运算
希望编程来解决的日常工作,其实也就是处理手头的数据,这些绝大多数都是 Excel 表格或者能填入 Excel 表格里的数据,比如这种:
 

clipboardpng


这种数据有个学名叫结构化数据。学会了结构化数据的概念以及常见运算,比如表、记录、字段、分组、连接等,才可能真正应对日常工作。结构化数据通常都是批量出现的(表格里通常会有很多行数据),所以还要熟悉集合相关的概念,不过高中数学知识足够了。
再说一遍不幸,和第一层基本逻辑会有无数的课程在讲述的情况不同,面向非专业人员的教程很少涉及结构化数据的知识。大概只有数据库课程才会系统地讲述这些东西,但这玩意儿却是日常工作的基础,而且也没那么难,非专业人员也能掌握。比如你是不是经常用 Excel 做筛选、汇总甚至也会做连接(连接这词可能不懂,其实就是 VLOOKUP 干的活)。但没有系统学习的话,碰到复杂些的情况就会糊涂了。
这两层知识都掌握之后,非专业人员就真地可以得心应手地对付日常工作了,工作效率嗖嗖的。

那么,学哪种程序语言?
对于第一层知识,理论上选择余地很大,甚至是选什么都可以,因为这是所有程序语言共有的内容。那么只要找一种擅长处理结构化数据的程序语言就行了,方便学习第二层知识,也可以学以致用。
道理上是这样,但面对零基础同学时,还不能搞出太复杂的环境配置,那同学们会晕掉的。零基础同学需要即装即用,甚至就不用安装更好。
早期(30 几年前)机器上都自己有 BASIC 语言,确实是不用安装直接可用的,我们当年都学过谭老师那本著名的书。但是搞不清为什么现在都没有了,也说不清这是进步呢还是退步呢。
现在不需要安装的语言主要有两种,一个是浏览器自带的 JavaScript,另一种是有 Excel 自带的 VBA。这两种东西虽然免安装,但真要用起来,得理解浏览器和 Excel 内部的许多概念(专业术语叫做对象),比程序逻辑本身还难,根本不适合初学者。
有时候很怀念当年的 BASIC。

满大街都是培训班的 Python 怎么样?看上去很美。
如果只用来学习第一层知识,Python 可以说没问题,只安装基础功能包并不困难,在开发环境中写代码运行也问题不大。
但如果来学习结构化数据的话,对于大多数非专业人员来讲,可以踏踏实实地说:你就学不会!更谈不上学以致用。原因可以参考这个 其实你就学不会 Python
Java、C/C++ 这些就更不用提了。面向对象本来是个高级玩意儿,不适合初学者去理解;结构化数据处理能力却几乎为 0,学了也没用;开发环境还很复杂,毕竟这些东西是让专业人员来搞大型软件的,复杂有复杂的道理。
中小学把 Java 作为作为计算机启蒙课在教,真是匪夷所思。
SQL 呢?它的结构化数据处理能力对于初学者来讲是足够了,而且也真地学得会。它还是一个奇葩,可以不用学第一层而直接跳第二层(所以我们前面都说“几乎”,没说死),不用理解变量循环这些概念也能做出还挺复杂的查询。
然而,还是有然而。SQL 要运行在数据库中,但非专业人员通常搞不定数据库的安装,也没本事把 Excel 倒腾进数据库(不然也没办法用 SQL 处理)。结果,学了也没有用武之地。

说来说去,那岂不是没有了?
是的,如果看这几个主流的程序语言,真地没有。要么你就学不会,要么学了也没啥用。
也正因为如此,虽然编程概念炒得火热,但非专业人员始终用不起来,不停地有人问该学啥。这事,开再多培训班也没有用,培训班又没有能力去改进或发明程序语言。这本质上是没有米的问题、不是会不会煮的事。

大概只有 esProc SPL 是适合零基础非专业人员的程序设计语言了。
作为程序语言,SPL 有完整的程序基本逻辑(第一层知识);SPL 全名是 Structured Process Language,发明它就是为了对付结构化数据的,其结构化数据处理能力超强,可以说当前程序语言这方面能力最完整的,远超过 Python 和 SQL,细节就不说了。中英文双语版本,一键安装,特色网格很容易编写和调试,精心设计的语法和丰富的函数库也更易于掌握;它可以直接读写计算 Excel 文件,甚至还能对着文件执行 SQL(所以还可以用来学 SQL)。
不过,SPL 并不是为了初学者特意发明的,而是为了解决 SQL 难写和太慢的问题。但真用起来会发现,它的体系简单易用,很适合初学者来学编程,关键是真能学以致用。
有兴趣到 SPL 论坛上去找资料吧,这里有 SPL 程序设计图书 【程序设计】 前言及目录 ,面向职场人员这里还有很多实践 帮你早下班 - esProc 桌面版与 Excel 数据处理 。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2054191.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

一文弄懂评分卡是什么

在最开始的信用审批过程中,客户的信用等级主要由专家进行主观评判。随着数据分析工具的发展和数据收集、存储越来越容易,各大机构逐渐使用统计模型将专家的评判标准量化为评分卡模型。从而更有利于客观评价客户风险,和批量高效对客户进行风险分级。随着技术的发展,机器学习…

力扣经典题目~快乐数~零基础也能看懂哦

202. 快乐数https://leetcode.cn/problems/happy-number/ 题目描述: 编写一个算法来判断一个数 n 是不是快乐数。 「快乐数」 定义为: 对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。然后重复这个过程直到这个数变为 1&…

MyBatisX逆向工程

目录 逆向工程 准备好数据库、表 安装MyBatisX插件 项目连接数据库 引入依赖pom.xml 生成实体类、映射文件、接口 逆向工程 正向工程:先创建Java实体类,由框架负责根据实体类生成数据库表。Hibernate是支持正向工程的。 逆向工程:先创…

晶体管电路设计学习(一)放大电路的工作

我们这里学习晶体管电路设计,会从晶体管到场效应管直到复杂的运放器件,主要是进行体系化的深入学习,只是一个学习和记录的过程。 放大电路的作用是将小信号放大为大信号。例如,将0.1V的信号提高为1V 信号----即是放大。 1.首先,用晶体管组成一…

TinyC编译器4—编译器基本流程

1.什么是编译器,为什么要开发编译器 编译器:将一种程序语言翻译为另一种程序语言的计算机程序。一般来说,源程序为高级语言,而目标语言则是汇编语言或者机器码。 一开始的程序员是用机器码写程序,非常容易出错&#…

UE5中制作箭头滑动转场

通过程序化的方式,可以制作一些特殊的转场效果,如箭头划过的转场: 1.制作思路 我们知道向量点积可以拿来做投影,因此可以把UV空间想象成向量坐标,绘制结果就是在某个向量上的投影: 绘制结果似乎是倾斜方…

【ISAC】Federated Edge Learning With Misaligned Over-The-Air Computation

[1]-Tse, David, and Pramod Viswanath. Fundamentals of wireless communication. Cambridge university press, 2005. 文章目录 1-综述2-系统模型 1-综述 misaligned OAC:预编码矩阵(含噪声) 没同步好 2-系统模型 θ ∈ R d \theta \in\m…

云计算实训31——playbook(剧本)基本应用、playbook常见语法、playbook和ansible操作的编排

playbook(剧本): 是ansible⽤于配置,部署,和管理被控节点的剧本。⽤ 于ansible操作的编排。 使⽤的格式为yaml格式 一、YMAL格式 以.yaml或.yml结尾 ⽂件的第⼀⾏以 "---"开始,表明YMAL⽂件的开始(可选的) 以#号开头为注释 列表中的所有成员都开始于…

耐氟化氢PFA蒸馏冷凝装置PFA烧瓶应用于氟化工半导体行业领域

氟化氢,化学式为 HF,是一种无色、有刺激性气味的气体,它在空气中会形成白色的雾。氟化氢具有很强的腐蚀性,能够侵蚀许多金属和非金属材料。这种腐蚀性使得氟化氢在工业上被用于蚀刻玻璃、清洗半导体器件以及加工金属等领域。 氟化…

Ubuntu | 更换 Solc 版本

目录 第一步:安装 pip3第二步:安装 solc-select第三步:查看可安装版本第四步:安装指定版本第五步:使用指定版本 前言:部署智能合约时报错,发现是 Solc 版本太高。 参考博客:Solc 安…

Spring Boot整合Quartz框架

说明:Quartz是一个定时器框架,可以实现定时任务,本文介绍如何在Spring Boot项目中整合Quartz框架,Quartz介绍参看下面这篇文章: 【Quartz】Quartz定时任务框架 创建Demo 首先,创建一个Spring Boot项目&a…

Qt Creator安装配置指南

1.官网下载在线安装包 官网地址: https://www.qt.io/download-dev#eval-form-modal 2.双击在线安装包按引导流程安装qt 3.选择自己要配置的qt环境版本 3.1如果要选中低版本的qt环境我这里安装的是qt5.15.2的(其他低版本也一样的),要勾选上Archive(存…

拓展销售网络:立即领取企元数智小程序合规分销系统!

"拓展销售网络:立即领取企元数智小程序合规分销系统!"企业的销售网络是企业成长和发展的关键,而企元数智小程序合规分销系统能帮助您快速拓展销售网络,实现销售业绩的持续增长。 通过领取企元数智小程序合规分销系统&am…

2024软件测试八股文【答案解析+文档】

🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 Part1 1、你的测试职业发展是什么? 测试经验越多,测试能力越高。所以我的职业发展是需要时间积累的,一步步向着高级测试工程师…

Go语言导入gin包

访问https://pkg.go.dev/页面,输入gin 点击README,点击Getting started,点击Getting Gin。 以VSCode通过mod命令导入gin包为例 安装第三方库 go mod init go mod tidy运行成功创建go.mod文件 go get -u github.com/gin-gonic/gin创建Go项目&#xf…

养猫换毛季总结,希喂、小米宠物空气净化器功能测评,真实PK

猫咪作为小家中的一员,陪伴我们度过了非常多时光。而养猫一定会面临换毛季的问题,在换毛季期间,宠物会大量掉毛,不仅破坏家里的整洁,而且还可能被猫咪误吞,导致毛球症。这需要我们铲屎官选找到有效的清理毛…

Spring cloud alibaba(二)RibbonLoadBalance

一、负载均衡 其含义就是将负载(工作任务)进行平衡、分摊到多个操作单元上进行运行;(就是客户端调用服务提供方时的如何调用多个实例的策略) 1、主流负载均衡的方案 集中式负载均衡:在消费者和服务提供方中…

使用excalidraw搭建自己的中文手写画板

使用excalidraw搭建自己的中文手写画板 成品预览地址:https://guizimo.github.io/excalidraw/ 原excalidraw提供了英文的手写体,但中文还是正正方方的,感觉不搭。希望中文也可以有那样一种手写风格。 本文使用的是excalidraw,它…

ArchWsl 运行图形界面程序

最新的WSL2已经支持图形界面(wslg)了,这里教大家运行GUI应用(桌面环境同理,但是我建议大家不要安装桌面环境,没有桌面环境也可以单独运行GUI应用) 更新WSL 建议更新到最新版本,早期…

web实现drag拖拽布局

这种拖拽布局功能其实在电脑操作系统或者桌面应用里面是经常使用的基础功能,只是有时候在进行web开发的时候,对这个功能需求量不够明显,但却是很好用,也很实用。能够让用户自己拖拽布局,方便查看某个区域更多内容&…