本文来自微信公众号“给产品经理讲技术”(pm_teacher),欢迎关注。

做为一名产品经理,你是否遇到过这样的窘境,“帮我把字体调成16号呗,颜色变成#FFFF00FF,老大说这里最好改一下”,作为一名app的开发只能无奈但心里窃喜的告诉你,“只能等下个版本了,必须要重新发布才能改”,如果你问为什么不能改了就生效啊,那说明你对技术的理解要么真的很差,要么你就是知道这项React-Native新技术所爆发出来的力量。

React Native是Facebook推出的一个用JavaScript语言就能同时编写ios,android,以及后台的一项技术,今年9月发布了android版本,又在程序员里面掀起了一波小高潮,不断有喜欢尝鲜的程序员投入到这个领域。

用大白话说,就是从此一名程序员自己就可以创业了,他只用这一门技术,就可以同时写出androidapp,ios app,以及后台应用程序,并且,请注意这里,它可以做到实时热更新(就像网页一样,改了一个字体,随时可上线),app也能做到随时都能更新了,第一段讲的那个需求可以分分钟秒杀解决,不用新发版本,只需在服务器改动一下代码即可,是不是很牛逼,是不是很牛逼,是不是很牛逼,真的很牛逼。

到这里,你只需要理解一句话,就是Facebook提供了一套解决方案,它利用JavaScript作为开发语言,可以同时来编写前端,移动终端,后台应用程序。

我们再来讲讲,为什么React Native受到了如此大的关注,以及它的优越性到底在什么地方。

目前,一个成熟的互联网产品基本囊括了:移动终端和网页两种主要形态。在移动终端app和网页的开发历程中,涉及了很多技术角色:前端开发(俗名叫做网站的),移动终端开发(android和ios开发,现在满大街都是),后台开发(他们的程序大多没有界面,主要是为网页和app提供数据和保障服务的稳定性),每个角色各司其职,分别需要不同的技能,比如前端开发需要精通html,css,javascript这些基本的web语言知识。Android开发用Java(这个词读“扎瓦”,别读成了“加瓦”,读成这样很Low B的)语言编写,ios开发用Objective-c(把他想象成当年过计算机二级的那个C语言就可以了)编写。后台开发,有的公司用Java,有的公司用C++,用啥的都有,能满足性能需要就可以了。

已经看崩溃了吧,对于一个非计算机专业的人,根本不会理解他妈的为什么要存在这么多语言,为什么这里要用C语言,那里要用C++,有的地方要用Python,而又有很大的一个人群对你高呼:“PHP才是世界最好的语言”。其实他们每种语言都有不同的使用场景,有的语言效率高,有的语言语法更简洁漂亮,有的是专为后台而生,有的是特定场景下的唯一选择。如果你还听不懂,我们就用大白话做个比喻,为什么避孕套有的是螺纹的,有的是颗粒的,有的是延时的,有的是超薄的,还有一个品牌号称一只手就可以打开的,它们也都是依据个人身体状态,以及不同场景分别发挥各自的强项。你随便类比,任何一个领域,都有很多不同的工具来满足不同的场景,是需求决定了当前状态。

现在好了,React整套解决方案完成了江湖统一,FaceBook也号称这们技术是“Learn Once,Write AnyWhere”,学习成本只有一次,却完成了所有开发角色的统一。

这意味着:

  1. app将来都是可像网页一样热更新,随时发布。
  2. 对于一名开发人员,将再也没有前端,终端,后台的区分,他所关注的就是做一整套应用程序,人力将得到最大幅度的整合与释放。
  3. 代码复用将会是主旋律,因为是一种语言,大家重复造轮子的成本会越来越节省。

目前,React Native也还是有一些缺点的,比如他的sdk组件包size还比较大,crash还比较多,在ios上支持的内容已经相当不错,android还属于初级阶段,但是目前最新的版本也才是0.16,相信再过一年, 一定会牛逼闪闪。

Attention !! 36 氪正在招募全职创业公司作者,如果你对报道互联网创业感兴趣,充满好奇心,善于发现新事物,又能沉心做行业研究,恰好又对教育、社交、农业、大公司其中一个方向了如指掌,那么你就是我们想要的人 !!快把简历投至:zhaopin@36kr.com

转:http://36kr.com/coop/toutiao/5041233.html

ZD至顶网CIO与应用频道 12月24日 专栏:如果没有网络的存在,你的企业——无论是小型、中型还是大型——就会消失无踪。但是,你可能已经知道这一点。只是你不知道从哪里开始,或者如何搭建你所需要的网络。大多数了解网络存在想法的人,假设他们必须深入研究神秘的编码语言来搭建自己的网站。所幸的是,事实并非如此:现在有大量工具可以帮你完成这个工作。

在我谈及这些工具之前,我要指出的是,是的,有很多网络服务可以帮你搭建网站。但是如果你可以选择有信誉的开发者或者服务,而且可以承担得起,那么这可能是你最好的选择。但是,如果你承担不起,而且你就有时间搭建一个属于你自己的网站,那么下面这5款工具可以很好地帮助你为企业轻松搭建一个网站。

