APP搭建环境是什么?这个环境是否可以标准化?

APP搭建环境是什么?这个环境是否可以标准化?,第1张

 随着最近接触App Engine的增多,使用Eclipse时间的增多,发现Eclipse搭配一些插件开发App Engine的环境真是不错,今天又解决了之前的一些问题,终于堪称完美,不敢独享,拿来和大家分享一下。

注:以下所有 *** 作都在Windows平台进行。也许你看到后面会觉得有点多,但是工欲善其事,必先利其器,这个道理是大家都懂得。磨刀不误砍柴工,这个也是大家都懂的。

搭建App Engine环境

App Engine是Google推出的一个云计算平台。

下载Python2.5,按后不断下一步进行安装

下载Google App Engine SDK for Python,依然不断下一步安装。

然后App Engine环境就搭好了,你可以是用记事本进行开发啦。

 

搭建Eclipse环境

Eclipse是一个基于Java的可扩展开发平台,可以通过安装各种插件进行相应开发。

由于Eclipse是基于Java的,所以要安装JDK,这里下载最新版本JDK。下载完成后不断下一步JDK就安装好了。然后下载Eclipse,这里下载。由于Eclipse是绿色软件,所以找个地方解压缩就好了。

这样Eclipse环境就搭好了。

安装PyDev

PyDev是一个开发Python的Eclipse的插件,在不断发展,很好用。

打开Eclipse,选择菜单中的Help->Install New Software…,然后在d出对话框中的Work with中输入http://pydev.org/updates(PyDev的更新地址),然后勾选下面出现的PyDev,然后一直下一步,等待一会就安装好了。

至此我们已经搭建好使用Eclipse进行python开发的集成环境。

安装Eclipse HTML Editor

Eclipse HTML Editor是一个编辑HTML\CSS\JS等文件的编辑器,提供了代码着色、智能提示、代码格式化等功能。

先安装GEF(Eclipse HTML Editor基于这个产生代码着色功能)。这个也是通过Eclipse的更新管理器进行,选择菜单中的Help->Install New Software…,然后在d出对话框中Work with中选择--All Available Sites--,然后在下方的输入框中输入gef,然后安装GEF SDK。

下载Eclipse HTML Editor,这里下载。然后将下载的jar文件放到Eclipse根目录下的plugins目录或者dropins目录中,然后重启Eclipse。这样Eclipse HTML Editor就安装好。

这时一个Web开发环境就搭好了。

安装Google Plugin for Eclipse

Google Plugin for Eclipse是Google提供的便于开发App Engine的一个插件,方便新建、调试和部署App Engine的工程。

使用Eclipse更新管理器安装。打开Eclipse,选择菜单中的Help->Install New Software…,然后在d出对话框中的Work with中输入http://dl.google.com/eclipse/plugin/3.6(插件的更新地址),然后选择Google Plugin for Eclipse,然后不断下一步,稍等一会,就安装好了。

这样Google Plugin for Eclipse就安装好了。

安装YEdit

YEdit是一个在Eclipse上编辑YAML文件的插件。当我们我们使用Python进行App Engine的开发,会涉及编辑一些YAML文件,这个插件提供了较好的支持。

这个还是通过Eclipse的更新管理器来完成安装,在对话框中的在Work with中输入http://dadacoalition.org/yedit,然后勾选该插件,然后不断下一步,稍等片刻,安装成功。

这下我们就有了编辑yaml的环境了,不然使用pydev打开yaml文件会有红线报错,看起开很不爽。

拾遗

至此我们就有了一个全方位立体式的Python进行App Engine开发的环境,但是还有一点不完美,就是PyDev对于Google App Engine的memcache文件中的那种方法的写法不支持(具体可查看那个文件,我也是第一次见),会对get、delete等方法提示报错,红色线的很不爽,我在网上找到了一个方法可以完美修正这个。

