CN1296824C - 程序编码方法及其系统 - Google Patents
程序编码方法及其系统 Download PDFInfo
- Publication number
- CN1296824C CN1296824C CNB200410089875XA CN200410089875A CN1296824C CN 1296824 C CN1296824 C CN 1296824C CN B200410089875X A CNB200410089875X A CN B200410089875XA CN 200410089875 A CN200410089875 A CN 200410089875A CN 1296824 C CN1296824 C CN 1296824C
- Authority
- CN
- China
- Prior art keywords
- file
- source code
- module
- grammer
- syntax
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Devices For Executing Special Programs (AREA)
Abstract
本发明的编码方式是将一网页程序码所引用的各式程序语法进行分类重组后,接着将此重组后的程序码转换成一相类似的程序语言语法,再进行编译,以产生出一元件档与一网页程序码文件。
Description
技术领域
本发明与一种编码方法有关,特别是与一种程序编码方法和其系统有关。
背景技术
动态伺服器网页(Active Server Page,ASP)可快速开发各种动态、互动式全球信息网(world wide web,WWW)。和传统超文件标示语言(hypertext markuplanguage,HTML)网页最大的不同在于ASP是属于伺服器端的语言。传统HTML网页内的所有文字、表格等是在设计者建立网页时就确定不变,不会因传输或因伺服器的处理而改变。但ASP的文件在经过伺服器的ASP功能后,伺服器会因不同的条件而建出不同的HTML文件而送至各浏览器,因为所有的程序都在伺服器端执行,伺服器仅将执行的结果返回给客户浏览器,这样也就减轻了用户端浏览器的负担,从而大大提高了交互的速度。
由于现今大多数网站均是使用ASP语言进行开发,当程序工程师在完成一网站开发后,于移转给客户之前,为了避免核心的程序码遭到盗用,造成个人知识产权损失,因此,在移转客户前会将原始码部分加以编码。
传统上的编码方式,不是已有反组译软件出现,造成编码机制形同虚设,就是需搭配特定翻译连接档,而需额外安装此翻译元件,造成编译完成的文件无法直接由网站伺服器执行。
发明内容
因此本发明的主要目的是提供一种编码方法及其系统,经编码完成后的文件并不需额外的翻译元件,可直接于伺服器端执行。
根据本发明一方面提供一种网页原始码编码方法,包括:将待处理文件中所有引用到其他程序的程序码,均包括到此待处理文件中,接着将此待处理文件进行语言语法分类,区分该网页原始码为一静态语法原始码及一动态语法原始码;根据一相对应程序语言语法分别转换该静态语法原始码及该动态语法原始码,以产生一类别文件;以及编译该类别文件以产生一可执行元件文件及一待布署网页程序码文件,以供一伺服器注册及引用。
根据本发明另一方面提供一种网页原始码编码系统,包括:一元件产生模块,其包括一程序码引用处理模块、一分类模块和一语法转换模块;程序码引用处理模块将此待处理文件中所有引用到其他程序的程序码,均包括到此待处理文件中,并传递至分类模块中,将此待处理文件进行语言语法分类,来分类此文件中所引用程序语法所形成的原始码;当分类模块完成语法分类后,将此文件传递至语法转换模块,将分类完成的原始码数据重组后进行转换,以区分并转换该网页原始码以产生一类别文件;以及一编译元件模块,用以编译该类别文件,以产生一可执行元件文件及一待布署网页程序码文件,以供一伺服器注册及引用。
本发明的编码方法是借由“元件”文件较不易被反组译的原理,来将网页程序文件编译成一“元件”文件和一“网页程序码”文件,再借由以呼叫元件的方式执行此“网页程序码”文件。因此根据本发明的方法,首先将一网页程序码所引用的各式程序语法进行分类重组后,接着将此重组后的程序码转换成一相类似的程序语言语法,再进行编译,以产生出一元件文件与一网页程序码文件。
附图说明
为让本发明的上述和其他目的、特点和优点能更明显易懂,下文特举一较佳实施例,并配合附图进行详细说明如下:
图1是根据本发明较佳实施例的编码流程图。
图2所示为执行本发明编码方法的系统方块图。
具体实施方式
下述实施例中的编码流程是以对一ASP语言进行编码作为解说,然值得注意的是,本发明的方法亦可应用于其他物件导向式程序语言的编码中,例如一JSP(Java Server Page)。
图1所示为根据本发明较佳实施例的编码方式流程图。首先于步骤100中,形成一待处理文件,于本实施例中亦即选取欲进行编码的ASP文件中的原始码,并进行复制形成一待处理文件,值得注意的是,本发明亦可同时进行多个文件的编码流程,亦即以批次的方式进行文件编码。
接着于步骤102中,将此待处理文件中所有引用到其他程序的程序码,均包括到此待处理文件中,接着将此待处理文件进行语言语法分类,亦即进行不同特征的语法分类,以划分此文件中所引用程序语法所形成的原始码,例如于本实施例中,分别取出以HTML语法所形成的原始码102a、以程序(例如Java)设计控制结构稿本(Script)原始码102b和以ASP语法所形成的原始码102c。值得注意的是,在其他的实施例中,可根据待处理文件中所引用的各类程序码进行分类,并不限于上述实施例所述的三种语法。在其他实施例中,亦可将所谓的动态(dynamic)语法和静态(static)语法进行分类。一般而言,当一个网站(Web site)所显示的信息为程序设计者在设计HTML原始码时即加以决定,若不更动原始码,于网页上所所显示的信息将是不变的,此即是由静态语法所形成;而相对的,若网站上所显示的数据,可由使用者进行点选彼此互动,例如购票信息,此即是由动态(dynamic)语法所形成,而本发明于步骤102中所进行的分类方法,亦可将ASP文件中的原始码分类成由静态语法所形成的原始码数据,和由动态语法所形成的原始码数据。
接着于步骤103,将分类完成的原始码数据重组后进行转换,于本实施例中是转换成Visual Basic程序语言语法,然值得注意的是,亦可转换成其他形式的语法,并不限于Visual Basic程序语言语法,只要熟悉本技术的人员认为,欲转换的程序语法于语法结构上与待处理文件具高度类似性者,均可作为步骤103中进行转换的目的程序语言。例如,于本实施例中的所以选择转换成Visual Basic程序语言语法,即是因为其与欲进行编码的ASP文件具高度的类似性。接着于步骤104中,此转换成Visual Basic程序语言语法的文件会形成一类别文件(Class file),一般而言,一个待处理文件经本程序处理后会形成一个类别文件,因此,若以批次的方法处理多个待处理文件则会形成多个类别文件,而本发明会将产生的类别文件组成一个专案文件(project file)进行其后的程序。
接着于步骤105,编译此专案文件,于本实施例中是转换成Visual Basic程序语言语法,因此会以Visual Basic程序语言的编译器进行编译此专案文件,而分别形成一元件文件与一网页程序码文件,其中此网页程序码文件于执行时会呼叫此元件文件的功能。然值得注意的是,若于步骤103中是选择转换成别的程序语言,本发明将以此选择的程序语言编译器进行编译。
从步骤100至步骤105,已经完成所选择文件的编译,接着即可于步骤106将此编译完成后的元件文件与网页程序码文件挂载至伺服器执行。
参阅图2所示为执行本发明编码方法的一系统方块图。在此实施例中,本发明的系统包括一前置处理模块200、一文件选取模块202、一元件产生模块204、一编译元件模块206和一注册元件模块208。
前置处理模块200是将欲进行转码的网页原始程序码进行备份,文件选取模块202则是在完成备份的网页原始程序码中,选取一部份文件,作为待处理文件。此待处理文件会被送入一元件产生模块204,用以区分并转换待处理文件以产生一类别文件。另外,元件产生模块204尚可包括一程序码引用处理模块210、一分类模块212和一语法转换模块214。程序码引用处理模块210会将此待处理文件中所有引用到其他程序的程序码,均包括到此待处理文件中,并传递至分类模块212中,将此待处理文件进行语言语法分类,亦即进行不同特征的语法分类,来分类此文件中所引用程序语法所形成的原始码,例如,区分为一静态语法原始码及一动态语法原始码。当分类模块212完成语法分类后,会将此文件传递至语法转换模块214,将分类完成的原始码数据重组后进行转换,亦即根据一相对应程序语言的语法对分类完成的原始码数据分别进行转换,以产生一类别文件。
接着此类别文件会从元件产生模块204送入编译元件模块206进行编译,以产生一可执行元件文件及一待布署网页程序码文件。当完成所选择文件的编译后,注册元件模块208会将此编译完成后的文件挂载至伺服器上,亦即注册此可执行元件文件及待布署网页程序码文件的相关信息至伺服器上。
综上所言,本发明的编码方式是将一网页程序码所引用的各式程序语法进行分类重组后,接着将此重组后的程序码转换成一相类似的程序语言语法,再进行编译,以产生出一元件文件与一网页程序码文件,借由“元件”档较不亦被反组译的原理,将网页程序文件编译成“元件”档,再借由呼叫元件的方式执行程序。
虽然本发明已以一较佳实施例揭示如上,然而其并非用以限定本发明,任何熟悉本技术的人员在不脱离本发明的精神和范围内,当可作各种的等效的改变或替换,因此本发明的保护范围当视后附的本申请权利要求范围所界定的为准。
Claims (8)
1.一种网页原始码编码方法,包括:
将待处理文件中所有引用到其他程序的程序码,均包括到此待处理文件中,接着将此待处理文件进行语言语法分类,区分该网页原始码为一静态语法原始码及一动态语法原始码;
根据一相对应程序语言语法分别转换该静态语法原始码及该动态语法原始码,以产生一类别文件;以及
编译该类别文件以产生一可执行元件文件及一待布署网页程序码文件,以供一伺服器注册及引用。
2.如权利要求1所述的方法,其特征在于还包括:
处理该网页原始码引用的程序码文件后,再区分该网页原始码为该静态语法原始码及该动态语法原始码。
3.一种网页原始码编码系统,包括:
一元件产生模块,其包括一程序码引用处理模块、一分类模块和一语法转换模块;程序码引用处理模块将此待处理文件中所有引用到其他程序的程序码,均包括到此待处理文件中,并传递至分类模块中,将此待处理文件进行语言语法分类,来分类此文件中所引用程序语法所形成的原始码;当分类模块完成语法分类后,将此文件传递至语法转换模块,将分类完成的原始码数据重组后进行转换,以区分并转换该网页原始码以产生一类别文件;以及
一编译元件模块,用以编译该类别文件,以产生一可执行元件文件及一待布署网页程序码文件,以供一伺服器注册及引用。
4.如权利要求3所述的系统,其特征在于还包括:
一文件选取模块,用以选取该网页原始码一部份文件,以供该元件产生模块产生该类别文件。
5.如权利要求3所述的系统,其特征在于还包括:
一注册元件模块,用以注册该可执行元件档及一待布署网页程序码文件的相关信息至该伺服器。
6.如权利要求3所述的系统,其特征在于所述程序码引用处理模块处理该网页原始码引用的程序码文件。
7.如权利要求3所述的系统,其特征在于所述分类模块,用以区分该网页原始码为一静态语法原始码及一动态语法原始码。
8.如权利要求3所述的系统,其特征在于所述语法转换模块,用以根据一相对应程序语言的语法分别转换该静态语法原始码及该动态语法原始码,以产生该类别文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB200410089875XA CN1296824C (zh) | 2004-10-28 | 2004-10-28 | 程序编码方法及其系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB200410089875XA CN1296824C (zh) | 2004-10-28 | 2004-10-28 | 程序编码方法及其系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1604037A CN1604037A (zh) | 2005-04-06 |
CN1296824C true CN1296824C (zh) | 2007-01-24 |
Family
ID=34667185
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB200410089875XA Active CN1296824C (zh) | 2004-10-28 | 2004-10-28 | 程序编码方法及其系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1296824C (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100399335C (zh) * | 2005-11-15 | 2008-07-02 | 李利鹏 | 把源文档转换成目标网页文件的方法 |
CN101546310B (zh) * | 2008-03-28 | 2012-01-04 | 纬创资通股份有限公司 | 可提升网页兼容性的方法及装置 |
CN103838556A (zh) * | 2012-11-23 | 2014-06-04 | 苏州精易会信息技术有限公司 | 一种客户端程序的设计实现方法 |
CN104077504B (zh) * | 2013-03-25 | 2017-04-19 | 联想(北京)有限公司 | 一种应用程序加密的方法及装置 |
TWI525543B (zh) * | 2013-11-20 | 2016-03-11 | 財團法人資訊工業策進會 | 混合式動態碼編譯裝置、方法及其服務系統 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002041299A (ja) * | 2000-05-18 | 2002-02-08 | Microsoft Corp | 動的ウェブページコンテンツファイルからのサーバ側コード生成 |
US20040025141A1 (en) * | 2002-08-05 | 2004-02-05 | Full Circle Technologies, Inc. | Vectoreyes web-viewer |
CN1487474A (zh) * | 2002-07-05 | 2004-04-07 | 微软公司 | 用于数据压缩的改进优化技术 |
-
2004
- 2004-10-28 CN CNB200410089875XA patent/CN1296824C/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002041299A (ja) * | 2000-05-18 | 2002-02-08 | Microsoft Corp | 動的ウェブページコンテンツファイルからのサーバ側コード生成 |
CN1487474A (zh) * | 2002-07-05 | 2004-04-07 | 微软公司 | 用于数据压缩的改进优化技术 |
US20040025141A1 (en) * | 2002-08-05 | 2004-02-05 | Full Circle Technologies, Inc. | Vectoreyes web-viewer |
Also Published As
Publication number | Publication date |
---|---|
CN1604037A (zh) | 2005-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102594833B (zh) | 一种通信协议适配方法和系统 | |
US7219338B2 (en) | Multi-language compilation | |
CN1786907A (zh) | 用于产生图形用户接口模型的方法和系统 | |
CN1392986A (zh) | 用于产生各种呈现的结构化文档的方法和装置 | |
CN1296589A (zh) | 通过超级链接扩散特性 | |
CN112379917B (zh) | 浏览器兼容性提升方法、装置、设备及存储介质 | |
CN101841515A (zh) | 可变目标的协议数据单元编解码代码自动生成的实现方法 | |
WO2000017748A1 (en) | Text object compilation method and system | |
CN104657189A (zh) | 混合式动态码编译装置、方法及其服务系统 | |
Villard et al. | An incremental XSLT transformation processor for XML document manipulation | |
CN1296824C (zh) | 程序编码方法及其系统 | |
CN1530829A (zh) | 可扩展图形用户接口开发框架 | |
Minas | Creating semantic representations of diagrams | |
CN116225452A (zh) | 一种基于多层级中介码的图神经网络编译优化方法 | |
CN116450246A (zh) | 一种基于状态机的事件流转可配置方法 | |
CN1896954A (zh) | 用于复杂多业务的动态编译器的构件化实现 | |
CN1506814A (zh) | 用可扩展的标记性语言对应用程序界面进行描述的方法 | |
Sierra et al. | Operationalizing Application Descriptions in DTC: Building Applications with Generalized Markup Technologies. | |
Fukuyasu et al. | An evolution framework based on fine grained repository | |
Joisha et al. | The Design and Implementation of a Parser and Scanner for the MATLAB Language in the MATCH Compiler | |
Karjoth | Implementing LOTOS specifications by communicating state machines | |
Takasu et al. | A rule learning method for academic document image processing | |
CN1632784A (zh) | 一种快速执行可扩展样式表单语言转换的方法 | |
Kumar et al. | Revolutionizing Compilation: Lexical Analysis Approaches for Parallel Multi-Core Processing | |
KR20030010217A (ko) | 통합 중개 시스템에서의 어플리케이션 데이터 처리방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |