大二牲的开发之旅 | 青训营笔记

84 阅读3分钟

这是我参与「第五届青训营 」笔记创作活动的第1天,身为一个四大件只学到了计组的大二牲,在第一课时,我有很多概念第一次听说(可能是本人是个菜鸡的缘故),但一想到不是每个人都是带飞全场的带佬,所以忍着被嘲笑的风险斗胆提了出来,希望uu们可以轻点喷。

一、json

JSON(全称是 JavaScript Object Notation,即 JavaScript对象标记法)是Douglas Crockford于2001年提出的,现已成为一项技术标准【后端小菜鸡不知道,哭】:

JSON包含下面三种核心数据类型:

  • 名称-值对
    由一个名称(数据类型)和一个值组成
  • 对象
    名称-值对的无序集合
  • 数组
    值的有序集合

JSON 的语法规则十分简单,可称得上“优雅完美”,总结起来有:

  • 数组(Array)用方括号(“[]”)表示。
  • 对象(0bject)用大括号(“{}”)表示。
  • 名称/值对(name/value)组合成数组和对象。
  • 名称(name)置于双引号中,值(value)有字符串、数值、布尔值、null、对象和数组。
  • 并列的数据之间用逗号(“,”)分隔。

二、时间戳

一个能表示一份数据在某个特定时间之前已经存在的、 完整的、 可验证的数据,通常是一个字符序列,唯一地标识某一刻的时间。

时间戳(time-stamp)是一个经加密后形成的凭证文档,它包括三个部分:

  • 1、需加时间戳的文件的摘要(digest)

  • 2、DTS收到文件的日期和时间

  • 3、DTS的数字签名 一般来说,时间戳产生的过程为:用户首先将需要加时间的文件用Hash编码加密形成摘要,然后将该摘要发送到DTS,DTS在加入了收到文件摘要的日期和时间信息后再对该文件加密(数字签名),然后送回用户。 书面签署文件的时间是由签署人自己写上的,而数字时间戳则不然,它是由认证单位DTS来加的,以DTS收到文件的时间为依据。

前两者主要是前端的知识,涉猎不够多的后端小伙伴(比如我)可能有点陌生,所以我在网上搜集整理了一下,还算是清晰,希望同学们能够喜欢。

三、随机数

import java.util.Random;
import java.util.Scanner;
public class play{
    public static void main(String[] args){
        Random r=new Random();
        int number=r.nextInt(100)+1;
        while(true){
            System.out.println("请输入猜的数字");
            Scanner sc=new Scanner(System.in);
            int guessNumber = sc.nextInt();
            if(number>guessNumber){
                System.out.println("你猜的数字"+guessNumber+"小了");
            }else if(number<guessNumber){
                System.out.println("你猜的数字"+guessNumber+"大了");
            }else{
                System.out.println("恭喜你猜对了");
                break;
            }
        }
    }
}

我用我所较为熟知的的java写的一个随机数游戏,和例子相对比可以看出go语言在输入输出的反馈方面比较容易,go会返回两个数值,结合err可以将错误即时的反馈回来,很严谨,虽然代码段看起来比较长就是了,但若是用java的异常处理可能也不会短到哪里去。。。总体而言,两种语言的共同之处还是挺多的,转换起来也比较容易。