有一个例外,这些工具都是可以托管在你自己服务器或者在第三方服务器上的主干框架。有些托管服务甚至提供了像Softaculous这样的工具,只需点击几下就可以安装这个框架。

1、WordPress

WordPress(如图A)是到目前为止全球最流行的博客平台。但是你知道有很多扩展插件和主题是可供使用的,让你可以将这个博客平台转变为一个业务就绪的营销或者电子商务工具吗?你会对它能够如此轻松地从原来一款简单的博客工具变身为完整的、业务就绪的网站而感到惊讶。更妙的是,WordPress让你可以非常轻松地搭建和管理你的网站。

5款免费工具轻松帮助企业搭建网站

图A

这真正是为用户各个层面准备的工具。甚至管理网站的各种设置都变得很简单。如果你可以发博客,你就可以搭建一个网站,相当简单。WordPress是开源的,所以代码可对外使用,你可以免费获得。

2、Drupal

Drupal(如图B)是用于管理Wordpress播客的内容的。但是不要认为你用Drupal只能搭建一个CMS。用这款简单的工具,你可以搭建后端办公和前端商店。在你深入了解Drupal之前,你需要知道会花费比Wordpress多一些的时间,你需要投入更多的时间和规划流程。结果对于你的企业来说将是强有力的连环出击。

5款免费工具轻松帮助企业搭建网站

图B

Drupal最好的一点是,你最后不仅可以得到一个强大的、灵活的网站,而且你的网站还包括高度可用的内容管理系统,有助于提升你的工作流。Drupal是一款开源工具,可以免费下载、安装和使用。

3、Joomla

Joomla(如图C)之于Drupal就像是Drupal之于Wordpress……适合于那些想要在线上有强大亮相的业务。Joomla让你可以为你的商店搭建一个后端和前端,它还包括嵌入式的banner管理——这样你就可以轻松地向网站中添加广告了。你还可以进行联系人管理、版本控制、联合,等等。

5款免费工具轻松帮助企业搭建网站

图C

如果你想要添加功能,Joomla拥有超过8000项的扩展库,所以你一定会找到你需要的。这款工具要求的技能要比Drupal多一些,但仍然是可以做到的。Joomla是开源的,可以免费安装。

4、XOOPS

XOOPS(图D)开始涉足到挑战普通用户的领域,因为它要求大量工作来搭建一个有用的企业网站。但是最后,你会得到一个包含了你想要的功能的网站。

5款免费工具轻松帮助企业搭建网站

图D

XOOPS还提供了扩展网站的功能,借助可安装模块。目前只有3个模块可以安装(私人邮件、用户配置文件以及保护器)。如果你想要更多,可以去XOOPS模块库找一找,看看有没有你需要的。XOOPS也是开源的,可以免费下载和安装。

5、Bluefish

Bluefish(如图E)是我们从预制框架出发、实际上潜入编码的地方。这个跨平台HTML编辑器还支持很多高级网络编程功能。真正美妙的地方是,Bluefish是全功能的,不会像竞争对手那样缓慢或者资源密集型的。

5款免费工具轻松帮助企业搭建网站

图E

Bluefish还提供了多线程支持、多文档支持(可以打开500多个文档)、强大的搜索、项目支持、片段侧边栏、无限次的撤销/重做、拼写检查、语法高亮和缩进、自定义编程语言支持,等等。Bluefish是开源的,可以免费安装和使用。

转:http://toutiao.com/i6231670363349058050/

HTML5使得设计师和开发者在各个不同领域都比之前更强大了。快速,漂亮,安全,响应式,这些特性使使得设计师和开发者可以创造出更加强大更富有创意、更快速、性能优异的APP和网页。所以,接下来我所推荐的工具就是帮你搞定这些问题的。

简约的响应式图表 – CHARTIST.JS

十二个<b class=HTML5/CSS3/JS便捷工具" />

由于社区对于图表类JS库的失望,Chartist.js 诞生了。尽管有上百种不同的库可供你选择,但是用它们的时候,你总会碰到意想不到的问题,需要不停调整。

FSVS – 全屏垂直滑块

十二个<b class=HTML5/CSS3/JS便捷工具" />

这是使用jQuery和CSS3写的一个简约全屏垂直滑块组件,支持鼠标混动、点击并托拽,以及触摸手势。

Nikolay Talanoy 设计的的全屏滑块控件

十二个<b class=HTML5/CSS3/JS便捷工具" />

组件本身的设计令人惊艳,更重要的是它还拥有不错的动效。

Cody House 设计的大图滑块控件

十二个<b class=HTML5/CSS3/JS便捷工具" />

这是一个横跨屏幕响应式且易于定制的滑块控件

Elevator.js

十二个<b class=HTML5/CSS3/JS便捷工具" />

Elevator.js 修正了老范儿的回到顶部按钮的效果,如果你非常在意这个细节的设计不妨来试试这个吧。

