惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Project Zero
Project Zero
GbyAI
GbyAI
Y
Y Combinator Blog
Google DeepMind News
Google DeepMind News
小众软件
小众软件
The GitHub Blog
The GitHub Blog
阮一峰的网络日志
阮一峰的网络日志
J
Java Code Geeks
WordPress大学
WordPress大学
Microsoft Security Blog
Microsoft Security Blog
IT之家
IT之家
F
Fortinet All Blogs
博客园 - 【当耐特】
H
Hackread – Cybersecurity News, Data Breaches, AI and More
P
Proofpoint News Feed
Schneier on Security
Schneier on Security
C
Cybersecurity and Infrastructure Security Agency CISA
L
LINUX DO - 热门话题
Spread Privacy
Spread Privacy
O
OpenAI News
V
V2EX
博客园 - 三生石上(FineUI控件)
AI
AI
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Stack Overflow Blog
Stack Overflow Blog
P
Privacy International News Feed
Microsoft Azure Blog
Microsoft Azure Blog
Blog — PlanetScale
Blog — PlanetScale
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Jina AI
Jina AI
H
Help Net Security
L
LINUX DO - 最新话题
Application and Cybersecurity Blog
Application and Cybersecurity Blog
T
Tenable Blog
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
Cisco Talos Blog
Cisco Talos Blog
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
博客园 - 叶小钗
V
Vulnerabilities – Threatpost
C
Cisco Blogs
D
Darknet – Hacking Tools, Hacker News & Cyber Security
酷 壳 – CoolShell
酷 壳 – CoolShell
Hacker News: Ask HN
Hacker News: Ask HN
S
Security @ Cisco Blogs
S
Securelist
T
The Blog of Author Tim Ferriss
Apple Machine Learning Research
Apple Machine Learning Research
美团技术团队
雷峰网
雷峰网
V2EX - 技术
V2EX - 技术

博客园 - ®Geovin Du Dream Park™

go: Functional Options Pattern go:Timing Functions Pattern python: Timing Functions Pattern go: Steady-State Pattern python: Steady-State Pattern go: Handshaking Pattern python: Handshaking Pattern go: Fail-Fast Pattern python: Fail-Fast Pattern I python: Deadline Pattern go: Circuit-Breaker Pattern python: Circuit-Breaker Pattern go: Bulkheads Pattern python: Bulkheads Pattern go: Push & Pull Pattern python: Push & Pull Pattern python: Publish/Subscribe Pattern II go: Publish/Subscribe Pattern python: Publish/Subscribe Pattern go: Futures & Promises Pattern python: Futures & Promises Pattern go: Worker Pool Pattern go:Pipeline Pattern python: Worker Pool Pattern python: Pipeline Pattern go: Fan-Out Pattern python: Fan-Out Pattern go: Fan-In Pattern python: Fan-In Pattern Fan-In go: Producer Consumer  Pattern python: Producer Consumer Pattern go: Parallelism Pattern python: Parallelism Pattern go: Reactor Pattern python: Reactor Pattern go: Generators Pattern python: speech to text offline python: Generators Pattern go: Coroutines Pattern python:Coroutines Pattern go: Broadcast Pattern python: Broadcast Pattern python: Bounded Parallelism Pattern go: Bounded Parallelism Pattern python: N-Barrier Pattern go: N-Barrier Pattern python: Semaphore Pattern go: Semaphore Pattern python: Read-Write Lock Pattern go: Read-Write Lock Pattern python: Monitor Pattern go: Monitor Pattern python: Mutex Pattern go: Lock/Mutex Pattern Python: Condition Variable Pattern go:Condition Variable Pattern python: Registry Pattern python: Interpreter Pattern go: Interpreter Pattern go: Registry Pattern go: Memento Pattern go: Command Pattern go: State Pattern go:Template Method Pattern go: Strategy Pattern go: Visitor Pattern go: Observer Pattern go: Mediator Pattern go: Iterator Pattern go: Chain of Responsibility Pattern go: Proxy Pattern go:Decorator Pattern go: Facade Pattern go: Flyweight Pattern go: Composite Pattern go: Singleton Pattern go: Prototype Pattern go: Bridge Pattern go: Adapter Pattern go: Builder Pattern 密码进行加盐哈希 using CSharp,Python,Go,Java go: Abstract Factory Pattern go: Model,Interface,DAL ,Factory,BLL using mysql go: Simple Factory Pattern go: Factory Method Pattern go: goLang 在Windows环境搭建Go语言开发环境 CSharp: Parallel Extensions cpp: class python: 蝴蝶跟随鼠标 javascript: 中国历史人物热力分布图using echart javascript: 中国历史人物热力图 python: 初养龙虾微信纯文字自动回复using workBuddy python: object 入门 python: Factory Method Pattern python: Simple Factory Pattern python: Abstract Factory Pattern 区域化 代码 python: Null Object Pattern python: Builder Pattern python: Adapter Pattern
go: Deadline Pattern
®Geovin Du Dream Park™ · 2026-06-29 · via 博客园 - ®Geovin Du Dream Park™

