文档章节

5天学会一种 web 开发框架(转)

好铁
 好铁
发布于 2016/04/19 17:58
字数 684
阅读 242
收藏 13
点赞 1
评论 0
Web

按照这个清单,一条一条的学习,事半功倍,很快就能掌握 一共25条,即便很磨蹭,2小时也能搞定一条,25*2=50。只需要50小时就能掌握任意一种web框架

各类web框架大同小异:现代web开发框架的6大元素,把握主线,就不会迷路

建议把本文打印到一张A4纸,搞定一条打个勾

web框架学习列表

  • 如何定义 url route
  • 如何组织 request handler 函数
  1. 写一个最简单的request handler 函数
  2. 如何从get/post请求中取出参数
  3. 如何定义全局url 拦截函数
  4. 如何获取/修改/存储 cookie,session数据
  5. 如何修改/输出 http header 数据
  • 如何部部署app 程序
  1. 服务器部署可以参考 python web 程序的9种部署方式
  2. 如何配置开发环境
  3. 如何配置静态文件访问
  • 如何访问数据库
  1. 如何维护表结构的变更
  2. 如何定义/组织/初始化 数据表
  3. 如何对接orm系统和现有的表结构
  4. 掌握最基本的add/delete/按字段查询/count/slice/order by
  5. 如何直接使用sql 访问数据库
  • 如何使用模板系统
  1. 如何组织/访问 模板文件的目录结构
  2. 如何在模板中嵌入代码
  3. 模板是否支持继承结构
  4. 模板之间如何include
  5. 如何自定义模板函数
  • 如何通过http get/post 获取远程数据
  • 如何parse json
  • 如何parse xml
  • 如何输出为 json
  • 如何处理状态码:404和50x
  • 如何处理文件上传

可选的学习项目

  • 发送email
  • log
  • 图片处理

误区

  • 表单验证辅助函数,很多框架的表单验证部分实现的特别复杂,初学者完全不需要,手写代码处理就够用
  • ORM中的hasone,manytomany,onetomany关系,概念很复杂,其实只是多写/少写一个查询字段的关系,学习成本太高,初学者完全不需要理会,直接跳过

现代web开发框架六大元素

  1. url route/map,表面看这个就是一组正则表达式,其实这是web开发框架的核心,它决定了代码的组织方式
  2. html 模版子系统
  3. orm,或者说数据库访问层
  4. form 前后端验证,表单验证是整个网站开发过程当中最复杂的一步,需要写手很多代码
  5. helper,包括:分页,cache,session,sitemap,rss,email等支持
  6. deployment 支持,简单说,这个框架起码要内置一个http server,更进一步要支持fastcgi,这样才能部署到生产环境

本文转载自:http://lutaf.com/148.htm

共有 人打赏支持
好铁
粉丝 36
博文 265
码字总数 78431
作品 0
朝阳
程序员
5天学会一种 web 开发框架

转载自鲁塔弗的博客,原文网址:http://lutaf.com/148.htm web framework层出不穷,特别是ruby/python,各有10+个,php/java也是一大堆 根据我自己的经验写了一个to do list,按照这个清单,一条一...

Kinegratii
2014/03/12
0
0
jax-ws之webservice security(安全)续

前言: 在前面的“5天学会jaxws-webservice教程”,我们讲了基本的jax-ws的使用。 Jax-ws是业界公认的标准的webservice,它已经成为了一个行业界标准,包括cxf,其实cxf也是调用的jax-ws为标...

AbrahamLeeJay
2014/07/17
0
0
对于新手学习PHP的规划建议

关于自学PHP,这方面的很多资料,我几乎没有看到过一个满意的答案,我该构建一个什么样的体系,如何构建,从哪开始?下面就是小编总结的学习网站开发(使用PHP)的过程,如果你有基础或已经了解...

丶辉
2016/08/18
269
4
浅谈移动端页面无刷新跳转问题的解决方案

浅谈移动端页面无刷新跳转问题的解决方案 2017-12-22 祈澈姑娘 最近开发微信公众号,用的框架是 一般的 UI,但是涉及到多页面之间的相互跳转的问题,降低了浏览器的性能,用户体验特别不好,...

祈澈姑娘
2017/12/22
0
0
对于新手学习PHP的规划建议

关于自学PHP,这方面的很多资料,我几乎没有看到过一个满意的答案,我该构建一个什么样的体系,如何构建,从哪开始?下面就是小编总结的学习网站开发(使用PHP)的过程,如果你有基础或已经了解...

xdl刘涛
2016/08/17
11
0
程序员技术练级攻略(转)