Pure CSS Questionnaire Concept (hover items)

十二个<b class=HTML5/CSS3/JS便捷工具" />

固定背景特效

十二个<b class=HTML5/CSS3/JS便捷工具" />

这是一个不错的模板,充分利用了background-attachment 的CSS属性来创造固定背景的效果。

使用SVG创造模糊效果

十二个<b class=HTML5/CSS3/JS便捷工具" />

这是一个教程,教你如何借助JS和SVG模糊滤镜在HTML元素上创造模糊效果。

3D 折叠面板

十二个<b class=HTML5/CSS3/JS便捷工具" />

使用jQuery和CSS创造出折叠控制面板的效果,隐藏次要内容。

圆形弹出式导航菜单

十二个<b class=HTML5/CSS3/JS便捷工具" />

使用SASS和CSS3营造出来的过度、变换的动画效果,点击图表,弹出更多选项。

登录框概念设计

十二个<b class=HTML5/CSS3/JS便捷工具" />

交互式托拽色彩概念设计

十二个<b class=HTML5/CSS3/JS便捷工具" />

这是一个颇为好玩的插件,当你在处理网站视觉稿的时候,只需要将色彩腿拽到对应的地方就可以实现着色。

十二个<b class=HTML5/CSS3/JS便捷工具" />

想认识志同道合的朋友一起学习web

加入我们的学习QQ群 190166743

丰富的学习资源,周一到周四免费直播公开课

转:http://toutiao.com/i6231038143353586178/

jQuery EasyUI最新试用版免费下载>

jQuery EasyUI致力于帮助web开发者更轻松的打造出功能丰富并且美观的UI界面。jQuery EasyUI提供了基于当下流行的jQuery core和HTML5的控件,助您打造适合当今网络的应用程序。

基本面板

本示例主要介绍一些基本的面板,面板是其他组件或元件的容器。【另附源代码供大家参考】

面板工具

本示例主要介绍面板工具,点击右上角的按钮来执行面板操作。【另附源代码供大家参考】

自定义面板工具

本示例主要介绍如何自定义面板工具,点击右上角的按钮来执行面板操作。另附源代码供大家参考】

面板页脚

本示例主要介绍面板的页脚,面板页脚显示在面板的底部,同时它还可以包括其他任何组件。【另附源代码供大家参考】

加载面板内容

本示例主要介绍如何加载面板内容,点击面板右上角的刷新按钮来加载内容。【另附源代码供大家参考】

嵌套式面板

本示例主要介绍嵌套式面板,该面板可被放置在容器中,同时还可以包含其他组件。【另附源代码供大家参考】

流体面板

这个示例主要展示了如何将一个面板的宽度设置为其父容器的百分比。【另附源代码供大家参考】

购买最新正版授权!"咨询在线客服"

2015岁末扫尾之战!全球厂商携手放利!

本站文章除注明转载外,均为本站原创或翻译

 

转:http://toutiao.com/i6230846543017017857/

下面,我列出了一些资源比较丰富的代码编辑器和IDEs,在开发复杂的程序的过程中,它们可以帮助你节省大量的时间。它们拥有所有的支持工具和强大的功能,能让你在开发过程中保持灵活和高效。

Codelite是一个开源并且免费的跨平台集成开发环境,它支持C/C++编程语言。它对于任何新手程序员来说都是非常好的工具,并且在轻量级的项目中被高度推崇。这个功能丰富的IDE有一个非常直观的界面和一些动态工具,同时它还能很好地兼容很多浏览器。

开发者必备的10个免费IDE和代码编辑器

Bluefish是一个灵活的开源编辑器。它拥有很多非常好的功能,可以让编辑过程更加轻松和快捷。它简单易用,并提供了许多的功能来编写和编辑自己的源代码,以创建高质量的Web项目。Bluefish也包含一些额外的程序和片段作为扩展。它作为一个开源项目,还有一些更好的机会可以增加扩展性的功能。

开发者必备的10个免费IDE和代码编辑器

Java Inventor是一个高性能的Java IDE,能让Java应用程序的开发和部署更加容易。它的产生就是为了减少Java程序员的开发时间。他是一个RAD工具能让你创建表格,管理数据,报告等。IDE部分能对你的应用程序的整体外观和感觉进行改造。

开发者必备的10个免费IDE和代码编辑器

你可以测试你的JavaScript代码的可靠性并看到它的实际运行情况。JS Bin是一个交互的IDE,可以让开发者创建和分享他们的工作,这样误差就可以及时地被检测到并解决。它还能让你在输出之前进行预览,并用于进一步的编辑和分享。它是完全免费的,还拥有许多功能,可以帮助你简化你的开发流程。

开发者必备的10个免费IDE和代码编辑器

Komodo IDE是一个跨平台的集成开发环境,支持所有的主要编程语言,能让你的开发工作快速完成。它拥有一个智能的代码编辑器,会帮助你编写出高质量的代码。它还提供了一种支持Python 2.4-3.3版本的多线程自动调试器。

