平台推广指南:从规划到执行的循序渐进指南

信途科技 新闻资讯 1 0

导言

在当今竞争激烈的数字环境中,平台推广对于企业来说至关重要。通过在社交媒体、搜索引擎和其他在线平台上有效地推广您的产品或服务,您可以提高知名度、吸引潜在客户并推动销售。

平台推广指南

本指南将为您提供一个从规划到执行的循序渐进指南,以帮助您制定并实施成功的平台推广策略。

第 1 步:规划

1.1 目标确定

确定您希望通过平台推广实现的目标,例如提高知名Facebook:联合利华在 Facebook 上创建了社区群体,促进其产品讨论和客户互动,从而建立了忠实度并推动了销售。LinkedIn:微软在其 LinkedIn 页面上发布了行业洞察力、专家建议和公司更新,使其成为行业思想领袖并吸引了新人才。

结论

通过遵循本指南中概述的步骤,您可以制定并实施成功的平台推广策略,以提高知名度、吸引潜在客户并推动销售。记住,制定一个以目标受众、相关内容和持续分析为中心的战略至关重要。

浅谈软件研发管理体系建设

最近一段时间,我一直在反复思考一个问题:我们的软件研发管理体系应该是怎样的?在不断思考的过程中,逐步有一些粗浅的认识,在此将这些认识记录成文字,并期待能够与更多的伙伴碰撞,进一步完善这种认识,并逐步上升到理论高度,从而有利于指导具体实践。

1. 对软件研发管理体系的一些概念认知1.1. 研发管理是什么关于研发管理,网络百科中这样定义:研发管理就是在研发体系结构设计和各种管理理论基础之上,借助信息平台对研发过程中进行的团队建设、流程设计、绩效管理、风险管理、成本管理、项目管理和知识管理等的一系列协调活动。

也就是说,研发管理首要一点就是要根据公司业务的发展确定相应的研发体系结构,之后按照这种研发体系结构组件一支高水平的研发团队,设计高效合理的研发流程,借助合适的研发信息平台支持研发团队高效工作,以绩效管理调动研发团队的积极性,以风险管理控制研发风险,以成本管理使研发在成本预算范围内完成研发工作,以项目管理确保研发项目的顺利进行,而知识管理使得研发团队的智慧联网和知识沉淀。

纵观各类软件企业,由于自身所处环境不同,因此其软件研发管理模式也不尽相同,这其中有基于CMMI能力成熟度模型指导下构建的研发管理体系,也有基于IPD集成产品研发框架指导下构建的研发管理体系,当然也有一些目前不少小企业、互联网企业推崇的敏捷研发管理体系。 不同的研发管理体系其实都会有相应的交叉部分,最终追求的目标都是能否适合企业的发展,给企业带来市场和财务上的成功。

1.2. 基于CMMI的研发管理CMMI能力成熟度模型相信大家都不陌生,从一级到五级,覆盖了22个过程域,一般能达到CMMI3级别的基本上可以理解为各类流程、过程规则等已经达到一个较好的水平。 当然,这里主要是指企业能够确实按照CMMI模型去实践,这种实践其实更适合于以瀑布式开发为主导的项目开发及产品研发模式。 然则,实际上,大部分企业尤其是国内企业并不会严格按照这个模型去做,因为如果每一个过程域都不打折扣地执行地话,需要非常标准化的流程和强大的资源支撑,在这个讲究快速响应变化的时代其实是很难做到的,通常这个时候都会进行相应的裁剪,甚至会结合敏捷迭代等方面的模式,从而逐步形成自己公司的研发管理体系。

1.3. 基于敏捷模式的研发管理在这个快鱼吃慢鱼的互联网时代,对用户和环境越来越要求要快速响应。 敏捷研发是当前不少互联网企业、中小企业推行的研发管理体系,主要理念就是敏捷迭代、小步快跑,快速改进、拥抱变化,用户参与等等。 目前这方面也有不少公司除了有相应的敏捷研发体系之外,还有相应的成熟工具做支撑。 例如,腾讯的TAPD敏捷研发平台就是其中的代表。 通过对用户故事的层级拆分,实现对需求的有效管控和分解,从而确保持续迭代上线。

敏捷研发管理在当前我们以业务为导向、项目为主的情况下,要全面实施尚有较大困难,当然并非是完全不能做,主要是当前所处的环境、所面向的业务、项目开发模式、人员结构等可能较难满足敏捷模式推行的需要。

1.4. 基于IPD的研发管理之前有简单了解过IPD产品研发管理体系,我认为其中的核心就是“四四四”模型,四四四代表了四大团队、四个流程、四个支撑体系。