方法是进入PyDev->Interpreter-Python->ForcedBuiltins,然后添加google.appengine.api.memcache,点击应用,然后重启Eclipse,错误就消失了。

总结

拥有了这套开发环境,我不禁暗爽一下。但是最后我想说不要沉迷于完美开发环境,最关键的还是要学好Python,深入了解App Engine的SDK,这样才能写出好的App Engine的应用。

为Java开发者对YAML文件格式做一个高级介绍 找出它与XML和JSON的不同之处 并检验它的优越性和缺陷

所有动态语言(如Ruby Groovy Python等)及其相关的框架(如Ruby on rails)百家争鸣 尽管阅读本文的大部分Java开发者每天的大多数工作都是处理纯粹的Java 且未来多年都将如此 但这并不意味着他们不能学习新的知识 在他们的兵器库中添加新的兵器 本文介绍YAML(YAML不是标记语言的简写)文件格式(使用Ruby on rails框架进行讲解 因为它所有的配置文件都是使用的YAML)以及它与XML和JSON的区别 最后讨论了YAML的优势和缺点

空格缩进和JSON选项

YAML文件格式主要集中于空格缩进的概念 它用于指出数据的层次结构 – 而不是使用XML嵌套标记或JSON的大括号({})和方括号([]) 实际上 它是JSON的一个超集 因此 在使用的时候 你可能需要采用JSON风格的语法来跳出空格流 它的创始人将其形容为 为所有编程语言提供人性化的数据序列化标准 以我的经验来看 其重点是人性化 下面是一个使用空格缩进的YAML样例 创建YAML文件时不宜使用固定宽度字体 因为空格是很关键的 (参考侧边栏 YAML和标签

JFrame: defaultCloseOperation: JFrame EXIT_ON_CLOSE title: Test Frame width: height: ponents: JTextArea: name: textArea text: | This is a really long text that spans multiple lines (but preserves new lines) It does not need to be escaped with special brackets CDATA tags or anything like that JButton: name: button text: Button

侧边栏 YAML和标签     基于空格缩进的任一文件格式最常见的问题之一是如何解释标签 在这个YAML例子中 答案相当简单 它不支持标签 使用标签字符缩进代替空格将会导致处理异常

随你喜欢 你可以在任何节点使用JSON风格语法或混合语法 例如 上面的例子可改为

JFrame: defaultCloseOperation: JFrame EXIT_ON_CLOSE title: Test Frame width: height: ponents: JTextArea: name: textArea text: | This is a really long text that spans multiple lines (but preserves new lines) It does not need to be escaped with special brackets CDATA tags or anything like that JButton: {name: button text: Button } #JSON风格语法

在底层节点(即它们没有子节点 正如你猜测的那样 井号键在YAML中是用来注释的)切换使用JSON风格语法显得特别有用

YAML结构组件

前面已经看了一个简单的YAML例子 下面让我们一起来了解一下YAML的结构 hash list 和block literal

hash(散列)

通过缩进子段和在关键字与值之间使用冒号(:)来分割实现hash的创建 如

JFrame: defaultCloseOperation: JFrame EXIT_ON_CLOSE title: Test Frame width: height:

还有一种方法就是使用与JSON兼容的大括号语法({})语法 每一对关键字/值使用逗号( )分割 如

JFrame: {defaultCloseOperation: JFrame EXIT_ON_CLOSE title: Test Frame

width: height: }

list(清单)

通过在每个list元素前放一个减号( )来创建list 与空格缩进一起构成了YAML的基石

ponents: JTextArea Jbutton

还有一种方法就是使用JSON兼容的方括号([])语法 如

ponents: [JTextArea JButton]

block literal(文字块)

这是YAML的亮点 特别是与XML相比 它的CDATA显得相当简陋 block literal可以将大块文本细致地插入文件中 你可以使用竖线(|)指令在你的文本中保留新行 如

text: | This is a really long text that spans multiple lines (but preserves new lines) It does not need to be escaped with special brackets CDATA tags or anything like that

YAML编译器将会从第一行的第一个文本字符开始编译(并丢掉所有的缩进空格) 但是会在你的文本中保留新行

另外 你还可以使用大于符号(>)告诉YAML编译器给所有新行加上条纹 并将输入的文本作为一个长行处理

text: >This is a really long text that spans multiple lines (but preserves new lines) It does not need to be escaped with special brackets CDATA tags or anything like that

除了这两个指令之外 你还可以使用竖线和加号(|+) 它给位于前面的空格加上条纹 保留新行和末尾的空格 还可以使用大于号和减号(>) 它给所有的空格加上条纹

YAML VS XML和JSON

正如你从前面例子中清楚地看到那样 YAML没有XML那么啰嗦了 大部分YAML文件内容就是真实的数据 没有了无穷尽的打开和关闭标记列表 在XML中 这些标记往往比它们描述的数据还大 YAML更适合你需要手工维护的数据文件类型

YAML没有提供方案或DTD概念 因此无法验证文件格式是否符合你的预期 XML的啰嗦也有它的价值 但总的说来是因为XML的成熟使它具有大量额外的工具来验证它的格式 而YAML还没有

JSON也适合与任何数据 它主要面向提高性能和文件尺寸的大小 因为它几乎不使用空格和关闭标签 然而 JSON文件的内容增加了复杂性 它的关闭标识就象下地狱一样 这就是JavaFx代码(它基于JSON)中可见的最痛苦的了 在数据文件中 使用UI结构使结果更复杂 其复杂程度几乎使文件变得无法理解

查看的JavaFx示例代码(点击 Edit this page 链接) 请特别留心它是如何结束的

} } } } ] } } center: bookPanel }

