应用开发

NW.js桌面应用开发(一)

我怕爱的太早我们不能终老 提交于 2019-12-01 07:29:37
NWjs中文网地址: https://nwjs.org.cn/ NWjs英文网地址: https://nwjs.io/ 一些需要了解的历史与特性,其实就是 NW.js 和 Electron 的争议,看看就好,不必纠结,想用那个用那个喽,或者要你用那个就得用那个喽,然后开干 1、下载SDK版工具 从 淘宝NPM镜像 下载,速度飞快,我选择最新的 https://npm.taobao.org/mirrors/nwjs/v0.41.2/nwjs-sdk-v0.41.2-win-x64.zip 版本,对应 Chromium 77 + Node 12.9.1 然后就可以按照官网 快速入门 例子,就像构建一个Node项目一样从package.json起手,首先构建一个静态页面的应用。 2、准备好package.json和index.html两个文件 { "name": "helloworld", "main": "index.html" } 注意 :Windows系统的默认编码是GBK,而我们经常写代码用的是UTF-8(VS除外),这里index,html的编码格式就得改一改了,就像CMD黑窗口一样,UTF-8的内容在Windows上默认是无法正常显示的 <!DOCTYPE html> <html> <head> <title>Hello World-这是标题!</title> </head>

结对编程项目应用开发的收获与总结

核能气质少年 提交于 2019-11-30 14:24:11
本次结对编程项目是基于我的搭档的个人项目。我负责UI前端编写以及服务器后端,我的搭档负责题目的生成部分的代码。 项目地址: https://github.com/qkuns/ATPGS 尽管结对项目花了一周的时间,事实上只有commit26次。 一开始我们决定完成一个移动应用,于是使用React-Native作为开发的框架(前端),后端使用php。 开发平台macOS,运行平台iOS。 一开始我先列出了项目所有的需求,大概构想出每个需求实现的顺序。然后着手写代码。 基于以前开发的经验,完成页面的速度很快。但是也有一些失误: 一开始我认为这个应用的数据在组件中通信不是很多,于是决定开组件的props和页面之间路由进行数据传递。但是到了前端的开发后期,发现组件之间的通信写了很多难以理解的代码。 如下图,首页这个页面里有一个卡片,卡片上的Tab栏负责输入小学初中高中,下面的四个按钮和一个文本负责输入数量,生成试卷时需要从Tab中获取年级数据,还要从文本中获取数量,文本框的数据还要和按钮绑定…… 写到一半就觉得代码冗余,一开始就应该选用redux进行数据管理的。 前端的基本没有其他问题了。 于是开始着手后端和部署服务器了。 先是简单的学习了一下运维知识,购买了阿里云服务器。熟悉了LAMP的服务器环境下,如何可以从外部访问,怎么部署一个网站。 然后学习了一点php知识

海康威视面试-java应用开发

回眸只為那壹抹淺笑 提交于 2019-11-30 07:42:54
一面:技术面 (1)对着简历问本科学过的java相关课程,都学了哪些东西。很懵逼,很早之前学的东西,我都记不清楚了 (2)网络编程相关知识,我也不太懂,就回答了网络协议这块的知识 (3)线程相关,线程创建方法,怎么创建多个线程?回答线程池。线程池创建有哪些方法?回答四种,。。。 (4)问了锁相关知识,synchronized怎么使用的?回答,方法或方法块中。分别在方法和方法快中怎么使用。回答synchronized(this)或者Object o1=new Object (),synchronized(o1)、Object o2=new Object (),synchronized(o2)。问同一个类中(类中只创建了一个锁对象Object o=new Object ()),使用synchronized(this)和Object o=new Object (),synchronized(o)有什么区别。我回答,没区别,面试官好像不太开心,估计错了。 (5)问你是跨专业,为什么想学从事开发的工作。然后问了都是通过什么方法学习。我回答看书、博客、视频。问最近学了哪个知识,介绍一下。我回答了一下jvm,然后介绍了一下jvm各模块的工作原理和流程。中间问了参数传值和引用的区别?什么时候触发gc(full gc、minor gc。minor gc没回答上来) (6)介绍一下集合框架

数字货币交易行为的可视化分析

