在浏览有关Sciter技术前,您需要花点时间浏览以下内容。

  1. 您是否需要花时间学习Sciter?
    如果您的工作或您想从事的工作与桌面应用开发无关,那么您不需要学习Sciter。
    如果您不认同HTML\CSS\JS等技术,那么您不需要学习Sciter。
    如果您的桌面应用产品属于性能密集型,UI界面很简单,那么不建议您使用Sciter。
    如果您的团队中没有人懂Web前端技术栈,也没有计划招聘或者培训,那么不建议您使用Sciter。
    ****
    如果您正在寻找一种类Web前端的技术帮您实现桌面应用,那么一定要考虑使用Sciter。
    如果您正在MFC、WPF、QT等UI框架中犹豫不决时,可以考察一下Sciter是否符合您的业务。
    Sciter适合页面内容丰富,呈现效果多样化的桌面应用产品。
    Sciter借鉴了Web前端(HTML\CSS)的思想和技术体系。所以,对Web前端团队是非常友好的。

  2. 在众多WebUI技术中,Sciter有什么优势?
    WebUI技术相较于MFC、WPF、QT、DirectUI等技术,其显著特点是其采用HTML\CSS技术标准。目前,市面上常见的WebUI技术都是从浏览器项目中剥离出来的,打包解析引擎、渲染引擎、脚本引擎、网络服务等成一个容器壳,然后容器加载HTML、CSS、JS文件等。Sciter的基本原理与其一致。但是,Sciter实现了自己的解析引擎、渲染引擎、脚本引擎等。
    疑问一、Sciter自主研发的引擎稳定吗?
    Sciter目前已经运行在上亿的PC上,其用户包括很多安全软件和大厂,稳定性是毋庸置疑的。Sciter作者是W3C标准委员会成员,对标准的理解肯定非常透彻,在技术方面有很强的保障。

    疑问二、既然有Blink、WebKit这样的浏览器内核,Sciter为啥不用?
    Sciter的前身是Htmlayout,在Htmlayout时代,核心引擎已经存在。在哪个时代还没有开源浏览器出现。
    Sciter应用在桌面产品中,属于富客户端技术。在设计上只考虑性能、简洁适用即可。浏览器内核需要考虑标准支持程度、兼容性等问题。简而言之,Sciter精简了HTML、CSS的一些特性,增加了一些适用于桌面应用的特性。
    总之,Sciter相较于其他WebUI技术来讲,更加轻量级,更加符合桌面应用的技术特征。

  3. Sciter授权方式
    如果从技术上Sciter满足您的要求,那么您需要认真考虑License的问题。
    使用SDK免费,需要源代码和更好的技术支持需要支付费用。
    官方地址

  4. Sciter生态或者社区如何?
    Sciter的官方SDK非常好,有非常详尽的例子可供参考。您实际工作中遇到的问题,都可以在其中找到参考案例。官方网站上面有论坛,有相应的技术QQ群。

  5. 如何开始学习Sciter?
    1)下载官方SDK。 官方地址 github地址
    2)运行bin目录下exe文件(Windows下),将里面的例子一个一个的扔到sciter.exe中,过一遍。
    通过这一步,你将全面了解sciter的所有控件和一些业务上需要的功能如何去实现

    [进阶]
    编写UI组件
    编写Sciter扩展库(需要学习C++)
    架构设计(业务逻辑与Sciter衔接)
    发布时代码资源如何保护
    Sciter源码管理及定制
    ...

  6. 学Sciter是否有前途?
    Sciter的技术栈与Web前端部分重合。由于Sciter是根据自身需要实现HTML、CSS、Script标准的。所以,标准Web前端代码未必能直接复制过来使用,甚至于一些实现思路都会存在差异。
    Sciter是基于C++的。如果您想深度使用Sciter,您就要多学一种编程语言。(而且这种编程语言还很难)

    [ 一个对Sciter非常熟悉的人,那么他会具备哪些知识和技能了?]
    1)熟练使用html/css/script,驾驭Web前端技术栈不会存在任何问题。当然,可能需要花费一点时间学习其中差异。
    2)掌握script与native代码之间的交互机制。可能不同的技术,交互机制会有不同,但是基本原理一致。
    3)如果您的团队购买了源代码,那您可以从源代码中了解浏览器内核的工作原理。当然chrome这些项目也可以学习其中原理,但是它太庞大了...
    4)您一定会成为一名优秀的程序员。Sciter涵盖了大量程序设计思想,有很多设计考量会让您豁然开朗,会让您对Web前端技术理解的更加透彻。

最后,如果您是一个专业的前端开发人员(不管是Web前端还是桌面应用前端),那么学习Sciter都能让你受益匪浅。

