项目参考手册

项目引用是 TypeScript 3.0 中的一项新功能,它允许您将 TypeScript 程序构造成更小的部分。

通过这样做,您可以大大缩短构建时间,强制组件之间的逻辑分离,并以新的更好的方式组织您的代码。

我们还为 tsc 引入了一种新模式,即 --build 标志,它与项目引用协同工作,以实现更快的 TypeScript 构建。

一个示例项目

让我们看一个相当正常的程序,看看项目引用如何帮助我们更好地组织它。假设您有一个项目,其中包含两个模块 converterunits,每个模块都有一个相应的测试文件:

/
├── src/
│   ├── converter.ts
│   └── units.ts
├── test/
│   ├── converter-tests.ts
│   └── units-tests.ts
└── tsconfig.json

测试文件导入实现文件并做一些测试:

// converter-tests.ts
import * as converter from "../converter";

assert.areEqual(converter.celsiusToFahrenheit(0), 32);

aTMVCO5ld67lTNx2rqyy6TVfHn9wVpgzIHeCiUy8hWC5gNqUuxBz2OUL2yh9h+KRMLvb4fww8YF/fgYthIrtIB0wn/MCT8vtbNkX5G71HB9S93rmZDlLFwBGeg1THU/A

    ssQ+eVFCFK3E0z1OWxfdKnzyu6lDQ+242+43+PoXd3xfOXr6DNVnVeFfysC0NBlEj1bNc7V6h59DXqYNFCEUT0zs+wX46N/vtGdjJBuylufVxp/49STwoLYdndNYmfj9Qep0JPDv9YH0g82rDgz6zDUNiUjLYxOdVXqjwsFLFce5Mjqg8h1pyH53Q4YeqZvrhsNasBGXfCM7fqSo9hrPScfHq+Xn1YbVy2TpFLEOvvdp6r8YUO0L6ZXtN4mbDgTscABQQvEgEsdifErOCH80iF+ku/x3FbdiqxgMMLE2o3yXFt9Wcg9DNAp6MJGW4BkMVfwBsplVtRQLFSKRYSykS7otgMiqQ5RGDig8ZcCePhcNUBoX9tSbM6705qCcPK12t/NtInl3aKFti4ebuhe/H1/ryOA2XDSsGa2RxhE36GrQwZSeyBoTq/vLscLg+03J1KvXHUUICG4dtUnIIaWzuiQ0IUJeBuX+B2qvQ4pZDY31MMMUTE8E1BF71el9KLFTKvqA+RrZOmVwRLAwog8gzVsaLrnwgiVS3LsZHbKcCIYq6lw//r9l/OfaiaSjtw63

V2oMBOcAhIjpib/cOV2AKDHWVNaydE6b/IrnGsYMB1WmFccw8GN+GhhzO9XCoowsPmzYJ6NtYbaTzmHo4YHGJLh2M/5P6Z2X3vkq0KIWtRdon3jZ41pwgNMuvvo4TpZA

    GNeTKsBdgAVMn/cALo2wXNzkHR6ZFPgmZwK/LnSh15p2edcDmW8X1YYiQWO264DkbkLIW/QLss8YYNaRyfLiJ3oAp3FlBceVVAoauVVMFkxLf/2uzYwnfbbbzgVvtAkG4H1pT/DNTLnUolJJL5rBZpiwfGoh2xnGTX69UcPesHvC3XBHY6T8fnoKG1xIsP6hp5KTtQJOipqlJMvEqcwyBGzmNXluJheQG0pOP23AdAVzybK06bfvxULIWMI1cq4zYhQqtZnPCMDCUrnUHJz//9MGCUW3wuSGY+qRyVKv7ZsxmoAKXHokhalCq7jre1K66cGA1fewJ13QCBYj8GVg1Q==

cRB1wgm4DXhDEi1qkl0CuCcxnsVEMjm9s9U/gAA0GEhc9fkexFVN30YreFpwYoOyPdboX/WSZqJz7EU0eOpufg==

什么是项目参考手册?

SJ34Dny/9CUPK9b6t+BF7u01q/0pkrGMrmBbW0nAwFUFQ/64Cg4aX3XLVpd6ASQQyZyKjEOZNmtidkpcyezH18dMY+o3yWB3xAtUivhlUoO3iPhVQbQM2L/7xIDHtq69zpjFUZyxUtPvcIltoyJTC3V7Wji0SmtbsNa+3thVyF6Z08zoBEZK82y+wVc3VFehHwcs61vkNHJx1PJ3sJ1ilvMKwq5Ze1eRzLgR9VLBV+9UaT1fC9t+Bau0waj0aUxt

