应用开发一般工作流程和注意
Upcoming SlideShare
Loading in...5
×
 

应用开发一般工作流程和注意

on

  • 368 views

sxs

sxs

Statistics

Views

Total Views
368
Views on SlideShare
367
Embed Views
1

Actions

Likes
0
Downloads
3
Comments
0

1 Embed 1

http://www.slideshare.net 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    应用开发一般工作流程和注意 应用开发一般工作流程和注意 Presentation Transcript

    • 标题 php 应用开发 一般工作流程和注意 产品部 - 自媒体 辛少普 shaopu@
    • 主要问题
      • 我们是谁
      • 我们和谁合作
      • 我们需要做什么
      • 我们需要注意和了解什么
      • 我们的未来如何
      • 常用工具
    • 应用开发
      • 什么是应用开发
        • 完成 一般用户 会用到的功能的开发
        • 用户:网站访问及使用者,运营,监控
    • 应用开发
      • 特征
        • 核心开发人员
        • 技术实现的主控制
        • 博学的疑问解答者
        • 项目发展的推动者
        • 新产品的第一批用户
    • 应用开发
      • 能力
        • 看得懂 UE ,打得了路由,了解得了跨域,分得清 MARGIN,PADDING ,优化得了 DB ,分析得了数据
    • 基本工作流程
    • 角色说明
      • 产品设计师
        • 产出物
          • UE: 描述页面结构、产品操作流程等
          • 产品文档: 描述详细的规范(字数限制)、文案等
        • 我们需要做的:
          • 理解产品: 什么背景下,谁,需要什么,如何解决,可能带来什么利益,什么重要
    • 角色说明
          • 针对产品设计考虑相关细节:
            • 透过表象看本质,了解产品人员真正想要的是什么: (WAP 游戏例子 )
            • 区分概念、拆分模块,理清模块关系,划清边界: (主题,模块,个性化)
            • 整理和抽象逻辑: (页签和配色)
            • 根据产品特征及重要程度评估实现方案:( 产品特性、数量级、收益)
    • < 这是什么 < 一个页签? < 规则如何
    • 角色说明
      • 页面构建 builder
        • 产出物
          • 页面 : 实际输出的页面 HTML
          • css: 不同部门不同处理
        • 我们需要做的:
          • 套页面: 把 PHP 输出与页面结合起来
            • 模板引擎
          • 保证显示和语法正确
            • html : title/alt, 标签后的空格
            • css : margin,padding
            • 浏览器: 标签闭合
    •  
    • 角色说明
      • RIA: 前端 JS,FLASH 等工程师 (Rich Internet Applications)
        • 产出物
          • 页面交互、效果的程序
        • 我们需要做的:
          • 提供数据接口:
            • 了解操作流程
            • 整理文档:地址、参数及规范、输出格式及不同结果
          • 页面布码:(流程)
          • 知识点:跨域、 json/jsonp 、 crossdomain
    •  
    • 角色说明
      • 运维 : 负责服务器、 DB 等系统管理
        • 产出物
          • 稳定的系统
        • 我们需要做的:
          • 开发稳定可控的系统
            • 一定的容错
            • 问题可查
          • 降低系统负担
            • cpu ,内存,磁盘,带宽,连接, IO...
          • 及时跟进和反馈
          • 知识点
            • 太多了
    • 角色说明
      • 测试 : 负责对产品质量进行控制
        • 测试流程、提案系统、问题的定位
      • 监控 : 负责对内容质量进行控制
        • 及时删除
      • 客服 : 负责与用户进行沟通
        • 及时反馈
      • 运营 : 负责保持和促进产品活跃
        • 积极配合
    • 一般工作模式
      • 新产品开发
      • 新功能开发
      • BUG 修改
      • 辅助
    • 新工作时可能遇到的问题
      • 不了解产品、系统、代码等
        • 了解产品功能、特征、注意点
        • 博客:亿级访问、读超多写少、 HTML 存贮、 N 多合作部门、各种关键字、页面模块化
        • 去用!
        • 了解基本系统架构: 前端、队列、审核后台、 RIA 、缓存
      • 博客: squid 、 php|ria 分离、 XSS 、 4 台接口机、及时审核及时删除
        • 了解代码结构
        • 博客: since 2004 、面向过程、读写分离、 >30 名开发者
    • 新工作时可能遇到的问题
      • 代码真乱 #%$&^(*^&%@#
      • 跟谁配合?问你的领导或指导人
      • 其他问题?
    • 关于 php
      • 语言特性: 弱类型,过程 > 对象,执行速度快
      • 优点: 上手容易(语法简单,思路单纯,甚至傻瓜化),开发速度快,兼容 C,JAVA 的特点,所以是 WEB 应用开发的首选语言(国内 >50% ,程序语言 NO.4 )
      • 问题: 重实现轻设计,缺少严谨细致,代码混乱
      • 语言只是工具
      • 思想、态度才是本源
    • 回到工程师
      • 程序不是你一个人的:
      • 清晰的思路,简单的语法,适当的注释,使用人类语言,拼音很难理解,关注整个团队,帮助整个团队
      • 编程是一项艺术:
      • 适当的使用面向对象,有效的利用资源,向其他高级语言学习,适当抽象就是产品的扩展性。当然,不要过设计
      • 不要相信用户:
      • 完整严谨的输入判断,防刷,健壮的逻辑
      • 不要相信产品:
      • 不要硬编码,尽量模块化,要有抽象的思路
    • 回到工程师
      • 优秀系统的素质不体现在正常运行时,而体现在故障时:
      • 容错,可查,可改
      • 不要随便重写代码
        • 浪费时间等于浪费产品生命 ( myspace 的噩梦)
        • 你完全了解原来的产品和程序逻辑嘛?
        • 明天你会觉得今天你的代码也很烂
      • 要及时重构,并完成它
      • 适当的文档,让后人了解你的想法
    • 应用开发的职业发展
      • 产品、产品经理
      • 工程师: dba 、运维、基础研发、数据分析、架构师
      • 技术管理
      • 售前、售后
    • 常用工具
      • httpwatch/httpanalyzer/fiddler : 抓包
      • firebug: js 调试、页面节点查看和修改、抓包
      • firephp: php 跟踪
      • xdebug/xhprof: php 跟踪和优化
      • htmlvalidate: html 格式检查
      • iedeveloper: IE 下的 JS 调试
      • 思维导图 : freemind/xmind/mindmanage
      • 流程图: visio/cacoo.com/edraw
    • HTTP Analyzer
    • Firephp 程序调用
    • Xhprof
    • Htmlvalidator
    • 思维导图
    • 流程图
    •