四大团队建设包括建立集成产品管理团队(IPMT)、建立产品市场团队(PMT)、建立产品开发团队(PDT)、建立技术开发团队(TDT)。

四大流程建设包括建立产品战略流程、建立需求管理流程、建立产品开发流程、建立技术开发及平台开发流程。

四个支撑体系建设包括建立项目管理体系、建立质量管理体系、建立绩效管理体系、建立成本管理体系。

个人感觉,基于IPD的产品研发管理从整体上来看是一个相对重量级的体系,要落地执行往往需要从整个公司层面去整体考虑和推动。

IPD的理念和敏捷开发理念在本质上是基本一致的,比如以市场需求(用户价值)为核心,将产品开发看成一项投资(商业价值),通过CBB—公共基础模块和跨部门的团队准确、快速、低成本、高质量地推出产品(各评审点的多团队参与和决策、通过各种技术改进提升产品开发效率和降低浪费、持续交付)。

从理论上来讲,IPD研发管理体系是一个较全面的体系,在当前我们的现状下也可能容易出现水土不服的情形,当然其中有一些好的做法是值得借鉴的。

2. 什么样的软件研发管理体系适合我们的发展从项目及产品的研发角度来看,发展到一定阶段的传统IT企业在研发管理上多数都是基于瀑布型的传统研发模式,由于项目的特点及人员的组织结构等因素,项目开发及产品研发的周期往往较长,较难适应市场快速变化的需要,也较难做到对客户的需求进行快速响应。 而大部分的互联网公司及一些大厂,推行了敏捷研发模式,或者是在标准化项目管理和敏捷迭代两者融合上进行了相应的实践。

那么,针对当前我们所面临的一系列问题,究竟什么样的软件研发管理体系在未来一定时期内适合我们的发展?我们需要重构我们的软件研发管理体系吗?我们有必要重构我们的软件研发管理体系吗?带着这些问题,我想主要思考几个方面的问题。

2.1. 能否快速适应未来业务的发展变化技术是为业务发展而服务的,因此在考虑软件研发管理体系构建时,第一个要考虑的问题就是我们的软件研发管理体系能否快速适应公司未来业务的发展变化。 特别是在传统IT业务与互联网新兴业务加速融合的大环境下,信息化能力是越来越多客户的第一选择,因此在业务的快速发展方面需要更加强有力的技术支撑,而这个支撑的背后就是需要我们能够有一套能够快速响应变化、敏捷高效的研发体系,特别是能够有一定的前瞻性并支撑到老业务的快速转型和新业务的拓展。

2.2. 在业务出现较大波动时能否弹性伸缩另外一个问题就是,业务在发展过程中,受大环境等诸多因素的影响,定然很难一直都是呈现直线上升的发展趋势,这当中必然会有波峰波谷,只不过这个波峰波谷是大是小的问题。 而我们面临的问题则是,当出现较大的波峰波谷的时候,我们的研发管理体系应该如何适应?特别是在软件业务处于相对低谷时,既能够继续保持对技术研发的持续投入,又能够在应用开发等方面有一定的可伸缩性,从而正确地处理好软件生产效益问题。 这里面可能会涉及到中高层次软件人才的相对稳定和低层次软件人才的灵活流动等问题。 特别是在我们业务多样化的背景下,不同业务单元的发展会有不同的发展路径,对软件研发能力的诉求也有所不同,那么这里面首先涉及到的一点就是如何有效平衡基础研发能力和行业研发能力。

对于基础研发能力,个人认为应该是一个软件公司最内在的核心技术能力,往往很多时候基础研发工作很难像做行业应用开发那样立竿见影,但这项工作干得不好往往又容易成为行业研发能力的掣肘,这也是我们当前在人工智能、区块链等新技术潮流背景下总感觉难以发力的原因之一。

对于行业研发能力,个人认为应该要从两个方面去考虑,一个是产品化的能力,其二才是应用开发能力。 应用开发能力很好理解,就是目前我们这么多年以来一直在做的各种类型的项目开发,而这里面大部分的项目开发其实都是偏应用层面的开发。 而产品化的能力则是最近一两年以来我们重新关注的一个内容,不过这条路上我们尚开始起步,还有很长的路要走,也还有不少坑要踩。 个人认为,产品化的能力能否真正发展起来,其中很重要的一点就是要考虑如何与基础研发能力做充分融合。 产品化不等同于应用开发,应用开发更多是定制化的开发,是客户导向的软件开发,通常面向的是一个或少数几个的客户;而产品化则是要综合行业、市场、客户群体、新技术等多方面因素的研发,是市场导向的软件开发,面向的是一个或多个的客户群体,甚至面向的是一个市场或跨界市场。