项目结构:

3c6e8547-6aa4-4a95-86c5-aa3d0b5e51d0

/*
# 版权所有  2026 ©涂聚文有限公司™ ®
# 许可信息查看:言語成了邀功盡責的功臣,還需要行爲每日來值班嗎
# 描述:Deadline Pattern 截止期限模式
# Author    : geovindu,Geovin Du 涂聚文.
# IDE       : goLang 2024.3.6 go 26.2
# os        : windows 10
# database  : mysql 9.0 sql server 2019, postgreSQL 17.0  Oracle 21c Neo4j
# Datetime  : 2026/6/29 21:41
# User      :  geovindu
# Product   : GoLand
# Project   : godesginpattern
# File      : logger.go
*/
package common

import (
	"fmt"
	"log"
	"os"
	"time"
)

// 自定义Logger结构体,配套Info/Error方法
type Logger struct {
	name   string
	logger *log.Logger
}

// 格式化时间:2006-01-02 15:04:05,000
func formatNow() string {
	return time.Now().Format("2006-01-02 15:04:05,000")
}

// GetLogger 获取模块日志实例
func GetLogger(name string) *Logger {
	return &Logger{
		name:   name,
		logger: log.New(os.Stdout, "", 0),
	}
}

func (l *Logger) Info(msg string) {
	t := formatNow()
	line := fmt.Sprintf("%s | INFO | %s | %s", t, l.name, msg)
	l.logger.Println(line)
}

func (l *Logger) Error(msg string) {
	t := formatNow()
	line := fmt.Sprintf("%s | ERROR | %s | %s", t, l.name, msg)
	l.logger.Println(line)
}




/*
# 版权所有  2026 ©涂聚文有限公司™ ®
# 许可信息查看:言語成了邀功盡責的功臣,還需要行爲每日來值班嗎
# 描述:Deadline Pattern 截止期限模式
# Author    : geovindu,Geovin Du 涂聚文.
# IDE       : goLang 2024.3.6 go 26.2
# os        : windows 10
# database  : mysql 9.0 sql server 2019, postgreSQL 17.0  Oracle 21c Neo4j
# Datetime  : 2026/6/29 21:41
# User      :  geovindu
# Product   : GoLand
# Project   : godesginpattern
# File      : exception.go
*/
package common

import "errors"

var ServiceTimeoutErr = errors.New("任务超时,已终止等待")
var ServiceInvokeErr = errors.New("服务调用异常")




/*
# 版权所有  2026 ©涂聚文有限公司™ ®
# 许可信息查看:言語成了邀功盡責的功臣,還需要行爲每日來值班嗎
# 描述:Deadline Pattern 截止期限模式
# Author    : geovindu,Geovin Du 涂聚文.
# IDE       : goLang 2024.3.6 go 26.2
# os        : windows 10
# database  : mysql 9.0 sql server 2019, postgreSQL 17.0  Oracle 21c Neo4j
# Datetime  : 2026/6/29 21:55
# User      :  geovindu
# Product   : GoLand
# Project   : godesginpattern
# File      : deadlinebll.go
*/
package bll

import (
	"fmt"
	"godesginpattern/deadline/common"
	"godesginpattern/deadline/config"
	"godesginpattern/deadline/core"
	"godesginpattern/deadline/domain"
	"math/rand"
	"time"
)

