简答:简述面向对象软件开发方法的基本概念和优点.
展开全部 基本概念:谈到面向对象,这方面的文章非常多。
但是,明确地给出对象的定义或说明对象的定义的非常少——至少我现在还没有发现。
起初,“面向对象”是专指在程序设计中采用封装、继承、多态等设计方法。
可是,这个定义显然不能再适合现在情况。
面向对象的思想已经涉及到软件开发的各个方面。
如,面向对象的分析(OOA,Object Oriented Analysis),面向对象的设计(OOD,Object Oriented Design)、以及我们经常说的面向对象的编程实现(OOP,Object Oriented Programming)。
许多有关面向对象的文章都只是讲述在面向对象的开发中所需要注意的问题或所采用的比较好的设计方法。
看这些文章只有真正懂得什么是对象,什么是面向对象,才能最大程度地对自己有所裨益。
这一点,恐怕对初学者甚至是从事相关工作多年的人员也会对它们的概念模糊不清。
面向对象的分析根据抽象关键的问题域来分解系统。
面向对象的设计是一种提供符号设计系统的面向对象的实现过程,它用非常接近实际领域术语的方法把系统构造成“现实世界”的对象。
优点:1)近代的软件产业发展非常的迅速,但是却出现了让软件开发人员越来越不能忽视的危机,比如,软件的开发成本,尤其是大型软件开发成本、软件维护升级等费用非常的昂贵,针对出现的危机,人们提出了能够提高代码复用等的面向对象技术,面向对象技术的提出可以使客户于软件开发人员、软件开发人员之间的交流更加的顺畅,原因在于:首先,面向对象技术通常对现实世界的对象进行抽象,这种抽象使得即是非专业人员也能明软件要做什么,使得客户于专业的软件开发人员交流起来更加顺畅,节约开发成本;其次,面向对象技术通常会采用封装,继承等技术,这些技术会使得不同的程序模块之间的关联度减小,可以使得开发人员专注于程序的研发,而不是把大量的精力都放到各个模块的协调上。
2)并不是说我们利用了面向对象的语言,比如C++、JAVA,面向对象技术的好处就会出现,实际上在小的程序设计上,可能根本不需要这么复杂。
真正的大型软件开发用到时需要采用相应的技术方法,不断的优化,比如瀑布模型法,快速原型法。
瀑布模型法主要是把软件分为若干阶段,在每一个阶段,都充分的和客户交流;快速模型法主要是首先提出一个总的模型提交给客户,然后在不断的修改,通常这种方法只适用于较小的工程。
无论采用那种方法我们可以遵从一个原则:就是把大的软件项目不断的细化,最后细化到一个个小函数,然后在根据之间的关系封装等。
软件开发的工具有哪些?
软件开发工具是用于辅助软件生命周期过程的基于计算机的工具。
通常可以设计并实现工具来支持特定的软件工程方法,减少手工方式管理的负担。
与软件工程方法一样,他们试图让软件工程更加系统化,工具的种类包括支持单个任务的工具及囊括整个生命周期的工具。
简述软件开发工具的功能要求?
java开发工具1、MyEclipse(MyEclipse Enterprise Workbench)MyEclipse应用开发平台是J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持JAVA,HTML, Struts,Spring, JSP, CSS, Javascript, SQL, Hibernate。
MyEclipse应用开发平台结构上实现Eclipse单个功能部件的模块化,并可以有选择性的对单独的模块进行扩展和升级。
2、EclipseEclipse 是目前功能比较强大的JAVA IDE(JAVA编程软件),是一个集成工具的开放平台,而这些工具主要是一些开源工具软件。
在一个开源模式下运作,并遵照共同的公共条款,Eclipse 平台为工具软件开发者提供工具开发的灵活性和控制自己软件的技术。
3、NetBeansNetBeans是开放源码的Java集成开发环境(IDE),适用于各种客户机和Web应用。
Sun Java Studio是Sun公司最新发布的商用全功能Java IDE,支持Solaris、Linux和Windows平台,适于创建和部署2层Java Web应用和n层J2EE应用的企业开发人员使用。
.Net软件开发工具1、Microsoft Visual StudioVisual Studio 是一套完整的开发工具,用于生成 ASP NET Web 应用程序、XML Web services、桌面应用程序和移动应用程序。
Visual Basic、Visual C# 和 Visual C++ 都使用相同的集成开发环境 (IDE),这样就能够进行工具共享,并能够轻松地创建混合语言解决方案。
简述软件开发工具的演变过程和原因?
展开全部软件过程的概念包含了软件生命周期里所涉及的一系列相关过程,它为管理那些软件开发过程中较难控制的活动提供了一个统一的框架。
软件过程是在软件生命周期中所实施的一系列活动的集合,活动是任务的集合,任务则起到把输入加工成输出的作用。
软件演化过程作为软件过程的一个分支,它同样也是一种软件过程,它通过对软件演化过程中的一些较难以控制的活动进行管理,试图为软件演化过程建立一个统一的流程框架。
软件演化能否取得成功在很大的程度上取决于组织所实施的软件演化过程。
因而,它对于软件的演化具有重要的意义。
同时,Osterweil提出的一个广泛被接受的观点"软件过程也是软件",软件演化过程作为软件过程的一个分支,同样,我们也可以像软件一样对其进行相关建模和编档。
软件演化是软件工程领域正逐步受到重视的研究方向,并将得到越来越多的关注。
文献从软件演化管理的角度,较为系统地讨论了软件演化过程的相关问题,包括软件演化过程元模型EPMM、软件演化过程描述语言EPDL、软件演化过程框架、软件演化过程建模方法、软件演化过程改进等。
文献还给出了一个软件演化过程的支撑工具,并提供了多个案例研究。
软件演化过程的目标就是在不违反系统约束的条件下,对软件系统的演化流程进行管理,从而使演化后的软件系统能够在功能满足用户的需求,同时它所展现出来的质量属性也维持在一个令人满意的水平上。
文献的作者认为软件演化过程应该具有如下的5个基本特征。
做安卓软件开发需要哪些工具?
展开全部 Android以Java为编程语言,使接口到功能,都有层出不穷的变化,其中Activity等同于J2ME的MIDlet,一个 Activity 类(class)负责创建视窗(window),一个活动中的Activity就是在 foreground(前景)模式,背景运行的程序叫做Service。
两者之间通过由ServiceConnection和AIDL连结,达到复数程序同时运行的效果。
如果运行中的 Activity 全部画面被其他 Activity 取代时,该 Activity 便被停止(stopped),甚至被系统清除(kill)。
View等同于J2ME的Displayable,程序人员可以通过 View 类与"XML layout"档将UI放置在视窗上,Android 1.5的版本可以利用 View 打造出所谓的 Widgets,其实Widget只是View的一种,所以可以使用xml来设计layout,HTC的Android Hero手机即含有大量的widget。
至于ViewGroup 是各种layout 的基础抽象类(abstract class),ViewGroup之内还可以有ViewGroup。
View的构造函数不需要在Activity中调用,但是Displayable的是必须的,在Activity 中,要通过findViewById()来从XML 中取得View,Android的View类的显示很大程度上是从XML中读取的。
View 与事件(event)息息相关,两者之间通过Listener 结合在一起,每一个View都可以注册一个event listener,例如:当View要处理用户触碰(touch)的事件时,就要向Android框架注册View.OnClickListener。
另外还有Image等同于J2ME的BitMap。
Android的开发技术: 1、Activity生命周期 虽然Android中有四大组件,但是不可否认Activity是最常用的。
所以熟练掌握Android的生命周期是必须的。
其实生命周期就是记住 Activity的那些方法在什么时候被系统调用,这样才可以把对应的逻辑代码写到合适的方法内部去。
至于服务和广播组件可以稍微缓一下,到实际使用的时候再学习都可以。
2、界面开发技术 界面开发是一种基本的技术,几乎所有的程序里面都需要用到。
在Android开发中界面开发分为3种: 1)使用xml文件布局 使用xml首先对于界面进行布局,然后在Activity里面进行引用是最常见的应用软件开发技术,这种方式使用的最大,需要学习的内容也最多。
学习时需要熟悉: a)五种Layout布局 深刻理解五种布局组织控件的方式是一个基本的基础,这样你才可以在实际的界面中灵活的使用每种布局结构,构造出需要的界面。
b)常用控件 控件有很多,至少要知道每种控件是做什么的,至于里面的特定参数和方法可以学要的时候再去查 c)界面美华 系统的控件很多时候无法满足要求,需要通过添加背景更换图片等进行美化,要熟悉每种控件如何去美华。
掌握了上面的内容,通过布局的嵌套就可以制作出各种界面,如果在熟悉include的使用就可以减少xml的重复,方便后期的修改和维护了。
2)使用代码动态创建 有些时候需要动态的创建一些布局和控件,这个就需要使用LayoutInflater去创建一些动态的界面了。
3)自己绘制界面 游戏中常用,继承SurfaceView自己绘制。
3、数据存储技术 Android中的数据存储方式有3种: 1)SharedPrefereneces存储 对于简单的数据可以使用该方式存储,以键值对的方式存储一些基本的数据。
2)文件存储 将数据以文件的形式存储,可以是手机自身的存储也可以是SD卡,文件的数据格式自己定义。
3)SQLite数据库存储 使用标准SQL语句进行操作,复杂数据的首选。
4、网络编程 现在的Android程序不需要联网的已经不多了。
所以网络编程也是必须的,一般的公司都会封装有自己的联网结构,但是基本的联网还是要熟悉。
1)HTTP联网 使用Http联网+Json数据格式是现在很多客户端的首选。
2)Socket联网 至于蓝牙等连接方式则可以在项目需要的时候学习。
对于手机的系统功能,如拨打电话、发送短信、读取系统参数等则可以根据需要在学习,不麻烦的。
其次,手机软件相关 Android开发不同于普通的电脑软件开发,需要了解手机的操作习惯,知道手机的屏幕不大、内存有限,电池有限等,在实际开发和设计时尽量考虑。
软件开发的基本介绍
1、MyEclipse(MyEclipse Enterprise Workbench)MyEclipse应用开发平台是J2EE集成开发环境 [4] ,包括了完备的编码、调试、测试和发布功能,完整支持JAVA,HTML, Struts,Spring, JSP, CSS, Javascript, SQL, Hibernate。
MyEclipse应用开发平台结构上实现Eclipse单个功能部件的模块化,并可以有选择性的对单独的模块进行扩展和升级。
2、EclipseEclipse 是目前功能比较强大的JAVA IDE(JAVA编程软件) [4] ,是一个集成工具的开放平台,而这些工具主要是一些开源工具软件。
在一个开源模式下运作,并遵照共同的公共条款,Eclipse 平台为工具软件开发者提供工具开发的灵活性和控制自己软件的技术。
3、NetBeansNetBeans是开放源码的Java集成开发环境(IDE) [4] ,适用于各种客户机和Web应用。
Sun Java Studio是Sun公司最新发布的商用全功能Java IDE,支持Solaris、Linux和Windows平台,适于创建和部署2层Java Web应用和n层J2EE应用的企业开发人员使用。
.Net软件开发工具1、Microsoft Visual StudioVisual Studio 是一套完整的开发工具 [4] ,用于生成 ASP NET Web 应用程序、XML Web services、桌面应用程序和移动应用程序。
Visual Basic、Visual C# 和 Visual C++ 都使用相同的集成开发环境 (IDE),这样就能够进行工具共享,并能够轻松地创建混合语言解决方案。
关于常用的软件开发工具 [4] 使用详细,可以参考引用文章。
一个java项目中的软件环境、硬件环境、开发工具具体指的什么啊
展开全部 软件环境一般包括数据库(mysql,sqlserver,oracle,db2),运行的中间件,即应用服务器,如tomcat,jetty,jboss,weblogic,webphere,以及运行的操作系统环境,如windows,unix(AIX,solaris),各版本的linux等。
硬件环境,如pc server,ibm、hp、SUN(已被oracle收购)的小型机等等.开发工具嘛,有ibm开源的eclipse及衍生的myeclipse,sun的netbeans、或者收费的好用的IntelliJ IDEA等等。
这些是搭建一个企业应用的基本要素,你的应用就跑在这上面。
...
软件开发的技术有哪些
展开全部 一般来说软件开发是根据用户要求建造出软件系统或者系统中的软件部分的过程。
软件开发是一项包括需求捕捉、需求分析、设计、实现和测试的系统工程。
软件一般是用某种程序设计语言来实现的。
通常采用软件开发工具可以进行开发。
软件分为系统软件和应用软件,并不只是包括可以在计算机上运行的程序,与这些程序相关的文件一般也被认为是软件的一部分。
软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法、软件的总体结构设计和模块设计、编程和调试、程序联调和测试以及编写、提交程序。
常见的软件开发语言:JAVA、C/C++/php/JSP/ASP/POWERBUILDER/DELPHI/.NET/C#/vb/等。
与应用最关键的需要用到数据库,常见数据库:MySQL/SQLSERVER/ORACLE等。
...
转载请注明出处51数据库 » 软件开发工具(2011版)简答及应用的记