开发者必备的10个免费IDE和代码编辑器

jEdit是一个非常先进的文本编辑器,用于编写Java程序,同时还能兼容所有主要的浏览器。它具有一个内置的宏语言和易于扩展的插件设计,可以直接从jEdit的插件管理器直接下载并安装。它也很容易定制,对于新手和有经验的开发人员来说都是非常适合的。

开发者必备的10个免费IDE和代码编辑器

Aptana是一个专业的开源工具,专门用于开发Web应用程序。Aptana主要是针对Javascript的开发。它也支持多种编程语言,能实现对CSS,HTML,JavaScript的全面支持。对于那些开发PHP和Ruby的开发者来说,Aptana也是一个非常好的选择。

开发者必备的10个免费IDE和代码编辑器

Code::Blocks是一个免费的支持 C/C++编程的开源集成开发环境。它可以在所有主要的平台上无缝运行,并且是高度可定制的和可配置的。它使用插件框架建立,可以通过安装一些功能性的插件进行扩展。它还带有一个插件向导,这样您就可以创建自己的插件。Code::Blocks是绝对通用的并能很好地用于建设您的项目。

开发者必备的10个免费IDE和代码编辑器

DrJava对于初学者来说是非常简单的并且功能比较齐全。它是免费的开源集成开发环境,主要针对那些开发领域的初学者。它还包括一些强大和神奇的功能,使得这个IDE也成为了高级开发人员的首选。DrJava还提供了多平台的支持功能,带有一个直观的界面,让开发过程变得简单快速。

开发者必备的10个免费IDE和代码编辑器

Coda是一个富文本编辑器,可以让你为Web项目创建简洁,快速和高效的代码。使用Coda你还能进行预览并根据需要作出适当的调整。此外,Coda也会给你一个完美的方式来管理你的本地和远程文件。

开发者必备的10个免费IDE和代码编辑器

本文翻译自:www.k2ice.com

本站文章除注明转载外,均为本站原创或翻译

转:http://toutiao.com/i6230846390918971905/

作为互联网从业者尤其是开发者,如果不懂得善用「工具」,那将很容易导致事倍功半,从而一步慢步步慢、再到遭遇淘汰。「开发这样一款 APP 需要多长时间?」这个问题,使用 APICloud 平台可以大大缩短开发周期,节约开发成本。

APICloud 产品为移动开发者从「云」和「端」两个方向提供 API,简化移动应用开发技术,将 1 个月的工作量降低至 1 个周,大幅提升移动应用开发和管理的效率。APICloud 由「云 API」和「端 API」两部分组成,可以帮助开发者快速实现移动应用的开发、测试、发布、管理和运营的全生命周期管理。

现在,通过 APICloud 开发出的 APP 已超过 30 万款,目前已经与中科创达、中兴通讯、泸州老窖、神州数码等知名公司展开合作。

使用 APICloud 开发产品如同「搭积木」,将你需要的模块按需搭建就能完成一个原生 APP 的生成。除了基础的 APP 模块如列表、选择器、网络通信、多媒体等外,APICloud 的模块 store 不断在引入第三方服务商丰富模块功能如人脸识别身份验证工具、IM 即时通讯、客服系统、广告系统、支付通道等。第三方服务提供商包括「洋葱」、「Ping++」、「有米」、「智齿客服」、「广点通」、「融云」等专业团队开发的产品。

目前,模块 store 里的第三方服务绝大部分都可以免费使用。

APICloud 联合创始人邹达先生表示:「APICloud 在技术这条线上就是希望能使得 APP 运行的更流畅更安全,从商业上期望搭建一个 APP 开发的生态圈。」

与很多互联网产品一样,APICloud 的商业模式也是经过发展、尝试、摸索出来的。据邹达介绍,除了收取基础流量、存储费用外,APICloud 可提供的增值服务包括专家团队辅导、开发者培训和私有云服务。另外,平台在一年的发展中已经积累了优质开发者 20 万 +,对于 APICloud 来说搭建众包平台也是水到渠成的事情。

再往前两三年的时间里,一大波「APP 创业」造成了大家都在做 APP 的风潮,之后微信的崛起让很多创业公司开始从一个「微信公众号」开始运营,那么 APP 开发的风口是不是在变小?

邹达认为:「所有围绕 APP 开发的团队都会关心这个问题。我们也会做调查,2013 年的数据报告显示,世界范围内人们使用移动端产品所花费的时间中有 80% 花费在独立的 APP 中,到 2014 年的数据就达到了 85%。今年 6 月份的数据显示人们花在移动端 APP 上的时间还是不断增长的。APP 开发确实有成本,但是根据这些用户习惯,移动互联网创业者如果不做个 APP,而只有微信公号、一个 web 页面是无法真的验证产品和商业模式的,因为这些方式是不能给你准确数据的。」另一方面,邹达表示,APICloud 最大的特点就是「快」,可以把你的想法快速的落实、快速的出一个产品去运营,这个特性降低了 APP 开发成本也有助于创业者去做快速的验证。

