一、是什么(以下简称SC)
    smartClient 是一个基于web技术的开发框架,主要包括:
  1. 一个无需安装的 Ajax/HTML5 客户端引擎
  2. UI组件和服务(采用富客户端RIA)--- 提供大量强大而美观的 UI 控件
  3. 客户端/服务器数据绑定系统
 
二、有什么用
    快速构建 大型企业应用开发(无需过多关注UI),适合基于云技术的应用,主要关注业务的发展和营销,加快开发进程
 
三、缺点
    1、不适合传统企业网站、内容网站(从SEO角度看,该框架适合web应用,而非web网站)
    2、其本质是js编写的单页面程序,对搜索引擎不友好(不利于SEO)
    3、IE6兼容性差
 
四、运行
    1、首先运行SC需要搭建web服务器,下载SC之后http://www.smartclient.com,详见http://blog.csdn.net/womeng2009/article/details/55190448
 
五、首页入口文件和js文件
    1、SC是采用单页面的形式构建 web应用。因此,每个应用都有一个首页入口文件index.html(或者default.html)
        a.  首页文件主要作用是调用SC的类库,从而能在自己的js文件中调用这些类库,生成期望的客户端UI和业务逻辑
        b.  首页主要内容:至少八个js引入(包括load_skin.js,里面有十几种不同风格的皮肤,通过脚本可以改变;   frameworkMessages_zh_CN.properties文件是中文包,如果使用IIS作为web服务器,则调试会出错,解决方案是将其改为frameworkMessages_zh_CN.properties.js<注意在引入的时候也要改>)
        c.  添加 loading 动画:在 ISC_Fundation.js 后面(第二后引入脚本之后)(此兼容浏览器)(注意后面需要添加消失loading代码)

<script type="text/javascript">
isc.Label.create({
ID: "imgLoading",
padding: 10,
width: "100%",
height: "100%",
align: "center",
valign: "center",
wrap: false,
icon: "/images/loading.gif",
contents: "Loading..."
});
</script>
    2、新建js文件夹,所有的js文件都将在此。
        a.  如下,创建 loading.js(放上面loading动画) 和 default.js(作为整个项目的入口代码)

(function(){ 
//注意:由于js没有命名空间,因此为避免命名冲突(如var isc = ''; 和SC内置对象命名冲突,此时下面的创建SC标签代码报错),实行闭包的写法(function() {......})();
isc.Label.create({
ID: "imgLoading",
padding: 10,
width: "100%",
height: "100%",
align: "center",
valign: "center",
wrap: false,
icon: "/images/loading.gif",
contents: "Loading..."
});
})();
(function(){
imgLoading.destroy(); //loading标签销毁,类库加载完毕,就会运行
isc.say("hello world!"); //弹出消息的形式显示 hello world!
})();
六、更多主题(可以更换系统自带主题,还可以自定义主题)
    1、系统主题(web服务根目录下的isomorphic文件夹的skins下)(awd见web/awd/thirdParty/isomorphic/skins)
        a. 更换主题,只需要引入不同主题文件即可

<script type="text/javascript" src="/isomorphic/skins/Graphite/load_skin.js"></script> 
 
七、多语言支持(同更换系统皮肤,只需要引入不同的语言包即可)(iosmorphic/locales下)(awd见web/awd/thirdParty/isomorphic/locales)
    1、中文字体问题(由于CSS文件定义是以英文字体、字号为标准《11px》(中文必须在12px下才能清晰显示),因此中文显示效果不理想,字体太小)
        解决方案:
            a. 进入对应的skin文件夹下,先备份skin_style.css.bak,然后打开skin_style.css,将font-size: 11px; font-family: xxx; 改为 font-size: 12px; font-family: Microsoft YaHei,SimSun,Arial,Verdana,sans-serif; 即可
注意:
    a. 为了支持多语言,需要在入口文件中指定编码方式为 UTF-8
    b. 语言包的扩展名为.properties,当以js形式加载时(用script标签引入),某些服务器会拒绝(如IIS6),因此需要手动修改扩展名(添加 .js )
 
八、目录结构
    1、web服务器根目录下(不一定是直接根目录,放在其他文件夹如 thirdparty 亦可),和传统网页开发类似而不同如下:
        web
isomorphic
skins //系统皮肤文件夹
system
modules
xxx.js //SC类库
images
js
xxx.js //各个业务逻辑代码
......
default.js //入口文件,是js的入口文件,注意在html入口文件中引用时,需要放在其他js引入的最后,保证程序正常运行
css
index.html //首页入口文件(单页面开发,通篇只需要一个HTML文件,即此入口文件)
 
 
 
 
 
 
 

