Symbian开发点滴1(入门和简单的感受)

本文分享了Symbian开发的入门心得,介绍了开发环境搭建、IDE选择与使用,特别是Carbide c++ 2.0,并探讨了Symbian C++特性及GUI应用程序创建流程。

 [原创 2009-05-18 20:01:10]     字号:大 中 小 看了几天Symbian开发,感觉真的复杂,还是微软程序员好干。

先说说开发环境吧,需要安装active perl,Java,s60的sdk和ide

网上文章比较多,搜索一下就找了

 

这个ide的问题,现在比较推荐carbide c++2。0完全免费的,算是eclipse的,完整的ide。还有一个carbide.vs是一个插件,就可以是vs2003,2005来开发,但是好像nokia已经不发展了。还有一个比较新的就是QT creator,网上的文章说这个太厉害了。有质的变化,提供新的完整类库,原来要写100行代码实现的功能,现在10行就搞定了,呵呵,不过只是技术预览版,而且好像还是收费的版本。所以现在还是先使用carbide2.0吧

 

Symbian使用c++作为开发语言,但是不是纯c++,里面为了适应手机这样的设备,做了很多更改,比如基本的数据类型,还有类的实例化过程,差别很大,慢慢看了。本来c++就不好。

 

Symbian提供了3中框架开发模式:基于控件的,视图的,和对话框的。

carbide2.0新建项目向导里面,没有说完全对应的框架,但是提供的那个gui application有点像控件框架的,只是使用view累,也不是container类,反正有点晕。还有一个项目模板是gui application with ui desinger这个可以拖拽控件,但是框架更看不懂了。

我推荐还是使用gui application吧,里面有完整的代码可以响应菜单事件,方便添加新的事件

c++都分头文件H和类文件cpp,头文件h只是声明方法和字段,不实现,cpp文件来实现。

 

添加控件的时候,控件的代码都要添加在view类里面。

InitComponentArrayL();
 
  iLabel = new(ELeave)CEikLabel();
  iLabel->SetContainerWindowL(*this);
  iLabel->SetTextL(_L("Simple Label"));
  iLabel->SetExtent(TPoint(10,10),TSize(150,30));
  Components().AppendLC(iLabel);
  CleanupStack::Pop(iLabel);

一个小例子。添加label的。

当然这样做是比较麻烦,在control类中添加两个函数,就不需要每次都写组件添加了

声明这两个:

 TInt CountComponentControls() const;//返回控件的数量
 
 CCoeControl* ComponentControl(TInt aindex) const;//根据aindex的不同,返回空间的指针。

比如这样:

TInt CHelloLabelAppView::CountComponentControls() const
{
 return 2;
}

CCoeControl* CHelloLabelAppView::ComponentControl(TInt aindex) const
{
 switch(aindex)
  {
  case 0:
   return iLabel1;
  case 1:
   return iLabel2;
  default:
   return NULL;
  }
}

 

还有就是include的问题。一个类如果用过其他类,不如sdk的标准类,就要添加include <.h>文件

如果用到类库还要添加lib文件,就是在group文件下的mmp文件,可以在carbide下有图形界面的添加,也可以直接去文本编辑器里面添加了。很好找到

下载前可以先看下教程 https://pan.quark.cn/s/a4b39357ea24 SSM框架,涵盖了Spring MVC、Spring以及MyBatis这三个框架,在Java领域内作为构建Web应用程序的常用架构而备受青睐,特别是在电子商务购物平台的设计与实现过程中展现出极高的应用价值。 这三个框架各自承担着特定的功能角色,通过协同运作来达成高效且灵活的业务处理目标。 Spring MVC作为Spring体系结构中的一个关键部分,主要致力于处理HTTP请求与响应,并推行模型-视图-控制器(MVC)的设计模式。 其运作机制中,DispatcherServlet扮演着前端控制器的角色,负责接收HTTP请求,并将其依据请求映射至相应的Controller处理方法。 在Controller执行完业务逻辑后,会将处理结果传递给ModelAndView对象,随后由ViewResolver将其解析为具体视图进行呈现。 Spring MVC还具备数据绑定、验证以及国际化等附加功能,这些特性显著提升了开发工作的效率以及代码的可维护程度。 Spring框架则是一个综合性的企业级应用开发框架,其核心能力包含依赖注入(DI)、面向切面编程(AOP)以及事务管理等关键特性。 DI机制使得开发者能够借助配置文件或注解手段来管理对象的生成与依赖关联,从而有效降低组件之间的耦合性。 AOP技术则适用于实现诸如日志记录、权限管理这类跨领域的功能需求,有助于使代码结构更为清晰。 Spring在事务管理方面提供了编程式声明式两种处理途径,确保了数据操作过程遵循原子性与一致性原则。 MyBatis则是一个轻量级的数据库访问层框架,其特点在于将SQL语句与Java代码进行分离,并支持动态SQL的编写。 开发者可以在XM...
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值