对开发Linux的一些看法

类别:编程语言 点击:0 评论:0 推荐:

对开发Linux的一些看法

Linux已经炒了很多年了,许多人一直将它作为windows的对手,从低成本、开源等多方面展示了Linux的美妙前景,但许多专家也提出了诸如版本太多、操作不便等诸多不利因素,事实上从Linux在市场上叫好不叫座、政府购买Linux用Windows的现实来看,Linux的普及之路还非常漫长。在我看来,目前的Linux,尤其是桌面版还无法同windows抗衡,中国的Linux如果不掌握核心技术,不同企业实际相结合,还是只能走为人作嫁衣裳、汉化的老路。

首先要申明,本人不懂Linux,没有系统、认真的学习过,只是受网上一些宣传的影响,下载了几个Linux版本安装了一下,看过几本书(很早的时候了),因此,许多提法可能是错误的,但我是企业信息管理的主要负责人,负责公司的网络规划、软件研发等工作(基于windows),对企业的需求相对较熟悉,尤其是近年来windows打击盗版的力度越来越大,这对企业来说非常不利,因此,也迫切希望找到一个廉价的替代品,无疑,Linux是最佳选择,但真正要用Linux恐怕还不太现实。

u      用户层次的划分

在工作中,我喜欢将用户划分成四个不同的层次,尽管不太科学。

1、能使用一般的软件

这类人员占绝大部分,这类人员往往能熟练使用自己业务相关的软件,如一般的工作人员,以及家庭用户(如上网看新闻、打游戏等),他们都是从不懂到能简单操作的人,也往往是我们的服务对象,因为一旦计算机出现问题,他们自己是无法解决的,必须依靠别人(如朋友或机房人员)。

2、能安装应用软件

这类人数量也不少,以年轻人为主,掌握了一般的软件使用后,可以自己安装一些软件了,因为windows操作非常简单,运行setup.exe就可以完成一般的安装。

3、能安装操作系统

操作系统相对复杂一点,尤其是在DOS下安装,这类人的比例并不多,往往是系统出了问题,自己试着安装一下,接下来安装驱动程序等都非常头疼。

4、能够分区

这恐怕是计算机应用最底层了,往往也是电脑城、机房的事情。其余如电脑维修等不属于计算机的日常应用了。

针对以上四种情况,我认为Linux的具体软件设计也应有针对性。

u      对各层次的建议

1、软件使用要非常方便

这是windows的强项,也是Linux让人颇有微词的地方,Linux的强大功能通常要通过控制台实现,而Windows通常都能通过图形界面完成,相对来说,Linux的图形界面在很大程度上无法替代命令行,在这方面应该象windows学习或者说模仿,提供一些人性化的访问。如果要使用光驱、优盘,在Windows中插入光盘就可以使用,用完后按一下光驱面板上的按钮就能够退出来,而Linux要加载、卸载。

对于软件的设计理念,我认为应该将用户当作傻瓜,当然,这里不是人格上的污辱,就象傻瓜相机,傻瓜相机因为操作简单,无需调焦,无须调整暴光时间等,占了相机市场的绝大部分份额。我们面对的用户绝大部分不是专业人士,就象绝大部分都不懂摄影原理一样,如果我们的软件太专业,那只能成为少数高手中的玩物,我曾经在一家公司打工,那个时候是DOS为主的时代,通常,我们显示了一屏信息后有个提示“按任意键继续……”,用户按任意键后显示其他内容,一天,有个用户打电话问“老师,任意键是哪一个键?”,我将这个笑话讲个同事听,他们都哄堂大笑,我却陷了深深的沉思中,这说明我们的软件不完美,如果用户拿来就可以使用,不仅利于普及,还减少了售后服务。后来我写软件时尽量简单,目标是将方便留给客用户,麻烦留给自己。

我们是股份制企业,同绝大部分改制企业一样,老职工多,资格也比较老,他们年龄偏大,计算机知识非常匮乏,要让他们使用计算机,必须让计算机操作简单、简单、再简单,或许有人会说,下一个命令,不能按期学会使用的下岗,这句话说起来容易,但我们的前身是国有企业,谁也奈何不了,更何况搞计算机的都是年轻人,资格本身就很嫩,他们能配合我们搞信息化已经烧高香了,因此,我们只有简化我们的软件,让他们用起来,让他们尝到甜头,变抵制、被动为主动。

