当前位置: 首页 > news >正文

专做机械零配件的网站怎么把网站做成软件

专做机械零配件的网站,怎么把网站做成软件,企业小程序建设公司,海外短视频怎么下载一句话概括 — 使用 Red 语言编写原生跨平台桌面 GUI。尝试在 Windows 上使用 PyInstaller 将“可执行”的 ducktape 封装在 Python 脚本之后#xff0c;我发现应该学习的编程语言类应该具有以下属性#xff1a;静态二进制编译(产生一个二进制#xff0c;不是运行时的字节码…一句话概括 — 使用 Red 语言编写原生跨平台桌面 GUI。尝试在 Windows 上使用 PyInstaller 将“可执行”的 ducktape 封装在 Python 脚本之后我发现应该学习的编程语言类应该具有以下属性静态二进制编译(产生一个二进制不是运行时的字节码例如 Java、Python)快速跨平台(WindowsMacLinux* BSD 和/或 Haiku (Bonus))为了达到这个目的在三年前我学会了 Go(开始使用 Go 开发一个应用程序)我可以确定 Go 的二进制文件可以通过交叉编译在多个平台上运行。其他语言如 Crystal 和 Rust 也支持类似机制但当时都不稳定。今天我正在探索原生跨平台GUIs1的可选方案。基于 Electron 构建的“现代桌面应用”已经有很多了。它允许程序员用 HTML、CSS 和 JavaScript 来构建桌面应用程序。听起来真棒吧好吧…虽然 Electron 比较容易快速面世并且对程序员而言成本效益更高Electron 以二进制大小和内存使用量庞大2而臭名昭着。你可能遇到过唱衰使用它的帖子基本上到了这种程度如果任何应用程序敢于使用它几乎可以保证它会在在线技术论坛上遭受抨击。令你失望的是这不是其中抨击帖子之一。Qt 和 GTK 是有趣的选择我甚至打算自己使用它们。但是两者都不如 Electron 那样快速发展。我们可以兼用二者吗一个原生的可快速开发的跨平台GUI不妨看看 Red。Red“Red 是受到 Rebol 强烈影响的下一代编程语言。”Red 的诞生很大程度是受 Rebol 的影响它是专有的封闭源码软件(直到2012年Rebol 3才成为开源软件)。这两种语言都有一个很好的图形用户界面系统(下面我们将介绍)Red 的不同之处在于它可以用于系统编程使用名为 Red/System 的小于2MB DSL 编译器。你可以在这里找到Red并下载。GUI这有一个使用 Red GUI 系统的 “Hello World”。Red 带有解释器所以你可以输入 red hello_world_gui.red 来运行下面的代码Red []view [ text Hello World ]Red 会解释运行这段代码不需要编译成二进制。如果你希望能生成二进制就把代码修改成下面这样Red [ needs: View ]view [ text Hello World ]然后运行red -r -c hello_world_gui.red编译结果是一个单独的二进制文件运行它会在 GUI 中显示“Hello World”。目前在 Linux 下还不支持 GUI(还在实验阶段)但是在 Windows 和 Mac 都是可以编译的。Red 支持交叉编译以便你为不同的平台编译二进制文件我们可以看到 Red 能编译出可用于哪些平台的结果。hako ~ red -h...Cross-compilation targets:MSDOS : Windows, x86, console ( GUI) applicationsWindows : Windows, x86, GUI applicationsWindowsXP : Windows, x86, GUI applications, no touch APILinux : GNU/Linux, x86Linux-ARM : GNU/Linux, ARMv5, armel (soft-float)RPi : GNU/Linux, ARMv5, armhf (hard-float)Darwin : macOS Intel, console or GUI applicationsmacOS : macOS Intel, GUI-only, applications bundlesSyllable : Syllable OS, x86FreeBSD : FreeBSD, x86Android : Android, ARMv5Android-x86 : Android, x86编写一个“Hello World”并没什么用让我们通过实现一个简单的图像查看器以进一步了解 Red 语言在这里我们将得到一个随机的图像这里是代码Red [title: Simple Image Viewerauthor: Wesley Hillversion: 0.1needs: View]rand_img: http://source.unsplash.com/random/310x200message: Press Random for a random image!view/options [title Simple Image Viewerbelow centerpictures: image 310x200 messageacrossrandom_btn: button Random [new_image: load rand_imgpictures/image: new_imagepictures/text: ]text A Simple Image Viewer in Red][]上面的代码创建了两个变量rand_img和message我们使用view函数来调用Red的 VID dialect 和 View Engine我们把标题和布局设置在窗口的中心。我们的图像大小为310×200使用了 pair 数据类型并且将我们的按钮 random_btn 和文本设置为相互响应的。 最后一旦我们点击“随机”按钮我们会使用加载函数从源检索数据。 源需要提供一个路径可以是文件字符串二进制或url数据类型。在这种情况下我们使用rand_img中的url数据类型并通过将 pictures/image: 的值设置为新的图像存放地址 new_image 以使用图片。因为我们只希望显示图像所以我们将图像中的文本设置为空。我们可以通过内置的 type? 功能检查数据类型。请注意Red有超过50多种类型。 print type? rand_imgurl print type? messagestring一旦我们运行上面的代码我们将得到简单的图像浏览器…它也能运行于 Windows 上Red 可用于更高级的应用程序这里有几个例子自动照片复印机对于使用 Red 的更高级的应用程序我给我父亲编写了一个程序来处理数百张照片。下面是程序的 GUI我使用了一组随机照片来演示程序这些演示照片很小(平均约 5KB)我父亲的照片其大小通常在 14MB 左右数量上千。解析数据输入的数据实际上是一封电子邮件其中包含客户选择的照片列表。Selected the following images:BIRTHDAY PARTY ABC 7453TIF_FILE_ID: 0123456789BIRTHDAY PARTY ABC 7454TIF_FILE_ID: 0123456790...BIRTHDAY PARTY ABC 8217TIF_FILE_ID: 0123456899所选照片的文件名采用 ABC_1234.jpg 的形式。所以对这个问题使用正则表达式是有用的。此外Red 有自己的模式匹配解析器最初由 Rebol 发明叫做 PARSE。下面的正则表达式…[A-Z]{3,}\s\d\S{3,}…类似于下面的 PARSE 规则[some letter space 4 digit opt letter]给予以下字母和数字的规则letter: charset [#A - #Z]digit: charset 0123456789解析规则中包含了选择字母的原因是要捕获有时出现在电子邮件中的 ABC 1234A 可选的边框。 以下是介绍解析器如何看到这个规则使用 Red 解释器我们可以测试解析规则是否正在工作。对于成功的匹配返回 true否则返回 false。 parse ABC 1234 [some letter space 4 digit] true parse ABC 1234A [some letter space 4 digit opt letter] true parse ABC 1234AB [some letter space 4 digit opt letter] falsePARSE 是 Rebol/Red 特有的替代现在通用的正则表达式语法大多数程序员(如果不是有经验的程序员)都不太熟悉。 我花了一段时间来学习语法我很欣赏这种语法这些规则是用普通的英文而不像正则表达式。在用 Python 编写原型和测试之后花费了我一个周末的时间编写这个应用程序它的代码220行。我的父亲使用 Mac所以生成一个二进制文件就像在 macOS 的发行版中编译源代码一样简单。red -r -o APC -t macOS apc.red --red-only -v 4它的大小甚至不到 2MB。Lines 克隆为了演示 Red 的网络和序列化功能我重新创建了一个名为 Lines 的应用程序它是一个简单的伦敦地铁状态应用程序。不幸的是它在 App Store 上已经无法访问了但我仍旧在旧的 iPhone 上安装过。下面的图片显示了它的样子。下面是用 Red 实现的相同的应用程序。 点击“Lines”将弹出打开关于特定路线的信息。目前 Red 没有内置的 JSON 解析器。我发现一个在这个示例中已经足够用的 JSON 解析器。构建这个应用程序需要大约 3 天的空闲时间大小约为 897 KB。最后的想法除了可以用 Linux 实现(一个可在 Red 工作的 GTK3 后端)的 GUI 系统之外请注意Red 目前可编译 32 位二进制文件。使用“Automated Photo Copier”应用程序时我使用 Red 复制大图片时遇到了问题而且程序经常突然崩溃。我切换到使用 cp 复制照片(因为我知道我的爸爸只使用 Mac)通过在 cp 命令上调用 call/console。这样它就能完美地复制图像。如果他用 Windows这将是一个不同的故事。Red 是 Electron 的一个很好的替代吗如果你正在构建一个小型的内部工具需要一个快速的图形用户界面或需要一个开发难度较低的跨平台的 GUI那么答案是 yes。虽然现在 Red 还没有达到产品级但从其路线图来看Red 在未来有很大的潜力。我不得不承认如果你不熟悉 Rebol(下面有对应的资源和链接)学习曲线会略微适中。另一个我还没有尝试的替代方案是 Lazarus(也许在未来的博客会介绍)但是用 Red 开发 GUI 的速度是非常有前途的。Lines clone 代码已在 GitHub 上开源。如果你有兴趣了解关于 Red 的更多信息请查看以下链接我已经使用了久经考验的 Python、Ruby、Java、C//# 和 JS但是我想尝试新的东西。就用 Go 编写 GUI 而言shiny 是实验性的这还有 therecipe/qt以及我个人的最爱andlabs/ui。也有一些高性能的 Electron 程序(Visual Studio Code)但这只是例外的而不是常规的。
http://www.yutouwan.com/news/319913/

