版权声明:本文由李宜东原创文章,转载请注明出处: 
文章原文链接:https://www.qcloud.com/community/article/116

来源:腾云阁 https://www.qcloud.com/community

我叫李宜东,是一名华中科技大学的大二学生,一名网站开发的萌新,在大一上半学期,就想做一个我们班级专属的网站,方便同学们(方便我这个学委偷懒)。
下面放出我的网站信息架构、技术组合和从一个小白成长到现在一个小小工作室负责人的一些经验分享。

一.当前网站信息架构

二.网站运行环境及技术组合

注:左侧为现在的技术组合,右侧为未来可能选择的组合

三.腾讯云上环境的搭建和代码托管:

四.经验分享

从一个大一小白开始,我是如何在不到一年的时间从前端到后端搭建起自己的网站呢,又为何选择这个技术组合,踩过什么坑呢?

学习及开发经验

  • 利用网上平台,慕课网,实验楼,极客学院等等许多免费的学习平台都是很好的学习途径。
  • 会用插件,多 Google , StarOverFlow 上有很多问题的解答
  • 最重要的还是保持对编程的热情,做编程会占用你大量的时间,如果没有兴趣是很难坚持下来的,多做点自己想做的,往往可以带来学习的动力。
  • ……

如何偷懒

  • 环境配置篇:一键化安装,注意留存或收藏环境配置的文档,开发环境更新做好备份。
  • 团队协作篇:使用团队协作工具如 GITHUB ,良好的版本控制和工作流会减少冲突的代价,重要的是别人的代码不乱改:)
  • 轮子篇:合理利用现有的开源组件而不是一味造轮子,基于模板 /框架的开发会迅速很多。
  • 重构、封装篇:不要老想着重写代码,可以尝试将已有的服务封装为服务,在不改动底层的情况下进行开发:)
  • 编辑器篇:好的编辑器的代码补全,快捷键可以省不少时间。

选择当前技术组合的原因:

  • 前端的变化:现在 HTML5 和 CSS3 使用越来越广,同时出于这学期响应式设计的需要,前端从最初的 HTML,CSS,JavaScript 转向了 HTML5,CSS3 和 jQuery ,也开始使用更多的插件。
  • 后端语言及框架选择:在性能要求不高的前提下, php 无需编译,学习成本也比较低,容易上手,但是也因为这个原因,所以需要使用框架来使项目结构和编码规范更清晰一些,而 ThinkPHP 作为流行,文档较完善的国内 PHP 框架被我作为首选。
  • 数据库选择 MySQL 的原因: PHP 的良好支持, phpmyadmin ,开源免费. 最后由于一些校内网站数据的收集和四六级成绩的查询使用了 Python 来做网络爬虫
  • 服务器的选择:腾讯云学生服务器 1 元支持 : ),访问快,稳定性比较好

技术上踩过的坑:

1.最初使用 MVC 框架时,没有模型的概念,把数据库操作也写在了控制器,维护、复用和扩展都很麻烦。
2.数据库最初设计没有考虑扩展性,最近数据库向高版本迁移时懒得导出 sql ,复制了 data 目录到高版本 MySQL,然后数据异常,至今个人论坛还没来得及恢复数据。
3.最初密码设计只做了简单的 md5 加密,导致现在也没能加字符 md5 。
4.开发文档和项目文档的编写,有一天,突然翻到之前的文档,发现我写的代码已经偏离最初设计(软件课设作业:学生管理系统),成了班级网站:), mark :更新日志

五.网站截图:

首页

学生登陆页面

个人信息页

部门招新

官网地址链接

六.结语

这样,我上学期在一元服务器上折腾出了班级网站,这学期,我想将全站做成响应式网站,做出更多方便同学的功能。最后,感谢腾讯云给了同学体验云服务的机会,也希望其他同学也可以在云上做出自己想要的网站 /App 。