func DeadlineMain() {
	rand.Seed(time.Now().UnixNano())
	fmt.Println("===== 展示【Deadline Pattern(截止期限模式)】示例 =====")

	logger := common.GetLogger("DeadlineBll")
	logger.Info("=== 珠宝定制系统启动 ===")

	orderID := fmt.Sprintf("%s_%d", config.OrderIDPrefix, rand.Intn(9000)+1000)
	order := &domain.JewelryOrder{OrderID: orderID}
	logger.Info(fmt.Sprintf("订单创建:%+v", order))

	manager := core.NewJewelryWorkflowManager()
	final := manager.Run(order)

	logger.Info("============================================================")
	logger.Info(fmt.Sprintf("最终订单状态:%+v", final))
	logger.Info("=== 系统运行完成 ===")
}





/*
# 版权所有  2026 ©涂聚文有限公司™ ®
# 许可信息查看:言語成了邀功盡責的功臣,還需要行爲每日來值班嗎
# 描述:Deadline Pattern 截止期限模式
# Author    : geovindu,Geovin Du 涂聚文.
# IDE       : goLang 2024.3.6 go 26.2
# os        : windows 10
# database  : mysql 9.0 sql server 2019, postgreSQL 17.0  Oracle 21c Neo4j
# Datetime  : 2026/6/29 21:42
# User      :  geovindu
# Product   : GoLand
# Project   : godesginpattern
# File      : deadline.go
*/
package common

import (
	"time"
)

type DeadlineExecutor[T any] struct {
	Timeout time.Duration
}

func NewDeadlineExecutor[T any](timeoutSec int) *DeadlineExecutor[T] {
	return &DeadlineExecutor[T]{Timeout: time.Duration(timeoutSec) * time.Second}
}

func (d *DeadlineExecutor[T]) Execute(fn func() T) (T, error) {
	ch := make(chan T, 1)
	go func() {
		ch <- fn()
	}()

	select {
	case res := <-ch:
		return res, nil
	case <-time.After(d.Timeout):
		var zero T
		return zero, ServiceTimeoutErr
	}
}



/*
# 版权所有  2026 ©涂聚文有限公司™ ®
# 许可信息查看:言語成了邀功盡責的功臣,還需要行爲每日來值班嗎
# 描述:Deadline Pattern 截止期限模式
# Author    : geovindu,Geovin Du 涂聚文.
# IDE       : goLang 2024.3.6 go 26.2
# os        : windows 10
# database  : mysql 9.0 sql server 2019, postgreSQL 17.0  Oracle 21c Neo4j
# Datetime  : 2026/6/29 21:42
# User      :  geovindu
# Product   : GoLand
# Project   : godesginpattern
# File      : config.go
*/
package config

const (
	GemIdentifyTimeoutSeconds = 3
	OrderIDPrefix             = "JEWELRY_ORDER"
)



/*
# 版权所有  2026 ©涂聚文有限公司™ ®
# 许可信息查看:言語成了邀功盡責的功臣,還需要行爲每日來值班嗎
# 描述:Deadline Pattern 截止期限模式
# Author    : geovindu,Geovin Du 涂聚文.
# IDE       : goLang 2024.3.6 go 26.2
# os        : windows 10
# database  : mysql 9.0 sql server 2019, postgreSQL 17.0  Oracle 21c Neo4j
# Datetime  : 2026/6/29 21:42
# User      :  geovindu
# Product   : GoLand
# Project   : godesginpattern
# File      : models.go
*/
package domain

type GemIdentifyResult struct {
	GemType    string
	Carat      float64
	Color      string
	Clarity    string
	IdentifyNo string
}

type JewelryOrder struct {
	OrderID          string
	IdentifyResult   *GemIdentifyResult
	MaterialApproved bool
	ProduceFinished  bool
	QualityPassed    bool
	Delivered        bool
}
/*
# 版权所有  2026 ©涂聚文有限公司™ ®
# 许可信息查看:言語成了邀功盡責的功臣,還需要行爲每日來值班嗎
# 描述:Deadline Pattern 截止期限模式
# Author    : geovindu,Geovin Du 涂聚文.
# IDE       : goLang 2024.3.6 go 26.2
# os        : windows 10
# database  : mysql 9.0 sql server 2019, postgreSQL 17.0  Oracle 21c Neo4j
# Datetime  : 2026/6/29 21:43
# User      :  geovindu
# Product   : GoLand
# Project   : godesginpattern
# File      : gem_identify.go
*/
package external

