转行程序员如何学习编译原理基础(就是语法语义分析不涉及很深)感觉太抽象了完全无法入手但是又有实际需求

查看 68|回复 5
作者:la2la   
我是 18 年毕业就转行做计算机方面,在五年的工作中自学了计算机原理跟计算机网络都对实际的开发工作帮助挺大的

现在有需求比如:
给标准的 sql 增加一些自定义的语法;
用一套 sql 语法来查询不同数据库;
给不支持 sql 的工具开发开发简单的查询引擎;
之前学习原理跟网络的时候用虚拟机操作操作看看教程背背八股文基本就够工作面试需要的了,但是现在面对处理这些 SQL 语句我都是用正则处理的,但是随着需求越来越多正则越来越复杂所以感觉还需要用一些类似于 antlr 这类的工具去做,但是现在网上关于这些编译之类的资料比较少很多都是很杂乱的
所以有没有推荐系统学习一下这个相关知识的书或者文章,我的需求是能系统的学习关于编译相关的名词的含义,能够解析语法书并能分析语义是否正确就差不多够用了

SQL, 语法, 语义, 原理

xianbing278   
😂你说的这些我都跟听天书了,你已经掌握的内容我感觉我都还要学一段时间,我也是做了 5 年
c3de3f21   
https://calcite.apache.org/
c3de3f21   
https://github.com/running-elephant/datart/tree/master/data-providers
c3de3f21   
上面两个结合看看怎么用,集成到你项目里
Betsy   
calcite 很容易完成不同数据源 sql 的转换,不过想二开可不容易呐。antlr4 的话可以看下 https://github.com/apache/shardingsphere/tree/master/parser/sql/dialect ,这个会简单点
您需要登录后才可以回帖 登录 | 立即注册

返回顶部