Skip to content

Add OOP Documentation: Inheritance, Methods, Attributes & Access Modifiers#2725

Merged
ajay-dhangar merged 3 commits into
ajay-dhangar:mainfrom
ArshiBansal:adding_oops_fundamentals
Jun 23, 2026
Merged

Add OOP Documentation: Inheritance, Methods, Attributes & Access Modifiers#2725
ajay-dhangar merged 3 commits into
ajay-dhangar:mainfrom
ArshiBansal:adding_oops_fundamentals

Conversation

@ArshiBansal

Copy link
Copy Markdown
Contributor

📥 Pull Request

Description

This PR adds comprehensive documentation for core OOP concepts in C++ to the Algo project documentation site.

Changes included:

  • inheritance.md - Detailed guide on inheritance, types, and diamond problem
  • writing-documentation.md - Guidelines for writing Docusaurus documentation
  • methods.md - Methods, parameters, instance vs static, best practices
  • attributes.md - Attributes, fields vs properties, getters/setters, encapsulation
  • access-modifiers.md - Public, private, protected access with examples and benefits

These pages follow consistent style, include code examples with outputs, tables, and Docusaurus best practices.

Motivation: Improve developer onboarding and provide clear reference material for C++ OOP fundamentals.

closes #2676

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update

Checklist:

  • My code follows the style guidelines of this project
  • I have performed a self-review of my code
  • I have commented my code, particularly in hard-to-understand areas
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • Any dependent changes have been merged and published in downstream modules

@github-actions

Copy link
Copy Markdown

Thank you for submitting your pull request, @ArshiBansal! 🙌

We'll review it as soon as possible. If there are any specific instructions or feedback regarding your PR, we'll provide them here.

Thanks again for your contribution to our Algo project! 😊

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request adds four new documentation files covering core C++ OOP concepts: attributes, constructors, methods, and access modifiers. The review feedback highlights several critical issues across all files, including improperly escaped markdown front matter that will break Docusaurus parsing, and code blocks containing escaped characters and HTML entities. Additionally, the reviewer noted C++ code quality issues such as an uninitialized member variable in attributes.md, a missing <string> header in constructors.md, and a lack of const-correctness in methods.md.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Comment thread docs/programming-fundamentals/oop-basics/attributes.md Outdated
Comment thread docs/programming-fundamentals/oop-basics/attributes.md Outdated
Comment thread docs/programming-fundamentals/oop-basics/attributes.md Outdated
Comment thread docs/programming-fundamentals/oop-basics/constructors.md Outdated
Comment thread docs/programming-fundamentals/oop-basics/constructors.md Outdated
Comment thread docs/programming-fundamentals/oop-basics/methods.md Outdated
Comment thread docs/programming-fundamentals/oop-basics/methods.md Outdated
Comment thread docs/programming-fundamentals/oop-basics/modifiers.md Outdated
Comment thread docs/programming-fundamentals/oop-basics/modifiers.md Outdated
@github-actions

github-actions Bot commented Jun 20, 2026

Copy link
Copy Markdown

⚡️ Lighthouse Report for the Deploy Preview of this PR 🚀

🔗 Site: Algo | Live Site

URL 🌐 Performance Accessibility Best Practices SEO 📊
/algo/ 🔴 34 🟢 96 🟡 75 🟢 100 📄
/algo/docs 🔴 42 🟢 95 🟡 75 🟢 100 📄
/algo/blog 🟡 51 🟢 92 🟢 100 🟡 86 📄

@ajay-dhangar ajay-dhangar left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please follow our documentation structure and carefully read the contribution guidelines.

@ArshiBansal

Copy link
Copy Markdown
Contributor Author

@ajay-dhangar i checked the issues where it is failing. the issues are to be found in /home/runner/work/algo/algo/scripts/temp_verify.py which was not used by be. If any of the 4 files i made has the issue could please help me figure those out.

@ajay-dhangar ajay-dhangar left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You need to update or rewrite your code because the entire documentation does not meet our expectations.

Comment thread docs/programming-fundamentals/oop-basics/methods.md Outdated
@ArshiBansal

Copy link
Copy Markdown
Contributor Author

@ajay-dhangar done

@ajay-dhangar ajay-dhangar left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

@ajay-dhangar ajay-dhangar added documentation Improvements or additions to documentation level2 GirlScript Summer of Code | Contributor's Levels gssoc-26 Official label for all GSSoC 2026 related issues and pull requests. level:intermediate Requires a solid understanding of data structures, algorithms, or React/Docusaurus concepts. gssoc:approved Verified issue or PR that meets all project standards and is ready for the next step. quality:clean Code is perfectly formatted, well-commented, error-free, and adheres to standard project. quality:exceptional Outstanding contribution that includes deeply optimized code, exhaustive test cases... type:docs Educational content updates, formatting math with LaTeX/KaTeX, fixing explanations... type:refactor Existing codebase or MDX organization to improve maintainability without changing public behavior. type:accessibility Ensuring code structure, proper alt text for visualization images, and full WCAG / screen-reader. labels Jun 23, 2026
@ajay-dhangar ajay-dhangar merged commit b403812 into ajay-dhangar:main Jun 23, 2026
5 of 6 checks passed
@github-actions

Copy link
Copy Markdown

🎉 Contribution Merged!

Thank you so much, @ArshiBansal, for your contribution! Your pull request #2725 has been successfully merged.

We truly appreciate your time and effort in making this Algo project better for the community. Keep up the amazing work! 🚀✨

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation gssoc:approved Verified issue or PR that meets all project standards and is ready for the next step. gssoc-26 Official label for all GSSoC 2026 related issues and pull requests. level:intermediate Requires a solid understanding of data structures, algorithms, or React/Docusaurus concepts. level2 GirlScript Summer of Code | Contributor's Levels quality:clean Code is perfectly formatted, well-commented, error-free, and adheres to standard project. quality:exceptional Outstanding contribution that includes deeply optimized code, exhaustive test cases... type:accessibility Ensuring code structure, proper alt text for visualization images, and full WCAG / screen-reader. type:docs Educational content updates, formatting math with LaTeX/KaTeX, fixing explanations... type:refactor Existing codebase or MDX organization to improve maintainability without changing public behavior.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature]: Add Missing OOP Fundamentals Documentation

2 participants