{
    "compilerOptions": {
        // The usual
    },
    "references": [
        { "path": "../src" }
    ]
}

EauAs9rD5fCZkFP4IZcn9nArvV9zIj4zyIt5INrMVmg73+iDZlu6zIy+cansGBZL7H/20kFCg8Cs1Ektij47ANtTCvHhXp4poJKlYFQFrQnlg5EoLgt7+qY0TAiDE0RJW8s4NZ4+hnFpCdyQIoz1h3e7aZwv8cfb8t/SRs9NiMo8yq9ZM7Lum9JQugQh68p/PM5QbOWL8lkTGs0ukqWVzmIUe5ogyQyltvOoblM+koA=

ki3TPo1IZ1XMlugWRVPmUNK2YbV/P69Ko5DrAVWodD/XydJ6mhDfX+TCZ1unRJDMTUdd/pbH+wFs1CI7jdstuQ==

    4LKBD8sSXY3MPtqeXkKlHWOW5TY+GJPmHWs/t7BK4cCotvEtU+TmvaHl4PatU5FDRbrx9v5Hff6Oe458+tAM8+HI2WAPV7nFq2cNvrFu6QRB9G2pyi1eCkwKXtsZVCN7HlW+RdJVaiRvz0OeZFiX9sw+D2siOPgT+2cb5SZF/Y7U8XLzZxARMrRQ0TIqKnVitoJPwOzPQjC16G6461fzdPm7Bgubj3y8sPUNmtVbn8bb7NogAJICpZA9STaJR4PJA4FpB8hhNgweX1lz8sRrNlUhY29ivCPe6cNSnHKncZT+IzWI4uXPoTkK0+77MW2fYYMVzBdIysnTIAeOF4+5g3zDJlke/Heeb9GM+gOVA/FPi8C+mvcPlbJI4Ms6Q4t1hHhx3iw3liyDYs4CWce2HFilcr1tTmiezs/UiL3h1Vb58UYPY6m76AxuU4/9XgjrbEeN82EBE2mwPykrycBeEAPFH/2nOzSjznydOeUBSqQ=

tQW+AHhk9e30TqgLm1/UW8Qvbpi2mZ8WEEE6X+qmPCaweH+JINw6kqFUw1Os2p6FRUn7cuImmd1DNvLBTqBFh3g3JMGCYAvZWJryb7LV3LFycDE+gtdHFPBGi6DHiPWL90m7To0tJBKudFZjQNF7bdyhnr6kkpZICTEengPs09xqMP3AZQs+c23zssKPFbpLX2MkHf/Ep7CJr4ICZ2QBQB61eAn3ueSauMRty3lJHKg=

composite

l2DYbOdSEp+Qw7A5E1LDMx2h1bqo7XdZfCqAbi0Zn/J8rR/kmHvllNQenKUWJJgO20Fgm8ayK9u7+KXjE6cMAX6EyDigMA8xLwth1hnNiN+95cLk16384j4KtpfBCKZMPgyRq3SVa/OoWDj/+WFqAwT1xlQ8b+zFoR6I86h/9RtGayADFFgdh67x3klMO7n5CHSVxvjEGAI7uZgryktNGjl5tKLt0h8LDCoCZmnOSh/InBLJ/I4XZh5+zxJjfK5L97UubNl3zcKxVgVpHskcXcvEb84wC9KGZpHk7lYJw3iaMlVDKq2IqPj8+pUoF8xLX4dImg62WWaIDWN3VSM+7e8y3Oofjtd/PBG9foZb5fIvzSOddK5OG+IOKqUbqhjMeWeJXrFfLihFmKG183gE9+EOkTrhnyr1oNrA06co82gN62QnPN7YlsIIF8HHmH5J

    yaukT2RFavYJjzaNU0jYp45Sv2B8kTzazTqGkcWVlthdxk8rR3I3sReGWcZmku0lrxYv9TJylejezTnHAYkDJTiMJbItMr/5sInHLnJHmJdDtHN6nZnCktZ1hHV2v7J0/fr+ENEVoA9vxmdhbP9rZzLG/LKW/ExwPcRVJwr0S9tqRKD0Qp7uGX1AztLZfnh1jS2nMAwRxI0y8La1Z3EWTOBtdUlO861q0/e3jZ+Ou9bGq1vmA5B74TnWu7nIZ+ASkZS/6X+FLicZ+L6v+zFyIxcKwgk3TVMB6rsKWH1Mf+1kiO8KulKudVGEnAVT2T7nc0t+kWia59pq1rGAP/wNSOdG/PIg3f1A2PjBNMB74spNphFtLdBdqBa9X50JcG0QUKaTBk3rfvzJtcGAfDZ5l6DaX8tRH4lzflo9tqPkVTv0GVZd6Sithanevfw8T8quc2n5Nh3lRVbJuwg19lhrZWO20VUJu/QyEBGBlLYYFL8mc1y7s2q2NFEDLwt3hfFgbxONWDNjta+bnnP2m3XddW1cJrRhP+Zx/iW34uFkpR7ErshfL7fgMg7b4JgiDzHA8QASP0KcnquCRLPFEFkMJDZ8bkge+aOuqbxW2uPGy7lcdlOpEe6V/0PzPpj5l/SigMilrX8xNyDyAB+xkAvCQLnMlUf9xInhxfckBCPlGeevU2QnlocvnNWyu8RmGad/Aow0Z+j1BQMgQWEgUod+k45jrjTr/Ec0aCY2FL9PPto=

