Zend PHP 5 编程大赛冠军归 Qiang Xue

本文介绍了一场应用竞赛,在众多应用中评选出排名。MyObjects因小问题获第7名,Hive公众投票少但评委排第3获特别奖,PRADO获胜。还提及不同排名的奖励,如前50有T恤,2 - 6名获Zend Studio 3.5等。很多参赛者享受用PHP 5开发。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

t_left.gif Zend's PHP 5 Coding Contest - the Winners! t_right.gif

It really wasn't that easy to choose between the top applications; there are quite a few that ended up in the top 20 or so that could just have easily been in the top 6. Without your input, we'd still be arguing over them!

A special mention goes to MyObjects, a project that provides its own persistent object library and tools for generating classes directly from a MySQL database. A minor coding style issue was all that prevented the project from being one of the top prizewinners. The voters liked it too, and it ended up coming in 7th place. Keep an eye out for the author, Erdinc Yilmazel of Turkey - we'd put money on his winning next time, if there's a next time!

Another special mention goes to Hive, which came in 41st because nobody in the public domain voted for it. We disagreed - it ranked 3rd in the judges list - so we've scrambled around to find a judges prize for the author, Robert Janeczek. Ironically, Robert describes Hive as 'a low-level version of the PRADO project'...

Our judges and the public agreed over PRADO, which won outright. All we need to do now is get a laptop to Qiang Xue, the author of the winning application, and then we can sit around in the office drinking too much caffeine and playing hangman with a clear conscience.

Even if your application came nowhere near those dizzy heights, remember that every single contest entry listed on this site is a winner! The authors of the top 50 applications will have t-shirts to remember us by; those whose apps reached 2nd - 6th place will get a fully licensed copy of Zend Studio 3.5 and a year's subscription to php|architect; and everyone whose application was approved will receive geek-friendly coupons worth over $100.

All in all, it was an interesting exercise. A lot of contestants said that they had enjoyed playing with PHP 5 and finding out what they could do with it. From our side of events, we were treated to a bird's eye view of the ways in which PHP 5 is likely to be used and abused; a very helpful thing in many respects, both for the language designers and for the language documentors. A big THANK YOU goes to everyone who joined our judges' panel - I'm sure we'll find you a t-shirt somewhere - and to every single person who submitted an application, whether it made it past the approval stage or not.


Qiang Xue's Project page:

The PRADO Component Framework - By Qiang Xue Public vote: 3.94 Judges vote: 5.00 Total: 89.4%
Description:PRADO is an event-driven and component-based framework for Web application development in PHP5.

Developing a Web application with PRADO mainly involves instantiating prebuilt and application-specific component types, configuring them by setting their properties, and composing them into application tasks. Some repetitive and tedious work, such as form field validation and page state management, can be accomplished easily in this fashion with the provided PRADO components. Using PRADO to develop Web application will bring you familarity of developing desktop GUI application with RAD tools such as Borland Delphi, Visual Basic, etc. You will also find it is like ASP.NET in many aspects.
Number of team members:1
How long did it take to develop:2 months
Difference from coding in PHP 4:No more references need to address objects. Class properties can be accessed in a chained name path, instead of using functions. Very easy to use SimpleXML extension for handling XML documents. And many many others!
Extensions used:SimpleXML, zlib
Design Patterns used:Singleton, Factory, Command, Composite, Decorator, Interpretter, Delegate, Template
Resources used:The PRADO idea was first inspired by Apache Tapestry, a similar project in Java. Its design and implementation benefit greatly from commerical products including the Borland Delphi and the ASP.NET.
Lines of code (estimate):7000
Code File:prado-1.0.zip
Submitted:23/08/2004
Requests: 4552
Comments: Easy to install, works great, nice documentation [Derick Rethans]

Comments, lot of them and most of them good! If nothing else, this project is a wonderful example of why comments are needed and how they should be written.

Quite a few methods don't have a "public" specifier, not a big issue since it is not true of all classes. [Ilia Alshanetsky]

Very good code. Could have better error checking/handling, good use of PHP5 new features and functions, XML, very strong on design patterns [David Costa]

[19:21] <helly> damn i just loosed prado's hangman game
[19:21] <otherbird> heh
[19:21] <otherbird> you too? :)
<!-- END OF TEXT -->
XOOPS 下使用WordPress模块,居然出现HTML TAG断裂现象 angry_smile.gif
资源下载链接为: https://pan.quark.cn/s/140386800631 通用大模型文本分类实践的基本原理是,借助大模型自身较强的理解和推理能力,在使用时需在prompt中明确分类任务目标,并详细解释每个类目概念,尤其要突出类目间的差别。 结合in-context learning思想,有效的prompt应包含分类任务介绍及细节、类目概念解释、每个类目对应的例子和待分类文本。但实际应用中,类目和样本较多易导致prompt过长,影响大模型推理效果,因此可先通过向量检索缩小范围,再由大模型做最终决策。 具体方案为:离线时提前配置好每个类目的概念及对应样本;在线时先对给定query进行向量召回,再将召回结果交给大模型决策。 该方法不更新任何模型参数,直接使用开源模型参数。其架构参考GPT-RE并结合相关实践改写,加入上下文学习以提高准确度,还使用BGE作为向量模型,K-BERT提取文本关键词,拼接召回的相似例子作为上下文输入大模型。 代码实现上,大模型用Qwen2-7B-Instruct,Embedding采用bge-base-zh-v1.5,向量库选择milvus。分类主函数的作用是在向量库中召回相似案例,拼接prompt后输入大模型。 结果方面,使用ICL时accuracy达0.94,比bert文本分类的0.98低0.04,错误类别6个,处理时添加“家居”类别,影响不大;不使用ICL时accuracy为0.88,错误58项,可能与未修改prompt有关。 优点是无需训练即可有较好结果,例子优质、类目界限清晰时效果更佳,适合围绕通用大模型api打造工具;缺点是上限不高,仅针对一个分类任务部署大模型不划算,推理速度慢,icl的token使用多,用收费api会有额外开销。 后续可优化的点是利用key-bert提取的关键词,因为核心词语有时比语意更重要。 参考资料包括
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值