相关文章:

  • 建设厅官方网站北京企业vi设计公司企业vi设计欣赏
  • 文山州住房建设网站广州哪里可以做网站
  • 免费建自己域名的网站编程培训加盟
  • 漂亮网站聚美优品网站建设导向
  • 移商网站建设wordpress不能更新插件
  • 装饰设计网站新冠怎么突然不见了
  • 最好的网站模板网站黑马程序员培训机构
  • 镇江做网站哪家公司好wordpress user login
  • 提供微网站制作网络公司我做网站如何分流客户
  • 自己怎样学做网站网站seo 规范
  • 用flask做的网站新乡市建设路小学网站
  • 免费公司注册网站吗成都包装设计
  • 网站开发周期定义无锡网站的建设
  • 做缓网站网站排名优化怎样做
  • asp自助建站系统做网站app怎么赚钱
  • 专业做网站的公司邢台专业做网站注册城乡规划师教材pdf
  • 合肥晚报社官方网站网络部署方案
  • 平面设计师的网站网络公司注册的流程
  • 东城精锐传媒专注于各类网站建设如果在浏览器上做一网站广告大约需要多少钱
  • 深圳维特网站建设企业网站未来发展趋势
  • 网站地图的好处深圳网页设计培训机构
  • 定制网站开发哪里好如何设计网站域名
  • dede自动生成网站地图建设银行网站网址
  • 网站怎么做黑链接铜仁网站网站建设
  • top网站怎么做网站版面的美化原则
  • 软件开发app开发定制外包99seo博客是什么意思
  • 学用php做网站空壳网站
  • 互联网站备案表wordpress one page
  • 精品课网站建设电商网站推广渠道
  • 西安免费公司网站设计如何免费开网店的步骤