• 思考程序


      就拿我来说吧,以前写程序的时候,总是不喜欢思考,认为只有大神写出来的东西,我们在这个基础上能用就行了。

    有一次别人告诉我:“程序,就是要思考大神写的框架,不然,你到哪个公司都一样,对你没有什么提高。”。

      这句话的升华告诉我们,无论是哪一行,学什么,都要学会从生活中发现“不一样的东西”。

         什么是编程思想?这个问题太过于概括,也许你会说:如果我学的是JAVA,那么当我吃透JAVA编程思想这本巨著以后,我就理解了一部分关于JAVA的编程思想。

      那么我请问:如果没有这本书,你怎么才能深入的去理解JAVA的机制呢?假如没有外界的资料,或许靠你自己,永远也无法知道编程思想内部的一些东西。

      孔子曾经说过一句话:“学而不思则罔,思而不学则殆”。这句话作为每个中国人其实我觉得不用我解释其含义了吧?

    关于"思考"究竟应该思考一些什么好呢?才是有价值的呢?

      我就用程序来给大家打比方吧,很多人,他学了很久的编程,看了很久的书,在公司里做了很多的项目。但是有一天,

    我如果要他脱离公司的框架,给他一个简单的需求:比如,我说,给我做一个淘宝类似的网站,反正看起来喜欢就行,能赚钱就行。这就是需求,然后限期N个月做好。我想,就算一个2年工作经验的人,我不说你做不出来,很多人看到这个需求的时候。

    第一反应就是大脑肯定一片空白,不知道如何下手。

      我是一个入行仅仅一年的小菜鸟,大家如果觉得我说得不对,可以关掉窗口。

      那么继续吧,牢骚发完了,那么造成大脑一片空白的原因有2个,一个:需求不明,二个:代码怎么写也不知道。

    因为大家都习惯了在公司里做事,只是做自己的一块小功能,而忽略了整体。

      那么造成需求不明的原因在哪里呢?

      我个人认为并不是工作经验过少,或者不是搞这一块的,因为总有理由说自己不是搞需求设计的,所以可以成立。

      我个人觉得是平时不注意观察事物而造成的。

      给大家举一个比较普通的例子,大家应该都用过谷歌浏览器吧?

      一个很小的细节,每次载入新网页的时候,标题栏的载入标志总是一个圆圈,并且是顺时针旋转的。大家有没有想过,这个图标GOOGLE为什么要把它设计成顺时针旋转的?而不是逆时针旋转,或者是设计成其他的动态形状?

      再个大家举一个例子:分页。简单吧?就是把数据分成N页。

    好,我再告诉大家,我现在数据库这张表里有10E条数据,我现在每页要分10条出来,我要这个逻辑执行完,限定N秒的时间。再问大家,分页简单吗?

    假如是有10E条数据的分页,怎么样才能高效的分页?我没学很深,开始跟大家说了,我只是一个入行很浅的人,要我告诉大家,这东西怎么实现,我恐怕做不到,我只是分享下我的思路。

    比如,开始说的分页问题,大家通常用的方法,就是把所有的数据都查出来,然后点到相应的页码,把其他的数据都屏蔽掉。但是对于10E条,显然这样做效率很低。具体什么方法,我也不知道才能优化,我只是分享思想。

      算了,不说了,我个人还需要沉淀一下。晚安。

  • 相关阅读:
    [Linux]yum开启rpm包缓存
    [Linux]centOS7-1-1503-x86_64下安装VM-TOOLS
    [Linux]centOS7下RPM安装Perl
    vue 之 pageage.json 和 webpack.config.js
    node 之 apache
    node 之 express
    node 之 基础知识
    npm nvm nrm的关系
    echarts 学习笔记
    git 操作学习
  • 原文地址:https://www.cnblogs.com/kmsfan/p/3886141.html
Copyright © 2020-2023  润新知