前言

在项目中需要引入dependency check的工具来扫描相关依赖的库是否有安全漏洞等问题。由于是使用Gradle作为依赖构建工具,以及kotlin作为开发语言,所以选择了owasp dependency checkGradle插件的方式。最后需要将报告上传到sonar进行展示。

工具

  • Gradle 6.4.1
  • org.owasp.dependencycheck
  • sonarqube

流程

引入依赖
阅读全文 »

背景

由于疫期影响,公司在短期内没有接到新的项目,于是就有近10多个小伙伴处于无项目状态。正好公司有一个idea是关于做一个shareable component,服务于以后的其他项目,减少一些集成时间,所以就召集了这些小伙伴来一起成立了这个Team。但是对于这个项目,需求并不明确,技术栈不好确定,让小伙伴们感觉无从下手。于是就由公司的BA带领,做了一次Inception,梳理相关的需求。

过程

User Interview Prepare

在决定做Inception后,我们就开始了对于用户调研的准备。关于目标用户,我们挑选了“已经集成过该功能”的项目组成员,以及“准备集成该功能”的项目组成员。从“已集成”的用户方可以了解到集成的痛点和经验,从“准备集成”的用户方可以了解到担心的点和功能的需求。

阅读全文 »

Kotlin协程学习

协程是什么

在Kotlin官方文档上面描述——“本质上,协程是轻量级的线程”,在Kotlin中的协程也可以说是Kotlin提供的一套线程封装的API。

一个简单的示例:

1
2
3
4
launch({
val user = APIService.getInstence().getUser() //请求网络数据
nameTv.text = user.name
})
阅读全文 »

Android网络请求

对于Android的网络请求有很多种用法,本文讨论的是kotlin协程+Retrofit2进行网络请求的处理。

通过阅读Retrofit的官方文档可以知道,首先我们需要定义service的接口,即请求的方式,参数,以及返回值。需要对方法使用suspend关键词进行包装,这里使用suspend关键词包装的原因是我们会在viewmodel中使用协程进行访问api的操作。

阅读全文 »

Android技术沉淀

表单处理

表单的处理在项目中会经常遇到,在我们POC项目中,也会涉及到处理用户信息的显示与更新,如图 5-1 所示。由于获取用户信息是异步操作,需要调用API,若此时用户在输入框中输入信息,当获取用户信

阅读全文 »

个人沉淀

TypeScript概要

  • 编译期行为
  • 不改变运行时行为
  • 不会引入额外的开销
  • 契约高于实现
    阅读全文 »

  • 相关系统

    • ubuntu
    • redhat
    • centOS
  • 使用方向

镜中人

人们对于自我的评价大部分来自于他人的观点,每个人的自我观,都是通过与别人的相互作用形成的。自我的概念似乎有这么三条原则:想象我们呈现给他人的外在;想象他人对我们呈现外在的评价,以及感知对这种评价的自我感觉,比如骄傲或者耻辱。

自我服务偏见

表现为以下四类:

阅读全文 »

函数

函数即是一种特殊的对象——函数对象,初始化一个Function如下:

1
2
var funName = new Function( [argname1, [...argnameN]], body );
var add = new Function( "x", "y", "retruen x + y" );

通过new关键字创建了一个Function对象,和使用new String("test")创建String对象是一个道理。现在的语法糖,通过字面量来创建函数,如:

阅读全文 »
0%