掺和了{}结构和[]清单 使得手工维护大型的JSON风格的文件变得相当困难 YAML使用它的空格缩进方法巧妙地解决了这个问题 当然 无论何时 你都可以切换到JSON风格的语法(如在底层节点)

解析YAML文件最常用的Java库是JvYAML() JRuby(在Java VM上运行动态语言的Ruby版本)在它的Ruby on Rails框架中的进出口使用JvYAML JvYAML提供了文件一般处理的功能(在前面那个例子中 它返回了一个标准Java字符串 Long Map和List对象的嵌套体系结构) 使用静态dump()方法保存为文件 然后使用静态load()方法载入 例如

YAML dump(Object data Writer output)Object data = YAML load(Reader io)

参考侧边栏 基于YAML的开源项目了解关于基于YAML的开源项目信息 以及如何在Java中装入一个说明的UI

侧边栏 基于YAML的开源项目     请原谅我在这里厚脸皮地介绍我们自己的开源项目 当我真的不知道除了JRuby外其他的基于YAML的开源项目 JRuby的Ruby on Rails框架实现严重依赖YAML 而不是XML或JSON 看看我的Java Builder库吧() 它利用YAML文件提供了一种方法定义屏幕控制 布局 事件线路和数据绑定 以实现将说明UI装入Java

实际上 YAML文件真的非常简单 甚至你可以使用任何的文本编辑器都可以维护它 但有些专门的文本编辑器提供了语法加亮功能 这对维护工作很有帮助 对Eclipse而言 有Eclipse YAML editor() 对NetBeans而言 你可以使用来自Ruby包()的YAML编辑器 然而 在NetBeans 中的YAML编辑器并没有什么用处 它只支持YAML很小的一个子集(例如 它不支持block literal) 希望在NetBeans 中的YAML编辑器解决了这个问题

我没有机会测试IntelliJ IDEA 但我推测它的Ruby on Rails插件(+IDEA+Ruby+Plugin)附带了YAML编辑器

添加YAML工具

lishixinzhi/Article/program/Java/JSP/201311/19416


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11454754.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-16
下一篇2023-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存