本文由 TECH2IPO / 创见(tech2ipo.com)编辑 @Judy 撰写,转载或使用本文素材进行二次创作请参阅 版权信息 。

转:http://tech2ipo.com/10026470.html?site=toutiao

来人人都是产品经理【起点学院】,BAT实战派产品总监手把手系统带你学产品、学运营。

推荐几个H5页面制作工具,自己选一下吧

自从用H5做出的微场景风靡朋友圈,各类H5页面制作工具层出不穷。有了精美的H5展示,微信等新媒体更进一步地成为了企业营销的战场。吸引用户,留住用户,增加粉丝,都可以通过制作精美的H5微场景来实现。下面就由小编我来为大家一一介绍四大最好用的H5页面制作工具!

微页

微页是由咫尺网络开发的一款新产品,上线之后短时间内已经激增了数十万粉丝。其优势就在于页面简洁明了,操作简单。

推荐几个H5页面制作工具,自己选一下吧

  • 易上手度:★★★★★
  • 基础功能:★★★★★
  • 高级功能:★★★★★
  • 模板数量:★★★★
  • 模板精美程度:★★★★
  • 付费服务性价比:★★★★★
  • H5新媒体传播:有
  • 总评:★★★★★

体验地址:www.weiye.me

推荐用户:企业用户以及设计师,小白也能愉快地使用。

微页,拥有目前H5制作工具里,最丰富的功能组件,各种强大的功能可以组成交互丰富的H5场景。另外,微页平台其数量众多,制作精美的海量模板,小白用户也可轻松完成酷炫的H5页面制作。

易企秀

易企秀是比较早期发展起来的H5页面制作工具,所以功能上还是比较齐全的。由于起步较早,易企秀俨然是目前国内市面上使用最频繁的H5微场景制作工具。不过由于适配的原因,做出来在手机上观看两边会有留白。解决方法是将图片变成背景,这也是比较麻烦的地方。易企秀也有APP版,但是由于涉及很多复杂的操作,所以使用起来有点麻烦,效果不佳。在移动端制作这一块,易企秀还有待改进。

推荐几个H5页面制作工具,自己选一下吧

  • 易上手度:★★★★★
  • 基础功能:★★★★★
  • 高级功能:★★★
  • 模板数量:★★★★
  • 模板精美程度:★★
  • 付费服务性价比:★★★★
  • H5新媒体传播:无
  • 总评:★★★★

体验地址:http://eqxiu.com

推荐用户:贪懒的小白用户。

兔展

兔展也是发展的比较成熟一款产品,一开始是本着“免费、自由、简单”的理念发展的,不过慢慢发展壮大后,有许多功能是VIP才能使用的,比如说特效或者更精密的模板之类的。兔展的使用页面十分清新,不过预览页面比较小。

推荐几个H5页面制作工具,自己选一下吧

  • 易上手度:★★★★
  • 基础功能:★★★★★
  • 高级功能:★★★
  • 模板数量:★★★
  • 模板精美程度:★★★
  • 付费服务性价比:★★
  • H5新媒体传播:有
  • 总评:★★★★

体验地址:http://www.rabbitpre.com

推荐用户:综合性比较强的用户,可设计可推广。

MAKA

MAKA口号是简单、强大的HTML5创作工具。在不同的HTML5编辑工具中,编辑的对象名字是不同的,在MAKA中则称为项目,新建项目之后将会出现下面的编辑页面。MAKA的劣势可能在于它的模板比较少,并且预览页面也比较小,看起来比较费劲。MAKA的风格就像它的标语一般:简单。

推荐几个H5页面制作工具,自己选一下吧

  • 易上手度:★★★★
  • 基础功能:★★★★
  • 高级功能:★★★
  • 模板数量:★★
  • 模板精美程度:★★★
  • 付费账号性价比:★★★
  • H5新媒体传播:无
  • 总评:★★★

体验地址:http://www.maka.im/home/index.html

推荐用户:中高阶设计师。

总结:

上述四大平台都是优秀的H5页面制作平台,都采用了基础功能永久免费,高级功能按需付费的方式,能满足绝大多数企业日常的H5营销需求。其中,在模板数量方面,微页与易企秀都比较丰富,VIP付费账号性价比最高的是兔展,设计感最强的是MAKA,功能最丰富的是 微页 。

在这些工具出现之前,做一些H5特效的动态页面,需要专业技术团队和设计师耗时几周才能完成。现在通过这四大H5页面制作工具,你几分钟就能免费创作自己的H5页面。赶紧动手尝试一下,做出属于自己的专属H5微场景吧。

本文由 @cjl695 原创发布于人人都是产品经理 ,未经许可,禁止转载。

转:http://toutiao.com/i6229094248608694785/