再举一个例子,我们自行研制的客运业务综合管理系统主要是管理客运业务的,如车辆、保险、安全等,使用的人绝大部分是老职工,一开始也有抵制情绪,后来车辆要做大批量调整,根据他们的经验,原来要两个人做3天,而使用该软件时,没有任何人指导,他们自己用了半个小时就搞定了,还专门打电话来说真是方便,该软件的实施也由被动变为主动了。

在我们单位里,为方便使用还想了许多办法,如建立公共文件夹用于临时交换文件、安装“信使”用于内部临时发消息等等,连windows的启动都是自动登录的(当然这非常容易实现,也没有值得炫耀的地方),软件登录时往往设置了保存密码,让人手一机的用户无须登录就能使用软件等等,所以这些都是尽量让用户方便。

谈到安全问题,我认为企业里面懂电脑的不多,真正保密的也不是很多,尽量在技术层解决掉,如安装硬件防火墙、杀毒软件,使用网络版软件,服务器采用硬镜相等,不要将这部分工作让用户去刻意完成。

说了这么多,就是想说明一点,用户是上帝,让他们简单才能真正推广普及,易用第一,安全第二。

2、软件安装必须要简单

Windows有个Programe文件夹,当然可以通过注册表修改具体位置,新装软件时默认都安装在该文件夹中,非常方便,通常的安装程序都是Setup.exe,Linux也完全可以参照该方式,简化软件的安装与卸载。

3、操作系统的安装与分区

这两个问题往往是联系在一起的,不同的是Windows中,分区的工具很多,且是独立的,也就是先用工具分区,分区完成后才能安装操作系统,而Linux往往是在安装系统的过程中选择分区工具进行分区,因为我们安装操作系统次数较多,而分区的次数并不多,因此,建议将分区工具独立出来,安装时选择分区就可以了。

谁在分区和安装操作系统?

这我我们信息中心一直在思索的问题,Linux作为操作系统必须能完美地回答这个问题和解决这个问题。

我认为主要是以下几类人:

(1)    电脑城的工作人员

这类人占了绝大多数,目前的兼容机也好,不带操作系统的品牌机也好,往往都是由他们安装操作系统(当然通常是D版的)和应用软件然后卖给用户,出了问题再由他们维护。

(2)    单位里的的管理员

他们主要负责本单位的计算机维护工作,安装操作系统也是家常便饭。

(3)    有一定计算机基础的人

这类人数量不多,其他的如品牌电脑技术部等专业人员不在我们讨论的范围之内。

虽然说windows的安装非常简单,但也令我非常不满,因为每台计算机的芯片可能不一样,驱动也不一样,安装一台倒无所谓,问题是我们经常要进行大量的、重复的安装,尤其是电脑城,这个工作量是非常大的,维护的工作量也相当惊人,安装好一台后直接克隆到另外的计算机上通常是要蓝屏的,因此,Linux最好能解决这一难题,简化安装,我的建议如下:

(1)    发行一张光盘版Linux

通常,我们安装操作系统和软件都是用光盘,以windows为例,通过一起启动盘启动到DOS,然后进行分区,再插入windows安装盘进行安装,最后安装应用软件,一切完成后再用Ghost之类对系统进行备份。

而作为单位的管理员或电脑城的工作人员,往往都有一个移动硬盘,软件往往是放在移动硬盘上的,这样一张启动盘(同时也是系统安装盘)+移动硬盘就可以了,但DOS下使用移动硬盘非常困难,尽管网上有驱动,但并不是每次都灵验,如果将每个操作系统都各刻一张光盘则不方便,况且光盘易坏,无法修改。因此,应该发行一个Linux的光盘版,就象网上比较流行的“深山红叶”中的windows XP PE版,该版本的windows xp直接在光盘上运行,集成了大量工具,带上一张光盘+移动硬盘就可以了,但该盘在部分计算机上运行windows XP PE时无法识别移动硬盘。

