6 躬行之

尚未进行身份认证

我要认证

个人公众号:躬行之(jzman-blog),推送原创Android系列技术文章,欢迎关注交流。

等级
TA的排名 9w+

Spring Boot系列之Thymeleaf模板入门

原文首发于微信公众号:躬行之(jzman-blog)Thymeleaf 是一个用于 Web 开发的 Java 模板引擎,能够处理 HTML、XML、JavaScript、CSS 甚至纯文本,Spring Boot 推荐使用 Thymeleaf 模板引擎而不是传统的 JSP 技术,主要内容如下:引入ThymeleafThymeleaf属性Thymeleaf的使用热部署引入Thymeleaf个人觉得 Gradle 相较 Maven 更简洁,这里是用 gradle 来构建整个 Web 项目.

2020-10-27 00:42:33

Spring Boot系列之开发一个接口

原文首发于微信公众号:躬行之(jzman-blog)Spring Boot 是用来简化 Spring 应用程序的开发的,可以减少不必要的配置过程,其主要特性包括 Spring Boot Starter、自动配置、命令行接口、Actuator 等,作为 Android 开发者对 Spring Boot 的学习将以会使用为主,所有文章会基于对应的案例,本篇文章将从以下几个方面介绍如何使用 Spring Boot 开发一个接口:Spring Boot项目初始化使用IDEA创建Spring Boot项目.

2020-10-13 01:16:14

设计模式之迭代器设计模式

原文首发于微信公众号:躬行之(jzman-blog)迭代器设计模式是一种常用的设计模式,用于提供一种方法顺序访问一个聚合对象中的各种元素,但是又不暴露该对象的内部表示,迭代器设计模式属于行为型设计模式。相关概念使用场景Java实现Dart实现相关概念抽象聚合角色:定义添加、删除等操作聚合对象的方法以及创建迭代器的方法;具体聚合角色:抽象聚合角色的具体实现类;抽象迭代器角色:定义迭代器相关方法,比如 hasNxt、first、last等方法;具体迭代器角色:抽象迭代器角色的具体实.

2020-09-29 00:22:03

Wireshark分析验证TCP协议

原文首发于微信公众号:躬行之(jzman-blog)最近特意书梳理了一下 TCP 相关的知识,并通过抓包进行了验证,并分析了从 TCP 建立连接到端来连接的全过程,相信以前和我一样上课没懂的看完这篇文章应该差不多懂了。TCP 提供的是一种面向连接的、可靠的字节流服务,也就是说两个 TCP 的应用在交换数据之前必须建立一个 TCP 连接,且在一个 TCP 连接中仅有两方进行通信,TCP 和 UDP 都使用相同的网络层。使用 TCP 发送数据时,数据会被分割成 TCP 认为最适合发送的数据块,这一点与.

2020-09-27 00:23:52

普及一下IPTV行业

原文首发于微信公众号:躬行之(jzman-blog)机顶盒起源于 20 世纪 90 年代欧美国家,主要用于保护版权和收取收视费,有线电视台在电视机前加一个密钥盒。只有交了费的用户才能正常收看电视,这就是最初机顶盒的原型。后来随着互联网技术的不断发展出现了具备上网功能的机顶盒,但是市场反响一般。20 世纪 90 年代后期,随着美国和欧洲 DTV(数字电视)和 HDTV(高清晰度数字电视)试播之后,掀起了机顶盒发展的高潮,这次机顶盒的主要作用是普通模拟电视机收看数字电视或数字高清晰度电视,这种机顶盒就是.

2020-09-24 23:57:33

单链表及其反转

原文首发于微信公众号:躬行之(jzman-blog)单链表是一种链式存取的数据结构,用一组地址任意的存储单元存放线性表中的数据元素。链表中的数据是以结点来表示的,每个结点由元素和指针构成,元素是存储数据的存储单元,指针是连接每个结点的地址数据,本文将介绍什么是单链表以及单链表的翻转,主要内容如下:什么是单链表遍历反转单链表递归反转单链表什么是单链表对于单链表的每个结点,都有两块存储区域,一块存储对应节点的数据,另一块存储该节点的下一个结点的地址,可以称之为后继指针(next),单链表图示.