import (
	"fmt"
	"godesginpattern/deadline/common"
	"godesginpattern/deadline/domain"
	"math/rand"
	"time"
)

type GemIdentifyService struct{}

func NewGemIdentifyService() *GemIdentifyService {
	return &GemIdentifyService{}
}

func (g *GemIdentifyService) Identify() *domain.GemIdentifyResult {
	log := common.GetLogger("GemIdentifyService")
	log.Info("开始调用第三方宝石鉴定服务...")

	// 50%快速 1s,50%阻塞10s触发超时
	delay := 1
	if rand.Float64() < 0.5 {
		delay = 10
	}
	time.Sleep(time.Duration(delay) * time.Second)

	identifyNo := "GEM_" + randStr(6)
	res := &domain.GemIdentifyResult{
		GemType:    "钻石",
		Carat:      1.0,
		Color:      "D",
		Clarity:    "VVS1",
		IdentifyNo: identifyNo,
	}
	log.Info(fmt.Sprintf("鉴定完成:%+v", res))
	return res
}

func randStr(n int) string {
	letters := []rune("0123456789")
	b := make([]rune, n)
	for i := range b {
		b[i] = letters[rand.Intn(len(letters))]
	}
	return string(b)
}



/*
# 版权所有  2026 ©涂聚文有限公司™ ®
# 许可信息查看:言語成了邀功盡責的功臣,還需要行爲每日來值班嗎
# 描述:Deadline Pattern 截止期限模式
# Author    : geovindu,Geovin Du 涂聚文.
# IDE       : goLang 2024.3.6 go 26.2
# os        : windows 10
# database  : mysql 9.0 sql server 2019, postgreSQL 17.0  Oracle 21c Neo4j
# Datetime  : 2026/6/29 21:43
# User      :  geovindu
# Product   : GoLand
# Project   : godesginpattern
# File      : material.go
*/
package internal

type MaterialService struct{}

func NewMaterialService() *MaterialService {
	return &MaterialService{}
}

func (m *MaterialService) Approve() bool {
	return true
}



/*
# 版权所有  2026 ©涂聚文有限公司™ ®
# 许可信息查看:言語成了邀功盡責的功臣,還需要行爲每日來值班嗎
# 描述:Deadline Pattern 截止期限模式
# Author    : geovindu,Geovin Du 涂聚文.
# IDE       : goLang 2024.3.6 go 26.2
# os        : windows 10
# database  : mysql 9.0 sql server 2019, postgreSQL 17.0  Oracle 21c Neo4j
# Datetime  : 2026/6/29 21:45
# User      :  geovindu
# Product   : GoLand
# Project   : godesginpattern
# File      : produce.go
*/
package internal

type ProduceService struct{}

func NewProduceService() *ProduceService { return &ProduceService{} }
func (p *ProduceService) Produce() bool  { return true }



/*
# 版权所有  2026 ©涂聚文有限公司™ ®
# 许可信息查看:言語成了邀功盡責的功臣,還需要行爲每日來值班嗎
# 描述:Deadline Pattern 截止期限模式
# Author    : geovindu,Geovin Du 涂聚文.
# IDE       : goLang 2024.3.6 go 26.2
# os        : windows 10
# database  : mysql 9.0 sql server 2019, postgreSQL 17.0  Oracle 21c Neo4j
# Datetime  : 2026/6/29 21:45
# User      :  geovindu
# Product   : GoLand
# Project   : godesginpattern
# File      : quality.go
*/
package internal

type QualityService struct{}

func NewQualityService() *QualityService { return &QualityService{} }
func (q *QualityService) Check() bool    { return true }


/*
# 版权所有  2026 ©涂聚文有限公司™ ®
# 许可信息查看:言語成了邀功盡責的功臣,還需要行爲每日來值班嗎
# 描述:Deadline Pattern 截止期限模式
# Author    : geovindu,Geovin Du 涂聚文.
# IDE       : goLang 2024.3.6 go 26.2
# os        : windows 10
# database  : mysql 9.0 sql server 2019, postgreSQL 17.0  Oracle 21c Neo4j
# Datetime  : 2026/6/29 21:46
# User      :  geovindu
# Product   : GoLand
# Project   : godesginpattern
# File      : deliver.go
*/
package internal