光盘版Linux应该具有以下功能:①不依赖硬件直接在光盘上运行,图形化界面;②支持移动硬盘;③集成一些必要的系统工具;④需要的空间尽量要小,如200M以内,这样就可以刻成迷你盘,携带更方便等。

(2)    安装要尽量简单

windows也有许多版本(如windows 2000有服务器版、专业版等),Linux也必然为满足不同需求推出服务器版、桌面版等,但这些不同的版本之间往往只是开启的服务不同而已,因此,可以象桌面主题一样,自带几个典型的方案供选择,用户还可以定制(选择一个典型方案后在控制面板中进行定制)。

安装过程也没有必要象windows一样一步一步地告诉你在做什么,参考一下DOS的安装方式,DOS的安装分两步,一是复制文件到硬盘中,二是用Sys命令将硬盘设为启动盘,Linux顶多加一个选择类型(就是选择服务器版、桌面版),系统复制完文件后就会直接启动到标准的图形界面(640*480分辨率,16色),这样的硬件是每台计算机都提供的,然后再安装驱动程序。

(3)    操作系统可以直接克隆

Windows无法克隆的一个主要原因是驱动程序,Linux可以考虑将驱动程序指定到一个安装目录中(该目录可以重新定向),用户删除该目录中的所有内容后重新启动计算机就会自动要求安装新的驱动,提供一个工具或者直接删除驱动程序后,通过类似Ghost之类的工具直接复制到其他计算机上即可完成安装,不仅简化了安装,而且有了更新后重新打包也很方便,Windows也有类似的安装方法,这就是网上比较流行的纯净版,其制作方法可以到我的ftp://202.107.251.26/中去下载。

(4)    尽量让第三方参与

一个公司不是万能的,积极吸引第三方软件公司参与进来,开发诸如PQMagic、Ghost之类的系统工具。

(5)    大量特殊路径可以指定

在Windows中,桌面、我的文档、字体、开始菜单等等大量项目都对应硬盘中的一个文件夹,但部分路径是死的,无法修改,如桌面、字体等,Linux也可以参照这种方式,不过,大量的特殊路径可以重新定向。我们说Windows很容易崩溃,但在工作中我们发现,Windows出现问题往往是系统目录中的文件出了问题,其他如Progame下的东西往往没有问题,因此,我们可以将Programe、桌面、临时文件夹等个性化的东西重新定向在其他分区中,C:只保留Windows本身,这样需要备份的东西就大大减少了,既节约了备份空间又加快了备份速度。

尽快提供优秀的开发平台

有人说没有VB就没有Windows繁荣的今天,这句话虽然偏激,但也非常有道理。

各行各业的应用千差万别,目前没有一家软件公司(包括微软和IBM)敢说能提供所有行业的软件!软件公司只能做一些通用软件,如Office,一些行业软件,但购买的软件经常和实际有出入,且许多特殊行业根本就没有软件,因此,提供一个快速开发平台比提供大量软件更适用。有了开发平台,就能吸引更多的个人和开发公司参与,软件自然就丰富起来,在windows平台,开发工具非常繁多,如vb、VC、VF、Delphi、PB,以及目前炙手可热的C#,而反观Linux平台,还没有一个类似Visual Studo这样的开发平台。

在Windows平台,我喜欢VB的开发环境,delphi的丰富控件,VC的简洁语法,但VB、Delphi的语法非常讨厌,而VC简直就不是拿来搞桌面开发的,因此,梦寐以求是将三者的优点结合起来,而C#的出现刚好解决了这个问题,因此,我个人认为C#是目前一种接近完美的语言(含开发平台),C#的唯一缺点是区分大小写,这也是C系列的一个通病,如果以C#为模板设计一个不区分大小写的语言就太好了,我们面对的主要是中小企业和个人用户,Java虽然号称企业级开发工具,但不如C#易学易用,尤其是VS2005这样的开发工具,光MSDN就有3张光盘。

最后,不要碰上一个Linux本来就有的功能而用户不会的问题时,去责怪用户不好好学习,而是要反思一下为什么用户没有找到这个工具?

以上只是个人意见,请专家批评指导。

本文地址:http://com.8s8s.com/it/it23331.htm