你以前接的爱情是什么么项目啊?

SASS编译——SASS的出现让CSS变得更加有意思。至于SASS是什么?就不在做更多的阐述,因为她并不是一个新鲜的产物,现在在互联网上可谓是铺天盖地。如果你实在想知道SASS是什么?那你只要简单得知道他是CSS预处理器语言的一种。SASS在CSS的基础上做了一些扩展,使用SASS你可以使用一些简单的编程思想进来编写CSS。比如,SASS中可以定义变量、混合、嵌套以及函数等功能。只不过SASS不像CSS,可以直接运用到项目中,如果你需要将样式运用到项目中,有一个步骤是必须经过的——SASS转译成CSS。
极客标签 | 在线编程知识分享学习平台
发布于,阅读58次,收藏 0次,评论条 - 来自
SASS编译&&SASS的出现让CSS变得更加有意思。至于SASS是什么?就不在做更多的阐述,因为她并不是一个新鲜的产物,现在在互联网上可谓是铺天盖地。如果你实在想知道SASS是什么?那你只要简单得知道他是CSS预处理器语言的一种。SASS在CSS的基础上做了一些扩展,使用SASS你可以使用一些简单的编程思想进来编写CSS。比如,SASS中可以定义变量、混合、嵌套以及函数等功能。只不过SASS不像CSS,可以直接运用到项目中,如果你需要将样式运用到项目中,有一个步骤是必须经过的&&SASS转译成CSS。
的出现让CSS变得更加有意思。至于SASS是什么?就不在做更多的阐述,因为她并不是一个新鲜的产物,现在在互联网上可谓是铺天盖地。如果你实在想知道SASS是什么?那你只要简单得知道他是CSS预处理器语言的一种。
SASS 在CSS的基础上做了一些扩展,使用SASS你可以使用一些简单的编程思想进来编写CSS。比如,SASS中可以定义变量、混合、嵌套以及函数等功能。只 不过SASS不像CSS,可以直接运用到项目中,如果你需要将样式运用到项目中,有一个步骤是必须经过的&&SASS转译成CSS。
到目前为止,将SASS转译成CSS并不是件困难的事情。可以通过命令行工具或者第三方插件来完成SASS向CSS的转译工作,并且转译出来的CSS代码,格式优美,且符合CSS的标准。
SASS 发展到今天,变化非常大,功能也非常强。同时他的语法也有所改变。直到写这篇文章之时,SASS具有两种语法。新的主要语法(SASS 3)称作SCSS (Sassy CSS),同时支持CSS3的语法。也就是说只要CSS3支持的在SCSS中也被支持。SCSS文件扩展名为'.scss',这也是当下使用最多的。
第二种语法是SASS的老语法,也就是SASS。不过这种语法和新的SASS语法&&SCSS和CSS语法都略有不同。(为了区别,以后文中出新的SCSS指的是SASS的新语法,文中出现的SASS都是指SASS的老语法)。SASS也被称为缩进语法,主要依靠代码缩进来指定块,而不是使用括号和分号。如此一来,SASS也就是一种严格型语法,任何的缩进和字符错误都会造成样式的编译错误,因此使用SASS需要具备良好的编码习惯与风格。SASS文件扩展名为.sass。
SASS虽然有两种语法,但老语法同样还被继承下来,能正常使用。但在下更建议大家使用SASS时直接使用最新的语法SCSS。因为SCSS和CSS的编码风格和语法几乎可以说是一样,这样一来有助于大家更好的学习和使用SASS。
SASS的编译环境
SASS的代码无法直接运用到项目中,要像使用CSS一样,我们就必须将SASS转译成CSS,然后在项目中调用转译出来的CSS。然而转译SASS就需要有一定的生产环境配合,才能完成。这也是玩SASS必须做的第一步。
由于SASS是在环境下运行,所以大家首先需要在自己的工作电脑上。具体如何安装,此处不做过多的介绍,如果您需要安装的话,可以参阅下面的教程:
在Mac系统下,Ruby一般已内置在其中,如果您不能确认是否已安装,或者说你不知道你的Ruby使用的版本,你可以打开你的命令工具:
这样你就能获得相关信息:
#ruby 1.9.3p392( revision 39386) [x86_64-darwin12.4.0]
注:&上面信息是我电脑中显示的信息。或许在你的电脑中显示的信息将会略有不同。
如果您的系统是Windows,那么下载Ruby的一个安装文件,step by step就搞定了。
SASS的安装
确认运行SASS环境无误之后,我们就可以开始安装SASS了。SASS的安装也可以根据您自己的不同的需求进行不同的安装,其根据用户需求分成三大类安装方法。
标准稳定版安装
在大多数情况和大部分人群中,还是喜欢安装SASS的标准稳定版本,这样使用在项目中风险不会太大,其安装很简单:
$ gem install sass
有的时候在Linux和OS X系统下,可能需要超级管理员权限才能安装:
$ sudo gem install sass
安装完成后,可以通过下面的命令查看SASS是否安装成功:
$ gem list
如果您在这份list中,看到SASS的存在:
& sass (3.2.9) &
说明您已安装成功。这个时候你或能不知道SASS版本是多少,你也可以查看他的版本:
可以看到SASS版本信息:
Sass 3.2.9 (Media Mark)
Beat版本安装
对于SASS的发烧友来说,一个稳定版本并不能满足需求,他需要一些别的东西,也就是说他想获取SASS的一些最新变化和最新功能。那么这个时候你就可以安装一个Beat版本的SASS,他会自己会自动创建每次更改的主分支:
$ gem install sass --pre
从Git库中安装
SASS也可以直接从中安装:
$ git clone git:///nex3/sass.git $ cd sass $ rake install
从实际使用的角度来说,建议按第一种方法安装。Windows系统下安装SASS,可以点击。
安装SASS库
使用SASS制作东西时,我们可以借助一些成熟型的SASS库,帮助我们快速开发,提高效率。目前比较成熟的SASS库有和。接下来,简单看看这两个库怎么来安装。
安装Compass库
是一个非常成熟的SASS库,可是一个很强大的框架,使用的频率也相当的高。如果您了解了Compass,那么他将会让你受益无穷。同样的,在你的项目中使用Compass,需要先安装Compass。
$ gem install compass
通过上面一行简单的命令你就完成了对Compass的安装,你在gem对应的清单中就能看到compass的存在:
$ gem list
显示结果:
& compass (0.12.2) &
安装Bourbon库
的盘安装和Compass库的安装非常的类似,也非常简单,只需要通过gem命令在你的命令终端运行下面的命令:
$ gem install bourbon
创建你的第一个SASS项目
具备了上面的知识后,我们开始来实践自己的第一个SASS项目,在这里也将分成三个部分来介绍。
干净的SASS项目
所谓的&干净的SASS&项目指的就是不使用其他任何SASS库,简单点说,就是项目先在SASS中开发,然后转译成CSS。我们来看看这样的项目是如何创建的。
首先进入到你本地项目目录下,我的一般放在Sites中,如下所示:
$ cd Sites
这个时候就进入了项目目库中:
/Users/airen/Sites
例如我们要创建一个项目,其名称叫作&mySass&:
$ mkdir mySass
此时mySass这个项目就在/Users/airen/Sites中了,要是你不放心,你可以使用ls命令查验一下:
为了让项目规化的更完美一些,我把.scss的SASS文件都放在sass目录中,而需要转译出来的.css文件都将放在css目录中。因此,我们还需要在mySass项目中创建sass和css两个文件夹:
$ cd mySass $ mkdir sass $ mkdir css
接下来打开你的编辑器,新建一个文件,并且在里面编辑一段简单的SASS代码,如下所示:
$main-color: #ce4dd6; $style: navbar { border-bottom: { color: $main- style: $ } } a { color: $main- &:hover { border-bottom: 1px $ } }
并且将此文件命名为style.scss保存在mySass/sass下。
Compass创建SASS项目
上面简单的介绍了一个净身的SASS项目,简单就不用说了。接下来我们一起看看如何通过Compass来创建一个SASS项目。
同样打开你的命令终端,并且进入到Sites目录下。例如我们要创建一个compassSass的项目放在Sites目录下,我们就可以这样做:
$ compass create compassSass
这句命令一完,你的终端中会出现很多信息,首先会告诉你创建了一个compassSass项目,并且自动在这个项目中创建了哪些文件:
+compassSass |--+sass |-----screen.scss |-----print.scss |-----ie.scss |--+stylesheets |-----ie.css |-----print.css |-----screen.css |---config.rb
除了创建了相关文件之外,还会告诉你一些其他的信息。其中有一个config.rb文件非常重要,其主要是用来配置Compass创建的项目运行环境。所以在修改这个配置文件的时候,大家需要小心处理。
# Require any additional compass plugins here.
# Set this to the root of your project when deployed:
http_path = "/"
css_dir = "stylesheets"
sass_dir = "sass"
images_dir = "images"
javascripts_dir = "javascripts"
# You can select your preferred output style here (can be overridden via the command line):
# output_style = :expanded or :nested or :compact or :compressed
# To enable relative paths to assets via compass helper functions. Uncomment:
# relative_assets = true
# To disable debugging comments that display the original location of your selectors. Uncomment:
# line_comments = false
# If you prefer the indented syntax, you might want to regenerate this
# project again passing --syntax sass, or you can uncomment this:
# preferred_syntax = :sass
# and then run:
# sass-convert -R --from scss --to sass sass scss && rm -rf sass && mv scss sass
这样你就可以在sass目录中创建你需要的.scss文件,你也可以直接在screen.scss文件中编辑SASS代码。例如此处,将上例中style.scss的SASS代码放置在screen.scss中。
/* Welcome to Compass. * In this file you should write your main styles. (or centralize your imports) * Import this file using the following HTML or equivalent: * &link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet" type="text/css" /& */ @import "compass/reset"; $main-color: #ce4dd6; $style: .navbar { border-bottom: { color: $main- style: $ } } a { color: $main- &:hover { border-bottom: 1px $ } }
在Compass创建的项目中,会自动通过@import导入样式
@import "compass/reset";
另外,如果你不想使用SCSS,只想着旧人,不爱新欢,那么你可以在后面添加一个参数-x sass:
$ compass create compassSass -x sass
Bourbon创建SASS项目
创建SASS项目和前者都略有不同。他创建SASS项目的思路是,先在对应的目录下创建好项目,然后在把bourbon导入到对应的项目中。
例如此处我们创建了一个bourbonSass项目,同样将此项目放置在Sites目录下,那么我们可以这样来操作:
$ cd ~/Sites $ mkdir bourbonSass $ cd bourbonSass
接下为需要做的是将bourbon库插入到bourbonSass库中:
$ bourbon install
这样一来,bourbon库自动会在你的项目bourbonSass中插入一个文件目录bourbon,在这个目录中放置了bourbon库的一些变量。建议大家在使用的时候不要轻意去修改bourbon目录中的变量文件,因为这样你可以随时的更新这个库:
$ bourbon update
为了能更好的管理您自己的SASS文件以及转译出来的CSS文件,我建议您在bourbonSass项目中在创建sass和css目录,用来放置您自己的.scss文件,以及转译出来的.css文件:
$ mkdir sass $ mkdir css
这个时候,你就可以在sass目录中创建一个你自己需要的.scss文件,比如screen.scss。
这样一来,你就可以直接引用bourbon中的一些变量:
@import "bourbon/_bourbon.scss";
你要是不想引用bourbon库中的变量文件,你也可以将自己的SASS样式写到这个文件中。
@import "bourbon/_bourbon.scss"; $main-color: #ce4dd6; $style: .navbar { border-bottom: { color: $main- style: $ } } a { color: $main- &:hover { border-bottom: 1px $ } }
SASS文件转译
上面花了点篇幅,大家知道了如何创建一个SASS的项目,而且项目中都建立了自己需要的.scss文件。可是大家都懂的,SASS只能在Ruby下运行,无法直接引用到项目中,所以要使用SASS给大家带来便利的开发,就必须知道如何将.scss文件转译成.css文件。
接下来,我们依旧针对前面三种方法,对应的了解一下,如何将.scss转译成.css。
普通SASS的转译方法
首先来看第一种,我把这种转译方法称为普通转译方法,也是就要针对没有嵌入任何第三方SASS库创建的项目。
转译.scss文件,我们主要使用的是sass命令。其操作非常简单,首先进入到对应的项目中,比如这里,先要进入mySass项目中:
$ cd ~/Sites/mySass
然后输入转译命令:
$ sass sass/style.scss css/style.css
这样一来,我们把sass/style.scss转译出来的style.css放入了css目录之下。为以验证,我们有没有转译成功,我们可以进入css目录,查看有没有style.css样式文件,并且查看转译出来的css样式:
$ vi css/style.css
注:我们当前所在的位置是Sites/mySass下。
转译出来的CSS样式为:
.navbar { border-bottom-color: #ce4dd6; border-bottom-style: } a { color: #ce4dd6; } a:hover { border-bottom: 1 }
使用sass转译.scss文件,有一个不足之处,就是我们修改了.scss文件,不会自动转译。这样一来,我们要时时查看转译出来的CSS样式就非常的蛋疼。那么有没有一个比较好的方法吗?有的,我们只需要在sass命令的基础上添加一个参数--watch就可以。
为了验证这样的说法,我们先把刚才转译出来的style.css删除,然后通过sass --watch命令重新转译一回:
$ sass --watch sass/style.scss
这样一来,你可以看到提示:
&&& Sass is watching for changes. Press Ctrl-C to stop. overwrite sass/style.css
sass/style.scss 转译到sass/style.css下,并没有转到css目录中,这是他不足的一处。转译出来的在不在css目录下,我想你并不会太在意(大不了到时 copy一下),而关心的是,他是不是如前面所说的,可以时间监控转译.scss文件。为了验证这个功能是有效的,我们来修改一下style.scss文 件:
$main-color: #ce4dd6; $style: $font-size: 2//新增加的sass样式代码 .navbar { border-bottom: { color: $main- style: $} } a { color: $main- font-size: $font-//新增加的sass样式代码 &:hover { border-bottom: 1px $ } }
此时我们,不在命令终端敲转译命令了,如果你没有忘记的话,刚才我们开启了时时监控功能,我们来先看一下命令终端的变化吧:
&&& Sass is watching for changes. Press Ctrl-C to stop. overwrite sass/style.css &&& Change detected to: /Users/airen/Sites/mySass/sass/style.scss overwrite sass/style.css
明显看出终端的变化,那么看看style.css是否有变化:
.navbar { border-bottom-color: #ce4dd6; border-bottom-style: } a { color: #ce4dd6;&font-size: 2/*转译出来的新样式代码*/ } a:hover { border-bottom: 1 }
我想不用我说了吧,事实证明一切。这个时候如果你想停止这样的时时监控转译,你只需要在命令终端输入Ctrl -C即可。
虽 然sass和sass --watch都达到我们转译.scss文件功能,但在实际项目中,我们的项目中不可能只存有一个.scss文件。所以我们需要一种方法,可以同时将多 个.scss文件转译成.css文件。其实在SASS中,可以直接将整个目录中的所有.scss文件转译成所有的.css文件,并放到另一个CSS目录 中,其命令如下所示:
$ sass --watch sass/:css/
这样一来,只要是sass中所有的.scss文件都可以转译成.css文件,并且都放在了css目录中。
特别强调:如果使用sass --watch转译.scss样式,首先需要安装rb-fsevent,如果没有安装就执行sass --watch将无法执行时时监控.scss转译成.css。例如,在没有安装rb-fsevent时执行下面的转译命令:
$ sass --watch test.scss:test.css
命令终端将会提出报警信息:
&&& Sass is watching for changes. Press Ctrl-C to stop. overwrite test.css Missing dependency 'rb-fsevent' (version '~& 0.9')! Please run the following to satisfy the dependency: gem install --version '~& 0.9' rb-fsevent For a better performance, it's recommended that you satisfy the missing dependency. Listen will be polling changes. Learn more at /guard/listen#polling-fallback.
为了能让sass --watch命令运行正常,也就是时时能监控,只需要安装rb-fsevent即可:
$ gem install --version `~&0.9` rb-fsevent
这个时候将在执行:
$ sass --watch test.scss:test.css
不会出现任何问题。
转译Compass创建的SASS项目
Compass库创建的SASS项目与没有用任何SASS库创建的SASS项目略有不同,那么其转译SASS的方法也是有所不同。接下来我们一起来看看Compass创建的SASS项目应该如何转译。
Compass库创建的SASS项目,转译方法并不复杂。首先我们需要先进入Compass库创建的项目内,例如我们此例,先进入compassSass项目:
$ cd ~/Sites/compassSass
然后通过下面命令可以将项目中sass目录下所有的.scss文件转译成.css文件,并放置在stylesheets目录下:
$ compass watch
此时命令终端,会显示转译的相关信息:
&&& Change detected at 23:35:12 to: screen.scss overwrite stylesheets/screen.css &&& Compass is watching for changes. Press Ctrl-C to Stop.
同样,如果你想停止sass目录下的.scss文件时时转译,只需要在终端中输入Ctrl -C即可。
转译出来的样式如下:
/* line 11, ../sass/screen.scss */ .navbar { border-bottom-color: #ce4dd6; border-bottom-style: } /* line 18, ../sass/screen.scss */ a { color: #ce4dd6; } /* line 20, ../sass/screen.scss */ a:hover { border-bottom: 1 }
如果你修改了screen.scss中的样式,会自动转译出相应的样式:
$main-color: #ce4dd6; $style: $font-size: 2//添加的scss样式 .navbar { border-bottom: { color: $main- style: $ } } a { color: $main- font-size: $font-//添加scss样式 &:hover { border-bottom: 1px $ } }
当你保存了修改的screen.scss文件后,命令终端会自动监控到,并做出相应的变化:
&&& Change detected at 23:45:35 to: screen.scss overwrite stylesheets/screen.css
同时转译出来的样式也会做相应的变化:
/* line 12, ../sass/screen.scss */ .navbar { border-bottom-color: #ce4dd6; border-bottom-style:} /* line 19, ../sass/screen.scss*/ a { color: #ce4dd6; font-size: 2/*转译后样式*/ } /* line 22, ../sass/screen.scss */ a:hover { border-bottom: 1 }
而使用bourbon库创建的SASS项目,将.scss样式转译成.css样式,和普通SASS项目转译样式的方法一致。
CSS转译成SASS
既然.scss能通过sass命令转译成.css样式,那么我们是否可以将.css转译成.scss呢?事实是可以的,我们可以通过sass-convert命令:
$ sass-convert css/style.css style.scss
sass-convert除了可以将.css样式转译成.scss文件之外,还可以通过这个命令对.sass和.scss之间样式转译。
sass命令使用
通过sass命令,我们可以完成.scss和.css之间转译,为了能更好的了解sass命令,大家需要对sass命令做一个全面的了解,如果你对sass命令并不熟悉,可以在命令终端输入:
$ sass -help
这样就会列出所有sass命令所有参数的使用规则。
sass命令语法非常简单:
sass [options] [input] [output]
sass命令功能
sass命令主要功能是将scss或者sass文件转译成css文件。
sass命令中[options]参数
sass命令中的[options]参数就要包括:
-s, --stdin Read input from standard input instead of an input file --trace Show a full traceback on error --unix-newlines Use Unix-style newlines in written files. --scss Use the CSS-superset SCSS syntax. --watch Watch files or directories for changes. The location of the generated CSS can be set using a colon: sass --watch input.sass:output.css sass --watch input-dir:output-dir --update Compile files or directories to CSS. Locations are set like --watch. --stop-on-error If a file fails to compile, exit immediately. Only meaningful for --watch and --update. --poll Check for file changes manually, rather than relying on the OS. Only meaningful for --watch. -f, --force Recompile all Sass files, even if the CSS file is newer. Only meaningful for --update. -c, --check Just check syntax, don't evaluate. -t, --style NAME Output style. Can be nested (default), compact, compressed, or expanded. --precision NUMBER_OF_DIGITS How many digits of precision to use when outputting decimal numbers. Defaults to 3. -q, --quiet Silence warnings and status messages during compilation. --compass Make Compass imports available and load project configuration. -g, --debug-info Emit extra information in the generated CSS that can be used by the FireSass Firebug plugin. -l, --line-numbers Emit comments in the generated CSS indicating the corresponding source line. --line-comments -i, --interactive Run an interactive SassScript shell. -I, --load-path PATH Add a sass import path. -r, --require LIB Require a Ruby library before running Sass. --cache-location PATH The path to put cached Sass files. Defaults to .sass-cache. -C, --no-cache Don't cache to sassc files. -E encoding Specify the default encoding for Sass files. -?, -h, --help Show this message -v, --version Print version
SASS转译工具
除了使用sass命令来转译SASS文件之外,还可以借助第三方工具完成,目前世面上较为流行的转译工具主要有:
本 文主要介绍了SASS在实际使用中如何配置SASS环境以及SASS文件的转译方式。完成了使用SASS编译项目的第一步。具备这些基础知识之后,我们就 可以深入学习SASS的基本知识。并且深入的学习SASS和使用SASS来制作自己喜欢的项目。希望这篇文章对大家学习和运用SASS有所帮助。如果您有 更好见解和学习方法,欢迎在下面的评论中积极讨论。(^_^)
如需转载,烦请注明出处:
久居上海,从事 Web 前端工作,关注移动端、CSS3等最新技术
极客主页:
新浪微博:
已上传的图片列表:
尚未上传任何图片...
在线调试地址范例
例如:/gb/debug/bc4a78a6--b7cb-649ce1bda104.htm
以后再转发,立刻下载!怎么接计算机外包项目_百度知道
怎么接计算机外包项目
不知道怎么接怎么做
随着信息化的逐步深入,无论是企业、政府还是个人,对软件的依赖已经到了必不可少的地步。现在有越来越多的人认识到了软件在日常经营管理中的重要作用,因此外包的软件项目也在不断增长。但随之而来的,承接外包的软件公司、软件团队也越来越多,包括很多个人SOHO一族也加入到承接软件的竞争行列中来了,因此现在对于软件项目的争夺也很激烈。还有很多人甚至不知道上哪里去争取项目,总是抱怨没有项目做;也有的人虽然编程技术不错,但是对于与客户谈项目却是一窍不通,结果应该拿到的项目也拿不到手;也有的虽然已经接到了项目,却发现在实施开发的时候遇到好多从来没有遇到过的问题。作为一个多年从事外包项目接单的软件开发人士,我想从以下几方面谈谈我的经验,希望对大家会有所帮助。第一点,到哪里接项目
软件团队或SOHO最为关心的一点是在哪里可以找到项目做,也就是到哪里可以找到有外包需求的客户。对于一般人来说,广交朋友然后通过熟人介绍还是接项目的第一途径,但这要求你的朋友或熟人要在企业或公司里有比效重要的管理位置,对于像那些每天只能是埋头写代码的程序员这显然是不太现实的。所以大家不能等着项目来找你,而是要主动的出击去找项目。
现在网上有很多软件外包网站,在这里你可以找到不少的软件外包信息。比如软件商务网上就有大量的软件外包信息。不过这里每天外包的项目虽然很多,但竞争也很激烈。一般一个外包信息发出后一天内就会有无数个竞争者,所以能第一时间与客户取得联系是非常关键的。因为客户一般都是先入为主的,一般来说,如果第一个谈项目的人他觉得满意了,就会对其他的竞争者不再予以考虑,所以你要经常上网站上看看有什么最新的项目,并立即与项目的发包方取得直接的联系。其他比如软件外包网、维客网、中国软件网,还有CSDN的外包频道上也有很多外包的信息,大家可以自己上去看看。第二点,如何与客户谈需求
接项目最重要的一步是与客户谈需求。客户对软件的需求是项目规划和实施的根本,所以在与客户谈需求时,一定要让用户将所有的想法尽可能的阐述清楚,并把所有的要求罗列出来。这时候不应该害怕“勾引”起客户的潜在需求而增加设计开发的工作量。而应该直接明白地要客户把项目的要求一条条地列出来。这时先把条理、归纳、分析先都扔到一边去,用纸笔将用户最原始、最完整的要求准确地记录下来。假如项目在你对客户的需求没有完全了解清楚的情况下就匆匆上马,那么就会随时发生意想不到的变更,轻则使项目延期或超出预算,重则使得原来已经做好的软件要彻底推倒重来。
所以我们在实施项目之前应该深入了解和挖掘客户需求,对某些不明确的需求要与发包方反复进行讨论,对于项目实施过程中的需求变更要规定处理办法,并形成项目的最终需求。在需求分析阶段,接包方首先对发包方的需求认真分析,然后通过业务建模、会谈、问卷、需求会议等方式收集客户完整需求,形成文档,然后经过客户讨论、客户审查、文档修订等多次反复的过程。有一点需要注意,即使双方谈的很投缘,在讨论需求时也一定要详细周到,精确到每一条不能再划分的软件功能为止。第三点,如何合理地报价 在完全了解客户的需求后,下一步就是要确定一个合理的报价。接包方要从跟客户的交谈中尽量地了解出客户的准确意思,思考客户想要的是怎样的一个软件,项目复杂的程度多大,客户的要求有多高,客户的性格如何,能够接受的价格范围等等,这些因素对于软件项目的报价都是密切相关的。
在很多的情况下,客户在跟接包方谈项目之前,心理都已经有一个价格底线。如果要投入的费用超过了客户的预算范围,客户将不再与你谈该项目,他会转而找其它软件团队商谈。所以跟客户谈项目的过程中要迅速地思考客户需求的真正含义,能够通过某种转换和变通,把客户对于技术的要求与自己团队的技术力量可以接受的价格相对比,从而得出一个双方都能接受的报价。在与客户的谈判当中,灵活变通是成功的关键之一。当然并不是所有的客户都可以通过变通而满足,遇到客户不认同项目费用的情况一定要处之泰然,真诚地为客户解释,把客户的需求细化为技术上的要求给他分析,让他同意你的报价的合理性。即使客户对编程技术不是很了解,但经过你的细致的分析后也会对你的报价表示认同的。第四点,如何组织团队
由于客户的需求是不同的,因而项目也是各种各样的。有网站设计项目、也有软件设计项目,要求使用的编程语言也是多种多样的。即使是在一个项目中,比如说网站制作的项目中,也有着前台的美工设计和后台程序的编写的分工。这些工作如果全部交给一个人去作那是绝对完成不了的。即使是一个小的团队,也不能保证所有的人才都齐备。因此最好就是自己把项目初步设计好,然后找合作伙伴共同开发,自己总体掌握整个项目的全部进度。如果在身边没有好的合作伙伴的话,网上也能找到不少可以合作的伙伴。
这里推荐各地的软件技术QQ群,大家可以在群里找到各方面的编程高手来分工做项目。(北京
上海 深圳 广州珠海 杭州 福州 南京 武汉
成都 重庆 沈阳 大连南昌
长沙 济南 天津 西安 海口 昆明 石家庄 合肥 南宁
哈尔滨 苏州 长春 宁波 太原
青岛3630711 贵阳)第五点,如何能收到项目款
这是整个项目中最后也是最难的一个环节。即使你的项目做得再好,如果没有收到款,那你前面的一切努力都等于是零。要想项目能顺利地收到款项,那么从项目未开始之前的谈判阶段就要对这一点加以注意。首先要判断对方是否是真心外包项目。这里有几点经验拿来给大家分享一下:如果你看到项目中说 “请提供完整的解决方案和成功案例发到某某邮箱”,这应该只是想套取设计方案而已,发几张你们公司或团队的推介广告和报价单给他即可。还有的客户张口就要源码要设计文档设计方案的,这种人目的性太强了,如果你真给了他就再也不理你啦。还有的外包方死活不肯介绍自己,不肯告诉自己是谁、怎么称呼、怎么联系、是什么公司、做什么业务的,与这种连最基本的诚信都没有的客户就根本没有必要谈下去。其次是判断对方是否有充足的资金和实力,项目要求是否合理(技术、周期等各方面)。这个可以在需求的谈判中可以有意识地来加以探明,如果对方的项目很大却老是强调项目非常简单,这应该是不想付足项目款;有的发包方坚持不肯给预付款,老是要求项目完成后再交全部款项,这应该是没有诚心付款。还有的项目要30天才能完成却只给几天的开发时间,这种项目外包方也是很值得怀疑的。
对于软件团队或个人SOHO族来说,由于不是公司,对方对于我们的信任度不会很高,所以对于大的项目一定要采用合同方式,这样出现问题才好解决。在合同中,最好订清楚分阶段来付款,这样有利于分散风险。比如,一般要求合同订好后先交30%的定金,项目进行到一半后待客户验证后交50%的项目款,全部项目完成并交付后再交清全部款项。这样做对于客户来说也比较好控制项目的进度,因此对方也比较容易认同并接受。
在实际外包活动中,我也发现有某些人大的项目做不来,小的项目嫌钱少又不愿做,结果到头来什么项目都承接不到。因此一开始要把自己的期望值放低一些,先从一些几百元的小项目做起,有了一定经验后再接一些大项目,这样循序见进才能不断进步;还有就是,你平常就要把以前做过的项目作为案例整理出来,以便随时给客户查看。实践证明,有时说服客户选择你的最好的方法就是给他看你以前做过的项目。以上简单谈了一下在承接软件项目时应该注意的几个关键点,其实还有很多问题由于文章的篇幅所限没有涉及。总之只要大家在外包的实践中不断总结经验教训,就能在激烈的外包竞争中取得领先的地位。
其他类似问题
外包的相关知识
按默认排序
其他1条回答
额。有说明书啊
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁}

我要回帖

更多关于 爱情是什么 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信