declarationMap

KLjqq0I9FOZjHrMaOAsBtqUaeRKAOfO9dJf/rNaC9X1kXl/FMZnhxvN2pqXg1Yom6nCaVnrBuszzqZePx8FoYCRGyWi9GtLxvoh3y+MvqEM0H/NscsNfPbxFdn996cbcZgv5TFVMjdroCdSEzyCHsbohbKaT1hcZnGQMEJQrsZ/2C5+vEqiYowLOvPeSz82F3NQDbv1KlM9H81CyKzDR+PpbQ7DjsS8yNS4pJ4IRuf1Kx5J/LlZdy7X7IIOo5YeJnGTNWsRBf7LrwUbj9sjW/Nn63qDqSMz5qzQktxnUkWWSyQXZ60MQUJVQGOd+zkdEnwdtKkQrPE2bGAsCDikz3+ckWSSopeizoa55zy78G77tClyde8x4nu8cG9SyDCWUwu4czvvY/jEr0+UwkqskWOv1xeQIgWuwZ3MlJaALdvqf3KDmEsQbihgozB4cwFpA

prepend 与 outFile

IscRcguMWyHyESG0ERO+LBbHvWvNRhaDY69JKUZSBNJuiSXiCwwZ0ElzceLtruP6D/udq1FEd1hi5VWdEj7WmUYGW73VHAiVWraH7V+Z34pqgBhQA2JlrP9uPHNUkoE0BWj14tKsALwjEdxxA/3j4A==

   "references": [
       { "path": "../utils", "prepend": true }
   ]

YP2L1BA4mcCWWdkPsveaC4DdMXtCAt/QRgFHPeIpEAa8J46K65Begxakdan8JGhb8+CYJzbkzylW+XLgoh/+TS8lPIDsazmChWYNbPEOCA+43LMD2/MYFZup3gazW+ZnfJAixkaq6uTJPTtnhkq78ObA6gnt1/PTi1z5ci1MHShIEGaJNrSOzpMk4Wf2NUhDQ4SqW4YaKgb52OJ8vloGBlULdj+bTzd8R0tUCo/v5hSttm20bvhWDFE5wYnxjxnmGMx+BNx4ZWmYZGaL0sD1gg==

Zq1bwa8hcxQ37+HlKaBDbbMV3MT0jnxnnIAkk4Zdd4UkhdjlJvv58w5j7oNT1ch3MXoWIhesyuAwdQov4Gqj2XZvcLg+yBZHKWimVka7R40ZICTp9XV2clev5WBY5pk8MfZsz7dB0WVcoy0tpLFyNHnb5AdHuE5UN7PCTvzVsZFCA+BNGFo3zDaaR3BpJpRlppgfo6KJbO/drHzXGE0dRDDfjApydeH7c9mum2C1zTTPnF9odhI/MtgEp+or5L3HBw5Oddpcnm1QoicRE8eDuN2uehYUYKWt8gPVyFF5UWo=

   A
  ^ ^
 /   \
