<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>WEB on Dapeng Zhang</title><link>https://zhangdapeng.dev/tags/web/</link><description>Recent content in WEB on Dapeng Zhang</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Thu, 10 Jul 2025 11:52:34 +0000</lastBuildDate><atom:link href="https://zhangdapeng.dev/tags/web/index.xml" rel="self" type="application/rss+xml"/><item><title>聊聊互联网WEB开发</title><link>https://zhangdapeng.dev/p/liao-liao-hu-lian-wang-web-kai-fa/</link><pubDate>Thu, 10 Jul 2025 11:52:34 +0000</pubDate><guid>https://zhangdapeng.dev/p/liao-liao-hu-lian-wang-web-kai-fa/</guid><description>&lt;p&gt;做过多年的互联网web开发，也做过大大小小各种类型的网站 包括购物网站，功能性网站，企业宣传网站等，对于web开发这块的架构大体上也就几种开发方式吧 我接触过的我就说记录下，没接触过的，估计也是比较另类的吧，或者是我自己见识短。&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;p&gt;第一种方式 - （php、python、java，nodejs）+html+js（jquery）+css&lt;/p&gt;
&lt;p&gt;第二种方式 - （php、python、java，nodejs）+vuejs／reactjs+webpack&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;p&gt;先说说第一种方式，也算是比较再普通不过的方式了，继续介绍之前先说说后端语言&lt;/p&gt;
&lt;p&gt;使用频率更多的后端语言的话应该是PHP，但是对于大公司来说可能还有java，这个我也没做过具体的统计，都是根据经验来的 虽然我自己在使用的过程中，也用过python、nodejs、java但是我用的比较多的还是php&lt;/p&gt;
&lt;p&gt;php的话使用过的框架有qeephp，yii2，CI，laravel python的话使用过Django、flask java的话使用过spring-boot nodejs的话使用过koajs、express&lt;/p&gt;
&lt;p&gt;php的话公司项目用的比较多，但是我比较喜欢yii2，喜欢它的代码和框架目录风格，导致我后面在学习swoole的时候，试着将swoole集成到yii2中，目前线上的几个博客项目一个是gowhich.com（swoole集成）、一个是xiaorongmao.com，都是我日常记录技术文章的博客站点&lt;/p&gt;
&lt;p&gt;python的话我，开始的时候由于跟风喜欢用Django，但是经过一段时间，发现这个有点太庞大了，折腾不起了，于是发现了flask这个优秀的框架，慢慢的边学边做，就开发了另一个博客walkerfree.com。 最近在使用flask1.0系列，改动比较大，不多还是很喜欢，于是使用flask1.0开发了baby.xiaorongmao.com，很多功能出于学习python，都是自己研究查阅各种文章开发的，比如比较明显的验证码功能&lt;/p&gt;
&lt;p&gt;java使用过spring-boot，可以说，是个比较方便好用的框架，上手很快，但是需要学的东西很多，后期搁置了。&lt;/p&gt;
&lt;p&gt;nodejs使用过connect、express、koajs，后期使用koajs比较多，主要是自己的项目，本来打算做个博客的，但是工作的原因后面就搁置了。公司使用过express、connect，connect主要用来做代理&lt;/p&gt;
&lt;p&gt;当然在这个过程中还接触过ruby，也就瞄了一眼，ruby on rails，那个大宝石不错&lt;/p&gt;
&lt;p&gt;后端的语言其实都是大同小异，差异不是很大毕竟是做web开发，还能折腾到哪里去，该有的功能都有了，可以说随便选一个自己喜欢的就可以了，当然论速度的话我比较中立的选择php的yii2和python的flask，可能是因为比较熟悉吧，也许有人会说我用spring-boot一样开发很快，这个就不细说，我也只是聊聊我自己的，其中成本之类的，可能就不好说了。php好像比java学习成本低吧，python好像也是&lt;/p&gt;
&lt;p&gt;哦，对了，最近在学一门超级快的语言Golang，公司是使用过了，以前php写的接口，耗时10000ms，该用Golang可以达到100ms甚至是10ms左右，这个对比差距还是很大的，不过公司在使用Golang之前我已经在2018年使用Golang开发wiki博客站了，后期由于公司业务多就慢慢的搁置了。当时的Golang资料少，可以直接使用扩展还少，另外，即使是有，使用起来也是各种别扭，因为跟python和php的使用方式不同。所以自己就慢慢的一边进行查询的封装，一边进行session的封装，就是一路上缺啥自己造啥。不过现在回头看下，已经有很多成型的库可以使用了，最近发现了gin这个框架，可以说是达到了我当时的想法，重写了Golang自身对路由的支持&lt;/p&gt;
&lt;p&gt;好了，说说第一种开发方式，这个前面说过了，其实很普通的一种开发方式 可以不讲究css放在哪里，我放在页面中，或者放在文件中，或者内连于元素上，都一样的能达效果，开发速度也是很快，不够这个就不要将就什么速度了，将就速度的话，那就要说另外一个问题了，有点多。正常习惯使用原生js的话，可以直接一个html页面加上css+js就可以构建一个页面了，然后各种特效效果，直接网上搜索一下，download下来改一改，弄下样式，就搞定了，可以说对页面的复杂度不是很高的话，这样就可以完整快速的出一个页面了，但是后期维护的话，是个很麻烦的事，但是从做页面开始的时候，谁会想这个问题，因为公司要的就是马上上线。这个也就是现在的速成开发法吧。&lt;/p&gt;
&lt;p&gt;下面说下第二种方式，第二种方式使用了框架，可不简单的是jquery，据说这个框架原理是虚拟dom，大概是2014年前后，刚来公司就开始搞单页面开发，当时是因为觉得如果每个页面都是在用户请求后重新去服务器请求，然后再加载的话会比较慢，于是就考虑使用单页面应用，但是也有很多的框架，使用起来是把我搞的云里雾里，最后技术leader说使用reactjs，这个也算是当时比较火的技术，于是我就开始一边学一边做，开始时是用来开发后台，我主要负责页面开发，接口有技术总监提供，当时就觉得这个reactjs很好的原因是，他这个框架是用来做组件化用的，比如一个页面，我们分为上中下三个部分的话，传统的写法就是都写在一个页面，使用reactjs的话，就是上部分封装为一个组件，中间部分封装为一个组件，下部分封装为一个组件，就这样，最后将三个部分封装起来，是不是觉得有点像是在组装小汽车，没错，就是这个作用。既然使用reactjs，当时想着能不能像使用jquery一样使用reactjs，直接在页面引用，然后写组件，但是实际情况是，这个方式不好，因为reactjs的语法默认是不被浏览器支持的，需要通过工具进行编译，编译为能够被浏览器识别的js代码，于是就又开始搞webpack，这个工具不得不说起实用的地方，基本上是解决了前端性能优化的问题，比如css的压缩、js的压缩、按需加载进行打包，将第一种方式中加载时的缺点都解决掉了，而且webpack还有一个我用的比较多的地方就是将静态文件全部发布到cdn平台，这样的话基本上就不需要一个服务器专门来存储静态文件了，而且利用cdn已经成熟的快速加载技术，完全可以不用自己搞服务器，花点钱就解决了。这个方式同时也适用于vuejs，但是我在接触vuejs后不喜欢它的原因是就是它的写法搞乱了html元素，让代码看起来很乱，虽说也能解决问题，但是我不喜欢。就像当初不喜欢angularjs时是一样的。 不过最近发现vuejs可以像使用jquery一样的使用vuejs，可以去试试，毕竟使用jquery来操作dom还是稍微比较费力的事情&lt;/p&gt;
&lt;p&gt;大体上吧就这些技术的细节就没办法聊了，太细的话，会触及我的弱点，因为我不擅长理论这些东西&lt;/p&gt;
&lt;p&gt;我能用flask做开发，写博客，那么我面试的时候人家问我一些asyncio之类的东西，我就蒙圈了，毕竟我不会没事去记一些不太使用的知识点，但是现状就是如此&lt;/p&gt;
&lt;p&gt;不然人家怎么知道这个博客是不是你搭建的，没准是你自己从哪里copy过来的，说实话，互联网开发也不过如此，有些功能就是从网上copy下来的，我们应该充分利用互联网，因为可以节省很多劳动力和脑力，那么程序开发者就是这个技术的结合者，最后再加上创新，才能达到更高的顶点，才能让人类更快乐幸福&lt;/p&gt;</description></item></channel></rss>