type DeliverService struct{}

func NewDeliverService() *DeliverService { return &DeliverService{} }
func (d *DeliverService) Deliver() bool  { return true }



/*
# 版权所有  2026 ©涂聚文有限公司™ ®
# 许可信息查看:言語成了邀功盡責的功臣,還需要行爲每日來值班嗎
# 描述:Deadline Pattern 截止期限模式
# Author    : geovindu,Geovin Du 涂聚文.
# IDE       : goLang 2024.3.6 go 26.2
# os        : windows 10
# database  : mysql 9.0 sql server 2019, postgreSQL 17.0  Oracle 21c Neo4j
# Datetime  : 2026/6/29 22:08
# User      :  geovindu
# Product   : GoLand
# Project   : godesginpattern
# File      : facade.go
*/
package service

import (
	"godesginpattern/deadline/service/internal"
)

// 对外导出服务实例,core只能导入service,不能碰internal   门面层(统一暴露内部服务)
type ServiceFacade struct {
	Material *internal.MaterialService
	Produce  *internal.ProduceService
	Quality  *internal.QualityService
	Deliver  *internal.DeliverService
}

func NewServiceFacade() *ServiceFacade {
	return &ServiceFacade{
		Material: internal.NewMaterialService(),
		Produce:  internal.NewProduceService(),
		Quality:  internal.NewQualityService(),
		Deliver:  internal.NewDeliverService(),
	}
}



/*
# 版权所有  2026 ©涂聚文有限公司™ ®
# 许可信息查看:言語成了邀功盡責的功臣,還需要行爲每日來值班嗎
# 描述:Deadline Pattern 截止期限模式
# Author    : geovindu,Geovin Du 涂聚文.
# IDE       : goLang 2024.3.6 go 26.2
# os        : windows 10
# database  : mysql 9.0 sql server 2019, postgreSQL 17.0  Oracle 21c Neo4j
# Datetime  : 2026/6/29 21:46
# User      :  geovindu
# Product   : GoLand
# Project   : godesginpattern
# File      : workflow_manager.go
*/
package core

import (
	"godesginpattern/deadline/common"
	"godesginpattern/deadline/config"
	"godesginpattern/deadline/domain"
	"godesginpattern/deadline/service"
	"godesginpattern/deadline/service/external"
)

type JewelryWorkflowManager struct {
	identify *external.GemIdentifyService
	facade   *service.ServiceFacade // 使用门面层
	logger   *common.Logger
}

func NewJewelryWorkflowManager() *JewelryWorkflowManager {
	return &JewelryWorkflowManager{
		identify: external.NewGemIdentifyService(),
		facade:   service.NewServiceFacade(),
		logger:   common.GetLogger("WorkflowManager"),
	}
}

func (j *JewelryWorkflowManager) Run(order *domain.JewelryOrder) *domain.JewelryOrder {
	j.logger.Info("开始执行订单全流程:" + order.OrderID)

	executor := common.NewDeadlineExecutor[*domain.GemIdentifyResult](config.GemIdentifyTimeoutSeconds)
	res, err := executor.Execute(j.identify.Identify)

	if err != nil {
		deadlineLog := common.GetLogger("DeadlinePattern")
		deadlineLog.Error("任务超时,已终止等待,超时=3s")
		j.logger.Error("鉴定超时,启动人工复核兜底流程")
	} else {
		order.IdentifyResult = res
	}

	mLog := common.GetLogger("MaterialService")
	mLog.Info("原料采购审核中...")
	order.MaterialApproved = j.facade.Material.Approve()

	pLog := common.GetLogger("ProduceService")
	pLog.Info("工厂加工生产完成")
	order.ProduceFinished = j.facade.Produce.Produce()

	qLog := common.GetLogger("QualityService")
	qLog.Info("成品质检合格")
	order.QualityPassed = j.facade.Quality.Check()

	dLog := common.GetLogger("DeliverService")
	dLog.Info("订单已交付")
	order.Delivered = j.facade.Deliver.Deliver()

	j.logger.Info("订单全流程执行完成:" + order.OrderID)
	return order
}