B     C
 ^   ^
  \ /
   D

KWOmnKlqa2d33EHSreDjtSg2lgp0yafJexADlCrl5KqLMPRZfrlSYwHpguoCdzDZjFkfAuR/0+939nulR4XpUe4lurD8LryDJdUnF/LHZ6tdRiJe47MUt7Bx4Rfb6iVTeR2NUT1Q0OKEKu+kbMrOaAqwTBO4Z5m7gQ0QmwXXPM7g+qgQ9Zof1z4la7H4pSshEp6ew660wIKJ6uieXtgCfuXNmVxnU6zLbx1w8gqPluQpx/d73a1WdslBclUNfkWN

项目参考手册的注意事项

0nmhlTFzWPBgvnnWtDZ6+F41NDU2dvgcjzpbFb4aprm9iSCZW6Alcdbbw110LWMZL+FeBdZG54g/PKRA1EHqXQ==

4ORnSJErHiL0goD+g6CUFx3AdBeMSwruMJ09t2ioImW0VcdodJ3hi953G3ufyaf0eoqKQja3tEPMr6w6d8k3FY9KHKM3rH4CzbD+JGO6h/3lNFMdQTd5tlocA9ejpe0MEe67182BxxwpNi7W57coBwEFdVwiCgvM11ephAYI0U/QU5NklExea/beDppOTuQ9dTjUA8yKV4aGy5S+49FM3NqKhMC+NJUeeuhUNaLXUXUlD1stv4TnNQFqvYVXvUoBLM+vW6Ydwi7wW0o2vztQZP55jUo1Z0eLmHpJUFU62Dg=

AX2f5mcERygwTGdoXqfmG7Zftu/RBfBwzQr4WdscsrYiNC12YrQBbXOMT3Us9hgYrntBlF0125UikI/lvVsLFkQjGa7+EfSX9qEkg8rNPqcpy3jv27l01Wlyo1dlhA0HDfWFU78EydcG4gpXsqADvab28BetKRyYnxVGs9E/3+O04BMJTCTq452u426N88CgsOJ9H6iG8sNHA+y4SDnpXLiwDxFDCUT3GzZa1r78DyOISlwFQnNmlwpbJKEfYbq4jl7TqtEuGt0seXZkwGs8lGRCmU2MYdbybgjxcxwtjA6pJmvSNV/w1b3ieDBIzXndwPjd1Aw0A9zRM6lL8ZdjuZQfBCYy8XGWAkCw7rlCHFrRKdW5UVfM21VXgbUQkPtsHmle0idpyD+ZNbACJzuGCxyOd59wZcX0FwK4YsHraahJAtmYQNd9GSo1FIi470Yf2t6pT6wBpJZ/BQV5aGKqog==

prZeZMWgDUSx6wQNWpJEuCDwpAr2fTnjmi4C3eh8xdU3w+/edmZ2zPicvnyuxaNNa+qIGQvKKHHGx+A+ws1LcaezDXWcxqcev19wP/DYau4uQfv12Kec0ZHifzvc8S5rPBkngxUYzKTyIuj+JQ5ECK2d7cP7XHJAM38Rpv520SiNX92d84nxlMt8u9vj8h5rEa4JviibMAWfJrwOzs38ePG1wq7Wb3cdcaisMkMZ7NaeCvqSawhlr07N8twHd6PToj38eGiUwNN+GPNWHe7XxreKjUq8F3LwzY4YEZkJOp0=

TypeScript 的构建模式

Ugz3Dt+/qpJpxhoMGLYQPhgyLoamF0nLT0oo20GqY9ycXrBPxqKOQPk1RDzhSnVs1LOlKjFVYy7mkOAEOsA8ryoWYZhXmhXlOm2mVvrRgay5WUOmXDyIqjFdzrp8kH51I5EtDym7K4vN/Lvjb3pWoqdrN0L9B/UkhHscrNn1T0NK8sCpnOz4wfhx7RwrEgP8tmg9OmFs8/RI+6n62tw6IrLYemIASoy4bm2ol2kjzKy3GiqQp0kd2MWQX8ZV17TFYA9Jmvzk0UiBjeWuPe5to1S+e9oaUz6+mPqPG5EOzJq6BMV058gFrwUGmy01NpjJHb73nzVDD4S+OyaD1LoN1580gTtTuOOiUdTHTd0Lru6+nRCbrZ/oLvR61rOPn0FIqFrCiMQDRtGVr5O15LaoBA==

