Java 11 ( 1 ) 模块化

Submitted by Lizhe on Wed, 09/26/2018 - 15:55

Java9 和 Java10 都不是长期支持版本, 而且Java9的改动非常大, Oracle于昨天 2018年9月25日更新了JavaSE 11

所以想拿出来研究一下, 这里特别强调是JavaSE 11 是因为EE已经跟这个没关系了

因为之前java9就没仔细看, 现在放在一起记录一下

 

环境准备:

这里我建议还是用虚拟机, 因为当前的真实开发环境中很多都是java8的, 不要直接升级成11

这里我在Mac上所以直接用了vagrant, 安装过程也很简单, oracle官网下载完rpm包之后直接yum安装就可以了

 

首先来个helloworld

代码结构如下

Kubernetes (2)

Submitted by Lizhe on Fri, 09/21/2018 - 13:37

 

资源管理的常用命令如

kubectl get pod

kubectl get rc

kubectl delete pod mysql-1r1b4 --grace-period=0 --force

kubectl delete rc mysql

React 环境备忘

Submitted by Lizhe on Wed, 08/01/2018 - 15:05

https://github.com/Microsoft/vscode-eslint

20180801030917

{

"window.zoomLevel": 0,

"workbench.statusBar.feedback.visible": false,

"update.channel": "none",

"update.enableWindowsBackgroundUpdates": false,

Kubernetes (1)

Submitted by Lizhe on Wed, 08/01/2018 - 14:50

Kubernetes 不局限于任何一种语言, 服务可以毫无困难的映射为Kubernetes的service , 通过TCP进行交互

Service 是分布式集群架构的核心, 一个Service对象拥有如下关键特征

拥有一个唯一指定的名字

拥有一个虚拟IP和端口号

能够提供某种远程服务

被映射到了提供这种服务能力的一组容器应用上

 

一个Pod是一个容器环境下的“逻辑主机”,它可能包含一个或者多个紧密相连的应用,这些应用可能是在同一个物理主机或虚拟机上。

Pod 的context可以理解成多个linux命名空间的联合

  • PID 命名空间(同一个Pod中应用可以看到其它进程)
  • 网络 命名空间(同一个Pod的中的应用对相同的IP地址和端口有权限)
  • IPC 命名空间(同一个Pod中的应用可以通过VPC或者POSIX进行通信)
  • UTS 命名空间(同一个Pod中的应用共享一个主机名称)

 

ES6 map, filter

Submitted by Lizhe on Thu, 07/12/2018 - 17:27

  test = () => {

    var data = [1, 2, 3, 4];

    var arrayOfSquares = data.map(function(item) {

      return item * item;

    });

    console.log(arrayOfSquares);

  };

test = () => {

    var data = [0, 1, 2, 3];

    var arrayFilter = data.filter(function(item) {

React 通过 storybook 进行单元测试

Submitted by Lizhe on Mon, 07/09/2018 - 15:09

安装下面的包

  382  npm install --save @storybook/react

  383  npm install --save @storybook/addon-actions

  384  npm install --save @storybook/addon-links

  385  npm install --save @storybook/addons

在package.json平级目录下放置.storybook文件夹

/Users/lizhe/Documents/DEV/projects/es6/study/app/.storybook

文件夹内放置文件

/Users/lizhe/Documents/DEV/projects/es6/study/app/.storybook/config.js

React recompose

Submitted by Lizhe on Thu, 07/05/2018 - 14:59

recompose 模块可以帮助"提升"很多无状态的模块

you take a stateless component, and without creating any class, you enhance it to provide a state and your return the new component, that is "enhanced".

安装

npm install --save recompose

说明文档

https://github.com/acdlite/recompose/blob/master/docs/API.md#withstate

import React, { Component } from "react";

git pull request 入门

Submitted by Lizhe on Tue, 07/03/2018 - 10:52

向目标项目提交需要遵循以下步骤

1. fork目标项目到你本地

2. clone你本地项目

3. 修改本地代码, 然后commit和push, 这些都是到本地

4. 然后去网页new pull request

如果要从目标项目更新到本地

1. 将目标项目添加为远程库 git remote add upstream git@github.com:pactera-admindev-lizhe/Test.git

-t branch

2. 然后可以看到远程库

lizhedeMacBook-Pro:Test lizhe$ git remote -v

origin https://github.com/zl86790/Test.git (fetch)

origin https://github.com/zl86790/Test.git (push)

upstream git@github.com:pactera-admindev-lizhe/Test.git (fetch)

javascript flow checker

Submitted by Lizhe on Fri, 06/29/2018 - 13:11

Setup:
Run npm install flow-bin to add Flow package 

Update package.json file to add "flow": "flow" inside the scripts section
Initialize Flow: npm run flow init (it will generate a .flowconfigfile at the root level) 

Check if Flow is working by running: npm run flow