如何偷懒地用 PHP 搭建一个班级网站的更多相关文章

  1. 利用git+hugo+markdown 搭建一个静态网站

    利用git+hugo+markdown 搭建一个静态网站 一直想要有一个自己的文档管理系统: 可以很方便书写,而且相应的文档很容易被分享 很方便的存储.管理.历史记录 比较方面的浏览和查询 第一点用M ...

  2. express + mongodb 搭建一个简易网站 (四)

    express + mongodb 搭建一个简易网站 (四) 目前网站整体页面都已经能全部展示了,但是,整个网站还有两个块需要做完才能算完整,一个连接数据库,目前网站上的数据都是抓取的本地假数据,所以 ...

  3. express + mongodb 搭建一个简易网站 (三)

    express + mongodb 搭建一个简易网站 (三) 前面已经实现了基本的网站功能,现在我们就开始开搞一个完整的网站,现在整个网站的UI就是下面的这个样子. 我们网站的样子就照着这个来吧. 1 ...

  4. express + mongodb 搭建一个简易网站(二)

    express + mongodb 搭建一个简易网站 (二) 在搭建网站(一)中,实现了简单的路由功能,这离一个完整的网站还差的有点远,继续撸代码吧. 1.首先在根目录下新建一个views文件夹,用来 ...

  5. express + mongodb 搭建一个简易网站(一)

    express + mongodb 搭建一个简易网站(一) 前言:后台使用node.js的express框架,数据库使用mongodb,模板使用ejs.大概就这些. 开始第一个简易网站之旅吧.... ...

  6. 搭建一个wordpress网站需要做哪些工作

    今天做了自己的个人网站:二飞日志 之前因为服务器的问题,因为备案的原因辛辛苦苦做的站点数据没了.还好的是没有多少数据.没关系,重新来.有了上一次的经验,这次搭建起来比较顺手.但是也出现了几个问题.下面 ...

  7. Python Flask搭建一个视频网站实战视频教程

    点击了解更多Python课程>>> Python Flask搭建一个视频网站实战视频教程 第1章 课程介绍 第2章 预备开发环境 第3章 项目分析.建立目录及模型规划 第4章 建立前 ...

  8. 30分钟搭建一个小型网站框架(python django)

    最近因为要做一个小型的网站,需求很简单有点像公司内部的管理网站,和室友一起倒腾,发现了一些坑.我自己之前没有接触过python 但是发现真的非常好上手. 我们没人会前端,所以最怕修改网页,一开始选择了 ...

  9. 关于搭建一个高性能网站的服务器的架设思路以及nginx测试的并发

    对于高性能网站的架设,主要就是请求量大,那我们该如何进行支撑? 考虑到下面的几个方面: 1.要减少请求,那对于开发人员来说,网站的css文件进行合并,背景图片也要合并,一般都是请求一张比较大的图片,然 ...

随机推荐

  1. Jdbc获取oracle中guid主键

    上代码 String sql = "BEGIN insert into itil_task_plan (PLAN_CODE) values (?) returning id into ?; ...

  2. Hibernate- 条件查询

    01.搭建开发环境 02.条件查询 package com.gordon.test; import java.util.List; import org.hibernate.Query; import ...

  3. Tomcat负载均衡和集群环境的搭建

    实现此集群的方法参考了网上的很多文章,但由于很多文章都表明是原创的,故无法知道整个操作流程的真正作者是谁.下面就是我用我们真实的项目去实现这个过程.同时修复这过程中一些问题.以下的所有步骤均为亲自测试 ...

  4. DataGridView基本操作

    1.获得某个(指定的)单元格的值:dataGridView1.Row[i].Cells[j].Value;2.获得选中的总行数:dataGridView1.SelectedRows.Count;3.获 ...

  5. TCP协议的问题

    Server端接收到Client端信息后不会返回给Client端 // TCPEchoServer.cpp : 定义控制台应用程序的入口点.// #include "stdafx.h&quo ...

  6. Javascript实现浏览器菜单命令

    每当我们看到别人网页上的打开.打印.前进.另存为.后退.关闭本窗口.禁用右键等实现浏览器命令的链接,而自己苦于不能实现时,是不是感到很遗憾?是不是也想实现?如果能在网页上能实现浏览器的命令,将是多么有 ...

  7. j2se j2ee j2me

    多数编程语言都有预选编译好的类库以支持各种特定的功能,在Java中,类库以包(package)的形式提供,不同版本的Java提供不同的包,以面向特定的应用. Java2平台包括标准版(J2SE).企业 ...

  8. sh脚本循环

    sh for循环 for File in 1 2 3 4 5 do echo $File done sh for多重循环 for image_size_input in 160 140 120 100 ...

  9. Java JNI初探

    ---说明,之前直接百度出来的例子,照猫画虎.没想到的是这例子居然直接来自百度百科,写着写着就囧了.. ---anyway,写完了就当是给自己看吧. 同事求助,就看了一下,照猫画虎一番,略有所得. J ...

  10. 二叉查找树 _ 二叉排序树 _ 二叉搜索树_C++

    一.数据结构背景+代码变量介绍 二叉查找树,又名二叉排序树,亦名二叉搜索树 它满足以下定义: 1.任意节点的子树又是一颗二叉查找树,且左子树的每个节点均小于该节点,右子树的每个节点均大于该节点. 2. ...