1、面向对象编程(OOP)
ActionScript 3是Flex的基石,它是一个完全面向对象的语言。尽管面向对象这个概念并不是很好理解,但是
面向对象编程是学习的Flex的一个前提条件。如果你之前有面向对象编程(Java, C#, Ruby等)的经验的话,那
么你就可以很快入门。如果没有的话,那么你须要迟早找本OOP的书籍来学一下。
注意:有些人可能会问 - “那么设计模式呢?”让我们一步一步来,好吗?你们自己先学一下类和对象、接口、继承、组合、多态、封装等。只有学完这些之后你才可以去学习设计模式。事实上,如果我要写一篇名为“一名伟大的Flex开发者须要知道的10个内容”的文章话,那么设计模式将会是第一个。
ActionScript是与MXML一起配合来开发Flex应用程序的。MXML是一种用XML写成的基于标签的声明性语言。每一个标签都映射到一个与之相对应的ActionScript类。MXML主要是用来对用户界面进行布局,而ActionScript则用来实现业务逻辑。当然存在例外的情况。
注意:你应该对Flex Language Reference非常熟悉。作为一个Flex开发者,你基本上每天都要用到它。
开发者的很大一部分时间都是在调试。明显地,调试需要找到错误的根源。但是,调试也是学习新语言很好的一种方式。
很幸运地,网上有许多可用的工具来帮你进行调试。花点时间来学习使用这些工具。很快你所花的时间就会给你带来效益了。
Flex应用程序是事件驱动的。每一个动作都是一个异步事件产生的结果。作为一名Flex开发者,你必须知道怎么样去响应事件、怎么样去创造事件和抛出事件。为了实现这一点,你必须对Flex的事件结构有充分的了解,也就是说,你要熟悉以下几点概念:
* 自定义事件(由开发者定义的继承自Event类或其子类的事件)
表面上,数据绑定很容易理解。把一个属性的值与另一个属性的值绑定到一起。当源属性的值发生改变时,目标属性的值也会改变。然而,如果随意使用数据绑定的话是会影响程序性能的。充分了解数据绑定能够帮助你决定什么时候适合用数据绑定,什么时候不适合。
设计优秀的Flex应用程序的一个特点是其显示数据的方式在视觉上令人信服。Flex提供了一些基于列表的负责显示数据的控件 (DataGrid,List, TileList, HorizontalList等)。然而,只有使用项目渲染器才能让这些基于列表的控件自定义数据显示方式。
你见过哪些应用程序是不用与数据打交道的吗?
不要忘记Flex是一种图形用户界面技术,因此存在一定的设计期望。作为一名Flex开发者 ,你应该知道如何通过CSS样式或者其它方式来自定义你的Flex应用程序的外观。要使用Flex 4,就没有借口。花点时间来开发一下你的右脑,这是一次不错的改变,并且它可以让你与其它Flex开发者区分开来。
9、至少一种Flex结构框架
大多数Flex结构框架都实现了MVC设计。并且,许多框架都支配着你的代码的组织方式和包装方式。尽管有些人会认为使用框架是没有必要的,但是我相信即使只使用一个框架也会让一个Flex开发者受益匪浅。
简单地看着一项技术(好的或坏的)使用框架来解决一些结构性问题能帮助作为开发者或架构师的你成长。并且,你也不能否认如果你有使用框架的经验,那么你的职位竞争力将会在本质上有所提高。Jess Warden最近告诉我“只有少数商店不使用框架,但这是罕见的。不管你喜不喜欢,使用框架已经成为一种'时尚'。”我同意他的观点。
10、组件的生命周期和显示列表
之前我是觉得不用去学Flex组件生命周期和显示列表的,直到我第一次写自定义组件的时候。在此之前,我都是使用内建的Flex组件并且很高兴地让 MXML帮我处理显示列表。
我第一个自定义组件使用了许多异步事件,我并不能预测事件处理的顺序。但是在我学习了Flex组件生命周期方法之后,我重新掌握了控制。
这些生命周期方法早就有了。学习一下它们是怎么工作的,并且利用它们来帮助你解决问题。你掉的头发越少,你的生活会更加美好。
版权声明:本文为博主原创文章,未经博主允许不得转载。 /q/article/details/
我是从大二开始学习的Java,当时的目标是Java Web开发,当时并不想考研,所以当时的学习是以就业为主,现在我大三了,学习Java Web开发已经一年了,因为种种原因,决定要考研,所以不得不暂时终止了Java Web的学习,博客也可能会停更很长一段时间,虽然只学习了一年Java,但是我感觉我对于学习Java开发还是有一些心得,对于Java Web的学习路线也很清楚,所以,现在把自己学习Java的经验记录下来,希望能帮到一些想学习Java开发的人吧。
因为我的学习是边看视频边看书的学习方法,在学习的前期是以视频为主,后期以书籍为主,但是大量的练习是能够学好Java的关键,所以无论是视频还是书籍,我都推荐你把代码写一遍(照着写也比不写好的多),如果只看书、看视频而不练习,那么你永远也学不会编程。
我个人学习Java的路线是:Java SE —— Java Web —— 框架 —— 虚拟机、高并发、其他工具
我看过很多的Java基础部分的视频,总结下来就是Java基础部分是非常重要的,是Java学习的关键,但是基础部分在初学时并不能真正掌握其精髓,看视频只是为了入门,如果想要提高,需要在学习Java Web时,看Java基础部分的书籍。
这里我非常推荐刘意的Java基础视频,给个链接:
如果你感觉一个视频不够,也可以参考一下毕向东的视频:
我感觉其实只看一遍就可以入门了,比较Java基础部分以后还要学习,所以初始的时候看一遍入个门就可以了。
在看完Java基础部分的视频后,一定要记得做一个项目巩固一下学习的内容,我推荐的是坦克大战项目:
注意:Java基础知识入门只需要看视频就够了,但是如果你想做一名合格的程序员,你需要的远远不止编程的能力,我感觉最重要的其实是解决问题的能力,在学习Java的过程中,不管是基础部分,但是Web部分,还是框架部分,你都需要学习的是善于使用百度、谷歌的技术,遇到问题不能光想着找别人解决,一定要自己尝试解决,通过搜索引擎,自己找到解决问题的办法,这样才能提高,这也是我从学习编程开始到现在为止最重要的心得体会。
我只看过两本Java基础部分的书籍,一本是《Java编程思想》,一本是《Java核心技术》,我不管这两本书别人是如何评价的,我只说一下自己的看法,我不喜欢《Java核心技术》,这本书就像是API文档一样,我个人感觉完全不如看视频,另一本《Java编程思想》非常好,但是并不适合在基础部分看,我个人推荐你在学习Java基础部分的时候可以囫囵吞枣的看一遍,不懂的地方也不要纠结,等以后学习完Java Web后再看一遍,会有更多的收获。
因为Java Web部分我只看过视频,所以这里就只推荐视频,Java Web部分的内容非常杂而且非常多,所以这一部分可能会花费大量的时间,而且Java Web部分的很多知识现在都已经过时了,但是我感觉如果不学习Java Web部分的内容而直接学习框架的话基本也学不下去,所以这一部分还是需要好好的学习。这里推荐的视频是崔西凡的Java Web视频,下面是链接:
其中中和下两部分是Java Web部分的内容,上是一些前端的基础和XML方面的内容,这些都需要学习。
Java Web部分虽然内容很多,但是学完这一部分你会很有成就感,因为你终于可以自己做一些东西了,比如你自己可以自己写一个博客,一个图书管理系统,运用你学习的知识,你可以做很多事情了,这里也推荐学习完Java Web的知识后做一个项目巩固一下学习的知识,这里推荐李兴华的微商城项目:
如果说对你将来工作帮助最大的部分,那么一定就是框架部分了,因为框架就是为了简化开发过程的工具,你可能已经不满足与Java Web 部分的 JSP/Servlet 技术很久了,为啥开发一个Web项目如此繁琐,那么你就需要好好的学习一下框架,有了框架开发Web项目的速度会像开了火箭一样,而且将来工作中全部都是使用框架开发,所以这一部分非常重要。
Java Web开发的框架非常多,但是其基本的原理却总是相差不大,所以你不需要每种框架都学习一下,你只需要着重的学习一部分框架,并且深入的学习,对框架的原理有深刻的认识,那么框架部分你就算是学习的不错了,以后如果遇到没有学过的框架也可以很快的上手使用。
因为我并没有参加过工作,我并不是很清楚现在的框架使用情况,但是根据我加的一些QQ群中一些工作人员的说明,现在的主流框架应该还是:Spring + Mybatis + Spring MVC。
这里最终要的框架就是Spring,目前正在兴起的Spring Boot框架就是为了简化Spring框架发明的,如果你想将来的工作顺利,那么我感觉你需要把Spring框架学习到一定的深度。
对于框架的学习,我认为视频只是辅助,起到入门的作用,最主要的还是看书去学习框架的原理。
这里我只推荐了一本《Spring揭秘》,因为我只看过这一本书,但是这本书让我对Spring有了全新的认识,对于IOC和AOP有了深入的了解,打开了我框架学习的新世界。
框架部分的学习至关重要,这里因为我自己没有更多的经历,所以只是提供了一些很浅薄的经验,但是还是那句话,真正能够帮助你的只要你自己解决问题的能力,网上有大量的框架学习的经验可以借鉴,所以一切还是靠自己。
上面三个框架学习完以后就可以试着用框架开发Web项目了,这里推荐慕课网上的:,这个项目还有一个二代的版本,以后可以学习,在学习这个项目的过程中,还要学习大量Java Web开发中需要使用的工具,而这些都需要你自己去学习。
这里其实对于一个初级的开发人员,虚拟机和高并发并不是必须要学习的,但是Web开发的工具却非常重要,工欲善其事必先利其器的道理大家都懂,这里我就推荐几个主流的工具
上面的学习路线也不是要求你一步一步照着做,每个人都需要独立思考的能力,比如工具的学习在任何时候都可以开始,我想说的是,如果你想成为一个程序员最重要的还是要会自己思考,不断学习,上面说的技术可能会过时,但是你的学习能力是永远不会过时的,在Java开发的道路上需要学习的远不止上面的内容,可以说上面的内容你全部都学会了也不过是Web开发的入门罢了,想要有更好的发展,你就需要学习更多的知识,对计算机底层的原理有一定的了解,对算法也需要学习,很遗憾,我暂时要退出Java开发的世界了,希望两年之后的今天我已经考到了我想要去的学校,开始我新的篇章,到那时,我可能仍然会继续学习Java,也可能会学习其他的方向,但是只要我一直怀有不满足的精神,一直有学习的动力,那么总会成为大牛。