2020-09-22 23:55:38

自定义View中为何match_parent和wrap_content效果一样

原文首发于微信公众号:躬行之(jzman-blog),欢迎关注交流!今天来分享一个我在自定义 View 中遇到的问题,如果分析有误,还望各位指出,在自定义 View 的过程中一定会遇到一个问题,自定义 View 没有问题,唯独在自定义的 View 中 match_parent 和 wrap_content 效果一致,onMeasure() 方法如下:/** * * 测量View的宽度和高度,这个方法由 measure方法调用,一般由子类重写该方法以提供更加精确和高效的测量 * * 规定:当重.

2020-09-21 00:49:32

LayoutInflater.Factory使用及源码解析

PS:原文首发于微信公众号:躬行之(jzman-blog)LayoutInflater.Factory 是提供给你的一个加载布局使用的回调接口(Hook),可以使用 LayoutInflater.Factory 来自定义布局文件,实际上就是可以在 LayoutInflater.Factory 的回调中可以根据对应的 Tag 来修改某个 View,然后返回出去,LayoutInflater.Factory 源码如下:// LayoutInflater.javapublic interface Fac.

2020-09-15 23:38:17

Android Jetpack组件之Paging Library源码篇

PS:原文首发于微信公众号:躬行之(jzman-blog)阅读本文之前,可先阅读同系列 Android Jetpack 组件文章如下 :Android Jetpack组件之Lifecycle篇Android Jetpack组件之LiveData详解Android Jetpack组件之ViewModel篇Android Jetpack组件之DataBinding详解Android Jetpack组件之使用可观察的数据对象Android Jetpack组件之Paging Library使用篇.

2020-08-31 00:31:37

Android Jetpack组件之Paging Library使用篇

PS:原文首发于微信公众号:躬行之(jzman-blog)阅读本文之前,可先阅读同系列 Android Jetpack 组件文章如下 :Android Jetpack组件之Lifecycle篇Android Jetpack组件之LiveData详解Android Jetpack组件之ViewModel篇Android Jetpack组件之DataBinding详解Android Jetpack组件之使用可观察的数据对象本文将介绍 Paging Library 库的使用,其源码解析将在下.

2020-08-19 01:26:38

Android Jetpack组件之使用可观察的数据对象

PS:原文首发于微信公众号:躬行之(jzman-blog)可观察性是指某个对象变化通知其他数据的能力,主要有三种可观察类型:字段对象集合使用数据绑定可对数据对象提供在数据更改时通知其他数据更改的能力,将一个可观察数据对象绑定到 UI 上,当数据对象的属性发生变化可自动更新 UI。字段如果某个类只有几个属性,为了使得这些对象具有观察数据变化的能力,可以使用可观察字段(Observable fields)来实现,databinding 中提供了这样的通用 Observable 类,包括八种.

2020-06-30 00:03:03

Android Jetpack组件之BindingAdapter详解

PS:原文首发于微信公众号:躬行之(jzman-blog)上篇主要是 DataBinding 的基本使用,Android Jetpack 组件系列文章如下 :Android Jetpack组件之Lifecycle篇Android Jetpack组件之LiveData详解Android Jetpack组件之ViewModel篇Android Jetpack组件之DataBinding详解本篇文章主要介绍 Binding adapters 的使用方式,内容如下:databinding机制.

2020-06-12 00:02:58

Android Jetpack组件之DataBinding详解

原文首发于微信公众号:躬行之(jzman-blog)前面总结了 ViewModel、LiveData 及 Lifecycle 架构组件的使用,可先阅读下面文章详细了解:Android Jetpack组件之Lifecycle篇Android Jetpack组件之LiveData详解Android Jetpack组件之ViewModel篇本篇主要侧重 dataBinding 的基本使用,主要内容如下:dataBinding支持布局文件配置绑定数据特殊表达式事件绑定自定义绑定类O.

2020-05-25 07:36:23

Android Jetpack组件之ViewModel篇

PS:原文首发于微信公众号:躬行之(jzman-blog)前面学习了 LiveData 和 Lifecycle 架构组件的使用:Android Jetpack组件之Lifecycle篇Android Jetpack组件之LiveData篇ViewModel 具有生命周期意识,会自动存储和管理 UI 相关的数据,即使设备配置发生变化后数据还会存在,我们就不需要在 onSaveInstanceState 保存数据,在 onCreate 中恢复数据了,使用 ViewModel 这部分工作就不需要我.

2020-05-11 00:04:01

Android Jetpack组件之LiveData详解

PS:原文首发于微信公众号:躬行之(jzman-blog)LiveData 是一个可观察的数据持有者类,与常规 observable 不同,LiveData 是生命周期感知的,LiveData 也是 Android Jetpack 组件的一部分,本文将从如下几个方面学习 LiveData:什么是LiveDataLiveData的优点LiveData的使用自定义LivedataLi...

2020-04-08 00:19:36

Android Jetpack组件之Lifecycle-Aware组件使用及源码解析

PS:原文首发于微信公众号:躬行之(jzman-blog)Lifecycle-Aware 组件是 Android Jetpack 的一部分,该组件可以感知 Activity 和 Fragment 的生命周期状态的改变,有利于生成更易组织、更轻量化、更易于维护的代码,常用的开发方式就是在组件的对应的生命周期方法中处理相关业务逻辑,这种方式会导致不良代码的产生以及 bug 的增加,如果使用生命周...

2020-04-02 00:38:55

HTTPS及加密算法,看这一篇就够了

PS:坚持就是最大的超越。最近交流群里有人问 HTTPS 相关的知识,虽然会用,但是却一知半解,今天专门来总结一些 HTTPS 相关的知识点,这一篇主要是相关理论知识,下一篇写个案例实践一下,主要内容如下:HTTP的缺点什么是HTTPS公开密钥加密技术HTTPS加密传输公开密钥证书SSL和TLS为什么不使用HTTPSHTTP的缺点HTTP 的缺点如下:通信使用明文...

2020-03-24 23:38:12

时间复杂度和空间复杂度

时间复杂度和空间复杂度可以帮助我们根据具体的平台选择合适的算法,要学会以空间换时间或以时间换空间的设计思想,如在单片机等一般是内存空间比较紧张,在追求最优算法时应该可以适当以时间来换空间进行设计,当然在大内存设备上可以选择以空间换时间的设计思想来设计最优算法,所以,时间和空间复杂度可在一定的限制条件下作为判断某个算法或代码块运行快慢的判断方式,主要从如下几个方面了解和学习时间和空间复杂度:数据...

2020-03-22 21:05:04

设计模式之外观设计模式

PS:输入倒逼输出,想持续输出就得持续输入,每天的坚持很小,但是如果坚持一年呢,甚至更长时间呢,结果不一定很美好,但是过程一定很充实。今天温习一下外设计模式,可以选择阅读同系列文章:提到外观设计模式,就不得不提到设计模式的六大原则之一的迪米特法则,本篇文章将从如下几个方面介绍外观设计模式:迪米特法则如何理解外观设计模式实现外观设计模式迪米特法则开发中经常会遇到类与类之间的关...

2020-03-17 00:52:11

Android组件化之ARouter的使用

原文首发于微信公众号:躬行之(jzman-blog),欢迎关注交流!前面两篇文章分别介绍了 Android 组件化基础知识以及 Android 组件化过程 Application 的相关知识,在阅读本文之前可以先阅读下面两篇文章:Android组件化基础Android组件化之ApplicationAndroid 组件化过程中涉及到不同 module 之间界面的跳转也是分厂重要的,如...

2020-03-10 22:45:58

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 技术圈认证
    技术圈认证
    用户完成年度认证,即可获得
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 学习力
    学习力
    《原力计划【第二季】》第一期主题勋章 ,第一期活动已经结束啦,小伙伴们可以去参加第二期打卡挑战活动获取更多勋章哦。
  • 原力新人
    原力新人
    在《原力计划【第二季】》打卡挑战活动中,成功参与本活动并发布一篇原创文章的博主,即可获得此勋章。