Dynamics.js是设计基于物理规律的动画的重要JavaScript库。它可以赋予生命给所有包含CSS 和SVG属性的DOM(文本对象模型)元素,换句话说,Dynamics.js适用于所有JavaScript对象以及一系列其它的元素。目前,Dynamics.js常被用于设计交互式菜单栏、同步下拉菜单、加载器、按钮以及其它功能。这个库提供了可定制动画类型的各种基本选项,如频率、反弹力、旋转、摩擦、持续时间等等。

创建酷炫动画效果的10个JavaScript库

Cta.js 是用于在网页上创建动画元素“Action-to-Effect”路径的轻量级库。它常被用在tile-based应用程序的导航、模态窗口的打开、侧边栏上可点击的按钮等等。

创建酷炫动画效果的10个JavaScript库

Beep.js是一个通过使用WebAudio API创建基于网页的电子合成器的JavaScript库。它可以用于创建音乐或者设计和音乐相关的学习教程。

创建酷炫动画效果的10个JavaScript库

Rainyday.js是一个使用HTML5 canvas创建雨滴落在玻璃表面的出色效果的强大JavaScript库。它拥有一个集成了各种可自定义实现的动画组件的可扩展应用程序接口。

创建酷炫动画效果的10个JavaScript库

Iconate.js是一个可将设计图标转化为流行动画元素的伟大资源。它拥有大量可供选择的字体、字形图标以及自定义图标集。

创建酷炫动画效果的10个JavaScript库

Dom-Animator.js是一个在DOM(文本对象模型)中可显示内容节点里ASCII动画的JavaScript库。

创建酷炫动画效果的10个JavaScript库

Famous 是用于设计流行动画的强大JavaScript库,它包含的基于事件的系统(event-based system)使得渲染平滑动画和过渡特效这类的更新转换工作变得非常简单。Famous还有一个可创建自定义动画和动画仿真的3D物理引擎,你可以做出包含在不同的重力、拖放和碰撞下的粒子或者3D物体的状态。

创建酷炫动画效果的10个JavaScript库

Bounce.js 是一个在CSS 3的支持下能做出各种酷炫动画的JavaScript库。你可以设计不同的动画和运动效果,如自转、公转、来回运动、急加速等。

创建酷炫动画效果的10个JavaScript库

Snabbt.js是一个使用CSS3转换矩阵的轻量级JavaScript动画库。它的结构非常简单,支持各种过渡和运动效果的应用,如缩放、尺寸调整、扭曲、旋转等等。Snabbt.js还支持attention animation功能,这个功能在表单验证方面是非常有用的。

创建酷炫动画效果的10个JavaScript库

Rekapi是用于CSS动画关键帧动画以及DOM中JavaScript动画的高级avaScript库。在复杂动画的设计方面,Rekapi以其实用性被人们广为熟知。您可以使用Rekapi创建生动的饼图和曲线图、五彩纸屑、交互性时间线以及各种用户界面。

创建酷炫动画效果的10个JavaScript库

本文翻译自codecondo.com

本站文章除注明转载外,均为本站原创或翻译

转:http://toutiao.com/i6221939614307844609/

昨天SEO实战交流群有同学问,小网站和大网站优化有哪些不同?我当时就作了解答,但我想,那只是方向性的东西,今天抽时间,专门解答下这个问题。

1、结构

大网站和小网站从结构上是差不多的,只是多几个专题页和列表页,SEO频道的模式有点差别。

2、内容

相对而言,大网站的内容来源更丰富,客户1部份,自身发布1部份,然后分解或采集一部份。而小网站,只是自己发布或去复制内容。内容很少,也很单一。

3、链接

大网站光内部的链接量级都非常庞大,而小网站只有几十个页,多则几百个页面,内部优化是很有限的,顶多就去换几个友链而已,资源非常少。

4、流量页

大站的SEO频道少则几十万,多少几百万个,小企业站点,顶多就是一个产品列表页,实际获取流量少的可怜,更多流量只是来源于首页,这样单一的模式,从量级上就没法比。

如果要想获取更多流量,最简单的方法,就是获取更多流量页面,如果单一靠首页去优化,是非常有限的。一个页面能承载的关键词也是有限的,最好的模式,是让更多页面获取长尾流量,从而提升整体流量。

那小网站要注意优化哪些细节呢?

1、关键词的研究

小网站优化的页面有限,就更应该去做关键词研究,调用的资源有限,就要尽量让每一个页面产生价值,获取流量。研究的越清楚,你就越明白,哪些词可以做出排名,哪些词是重要的有价值的。

2、页面的落脚词分布

其实就是关键词的布局,在小网站里,堆关键词密度还是有效果的,现在很多做SEO的方法,都是从关键词密度上延伸的,从顶部,导航栏,次导航,标题,内容,相关页,相关介绍内容模块,热门标签,相关评论,底部,这几个点去布局关键词。

3、内容页的安排

小网站很多时间没有排名,和内容有着极大的关系,内容就是很僵化的,或产品的一些说明,并没有做好用户体验,用户关注什么,或需要解决什么,没有从内容里说明,完全就是按自己的想法在做网站。特别是一些模板,首页,产品大全,新闻资讯,行业动态,招聘,联系我们,关于我们,这就是一些企业站的全部。

