Sketch-Programming: A Minimalist Paradigm for Code Design
**Sketch-programming** 是一种极简的元编程范式,旨在通过简洁、可读的“草绘”语法,抽象底层代码细节,让开发者专注于核心逻辑。它不依赖特定语言,适用于各种项目规模和编程领域。其目标是提高编程的可访问性、效率和乐趣,尤其对初学者、经验丰富的开发者和团队有益。文章通过基于关键词的声明式语法、强调可读性、支持快速迭代和语言无关的设计来实现这些目标,并给出了一个 **React.js** 的示例。
Sketch-Programming:用于代码设计的极简范式 (LLM Transpiler)
Ideas, concepts, tools and examples of sketch programming using LLM
概述
Sketch-programming (或者简称为 "Sketch") 是一种革命性的软件编写方法,它优先考虑简洁性、可读性和表达性。与传统的编程语言或框架不同,Sketch 不是一种特定的语言,而是一种元编程范式 —— 一组原则、约定和语法模式,旨在抽象出样板代码、减少认知负担,并允许开发人员专注于其应用程序的核心逻辑。
Sketch 可以用任何编程语言实现,适应任何领域,并用于任何规模的项目——从小型脚本到大型系统。
Sketch 的核心思想是使用最小、直观的语法_"草绘"_程序的本质,让底层语言或运行时处理细节。通过消除不必要的复杂性,Sketch 使开发人员能够快速原型化想法,清晰地交流设计,并以更少的精力构建健壮的系统。
目的
Sketch 的主要目标是使编程更具可访问性、效率和乐趣。 它尤其有益于:
- 初学者:那些被冗长的语法或复杂的语言规则所淹没的人。
- 经验丰富的开发人员:寻求更快的方式来原型化、试验或设计系统的专业人士。
- 团队:旨在在项目中强制执行一致、可读和可维护的编码模式的团队。
Sketch 通过以下方式实现其目标:
- 提供基于关键词的声明式语法,抽象出重复的模式。
- 强调可读性和意图,使代码具有自文档性且易于理解。
- 支持快速迭代,允许开发人员在改进之前"草绘"想法。
- 支持语言无关的设计,因此 Sketch 可以适应任何编程语言或环境。
React.js 示例
// @sketch:reactComponent
Component Count
props add = 0
state count = 0
<div onclick="count += add"> Add {add} </div>
<div>
Current count: {count}
</div>
转换为
import React, { useState } from 'react';
interface Props {
add?: number;
}
const CountComponent: React.FC<Props> = ({ add = 0 }) => {
const [count, setCount] = useState<number>(0);
const handleClick = () => {
setCount((prev: number) => prev + add);
};
return (
<div>
<div onClick={handleClick}>Add {add}</div>
<div>Current count: {count}</div>
</div>
);
};
export default CountComponent;
VS Code 扩展 (WIP)
https://github.com/DmitryOlkhovoi/vscode-sketch-programming
关于
Ideas, concepts, tools and examples of sketch programming
资源
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published
Footer
Footer navigation
You can’t perform that action at this time.