
您好,我叫Mikhail Kapelko。 我从事专业软件开发已有10多年的时间,在业余时间,我会开发游戏和用于创作的工具。
在本文中,我将讨论我的第一个持久桌面应用程序-PSKOV静态站点生成器。
长寿
持久应用程序是指在2010年至2030年之间发布的操作系统上无需进行任何更改即可运行的应用程序。 换句话说,持久的应用程序具有10年的向后兼容性和10年的耐用性。 但是, PSKOV甚至可以在Windows 2000上运行,因此具有19年的向后兼容性。
从技术上讲,PSKOV是具有打包标记(HTML),样式(CSS)和代码(JavaScript)的单个HTML文件。 PSKOV严格在Web浏览器中执行,而无需与服务器交互。
这样的组织为PSKOV提供了以下机会:
- 可以不受限制地复制
- 它可以放在任何主机上
- 它可以在本地运行
- 它可以在没有互联网的情况下工作
我不能保证十年的耐久性,因为 我没有未来。 同时,HTML,CSS和JavaScript的历史表明,这些技术的发展具有最高的向后兼容性。 首先,新的JavaScript功能不会覆盖旧功能。 其次,Web浏览器制造商对使其Web浏览器可与尽可能多的站点一起使用感兴趣。 因此,例如<center>标签在2014年宣布过时,但在5年后的2019年仍能正常工作。
同时,Web浏览器中的任何应用程序都有严重的局限性-单元被欺骗地称为沙箱。 未经资源所有者(CORS)的许可,此单元拒绝访问用户的本地文件系统和Internet上的几乎所有资源。 结果,应用程序可以以下载文件的形式向特定服务器或用户提供某些东西。 一次下载一个文件或在存档中下载文件是不方便的,这就是为什么服务器方法现在在世界上很流行的原因,我稍后会谈到这些问题。
要从单元中释放PSKOVA,我必须创建LFSD ,这是一个很小的Python脚本,需要在PSKOVA工作时用手运行。 LFSD使PSKOV可以与用户的本地文件系统一起使用。 选择Python是因为它在Linux和macOS上默认存在,并且能够在Windows(甚至Windows 2000)上安装。
往绩
PSKOV已成功测试以创建以下小型站点:
现在介绍为Web浏览器创建持久应用程序形式的PSKOVA的原因。
原因编号1:以易于访问的形式积累和保存知识
这不是我一直致力于创建便捷的游戏开发工具的第一年。 直到最近,积累的知识还是本机桌面应用程序 ,有关技术或视频结果的 培训文章 。 所指示的累积知识的类型的区别在于,该知识实质上已经死了:
- 很少有人下载未知的应用程序
- 只有少数人会阅读文章
- 单位人群将观看至少一部分视频
在许多方面,这种死亡是由于无法访问而导致的:您需要付出未知的努力才能获得未知的结果。 今天不可能有人会被引诱。 这种情况与可能在任何地方都可用的浏览器中的应用程序完全不同:您需要做出已知的努力-打开链接-才能获得未知的结果。 Twitter革命的历史表明,几乎每个人都知道如何打开链接,并且喜欢“血腥政权”的变化。
原因二:民主
如今,在互联网上打喷嚏的任何人都是通过几乎总是属于公司的服务来进行的: 消息 , 地图 , 搜索 , 音乐 , 源代码等..这种篡夺权力的结果是关闭了那些控制公司认为无利可图的服务。 此外,如果不与这些用户进行任何讨论,没有这些服务,该服务将永远无法起飞。
在其他情况下,该公司可能只是禁止竞争的浏览器使用其服务,就像最近在网络版Skype中发生的那样 。 但是,有些人不同意这种政策。 多亏了他们,出现了禁用锁的工具 。
我认为这种情况是不能接受的。 但是,错误不仅在于失控的业务,还在于我们每个人的简单用户。 您可以辩称,用户别无选择,其他人(权力,爬行动物,下划线,必要人员)使这个世界变得不公平。 有人甚至可能直接责怪电源/ reptiloid,并相信没有它们,我们将生存。 不幸的是,人类历史却相反 :“ 国家不是占领社会的某种敌对部落,而是源于社会并与之形成镜像的敌对部落。”
作为人们的一部分,我从我自己开始,并决定使用自己的力量造福他人:创建我需要的应用程序,以便它们在任何地方和每个人都能使用。 PSKOV是首次超出我的期望的尝试。 当然,PSKOVA在LFSD形式方面有其自身的局限性,并且可以在不加密的情况下通过HTTP进行工作。 要提高PSKOV的可用性还有许多工作要做,但是现在我准备与任何人争辩:PSKOV将在10年内不做任何改动就可以工作。 俗话说,记住这条推文。
这总结了我的第一个长期桌面应用程序-PSKOV静态站点生成器的故事。