看到很多栏目,都不是客户想看的,那有存在的必要性吗?没有,没有为什么不拿掉,放客户想看的,想要的呢?

4、收录量

说到收录量,很多站长想到site,实际上这根本不是实际收录量,关于收录量,首先要想下,你有多少个URL,不能只看你后台发布了多少新闻或产品,那不是实际的页面数量。

这个可以用软件爬下,就能知道,网站倒底有多少URL页面,然后在百度站长平台看数据,你有多少页是收录的,答案就马上清楚,而不是总盯着site的显示数量。

如何解决收录量:

a、Ping

百度站长平台有说明和代码,实际很简单,dede和WP都有现成的插件,包括百度也有这样的插件开放。

b、网站地图

这个肯定是有比没有好,xml,txt,html,这3个模式都要做,然后到百度后台提交,在网站顶部和底部做入口,在robots里放一个入口。

c、相互调用

把产品页和新闻页面做交叉调用,让页面有更多的展示机会,这样会大大提高蜘蛛的爬行,每个页面增加一个全站最新内容页。

5、链接建设

这里的链接,不只是说首页的链接,首页天生就能获取链接,例如,全站的链接,更多时候,我们要把链接导向我们要优化的页面,不只是首页。

你想这个页有排名,就要给他足够的投票,就这么简单。这是最简单的部份,这里就不展开了。

我是郑刚,微信号/qq:611247,每天写一篇文章,希望能给大家一些启发。

欢迎分享,转载,请保留版权,谢谢!

转:http://toutiao.com/i6222942834027135490/

加入人人都是产品经理【起点学院】产品经理实战训练营,BAT产品总监手把手带你学产品

一看就明白的爬虫入门讲解-基础理论篇

关于爬虫内容的分享,我会分成两篇,六个部分来分享,分别是:

  1. 我们的目的是什么
  2. 内容从何而来
  3. 了解网络请求
  4. 一些常见的限制方式
  5. 尝试解决问题的思路
  6. 效率问题的取舍

本文先聊聊前三个部分。

一、我们的目的是什么

一般来讲对我们而言需要抓取的是某个网站或者某个应用的内容,提取有用的价值,内容一般分为两部分,非结构化的文本,或者结构化的文本。

关于非结构化的数据

1.1 HTML文本(包含javascript代码)

HTML文本基本上是传统爬虫过程中最常见的,也就是大多数时候会遇到的情况,例如抓取一个网页,得到的是HTML,然后需要解析一些常见的元素,提取一些关键的信息。HTML其实理应属于结构化的文本组织,但是又因为一般我们需要的关键信息并非直接可以得到,需要进行对HTML的解析查找,甚至一些字符串操作才能得到,所以还是归类于非结构化的数据处理中。

常见解析方式如下:

CSS选择器

现在的网页样式比较多,所以一般的网页都会有一些CSS的定位,例如class,id等等,或者我们根据常见的节点路径进行定位,例如腾讯首页的财经部分:

这里id就为finance,我们用css选择器,就是"#finance"就得到了财经这一块区域的html,同理,可以根据特定的css选择器可以获取其他的内容。

XPATH

XPATH是一种页面元素的路径选择方法,利用chrome可以快速得到,如:

一看就明白的爬虫入门讲解-基础理论篇

copy XPATH 就能得到——//*[@id="finance"]

正则表达式

正则表达式,用标准正则解析,一般会把HTML当做普通文本,用指定格式匹配当相关文本,适合小片段文本,或者某一串字符,或者HTML包含javascript的代码,无法用CSS选择器或者XPATH。

字符串分隔

同正则表达式,更为偷懒的方法,不建议使用。

1.2 一段文本

例如一篇文章,或者一句话,我们的初衷是提取有效信息,所以如果是滞后处理,可以直接存储,如果是需要实时提取有用信息,常见的处理方式如下:

分词

根据抓取的网站类型,使用不同词库,进行基本的分词,然后变成词频统计,类似于向量的表示,词为方向,词频为长度。

NLP

自然语言处理,进行语义分析,用结果表示,例如正负面等。

关于结构化的数据

结构化的数据是最好处理,一般都是类似JSON格式的字符串,直接解析JSON数据就可以了,提取JSON的关键字段即可

二、内容从何而来

过去我们常需要获取的内容主要来源于网页,一般来讲,我们决定进行抓取的时候,都是网页上可看到的内容,但是随着这几年移动互联网的发展,我们也发现越来越多的内容会来源于移动app,所以爬虫就不止局限于一定要抓取解析网页,还有就是模拟移动app的网络请求进行抓取,所以这一部分我会分两部分进行说明。

1 网页内容

网页内容一般就是指我们最终在网页上看到的内容,但是这个过程其实并不是网页的代码里面直接包含内容这么简单,所以对于很多新人而言,会遇到很多问题,比如:

明明在页面用Chrome或者Firefox进行审查元素时能看到某个HTML标签下包含内容,但是抓取的时候为空。

