René's URL Explorer Experiment


Title: Leo-JavaScript/Cute-TypeScript/Clean-Code-TypeScript.md at master · grepbot/Leo-JavaScript · GitHub

Open Graph Title: Leo-JavaScript/Cute-TypeScript/Clean-Code-TypeScript.md at master · grepbot/Leo-JavaScript

X Title: Leo-JavaScript/Cute-TypeScript/Clean-Code-TypeScript.md at master · grepbot/Leo-JavaScript

Description: 欢迎关注公众号“前端自习课”,本仓库包含丰富的前端学习资料,包括 JavaScript、前端框架、HTTP、GraphQL、TS、Vue、React、Webpack等,还有很多我的原创文章,喜欢的朋友欢迎stat。:rocket:持续更新中... - Leo-JavaScript/Cute-TypeScript/Clean-Code-TypeScript.md at master · grepbot/Leo-JavaScript

Open Graph Description: 欢迎关注公众号“前端自习课”,本仓库包含丰富的前端学习资料,包括 JavaScript、前端框架、HTTP、GraphQL、TS、Vue、React、Webpack等,还有很多我的原创文章,喜欢的朋友欢迎stat。:rocket:持续更新中... - grepbot/Leo-JavaScript

X Description: 欢迎关注公众号“前端自习课”,本仓库包含丰富的前端学习资料,包括 JavaScript、前端框架、HTTP、GraphQL、TS、Vue、React、Webpack等,还有很多我的原创文章,喜欢的朋友欢迎stat。:rocket:持续更新中... - grepbot/Leo-JavaScript

Opengraph URL: https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md

X: @github

direct link

Domain: github.com