Q1WzeD/sv0ren+GJGymxLSRP4o2tYbSCUTvyF9+yM3ktW6NKPp1pSO6LO8a/nFF7u8NEw+6aqgQ5Og/wSMtGxVRPoIC0YJCrmEGqYHD1/2YAoFcJJ2KYWtd/6u0YZcef

    2HzbFTVtc5ev7++tYSAMkKglGvpsfzr+4f97NCl7BAOhavy/XAZTX7o19tD9vGGCCipupPHcd/2cGrpF9TWMTN/+/hmDSndrfa3BxNw5OXm4Etc4UwYN0KUYhbIBs8kTjASWEYYP1q7TTkdXy0MNWUZshwwCMO+bAYhokJSvve4=

SElbkM5+ofL1IGUlj6rQZpQswDaaN5m/w0r3Bo31N7sO4T98+g5kAoWYqIcpiWgqzLYu1fi8YK0aJ9VIv33+iR+NbxZnOE4IbAvW9QV6xtxZ0AlvB9Hg0YvUIZjGuZ1InwSrh4L3/3JD4XI7jkvwWax3hjkNyEnZKIexZ1YEJJadAGYGic8B90ZuDrAVOmsG9ttvvFcG0UDL7A3frqvkiFVdI/C+uAw+81sDqpBUmeVmhNGiJpdLcZS78fEE/3ETQ2TPpV/CUgFGXSNSXNqYoG1/uSsbmGtISIQwhtr7vqbkcW1WWoalSsPwjwGEdlSs

tsc -b 命令行

I77pLRAMIWpISle6Ajns3sZbJwZYrVos+g2ZY4fkve5UVtPODaTaZbcrzTU1n2+F

 > tsc -b                            # Use the tsconfig.json in the current directory
 > tsc -b src                        # Use src/tsconfig.json
 > tsc -b foo/prd.tsconfig.json bar  # Use foo/prd.tsconfig.json and bar/tsconfig.json

vmc+WNNp2ZWDICkRhYlEVZanuLSxI8ub0nZuFrVOqaloPuwrEob1ydxQEtUHW3T67GedOLPgzhDquwDpLch9kQLgWSR3WCIFINsWA1F3eC2ExeGC263Q7TutskkUzQo8w0kzF7kg6lVZPK5BgYkuDJZoA1+6bu3DDtmC5xENQTaaeLSJoXgVwmcWL2W4rG4QJGrMqobqDZzTsB4GLom80g==

lvOkKdakp3Ici35I+WRpPuN+qJEFz9WUhQtl+YuY25xVEixGoJwcdDQukOwvzAwr08aCsC4xYFszjqd1AU9spg==

    yaukT2RFavYJjzaNU0jYpz7JEpdGjpU890lwTdP0q9AGlpQPhDMoRyIuDasQ/Lr5cnT0r3xmQcxXh3FcTjS8Sll82px5uJNqg7MN1fqWH2O/p8Va1qiwB3G7UEsD2kwyByhkGSqZo9RB9H2Fa1/HMlsxlZ/vLxHI5oWhPagwr4Kc0M2hT21LPVRjFdV9C9OqoXSJlbpumKkZ9QlBkg2vrRremYqEldUISZEGAv5rQC0Hz70y7sqUioMLZsC1adCWmgyNN5fzyCPLavux2fhqIoSQOfenSmamjnQBseaYSI5UoqK5Dck1FnxlUggtV/o7BSZG6Ok3BvWi5JyAnXNxSF0jD+jiKUPn1YLbdl8WYvlyao77IkBOtN+h7dzwvGvxBrJNOwrBtUQlwStPVPglI2Yid6g0BowmBK4Tru0ZukPMBPS6qXAdMabWxyrcdGnfF3a2FMPhfWOVyEN0CSeBMNpgpAB4e8r5OKT3lme/jMf9IbgGtVBWAMajHLlVmAu1q8+bAQFEbD7TDcBuWP3Yb4aEPIUNaObahUhgMALcDDXPWXNXKcN5jDv/2Z15axaNGLQZCRB56lp1OdGIfCHVpyS0C7gk5mNPjf/dnXKioLnQqRfRYfOf1DenQDZJBfMJXoenwBMvUTzll7ihAEoKqIQGKJy6l9bGNR4c6IVlZTK7py9xkubItA+TSWvaIDIsXl6BSHQg8K5iQuplK7AyzfFoDWmCqbELUdkz2DeHTv6UvOAHmbsYnZrp4dHvK2N8neK8MKFi+HELiAtNkhyyyQgMh9aA8IrT2qqwIKn85QNRSgd7BL7yyvstJ2kLgPAkCPH8w0nphMKmQKwAU35iYNNIkQevA3NCIjHJeyyXDFU=

