h突然吧 关注:189贴子:40,311
  • 11回复贴,共1

【无关水】无极个人对网页开发的一些见解

取消只看楼主收藏回复

之前有人问无极网页开发中的前段后端到底是什么——
如果熟悉MVC(Model View Controller)的话……在网页开发中,Model跟Controller指的便是后端,而View指的则是前段。
嗯,该说的说完了~\(≧▽≦)/~ 这个帖子就这样结束了。
——————————————————
本贴将详细并且用很不专业的态度解释上面的那句话——


IP属地:加拿大来自Android客户端1楼2017-05-20 14:43回复
    从历史讲起——


    IP属地:加拿大来自Android客户端2楼2017-05-20 14:43
    回复
      不,从简单的概念讲起——


      IP属地:加拿大来自Android客户端3楼2017-05-20 15:03
      回复
        Model, 指的是对现实世界数据的一个虚拟。
        举个例子,有一个分析红警战报的网站把每个战报中一方卡钱的各个时间点跟每次卡了多久,牛车重工各多少等等等等给统计出来了——装着这些数据的载体便是模型。
        Q. 模型什么的,不就一数据库吗?
        A. 并不一定哟!
        试想接着刚才的例子,这个战报分析网的数据库中只存了玩家在什么时间点造了卖了被占领了或者被打爆了一个重工,而不单独存重工的数量。
        这个时候我们就没办法把卡钱时重工的数量给输出来了嘛?
        →_→很显然,根据卡钱的时间点统计一下就好了吧!
        这个统计的过程如果简单的话一般在数据库中完成,否则交给后端函数……我好像没定义后端函数是怎么一回事诶?


        IP属地:加拿大来自Android客户端4楼2017-05-20 15:15
        收起回复
          View, 指的是在浏览器上能看到的一切——小到排版大到脚本效果手机版显示等等都是View的一部分。
          View最核心的功能,便是把从Model或者后端函数中获取的数据填充到网页中。


          IP属地:加拿大来自Android客户端5楼2017-05-20 15:20
          回复
            Controller, 指的是控制器,当然无极更喜欢把Controller叫成手柄。
            手柄嘛,按一个按钮就会有一个功能……在同一域名下输入不同的地址会出来不同的页面,这便是因为在同一个手柄中按下了不同的按钮。
            没错,配置什么的,说的就是Controller.
            抽象地说嘛,对于游戏机来说按下不同的按钮就相当于调用了那个按钮对应的函数——后端函数(或者叫API)其实就是这么一回事了。
            输入一个网址得到一样东西,这边是后端函数。
            总结一下,Controller其实就是一个从网址到后端函数的映射。


            IP属地:加拿大来自Android客户端6楼2017-05-20 15:28
            回复
              搞懂了这些咱们可以开始讲网页开发了吧!


              IP属地:加拿大来自Android客户端7楼2017-05-20 15:29
              回复
                1. 在没人买得起电脑的年代
                很遗憾,但是这个世界早就已经灭亡了……开场白不是这个!
                有一群人在某一时刻突然间搞出来了一种叫做网页的东西,于是最早的那种HTML便诞生了。
                那个时候网速也慢网线也短设备也不好,所有的HTML都得手码出来——
                于是当年的HTML嘛……总之各种大集成啊!
                <div margin-left=100px position='absolute' width=50%>YAYAKAWAIIYO</div>
                大致长这样吧。
                其实这一段无极是瞎编的啦23333333... 虽然手写HTML(基本没有CSS跟JavaScript的哟)怎说也不像程序员该做的事,但是确实当年这便是程序猿的工作之一。
                这个便是最早的前端开发了!手写HTML!
                也就是MVC中的View!
                那么当时的后端开发是什么呢?后端的职责可多了啊!
                当时的前段要往后端送东西,基本上只能在网址上面动工夫,而且这些功夫还不能够在后台里搞!
                于是为了解释网址上的东西,Controller要做的是……除了返回那些静态页面(域名首页什么风),还得负责手动生成HTML...
                例如最早的Java生成HTML得用println一行一行来……
                很离谱是吧?!


                IP属地:加拿大来自Android客户端8楼2017-05-20 15:37
                回复
                  2. Applet阶段
                  (待续)


                  IP属地:加拿大来自Android客户端9楼2017-05-20 15:40
                  回复
                    2. Applet阶段
                    如上面所说,Controller要负责的东西实在太多……特别是printf输出HTML这点实在太mdzz所以……Java官方发明了一种叫Applet的东西。
                    Applet一定程度上集成了一下MVC——它其实就是一个镶在网页上的应用程序,每次刷新网页都重新把整个应用程序给下载到缓存区然后本地运行。
                    Applet的一个好处是它把配置这个配置那个的一系列事情都交给了Java这个语言本身,简化了Controller还提供了一个UI;但是由于这个UI太丑再加上当时网速没那么快,于是Applet就被贴上了“没用”的标签。
                    现阶段,前端开发指的还是HTML, 后端开发指的是Java.


                    IP属地:加拿大来自Android客户端10楼2017-05-21 08:28
                    收起回复
                      啊咧,审核这么久怎么还不出来啊


                      IP属地:加拿大12楼2017-05-24 04:24
                      回复
                        那个,弃坑算了……比我写得好的人太多


                        IP属地:加拿大来自Android客户端15楼2017-07-30 16:36
                        回复