资讯专栏INFORMATION COLUMN

如何快速上手百度微博都在用的Web框架Yaf?

taoszu / 355人阅读

摘要:背景之前在面试新浪微博的时候,被问起一个问题,你会吗这一问直接把我问懵圈了,后来面试结束之后,去特地了解一下,发现不少国内公司都在使用,不少知名大厂都有广泛应用,其中包括腾讯,百度,新浪微博等如果想进腾讯百度微博这类国内较为知名的公司,掌握

1. 背景

之前在面试新浪微博的时候,被问起一个问题,你会Yaf吗?这一问直接把我问懵圈了,

后来面试结束之后,去特地了解一下,发现不少国内公司都在使用,不少知名大厂都有广泛应用,其中包括腾讯,百度,新浪微博等.

(如果想进腾讯百度微博这类国内较为知名的公司,掌握Yaf将是个不错的加分项~)

但是由于Yaf(Yet Another Framework)是采用C语言 + Zend API编写,阅读起来着实费力,于是就萌生了翻译的念头.

2. 关于Yaf

Yaf我不多做介绍,一局话总结起来就是用C写的PHP Web高性能框架,有兴趣的同学可以自行先了了解一下(鸟哥的Yaf说明)

我们先来整理一下在用Yaf进行开发时,一般都会遇到几个常见的问题.

开发黑盒.在coding阶段,我们的IDE无法对Yaf相关函数进行补齐或者提示,开发流程处于一个黑盒下.

文档不全.对Yaf底层实现原理不甚了解,遇到问题通常只能去看零零碎碎的文档,如果文档也无法解决自己的问题,就显得非常束手无策,开发体验很糟糕.

源码阅读成本高.部分同学想通过阅读源码,彻底搞懂Yaf底层实现原理,但是由于Yaf是由C写的,以及源码实现里充斥着大量让人眼花缭乱的Zend API,对于大部分同学来说阅读成本相对较高.

3. 关于YAFPHP 3.1 简介

项目地址 : https://github.com/yinggaozhen/yaf-php

Yaf-PHP采用原生PHP对Yaf源码进行了逻辑重写,最大程度还原其相关实现逻辑.

由于采用了原生PHP重写,可达到抹平阅读能力,降低阅读成本的目的.在平常开发时,也可以作为IDE Helper进行引入,加快开发效率.

3.2 最终效果

废话不多说,我们先直接看最终效果图

3.3 安装
> git clone https://github.com/yinggaozhen/yaf-php.git
3.4 快速使用 3.4.1 在PhpStorm引入

两种实现方法

左侧导航栏 `External Libraries` -> `Configure PHP Include Path` -> 添加`Yaf-PHP`文件路径 -> `apply`
菜单 `File` -> `Setting` -> `PHP` -> 添加`Yaf-PHP`文件路径 -> `apply`
3.4.2 在NetBeans引入
右击你的项目 -> `Properties` -> `PHP Include Path` -> `Add Folder..` -> 添加`Yaf-PHP`文件路径 -> `open`
3.5 目前支持/完成的功能

支持IDE对Yaf相关的识别/自动填充

同时支持PSR-0以及PSR-4引入方式

所有Yaf公有方法均以@link形式添加官方文档链接

3.6 正在开发的功能

目前以通过官方源码80%的测试用例,虽然目前仍在翻译中

支持指定版本下的调试功能

4 小结

传送门 : https://github.com/yinggaozhe...

这个项目断断续续用了业余开发了将近有小半年了,目前仍在开发中,如果的大家有什么建议或者意见,可以在直接issue提给我,或者私信给我~

最后的最后,如果你觉得项目还不错,别忘记star/fork~ 比心~

最后的最后,如果你觉得项目还不错,别忘记star/fork~ 比心~

最后的最后,如果你觉得项目还不错,别忘记star/fork~ 比心~

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/31582.html

相关文章

  • 惠新宸:我也曾经是“不适合”编程

    摘要:惠新宸是核心开发者,,的主要开发者。我在本科毕业的时候,也尝试找了一些开发工作,面试了几个单位,都被拒了,也许在当时面试我的那些人眼里,我就是一个不适合编程的人吧。 非商业转载请注明作译者、出处,并保留本文的原始链接:http://www.ituring.com.cn/article/142454 惠新宸@Laruence,是国内最有影响力的PHP技术专家,PHP开发组核心成...

    lucas 评论0 收藏0
  • 搭建OAuth2.0

    摘要:原因使用简单,可以很快上手,文档齐全,功能完善。请求,端对应的模板里是告知用户,即将授予的权限列表,以及是否允许授权的按钮。请求,端获取用户资源各种授权类型,都可以很方便支持。 前奏 系统:Ubuntu 语言:PHP7 框架:YAF OAuth2.0:bshaffer/oauth2-server-php OAuth2.0 有很多开源代码库 Github 排名前两位 thephple...

    Cheriselalala 评论0 收藏0
  • 怎么通过$a获取到$b?某豹面试题

    摘要:原题,跳转到怎么通过获取到请用实现看一分钟之后,直觉告诉实现我不会。只知道,通过可以知道后来百度,问好朋友。真实意图这道题的意思应该是重定向后怎么获取真实地址。实际做的就是在百度或者微博服务器上一个临时重定向。 原题: $a=http://aaa.com/a,跳转到$b=http://bbb.com/b.怎么通过$a获取到$b,请用php实现 看一分钟之后,直觉告诉PHP实现我不会。...

    Flands 评论0 收藏0
  • Web 自动化测试框架 sweetest 介绍

    摘要:介绍是一款自动化测试框架,或者说是解决方案,名字取含义。打开操作,一般要在测试数据中指定新窗口名称,如新窗口百度搜索窗口。测试数据列为要输入的内容。 介绍 sweetest 是一款 Web 自动化测试框架,或者说是解决方案,名字取 Selenium, Web UI, Excel, Element, Test 含义。特点: 简单快速,轻松上手 无需编码能力 在 Excel 中以文本编写...

    lijy91 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<