讨论语言设计的指南——java企业级开发中的野生DSL
创始人
2025-12-16 21:09:15
0

DSL在中国IT行业一直被忽视和严重低估。 它是处理复杂性的强大工具。 虽然很多人已经使用过一些类似的方法,但是他们缺乏清晰的DSL设计指导,使得系统晦涩难懂。 比如一直为人诟病的Java企业级开发软件类图书列表,充满了千奇百怪的配置,其中很多其实都是野生的DSL。 本书可以被视为讨论语言设计的手册或指南。 总的来说,每个渴望成为顶级工程师的人都需要阅读本书。

简要目录

第一部分 叙述

第 1 章 入门示例 2

第 2 章 使用 DSL 21

第 3 章实现 DSL 34

第 4 章实现内部 DSL 53

第 5 章实现外部 DSL 71

第 6 章内部和外部 DSL 之间的选择 83

第 7 章替代计算模型 89

第 8 章代码生成 95

第 9 章 语言工作台 102

第 2 部分 常见主题

第 10 章 DSL 亮点 114

第11章语义模型123

第12章符号表127

第13章上下文变量135

第14章建筑建造者139

第15章宏观142

第16章通知150

第 3 部分 外部 DSL 主题

第17章定界符定向翻译156

第18章语法导向翻译171

第19章巴科斯-诺尔范式(BNF)179

第20章 基于正则表达式表的词法分析器(Regex Table Lexer)188

第21章递归下降解析器193

第22章解析器组合器202

第23章 解析器生成器(Parser Generator)214

第24章树的构建224

第25章嵌入式翻译239

第26章嵌入式解释244

第27章外国法典247

第28章替代代币化255

第29章 嵌套运算符表达式(Nested Operator expression)262

第30章换行符267

第31章外部DSL收集271

第 4 部分 内部 DSL 主题

第32章表达式生成器276

第33章功能序列283

第34章嵌套函数287

第35章方法链300

第36章对象作用域310

第37章关闭320

第38章嵌套闭包325

第39章文字清单336

第40章文字图338

第41章动态接收344

第42章注释359

第43章解析树操作367

第44章类符号表377

第45章文字润色385

第46章文字扩展389

第 5 部分 替代计算模型

第47章自适应模型394

第48章决策表400

第49章依赖网络408

第50章生产规则系统414

第51章状态机426

第 6 部分代码生成

第52章变形金刚一代430

第53章 基于模板的代码生成(Templated Generation)435

第54章埋葬助手442

第55章模型感知生成448

第56章模范无知一代458

第57章代沟461

模式列表 468

备忘单 470

第二本书

重构以改进现有代码的设计(第二平装本)

列表设计图_软件类图书列表_列表软件有哪些

简而言之,重构是在不改变外部行为的情况下对代码进行有条理的改进。 20多年前,正是《重构:改进现有代码的设计》第一版的出版,才最终让重构走出了编程专家的小圈子,成为了很多人日常开发工作中不可或缺的一部分。普通程序员。 。 如今,Martin Fowler 的《重构:改进现有代码的设计》已成为全世界经验丰富的程序员手中的有力工具。 它可以用来改进现有代码的设计,提高软件的可维护性,并使现有代码更容易理解并为其注入新的生命。

这个备受期待的第二版是第一版的全面修订版,以反映编程世界中发生的许多变化。 第二版引入了更具凝聚力的重构列表,并用 Javascript 重写了代码示例。 此外,第二版还新增了与函数式编程相关的重构示例,旨在教会读者如何在无类环境下进行重构。

新版沿用了第一版的结构,依次解释了什么是重构、为什么需要重构、如何通过“坏味道”识别需要重构的代码以及如何在实践中成功实施重构(无)无论使用什么)编程语言)。

● 了解重构的过程和重构的基本原理;

● 快速有效地应用各种重构技术软件类图书列表,提高程序的表达性和可维护性;

● 识别代码中的“坏味道”,表明哪些地方需要重构;

● 深入理解各种重构技术,每种技术包括四个部分:解释、动机、实践和示例;

● 构建强大的测试来支持重构工作;

● 了解重构过程中的权衡以及重构的挑战。

豆瓣评分9.2

软件类图书列表_列表设计图_列表软件有哪些

相关内容

热门资讯

O... 相信很多人打开PS后期的时候都有过这样的感受:PS是魔鬼吗?为什么这么难?。毕竟大多数摄影师的真正需...
微... 要想干好事,必先利其器;领先半步,你就能赢。系统 | 办公室 | 图形 | 工程 | 3D | 动画...
3... 对于国内大部分设计专业学生来说,3D建模软件是学生日常工作和学习中常用到的;但由于国内大部分高校没有...
安... 以前总说苹果手机比安卓手机卡,现在安卓旗舰机用个两三年都不卡,而且安卓手机如果能关掉一些设置,长期使...
犀... R 设计店。大家好,欢迎来到R Design Shop,本期给大家讲一下如何在Rhino中显示倒尸图...
工... 什么软件更适合工业设计?首先,根据您在工业设计中选择的领域,您可能需要比 3D 软件更多的 2D 软...
微... 广德市同里街道余某被网络虚拟投资骗走11.8万元11月11日,余某收到陌生人的微信好友请求,同意后收...
如... 随着青岛依木整木定制公司产品的市场占有率越来越高,也越来越受到消费者的关注,一些不法的假冒产品也随之...
灯... 最近公司业绩不错,整个公司上下和睦相处。有一天,老板走到我面前,对我点点头犀牛软件建三维模型,叫我去...
8... 只要你有技术,能做出好的作品,就没有问题吧?不,不。要想创作出好的作品,除了要看自身的技术水平,选择...
华银APP等平台涉嫌非法期货被...   华银交易软件中的白银铂金现货订购交易是否合规?无资质平台从事期货交易合法吗?  当前,网络上充斥...
华通白银、中国白银APP靠谱吗...   警示:关于上海华通白银国际交易中心有限公司及相关交易平台的风险分析  核心疑问:上海华通白银国际...
1... Windows 因为比前辈领先了好几步,积累了无数的第三方软件开发商,在这个越来越走向软件生态和兼容...
约... 男孩:我一个月挣5万,别怀念啊女孩:???交友应用为人们提供了广阔的交友空间。使用交友软件的目的无非...
雅... 移动社交可以说已经成为了我们的一种生活方式。使用手机轻松录制/直播高质量表演视频/音频的能力对于音乐...
轻... 大家好,我是五竹。今天给大家分享一个可以轻松写小说的插件,它不是GPT插件,而是Google Chr...
解... 我在上一篇文章中提到,企业软件行业由供应商、客户和第三方组成,为企业提供的数字化能力包括具备标准能力...
约... 年轻女性越来越接受不物化自己、不把自己当成恋爱中的被动方、不被男性“猎杀”、主动、负责、期待在日常交...
淘... 淘宝正在测试同款商品比价功能近日,有消费者发现,在使用淘宝时,部分商品下方会出现“比价”选项,点击后...
步... 布科作为一家工控公司,在行业内有着非常好的口碑,很多非标自动化设备都有布科的相关产品,目前布科的产品...