2.3. 新技术研发及成果转化能否跟上业务变化最近几年,新技术层出不穷,在软件架构的发展方面也非常迅猛,历经了单体架构、垂直架构、SOA架构、微服务架构的演化。 从我们公司目前的技术研发实际来看,我们有少量的项目/系统采用了SOA架构,然则大部分的项目/系统仍然采用的是单体架构和垂直架构。 单从这一点来看,我们在技术领域的持续跟进及成果转化方面已然有落后趋势,这方面需要我们奋起直追才行。 当然,出现如今这种局面固然由众多因素催生而成。 比如,已有开发框架前端兼容性的问题最近一两年以来常常被诟病,诚然有它内在的好处,然则最近一两年以来,用户对系统的用户体验要求更高了,不再是单纯地满足于功能实现层面,而是开始追求良好的人机交互和界面展现。 因此,这方面势必对新技术的要求更加迫切。 最近几年,当不少团队都在往前后端分离走的时候,我们至今的绝大部分软件项目开发仍然停留在前后端分离之前,对不少用户界面展现要求高的软件项目而言,难以快速有效响应变化,同时对一些相对比较成熟的软件产品而言也难以做到接口自动化。

因此,能否在新技术的研发上抓住正确的方向并加快研发成果转化,为业务的快速变化提供强有力的技术支撑,是一个摆在我们面前急需解决的课题。 从当今新技术的发展趋势来看,研发架构方面,我们虽说不能完全抛弃传统的单体/垂直架构,但我们必须要往微服务架构方向迈进,除了与最新技术接轨之外,更重要的是如何进行业务解耦,沉淀行业积累,并反向推动人员组织层次的变革,提升软件生产效率,提高软件质量。

除此之外,对于人工智能、区块链等新领域,也是需要综合业务应用场景打造适合我们自身发展的技术+业务融合之路。

2.4. 在标准化和敏捷迭代之间如何平衡标准化的软件研发道路固然有不少好处,有严谨的流程、规范的体系、固定的套路,当然更多的则是瀑布开发模式,虽然最近几年也陆续有迭代开发的模式,但更多的是被动式响应,而且这种迭代开发模式基本上是大阶段的划分,在每一个大阶段里面依旧是一个典型的瀑布开发模式,即历经需求分析、交互原型设计、UI设计、Web前端开发、程序开发、系统测试、部署实施等步骤,横跨周期往往较长,一旦发生需求变更,变动的代价过高。

敏捷开发强调以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。 在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征。 换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。

那么,问题来了,既然标准化项目管理模式下存在太多流水线作业及效率低下等问题,那么我们能够直接转向敏捷迭代模式呢?世界上万事万物都是对立统一的,个人认为不论是标准化项目管理模式还是敏捷迭代项目管理模式都有其擅长的一面。 一方面,在现有的以项目为主导的软件开发体系中,标准化模式是我们一直以来的主要做法,也积累了不少经验做法;另一方面,采用敏捷迭代模式对于产品复杂不断有新需求加入等场景是比较适合的。 所以这里面更多的是考虑如何更好地平衡标准化项目管理和敏捷迭代两者之间的关系。 基本的思路就是结合标准化项目管理和敏捷迭代的优缺点进行适度裁剪,既能提高软件质量和软件开发效率,也能够保留一定的规范性和软件过程文档。 例如,针对项目管理,通常是五个过程组:启动、规划、执行、监控、收尾,那么我们其实可以结合实际将规划提前,将监控贯穿于执行过程,这样就势必要求在启动时也要做好项目计划相关工作,在执行过程中抓住关注点并定期监控其执行情况,在收尾阶段做好项目回顾总结。

