Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/430.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 您在什么时候执行前端优化?_Javascript_Css_Performance_Optimization_Caching - Fatal编程技术网

Javascript 您在什么时候执行前端优化?

Javascript 您在什么时候执行前端优化?,javascript,css,performance,optimization,caching,Javascript,Css,Performance,Optimization,Caching,我说的是页面/样式表缓存、缩小javascript等 我中有一半人认为最好在开发过程中尽早完成这些工作,这样我就可以有意识地意识到更现实的速度和响应问题,并与将要部署到生产中的东西进行交互,但我的另一半大脑认为,在发布之前不做任何事情更有意义,这样我就可以不断处理开发过程中未优化的原始数据 在这个问题上有共同的或传统的看法吗?我在最后做了所有的优化。这样我就知道当某些东西不起作用时,是因为代码错误。有时我试图过早地优化东西,并意识到我浪费了一个小时,因为我正在缓存一些东西等。意识到用户花费了大部

我说的是页面/样式表缓存、缩小javascript等

我中有一半人认为最好在开发过程中尽早完成这些工作,这样我就可以有意识地意识到更现实的速度和响应问题,并与将要部署到生产中的东西进行交互,但我的另一半大脑认为,在发布之前不做任何事情更有意义,这样我就可以不断处理开发过程中未优化的原始数据


在这个问题上有共同的或传统的看法吗?

我在最后做了所有的优化。这样我就知道当某些东西不起作用时,是因为代码错误。有时我试图过早地优化东西,并意识到我浪费了一个小时,因为我正在缓存一些东西等。

意识到用户花费了大部分时间等待前端对象(卸载)加载。您的应用程序可能会在0.1秒内生成html,但用户至少会花费2秒钟等待加载所有图像等。将这些下载时间减少到一个小数目将积极增加用户体验

通过启用GZIP和使用小型javascript库,已经可以做很多事情。您应该下载并安装YSlow,并使用适当的缓存头配置您的Web服务器。仅此一项就可以节省数百毫秒的加载时间

最后一步是使用CSS精灵优化图像的数量。其他步骤可以包括最小化css和javascript,但这将获得我前面提到的所有方法中最少的方法


总而言之,这大部分可以通过正确配置Web服务器来完成,但是sprites应该在开发过程中完成。

我喜欢先构建站点,然后使用用户体验分析器在最后进行优化


我应该补充一点,某种类型的分析器是必不可少的。否则,您在没有前后数据的情况下进行优化,这是不完全科学的(更不用说您无法量化您的改进程度)。

过早优化是万恶之源:)

尤其是在开发的早期,当优化会干扰您调试代码或理解程序流的能力时,更是如此


这就是说,在设计阶段,至少要为某些优化做好计划,这样你就不会陷入那些优化不再容易实现的困境(某些类型的内部缓存就是一个很好的例子).

我同意您的前提,即您应该在早期阶段尽可能多地进行优化。它不仅会缩短开发时间(想想:当你滥发control+r时,每次刷新可以节省1/2秒!),而且它最终会让你的注意力集中在重要的东西上——在你重构你已经实现的实际代码的时候。缩小所有你不会马上修改的东西

我同意你大脑的另一半所说的“做你必须做的,然后做得更快”。但无论你做什么,你都必须知道并牢记如何才能更快地完成


我认为这种方法的主要问题是,最终很容易忽略你必须优化的事实,尤其是当一切看起来都“足够好”的时候。另一个问题是,如果你对优化问题没有经验,你可能真的会“把自己编码在角落里”,而这正是事情变得非常糟糕的地方。

我认为这可能是一个很难得到明确答案的问题,因为不同的项目会有不同的要求,取决于他们在客户端做了多少工作


我的经验法则可能是晚一点,而不是早一点。只是因为很多典型的前端优化技术(至少是我所知道的技术)往往很容易实现。我正在考虑删除空白和更改http头等等。因此,我倾向于专注于能够直接解决您的项目正在解决的问题的工作;一旦以有效的方式解决了这个问题,就可以着手优化前端响应时间

经过多年的编码,您将非常清楚性能瓶颈是什么

数据库查询 JS/Jquery函数 氟氯化碳 图像 Java脚本

通过提前识别瓶颈,当您创建/修改处理这些瓶颈的应用程序的每个部分时,您可以花时间进行调整,因为您知道,通过花时间编码,最终可以提供更好的性能


通过总是创建最佳代码,并学习现实生活中的内容,也往往会让我们不那么懒惰。

我更感兴趣的是,你建议我们什么时候做这些事情,而不是如何做。有什么见解吗?没错。我花了半个小时调试一个JavaScript函数,结果发现它被动态缩小了,我在某个地方的一行末尾遗漏了一个分号——这通常并不重要,但是当结束行被删除时,瞧,语法错误。我完全理解你。真糟糕!尤其是当你几乎开始质疑自己的理智时,因为你所看到的绝对正确,而且所有人都认为应该如此。