编程学的是什么

编程学的是什么

初识

说到编程,很多人第一反应是敲代码。这种思维定势并不能说完全错,但有些过于绝对。在我看来,编程是将现有业务逻辑通过代码呈现出来的一个过程。


奇妙的感觉

这种感觉像盖房子。业务逻辑是设计图纸,代码是建筑材料。二者相辅相成,有先有后,万丈高楼平地起。


业务优先

任何时候,业务都是第一位的。不管你用什么语言,不管你用什么技术栈,都不会简化你的业务。时间久了,你会发现,万变不离其宗,不变的一定是业务本身。登陆就是登陆,注册就是注册。


  • 业务逻辑非常重要。如果你都不知道需求,不清楚自己要干什么,那你怎么写代码?

编程是一门艺术

所谓的艺,就是编程本身,这是一种技能,不是人人都会的。所谓的术,就是赚钱的方法与手段。艺的高低,往往决定术的发展空间。

感知

编程最终还是要落在代码上的,但前提是你已经知道了自己要干什么。当然,也许有时你会有些迷茫,不太清楚自己现在要做什么,也不清楚下一步要做什么。不要慌,送你一句话:“生活是什么样的,程序就是什么样的。”


身临其境

很多人都习惯性把生活与学习分开,其实这样并不太好。就像各个学科是相通的一样,有时候,合在一起反而会有意外之喜。你不熟悉编程,还不熟悉生活吗?

  • 页面资源加载顺序是由上至下的,程序执行也是如此。那它和生活有什么相关呢?想想蒸米饭的过程,淘米,加水,插电这个自然顺序,都是固定好的。

  • js表单验证。用户什么都没输入,直接点了提交,必然是要有提示信息的,且表单无法顺利提交,或者干脆提交按钮就不能点击,这是程序的逻辑。想想生活中,门锁着,没钥匙怎么开门?好,也许你说是密码锁,指纹锁,面部识别,语音识别,即便如此,你也需要干点什么吧,就算是面部识别还需要把脸贴过去。这就是非空判断存在的意义,也是程序与生活的关联。

  • 拿常用的建站模块来讲,可分为头部,主体,尾部三部分。这种感觉像是早午晚一日三餐,相互独立的同时,又构成了一天完整的饮食。

  • 也许你会觉得,程序与生活的关联并没有那么强。如果你真这么想了,多半是代码敲得少。

不惑

说了这么多,重点就是一句,业务至上。程序与生活的关联性只是为了方便你熟悉业务,最终还是要落实到业务开发上。

常用逻辑思维

登陆逻辑

这里以form表单为例,前台通过表单的action属性将账号密码传递到后台。后台要做的事情就是接收数据,查询数据库,对不同结果进行不同的处理。

  • 先根据用户名查询,若查询为空,则说明用户名不存在,提示用户注册。

  • 根据用户名查询,查询结果不为空,说明该用户确实已经注册,此时比对用户输入的密码与数据库中注册时保存的密码是否一致。

  • 若一致,登陆成功,反之,登陆失败。

注册逻辑

进行注册的时候,通常会用ajax判断用户名是否被占用。这里同样以form表单为例,不使用ajax提交。

  • 用户填写完"用户名"文本字段后,在失去焦点时发送ajax到后台。

  • 后台接收ajax带过来的数据,查询数据库,若为空,说明该用户名没有被占用,可以使用,反之,已经被占用,提示更换用户名。为方便标识,后台可以响应一个+1和-1表示占用与否。(个人习惯如此)

  • 前台通过ajax回调函数中的数据判断结果是+1还是-1,并根据不同结果进行相应的页面提示。

  • 提示用户名可用后,将数据正确填写完毕后点击提交按钮,数据通过表单的action属性提交到后台处理,本质就是一条数据库插入语句,结果无非是插入成功,插入失败,再对不同结果进行不同响应即可。

洞玄

再次强调一下,不管你用多高端的东西,都不会简化你的业务逻辑。

  • 以java为例,相比于jsp+servlet的开发方式,ssm框架在整体的执行流程,层次结构上都有十分明显的优势。即便如此,业务也都是一样的,只不过处理方式由一个个的servlet迁移到了controller中的一个个action

  • 大多数情况下,这些业务写一次就够了,下次直接复用,改成对应的语言环境即可。

  • 不要总想框架,框架本身并没有多牛逼,如果没有业务的需求,框架毫无用武之地。单纯的写写demo,用框架,杀鸡焉用牛刀?

知命

学编程学的是什么?一定是业务。你以为自己学的是java,其实学的是业务。你以为自己学的是php,其实学的是业务。你以为自己学的是node,其实学的是业务。你以为自己学的是python,其实学的是业务。

  • 没学会走就别跑了。很多学前端的,基础的html,css,js还没搞明白就开始上angular,react,vue,不是说不行,只是说,这样定然太过吃力。再者,框架你熟悉了又能如何?基本的业务思维都没有,框架反而是累赘。

  • 重基础永远是没错的,不要好高骛远,基础扎实才能在合适的时机一跃而起,也就是传说中的厚积薄发。

  • 写这么多,不求你直接一念初识入知命,只希望能对你有所帮助,加油。

学习资源推荐https://blog.csdn.net/qq_42813491/article/details/90213353

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值