318
数据统计:302个主题分类,12917个优秀站点,1个站点正在排队审核,447篇站长资讯
  • 本网站目录提供网站快速收录服务,无需添加友情链接,无需等待漫长审核,1元/站1元收录淘宝购买 客服:点击这里给我发消息

  • 当前位置:站长分类目录 » 站长资讯 » 建站经验 » 文章详细 订阅RssFeed

    初学者个人建站的经历分享

    来源:站长分类目录 浏览:499次 时间:2021-12-13
          最近,将花费了两个多月的网站上线了,除了工作,剩余的时间就花在了建网站上。这个过程,还是耗时耗力的。因为作为一个只是访问过网站的人,对于网站的搭建可以说是完全不了解。以前在学校,老师教的C/S,B/S架构,JAVA语言,系统分析与设计,都是停留在纸面上,对于它们真正的原理,概念,适用的场景都不了解。这次搭建网站,正好把这些概念都熟悉了一遍。

          真正搭建起来这个网站,才会发现建设一个网站所用的知识点可谓是浩如烟海。作为初学者,面对这样的局面会有茫然而无从入手的感觉,只好跟着教程一遍遍的敲代码,测试接口,检查错误,修改代码。不停的重复这个过程,大量的时间花费在实现的细节上,基础概念的不熟悉导致一些简单的问题也会耗费很多时间,例如符号拼写错误导致的问题,解决起来也是很费精力。不过好在,现在这个过程都过去了,网站上线运行后,目睹自己敲出来的成果,便萌生出要做总结的想法。不做总结,很多知识点都是零散的有些印象,无法串联起来。不做总结,很多疑问没有解决,便也没有收获。因此,我将从三个方面将这次建站的经历记录下来。

          在记录之前,我先将这个项目简单介绍下:我做的是一个电商网站,目标是完成电商网站的基本功能,即登录注册,查看商品,添加购物车,下单,支付等功能。项目采用前后端完全分离的方式,前端只负责写页面,发送数据,获取数据并展示出来,后端专注于业务逻辑的开发,前后端通过接口对接,后端采用的SSM框架搭出来的,前端不知道怎么描述比较好,前端用了webpack构建工具,没有用什么框架,用了jQuery,这个应该也不算框架。然后就是用html+css+js来实现了。这里也可以体现分离的好处,前端不敲JAVA代码,后端不写页面,各用各的工具,各自部署各自的环境,各司其职,挺好。

          网站的大致情况就是这样,现在我将从三个方面描述这个项目从配置开发环境到部署到服务器的过程。根据个人开发的经历,我将这三个方面分为:工具层、代码层、部署层。按照我的理解,软件开发的步骤依次就是搭建开发环境,敲代码,然后部署到生产环境(也就是服务器),因此分为工具层、代码层、部署层这3个方面是符合逻辑的。下面我将这3个层次具体再详细解释下。

     一、工具层

            这一层讲开发环境所需的一系列软件的安装配置,这个环节将包含大量新手从来没有听过的软件,什么Eclipse,IDEA,Git,Maven,linux,tomcat,mysql,webpack,nginx等等。还有一些可能会比较陌生的概念,比如包,版本,框架,接口,端口等等。      这个环节会包含很多基础概念,基础知识,最好在进入正式的开发之前,了解各个软件的用途,了解上面提及的基本概念,这对后面的开发是有帮助的。

           就像我之前说得,开发一个网站需要的知识点是很多的,任何一个知识点要稍有了解都是要花费不少精力,如果一个都不了解的话,那么这个阶段会有点艰难。但是不必担心,如果第一遍不懂,那么做照做。照做一遍不懂,再做第二遍。这个过程一定要做好笔记,把关键的知识点记下来,把心中的疑问记下来,然后去挨个问。

    二、代码层

           在经历过开发环境的部署之后,我们在这一环节正式进入代码的编写。这个章节会涉及到代码结构的设计,框架的使用,接口的功能实现。这个阶段,功能的分析和代码的编写会混合在一起。这个阶段,也会讲一下软件的接口概念,JAVA的语言相关的特性,数据库的一些知识。

    三、部署层

          部署层是不起眼的部分,但也是很重要,很困难的部分。我自己开发本地是用的windows环境,而部署是用的linux环境。linux的命令行操作,上课的时候都讲过,自己真正操作起来,发现有万千问题。但还是那句话,不要怕,把网站正式搭建起来所需的知识不会很多,你可能只会用到1%的linux知识,这部分熟悉了往后想往纵深方向发展都是没有问题的。

          部署层最常遇到的问题就是:各种各样让人心碎的报错。排查问题是这个阶段的主要工作。这个过程所要耗费的精力,可能不必写功能代码要少。所以这个阶段要做好准备。提前熟悉Linux当然是极好的。

     当然了,这里也有几个需要注意的点。

      一是服务器也只是一台电脑,它与我们常用的windowsPC在硬件组成上,功能上无太大区别,他们的区别主要在于操作系统。windows与linux是两种设计理念的操作系统,windows的最大特点在于图形化操作界面,相对应的是linux的命令行操作方式。windows是微软的闭环生态的一部分,而linux是开源的操作系统,你可以获取linux的源码,自己去修改linux。当然它们在其它的内核设计,文件系统,CPU,内存的调度策略应该都有区别,这边我了解不多,只是看过操作系统的书,说得可能有错误。读者如果对操作系统感兴趣,可以去搜索各高校的操作系统教科书,我当时看的是南大的专业课用书。

     二是:服务器会与很多台客户机进行交互,网络连接的概念在服务器端会有很大的体现。在这个阶段,一定要建立起一个站点的工作模型。客户机发送请求,来请求资源,服务器响应请求,返回资源,客户机拿到资源,再去展示。了解这个过程,有助于理解网站运行的基本概念,才会理解nginx,tomcat的作用。了解了这些再去学习其它的语言,那就像学会了开小汽车,再去学开公交车一样,差别只是操作的不同,基本的理念都是一致,这样可以节省不少时间。

    版权声明:
    1、本文内容由网友自发贡献,版权归原作者所有。
    2、本站仅提供文章发布平台,文章的内容与本站无关,请真伪自辩,本站不承担相应法律责任。
    3、如发现本站有涉嫌抄袭侵权的内容,请举报并提供相关证据,一经查实,本站将立刻删除侵权内容。
    4、转载请注明本文地址:http://www.z-ml.com/artinfo/18.html