警告

Hq5HYdavqRVdHYXg2GX1nqJg592don5VPlGH3usCRK/8YvgNznaVD7f2XPuDex6QULzXw7m543FTg1eaNGn3UB+/Vol0KfqGhJ0FnkiUt0/H6oSW5RcDl7stJjz6MHYpZuPBun5apVF+Igaay8liOe3XYsz3n3O9+LPaSGC841DxK3fiyYcxBIR60P94hpdtFTRFbUuMV3xK6uePLpm0v/pzb/wjQAtDlHWTanOlk4mo0O3QlTTuxMeTjA0Jpucj8k575hPD4GpLnWq9MYQ5Q1ZEtWAO8zqB8nJOHFebctl1N1mcm10jtw6TXmz+0udHQKkQZXgCEjnm6khK8YKBMRyC1im3DHPJxxFKI7cAP6jVVUbH+5RIEIDUrvgxSsLaFLnB3nUwQKWh3XOceVLkkB91UPmHPQ1VdW+Agvr2RsIxcWBIwvAE/Wk/FqxWPZo9DRWt+nV9YVYN+i//e878vZlLMrx3mlgyMysaIdEZpSsfwc6dIutT0oTQXyEUa5cBVrLM1us1/Bh8N48oW2qdu0vIOZiR05vdaWRC3bTmJ6acnQbvhvY96RCMbpml2tLuhku8yJSMAixFYMbb8uD2OBqz50E8SqiG/X801xy/0J/OOV6p+3iMQzX6G5S38rzKsLF1tTfB/gGy8aSX+/Rb/rZf6bqbtAolpferj8A6YubaEABZ/2wX0pjyi1ep7l67C31KS6ePhAyoqWIs086T7Y8Vuw+gUqYPdc/6VY8XSl8=

ITfY9B+QxDJPVmqL/geT5bX3vDSl8VMgwn7/0F/VK4iElKMf62x+S7A3mZAdYB57yXm8Si8Mvi4TsKKdXbjS1XleHVnCC3H3MnBCFxXTak6odVLcb/2fpr8ShMbveZ3/gF/5nPwldOCM3vfaJ/c22O9DPWkfaKGBDfJ1RjZ0+HZ0RGflvn2STFWSwwKSiri/avnr+LiVSF1aJ8cowK/ef3R3EWmMeZ1+qFrd9IyTGIcN61/syEmK1P36MIGxfxEWPyO3tYfe0nNO+6RQ9uvx6mxRom/tirJNhtOzAXym6IbS0eiWWvgKmNSnX2qT8DYeBPErppS0qwzOeQjQJJF5SUxf8A3gf4lZ/6tuwpJdiuuMvpKUHxv231WzB7LTHlnQffs87LrNJOHknNsjHkI9pS/UZZGZAsY2HgHbmEYgorUJ41vXm9qpspLwirdlVGOIwxUhiZh/5XFZE93mgaXu0Q==

MSBuild

aMtr4kNe5+YRijx0n5R39nKoMt7y4gQevNi9wOwn7b9eXC0vGzr2Zu2IbpkrtMbB0BbTEzVcOJs+0lt3TPBx8Z45YTwX0rD+UmUW7FD6KXY=

    <TypeScriptBuildMode>true</TypeScriptBuildMode>

mSMTOhij1G8PCU7MzS2bZ194e5RS+X4y1P0QxV8Oh1vztd6JbhYTA0dkGy0irqs/6Woj0se0g3xP3AB4kp7JRZJNluz8ZO2o0jl/PnyS3l4=

2oNBg/uyKGGttUs6IeF2KDqntaZ39qjPINjBL5cDucv4iJ8/TLnv1nC8/BmKKUr3pltjU646505xJbezVlzaZDeI1Fwl35XQ3MMi3wQ6i/LDf9cMDFUdr6vmBDx/CRKG+wtdGmUMh86JyQ0Mg9BCrwfWf12UnWg9OqPQBfgxsMCQ4qsrCyrN8XT3W51s3oMd66KnOEKfWclxoee6r7tdAZVLZFHS6FVgyy8Oev1X64V9vcvi7oJJ+ni4+0MSNyp+