こ雲淡風輕ζ 提交于 2019-11-30 02:36:23
理解中心化数字货币交易平台上的交易行为需要对它的几种钱包地址进行分析,本文采用可视化的方法来展示不同类型钱包地址之前的交易模式。 在数字货币交易平台上主要有四种类型的钱包地址: 热钱包地址:热钱包是外部和交易所之间的主要交互点。交易平台使用这种 钱包来保证数字资产的交易。 冷钱包地址:交易平台使用冷钱包作为数字加密资产的安全存储。这种 类型的钱包通常会持有大量不需要频繁交易的资产 充值/入金地址:通常是临时性的链上地址,用于将数字资产转入交易平台以便 进行交易。 提现/出金地址:通常是临时性的链上地址,用于将数字资产转出交易所 钱包。有时提现地址和充值地址可以用一个。 这四个组件构成了中心化交易平台的链上架构的核心, 要识别出一个地址属于哪一种需要复杂的假设或机器学习方法。部分挑战在于这些地址间的交互模式可以非常复杂并且还没有被很好的理解。我们利用机器学习分类器的帮助,通过可视化手段来探索区块链数据集,发现了一些迷人的模式。 1、充值地址 -> 交易所主钱包 数字货币交易平台的一个主要模式就是将资产从入金地址转入交易所主钱包。下面的可视化图形清晰地展示了这种运作模式,其中蓝圈表示充值地址,绿圈表示住钱包地址。值得注意的是,这一资金归集操作通常会将许多入金地址打包到单一交易中转入主钱包: 这一模式可以在更大规模观察到: 2、交易所主钱包 -> 提现地址

嵌入式应用开发常见面试题

南楼画角 提交于 2019-11-29 21:39:58
1.什么是动态库和静态库 静态库在程序编译时会被连接到目标代码中,程序运行时将不再需要该静态库。 动态库在程序编译时并不会被连接到目标代码中,而是在程序运行是才被载入,因此在程序运行时还需要动态库存在。 2.串口如何发送浮点类型数据 直接把float数据拆分为4个unsigned char(由于数字没法拆分,所以只能用指针的),发过去,在合并为float。 3.A传输一个buffer给B串口,请问B接收后如何解析出来 缓冲区、一字节一字节 4.操作系统和编译器如何区分全局变量和局部变量? 操作系统只管调度进程,编译器通过内存分配的位置来知道的,全局变量分配在全局数据段并且在程序开始运行的时候被加载。局部变量则分配在栈里面 。 5.Makefile文件的作用? makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为makefile就像一个Shell脚本一样,其中也可以执行操作系统的命令。 6.键字registr,typdef的作用? register关键字的作用: 请求CPU尽可能让变量的值保存在CPU内部的寄存器中,减去CPU从内存中抓取数据的时间,提高程序运行效率。 使用register关键字应注意什么? 1.只有局部变量才可以被声明用register修饰

Web应用开发技术(3)-html

喜你入骨 提交于 2019-11-29 07:03:45
Web应用开发技术 多媒体(Multiple-Media) HTML5标准原生支持多媒体,不再需要像以前一样使用各种混乱的插件实现(比如Flash等) 在网页中嵌入多媒体通过 <audio> 和 <video> 元素实现 iframe 内联框架,在当前页面中嵌入其他页面或资源 扩展 audio元素是h5新增的元素,播放音乐 controls 显示播放进度条 autoplay 不显示播放进度条 loop 是否自动重复,即单曲循环 video 显示视频 controls 显示的宽度 一些音乐文件不能单单改文件的后缀名,要下载格式化工厂转化 只有有交互,才能走得更远 windows命令行中修改用户密码,无论是否之前有过密码,都可以更改 net user 密码 一份数据发送时各层协议的作用:应用层负责把数据准备好,格式等准备好调用send,送给传输层,若给TCP,TCP会在数据前面加上目标端口号,在后面加上原端口号,再到网络层IP,IP再在两侧加上目标IP和原IP再发送给物理层传送,物理层到路由器时,路由器会查看目标IP和端口号,查看路由表,查到了就传送给下个路由,没有查到就按默认IP和端口号发送.....对方收到后,会层层解包,步骤相反,到传输层时会校验数据,校验失败会让发送方重新发送,校验成功会将数据两端的IP端口号去掉,再将数据包解包后交给应用层 软件防火墙一般在传输层和网络层之间