原文链接:http://coolshell.cn/articles/4990.html 月光博客6月12日发表了《写给新手程序员的一封信》,翻译自《An open letter to those who want to start programming》,我的朋友(他在...

恋空御月
2015/09/19
290
6
Android开发技术周报 Issue#152

十月 30, 20170 条评论AndroidDevWeekly 新闻 Google发布Android Studio 3.0正式版 Android 8.1新款字体“Product Sans”现在可供用户尝试 流畅省电 安卓8.1来了 Pixel/Nexus工厂镜像下...

脉脉不得语
2017/10/30
0
0
未来五年程序员应当具备的十项技能

独家:未来五年程序员应当具备的十项技能 转自:http://news.csdn.net/a/20090408/210278.html 【Csdn 4月9日编译】作为一名程序员,如果你想在这个领域内继续向前进步或者在当前的经济形势下...

长平狐
2012/10/16
163
0
7天学会spring cloud教程

原文引自:http://www.cnblogs.com/skyblog/category/738524.html 按照官方的话说:Spring Cloud 为开发者提供了在分布式系统(如配置管理、服务发现、断路器、智能路由、微代理、控制总线、...

商者
2016/12/22
25
0
Javaweb要学习的技能

学习javaweb开发要学习的技术和框架总结: 前言:当初想学习javaweb开发的时候,希望能够全方面地学习(这样找工作时就胸有成足了)。但是对这个根本不理解,又不认识从事这方面的熟人,所以...

程序o07
01/02
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

gRPC学习笔记

gRPC编程流程 1. proto文件定义 proto文件用于定义需要通过gRPC生成的接口,可以理解为接口定义文档 2. 通过构建工具生成服务基类代码-Maven或Gradle 3. 服务端开发 服务端实现类须实现通过构...

OSC_fly
20分钟前
0
0
Docker Mac (三) Dockerfile 及命令

Dockerfile 最近学习docker的时候,遇到一件怪事,关于docker镜像可能会被破坏,还不知道它会有此措施 所以需要了解构建Dockerfile的正确方法 Dockerfile是由一系列命令和参数构成的脚本,这些命...

___大侠
46分钟前
0
0
NetCat Tutorials

Hacking with Netcat part 1: The Basics Hacking with Netcat part 2: Bind and reverse shells Hacking with Netcat part 3: Advanced Techniques 10 Introduction to Netcat - pdf NetCat......

zungyiu
47分钟前
0
0
Android Studio+NDK+Cmake 移植FFmpeg-4.0.2命令行工具

一、编译 参考大神的帖子,亲测一次编译成功:https://blog.csdn.net/bobcat_kay/article/details/80889398 鉴于以前查文档的经验,这里附上编写例子的时间:2018年7月22日 我用的是ubantu,...

她叫我小渝
47分钟前
0
0
mysql创建数据库

登录MYSQL mysql -u root -p 脚本创建数据库WeChat,并制定默认的字符集是utf8mb4。 CREATE DATABASE Wechat DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_general_ci; 授权 grant all......

niithub
今天
0
0
svn: Unable to connect to a repository URL 的解决方案

错误图示: 解决办法:清除本地保存的授权信息; 1:右键点击本地文件夹,选择设置; TortoiseSVN -> Settings 2:在弹出的对话框中选择 Saved Data, 右侧选择:授权地方清理所有。 然后点确...

宁哥实战课堂
今天
1
0
sleep与wait的区别

Thread.sleep(XXX)方法消耗CPU吗? 这个知识点是我之前认识一直有错误的一个知识点,在我以前的认识里面,我一直认为Thread.sleep(1000)的这一秒钟的时间内,线程的休眠是一直占用着CPU的时间...

码代码的小司机
今天
1
0
20位活跃在Github上的国内技术大牛 leij 何小鹏 亚信

本文列举了20位在Github上非常活跃的国内大牛,看看其中是不是很多熟悉的面孔? 1. lifesinger(玉伯) Github主页: https://github.com/lifesinger 微博:@ 玉伯也叫射雕 玉伯(王保平),...

海博1600
今天
1
0
Mybatis收集配置

一、Mybatis取Clob数据 1、Mapper.xml配置 <resultMap type="com.test.User" id="user"> <result column="id" property="id"/> <result column="json_data" property="jsonData" ......

星痕2018
今天
1
0
centos7设置以多用户模式启动

1、旧版本linux系统修改inittab文件,在新版本执行vi /etc/inittab 会有以下提示 # inittab is no longer used when using systemd. # # ADDING CONFIGURATION HERE WILL HAVE NO EFFECT ON......

haha360
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部