4 مستودعات
Verifies that the equality and hashing contracts are consistently implemented within a class.
Distinct from Equality Validators: Focuses on the consistency between two specific methods rather than general equality validation.
Explore 4 awesome GitHub repositories matching software engineering & architecture · Equals-HashCode Consistency Checks. Refine with filters or upvote what's useful.
Checkstyle is a Java static analysis tool and linter designed to identify and enforce coding standards and best practices. It functions as a code quality auditor and Javadoc validation tool, checking source code against configurable rulesets to ensure structural and stylistic consistency. The project allows for the creation of custom linting rules by extending a core API to inspect the abstract syntax tree. It further enables specialized validation through the use of XPath expressions to query the syntax tree for specific code patterns and violations. Capability areas include the enforcement
Ensures that classes overriding equals also override hashCode to maintain collection compatibility.
Epoxy is an Android library for building complex RecyclerView screens using a model-driven approach. It generates RecyclerView adapter models at compile time from annotated custom views, data binding layouts, or view holders, eliminating the manual boilerplate typically associated with view holders and adapters. The library provides a diffing engine that automatically compares model lists and applies minimal updates with animations for insertions, removals, and moves. The library distinguishes itself through its controller-based model building, where a controller class with a buildModels meth
Checks at compile time that every annotated attribute field implements equals and hashCode for correct diffing.
Generate Java types from JSON or JSON Schema and annotate those types for data-binding with Jackson, Gson, etc
Omits specified fields from generated equals and hashCode methods using a property-level flag or object-level list.
هذا المشروع هو قاعدة معرفية شاملة لبرمجة Java ومستودع مرجعي تقني. يوفر مجموعة منسقة من الإجابات المقطرة، ووثائق API، وأدلة استكشاف الأخطاء وإصلاحها المصممة لمساعدة المطورين على حل تحديات البرمجة الشائعة ومزالق اللغة. يتميز المستودع بنهج معماري مهيكل للمعرفة، باستخدام تحليل يركز على المقارنة لتسليط الضوء على المقايضات بين تنفيذات المكتبات المختلفة وميزات اللغة. ويجمع مناقشات المجتمع عالية التأثير في تنسيق موحد، وينظم الحلول التقنية حسب الأنماط المعمارية، والتزامن، والأمن. يغطي المحتوى مجموعة واسعة من المجالات التقنية، بما في ذلك مواصفات اللغة الأساسية، وإدارة التزامن، وإدارة الذاكرة، وأنماط تصميم البرمجيات. كما يتضمن توجيهاً حول استكشاف أخطاء وقت التشغيل، وتنفيذ هياكل البيانات، والانعكاس والبيانات الوصفية، وأنماط تكامل API. تعمل الوثائق كمرجع تقني لتنفيذ أنماط معمارية البرمجيات القياسية وحل مشكلات تكوين البيئة.
Explains how to maintain consistency between equality and hashing contracts to prevent errors in hash-based collections.