我得到了一项使用flickr创建图像库的任务——这必须使用用户在表单中输入的关键字来完成,并且返回的图像库必须分页并每页显示一定数量的结果。库中的每个图像也必须是缩略图。
我根据代码的效率、可维护性、一致性和清晰性进行评分。
我已经完成了作业,但我认为它可以优化得更好,这些都是我可能缺少的地方。
- 我所有的代码都在一个文件中(表单和库代码)-我应该把它分开吗
- 我一点也不使用oo,有什么办法我可以在这里使用它吗
- 我使用html长度和宽度调整缩略图大小
感谢您的帮助
这个问题非常宽泛,似乎你希望有人为你编写代码,我不会这么做,但我会帮助你指明正确的方向。
首先,Flickr有一个API,我建议你看看。
http://www.flickr.com/services/api/
你需要一个库来制作缩略图,你可以用GD快速做到这一点
http://php.net/manual/en/book.image.php
就分离代码而言,这可能不是一个坏主意。如果一个文件只有几百行,那就太好了,但如果你有很多事情要做,按文件的功能(例如scrape.php、resize.php等)分隔文件也没什么坏处。这主要是个人偏好。既然你是根据可维护性和清晰度来评分的,我建议你把它分解。
冒着引发火焰战的风险,我建议把它变成OOP。如果你想让它清晰易读,这会有很大帮助。将其分解为类和函数,并以合乎逻辑的方式对其进行分组,以便有人知道是否需要更改某些内容,他们很清楚从哪里开始。记录好它,这也会有所帮助。
我的建议是为每个函数创建一个类:
- 从Flickr获取图片
- 存储与图像相关的元数据
- 调整图像大小
- 从数据库中提取信息
- 显示页面
尽量将数据函数与演示文稿分开。使用一个类来构建页面,并调用另一个类以获取数据。这是一个很一般的建议,但在构建未来的应用程序时,你需要知道这一点。这不一定需要是完整的MVC,但这些任务的分离将使代码更有意义。