2009年4月3日星期五

【山寨系列1】好友管理器(已完成版本1,项目暂停中)

好友管理器这是山寨系列的第1个项目,起源于对此文的学习:

《Flex开发架构渐变》,链接:http://houwei.javaeye.com/blog/218992

通过学习此文以及其它相关资料,我了解了相关Flex MVC框架,如Cairngorm、Mate。我就以此为引子,开始山寨系列的第1个项目——好友管理器。

《Flex开发架构渐变》中示例的功能很简单,而且是伪实现,就是在登录窗口登录后显示好友列表,登录总是成功的,好友列表也只有一个列表。

--------------------------------------------------

版本1:
专注于前台Flex开发和与后台的数据交互。
完成时间:20090408


进过几天的学习和编程,终于把好友管理器的版本1给搞定了。本来想实现多点的功能的,编了比较多的代码,但是后来调试比较困难,于是就先退一步,出比较简单的版本1。

这个版本主要关注前端与后端的通信。后端有些功能如注册采用伪实现。

代码下载:
http://sites.google.com/site/myworldmyworldmyworld/myfriends/%E9%A1%B9%E7%9B%AE%E7%9B%B8%E5%85%B3%E6%96%87%E6%A1%A31-20090408%E9%82%AE%E7%AE%B1%E5%A4%87%E4%BB%BD.rar?attredirects=0

截图:
比较简单,没什么特别的。

登录:


注册:


用户好友列表:


好友详情:


功能:

1. 用户注册。
2. 用户登录。
3. 好友列表。
4. 好友资料显示。
5. 好友的CRUD操作。

目的:
通过这个版本达到的目的。

1. 学习使用相关IDE,即Flex Builder 3和MyEclipse 7.1。
2. 学习Flex + Java + BlazeDS结合开发RIA程序的配置。
3. 学习Flex对象和远程Java对象交互的方法。

知识点:
这里的知识点只是部分记录下来的,很多还要实时学习的。记录的方式比较杂乱,但是灵活。

双向绑定
endpoint
远程对象
Flex中访问返回的Java对象
AS对应Java VO
[RemoteClass(alias="flex.samples.product.Product")]
mx:metadata
[Event(name="loginUser", type="flash.events.Event")]

扩展学习:
很多知识还需要以后不断学习。

跨域访问与代理
Session
ArrayUtil类
消息系统,streaming channel和polling channel

笔记:
其实该记的笔记不止一条的应该,只是平时容易忘记记下来,以后可以注意下,或者,用多了自然就注意了。

更新dataProvider后用invalidateList()刷新。

说明:

1. 我采用RemoteObject和RemoteClass的方式和服务器Java程序交互。其实用HTTPService等方式也可以,只是这里不用。
2. 我还不知道如何很好的直接使用采用RemoteClass Metadata方式捆绑于AS对象的Java远程对象的方法,找了很多文章都没解决,只好尽量只使用远程对象的属性。
3. 版本1没有采用框架和设计模式,所以代码耦合性很强,以后改进。

参考:
参考资料很多,大家自己看吧,在需要的时候搜索Google,平时好好积累一些便于以后查看。

官方帮助文档:http://livedocs.adobe.com/flex/3/html/help.html
Flex 3 Cookbook
BlazeDS Samples

Flex 开发架构渐变 - houwei - JavaEye技术网站
http://houwei.javaeye.com/blog/218992

整合Flex和Java—配置篇 - JavaTree - JavaEye技术网站
http://yongtree.javaeye.com/blog/216580

使用BlazeDS实现Java和Flex通信 - ※一路风尘※ - JavaEye技术网站
http://yexin218.javaeye.com/blog/199933

flex与java--Blazeds学习(配置) - robocoder - 51CTO技术博客-领先的IT技术博客
http://robocoder.blog.51cto.com/305256/88664

j2ee+flex+blazeds 配置实践 - 尽人事以听天命 - JavaEye技术网站
http://holdbelief.javaeye.com/blog/227394

零基础学习flex3+blazeds 实现flex与java通信 - FLEX开发交流 - AIRIA - Flex论坛、Flex教程 、RIA开发交流
http://bbs.airia.cn/FLEX/thread-5097-1-1.aspx

Java的pojo对象转成Flex的vo对象_半杯咖啡 Flex
http://hi.baidu.com/half_cup_coffee/blog/item/d1c9875558a40ec0b645aed8.html

Flex与Java交互中返回的JAVA对象如何处理_霸王回马枪--谁说没枪头就捅不死人!
http://hi.baidu.com/ecspell/blog/item/4974fadc261e44a4cd11660a.html

Flex远程调用机制RemoteObject应用技巧 - AJAX - AJAX - JavaEye论坛
http://www.javaeye.com/topic/60846

FLEX提高篇---------JAVA对象与AS间的转化关系对照表 - hacker47 - JavaEye技术网站
http://hacker47.javaeye.com/blog/218622

flex项目架构交流 - Flex - AJAX - JavaEye论坛
http://www.javaeye.com/topic/309510

构建全栈式Flex、BlazeDS和Spring集成解决方案 - Spring - Java - JavaEye论坛
http://www.javaeye.com/topic/250485?page=1

关于[managed]、[transient]、[RemoteClass]的解释
http://www.jexchen.com/?p=91

RemoteClass Metadata | AboutFlex.net
http://www.aboutflex.net/flex/remote-class-metadata/

Flex RemoteObject类参考 - RIA爱好者
http://www.riafan.com/article.asp?id=54

BlazeDS入门——HTTP Service - RIA爱好者
http://www.riafan.com/article.asp?id=127

BlazeDS入门——Remote Object Service - RIA爱好者
http://www.riafan.com/article.asp?id=128

BlazeDS入门——Message Service - RIA爱好者
http://www.riafan.com/article.asp?id=129

--------------------------------------------------

版本2:
专注于用户界面。

版本3:
专注于消息系统。

转载请注明出处:http://lushisang.blogspot.com/2009/04/1.html
作者:陆仕桑 发表时间:20090403-20:35 更新时间:20090410-9:22

没有评论:

发表评论