蜘蛛网2018报刊订阅价格我订了2018全年广州日报,可今天没有收到报纸

什么是HBuilder?
HBuilder是DCloud(数字天堂)推出的一款支持HTML5的Web开发IDE。HBuilder的编写用到了Java、C、Web和Ruby。HBuilder本身主体是由Java编写,它基于Eclipse,所以顺其自然地兼容了Eclipse的插件。快,是HBuilder的最大优势,通过完整的语法提示和代码输入法、代码块等,大幅提升HTML、js、css的开发效率。
如何安装 HBuilder?
HBuilder下载地址:在HBuilder官网点击免费下载,下载最新版的HBuilder。
HBuilder目前有两个版本,一个是windows版,一个是mac版。下载的时候根据自己的电脑选择适合自己的版本。
使用HBuilder新建项目
依次点击文件→新建→选择Web项目(按下Ctrl+N,W可以触发快速新建(MacOS请使用Command+N,然后左键点击Web项目))
如上图,请在A处填写新建项目的名称,B处填写(或选择)项目保存路径(更改此路径HBuilder会记录,下次默认使用更改后的路径),C处可选择使用的模板(可点击自定义模板,参照打开目录中的readme.txt自定义模板)
使用HBuilder创建HTML页面
在项目资源管理器中选择刚才新建的项目,依次点击文件→新建→选择HTML文件(按下Ctrl+N,W可以触发快速新建(MacOS请使用Command+N,然后左键点击HTML文件)),并选择空白文件模板,如下图
使用HBuilder边改边看试试查看编程效果
win系统按下Ctrl+P(MacOS为Command+P)进入边改边看模式,在此模式下,如果当前打开的是HTML文件,每次保存均会自动刷新以显示当前页面效果(若为JS、CSS文件,如与当前浏览器视图打开的页面有引用关系,也会刷新)
HBuilder代码块大量减少重复代码工作量
在打开的getstart.html中输入H,如下图
然后按下8,自动生成HTML的基本代码如下图
什么是代码块?
代码块是常用的代码组合,比如在js中输入$,回车,则可以自动输入document.getElementById(id)。
查看、编辑代码块可以在工具-自定义代码块中,选择相应的代码块进行查看和编辑。也可以在激活代码块的代码助手中,点击详细信息右下角的修改图标进行修改和查看。
代码块激活字符原则1:连续单词的首字母。比如:dg激活document.getElementById("");vari激活var i=0;dn激活display:
代码块激活字符原则2:整段HTML一般使用tag的名称。比如script、style,通常,敲最多4个字母即可匹配到需要的代码块,不需要完整录入,如sc回车、st回车,即可完成script、style标签的输入。
代码块激活字符原则3:同一个tag,有多个代码块输出,则在最后加后缀。比如meta输出但metau则输出,metag同理。
代码块激活字符原则4:如果原始语法超过4个字符,针对常用语法,则第一个单词的激活符使用缩写。比如input button,缩写为inbutton,同理intext是输入框。
代码块激活字符原则5:js的关键字代码块,是在关键字最后加一个重复字母。比如if直接敲会提示if关键字,但iff回车,则出现if代码块。类似的有forr、withh等。由于funtion字母较长,为加快输入速度,取fun缩写,比如funn,输出function代码块,而funa和func,分别输出匿名函数和闭包。
灵活的快捷键使得编程过程手不离键盘
效果如下图
新建html基本模板后,当前光标处于title标签内,此时我们给HTML设置title:hellohbuilder,完成后使用Ctrl+回车在当前的下一行插入空行,并将光标移动到下一行
我们在此处使用sc代码块生成一个script块来编写js代码(输入sc,回车)如下图
使用funn代码块编写一个JS方法helloworld(输入funn,回车)如下图
此时生成的方法的方法名是选中状态,我们只需要直接输入新的方法名helloworld即可,如下图
上图中的绿色竖线,是代码块中指定的下一个编辑位置,敲击回车光标会直接跳转至竖线位置
此时按向下、向下,Ctrl+回车,输入style回车,生成css代码区域
定义一个Css类classA:输入. c l a s s A { 回车,f o n t 回车 回车 回车
然后按alt+下,alt+下跳转至下一个编辑区域
依次输入& d i v 也可输入&dv回车、&iv回车,语法助手可以通过模糊匹配获知想要生成的标签)如下图
如上图所示,代码助手左侧包含数字,可以使用这些数字选择对应的条目,右侧包含浏览器兼容性数据及示例
输入i 回车 d 1,右箭头,空格,c 回车 回车
鼠标在div标签的class属性classA上悬浮,按下Alt和左键,点击后可跳转至classA定义处
div也可以通过代码块生成如输入divc回车回车回车,输入helloworld如下图
使用CSS选择器语法来快速开发HTML和CSS(支持Emmet)
输入div#page>div.logo+ul#navigation>li*2>a,按下tab生成代码如下图
HBuilder集成了Emmet功能,可以通过CSS选择器语法来快速开发HTML和CSS,如想深入了解Emmet请移步
强大的JS解析引擎大大加快JS开发的速度
JS中提示HTML、CSS
JS提示html的ID
JS提示html的tagname
JS提示css类名
JS通过ID、tagname、css类名不但可以获取HTML元素,还可以精确分析出其元素类型,准确提示其属性,如上图可以提示出list[0].type
JS中提示JSON
JS提示自定义系统方法
JS提示对象引用及其属性、方法
JS提示闭包对象
跳转到class、id、js方法定义处
按下Alt,左键点击引用的方法名、ID、CSS类、文件(链接、图片),均可跳转到引用的地方,跨文件的引用也可以哦
跳转到JS方法定义处 如下图
跳转到CSS类定义处 如下图
跳转到ID定义处 如下图
跳转到文件 如下图
跳转助手、选择助手、转义助手、快捷键助手,让你手不离键盘。
HTML5+支持、手机真机连调、云编译,方便开发跨手机平台的APP。
更多精彩功能:重构 | 大纲 | 任务 | 版本历史 | 内置webserver | 实时升级 | 安全工程管理 | 包围 | 掩码转换 | 智能纠错 | 折叠代码 | 转到定义 | 格式化代码 | URL编解码 | 进制转换 | 自动闭合。
还不满足?下载插件增强更多功能,高手更可开发插件,并共享插件造福所有开发者。
记住登录状态
重复输入密码下次自动登录
关注移动互联网和移动APP开发工具、开发框架、测试工具、微信开发、Android源码、Android开源类库以及各种开源组件的IT科技网站
现在的位置:
去它的h5,我还是用js写原生跨平台app吧
智能手机功能越来越强大,已经在逐渐替代电脑的作用。百度、腾讯、阿里的移动端日活数也在逐步的赶上甚至超越电脑端用户。叫喊着“mobile first”的公司越来越多,App开发者应运而生,且队伍日趋庞大,有的人以此为契机走上创业之路。
一、APP开发之殇
然而移动开发并未如想像般风光。
每一个原生应用开发的项目都是一个巨大的坑。要么等着竞争者通过移动互联技术把你打败,要么跳进坑自己招人来开发移动应用。写App真是一个苦B的差事。做一个App通常要配置三套人马,一拨人去做android,一拨人去做ios;如果还有网站的话,还需要另外配置网页开发人员,开发成本也随之加倍。最可怕的是,需要面对大量的黑屏、闪退、屏幕适配等底层技术陷阱。再加上技术人员流失更换频率较高,业务系统维护周期较长,操作系统平台升级后的兼容性问题(例如IOS7 UI布局结构的强制调整问题、IOS8的64位内核强制升级问题)。到处都是技术陷阱,这岂是每个小项目的成本能够承受的。
许多公司都是新成立的创业公司,能出得起钱配足三套人马的凤毛麟角。通常都是一个人干三个人的活。如果一个研发牛人又能搞android又能搞ios,马上就能成为香饽饽,到手工资大把大把地。
人员问题往往还不需要研发操心,但是开发过程中更会遇到开发维护成本高、难度大、操作系统版本众多适配难等等实际问题。那更叫人头疼!
二、H5的解决之道
& & & &??HTML5标准终于通过了!很多人看到其在移动端“阳光灿烂”的明天。一套html5的代码可以适应android、ios、微信、web等多端平台。许多人叫嚣,未来移动跨平台开发是H5的天下!很多“砖家”也说,HTML5将颠覆原生App世界。??
&&&&&&?&基于此,催生了一批跨平台H5跨平台开发平台/工具:PhoneGap 、Appcan、HBuilder 、APICloud……?
然而,事情真的像想象中美好吗?
??之前哥相信了“砖家”的这些话,上了H5的贼船,结果苦B、趟坑的日子就来了……??
&&&&&&&?基于血泪的经验,H5应用目前还是存在如下问题:?
1、H5存在天生的“性功能”障碍
??“性功能”的说法是HBuilder的老总提出的。即:性能不如原生,工具不如原生、功能不如原生。HBuilder及一众跨平台开发商都宣称自己解决了这些问题。
H5发展如此多年,在老旧机器上,甚至在高端android4.2以下版本的机器上,卡顿非常明显。虽然近一年来,千元机硬件性能大幅度飙升,千元机也能买到8核了。但你写一个H5的app试试,未经过专业人员性能优化,开多了页面依然卡顿。
H5的应用有许多优化点,如果没有经历若干次趟坑经验,很难搞出性能很好的应用来。
别听很多跨平台开发工具商吹的天花乱坠,稍微复杂一些的APP卡顿就是卡顿,短期内还是无法解决。??
2、存在源码泄露、黑客代码注入等风险
??H5写的app,你只需要将安装包后缀改为 zip,?解压缩后就能直接看到源代码,根本没有秘密可言。想想看,你花了好几个月披星戴月赶工出来的app,源码随意就能被人拿走,稍微修改后就能重新打包成新的app,你是什么感受??
更可怕的是,你应用的支付宝密钥、微信的加密key全部都直接暴露给破解者了……
有的跨平台开发商声称提供混淆加密的功能,但实际上根本没什么卵用。无论你怎么加密,浏览器显示页面之前就必须解密出来才能正常显示。而在android4.4以后版本上,连上电脑,用Chrome浏览器直接就能提取出app打开的浏览器中原始页面的任意内容,甚至可以设断点调试,用浏览器控制台随意注入代码。??
3、控件稀缺,集成三方SDK困难
?H5的app,如果有美术基础,用HTML描述界面很是便捷。但是如果你想调用系统的一些功能,则就需要看你的跨平台的工具是否支持了。一旦尚未提供,那就苦B了。
虽然好多开发商都声称,自己的工具很容易自已封装控件扩展。但费话,如果我会原生开发,还用你这工具干毛啊,哥直接写原生的啦。&&&&
我之前就遇到这个问题,写一款APP,要用到第三方的SDK,而当前的开发工具没有提供此类控件,导致项目无法进行。之后每天都去开发商BBS、QQ群里求爷爷告奶奶的等待人家开恩,帮你提供。连续一个月,人家根本不鸟你,项目最后无奈告终。?
&&&&&&&& 既然H5的跨平台开发还不靠谱,那怎么办呢?
&三、原生跨平台解决方案
(一)、React Native的解决方案
?React Native的出现,让人感觉到惊喜。既拥有Native?的用户体验、又保留React的开发效率。?这个理念似乎迎合了业界普片存在的痛点,开源不到1周?github star破万,目前是27000+?。
React Native的原理是在JavaScript中用React抽象视图操作为系统原生的UI组件,代替DOM元素来渲染。它不同于webkit或任何我们已知的浏览器,采用自行封装的渲染引擎,渲染生成不同平台下的原生UI,同时JS和Native之间通过Bridge通信实现相应的功能。
这种技术将独立的界面描述文件与原生UI统一起来,个人认为它是已知中间件产品中最先进、最能代表未来发展趋势的方向。?
?React Native看上去很美,然而现实却很“骨感”。
目前,React Native使用中还存在一些问题:
1、界面布局困难
React native与HTML5无关。虽然它使用的语言还是javascript,它使用自定义的react方式去声明界面,没有HTML和css! 对于广大开发者,你的HTML和css白学了,重新学facebook的语法。
同时,react布局方式与之前传统观念差别很大,且没有可视化工具,如果想布局出一套复杂的的界面是非常费劲的。?
2、安装包太大
React native是自己的渲染引擎,不是webkit?或任何我们熟悉的浏览器。相当于是facebook的定制浏览器?。引擎包的体积不小,hello world就是7M。??如果实现一个中等功能的APP,十几兆的包是跑不了啦??。?
3、开发工具
React native没有配套的ide,开发调试非常麻烦。没有原生开发基础的话甚至可能搭不起来开发环境。
打包也不方便,没有mac电脑无法调试或打包ios应用。?
4、不符合国情
?像国内开发一款App,?嵌入一些第三方开发包那是再正常不过的事情。比如登录要嵌入微信、微博、QQ等第三方库,聊天嵌入环信,统计嵌入友盟,支付嵌入支付宝……?
这些第三方库如何集成到React Native的项目里呢?如果你祈祷哪天facebook帮你集成好发布一些控件包的话,那你就等着去吧。?
(二)、DeviceOne的解决方案
DeviceOne是一个新兴的移动跨开发平台。2015年5月份正式对外发布(他们网站SEO做的很烂,宣传也少,故目前还较少人知道)。
?DeviceOne采用类似于React Native?的解决方案。这个开发平台提供了大量丰富的UI?组件和API组件,这些组件全部都是纯原生实现??。
平台下所有UI组件功能组件都已经被抽象成可被自由扩展的跨平台组件,就连Webkit本身在模型中也仅仅退化成一个普通的UI组件而已,App开发者可以自由选择js脚本、lua脚本来编写业务逻辑。只需要下javascript人员即可完成纯原生的app开发,做出的产品那个流畅啊……
研发人员可以选择要打包的控件列表,打出的包非常小,通常在3-5M以内。而且由于是原生app,代码全部做的加密处理,黑客无法简单的解压缩就能盗用代码了。
同时,DeviceOne实现了界面和业务逻辑的分离。UI可以通过IDE直接拖拽生成,那叫一个爽字!?
所见即所得的界面
?官方提供了三个演示app源码:?
更多演示源码可以在论坛里找到。
我下载看了这些代码后,大约在两天时间内就完成了上手。在实际使用其进行了一个APP开发后,开发过程中没有什么太多的坑,过程还是很美好的。
&&&&&&&& ??只需用JS就可以写原生APP,哇赛,简直是太爽了??。
&&&&&&&& ?等有空时,我会写一系列文章介绍它,以及用它开发一款APP?的整个过程,帮助同我一样有跨平台APP开发的人更方便的去开发?。
&&&&&&&& ?让我们一起用JS写原生APP吧!
【上篇】【下篇】

我要回帖

更多关于 广州日报 2018订阅 的文章

 

随机推荐