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

  首先说下优点:

  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. Json.Net6.0

    Json.Net6.0入门学习试水篇   前言 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.简单地说,JSON 可以将 JavaScript 对象中表 ...

  2. jsoneditor显示Json data

    Git开源地址:https://github.com/josdejong/jsoneditor/blob/master/docs/api.md 1.引用JS文件 <!-- jsoneditor ...

  3. JqGrid帮助文档

    JQGrid是一个在jquery基础上做的一个表格控件,以ajax的方式和服务器端通信. JQGrid Demo 是一个在线的演示项目.在这里,可以知道jqgrid可以做什么事情. 下面是转自其他人b ...

  4. 自承载Web API

    自承载Web API 前言 阅读本文之前,您也可以到Asp.Net Web API 2 系列导航进行查看 http://www.cnblogs.com/aehyok/p/3446289.html As ...

  5. PHP gbk转换成utf8

    /** * GBK ASCII 转换成utf8 */ public function to_utf8($str){ $detect = array('ASCII', 'GBK', 'UTF-8'); ...

  6. 在C#代码中应用Log4Net系列教程

    在C#代码中应用Log4Net系列教程(附源代码)   Log4Net应该可以说是DotNet中最流行的开源日志组件了.以前需要苦逼写的日志类,在Log4Net中简单地配置一下就搞定了.没用过Log4 ...

  7. 核心C#

    核心C# 内容提要: 声明变量:变量的初始化和作用域:C#的预定义数据类型:在C#程序中使用条件语句.循环和跳转语句指定执行流:枚举:名称空间: Main()方法:基本命令行C#编译器选项:使用Sys ...

  8. 冒泡动画按钮的简单实现(使用CSS3)

    冒泡动画按钮的简单实现(使用CSS3) 原始的参考文章是 http://tutorialzine.com/2010/10/css3-animated-bubble-buttons/ ,基本原理是利用了 ...

  9. 基于Hadoop开发网络云盘系统架构设计方案

    基于Hadoop开发网络云盘系统架构设计方案第一稿 引言 云计算技术的发展,各种网络云盘技术如雨后春笋,层出不穷,百度.新浪.网易都推出了自己的云盘系统,本文基于开源框架Hadoop设计实现了一套自己 ...

  10. 一点MongoDB的基础及mongodb在mac上的安装

    最近发现维持写博客的习惯还是挺困难的,尤其对我来说,计划好的事过了好长时间才想到要去做. 这段时间一直在熟悉MongoDB,首先我是参考的这一篇:8天学通MongoDB   原博主写得非常好,我这里就 ...