发布时间:2024-01-12 08:22来源:www.sf1369.com作者:宇宇
想要符合理性评价,那么科学的评价是一种理性的评价。
要科学的评价,只需要建立可重复性的验证或者实验手段就可以了。
以下是一种仅供参考的验证或者实验方法的步骤:
1. 选择一个常见的可编程解决的问题
2. 选择候选编程语言可使用的语言措施、库等等范围
3. 邀请足够多的中等或以上水平程序员的程序员,在约定的范围内编写代码解决这个问题
4. 升级这个问题或者扩展这个问题的应用范围
按以上步骤迭代,统计每次迭代时(也就是问题变化时)解决问题的各语言的代码的变化量。
汇编语言是底层操作用得最多,直接和硬件打交道,尤其是驱动的编写,很多都是汇编语言,而不用高级语言,但是上层应用程序,实时性不高的程序,用高级语言,可以减小代码复杂度,编写方便,各有千秋,没有哪一个是绝对的好
JAVA可以说是最热门的的编程语言,对于很多高级语言来说,JAVA都是基础;另外一个,JAVA是跨平台的,有多个方面的应用,如Android、Swing、J2EE、J2ME等。就业面比较广,市场用人需求也大。java多开发大型系统,所以大型企业往往需要很多Java人才,这是其优势。
有分别的。这种差异在于具体应用领域问题。
例如编写操作系统平台等与硬件关系密切的语言,需要使用C、C++,它们的数据类型与硬件所提供的数据类型是存在一一对应关系, 并且提供对相应数据类型按位操作能力。
而有些语言编写的程序是跨平台,例如Java、C#(借助.NET framework)。
有些语言对于字符串处理比较简单。
这种差异性造成,有些语言对于某些功能只要很短的语句就可以完成,而用另外一些语言则会很复杂。
希望可以帮到您,谢谢!
1.2.1 正确性
正确性是指软件按照需求正确执行任务的能力,涵盖“精确性”。正确性是第一重要的软件质量属性。技术评审和测试的第一关是检查工作成果的正确性。
从“需求开发”到“系统设计”再到“编程”,任何一个环节出现差错都会降低正确性。软件运行出错通常都是人造成的,开发者应做到为“正确”两字竭尽全力。
1.2.2 健壮性
健壮性是指在异常情况下,软件能够正常运行的能力。正确性与健壮性的区别是:前者描述软件在需求范围之内的行为,后者描述软件在需求范围之外的行为。想不到异常情况,把异常错当正常而不作处理,这些都会降低健壮性。提高软件的健壮性也是开发者的义务。
健壮性有两层含义:一是容错能力,二是恢复能力。
容错是指发生异常情况时系统不出错误的能力。高风险系统如航空航天、武器、金融等领域的系统,容错性设计非常重要。
容错是非常健壮的意思。而恢复则是指软件发生错误后(不论死活)重新运行时,能否恢复到没有发生错误前的状态的能力。
从语义上理解,恢复不及容错那么健壮。
1.2.3 可靠性
可靠性是指在一定环境下,在给定的时间内,系统不发生故障的概率。因为我们无法对软件进行彻底的测试,无法根除软件中潜在的错误,所以软件平时运行良好,说不准哪天就会不正常,如“千年虫”、“内存泄露”、“误差累积”等。
软件可靠性分析通常采用统计技术,但目前可供第一线开发人员使用的成果少见。
1.2.4 性能
性能通常是指软件的“时间—空间”效率,而不仅是指软件的运行速度。程序员可以通过优化数据结构、算法和代码来提高软件的性能。算法复杂度分析是很好的方法,可以达到“未卜先知”的功效。
1.2.5 易用性
易用性是指用户使用软件的容易程度。它直观体现为“界面友好”、“方便”等。
1.2.6 清晰性
清晰意味着工作成果易读、易理解。开发人员只有在自己思路清晰的时候才可能写出让别人清晰性好的程序和文档。可理解的东西通常是简洁的。简洁是人们对工作“精益求精”的结果,而不是潦草应付的结果。
1.2.7 安全性
安全性是指信息安全Security,不是safety。安全性是指防止系统被非法入侵的能力,既属于技术问题又属于管理问题。对于大多数软件产品而言,杜绝非法入侵既不可能也没必要。一般地,如果黑客为非法入侵花费的代价(考虑时间、费用、风险等因素)高于得到的好处,这样的系统被认为是安全的。
1.2.8 可扩展性
可扩展性反映软件适应“变化”的能力。在软件开发过程中,需求、设计、算法的改进、程序本身都有可能变化,
软件是否容易修改关键看它的规模和复杂性。可扩展性是系统设计阶段重点考虑的质量属性。
1.2.9 兼容性
兼容性是指两个或以上的软件相互交换信息的能力。开发某领域的新软件,应与已流行的软件相兼容,否则难以被市场接受。
1.2.10 可移植性
可移植性是指软件运行于不同软硬件环境的能力。编程语言越低级,程序越难移植。C比汇编可移植性好,Java号称“一次编程、到处运行”,具有100%的可移植性。
软件设计时应该将“设备相关程序”与“设备无关程序”分开,将“功能模块”