看了几天的小程序(当然也包括了上手书写),才有了这篇博文,非技术贴,只是发表下个人观点,仅以个人技术能力来看小程序。

  首先说下优点:

  1. 调试工具:官方的工具还是做了很多工作,包括监听文件变动自动刷新,编译es6等
  2. 真机调试:里面集成了github上一款开源调试工具vconsole https://github.com/WechatFE/vConsole
  3. 文件关联:关联名称相同的wxss,wxml,js为一个组件的内容
  4. 样式:支持flex布局,不用hack
  5. 语言:支持es6,可以模块化布置项目的代码

  接下来是缺点:

  1. 调试工具:审查元素必须切换到Wxml模式才可以,在控制台编辑css没有只能提示,用小箭头选择元素时貌似碰到wx原生组件会选择不上,只能一层一层展开查看
  2. 真机调试:这个真要吐槽下,就是在调试工具上明明好使,在真机上就会碰到内部错误直接退出,官方也没有给出一些合理的智能提示,这个时候往往需要靠猜哪里的问题
  3. 模块化:个人认为微信的模块化只是针对js语言,至于把写好的模块封装成组件是不便的也不现实的(至少现在这样的机制),原因有以下:1.dom没办法动态添加删除修改(当然现在想要修改属性,就必须要都绑定到page的data数据中,这样就会造成如果页面复杂,数据就会异常多,也不可控,加上改变的函数也会增多),2单独import的wxml组件跟page传输数据很别扭方式,3,page中的对象需要的方法需要提前定义,没法后期添加。4.模块import无法配置别名。

对于小程序项目构建的看法:

  1. 关于项目怎么构建目录和组件:官方并没有给出,给出的就是类似一个demo,完全不能提到构建这个角度
  2. 我个人配置的目录是pages,compoment,util,serve,image这5个目录
  3. 关于如何更好的处理组件和调用自定义组件的方式我认为官方还是要先解决这个问题的,要不小程序我认为永远就是小玩具,成不了大气候,本身小程序的市场定位更适合小B2C电商,但是电商的项目业务还是很复杂的,和用户的交互也比较多,如果仅仅是给个demo就扔给开发人员,那小程序的前景我个人是不看好的。
  4. 关于提供的原生组件接口和配置也太任性,毕竟面向的是web前端开发人员,而不是app原生开发人员,书写规范上还是要迁就一下前端开发人员的好
  5. 最后一点还是要回到小程序的定位上,现有的功能可以好不客气的说原生web都可以实现,没必要真的去移至到小程序平台,以京东商城的小程序为例提供的功能有限,交互体验也不是很好,官方的认为更流畅也没有很好的提现,这里可以举个例子就是小程序的打开时间,打开京东小程序大概要3-4秒,这个和打开网页没什么区别了,还限制了很多功能和交互方式。

至于小程序的前景怎样,个人认为已经不是微信能控制的了,如果还是像现在这样”任性“只提供基础的组件和不解决组件的调用方式的话,前景堪忧。如果还是如此”作风“真的火了,那我只能说中国真是一个神奇的地方。

以上仅为个人观点。。。(在国内写博文我还是加上这句话吧,以免被人当成某当,认为不思进取,阻挡前端大一统别人领域的潮流)

