Skip to content

Latest commit

 

History

History
212 lines (98 loc) · 5.79 KB

51.精读《Elements of Web Dev》.md

File metadata and controls

212 lines (98 loc) · 5.79 KB

51.精读《Elements of Web Dev》.md

总结一下 Web 开发的环节,知识模块和技能点,这里想罗列的其实是给我自己一个学习的方向,相当于提供一个 roadMap,对于从业的我们来说也可以对全局有一个较好的把握,利于看到自己的薄弱环节,这里就先不对软技能和业务技能进行总结,只关注工程技能

  • 本文其实是做英文强字眼翻译,中英文相对应方便查找对应的知识

List

  1. Backend(后端)

    • authentication, oauth(鉴权)

    • Api Design(api 接口设计) RESTFUL, GraphQL

    • Payment intergration (支付集成)

    • social intergration (社交服务集成)

    • Session/cookie management (会话/时域管理)

    • user management (用户管理)

    • server(服务器), e.g. nginx, connection, model, conf, rewrite

    • CRM(Custom Relationship Management 客户关系管理系统)

  2. Deployment, Env management, Container(部署,环境管理,容器)

    • rollback/rollforward (回滚/前滚)

    • No-downtime, non-disruptive deployment (无宕机时间,无破坏性变更部署)

    • Deploy to downStreams, e.g. npm, chrome extension store (下游部署, npm,插件存储)

    • artefact management, e.g. gzips, OS specific builds (手动管理, gzips, 操作系统特定环境构建)

    • container technology e.g Docker, k8s, AWS ami(容器技术)

  3. DataBase (数据库)

    • schema design(模式设计)
    • ORM (Object Relational Mapping) 对象关系映射
    • language /env specific driver (语言,特定环境驱动)
    • test/ seed data (测试,源数据)
    • backup (备份)
    • batching, DB perfgomancs (批量查询,数据库性能)
    • Query syntax, e.g SQL, mongo query syntax (查询语法)
    • connection pool/ concurrent connection management (连接池, 持久化管理工具)
    • Connection restriction e.g. localhost only (远程连接限制)
  4. messagingQueue / MiddleWare (消息队列,中间件)

  5. Testing(测试)

    • parallel execution (并行执行)
    • UI automated testing (界面自动化测试)
    • browser / OS compatibility, e.g. headless browser, cloud solutions (浏览器/操作系统适配,如 无头浏览器,云解决方案)
    • screenshot diff regression (快照对比、回归测试)
    • unit test, isolation (单元测试,模块隔离)
    • mocking (数据模拟)
    • intergation test techniques (集成测试)
    • Coverage (line Coverage, path Coverage etc.), permutaions (覆盖测试,链路覆盖、路径覆盖等等)(排列组合)
  6. Security(安全)

    • CSRF, XSS, SQL injection,DDos, brute force etc. (跨站点伪造请求攻击,跨站点脚本攻击,SQL 注入,分布式拒绝服务攻击,穷举爆破攻击)

    • automated tools (自动化工具)

  7. OS (操作系统)

    • OS differences, e.g. fileSystem, path separator (操作系统差异: 例:文件系统,路径分割名)

    • run daemon, startup job, process manager (运行进程,初始化工作,进程管理)

    • ssh (secure shell) 安全壳协议

    • everything bash, zsh, powershell, e.g wildcard, expansion syntax (终端工具,命令行工具)

    • Everything *nix, du, filesystem, ps , process model ,netstat, pipes (系统指令)

  8. Network (计算机网络)

    • HTTP, and everything it entails e.g. CORS, MIME types, chunked (协议层)

    • websocket (套接层协议)

    • webworker, service worker(线程执行)

    • Proxy (代理)

  9. Web visualization technologies and principles (web 可视化技术和准则)

    • webgl

    • 2D/ 3D systems and calculations (二维三维系统和计算)

  10. Web standards, e.g. webassembly (web 标准)

  11. performance tuning (性能优化)

    • frontend: lighthouse 8

    • backend: load balancing, pref monitoring and profiling

  12. Source control (版本控制)

    • work flow (工作流)

    • tagging, release, branching (打点标签,发布版本,分支)

    • PR, collaboration (多人协作)

    • commit message conventions (提交信息约定)

  13. Project management, Production management (项目管理,产品管理)

    • main success scenario (成功构想)

    • PRD doc, sketch (出图工具, 产品原型文档)

    • milestone, timeline, estimate (里程碑,时间线,估期)

    • daily report,weekly report (日报,周报)

  14. software Monitoring (监控)

    • performance monitor (性能监控)

    • exception monitor (异常监控)

    • alert and alarm rule (报警和报警规则)

    • logging (日志)

  15. Engineering (工程化)

    • lint, prettier, custom rules, autofix (代码风格规范)

    • editor, IDE,plugins,e.g. intellisense

    • debugging,remote debug,debug mobile (调试, 远程调试, 移动端调试)

  16. Analytics (分析)

  17. Frontend (前端)

    • data flow (数据流)

    • state management (状态管理)

    • componentization (组件化)

    • Transpile, packing tools, e.g. webpack gulp coffeeScript typeScript (编译,打包工具)

    • tamplating, e.g. handlebar (模板)

    • ajax, jsonp etc.

  18. Design pattern (设计模式)

  19. Design / styling (设计,css)

    • cascading rules (选择器嵌套规则) nesting rules
    • preprocessor, e.g. scss less (预处理器)
    • box model (盒模型)
    • Z-index (层叠样式)
    • flexbox (弹性盒模型)
    • design principles, layout , color , theme (设计准则,布局,背景)