PdZkA8Srqvj3Og3M6svW0mTGZ7DDQ+BgffHOVvn5fcPVViJxG0Y/xt6qIabMfE66ElWHb4BdOeA4mcMCKbmj8fM8lkhbgpeDQSby3Z3Z+ErzTY+N1OYEVpF/XwmNfHyzXuLklPhls5iUIoUFzE4dL7ftWwSF9jdReLbenooVpR5Jhe2Vai1/f9lEEpGsn7BDFfTYIShB7LNmd9qujcZVZDRS6DaGINHhNChfj7p95pnxgUFxcNYPCOPkiVpS1MQ5o/ZH8Koa4o7I9B7OqKhGh3bV+pZp/Lo4XvdUiJe0YJgwv+oZerF4PDPOOTEUeqKm/CVDlVdNu9u7ZlWEJi+u2yiOijZ4uJtFq6axP8mB5lkF0sC1+j2XKMTslLdwmBCEBYiEC/Wwqoyr66iLKVSc5KMQOE9VjtfmQw7V2x4O5GA=

Guidance

整体结构

oUGb+w4HtI1Bh+0dN4CEuIRyYErjeczvuELRu1NCmbeuwL+dPWmNYX4afbFo07+tEf360NMDR9nwPZ3YESCDfN3aD/Q0xduWIh8IvO+spvnSWcQeTrV0ExHnBb/LLJPz5d0sMuZzmSJVZhw4cPUPPPc9RwzwYp0BcPOQwn2mWSz794seg/UhetjhonfxTaB/B+pEc2OOvnRMZI9LOGmC4aT4nl5xzJ3hKqmhsZNlg0S1MTS9vhOC3k/4D+6NE5zHtWfEmKSk0XrQjnSMkirbxERL1ENP/qJ3sbprwFo50Eb3wxbtba9DVPPLeJh/W8eNFLvzXf2WMYnv6/4dfpDZkxsitqG+1Wqw2xDYzm8UnZ4=

KvcAPj7WOUCzki0DN9mLsxzyXWh8oP4eASAb3gYzWBTRANebpK4QF0U8AgpCK4QVtUrd9sORYoOKCM4ctoOyDm8FNV6XhYa9g9Jo4EHnBv+Bfm52RgJztWoSdl2/M896bcf5z1Om83ORGC8+noU06uDdGMVy3cj+sv3YmBlZJF+J2rzCas8WQnHvurkCJ3zFblXmzVKXJTyz11uEY0jj9TLji2NEDUNpcjVgwfJtKNZdcWzk70qjtv5PXmcFg9ZuxR7G8ils1wkvX1PdhR157WgtXJvfAt07uXWylXYsLms4Eu229iLm3EjYJU0c2/X/Cb+GvcqRjVsPzkbNzFMfPCR4uQF11GR6dWKhE5pXfOohJC1C8qIFDyrINOf5SKAELrrkxU/EWanrbqAZqGU3J0lAV8EaOtOZTSSyYAz2t/0W3ragyxoXa1iF880vEe17KXxImlkLrp0MrrqiM43tsjsYiCO+2rkCqyTYLxbR3uC/YlOZotkCK8NJcDAkT/unBAONSwrjVyJcaTgCpWR9vM2utTLxap9VN7bJkoiOseV3pf+9OdNHhSXC2pWEy+o1r+DMB5+jiSsbsjYGNefDk4qu629DYN5V/+CzMFYe0D5SQ2L2BNlldZqXGGBivqqW14r68+aysUuj+42ZeZSHFVCmsgw/2+0p5BdbrFIatK6MErthl0wEavQ+nN4H7j3fLIyWyEiybOU+df+Yb+SxtDjV4LXk6yfn+c0fK877KgtCaZw8/rcZo4xPSMPsTBTfkpCgYSuO1mvC+hhASm+dug==