/*
workflow_manager.go 放在Server包时用。
type JewelryWorkflowManager struct {
	identify *external.GemIdentifyService
	material *internal.MaterialService
	produce  *internal.ProduceService
	quality  *internal.QualityService
	deliver  *internal.DeliverService
	logger   *common.Logger // 现在 common.Logger 已定义,编译正常
}

func NewJewelryWorkflowManager() *JewelryWorkflowManager {
	return &JewelryWorkflowManager{
		identify: external.NewGemIdentifyService(),
		material: internal.NewMaterialService(),
		produce:  internal.NewProduceService(),
		quality:  internal.NewQualityService(),
		deliver:  internal.NewDeliverService(),
		logger:   common.GetLogger("WorkflowManager"),
	}
}

func (j *JewelryWorkflowManager) Run(order *domain.JewelryOrder) *domain.JewelryOrder {
	j.logger.Info("开始执行订单全流程:" + order.OrderID)

	executor := common.NewDeadlineExecutor[*domain.GemIdentifyResult](config.GemIdentifyTimeoutSeconds)
	res, err := executor.Execute(j.identify.Identify)

	if err != nil {
		// 独立DeadlinePattern日志输出超时ERROR
		deadlineLog := common.GetLogger("DeadlinePattern")
		deadlineLog.Error("任务超时,已终止等待,超时=3s")
		j.logger.Error("鉴定超时,启动人工复核兜底流程")
	} else {
		order.IdentifyResult = res
	}

	// 各内部服务单独打印日志
	mLog := common.GetLogger("MaterialService")
	mLog.Info("原料采购审核中...")
	order.MaterialApproved = j.material.Approve()

	pLog := common.GetLogger("ProduceService")
	pLog.Info("工厂加工生产完成")
	order.ProduceFinished = j.produce.Produce()

	qLog := common.GetLogger("QualityService")
	qLog.Info("成品质检合格")
	order.QualityPassed = j.quality.Check()

	dLog := common.GetLogger("DeliverService")
	dLog.Info("订单已交付")
	order.Delivered = j.deliver.Deliver()

	j.logger.Info("订单全流程执行完成:" + order.OrderID)
	return order
}
*/

调用:

/*
# 版权所有  2026 ©涂聚文有限公司™ ®
# 许可信息查看:言語成了邀功盡責的功臣,還需要行爲每日來值班嗎
# 描述:Deadline Pattern 截止期限模式
# Author    : geovindu,Geovin Du 涂聚文.
# IDE       : goLang 2024.3.6 go 26.2
# os        : windows 10
# database  : mysql 9.0 sql server 2019, postgreSQL 17.0  Oracle 21c Neo4j
# Datetime  : 2026/6/29 21:55
# User      :  geovindu
# Product   : GoLand
# Project   : godesginpattern
# File      : deadlinebll.go
*/
package bll

import (
	"fmt"
	"godesginpattern/deadline/common"
	"godesginpattern/deadline/config"
	"godesginpattern/deadline/core"
	"godesginpattern/deadline/domain"
	"math/rand"
	"time"
)

func DeadlineMain() {
	rand.Seed(time.Now().UnixNano())
	fmt.Println("===== 展示【Deadline Pattern(截止期限模式)】示例 =====")

	logger := common.GetLogger("DeadlineBll")
	logger.Info("=== 珠宝定制系统启动 ===")

	orderID := fmt.Sprintf("%s_%d", config.OrderIDPrefix, rand.Intn(9000)+1000)
	order := &domain.JewelryOrder{OrderID: orderID}
	logger.Info(fmt.Sprintf("订单创建:%+v", order))

	manager := core.NewJewelryWorkflowManager()
	final := manager.Run(order)

	logger.Info("============================================================")
	logger.Info(fmt.Sprintf("最终订单状态:%+v", final))
	logger.Info("=== 系统运行完成 ===")
}

输出:

ee2c2934bd89d78bbf51d99983ad7f23

哲学管理(学)人生, 文学艺术生活, 自动(计算机学)物理(学)工作, 生物(学)化学逆境, 历史(学)测绘(学)时间, 经济(学)数学金钱(理财), 心理(学)医学情绪, 诗词美容情感, 美学建筑(学)家园, 解构建构(分析)整合学习, 智商情商(IQ、EQ)运筹(学)生存.---Geovin Du(涂聚文)