不论采用何种模式,我们的根本目标就是达到更低的成本实现更快速、更可靠的交付。 近年来比较火热的是DevOps。 DevOps(Development和Operations的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。 它是一种重视“软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化、运动或惯例。 透过自动化“软件交付”和“架构变更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。

因此,我们的软件研发管理体系中是否应该引入DevOps,进而改善公司组织文化、提高员工的参与感、提高交付效率,我想这也是需要重点关注和考虑的。

2.5. 组织过程资产能否持续积累并盘活组织过程资产指一个学习型组织在项目操作过程中所积累的无形资产。 组织过程资产的累积程度是衡量一个项目组织管理体系成熟度的重要指标,项目组织在实践中形成自己独特的过程资产,构成组织的核心竞争力。

组织过程资产主要包括但不限于以下内容:项目组织在项目管理过程中指定的各种规章制度、指导方针、规范标准、操作程序、工作流程、行为准则和工具方法等。 项目组织在项目操作过程中所获得的经验和教训,其中既包括已经形成文字的档案,也包括留在团队成员脑子中没有形成文字的思想。 项目组织在项目管理过程中形成的所有文档,包括知识资料库、文档模板、标准化的表格、风险清单等。 项目组织在以往的项目操作过程中留下的历史信息。

经过多年的软件开发,我们做了大大小小形形色色的软件项目和产品,也逐渐积累了一些行业化的软件项目,但总的来看,能够形成规模化效应的软件产品尚较为匮乏,更多的是以定制化开发为主的软件系统,当然也积累了不少项目经验。 在这过程中,也积累了不少标准、规范、流程、模板等各类软件过程资源。 然而,从目前掌握的情况来看,这些资源是分散的,不够体系化的,还谈不上真正意义上的资产,至少在价值的发挥上还不充分。 况且,软件行业这几年的人才流动率明显加快,人员更替的速度以及未能体系化的过程资产积累,加剧了组织过程资产的盘活难度。

那么,构建一个相对健全的、动态的、能够适应未来业务发展的组织过程资产库就显得尤为重要。 这既是软件研发管理体系的一个重要组成部分,也是公司层面应该给予充分重视的。 在组织过程资产库构建的过程中,其中很重要的一点就是如何让研发知识与经验成为公司的宝贵财产,这里就要充分考虑研发知识管理。 知识管理把“隐形知识显性化”,是一项涉及知识库、过程资产、环境和交流等元素的整合过程,所管理的知识将作为一个团组织中过程资产的重要组成部分。 对于软件研发而言,我们需要考虑怎么把业务人员和技术人员脑中的蓝图转化为显性知识。

3. 构建我们的软件研发管理体系应包含哪些内容软件研发管理体系的建设离不开几个关键要素:人员、技术、过程、资源,并在此基础上配以相应的管理手段。 进一步来看,要构建适合我们自身发展的软件研发管理体系,需要着重考虑几个能力体系的建设,即:人员组织能力、技术研发能力、过程管理能力和资源建设能力。

前面也有针对“什么样的软件研发管理体系适合我们的发展”进行了一些相对粗浅的探讨,那么在考虑如何构建适合我们发展的软件研发管理体系之前,我想这里首先要明确一下我们期待构建的软件研发管理体系。 我们公司的业务涉及众多行业客户,一直以来主要以定制化项目开发为主,同时也涉及运维服务,而在产品研发等方面则处于起步阶段,且在一段时期内项目、产品、服务将会长期并存,因此,个人认为适合我们的软件研发管理体系应该至少经历三个阶段,包括初期的标准化软件研发管理体系、中期的标准化与敏捷相结合的软件研发管理体系和后期的敏捷化软件研发管理体系。

基于上述这样的考虑,正常来讲我们当前应该在标准化的软件研发管理体系中要做进一步强化,而考虑到市场的快速变化、技术的日益进步,个人认为我们当前就需要开始考虑标准化的与敏捷相结合的软件研发管理体系。 为什么还需要考虑标准化的软件研发管理体系呢?主要是传统的定制化的软件项目开发依旧占据主体,且目前在这方面仍然有非常大的改进提升空间,然而标准化的模式常常是过于强调标准、规范、流程,开发模式过于线性化,因此需要引入敏捷开发模式。 所以,我们又需要考虑敏捷的软件研发管理体系,这主要是为了更好地适应市场变化、更快速地响应客户需求,更好地提升软件开发生产效率。

3.1. 人员组织能力关于人员组织能力,个人认为有两个关注点:一是团队的发展,二是个体的发展。 这两者是相辅相成、互相融合促进的。 综合来看,人员组织能力的建设主要包括设立与公司战略、业务、技术发展相适应的组织架构,并配以构建相对完整可行的岗位体系和对应的人员考核体系,同时在团队建设等方面持续改进与提升。

关于组织架构,当前的组织架构虽然解决了一些曾经的主要矛盾,但依然存在不少问题,突出的一点就是核心薄弱,即核心技术能力不强,仍旧需要投入大量的人力到各行业的应用开发中,当然这与我们一直以来承接定制化的软件项目开发不无关系。 这是当前乃至未来一定时期需要解决的。

同时,最近几年来的组织架构主要是以职能型组织架构为主,产品线为主导的研发模式尚不成熟,针对项目及产品的团队构建主要是以项目经理来驱动,在项目团队的组成方面固然与互联网的项目团队截然不同。 在团队建设方面,需要进一步打通团队之间的壁垒,强化团队的整体协同作战能力。

在岗位体系方面,特别是对人员的绩效评价方面,需要在已有的岗位体系基础上进一步考虑如何更好地执行落地,确保个人绩效目标与团队绩效目标的一致性和顺利达成。

3.2. 技术研发能力结合我们的实际,我认为在技术研发能力方面要考虑四个方面:一是技术预研,二是技术开发,三是产品开发,四是定制开发。

关于技术预研,通俗来讲就是:预研=预先+研究。 这种预先研究通常来源于几个方面,例如来自外部竞争对手的迫使、来自客户或市场的需求、来自公司高层的决策等。 为什么要做技术预研呢?这是扫清前行障碍的过程,这为后续展开总体设计、详细设计指明了方向,也是持续积累公司技术能力、保持与新技术同步而不至于脱离轨道的方式之一。

关于技术开发,其实这里主要指与基础平台、公共组件、关键技术等方面的技术研发。 另外一个方面来理解,技术开发是技术预研的延续,是在技术预研成果经论证的基础上开展的一系列能促进公司发展、业务发展、技术发展而开展的技术研发工作。

软件产品是指向用户提供的计算机软件、信息系统、套装软件或在提供计算机信息系统集成、应用服务等技术服务时提供的软件,是通用的产品应用于某一行业领域而不是像软件项目一样为某一需求或者单位定制开发。

软件项目主要为特定企业开发或者部署实施一套专用的系统,在进入项目开发之前需要与用户进行具体的交流和讨论,了解用户心中对于软件预期的样子,后经过招投标,签订合同,实施交付。

关于产品开发,这方面我们尚处于起步阶段,尚缺乏一套完整可行的产品研发流程及最佳实践,需要摸着石头过河,也需要长期坚持不懈地努力。

关于定制开发,当前主要是基于客户需求的软件项目定制开发,后续还会包括基于产品衍生出来的定制化开发。 前面的这种方式是我们当前最熟悉的模式,主要面临的困境是两个:一是如何实现快速交付,二是如何实现成本可控,从而提升软件项目的利润。

做项目侧重于在最短的时间内,按照客户的需求开发出操作敏捷,用户体验良好的软件。 而做产品则侧重于市场驱动,时间相对充足,但要开发出有竞争力,有自身特色,且受客户欢迎的产品,要求功能响应速度快,操作简单,界面美观。

技术预研+技术开发是强化内核的内在需要,定制开发是现阶段的生存根本,产品开发则是为未来发展铺路。

3.3. 过程管理能力过程管理能力主要包括项目管理、开发管理、质量管理和配置管理等几个方面,需要一套完整合理的流程贯穿整个过程。

在项目管理方面,我们需要梳理当前项目管理体系的标准、规范、流程及相关实践,建立以过程为核心、以度量为基础、以人为本的可裁剪、受认可、能执行的信息集成项目管理体系,进一步规范公司的项目管理,提升项目群管理能力。 结合项目管理的五大过程组(启动、计划、执行、监控、收尾),并结合敏捷迭代的思想,形成标准化项目管理与敏捷迭代相结合的具有实际指导意义的方法体系,同时将这套方法体系以指南性文件、规范性文件等形式传导到相关人员,确保可落地执行。 此外,为加强过程管控、资源共享、工作协同,组建PMO团队,实现对项目群及重大项目的统一管控与决策支持。

在开发管理方面,一是要落实统一的软件开发规范,包括架构规范、设计规范、UI规范、编码规范、测试规范等。 强化设计及开发关键环节的评审,包括对需求、概要设计、详细设计、UI设计等的设计方面的评审,对测试用例等方面的评审,对代码的评审检查(例如利用SonarQube进行代码的自动检查等)及发布评审等。 同时通过试点+逐步铺开的方式着力推进CI/CD的落地。

在质量管理方面,进一步强化项目质量审计,逐步改进软件过程生产效能。 而在配置方面,则加强对配置项的识别、配置空间的管理、变更控制等,规范软件开发过程,确保构建正确的系统。 正确应用软件配置管理是开发高质量软件所不可缺少的。 软件配置管理的过程是软件开发过程中质量管理的精髓。

综合来讲,在过程管理方面就是要形成一套适用的软件研发管理流程,并配以相应的节点管控,让不同开发角色之间即各司其职又相互融合促进,从而促进软件开发自组织能力的逐步提升,充分调动软件开发人员的主动性和积极性。

3.4. 资源建设能力简单来讲,资源建设是软件研发管理体系中的支撑体系。 资源建设主要包括了一系列的制度规范、工具、模板、过程资料及交付物(例如项目文档、源代码等),以及相应的经验、知识沉淀等。 一是要适时梳理相应的制度、规程、标准、规范、文档模板等,形成标准化资源库;二是要对不同行业历年来的项目资料及源代码分门别类做好规划和归档管理,形成静态库(归档库)和活跃库,同时做好数据安全管理;三是要对软件研发人员及工作中的一些隐性知识转化为显性知识,并逐步构建软件研发的知识图谱,促进知识经验的持续积累与转化,并通过链条式、网状式等方式实现知识分享与传播,形成经验知识库。

如何在 Linux 命令行中使用和执行 PHP 代码

PHP是一个开源服务器端脚本语言,最初这三个字母代表的是“Personal Home Page”,而现在则代表的是“PHP:Hypertext Preprocessor”,它是个递归首字母缩写。 它是一个跨平台脚本语言,深受C、C++和Java的影响。

在 Linux 命令行中运行 PHP 代码

PHP的语法和C、Java以及带有一些PHP特性的Perl变成语言中的语法十分相似,它当下大约正被2.6亿个网站所使用,当前最新的稳定版本是PHP版本5.6.10。

PHP是HTML的嵌入脚本,它便于开发人员快速写出动态生成的页面。 PHP主要用于服务器端(而Javascript则用于客户端)以通过HTTP生成动态网页,然而,当你知道可以在Linux终端中不需要网页浏览器来执行PHP时,你或许会大为惊讶。

本文将阐述PHP脚本语言的命令行方面。

1. 在安装完PHP和Apache2后,我们需要安装PHP命令行解释器。

# apt-get install php5-cli [Debian 及类似系统] # yum install php-cli [CentOS 及类似系统]

接下来我们通常要做的是,在/var/www/html(这是 Apache2 在大多数发行版中的工作目录)这个位置创建一个内容为 ,名为 的文件来测试(PHP是否安装正确),执行以下命令即可。

# echo /var/www/html/

然后,将浏览器访问,这将会在网络浏览器中打开该文件。

检查PHP信息

不需要任何浏览器,在Linux终端中也可以获得相同的结果。在Linux命令行中执行/var/www/html/,如:

# php -f /var/www/html/

从命令行检查PHP信息

由于输出结果太大,我们可以通过管道将上述输出结果输送给 less 命令,这样就可以一次输出一屏了,命令如下:

# php -f /var/www/html/ | less

检查所有PHP信息

这里,‘-f‘选项解析并执行命令后跟随的文件。

2. 我们可以直接在Linux命令行使用phpinfo()这个十分有价值的调试工具而不需要从文件来调用,只需执行以下命令:

# php -r phpinfo();

PHP调试工具

这里,‘-r‘ 选项会让PHP代码在Linux终端中不带和标记直接执行。

3. 以交互模式运行PHP并做一些数学运算。 这里,‘-a‘ 选项用于以交互模式运行PHP。

# php -a Interactive shell phpecho 2+3; 5 phpecho 9-6; 3 phpecho 5*4; 20 phpecho 12/3; 4 phpecho 12/5; 2.4 phpecho 2+3-1; 4 phpecho 2+3-1*3; 2 php exit

输入 ‘exit‘ 或者按下 ‘ctrl+c‘ 来关闭PHP交互模式。

启用PHP交互模式

4. 你可以仅仅将PHP脚本作为shell脚本来运行。 首先,创建在你当前工作目录中创建一个PHP样例脚本。

# echo -e #!/usr/bin/

注意,我们在该PHP脚本的第一行使用#!/usr/bin/php,就像在shell脚本中那样(/bin/bash)。 第一行的#!/usr/bin/php告诉Linux命令行用 PHP 解释器来解析该脚本文件。

其次,让该脚本可执行:

# chmod 755

接着来运行它,

# ./

5. 你可以完全靠自己通过交互shell来创建简单函数,这你一定会被惊到了。 下面是循序渐进的指南。

开启PHP交互模式。

# php -a

创建一个函数,将它命名为 addition。 同时,声明两个变量 $a 和 $b。

php function addition ($a, $b)

使用花括号来在其间为该函数定义规则。

php {

定义规则。 这里,该规则讲的是添加这两个变量。

php { echo $a + $b;

所有规则定义完毕,通过闭合花括号来封装规则。

php {}

测试函数,添加数字4和3,命令如下:

phpvar_dump (addition(4,3));

样例输出

7NULL

你可以运行以下代码来执行该函数,你可以测试不同的值,你想来多少次都行。 将里头的 a 和 b 替换成你自己的值。

phpvar_dump (addition(a,b));phpvar_dump (addition(9,3.3));

样例输出

12.3NULL

创建PHP函数

你可以一直运行该函数,直至退出交互模式(ctrl+z)。 同时,你也应该注意到了,上面输出结果中返回的数据类型为 NULL。 这个问题可以通过要求 php 交互 shell用 return 代��� echo 返回结果来修复。

只需要在上面的函数的中 ‘echo‘ 声明用 ‘return‘ 来替换

替换

php { echo $a + $b;

php {return $a + $b;

剩下的东西和原理仍然一样。

这里是一个样例,在该样例的输出结果中返回了正确的数据类型。

PHP函数

永远都记住,用户定义的函数不会从一个shell会话保留到下一个shell会话,因此,一旦你退出交互shell,它就会丢失了。

回复

使用道具 举报

返回列表

PMP_是考什么

PMP®新版考纲加入了ACP®敏捷管理的内容,而且还不少,敏捷+混合题型占到了 50%。 考纲变化1、模块划分的变化旧版考纲大家应该知道。 PMP®考试内容大部分来源于教材PMBOK指南的五大过程组以及十大知识领域。 划分为: 5大过程组:启动(13%)、规划(24%)、执行(31%)、监控(25%)、收尾(7%)) 而这次新考纲则是按人员管理、过程管理和商业环境管理 来划分为三个模块。 具体为: 人员管理(42%)、过程管理(50%)、商业环境管理(8%)2、跟教材的对比(大幅度增加敏捷内容)第六版的PMBOK教材是没有涉及到敏捷型项目管理方法的。 只是提及到了敏捷型项目管理方法的一些基本理念和做法。 而第七版PMBOK,项目管理方法论改成了预测型和敏捷型 五五开,加入了近一半的敏捷实践。 敏捷型方法的比重更大了,考纲强调要管理项目本身与商业环境 相互影响;敏捷宣言、原则和方法论成为了一个必选项;由此可见,新考纲变动了,考试内容中,敏捷管理的占比已经快要持平项目管理; 这一点是我认为这次考纲带来的最大、也是最重要的变化。 3、考试模式的变化(题量、题型、考试时间)题目数量:由原来的200道单选题变为180道题题目类型:由原来的全部是单选题,变为单选题、多选题、等其他题型相结合。 值得一提的是,单选题仍占大部分,约占90%。 考试时间:由原来的240分钟变为230分钟总结。 PMP®大纲的变化,能直接感受到的是PMP®考试内容更多了(尤其是敏捷),考试难度有所增加。 但是这个体系是符合时下项目管理实践需求的。 PMP®考试大纲:领域一、人员 - 考试内容占比42%任务1 管理冲突*解释冲突的来源和所处阶段*分析冲突发生的背景*评估/建议/协调适当的冲突解决方案任务2 领导团队*设定清晰的愿景和使命*支持多样性和包容性(例如行为类型、思维过程)*重视服务型领导(例如将服务型领导的原则与团队联系起来)*确定适当的领导风格(例如指导型、协作型)*激发、激励和影响团队成员/相关方(例如团队合同、社会合同/团队章程、奖励制度)*分析团队成员和相关方的影响力*区分领导各类团队成员和相关方的不同选项任务3 支持团队绩效*根据关键绩效指标评估团队成员的绩效*支持并认可团队成员的成长和发展*确定适当的反馈方法*核实绩效提升情况任务4 向团队成员和相关方授权*根据团队优势进行组织*支持对团队实行任务问责*评估任务问责的表现情况*决定和授予决策权的级别任务5 确保团队成员/相关方完成适当培训*确定培训后必须具备的能力以及培训的组成部分*根据培训需要确定培训方案*为培训分配资源*衡量培训结果任务6 建设团队*评估相关方的技能*推断项目资源需求*持续评估并更新团队技能,以达到项目要求*保持团队和知识相互交流任务7 解决和消除团队面临的障碍、妨碍和阻碍*确定团队面临的各种障碍*确定团队面临的各种障碍的优先级*使用网络实施解决方案,以消除团队面临的各种障碍*持续进行重新评估,以确保团队面临的各种障碍正在得到解决任务8 谈判确定项目协议*分析谈判协议的范围*评估优先级并确定最终目标*核实是否已达到项目协议的目标*参与协议谈判*确定谈判策略任务9 与相关方协作*评估相关方的参与需求*使相关方的需要、期望和项目目标趋于一致*构建信任,并影响相关方,以实现项目目标任务10 凝聚共识*对情况进行详细分析,发现产生误解的根本原因*对所有必要的参与方进行调研,以达成共识*为各方协议的结果提供支持*对潜在误解进行调查任务11 让虚拟团队参与进来并为其提供支持*审视虚拟团队成员的需要(例如环境、地理、文化、全球区域等)*研究让虚拟团队成员参与进来的备选方案(例如沟通工具、集中办公)*实施让虚拟团队成员参与进来的方案*持续评估虚拟团队成员参与的有效性任务12 定义团队的基本规则*将组织原则告知团队和外部相关方*营造遵守基本规则的环境*管理和纠正违反基本规则的行为任务13 指导有关的相关方*安排时间进行指导*识别并利用指导机会任务14 运用情商提升团队绩效*使用个性指标对行为做出评估*分析个性指标并适应关键项目相关方的情感交流的需要领域二、过程 - 考试内容占比50%任务1 执行需要紧急交付商业价值的项目*评估可循序渐进地交付价值的机会*审视项目整个实施过程中的商业价值*支持团队对项目任务进行细分,以便发现最小化可实行产品任务2 管理沟通*分析所有相关方的沟通需要*确定适用于所有相关方的沟通方法、渠道、频率时长和详细程度*有效传达项目信息和更新情况*确认相关消息已被理解而且收到反馈任务3 评估和管理风险*确定风险管理方案*以迭代方式评估风险并确定其优先级任务4 让相关方参与进来*分析相关方(例如权力利益网格、影响力、作用)*将相关方归类*按类别让相关方参与进来*制定、执行并确认相关方参与策略任务5 规划并管理预算和资源*根据项目范围和过往项目的经验教训估算预算需要*预测未来会遇到的预算挑战*监督预算差异,并使用治理过程做出必要的调整*规划和管理资源任务6 规划和管理进度计划*估算项目任务(里程碑、依赖关系、故事点)*使用基准和历史数据*基于相关方法论编制进度计划*基于相关方法论衡量进展情况*基于相关方法论对进度计划做出必要的修改*与其他项目和其他业务进行协调任务7 规划和管理产品/可交付成果的质量*确定项目可交付成果必须达到的质量标准*根据质量差距提出改进方案方面的建议*持续调查项目可交付成果的质量任务8 规划和管理范围*确定各项需求及其优先级*细化范围(例如工作分解结构 (WBS)、待办事项列表)*监督和确认范围任务9 整合项目规划活动*整合项目/阶段的计划*评估经整合的项目计划,了解依赖关系、差距和持续的商业价值方面的情况*对所收集的数据进行分析*收集并分析数据,以做出明智的项目决定*确定至关重要的信息需求任务10 管理项目变更*预期并接受变更需要(例如遵循变更管理实践)*确定管理变更的策略*根据有关方法论执行变更管理策略*确定变更应对措施,以推进项目任务11 规划和管理采购*定义资源需求和需要*传达资源需求*管理供应商/合同*规划和管理采购策略*制定交付解决方案任务12 管理项目工件*确定管理项目工件的需求(何事、何时、何地、何人等)*确认项目信息的更新都是最新内容(即版本控制)并且所有相关方均可获得*持续评估项目工件管理的有效性任务13 确定适当的项目方法论/方法和实践*评估项目的需要、复杂性和重要性*提出项目执行策略(例如合同签订、财务)方面的建议*提出项目方法论/方法(例如预测法、敏捷方法、混合方法)有关的建议*在整个项目生命周期采用迭代式和循序渐进的实践(例如经验教训、相关方参与、 风险管理)任务14 制定项目治理结构*确定项目的适当治理(例如复制组织治理)*定义上报问题的路径和门槛任务15 管理项目问题*识别风险何时会演变为问题*采取最优行动解决问题,以使项目取得成功*与有关的相关方就解决问题的方法开展协作任务16 确保进行知识交流,使项目得以持续开展*讨论团队内的项目职责分工*概述对于工作环境的期望*确认知识交流的方法任务17 规划和管理项目/阶段的收尾或过渡工作*为成功结束项目或阶段确定相关标准*确认已为过渡(例如过渡至运营团队或下一个阶段)准备就绪*完成各项活动,以结束项目或阶段(例如最终的经验教训、回顾、采购、财务、资源)领域三、业务环境 - 考试内容占比8%任务1 规划和管理项目的合规性*确认项目合规要求(例如保护措施、健康和安全、监管合规)*对合规类别进行分类*确定合规面临的潜在威胁*采用相关方法为合规提供支持*分析不合规的后果*确定必要的方法和行动来满足合规需要(例如风险、法律方面的)*衡量项目的合规程度任务2 评估并交付项目利益和价值*调查所识别的利益*记录所有权相关的共识,以便持续实现利益*核实是否已建立可对利益进行跟踪的相关衡量体系*评估将展现价值的交付方案*对获得价值进展的相关方做出评价任务3 评估并应对外部业务环境变化对范围的影响*调查外部业务环境(例如法规、技术、地理区域政治、市场)的变化*评估外部业务环境变化对项目范围/待办事项列表的影响,并确定其优先级*提出针对范围/待办事项列表变更(例如进度计划、成本变更)的方案的建议*持续审视外部业务环境,关注其对范围/待办事项列表的影响任务4 为组织变更提供支持*评估组织文化*评估组织变更对项目的影响,并确定必要的行动*评估项目对组织的影响,并确定必要的行动

标签: 从规划到执行的循序渐进指南 平台推广指南

抱歉,评论功能暂时关闭!