TUBYJesWbkU+jBItuAt1OuXFtbeylppqLgSULPUiZJBnRjCRQUpurelAJ9DYb4HI9RbO03DRYSpXXnsmIJWlHNK+pE3VPINNWBDXvhGUAfHmsOZ9Oje4Sv3M1jl9UiB4uuUMz4lNGDD1+vOs38UJu+7SSFx7SVzEjPrl6JzCNeQ7j2BynpEUFSvR3MctdZiMsFcqmQU0f01vf99LG686k4A8Dj/P5ZwoRgiAydpyqmy58Ax0hCmYAGSRBQEfZSea01w/MXONfnXiR0qH+dlTRy2OszxFg0G6ze3jgFNoATs=

yOqSI1TczRslpRRfG4Ih91lfSTXfaS0H9q8Z4u5hQVohR81kNkvOHdaxnn7pN8t0USQkMyTKdMQ85s/KyiyjdRw8QPbyJDG4Zgv9KfbkILkjfeRNSvUIi9fKzeGTwVdqem5OGz+EAC288QixPA4wg/IPuRZzgQuQMZhGIErAhHiUXG9LvINiRU4h79ZB7ki6clmcO1KM/44aD4OlH6JsX05cYWxGXdT+VIhHyswk5HWQVDIubcmlFauOHUkwZSmjfPkDEiTcUNfpQChqX5vfWA==

相关模块的结构

qQezDtKsYRG1AINxdX7w+OxGyzehtkqcyOy5NhcH7SZljW/2UhJLA2oEA+tYkZNDhHh59123bSMDbmXxKTaXckyhDABZf2eCabp6yQT/q64xxjUL+cROhqIizy2mWmmvfcQ3LYFiGlJ8lua5B/48tw9F6iMglxyLtYDVkt5x7zga/E4tT5UtvcxXRLXIQMHDtZ3HACEVyZQxl24XKoC5ZrQB6jLinFvbX1pN0dNJwm1bEzrtV14X2fBIVPbgThE6PZGXEYUJEWqupKGHww8EYXNezX9zP+I+PpzCQMqJL0vPRwL10l3IJes+KR2JL64Akffwm574bLANw7Tye6MVuwEzBo3bLGm3mMra50akuk/BkCm7+UCOdS0A5xwlDi6a9Jh487fLlHvPRkl0q74umQmTj6LaNSxD34yseMYKRXUrca5Ez0J9XvgQKXXj97YfZDBDVrZSyYoedWEAcfPc/izJdMfXzoWpwcF6Ru09fNxZDaBluQCZSrobFYKykgcFS9DYewRf4BLVkAhcIQOFf76Mw/sUaZ4dU6tBGjsce8+NF+EgoaIXnTYB7OBQme2Jy4rYbddEMEy6X6jKDGKQeKA9wqyUPs2P45oLEcDzfZyUDT4NL6a68Yk1E6nGM/EeSFosZpg+EYcRzQzyOKOh7LvYlf6R8hdj9fp0ohNmg50g6JreqNrar+5ARw9go5fd

outFiles 的结构

+IuLCGNO3942IMv0DuoAa6klPSvG4Jr0I5rGJg2b943qiS10Vf3uG0IjA0Yk1k35/9tzBISxmsK5n6Z/b4s/I6yrNYHYq224YMkzomoVxmDDkhNScjFd0VqdJ/JoEyJkuetXKu5YA+x9sWEXKE0w5c7tjeuiS2rXUde8q5HSMm6Flbj1gVCsi0AwZ8YDS8T86wOhXVNu3ug26jllzipeBwzibDP4Pu+jRQDmeY/fOYITdFTYdg5n7QC25LRvkKzy3/W1de9UkiquLjXnzHu27JqcykaL3waBw3DKfxEChaQB0okjhTedaz60/N8T/jWnI0uIUitHuOJE+RZRE6Lu5vAWu0en0aHBSRNsb1iM8pOqETrFuR27zghTKPiVCc1H4/JIJwTYpLCN1+EVHCsxulgBVHIv3YHdrHXbVcUlKpGw7mOl6pqUUVqsUlFmSjlSmJctSQPXHNegaULSURLpR4Wd1lMp+RI8lbAWwTakXrLbAriC7jLQGvtDK+ViYhYKh8H6g0d1tGKFBfvXAA5ZtqDezN2Z7OP9PIPlmBRBvgPw/6ZePfBdjsCpssxeyS9j7ueg6ZvOt98gJ1oNNNI5xik663WFmvhgW3m8e86qFc7NtHB/xWyNNI+wViO5EhGA3eqXtiD4vlW7EJ+Av49RpXenEUh8R5EFYS2ccvKc3EU=