smartClient 1--框架介绍的更多相关文章

  1. [连载]《C#通讯(串口和网络)框架的设计与实现》-1.通讯框架介绍

    [连载]<C#通讯(串口和网络)框架的设计与实现>- 0.前言 目       录 第一章           通讯框架介绍... 2 1.1           通讯的本质... 2 1 ...

  2. YARN基本框架介绍

    YARN基本框架介绍 转载请注明出处:http://www.cnblogs.com/BYRans/ 在之前的博客<YARN与MRv1的对比>中介绍了YARN对Hadoop 1.0的完善.本 ...

  3. Selenium自动化测试框架介绍

    Selenium自动化测试框架介绍 1.测试架构作用 a.可维护性 b.提高编写脚本效率 c.提高脚本的可读性 2.框架的几大要素: Driver管理,脚本,数据,元素对象,LOG,报告,运行机制,失 ...

  4. UiAutomator自动化测试框架介绍

    UiAutomator自动化测试框架介绍 环境搭建 1         必要条件 1.1       JDK 1.2       SDK(API高于15) 1.3       Eclipse 2    ...

  5. [翻译]Spring框架参考文档(V4.3.3)-第二章Spring框架介绍 2.1 2.2 翻译--2.3待继续

    英文链接:http://docs.spring.io/spring-framework/docs/current/spring-framework-reference/html/overview.ht ...

  6. MJExtension框架介绍

    MJExtension框架介绍 标签: MJExtension 2015-05-01 08:22 1120人阅读 评论(0) 收藏 举报  分类: Foundation(14)  版权声明:本文为博主 ...

  7. 人工智能深度学习Caffe框架介绍,优秀的深度学习架构

    人工智能深度学习Caffe框架介绍,优秀的深度学习架构 在深度学习领域,Caffe框架是人们无法绕过的一座山.这不仅是因为它无论在结构.性能上,还是在代码质量上,都称得上一款十分出色的开源框架.更重要 ...

  8. 挑战EXT——QUI框架介绍与下载

    挑战EXT——QUI框架介绍与下载 为庆祝新版QUI问世特写此文: 提起EXTJS的大名,恐怕WEB开发界无人不晓吧.EXTJS框架发展到现在,已经非常成熟和全面了.它的组件库尤其是DataGrid组 ...

  9. IOS-AssetsLibrary(相册)框架介绍

    AssetsLibrary框架介绍: AssetsLibrary框架包含了ALAssetsLibrary,ALAssetsGroup,ALAsset,ALAssetsFilter,ALAssetRep ...

  10. ios中框架介绍

    ios中框架介绍 参考博客: 参考文章:框架介绍 框架介绍 框架就是一个目录,一个目录包含了共享库,访问共享库里面的代码的头文件,和其他的图片和声音的资源文件.一个共享库定义的方法和函数可以被应用程序 ...

随机推荐

  1. Appium-desktop安装与使用

    Appium-desktop是什么? 项目描述: Appium Server and Inspector in Desktop GUIs for Mac, Windows, and Linux. Ap ...

  2. fatal: The remote end hung up unexpectedly

    git push 的时候出错,提示: fatal: The remote end hung up unexpectedly 遇见几次了,原因是因为文件太大,把限制放宽就好了.命令: git confi ...

  3. 机器学习技法:01 Linear Support Vector Machine

    Roadmap Course Introduction Large-Margin Separating Hyperplane Standard Large-Margin Problem Support ...

  4. vue学习前奏——webpack

    "工欲善其事必先利其器",要想学习vue,首先需要我们去了解webpack,便于后期快速构建运行项目.废话不多说,下面开始介绍在开始一个vue项目前我们需要对webpack有一定的 ...

  5. 微信小程序城市定位(借助百度地图API判断城市)

    概述 微信小程序提供一些API(地址)用于获取当前用户的地理位置等信息,但无论是wx.getLocation,还是wx.chooseLocation均没有单独的字段表示国家与城市信息,仅有经纬度信息. ...

  6. shell script测试命令(test)

    shell script测试命令(test) test命令 检查系统上面某些文件或者相关的属性 常用选项 test -e :检查该文件名是否存在 例:检查/dmtsai是否存在 [root@local ...

  7. GET 和 POST 比较整理

    差异 上传文件只能使用 POST GET 传输数据有大小限制 GET 传输的数据类型不灵活:GET是使用url来传输数据,那么比如空格字符以及类似&这样的字符就不方便传输.(当然可以使用发送前 ...

  8. Akka(30): Http:High-Level-Api,Routing DSL

    在上篇我们介绍了Akka-http Low-Level-Api.实际上这个Api提供了Server对进来的Http-requests进行处理及反应的自定义Flow或者转换函数的接入界面.我们看看下面官 ...

  9. A low-cost wear-leveling algorithm for block-mappingsolid-state disks

    [] Li-Pin Chang,Li-Chun Huang.A low-cost wear-leveling algorithm for block-mapping solid-state disks ...

  10. 2.动手实操Apache ZooKeeper

    Tips 做一个终身学习的人! 日拱一卒,功不唐捐. 在本节中,我们将讲解如何下载并安装Apache ZooKeeper,以便我们可以直接开始使用ZooKeeper. 本部分旨在通过提供详细的安装和使 ...