Python Web工程师面试总结(一)- 总体框架

面试了一家初创公司, 面试官问的问题并不是说很难, 但是覆盖面比较广, 有一些基础概念不清晰的话, 很容易被问倒.

一些资料显示, 对 Python Web 开发工程师的一些技术栈要求如下:

  • 熟悉Python语言
  • 对 HTML/ CSS/ Javascript 比较熟悉
  • 对网络基础知识,比如HTTP、TCP/IP 等比较熟悉
  • 熟悉数据库、缓存、消息队列等技术的使用场景和使用方法
  • 日常使用类 Unix 系统工作, 如 Mac OS, Ubuntu, Deepin
  • 有性能优化经验,能快速定位问题

如果用一个项目来反推技术栈要求可能更好理解.

 

5530017-37f70ce56fb2e5f8.png

技能树

用 Python Web 框架开发项目, Python 语法基础自然是前提条件. 而开发过程中使用 Python 包管理工具也是必不可少的. 这是为了开发环境不受污染, 同时也方便后期项目的部署, 如果整个系统使用同一个包管理工具, 很容易会出现库包的版本冲突, 并且部署到服务器时, 由于没有区分环境, 只能将所有项目的包的并集一起安装到服务器上, 造成资源浪费.

以 Django 为例, MTV 模型中的 Model, 虽然是用 ORM 简化了数据库的操作, 但是基础的数据库增删改查语句仍是必须要学会的. 如果使用了非关系型数据库还需要你清楚与关系型数据库的差别, 或者说使用的原因是什么. 技术优劣性的讨论都是在限定条件下的, 盲目鼓吹某个技术, 并不是一个明智的做法.

Django 中的 T 是 Templates 模板, 模板中需要的大部分都是前端的知识, HTML/ CSS/ JavaScript/ Ajax 都需要有所了解, 也许我们不是一个设计师, 但是用前端做一个清爽易用的页面不是一件很困难的事, 而这却能提升不少用户体验.

Django 中的 V 是 Views 视图, 视图通常要与路由 urls 结合使用, 路由少不了看懂并会写一些基本的正则表达式, 路由转发请求和视图响应的过程涉及到一些网络基础知识, 这些网络基础知识包括但不限于 HTTP/ TCP协议, 各种网络响应状态码等, 熟悉这些知识可以在

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值