企业微信第三方应用开发几个注意点

妖精的绣舞 提交于 2019-11-28 19:47:57
不知不觉已经搞企业微信开发2年了,平时重心主要在业务上,没有对企业微信授权流程进行笔记整理,企业微信API,新手看有点迷糊,如果有人讲一遍就会好很多,下面把第三方应用开发中几个不好理解的地方记录下。 1、服务商平台,创建一个非通讯录应用 应用主页指的是手机端登录后访问的第一个页面,业务设置URL指的是后台访问首页,管理员。数据回调URL一般用不上,指令回调URL一般在授权通讯录变更时会从企业微信服务器回调。 例如前往服务商后台页面指的就是业务设置URL 2、获取企业永久授权码 当从手机端或者网页台授权时,会直接通过 获取到永久授权码,不需要进行预授权码处理。 3、通讯录同步 通讯录管理这些方法,不需要开启API接口同步,只需要企业用户授权一个通讯录应用即可,然后通过通讯录应用拿到accesstoken即可操作通讯录。 4、没有授权通讯录情况下是无法拿到手机号隐私信息的,特殊需要单独向微信申请(一般需要通不过),之前是可以的。 来源: https://www.cnblogs.com/zhaogaojian/p/11424231.html

我们在web应用开发过程中经常遇到输出某种编码的字符,如ISO8859-1等,如何输出一个某种编码的字符串?

人走茶凉 提交于 2019-11-28 06:16:53
  考察对String类的熟悉程度,要输出特定编码的字符串,需要用到String类的两个方法:     1、public String(byte[] bytes, Charset charset) :使用指定的字符集 解码 指定的字节数组来构造新的字符串。     2、public byte[] getBytes(Charset charset):使用给定的字符集将该字符串 编码 为一个字节序列,并将结果存储到一个新的字节数组中。   这两个方法中的charset必须一致,否则会出现乱码。 来源: https://www.cnblogs.com/crush-u-1214/p/11396854.html

一、Spring开发框架

允我心安 提交于 2019-11-28 02:56:54
Spring是我们接触JavaWeb开发遇到的第一个框架 1、首先我们说一下什么是框架?   框架是整个程序的主心骨,它并不是主要完成、解决一个单纯的任务,也不是一个函数。它用来定义所有模块、插件之间耦合方式,协作机制。 2、框架的意义?    3、什么是Spring?     是一个开源的轻量级,用来简化企业级应用开发的应用开发框架。 4、Spring的意义和作用? 来源: https://www.cnblogs.com/danielJinyu/p/11387653.html

应用开发特色

删除回忆录丶 提交于 2019-11-27 20:25:03
1. 四大组件 Android系统四大组件分别是活动(Activity)、服务(Service)、广播接收器(Broadcast Receiver)和内容提供器(ContentProvider)。其中活动是所有 Android 应用程序的门面, 凡是在应用中你看得到的东西,都是放在活动中的。而服务就比较低调了,你无法看到 它,但它会一直在后台默默地运行,即使用户退出了应用,服务仍然是可以继续运行的。 广播接收器可以允许你的应用接收来自各处的广播消息,比如电话、短信等,当然你的 应用同样也可以向外发出广播消息。内容提供器则为应用程序之间共享数据提供了可 能,比如你想要读取系统电话簿中的联系人,就需要通过内容提供器来实现。 2. 丰富的系统控件 Android 系统为开发者提供了丰富的系统控件,使得我们可以很轻松地编写出漂亮 的界面。当然如果你品味比较高,不满足于系统自带的控件效果,也完全可以定制属于 自己的控件。 3. SQLite 数据库 Android 系统还自带了这种轻量级、运算速度极快的嵌入式关系型数据库。它不仅 支持标准的 SQL 语法,还可以通过 Android 封装好的 API 进行操作,让存储和读取数据 变得非常方便。 4. 地理位置定位 移动设备和 PC 相比起来,地理位置定位功能应该可以算是很大的一个亮点。现在 的 Android 手机都内置有 GPS