Akagi201 / Lw_oopc
Licence: lgpl-2.1
modified from http://sourceforge.net/projects/lwoopc/
Stars: ✭ 159
Programming Languages
c
50402 projects - #5 most used programming language
Projects that are alternatives of or similar to Lw oopc
BashClass
BashClass is an Object Oriented Programming language that compiles to BASH 4.4
Stars: ✭ 40 (-74.84%)
Mutual labels: oop, object-oriented
Stampit
OOP is better with stamps: Composable object factories.
Stars: ✭ 3,021 (+1800%)
Mutual labels: oop, object-oriented
Design-Patterns
Project for learning and discuss about design patterns
Stars: ✭ 16 (-89.94%)
Mutual labels: oop, object-oriented
Db
Newt DB is a Python object-oriented database with JSONB-based access and search in PostgreSQL
Stars: ✭ 132 (-16.98%)
Mutual labels: object-oriented
Interviews
A list of fancy questions I've been asked during the interviews I had. Some of them I ask when interviewing people.
Stars: ✭ 140 (-11.95%)
Mutual labels: oop
Ood Principles In Swift
💎 The Principles of OOD (SOLID) based on Uncle Bob articles.
Stars: ✭ 1,710 (+975.47%)
Mutual labels: object-oriented
Curl
一个轻量级的 PHP 网络操作类, 基于 Curl 封装并实现了 Get | Post | Upload | Download 等常用方法。
Stars: ✭ 132 (-16.98%)
Mutual labels: lightweight
Spectre
Spectre.css - A Lightweight, Responsive and Modern CSS Framework
Stars: ✭ 10,938 (+6779.25%)
Mutual labels: lightweight
Splitties
A collection of hand-crafted extensions for your Kotlin projects.
Stars: ✭ 1,945 (+1123.27%)
Mutual labels: lightweight
Axel
Axel tries to accelerate the download process by using multiple
connections per file, and can also balance the load between
different servers.
Stars: ✭ 1,997 (+1155.97%)
Mutual labels: lightweight
Eclipse Collections
Eclipse Collections is a collections framework for Java with optimized data structures and a rich, functional and fluent API.
Stars: ✭ 1,828 (+1049.69%)
Mutual labels: object-oriented
Kinx
Looks like JavaScript, feels like Ruby, and it is a script language fitting in C programmers.
Stars: ✭ 134 (-15.72%)
Mutual labels: object-oriented
LW_OOPC升级版本发布说明
本人在金永华对于高焕堂的lw_oopc的源码的基础上进行了一些简单的修改和调试. 使得lw_oopc能够用在实际的嵌入式项目中, 作为一个很好的框架传播开来.
主要改进有:
- 修正了一些小错误, 使得编译通过.
- 调整了一些宏的位置, 使得配置接口只在lw_oopc.h中.
- 经过测试可以直接在*nix下编译运行, 删掉多余的VS工程文件.
我的联系方式:
- 博客: http://akagi201.org
- E-mail: [email protected]
[email protected])在他的repo上的一些说明.
以下为金永华(- 在高焕堂先生的著作《UML+OOPC嵌入式C语言开发精讲》中介绍了高先生及其MISOO团队创作的lw_oopc宏.
- 在研读这套宏的过程中, 我发现高先生提供的这套宏还过于简陋, 不能够优雅地支持面向接口编程.
- 经过认真钻研, 我对原有的这套宏进行了扩充和改良, 得到了lw_oopc宏的升级改进版本.
- 改良后的这套宏,能够很好地支持面向对象编程,能够支持面向接口编程(甚至支持复杂的多重继承).
- 经邮件与高焕堂先生联系,征得高先生同意,以LGPL协议开源,感谢高先生以及MISOO团队的贡献!
原有高焕堂先生及其MISOO团队创作的宏(总共6个宏),清单如下:
高焕堂及MISOO创作的宏 | 是否存在问题? | 是否修改? |
---|---|---|
INTERFACE | 没有问题 | 否 |
CLASS | 无法支持继承 | 是 |
CTOR | 对申请不到内存的情况未保护 | 是 |
END_CTOR | 没有问题 | 否 |
FUNCTION_SETTING | 没有问题 | 否 |
IMPLEMENTS | 没有问题 | 否 |
为了更好的支持面向对象以及面向接口编程,金永华增加了14个宏:
创作的宏 | 创作目的()为了解决什么问题?) |
---|---|
DTOR / END_DTOR | 为了支持析构函数的概念 |
ABS_CLASS | 为了支持抽象类的概念 |
ABS_CTOR / END_ABS_CTOR | 为了支持可继承的抽象类的构造函数 |
EXTENDS | 为了让熟悉Java的人容易理解(与IMPLEMENTS宏等同) |
SUPER_CTOR | 为了支持子类调用父类的构造函数 |
SUPER_PTR / SUPER_PTR_2 / SUPER_PTR_3 | 为了支持向上转型 |
SUB_PTR / SUB_PTR_2 / SUB_PTR_3 | 为了支持向下转型 |
INHERIT_FROM | 为了支持访问直接父类的数据成员 |
- 希望这套宏,能够真正帮助到想用C语言写出面向对象代码的C程序员们!
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].