仅以一个前端开发人员的角度看微信小程序的更多相关文章

  1. 不一样的角度 解读微信小程序

    不一样的角度 解读微信小程序 七月在夏天· 2 天前 前段时间看完了雨果奖中短篇获奖小说<北京折叠>.很有意思的是,张小龙最近也要把应用折叠到微信里,这些应用被他称为:小程序. 含着金钥匙 ...

  2. 从程序员的角度分析微信小程序(编程语言:用到什么学什么)

    从程序员的角度分析微信小程序(编程语言:用到什么学什么) 一.总结 一句话总结:微信小程序原理就是用JS调用底层native组件,和React Native非常类似.(需要时,用到时再学) 1.选择语 ...

  3. 微信小程序开发系列教程三:微信小程序的调试方法

    微信小程序开发系列教程 微信小程序开发系列一:微信小程序的申请和开发环境的搭建 微信小程序开发系列二:微信小程序的视图设计 这个教程的前两篇文章,介绍了如何用下图所示的微信开发者工具自动生成一个Hel ...

  4. 从程序员的角度分析微信小程序

    昨天朋友圈被微信小程序刷爆了. 我赶快在书架上拿出三年前买的书,把上面的土擦干净,压压惊. 作为一个并不是资深的程序员. 从程序员的角度分析一下微信小程序,欢迎指点. 首先吐槽 微信小程序只发了200 ...

  5. 微信小程序开发《三》:微信小程序请求不能使用session的原因及解决办法

    本人在前面的微信小程序开发<二>中提到要想在服务端保持状态需要在客户端第一次请求服务器的时候给客户端返回一个sessionid,由客户端在本地保存,下次请求的时候在header里面带上这个 ...

  6. 微信小程序开发之如何哪获取微信小程序的APP ID

    微信小程序的开发工具,在新建项目的时候,默认提示填写APP ID,如果不填写AppID 也是可以本地测试和开发的,但是无法通过手机调试,只能在开发工具里查看 如果需要真机调试微信小程序,需要安装微信6 ...

  7. 推荐给Web前端开发人员的一些书籍(从基础到架构阶段)

    有很多人问我说作为一个前端开发人员都需要看一些什么书籍,尤其是刚入门的新手,今天我整理了一下推荐给大家,大佬绕过. HTML+CSS+JavaScript 网页设计 从入门到精通 作为一个前端新手,强 ...

  8. Web前端_微信小程序实战开发

    微信小程序开发实战教程 一.微信小程序 它是一种混合开发的方式. 是安装在微信中的程序(一个程序最多2M空间). 1.1 注册 1  2 点击立即注册:进入下方页面 3  4 点击小程序进入表单填写页 ...

  9. [转]微信小程序,开发大起底

    本文转自:http://blog.csdn.net/baiyuzhong2012/article/details/54378497 作者简介:张智超,北京微函工坊开发工程师,CSDN微信开发知识库特邀 ...

随机推荐

  1. MSDN官方XmlSerializer类导致内存泄漏和性能低

    MSDN官方XmlSerializer类使用说明链接: http://msdn.microsoft.com/zh-CN/library/system.xml.serialization.xmlseri ...

  2. .NET/Mono

    C#(或者说.NET/Mono)能做的那些事 不做语言之争,只陈述事实: 1.桌面软件 不仅是在Windows上,有了开源的Mono,在Apple Mac和Linux(如:Ubuntu)上也有C#的施 ...

  3. 2014.3.5-C语言学习小结

    知识点: 1.结构体 struct 2.联合体 union 3.枚举 4.结构.联合与函数 =========================== 结构体 思考:如果现在希望保存一个学生的信息,该如何 ...

  4. Nginx+phpfastcgi下flush输出问题

    最近由于业务需要,需要使用php的flush输出缓存刷新,处理浏览器超时问题. 最初的测试代码如下: ob_start();//打开缓冲区 for ($i=10; $i>0; $i--) { e ...

  5. ios7学习之路六(隐藏状态栏 )

    方法一(代码设置): 现在ios7已经更改为透明,并且不占用屏幕高度.其中隐藏及显示的方法如下: 在uiviewcontroller的子类下,调用:      if ([self respondsTo ...

  6. 【Hook技术】实现从"任务管理器"中保护进程不被关闭 + 附带源码 + 进程保护知识扩展

    [Hook技术]实现从"任务管理器"中保护进程不被关闭 + 附带源码 + 进程保护知识扩展 公司有个监控程序涉及到进程的保护问题,需要避免用户通过任务管理器结束掉监控进程,这里使用 ...

  7. 读取同一文件夹下多个txt文件中的特定内容并做统计

    读取同一文件夹下多个txt文件中的特定内容并做统计 有网友在问,C#读取同一文件夹下多个txt文件中的特定内容,并把各个文本的数据做统计. 昨晚Insus.NET抽上些少时间,来实现此问题,加强自身的 ...

  8. Caffe Ubuntu14.04 64位 的最快安装 (cuda7.5 + cudnn7.0 2016最新)

    最近因为各种原因,装过不少次Caffe,安装过程很多坑,为节省新手的时间,特此总结整个安装流程. 关于Ubuntu 版本的选择,建议用14.04这个比较稳定的版本,但是千万不要用麒麟版!!!比原版体验 ...

  9. Remobjects使用经验

    RemObjects RemObjects提示:我们相信本文是正确的,但我们不做任何保证.在此感谢Henrick 写的文章,很高兴在此发表. 介绍RemObjects是功能强大可扩展的远程框架;但是当 ...

  10. C# .Net 使用zxing.dll生成二维码,条形码

    public static string GetBarcode(string format, string value, int? width, int? height)        {       ...