自学小程序之路(一),来自一个Android 开发人员的碎碎念

2024-01-31 01:10

本文主要是介绍自学小程序之路(一),来自一个Android 开发人员的碎碎念,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

背景:

公司最近没什么项目,我也闲的无聊。摸鱼总是心生愧疚,做了几个副业也都不温不火。

寻思着跳个槽?一把年纪也不敢乱动弹。哎,一天天的,啥也不是。

倒腾来倒腾去,还是自己学点东西吧,这样,到了今天秋天,公司的大太阳照的我眼快瞎了的时候,没准我就真跳槽了。学点东西,咱也有点底气不是。

于是,作为一个Android开发工程师的我,走上了一条小程序的学习之路。


所需设备: 电脑一台,手机一部,(废话!!)

虚拟导师:微信开发文档官方 https://developers.weixin.qq.com/miniprogram/dev/framework/


1.安装开发环境;

这是学习所有语言的第一步吧。

https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html

地址给了,自己去下吧。比较简单,不会像Android studio一样配置很多东西。


2.新建项目

新建项目的时候会让你去注册APPID,点他后面的链接去申请一个就可以了。

申请过公众号什么的邮箱是不可以的。

然后刚上手,选择「不使用云服务」即可。


3.连懵带猜看代码

进入项目,大体样子如下图

资源管理器一栏就放着我们本地的代码文件。

根目录下开始看起:

json文件:

Json 格式 Android 开发工程师都比较明白吧,

就是“key”:value格式,key要加双引号。

需要注意的一点就是json文件不支持注释

你要非得加注释也行,那就等着报错呗。

sitemap.json

点进去后可以看到微信给了一个关于这个文件的参考文档,我看了看大体就是配置小程序的索引配置

以页面为单位,每个页面可以单独设置自己的关键词和被搜索到的权限。

这些配置决定了用户在微信内搜索时能否搜索到该小程序,以及可以具体到哪个页面。

暂且不表,这是熟悉基础后再考虑的事情。过!

project.config.json

看文件名应该是项目配置文件

果然没猜错,里面放置了我们刚刚新建的项目的一些配置。

我点进去看了看,能看懂的只有libversion和appid等几行,其他没几个能看懂。都是新建时都已建立好的。

这个类似于Android项目中的APP下的build.gradle,后期有需求再来修改某些参数吧。过!

app.json

这个里面放置了一个键为pages的json数组,应该是配置了项目的页面,

一个键为window的json数组,看样子都是放置了一些样式的放置。

有些像AndroidManifest文件。

应该是随着页面的增多也会在这个文件里进行修改的文件。

app.js

这是一个js文件,所以要求要懂一些Javascript语法。

所以说明还是和Java有关的。不用担心,难不倒我们Android 开发人员

刚开始看我也有些懵,看了看官方文档,大体提炼出来了以下几点

  • 1.App()这个是小程序的注册器,也就是说这个必须是要有的。而且要写在app.js文件中 
  • 2.有一个类型为对象的参数,这个参数对象定义了小程序的生命周期的执行方法,还可以存储程序的一些全局变量。
  • 3.页面可以通过getApp()方法来获取APP实例以取得参数对象中的全局变量
  • 4.当然,这个参数不传也是可以的。。。。。。,具体因为啥,还请去参考js语法中对函数参数毫无节制的定义.JavaScript 函数参数规

JavaScript 函数定义不会为参数(parameter)规定数据类型。

JavaScript 函数不会对所传递的参数(argument)实行类型检查。

JavaScript 函数不会检查所接收参数(argument)的数量。

 不得不感慨,js是真的灵活。Java来的表示这么灵活真的打一就不吗?

捋了捋,相当于Android开发中我们自定义的Application类。不过它用的是js,

看完了根目录下,发现基本都是项目阶层的配置。


项目入口

那么我们的程序入口在哪里呢,是怎样规定第一个页面的呢?

这个就存在于app.json(类比于Android中的androidmanifest)中了,

app.json文件中有个键为pages的数组。

在这个数组中,谁是第一行谁就是程序入口。wow,这个规则也太公平了吧。

至于这个页面去哪里找呢,我们打开pages下面的index目录,发现有四个不同格式的index文件,这四个文件构成了一个页面,就是那个在app.json文件中用index来代替的页面。

至于这四个是怎么构成了一个页面的,下篇?


今日作业,妹子答,我在公司的最南面,顶层,太阳到了9月份就会照到工位上,从早晒到晚,去年的时候胳膊晒得又疼又痒,到了今年,直接俩胳膊不一个颜色了。

和人事协调多次缓解方法,无一成功。咋办,我想辞职了都。

而且,我身边的男程序员都觉得我小题大做,有没有妹子可以理解这种情况啊。苦恼!

