`
alesg
  • 浏览: 4430 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

网站前端优化一些小经验

阅读更多
乘着第3届d2论坛的顺利结束的秋风,我也来分享一下自己在前端优化方面的一些些小经验,其实这些经验本身都是来自yahoo的优化原则,不过经过ahuaxuan自身的实践和再次的思考,把原来的原则都进行了分组和分析.不过由于 ahuaxuan涉及到的东西有限,并没有经历过全部的优化点,所以只把自己做过的拿出来和大家讨论讨论,其中不免加入自己一些观点,希望大家指正.

先说说目标,前端优化的目标是什么,一个字:快.两个字:更快.那么下面我们来看看慢的网页将会给我们带来什么:
1. 慢的页面可能会网站失去更多的用户.

2. 慢500ms意味着20%的用户将放弃访问(google)

3. 慢100ms意味着1%的用户将放弃交易(amazon)

4. 慢 ???ms意味着??%的用户将放弃xx(your site)

所以我们的目标很明确,就是要网页展现的速度更快.
经过ahuaxuan的实践和总结,其实要让网页展现更快只需要注意几个大的方面,下面会一一描述这几个大的方面.


[size=medium]1减少http请求,我把它排在了第一点,为啥要在第一点呢,很简单,因为它最重要.


如何做呢.让ahuaxuan带着大家分析一下这个问题.从何处着手呢.ahuaxuan大声疾呼,我们要从数据开始.ok,一般来说,我们从变化性上把数据分成两种类型,变和不变.那么不变的数据可以缓存,变化的数据不能缓存,这是一个常识,也就是说要减少我们的http请求次数这个目标可以转换成把数据分为变化和不变化两个部分.不变化的数据不需要再次请求,这样http请求的次数就减少了,下面我们分点来描述将数据分类的途径.


1. 合并脚本文件
包括脚本,样式和图片,可以有选择的把一些Js和css可以合并成一个文件,一些图片可以使用css sprites技术.这样做的原因是什么?做过web开发的人都知道,js和css基本是不变的,是静态文件,图片亦然.那么不变的文件如果适当的合并在一起,会有什么效果呢?请求的次数从多次变成了一次.这样http请求的次数就减少了.当时合并之后,文件体积变大了,会影响速度吗?答:肯定会啊,不过这里是需要权衡的,比如我100份静态文件,合并成10份还是合并成1份这就得看你得具体情况了.

2. 指定Expires或者Cache-Control,
对于静态内容:设置文件头过期时间Expires的值为“Never expire”(永不过期)
动态页面,在代码中添加cache-control,表示多少时间之后过期,如:
response.setHeader("Cache-Control", "max-age=3600");
如果使用了Expires文件头,当页面内容改变时就必须改变内容的文件名。通常是在文件内容后加版本号
这一点是大多数人都忽略得,之前很多人在坛子上发布自己得小系统,还有demo,ahuaxuan跑过去一看,my god,一堆又一堆得js,css,既没有恰当得合并,也没有设置过期时间.每次刷新页面都要重新下载这一堆又一堆的js,css.http请求那叫一个多啊.无谓了流量就这样产生了.

这一点在企业应用的系统中也时有发生.比如我们使用extjs作为前端的技术,400多k啊,每打开一个页面都导入,下载这个js,够无聊的.那么童子们可能就要问了,静态文件为啥不用apache,lighttpd等呢,答,用了又怎么样,不设expire或者max-age不是一样要下载,最好的方法是写一个filter,再filter中判断,如果url满足一定的条件(比如符合配置文件中的正则表达式),那么就设置一个max-age,这样就ok,太简单了,几行代码就可以搞定.快哉.

3. 缓存Ajax请求
缓存的方法同动态页面,ajax请求需要使用get方式,url长度为2k(ie)限制(post请求有两个过程,1发送请求headers,2 发送请求数据,根据http规范,get请求只会发送一个tcp包).--------这一段话来自yahoo,先不管其真假,我们从另外一个方面来考虑一下为什么最好使用get方式,讲一个ahuaxuan经历过的事情,之前有一个项目的ajax请求使用了post方式,后来发现经常出错,而且抛出了 squid的错误,因为我们的网站使用了squid,问题就出在这里了,从http协议上可以了解到,method=post是指把数据提交到服务器上去,那么squid的一个特性是不会缓存post请求(事实上它确实不应该缓存,因为这样会违反http协议中的语义),把ajax请求改成get方式之后,一切恢复如常.

4. 移除重复的js
重复的js导入也有可能导致ie重新加载该脚本.没啥好说的,照做.

5. 避免重定向
有一种经常被网页开发者忽略却往往十分浪费响应时间的跳转现象。这种现象发生在当URL本该有斜杠(/)却被忽略掉时。这时候会返回一个301的状态码,然后浏览器重新发起一次请求.在企业应用里,重定向是我们在企业应用中常用的技术,不过用在网站项目上,您可要小心了,因为普通的重定向其实是 server在response header中设置http status=302,浏览器收到之后,判断出是302,会重新发送一个请求,目标地址是前一次返回中指定的地址.在网站项目中如果可以不用重定向就别用吧.如果您做企业应用项目,ok,关系不大,您就放心的”定”吧.

小节,ahuaxuan把减少http请求次数分为了以上5个小点,每个小点之后附加一些实例,大家可以根据这些点来判断自己的项目是否可以有优化的地方.


使用cdn
让内容更靠近用户,这有啥好说呢,原理很简单,就是根据用户浏览器所在机器的ip来判断哪些服务器离用户最近,浏览器会再次去请求这些最近的机器.一般的 cdn服务商是通过开发自己的dns server来达到这个目的的.不过这个是通常情况哦,技术实力比较高,或者场景比较特殊的公司会开发自己的cdn.当然不管怎么说,使用cdn肯定可以使页面响应更快(也包括音频,视频,图片,文本文件,等等等等)

减小返回数据的体积
1. 使用gzip压缩返回数据
Gzip压缩所有可能的文件类型是减少文件体积增加用户体验的简单方法。比如本来400k的文件,压缩一下之后只有50k-100k,那么网络的流量就立刻下来了,压缩的代价是服务器端要压缩文件,需要消耗cpu,浏览器需要解压文件,也需要消耗cpu,不过对于现代这么nb的pc,来说,浏览器解压一下数据带来的cpu消耗简直不值一提.所以您就压吧.不过压的时候要小心哦,有的浏览器在特定场景下会出去一些小bug,导致页面不正常.比如 ie6在跨域的时候可能会有些小麻烦,把这部分数据的gzip去掉就可以了.

2. 最小化js文件和css文件
压缩js可以使用JSMin或者YUI Compressor,后者同时可以压缩css,这个也没啥好说的,照做吧.

3. 将css和js独立成外部文件
其实这一点也可以看成是区分不变数据和变化数据.很多人喜欢在页面商写很多很多的js和css,这些数据其实都是不会变化的数据,也就是说这些数据也是可以缓存在浏览器上的,通过把它们独立成外部文件,可以把这些数据缓存起来.这样做看上去是增加的请求的次数,但是由于第一次请求之后该部分数据已经被缓存,所以第二次就无需再请求后端,减少了网络带宽的开销.

优化Cookie
1. 减小cookie体积
能不放就别放吧,为啥呀,cookie就象钥匙串,只有出门和回家得时候才用,但是一整天你都要带在身上,麻烦不.
2. 合理设置Cookie域
由于二级域名可以拿到一级域名得cookie,那么如果,而二级域名之间确不能相互共享cookie,所以合理得设置cookie得域名也可以避免无必要得带宽浪费和响应速度得增加.
3. 设置合理的cookie过期时间
该过期就过期,不要让不必要的数据一直带在身上走来走去.
4. 使用域分离
为图片或者其他静态资源文件使用子域或者建立新的独立域名(申请新的域名),避免无必要的cookie传输,当然也是要在有必要得情况下,图片类网站肯定有必要,javaeye上得图片并没有使用域分离,所以我们得cookie其实会带到坛子得图片服务器上去,每次请求图片都是如此(不过还好,坛子里没有什么图片,所以这方面的浪费不大).

小结,其实cookie上得问题,单词请求看上去也不是什么大问题,好像是无所谓得事情,就那么几十个byte,至于吗,不过大家都听说过水滴石穿,绳锯木断的故事.所以该做的,我们还是要做,正所谓,勿以善小而不为,勿以恶小而为之.
优化浏览器加载
1. 将css放在页面顶部加载
把样式表放在文档底部的问题是在包括Internet Explorer在内的很多浏览器中这会中止内容的有序呈现。浏览器中止呈现是为了避免样式改变引起的页面元素重绘。用户不得不面对一个空白页面。
      HTML规范清 楚指出样式表要放包含在页面的<head />区域内:“和<a />不同,<link />只能出现在文档的<head />区域内,尽管它可以多次使用它”。无论是引起白屏还是出现没有样式化的内容都不值得去尝试。最好的方案就是按照HTML规范在文档<head />内加载你的样式表。

2. 将js放在页面底部加载
脚本带来的问题就是它阻止了页面的平行下载。HTTP/1.1 规范建议,浏览器每个主机名的并行下载内容不超过两个。如果你的图片放在多个主机名上,你可以在每个并行下载中同时下载2个以上的文件。但是当下载脚本时,浏览器就不会同时下载其它文件了,即便是主机名不相同。

Js放在底部加载其实并不影响浏览器展示页面,除非用户会在js加载完成之前就调用某个js方法,比如说页面刚展现到一半,但是恰好这一半里有一部分是调用了还未下载的js,这个时候就会出问题了,如果童子们遇到这种情况,可以把这部分js先加载.

   
总结一下下:以上这些优化点其实只是前端优化的部分内容,不过根据80/20原则,这些优化点已经覆盖了80%的情况了,同时前端优化其实也不是什么复杂的东西,原理上是很简单的,更多的是需要我们的实践,因为我们可能会碰到各种各样的问题,而很多的这些问题其实一般是预测不到的.只有遇到过才知道.
说的不对的地方请大家拍砖,或者童子们也可以把自己的经验在这里和大家分享一下.代表其他童子表示十分的感谢.
分享到:
评论

相关推荐

    DeepSeek行业应用实践报告-智灵动力PPT全

    DeepSeek行业应用实践报告-智灵动力【PPT全】

    基于SSH的线上医疗报销系统.zip-毕设&课设&实训&大作业&竞赛&项目

    项目工程资源经过严格测试运行并且功能上ok,可实现复现复刻,拿到资料包后可实现复现出一样的项目,本人系统开发经验充足(全栈全领域),有任何使用问题欢迎随时与我联系,我会抽时间努力为您解惑,提供帮助 【资源内容】:包含源码+工程文件+说明等。答辩评审平均分达到96分,放心下载使用!可实现复现;设计报告也可借鉴此项目;该资源内项目代码都经过测试运行,功能ok 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 【提供帮助】:有任何使用上的问题欢迎随时与我联系,抽时间努力解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 下载后请首先打开说明文件(如有);整理时不同项目所包含资源内容不同;项目工程可实现复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用

    机器学习大作业-复现KAN网络.zip

    项目工程资源经过严格测试运行并且功能上ok,可实现复现复刻,拿到资料包后可实现复现出一样的项目,本人系统开发经验充足(全栈全领域),有任何使用问题欢迎随时与我联系,我会抽时间努力为您解惑,提供帮助 【资源内容】:包含源码+工程文件+说明等。答辩评审平均分达到96分,放心下载使用!可实现复现;设计报告也可借鉴此项目;该资源内项目代码都经过测试运行,功能ok 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 【提供帮助】:有任何使用上的问题欢迎随时与我联系,抽时间努力解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 下载后请首先打开说明文件(如有);整理时不同项目所包含资源内容不同;项目工程可实现复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用

    基于Android和TensorFlow Lite完成移动端机器学习相关应用的实现(毕设&课设&实训&大作业&竞赛&项目)

    基于Android和TensorFlow Lite完成移动端机器学习相关应用的实现,包括使用已训练模型的机器学习应用和自主模型训练两部分。.zip项目工程资源经过严格测试运行并且功能上ok,可实现复现复刻,拿到资料包后可实现复现出一样的项目,本人系统开发经验充足(全栈全领域),有任何使用问题欢迎随时与我联系,我会抽时间努力为您解惑,提供帮助 【资源内容】:包含源码+工程文件+说明等。答辩评审平均分达到96分,放心下载使用!可实现复现;设计报告也可借鉴此项目;该资源内项目代码都经过测试运行,功能ok 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 【提供帮助】:有任何使用上的问题欢迎随时与我联系,抽时间努力解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 下载后请首先打开说明文件(如有);整理时不同项目所包含资源内容不同;项目工程可实现复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用

    同时识别多个手写数字(或印刷体)

    这是一个基于 PyQt5 和 TensorFlow 的多数字手写体识别程序,支持同时识别图片中的多个手写数字。以下是该文件的基本说明: 主窗口:包含加载图片、识别、清除按钮,以及图片显示区域和结果展示区域。 图片显示:支持显示原始图片和处理后的图片。 分割结果显示:显示分割出的每个数字图片。 结果展示:显示所有识别结果和置信度。

    基于机器学习的情感分析(2极).zip(课设&实训&大作业&项目)

    项目工程资源经过严格测试运行并且功能上ok,可实现复现复刻,拿到资料包后可实现复现出一样的项目,本人系统开发经验充足(全栈全领域),有任何使用问题欢迎随时与我联系,我会抽时间努力为您解惑,提供帮助 【资源内容】:包含源码+工程文件+说明等。答辩评审平均分达到96分,放心下载使用!可实现复现;设计报告也可借鉴此项目;该资源内项目代码都经过测试运行,功能ok 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 【提供帮助】:有任何使用上的问题欢迎随时与我联系,抽时间努力解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 下载后请首先打开说明文件(如有);整理时不同项目所包含资源内容不同;项目工程可实现复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用

    在云服务器上搭建MQTT服务器(超详细,一步到位)

    在云服务器上搭建MQTT服务器(超详细,一步到位)

    《由一组学习机器学习的学生用 Python 开发计算机游戏》(毕业设计,源码,教程)简单部署即可运行 功能完善、操作简单,适合毕设或课程设计.zip

    资源内项目源码是均来自个人的课程设计、毕业设计或者具体项目,代码都测试ok,都是运行成功后才上传资源,答辩评审绝对信服的,拿来就能用。放心下载使用!源码、说明、论文、数据集一站式服务,拿来就能用的绝对好资源!!! 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、大作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 4、如有侵权请私信博主,感谢支持

    (参考项目)MATLABA交通标志识别.zip

    参考项目,评分9.8分

    基于Unity实现的语音识别人物面部表情改变-源码工程.zip

    项目工程资源经过严格测试运行并且功能上ok,可实现复现复刻,拿到资料包后可实现复现出一样的项目,本人系统开发经验充足(全栈全领域),有任何使用问题欢迎随时与我联系,我会抽时间努力为您解惑,提供帮助 【资源内容】:包含源码+工程文件+说明等。答辩评审平均分达到96分,放心下载使用!可实现复现;设计报告也可借鉴此项目;该资源内项目代码都经过测试运行,功能ok 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 【提供帮助】:有任何使用上的问题欢迎随时与我联系,抽时间努力解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 下载后请首先打开说明文件(如有);整理时不同项目所包含资源内容不同;项目工程可实现复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用

    基于FX3U PLC控制多种变频器的RTU通信系统:硬件配置、程序编写、接线及参数说明,基于FX3U PLC与RTU通信技术,实现对西门子V20、台达VFD-M和三菱E700变频器的独立控制:硬件配置

    基于FX3U PLC控制多种变频器的RTU通信系统:硬件配置、程序编写、接线及参数说明,基于FX3U PLC与RTU通信技术,实现对西门子V20、台达VFD-M和三菱E700变频器的独立控制:硬件配置与程序详解,fx3u和西门子v20 台达vfd-m 三菱E700 rtu所需硬件:FX3U PLC,FX3U-485BD通信板,变频器。 功能:使用fx3u-485bd板,rtu通信控制西门子v20 台达VFD-M 三菱E700三种变频器正反转,停止,频率设定,加减速,以及对频率,电压,电流的读取,有运行指示,效果可以看视频,反应及时,运行可靠,三种变频器程序是单个的,非三台一起控制。 的内容包括程序,接线,参数说明 ,核心关键词: fx3u-485bd; 西门子v20; 台达VFD-M; 三菱E700; 通信控制; 正反转; 停止; 频率设定; 加减速; 读取; 运行指示; 视频; 程序; 接线; 参数说明,FX3U PLC控制多种变频器程序:程序、接线与参数说明

    基于SSM框架的婚纱礼服定制网站(毕设&课设&实训&大作业&竞赛&项目)

    软件开发综合项目——辛德瑞拉婚纱礼服定制网站,使用SSM框架和Maven管理工具,开发环境为Eclipse Jee Photon,数据库使用MySQL.zip项目工程资源经过严格测试运行并且功能上ok,可实现复现复刻,拿到资料包后可实现复现出一样的项目,本人系统开发经验充足(全栈全领域),有任何使用问题欢迎随时与我联系,我会抽时间努力为您解惑,提供帮助 【资源内容】:包含源码+工程文件+说明等。答辩评审平均分达到96分,放心下载使用!可实现复现;设计报告也可借鉴此项目;该资源内项目代码都经过测试运行,功能ok 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 【提供帮助】:有任何使用上的问题欢迎随时与我联系,抽时间努力解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 下载后请首先打开说明文件(如有);整理时不同项目所包含资源内容不同;项目工程可实现复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用

    基于PHP和HTML5的音乐网站.zip

    项目工程资源经过严格测试运行并且功能上ok,可实现复现复刻,拿到资料包后可实现复现出一样的项目,本人系统开发经验充足(全栈全领域),有任何使用问题欢迎随时与我联系,我会抽时间努力为您解惑,提供帮助 【资源内容】:包含源码+工程文件+说明等。答辩评审平均分达到96分,放心下载使用!可实现复现;设计报告也可借鉴此项目;该资源内项目代码都经过测试运行,功能ok 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 【提供帮助】:有任何使用上的问题欢迎随时与我联系,抽时间努力解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 下载后请首先打开说明文件(如有);整理时不同项目所包含资源内容不同;项目工程可实现复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用

    惠普436/437更换传输卷

    惠普436/437更换传输卷

    rabbmit相关安装包

    erlang安装包,rabbmit安装环境

    大创项目网页设计:心田农场.zip

    项目工程资源经过严格测试运行并且功能上ok,可实现复现复刻,拿到资料包后可实现复现出一样的项目,本人系统开发经验充足(全栈全领域),有任何使用问题欢迎随时与我联系,我会抽时间努力为您解惑,提供帮助 【资源内容】:包含源码+工程文件+说明等。答辩评审平均分达到96分,放心下载使用!可实现复现;设计报告也可借鉴此项目;该资源内项目代码都经过测试运行;功能ok 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 【提供帮助】:有任何使用上的问题欢迎随时与我联系,抽时间努力解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 下载后请首先打开说明文件(如有);整理时不同项目所包含资源内容不同;项目工程可实现复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用

    基于javaSSM的电影网页项目.zip

    项目工程资源经过严格测试运行并且功能上ok,可实现复现复刻,拿到资料包后可实现复现出一样的项目,本人系统开发经验充足(全栈全领域),有任何使用问题欢迎随时与我联系,我会抽时间努力为您解惑,提供帮助 【资源内容】:包含源码+工程文件+说明等。答辩评审平均分达到96分,放心下载使用!可实现复现;设计报告也可借鉴此项目;该资源内项目代码都经过测试运行;功能ok 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 【提供帮助】:有任何使用上的问题欢迎随时与我联系,抽时间努力解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 下载后请首先打开说明文件(如有);整理时不同项目所包含资源内容不同;项目工程可实现复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用

    IDC报告 -中小型企业如何利用技术实现关键业务目标 数字化转型的后续步骤.pdf

    IDC报告 -中小型企业如何利用技术实现关键业务目标 数字化转型的后续步骤

    仅需一个 HAL 库函数:轻松实现 STM32 的 SPI 编程(以 Flash W25Q128 为例)

    主要介绍如何用HAL_SPI_TransmitReceive()函数实现对W25Q128 Flash存储器ID的读取。先介绍SPI是一种高速且简单的同步串行接口技术,由四根线((MOSI、MISO、SCLK和SS/CS))组成。接着介绍Flash ,它是串行闪存芯片,能提供更大存储容量。还提到STM32 HAL库简化了SPI编程,以正点原子精英V2开发板为例,给出开发环境及函数原型和参数。最后展示读取ID的代码示例,通过发送命令、接收数据并判断状态来获取ID。 

    基于MATLAB的光伏并网仿真模型:研究电能质量分析与高品质并网运行策略 或 MATLAB光伏并网仿真研究:探讨高品质并网与电能质量分析,包括逆变器与输电线路模型 ,MATLAB光伏并网仿真模型:构建

    基于MATLAB的光伏并网仿真模型:研究电能质量分析与高品质并网运行策略 或 MATLAB光伏并网仿真研究:探讨高品质并网与电能质量分析,包括逆变器与输电线路模型。,MATLAB光伏并网仿真模型:构建高品质并网运行的太阳能电站接入系统模型并分析电能质量,MATLAB光伏并网仿真模型,在Matlab中建立光伏电站接入系统模型,包括光伏发电逆变器及负荷模型等,仿真分析接入点处的电能质量,实现高品质并网运行。 太阳能电池,MPPT,包括输电线路,接入三电平并网逆变器和电网。 ,MATLAB光伏并网仿真模型; 光伏电站接入系统模型; 逆变器; 负荷模型; 电能质量分析; 品质并网运行; 太阳能电池; MPPT; 输电线路; 三电平并网逆变器; 电网。,基于Matlab的光伏并网仿真模型:高品质运行与电能质量分析

Global site tag (gtag.js) - Google Analytics