很多内容一定要在页面上点击某个按钮或者进行某个交互操作才能显示出来。

所以对于很多新人的做法是用某个语言别人模拟浏览器操作的库,其实就是调用本地浏览器或者是包含了一些执行javascript的引擎来进行模拟操作抓取数据,但是这种做法显然对于想要大量抓取数据的情况下是效率非常低下,并且对于技术人员本身而言也相当于在用一个盒子,那么对于这些内容到底是怎么显示在网页上的呢?主要分为以下几种情况:

网页包含内容

这种情况是最容易解决的,一般来讲基本上是静态网页已经写死的内容,或者动态网页,采用模板渲染,浏览器获取到HTML的时候已经是包含所有的关键信息,所以直接在网页上看到的内容都可以通过特定的HTML标签得到

javascript代码加载内容

这种情况是由于虽然网页显示时,内容在HTML标签里面,但是其实是由于执行js代码加到标签里面的,所以这个时候内容在js代码里面的,而js的执行是在浏览器端的操作,所以用程序去请求网页地址的时候,得到的response是网页代码和js的代码,所以自己在浏览器端能看到内容,解析时由于js未执行,肯定找到指定HTML标签下内容肯定为空,这个时候的处理办法,一般来讲主要是要找到包含内容的js代码串,然后通过正则表达式获得相应的内容,而不是解析HTML标签。

Ajax异步请求

这种情况是现在很常见的,尤其是在内容以分页形式显示在网页上,并且页面无刷新,或者是对网页进行某个交互操作后,得到内容。那我们该如何分析这些请求呢?这里我以Chrome的操作为例,进行说明:

一看就明白的爬虫入门讲解-基础理论篇

所以当我们开始刷新页面的时候就要开始跟踪所有的请求,观察数据到底是在哪一步加载进来的。然后当我们找到核心的异步请求的时候,就只用抓取这个异步请求就可以了,如果原始网页没有任何有用信息,也没必要去抓取原始网页了。

2 App内容

因为现在移动应用越来越多,很多有用信息都在App里面,另外解析非结构化文本和结构文本对比而言,结构化文本会简单多了,不同去找内容,去过多分析解析,所有既有网站又有App的话,推荐抓取App,大多数情况下基本上只是一些JSON数据的API了。那么App的数据该如何抓取呢?通用的方法就是抓包,基本的做法就是电脑安装抓包软件,配置好端口,然后记下ip,手机端和电脑在同一个局域网里面,然后在手机的网络连接里面设置好代理,这个时候打开App进行一些操作,如果有网络数据请求,则都会被抓包软件记下,就如上Chrome分析网络请求一样,你可以看到所有的请求情况,可以模拟请求操作。这里Mac上我推荐软件Charles,Windows推荐Fiddler2。

具体如何使用,之后我再做详述,可能会涉及到HTTPS证书的问题。

三、了解网络请求

刚刚一直在宽泛的提到一些我们需要找到请求,进行请求,对于请求只是一笔带过,但请求是很重要的一部分,包括如何绕过限制,如何发送正确地数据,都需要对的请求,这里就要详细的展开说下请求,以及如何模拟请求。

我们常说爬虫其实就是一堆的HTTP请求,找到待爬取的链接,不管是网页链接还是App抓包得到的API链接,然后发送一个请求包,得到一个返回包(也有HTTP长连接,或者Streaming的情况,这里不考虑),所以核心的几个要素就是:

  1. URL
  2. 请求方法(POST, GET)
  3. 请求包headers
  4. 请求包内容
  5. 返回包headers

在用Chrome进行网络请求捕获或者用抓包工具分析请求时,最重要的是弄清楚URL,请求方法,然后headers里面的字段,大多数出问题就出在headers里面,最常限制的几个字段就是User-Agent, Referer,Cookie 另外Base Auth也是在headers里面加了Autheration的字段。

请求内容也就是post时需要发送的数据,一般都是将Key-Value进行urlencode返回包headers大多数会被人忽视,可能只得到内容就可以了,但是其实很多时候,很多人会发现明明url,请求方法还有请求包的内容都对了,为什么没有返回内容,或者发现请求被限制,其实这里大概有两个原因:

  • 一个是返回包的内容是空的,但是在返回包的headers的字段里面有个Location,这个Location字段就是告诉浏览器重定向,所以有时候代码没有自动跟踪,自然就没有内容了;
  • 另外一个就是很多人会头疼的Cookie问题,简单说就是浏览器为什么知道你的请求合法的,例如已登录等等,其实就是可能你之前某个请求的返回包的headers里面有个字段叫Set-Cookie,Cookie存在本地,一旦设置后,除非过期,一般都会自动加在请求字段上,所以Set-Cookie里面的内容就会告诉浏览器存多久,存的是什么内容,在哪个路径下有用,Cookie都是在指定域下,一般都不跨域,域就是你请求的链接host。

所以分析请求时,一定要注意前四个,在模拟时保持一致,同时观察第五个返回时是不是有限制或者有重定向。