16 مستودعات
Techniques for modularizing cross-cutting concerns like logging or security.
Explore 16 awesome GitHub repositories matching software engineering & architecture · Aspect-Oriented Programming. Refine with filters or upvote what's useful.
Nest is a server-side framework for building scalable and maintainable enterprise-grade applications using TypeScript. It provides a modular architecture that organizes code into encapsulated, reusable modules, utilizing a dependency injection container to manage object lifecycles and resolve component dependencies through declarative metadata. The framework distinguishes itself through a platform-agnostic abstraction layer that decouples core logic from underlying HTTP servers, allowing for flexible implementation choices. It employs a middleware-based request pipeline that processes traffic
Inspects class metadata at runtime to automate dependency injection and request routing logic.
This project serves as a comprehensive knowledge base and reference for distributed systems engineering and enterprise software architecture. It provides a structured collection of technical resources, design patterns, and methodologies intended to assist in the design, maintenance, and scaling of complex, high-performance software environments. The repository distinguishes itself by offering deep dives into core architectural concepts such as actor-based concurrency, aspect-oriented interception, and inversion-of-control containers. It emphasizes the practical application of distributed syst
Modularize cross-cutting concerns like logging or security by intercepting method calls to keep business logic clean.
Spring Framework is an enterprise Java framework providing a comprehensive infrastructure for building server-side applications. It functions as a dependency injection container and a Java application framework designed to support scalable backend development through modular architecture. The project provides tools for aspect-oriented programming to intercept method calls using dynamic proxies, allowing the application of cross-cutting concerns such as security and transactions. It also includes a centralized system for managing object lifecycles and coordinating component wiring by injecting
Employs aspect-oriented programming to modularize cross-cutting concerns like logging and security.
Hutool is a standard utility library for Java application development designed to simplify common programming tasks and reduce boilerplate code. It provides a comprehensive collection of reusable helper classes and static utilities to streamline development across the Java ecosystem. The project implements a wide array of specialized toolkits, including systems for cryptography and security, network communication via HTTP and JSON clients, and the processing of office documents and file system IO. It also features a concurrency and scheduling framework for managing asynchronous tasks and recu
Provides reflective metadata programming tools to inspect class structures and annotations at runtime.
SpringAll is a comprehensive reference library and learning resource for enterprise Java application development. It provides a collection of practical guides, configuration templates, and code examples designed to demonstrate standard architectural patterns within the Spring ecosystem. The project serves as a reference
Provides techniques for modularizing cross-cutting concerns like logging or security using aspect-oriented programming.
Scala is a statically typed programming language and compiler that combines object-oriented and functional programming paradigms. It serves as a cross-platform runtime language capable of targeting the Java Virtual Machine and JavaScript to share logic between backend servers and web frontends. The project provides a functional programming framework with immutable data structures and higher-order functions to build reliable concurrent and distributed applications. It distinguishes itself through deep interoperability with Java and JavaScript ecosystems and the ability to transform code into n
Implements techniques for inspecting and manipulating class structures and metadata at runtime.
Guice is a Java dependency injection framework and component container. It automates object wiring by mapping interfaces to implementations via a central injector, removing the need for manual factory patterns and constructor calls. The framework provides specialized support for aspect-oriented programming, allowing for the interception and modification of method execution to implement shared cross-cutting concerns. It also functions as a persistence manager to coordinate transaction boundaries and manage the lifecycle of entity managers within a dependency-injected environment. Its core cap
Provides specialized support for aspect-oriented programming to implement cross-cutting concerns like logging or security.
This is a learning resource that explains the Spring Framework through source code analysis and practical examples. It covers the foundational principles of Inversion of Control and Dependency Injection, demonstrating how the IoC container manages bean definitions, dependency injection, and lifecycle callbacks. The material also explores Spring's Aspect-Oriented Programming implementation, showing how cross-cutting concerns like logging and security are handled through proxy-based weaving. The resource provides walkthroughs of Spring Boot's automatic configuration mechanism, detailing how con
Implements cross-cutting concerns like logging and security separately from business logic using Spring AOP.
Flecs is a high-performance entity component system framework and data-oriented programming library. It serves as a simulation engine core and game engine architecture tool, decoupling state from behavior by separating entities, components, and systems. The framework features a runtime reflection layer for dynamic data inspection and a built-in scripting system for defining entity behavior without recompilation. It also includes a network interface and REST API for remote simulation administration and state querying. The library covers a broad surface of simulation capabilities, including ar
Provides runtime reflection and metadata to allow dynamic data inspection and scripting.
Cello is a programming language extension for C that provides a higher-level implementation of the language. It integrates an object-oriented framework, an automated garbage collection system, and a runtime reflection library to enable dynamic type inspection. The project implements a structured system for object orientation within C, including support for classes, type classes, and polymorphism. It includes a runtime exception handling system to intercept execution errors and initiate recovery procedures. The framework further provides generic programming capabilities for creating reusable
Stores type and object information in a runtime registry for dynamic discovery of program properties.
SpringSide 4 is an enterprise Java reference architecture and utility library built on the Spring Framework. It provides a pragmatic, best-practice application stack for building RESTful web services, web applications, and data access layers, along with a curated collection of high-performance utility classes for common operations like text, date, collection, reflection, concurrency, and I/O handling. The project distinguishes itself by combining a complete reference application scaffold with production-oriented infrastructure. It includes a JPA-based data access layer that automatically tran
Uses proxy-based AOP interception for modularizing cross-cutting concerns like transactions and security.
يعمل هذا المشروع كبنية مرجعية شاملة ودليل لأفضل الممارسات لتطوير تطبيقات قابلة للتوسع باستخدام إطار عمل Spring Boot. يوفر مخططاً هيكلياً لتطوير الواجهة الخلفية (Backend) بلغة Java، مع التركيز على تنفيذ واجهات برمجة تطبيقات مفصولة (Decoupled APIs) وإنشاء معايير معمارية. يفصل المشروع بشكل خاص إنشاء المبادرات المخصصة (Custom starters) ووحدات التكوين التلقائي لتبسيط دمج مكتبات الطرف الثالث. كما يوفر مخططاً للنشر لحزم التطبيقات كملفات jar قابلة للتنفيذ وتحسين البناء الطبقي لبيئات السحابة المعتمدة على الحاويات. تغطي مساحة القدرات ضبط الأداء من خلال التخزين المؤقت للذاكرة والمعالجة غير المتزامنة، بالإضافة إلى مزامنة الأنظمة الموزعة باستخدام الأقفال الموزعة ووسطاء الرسائل. تشمل التغطية الإضافية إدارة استمرارية البيانات، وترحيل قواعد البيانات، وجدولة المهام المؤتمتة، وتنفيذ البرمجة الموجهة بالجوانب (AOP) للمخاوف المتقاطعة.
Applies aspect-oriented programming to implement reusable cross-cutting logic such as logging and security independently from business flows.
Small-Spring is a simplified Java implementation of the Spring framework designed to study the internal architecture of inversion of control containers and dependency injection frameworks. It functions as a bean container that manages object lifecycles and resolves dependencies through automated instantiation and property injection. The project implements a mechanism for intercepting method calls using dynamic proxies to support aspect-oriented programming. It separates cross-cutting concerns from business logic by wrapping target objects to modify method executions. The system covers compon
Implements techniques for modularizing cross-cutting concerns by intercepting method calls.
cglib is a suite of tools for JVM bytecode generation, class transformation, and dynamic proxying. It provides a high-level API for creating and transforming Java bytecode at runtime to modify class behavior and a framework for intercepting method calls and field access. The project implements dynamic proxy generation to support aspect oriented programming and custom data access patterns. It also includes a serialization manager to implement serialization contracts by adding specific methods and controlling object replacement within proxy classes. The library covers bytecode manipulation and
Supports aspect oriented programming by intercepting Java methods to implement cross-cutting concerns like logging.
هذا المشروع عبارة عن مجموعة من تطبيقات المرجع والأدلة العملية لبناء تطبيقات Java للمؤسسات باستخدام إطار عمل Spring Boot. يعمل كمعرض لمشاريع الواجهة الخلفية ودليل تنفيذ، حيث يوفر مجموعة من البنى لأنماط الخوادم الشائعة. يتميز المستودع بتركيزه على تصميم الأنظمة الموزعة، حيث يقدم أمثلة لتوليد المعرفات الفريدة عالميًا، والتخزين المؤقت الموزع، والبحث بالنص الكامل. كما يتضمن قوالب وأمثلة لإنشاء Spring Boot starters مخصصة لتغليف التبعيات والتكوينات المشتركة في وحدات قابلة لإعادة الاستخدام. يغطي المشروع مجموعة واسعة من مجالات القدرات، بما في ذلك أمان التطبيقات عبر المصادقة والترخيص المستند إلى الرموز المميزة (tokens)، ومراقبة النظام باستخدام مراقبة الصحة والأداء، وتكامل قواعد البيانات العلائقية. كما تشمل التغطية الإضافية نشر التطبيقات في حاويات ومعالجة الوسائط وبيانات اللغة الطبيعية.
Implements aspect-oriented programming to decouple cross-cutting concerns like logging and security from business logic.
هذا المشروع عبارة عن مستودع تعليمي ومورد دراسي يوفر مجموعة شاملة من ملاحظات الدراسة، وأدلة البرمجة، وأمثلة كود قابلة للتشغيل. يعمل كدليل لتطوير Java SE وتطوير ويب Java، ويتميز بمكتبة من عينات الكود التي توضح الخوارزميات الشائعة والتنفيذات التقنية. يركز المستودع على تحليل لغة Java ووقت التشغيل، مع دروس تفصيلية حول تعدد الخيوط (multithreading) والتزامن. يوفر تنفيذات عملية لهندسة البرمجيات وأنماط التصميم، مثل نمط Singleton ونمط Strategy، بالإضافة إلى استكشافات لـ Java Virtual Machine و bytecode. يغطي المشروع مجموعة واسعة من القدرات بما في ذلك أساسيات اللغة مثل generics و annotations، وأساسيات تطوير الويب التي تتضمن معالجة طلبات HTTP وإدارة الجلسات، وبدائيات التزامن لدورة حياة الخيوط ومزامنة الموارد. كما يتضمن أدوات للأمان، ومعالجة البيانات، وتوليد الصفحات الديناميكية.
Demonstrates aspect-oriented programming by generating dynamic proxies to handle cross-cutting logic.