route-pattern/:user_id/:repository/blob/*name(/*path)
route-controllerblob
route-actionshow
fetch-noncev2:69955c7f-b9ad-ce74-ccfd-57bfa3c18374
current-catalog-service-hashf3abb0cc802f3d7b95fc8762b94bdcb13bf39634c40c357301c4aa1d67a256fb
request-id98A6:2282CE:24ED6E:33ED33:6A5A4737
html-safe-nonce7dbaaee640aeceb248174026b6ef4d0689ad86fa95a18eea27a14aecdfc22995
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI5OEE2OjIyODJDRToyNEVENkU6MzNFRDMzOjZBNUE0NzM3IiwidmlzaXRvcl9pZCI6IjIzNjM4Njk1NjEwNjAyMTQ1ODMiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ==
visitor-hmac449c1cc765856340ffb00a98420d2803b57e04789d126bba5bc082e5cd89ab70
hovercard-subject-tagrepository:806908673
github-keyboard-shortcutsrepository,source-code,file-tree,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///blob/show
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md
twitter:imagehttps://opengraph.githubassets.com/488495074e026a982c3dafb66ab0d3d3dcc312d02ebf86892bdca57c5e3adcd2/grepbot/Leo-JavaScript
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/488495074e026a982c3dafb66ab0d3d3dcc312d02ebf86892bdca57c5e3adcd2/grepbot/Leo-JavaScript
og:image:alt欢迎关注公众号“前端自习课”,本仓库包含丰富的前端学习资料,包括 JavaScript、前端框架、HTTP、GraphQL、TS、Vue、React、Webpack等,还有很多我的原创文章,喜欢的朋友欢迎stat。:rocket:持续更新中... - grepbot/Leo-JavaScript
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
Nonea793cd1fa898929111edad5857ee1f24ecf4bf7702525e67357cabc9df136fc3
turbo-cache-controlno-cache
go-importgithub.com/grepbot/Leo-JavaScript git https://github.com/grepbot/Leo-JavaScript.git
octolytics-dimension-user_id170841758
octolytics-dimension-user_logingrepbot
octolytics-dimension-repository_id806908673
octolytics-dimension-repository_nwogrepbot/Leo-JavaScript
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forktrue
octolytics-dimension-repository_parent_id131255918
octolytics-dimension-repository_parent_nwoMsLin857046915/Leo-JavaScript
octolytics-dimension-repository_network_root_id131255918
octolytics-dimension-repository_network_root_nwoMsLin857046915/Leo-JavaScript
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release5aec27bb9c4f7ebe5fbbcd1533a5509e63a570a1
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fgrepbot%2FLeo-JavaScript%2Fblob%2Fmaster%2FCute-TypeScript%2FClean-Code-TypeScript.md
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub Copilot appDirect agents from issue to mergehttps://github.com/features/ai/github-app
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
View all resourceshttps://github.com/resources
GitHub SponsorsFund open source developershttps://github.com/open-source/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/open-source/accelerator
GitHub Starshttps://stars.github.com
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/enterprise/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fgrepbot%2FLeo-JavaScript%2Fblob%2Fmaster%2FCute-TypeScript%2FClean-Code-TypeScript.md
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fblob%2Fshow&source=header-repo&source_repo=grepbot%2FLeo-JavaScript
Reloadhttps://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md
Reloadhttps://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md
Reloadhttps://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md
Please reload this pagehttps://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md
grepbot https://github.com/grepbot
Leo-JavaScripthttps://github.com/grepbot/Leo-JavaScript
MsLin857046915/Leo-JavaScripthttps://github.com/MsLin857046915/Leo-JavaScript
Notifications https://github.com/login?return_to=%2Fgrepbot%2FLeo-JavaScript
Fork 0 https://github.com/login?return_to=%2Fgrepbot%2FLeo-JavaScript
Star 0 https://github.com/login?return_to=%2Fgrepbot%2FLeo-JavaScript
Code https://github.com/grepbot/Leo-JavaScript
Pull requests 0 https://github.com/grepbot/Leo-JavaScript/pulls
Actions https://github.com/grepbot/Leo-JavaScript/actions
Projects https://github.com/grepbot/Leo-JavaScript/projects
Security and quality 0 https://github.com/grepbot/Leo-JavaScript/security
Insights https://github.com/grepbot/Leo-JavaScript/pulse
Code https://github.com/grepbot/Leo-JavaScript
Pull requests https://github.com/grepbot/Leo-JavaScript/pulls
Actions https://github.com/grepbot/Leo-JavaScript/actions
Projects https://github.com/grepbot/Leo-JavaScript/projects
Security and quality https://github.com/grepbot/Leo-JavaScript/security
Insights https://github.com/grepbot/Leo-JavaScript/pulse
https://github.com/grepbot/Leo-JavaScript
Leo-JavaScripthttps://github.com/grepbot/Leo-JavaScript/tree/master
Cute-TypeScripthttps://github.com/grepbot/Leo-JavaScript/tree/master/Cute-TypeScript
Historyhttps://github.com/grepbot/Leo-JavaScript/commits/master/Cute-TypeScript/Clean-Code-TypeScript.md
https://github.com/grepbot/Leo-JavaScript/commits/master/Cute-TypeScript/Clean-Code-TypeScript.md
Leo-JavaScripthttps://github.com/grepbot/Leo-JavaScript/tree/master
Cute-TypeScripthttps://github.com/grepbot/Leo-JavaScript/tree/master/Cute-TypeScript
Rawhttps://github.com/grepbot/Leo-JavaScript/raw/refs/heads/master/Cute-TypeScript/Clean-Code-TypeScript.md
https://github.com/pipiliang/clean-code-typescripthttps://github.com/pipiliang/clean-code-typescript
中文https://github.com/pipiliang/clean-code-typescript
Englishhttps://github.com/labs42io/clean-code-typescript
clean-code-javascripthttps://github.com/ryanmcdermott/clean-code-javascript
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#目录
简介https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%AE%80%E4%BB%8B
变量https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%8F%98%E9%87%8F
函数https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%87%BD%E6%95%B0
对象与数据结构https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%AF%B9%E8%B1%A1%E5%92%8C%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%B1%BB
SOLID原则https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#SOLID%E5%8E%9F%E5%88%99
测试https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E6%B5%8B%E8%AF%95
并发https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%B9%B6%E5%8F%91
错误处理https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E9%94%99%E8%AF%AF%E5%A4%84%E7%90%86
格式化https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E6%A0%BC%E5%BC%8F%E5%8C%96
注释https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E6%B3%A8%E9%87%8A
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%AE%80%E4%BB%8B
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#简介
https://camo.githubusercontent.com/0607e034aee88cce40b832367d44265e01b42654/68747470733a2f2f7777772e6f736e6577732e636f6d2f696d616765732f636f6d6963732f7774666d2e6a7067
《Clean Code》https://www.amazon.com/Clean-Code-Handbook-Software-Craftsmanship/dp/0132350882
易读、复用和可扩展https://github.com/ryanmcdermott/3rs-of-software-architecture
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%8F%98%E9%87%8F
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#变量
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E4%BD%BF%E7%94%A8%E6%9C%89%E6%84%8F%E4%B9%89%E7%9A%84%E5%8F%98%E9%87%8F%E5%90%8D
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#使用有意义的变量名
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%8F%AF%E8%AF%BB%E7%9A%84%E5%8F%98%E9%87%8F%E5%90%8D
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#可读的变量名
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%90%88%E5%B9%B6%E5%8A%9F%E8%83%BD%E4%B8%80%E8%87%B4%E7%9A%84%E5%8F%98%E9%87%8F
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#合并功能一致的变量
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E4%BE%BF%E4%BA%8E%E6%90%9C%E7%B4%A2%E7%9A%84%E5%90%8D%E5%AD%97
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#便于搜索的名字
TSLinthttps://palantir.github.io/tslint/rules/no-magic-numbers/
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E4%BD%BF%E7%94%A8%E8%87%AA%E8%A7%A3%E9%87%8A%E7%9A%84%E5%8F%98%E9%87%8F%E5%90%8D
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#使用自解释的变量名
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E9%81%BF%E5%85%8D%E6%80%9D%E7%BB%B4%E6%98%A0%E5%B0%84
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#避免思维映射
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E4%B8%8D%E6%B7%BB%E5%8A%A0%E6%97%A0%E7%94%A8%E7%9A%84%E4%B8%8A%E4%B8%8B%E6%96%87
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#不添加无用的上下文
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E4%BD%BF%E7%94%A8%E9%BB%98%E8%AE%A4%E5%8F%82%E6%95%B0%E8%80%8C%E9%9D%9E%E7%9F%AD%E8%B7%AF%E6%88%96%E6%9D%A1%E4%BB%B6%E5%88%A4%E6%96%AD
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#使用默认参数而非短路或条件判断
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%87%BD%E6%95%B0
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#函数
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%8F%82%E6%95%B0%E8%B6%8A%E5%B0%91%E8%B6%8A%E5%A5%BD-%E7%90%86%E6%83%B3%E6%83%85%E5%86%B5%E4%B8%8D%E8%B6%85%E8%BF%872%E4%B8%AA
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#参数越少越好-理想情况不超过2个
解构https://basarat.gitbooks.io/typescript/docs/destructuring.html
类型别名https://www.typescriptlang.org/docs/handbook/advanced-types.html#type-aliases
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%8F%AA%E5%81%9A%E4%B8%80%E4%BB%B6%E4%BA%8B
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#只做一件事
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%90%8D%E5%89%AF%E5%85%B6%E5%AE%9E
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#名副其实
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E6%AF%8F%E4%B8%AA%E5%87%BD%E6%95%B0%E5%8F%AA%E5%8C%85%E5%90%AB%E5%90%8C%E4%B8%80%E4%B8%AA%E5%B1%82%E7%BA%A7%E7%9A%84%E6%8A%BD%E8%B1%A1
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#每个函数只包含同一个层级的抽象
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%88%A0%E9%99%A4%E9%87%8D%E5%A4%8D%E4%BB%A3%E7%A0%81
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#删除重复代码
SOLID原则https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#SOLID%E5%8E%9F%E5%88%99
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E4%BD%BF%E7%94%A8objectassign%E6%88%96%E8%A7%A3%E6%9E%84%E6%9D%A5%E8%AE%BE%E7%BD%AE%E9%BB%98%E8%AE%A4%E5%AF%B9%E8%B1%A1
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#使用objectassign或解构来设置默认对象
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E4%B8%8D%E8%A6%81%E4%BD%BF%E7%94%A8flag%E5%8F%82%E6%95%B0
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#不要使用flag参数
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E9%81%BF%E5%85%8D%E5%89%AF%E4%BD%9C%E7%94%A8-part1
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#避免副作用-part1
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E9%81%BF%E5%85%8D%E5%89%AF%E4%BD%9C%E7%94%A8-part2
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#避免副作用-part2
纯函数https://en.wikipedia.org/wiki/Pure_function
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E4%B8%8D%E8%A6%81%E5%86%99%E5%85%A8%E5%B1%80%E5%87%BD%E6%95%B0
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#不要写全局函数
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%87%BD%E6%95%B0%E5%BC%8F%E7%BC%96%E7%A8%8B%E4%BC%98%E4%BA%8E%E5%91%BD%E4%BB%A4%E5%BC%8F%E7%BC%96%E7%A8%8B
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#函数式编程优于命令式编程
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%B0%81%E8%A3%85%E5%88%A4%E6%96%AD%E6%9D%A1%E4%BB%B6
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#封装判断条件
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E9%81%BF%E5%85%8D%E5%90%A6%E5%AE%9A%E7%9A%84%E5%88%A4%E6%96%AD
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#避免否定的判断
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E9%81%BF%E5%85%8D%E5%88%A4%E6%96%AD%E6%9D%A1%E4%BB%B6
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#避免判断条件
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E9%81%BF%E5%85%8D%E7%B1%BB%E5%9E%8B%E6%A3%80%E6%9F%A5
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#避免类型检查
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E4%B8%8D%E8%A6%81%E8%BF%87%E5%BA%A6%E4%BC%98%E5%8C%96
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#不要过度优化
资源https://github.com/petkaantonov/bluebird/wiki/Optimization-killers
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%88%A0%E9%99%A4%E6%97%A0%E7%94%A8%E4%BB%A3%E7%A0%81
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#删除无用代码
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E4%BD%BF%E7%94%A8%E8%BF%AD%E4%BB%A3%E5%99%A8%E5%92%8C%E7%94%9F%E6%88%90%E5%99%A8
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#使用迭代器和生成器
itiririhttps://www.npmjs.com/package/itiriri
itiriri-asynchttps://www.npmjs.com/package/itiriri-async
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%AF%B9%E8%B1%A1%E5%92%8C%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#对象和数据结构
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E4%BD%BF%E7%94%A8getters%E5%92%8Csetters
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#使用getters和setters
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E8%AE%A9%E5%AF%B9%E8%B1%A1%E6%8B%A5%E6%9C%89-privateprotected-%E6%88%90%E5%91%98
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#让对象拥有-privateprotected-成员
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E4%B8%8D%E5%8F%98%E6%80%A7
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#不变性
映射类型https://www.typescriptlang.org/docs/handbook/advanced-types.html#mapped-types
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%B1%BB%E5%9E%8B-vs-%E6%8E%A5%E5%8F%A3
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#类型-vs-接口
解答https://stackoverflow.com/questions/37233735/typescript-interfaces-vs-types/54101543#54101543
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%B1%BB
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#类
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%B0%8F%E5%B0%8F%E5%B0%8F%E8%A6%81%E4%BA%8B%E6%83%85%E8%AF%B4%E4%B8%89%E9%81%8D
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#小小小要事情说三遍
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E9%AB%98%E5%86%85%E8%81%9A%E4%BD%8E%E8%80%A6%E5%90%88
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#高内聚低耦合
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%BB%84%E5%90%88%E5%A4%A7%E4%BA%8E%E7%BB%A7%E6%89%BF
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#组合大于继承
设计模式https://en.wikipedia.org/wiki/Design_Patterns
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E4%BD%BF%E7%94%A8%E6%96%B9%E6%B3%95%E9%93%BE
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#使用方法链
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#solid%E5%8E%9F%E5%88%99
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#solid原则
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%8D%95%E4%B8%80%E8%81%8C%E8%B4%A3%E5%8E%9F%E5%88%99-srp
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#单一职责原则-srp
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%BC%80%E9%97%AD%E5%8E%9F%E5%88%99-ocp
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#开闭原则-ocp
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E9%87%8C%E6%B0%8F%E6%9B%BF%E6%8D%A2%E5%8E%9F%E5%88%99-lsp
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#里氏替换原则-lsp
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E6%8E%A5%E5%8F%A3%E9%9A%94%E7%A6%BB%E5%8E%9F%E5%88%99-isp
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#接口隔离原则-isp
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E4%BE%9D%E8%B5%96%E5%8F%8D%E8%BD%AC%E5%8E%9F%E5%88%99dependency-inversion-principle
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#依赖反转原则dependency-inversion-principle
InversifyJshttps://www.npmjs.com/package/inversify
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E6%B5%8B%E8%AF%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#测试
覆盖率工具https://github.com/gotwarlost/istanbul
很多优秀的 JS 测试框架http://jstherightway.org/#testing-tools
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#tdd%E6%B5%8B%E8%AF%95%E9%A9%B1%E5%8A%A8%E5%BC%80%E5%8F%91%E4%B8%89%E5%AE%9A%E5%BE%8B
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#tdd测试驱动开发三定律
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#first%E5%87%86%E5%88%99
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#first准则
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%8D%95%E4%B8%80%E7%9A%84%E6%B5%8B%E8%AF%95%E6%AF%8F%E4%B8%AA%E6%A6%82%E5%BF%B5
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#单一的测试每个概念
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E6%B5%8B%E8%AF%95%E7%94%A8%E4%BE%8B%E5%90%8D%E7%A7%B0%E5%BA%94%E8%AF%A5%E6%98%BE%E7%A4%BA%E5%AE%83%E7%9A%84%E6%84%8F%E5%9B%BE
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#测试用例名称应该显示它的意图
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%B9%B6%E5%8F%91
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#并发
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%94%A8-promises-%E6%9B%BF%E4%BB%A3%E5%9B%9E%E8%B0%83
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#用-promises-替代回调
util.promisifyhttps://nodejs.org/dist/latest-v8.x/docs/api/util.html#util_util_promisify_original
pifyhttps://www.npmjs.com/package/pify
es6-promisifyhttps://www.npmjs.com/package/es6-promisify
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#asyncawait-%E6%AF%94-promises-%E6%9B%B4%E5%A5%BD
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#asyncawait-比-promises-更好
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E9%94%99%E8%AF%AF%E5%A4%84%E7%90%86
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#错误处理
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E6%8A%9B%E5%87%BAerror%E6%88%96-%E4%BD%BF%E7%94%A8reject
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#抛出error或-使用reject
调试更加痛苦https://basarat.gitbooks.io/typescript/docs/types/exceptions.html#always-use-error
原文https://medium.com/@dhruvrajvanshi/making-exceptions-type-safe-in-typescript-c4d200ee78e9
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%88%AB%E5%BF%98%E4%BA%86%E6%8D%95%E8%8E%B7%E9%94%99%E8%AF%AF
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#别忘了捕获错误
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E4%B8%8D%E8%A6%81%E5%BF%BD%E7%95%A5%E8%A2%AB%E6%8B%92%E7%BB%9D%E7%9A%84-promises
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#不要忽略被拒绝的-promises
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E6%A0%BC%E5%BC%8F%E5%8C%96
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#格式化
TSLint Config Standardhttps://www.npmjs.com/package/tslint-config-standard
TSLint Config Airbnbhttps://www.npmjs.com/package/tslint-config-airbnb
TSLint Clean Codehttps://www.npmjs.com/package/tslint-clean-code
Clean Code: A Handbook of Agile Software Craftsmanshiphttps://www.amazon.ca/Clean-Code-Handbook-Software-Craftsmanship/dp/0132350882
TSLint reacthttps://www.npmjs.com/package/tslint-react
TSLint + Prettierhttps://www.npmjs.com/package/tslint-config-prettier
Prettierhttps://github.com/prettier/prettier
ESLint rules for TSLinthttps://www.npmjs.com/package/tslint-eslint-rules
Immutablehttps://www.npmjs.com/package/tslint-immutable
TypeScript 风格指南和编码约定https://basarat.gitbooks.io/typescript/docs/styleguide/styleguide.html
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E5%A4%A7%E5%B0%8F%E5%86%99%E4%B8%80%E8%87%B4
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#大小写一致
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E8%B0%83%E7%94%A8%E5%87%BD%E6%95%B0%E7%9A%84%E5%87%BD%E6%95%B0%E5%92%8C%E8%A2%AB%E8%B0%83%E5%87%BD%E6%95%B0%E5%BA%94%E9%9D%A0%E8%BF%91%E6%94%BE%E7%BD%AE
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#调用函数的函数和被调函数应靠近放置
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%BB%84%E7%BB%87%E5%AF%BC%E5%85%A5
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#组织导入
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E4%BD%BF%E7%94%A8-typescript-%E5%88%AB%E5%90%8D
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#使用-typescript-别名
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E6%B3%A8%E9%87%8A
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#注释
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E4%BB%A3%E7%A0%81%E8%87%AA%E8%A7%A3%E9%87%8A%E8%80%8C%E4%B8%8D%E6%98%AF%E7%94%A8%E6%B3%A8%E9%87%8A
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#代码自解释而不是用注释
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E4%B8%8D%E8%A6%81%E5%B0%86%E6%B3%A8%E9%87%8A%E6%8E%89%E7%9A%84%E4%BB%A3%E7%A0%81%E7%95%99%E5%9C%A8%E4%BB%A3%E7%A0%81%E5%BA%93%E4%B8%AD
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#不要将注释掉的代码留在代码库中
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E4%B8%8D%E8%A6%81%E5%83%8F%E5%86%99%E6%97%A5%E8%AE%B0%E4%B8%80%E6%A0%B7%E5%86%99%E6%B3%A8%E9%87%8A
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#不要像写日记一样写注释
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E9%81%BF%E5%85%8D%E4%BD%BF%E7%94%A8%E6%B3%A8%E9%87%8A%E6%A0%87%E8%AE%B0%E4%BD%8D%E7%BD%AE
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#避免使用注释标记位置
代码折叠https://code.visualstudio.com/updates/v1_17#_folding-regions
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#todo-%E6%B3%A8%E9%87%8A
https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#todo-注释
↑ 回到顶部https://github.com/grepbot/Leo-JavaScript/blob/master/Cute-TypeScript/Clean-Code-TypeScript.md#%E7%9B%AE%E5%BD%95
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.