这篇关于自学小程序之路(一),来自一个Android 开发人员的碎碎念的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/662139

相关文章

uniapp接入微信小程序原生代码配置方案(优化版)

uniapp项目需要把微信小程序原生语法的功能代码嵌套过来,无需把原生代码转换为uniapp,可以配置拷贝的方式集成过来 1、拷贝代码包到src目录 2、vue.config.js中配置原生代码包直接拷贝到编译目录中 3、pages.json中配置分包目录,原生入口组件的路径 4、manifest.json中配置分包,使用原生组件 5、需要把原生代码包里的页面修改成组件的方

Java面试八股之怎么通过Java程序判断JVM是32位还是64位

怎么通过Java程序判断JVM是32位还是64位 可以通过Java程序内部检查系统属性来判断当前运行的JVM是32位还是64位。以下是一个简单的方法: public class JvmBitCheck {public static void main(String[] args) {String arch = System.getProperty("os.arch");String dataM

Eclipse+ADT与Android Studio开发的区别

下文的EA指Eclipse+ADT,AS就是指Android Studio。 就编写界面布局来说AS可以边开发边预览(所见即所得,以及多个屏幕预览),这个优势比较大。AS运行时占的内存比EA的要小。AS创建项目时要创建gradle项目框架,so,创建项目时AS比较慢。android studio基于gradle构建项目,你无法同时集中管理和维护多个项目的源码,而eclipse ADT可以同时打开

android 免费短信验证功能

没有太复杂的使用的话,功能实现比较简单粗暴。 在www.mob.com网站中可以申请使用免费短信验证功能。 步骤: 1.注册登录。 2.选择“短信验证码SDK” 3.下载对应的sdk包,我这是选studio的。 4.从头像那进入后台并创建短信验证应用,获取到key跟secret 5.根据技术文档操作(initSDK方法写在setContentView上面) 6.关键:在有用到的Mo

android一键分享功能部分实现

为什么叫做部分实现呢,其实是我只实现一部分的分享。如新浪微博,那还有没去实现的是微信分享。还有一部分奇怪的问题:我QQ分享跟QQ空间的分享功能,我都没配置key那些都是原本集成就有的key也可以实现分享,谁清楚的麻烦详解下。 实现分享功能我们可以去www.mob.com这个网站集成。免费的,而且还有短信验证功能。等这分享研究完后就研究下短信验证功能。 开始实现步骤(新浪分享,以下是本人自己实现

Android我的二维码扫描功能发展史(完整)

最近在研究下二维码扫描功能,跟据从网上查阅的资料到自己勉强已实现扫描功能来一一介绍我的二维码扫描功能实现的发展历程: 首页通过网络搜索发现做android二维码扫描功能看去都是基于google的ZXing项目开发。 2、搜索怎么使用ZXing实现自己的二维码扫描:从网上下载ZXing-2.2.zip以及core-2.2-source.jar文件,分别解压两个文件。然后把.jar解压出来的整个c

android 带与不带logo的二维码生成

该代码基于ZXing项目,这个网上能下载得到。 定义的控件以及属性: public static final int SCAN_CODE = 1;private ImageView iv;private EditText et;private Button qr_btn,add_logo;private Bitmap logo,bitmap,bmp; //logo图标private st

Android多线程下载见解

通过for循环开启N个线程,这是多线程,但每次循环都new一个线程肯定很耗内存的。那可以改用线程池来。 就以我个人对多线程下载的理解是开启一个线程后: 1.通过HttpUrlConnection对象获取要下载文件的总长度 2.通过RandomAccessFile流对象在本地创建一个跟远程文件长度一样大小的空文件。 3.通过文件总长度/线程个数=得到每个线程大概要下载的量(线程块大小)。

一道经典Python程序样例带你飞速掌握Python的字典和列表

Python中的列表(list)和字典(dict)是两种常用的数据结构,它们在数据组织和存储方面有很大的不同。 列表(List) 列表是Python中的一种有序集合,可以随时添加和删除其中的元素。列表中的元素可以是任何数据类型,包括数字、字符串、其他列表等。列表使用方括号[]表示,元素之间用逗号,分隔。 定义和使用 # 定义一个列表 fruits = ['apple', 'banana

时间服务器中,适用于国内的 NTP 服务器地址,可用于时间同步或 Android 加速 GPS 定位

NTP 是什么?   NTP 是网络时间协议(Network Time Protocol),它用来同步网络设备【如计算机、手机】的时间的协议。 NTP 实现什么目的?   目的很简单,就是为了提供准确时间。因为我们的手表、设备等,经常会时间跑着跑着就有误差,或快或慢的少几秒,时间长了甚至误差过分钟。 NTP 服务器列表 最常见、熟知的就是 www.pool.ntp.org/zo