仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 641|回复: 12
打印 上一主题 下一主题

[学习教程] 来看基于Java的界面结构DSL计划与完成

[复制链接]
小女巫 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:14:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
其实产生见解的过程就是训练自己发现问题,分析问题的能力。根据以上的认识我想谈下传统的学习与通过视频独立学习的优缺点:
界面计划应当是一项充斥制造性、富有兴趣的事情,可是却常常被以为十分的单调和烦琐。究其缘故原由,是由于界面结构范畴所接纳的形貌观点和详细的完成言语之间存在很年夜的语义隔膜。而一样平常的界面开辟工具供应的所见即所得和界面结构办理器等计划也没法很好地办理这个成绩。
在本文中,我们会给出一种更好的办理计划,我们不是往试图把界面计划者思想中的计划观点和款式慢慢升级、分化成所利用的完成言语可以了解的低层观点,也不是供应一些已完成的、断定的但难以扩大和变动的结构款式库供界面计划者利用。我们所供应的是一种专门用于形貌高层界面计划款式的言语。经由过程这类言语,界面计划者能够间接、明白地形貌出他们思想中的结构计划款式;经由过程这类言语,界面计划者能够本人便利地、天真地制订本人必要的结构款式。别的,本文中给出的计划头脑关于其他范畴的计划也有很好的自创感化。
制造性,仍是有趣?
界面计划是一项十分有制造性,乃至富有艺术性的事情,一个简便、易用、大度的界面在带给利用者便利的同时,也会给界面计划者带来极年夜的成绩感。可是,在实际中,情形仿佛并不是云云,良多人都以为做界面是一项十分烦琐、机器、有趣的事情,并想方设法地往回避界面相干的事情。这是为何呢?
缘故原由很复杂,由于做界面实在触及两项事情,一项是界面的一些计划创意,包含界面的结构款式和和利用者的交互体例,这项事情充斥应战和兴趣。可是,这些计划创意终极是要落实到完成上的,这就是第二项事情。此时,你思想中那些明晰、完全的计划观点入手下手变得噜苏,你不能不和那些低条理的坐标地位打交道。更糟的是,当你十分困难做好了一个界面,可是发明个中某些元素的结构必要一些调剂时,这个你本应以为是一个很复杂的改动却形成大批反复的低条理坐标地位变动时,你一定会以为做界面是何等的机器和有趣呀!
实在,形成这类熟悉的本源在于界面计划创意和完成这些创意观点的言语之间存在很年夜的断层。如许,在详细完成时,你就必需得把这些明晰、完全的结构款式升级成一些噜苏、没有甚么意义的低条理的坐标值,使得完成言语可以了解。这项事情不但有趣,并且终极的完成也十分的懦弱——一个在结构款式层面十分复杂的变动,就会形成完成层面的伟大变化。好比:我们能够说把一组元素同时按比例减少10%,做过界面的伴侣一定晓得这个变动意味着甚么。
为了应对这个断层的成绩,今朝几近一切的触及界面制造的开辟工具都供应了不异的办理办法:可视化的界面计划工具和结构办理器。可是这两种办法都没有从基本上办理这个成绩。
可视化界面计划工具的确制止了很多烦琐的界面元素摆下班作,可是关于专业的界面计划来讲,经由过程拖放计划出来的界面在正确度和标准性上都有待进步,别的另有更加主要的一点,那就是存在于计划者思想中的结构款式仍旧没有被明白地形貌出来,而是被升级成一个个摆放在一同的零星的组件,固然这些组件自己是可视的。这个语义断层的存在一样会使得经由过程可视化界面计划工具计划出来的界面十分懦弱。
结构办理器试图经由过程供应一些经常使用的结构款式来办理这个成绩。可是,这类做法十分僵化,也就是说你只能利用现有的结构办理器,假如它们没法满意你的请求,你也没法本人定制。别的,这些结构办理器仅仅合适于一些复杂的情形。关于一些庞大的结构款式来讲,它们的形貌才能就显得十分的不敷。那些已经和GridBagLayOut奋斗过的伴侣对此一定深有体味。
在本文中,我们会给出一种更好的办理计划,我们不是往试图把界面计划者思想中的计划观点和款式慢慢升级、分化成所利用的完成言语可以了解的低层观点,也不是供应一些已完成的、断定的但难以扩大和变动的结构款式库供界面计划者利用。我们所供应的是一种专门用于形貌高层界面计划款式的言语。经由过程这类言语,界面计划者能够间接、明白地形貌出他们思想中的结构计划款式,经由过程这类言语,界面计划者能够本人便利地、天真地制订本人必要的结构款式。也就是说,原本仅存在于界面计划者思想中的笼统结构款式,如今也变得可形貌,可编程了。
界面结构言语先容
在进修界面结构言语的计划之前,先来懂得一下该言语的利用长短常有匡助的。我们的界面结构言语十分复杂,复杂到只要一种原子:Component。Component是一种基础的结构元素,能够对Component举行平移和伸缩,使其和给定的一个结构空间Rectangle婚配。好比关于Button这个Component来说,它具有传统按钮的表面,可是它在结构上所占的实践空间则是由为其指定的Rectangle决意的。别的,Component要终极在界面上显现出来,就必需有一个物理上的Container。也就是说,只需给定了一个Rectangle和一个Container,一个Component就能够在界面上指定的结构地位出现出来。
比方,当我们利用结构言语在一个JFrame上坐标地位为(0,0)展现一个width为200,height为60的按钮时,我们能够如许来形貌(为了简便起见,前面的代码实例中均略往Layout名字空间前缀):
Button().title("button1").at(0,0,200,60).in(this.getContentPane());
其实行了局以下图所示:
.Component示例

<p>
JAVA学习必须明确这是一项投资,对于大多数的人来说,学习JAVA是为了就业,还有就是刚走向工作位置的朋友想尽快赶上工作的节奏。
蒙在股里 该用户已被删除
沙发
发表于 2015-1-20 18:06:10 | 只看该作者
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)
透明 该用户已被删除
板凳
发表于 2015-1-21 12:22:44 | 只看该作者
是一种使网页(Web Page)产生生动活泼画面的语言
再见西城 该用户已被删除
地板
发表于 2015-1-24 10:26:13 | 只看该作者
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
柔情似水 该用户已被删除
5#
发表于 2015-1-24 22:06:32 | 只看该作者
你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。
第二个灵魂 该用户已被删除
6#
发表于 2015-1-25 10:38:11 | 只看该作者
你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。
只想知道 该用户已被删除
7#
发表于 2015-2-1 15:50:30 | 只看该作者
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
莫相离 该用户已被删除
8#
发表于 2015-3-2 00:12:59 | 只看该作者
Java 编程语言的风格十分接近C、C++语言。
小魔女 该用户已被删除
9#
发表于 2015-3-7 12:50:01 | 只看该作者
一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。
金色的骷髅 该用户已被删除
10#
发表于 2015-3-11 12:24:25 | 只看该作者
Java是一种计算机编程语言,拥有跨平台、面向对java
admin 该用户已被删除
11#
发表于 2015-3-12 02:09:07 | 只看该作者
应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展
因胸联盟 该用户已被删除
12#
发表于 2015-3-13 08:08:26 | 只看该作者
那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧!
若相依 该用户已被删除
13#
发表于 2015-3-20 16:54:34 | 只看该作者
是一种为 Internet发展的计算机语言
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-26 08:31

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表