Zero 初识Sciter的更多相关文章

  1. VSCode添加Sciter脚本Tiscript高亮支持

    Sciter中的Tiscript脚本不是标准的Javascript,是对Javascript的扩展.所以在常用的编辑器和IDE上对于高亮的支持很不好. 不过在Sciter论坛中找到了在VSCode上的 ...

  2. Android动画效果之初识Property Animation(属性动画)

    前言: 前面两篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画).Frame Animation(逐帧动画)Andr ...

  3. 初识Hadoop

    第一部分:              初识Hadoop 一.             谁说大象不能跳舞 业务数据越来越多,用关系型数据库来存储和处理数据越来越感觉吃力,一个查询或者一个导出,要执行很长 ...

  4. python学习笔记(基础四:模块初识、pyc和PyCodeObject是什么)

    一.模块初识(一) 模块,也叫库.库有标准库第三方库. 注意事项:文件名不能和导入的模块名相同 1. sys模块 import sys print(sys.path) #打印环境变量 print(sy ...

  5. 初识IOS,Label控件的应用。

    初识IOS,Label控件的应用. // // ViewController.m // Gua.test // // Created by 郭美男 on 16/5/31. // Copyright © ...

  6. UI篇(初识君面)

    我们的APP要想吸引用户,就要把UI(脸蛋)搞漂亮一点.毕竟好的外貌是增进人际关系的第一步,我们程序员看到一个APP时,第一眼就是看这个软件的功能,不去关心界面是否漂亮,看到好的程序会说"我 ...

  7. Python导出Excel为Lua/Json/Xml实例教程(一):初识Python

    Python导出Excel为Lua/Json/Xml实例教程(一):初识Python 相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出 ...

  8. 初识SpringMvc

    初识SpringMvc springMvc简介:SpringMVC也叫Spring Web mvc,属于表现层的框架.Spring MVC是Spring框架的一部分,是在Spring3.0后发布的 s ...

  9. 初识redis数据类型

    初识redis数据类型 1.String(字符串) string是redis最基本的类型,一个key对应一个value. string类型是二进制安全的.意思是redis的string可以包含任何数据 ...

随机推荐

  1. Perl 笔记

    目录 Perl 学习 常用记录 基础 1. 运行perl 2. 字符串 3. 变量 4. 条件 5. 循环 6. 运算符 7. 时间日期 8. 子程序(函数) 9. 引用 10. 格式化输出 11. ...

  2. 【代码学习】PYTHON 列表循环遍历及列表常见操作

    一.for循环 为了更有效率的输出列表的每个数据,可以使用循环来完成 代码: A = ['xiaoWang','xiaoZhang','xiaoHua'] for tempName in A: pri ...

  3. DOCKER SNAT与DNAT

    映射容器端口到宿主主机的实现 默认情况下,容器可以主动访问到外部网络的连接,但是外部网络无法访问到容器. 容器访问外部实现 容器所有到外部网络的连接,源地址都会被 NAT 成本地系统的 IP 地址.这 ...

  4. 杭电2070 Fibbonacci Number

    Fibbonacci Number Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  5. 02-13Android学习进度报告十三

    今天我学习了ListView之checkbox错位问题解决.感觉还是很麻烦的. 好的存储这个Checkbox的方法有很多,你可以放到一个HashMap<Integer, Boolean>中 ...

  6. php对象、面向对象

    对象 万物皆对象 一切可见之物都是对象 一切不可见之物也是(抽象的事物也是对象): 对象包含两部分 1对象的组成元素 对象的数据模型又称为对象的属性,又被称为对象的成员变量 2.对象的行为 是对象的行 ...

  7. org.springframework.data.redis.RedisConnectionFailureException

    org.springframework.data.redis.RedisConnectionFailureException: Cannot get Jedis connection; nested ...

  8. sort、uniq 、 join 、 comm、diff 、 patch 、df、du 和 time 命令的用法

    1 sort 命令 同文本文件打交道时,总避不开排序,那是因为对于文本处理任务而言,排序(sort)可以起到不小的作用.sort 命令能够帮助我们对文本文件和 stdin 进行排序操作.通常,它会结合 ...

  9. 5-3 使用antDesign的form组件

    import { Form, Icon, Input, Button, Checkbox } from 'antd'; class NormalLoginForm extends React.Comp ...

  10. keil Bulid Ouput窗口中PROGRAM SIZE项的具体含义

    在Keil中编译工程成功后,在下面的Bulid Ouput窗口中会输出下面这样一段信息:   Program Size: Code=6320  RO-data=4864  RW-data=44  ZI ...