All Projects → CodelyTV → Refactoring Code Smells

CodelyTV / Refactoring Code Smells

♻️ Example projects illustrating Code Smells in order to apply Refactoring techniques

Programming Languages

javascript
184084 projects - #8 most used programming language
java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Refactoring Code Smells

Jsinspect
Detect copy-pasted and structurally similar code
Stars: ✭ 3,379 (+1225.1%)
Mutual labels:  clean-code, refactoring
Study Path
An organized learning path about Clean Code, Test-Driven Development, Legacy Code, Refactoring, Domain-Driven Design and Microservice Architecture
Stars: ✭ 1,357 (+432.16%)
Mutual labels:  clean-code, refactoring
Programming Book Recommendations List
My personal list of books that I recommend to read if you are a software developer
Stars: ✭ 22 (-91.37%)
Mutual labels:  clean-code, refactoring
Xaml Code Experiences
A collection of the experiences I have collected during days of Xamarin and Wpf, while following the MVVM design pattern.
Stars: ✭ 114 (-55.29%)
Mutual labels:  clean-code, refactoring
Vscode Glean
The extension provides refactoring tools for your React codebase
Stars: ✭ 1,194 (+368.24%)
Mutual labels:  clean-code, refactoring
refactoring-koans-js
Refactoring Koans to help you learn to refactor code smells in javascript
Stars: ✭ 15 (-94.12%)
Mutual labels:  refactoring, clean-code
clean-ddd-php-poc-contacts
A simple contact manager API to demonstrate the concepts of Clean Architecture and DDD with PHP 7.4+.
Stars: ✭ 31 (-87.84%)
Mutual labels:  clean-code
clean-code-javascript-tr
🛁 JavaScript için uyarlanmış Temiz Kod kavramları
Stars: ✭ 86 (-66.27%)
Mutual labels:  clean-code
scalafix-maven-plugin
Enables automatic refactoring and linting of Maven projects written in Scala using Scalafix.
Stars: ✭ 15 (-94.12%)
Mutual labels:  refactoring
lemonj
A CSS/LESS/SCSS analysis, bad smell check and auto-refactor tools. 一个面向 CSS/LESS/SCSS 的分析、坏味道检查和自动化重构工具。
Stars: ✭ 138 (-45.88%)
Mutual labels:  refactoring
sudoku
Multiplayer concurrent sudoku. The winner is the player who fills the last cell correctly.
Stars: ✭ 15 (-94.12%)
Mutual labels:  clean-code
angular-clean-code
My personal best practices when I'm working with Angular.
Stars: ✭ 39 (-84.71%)
Mutual labels:  clean-code
CleanArchitectureMVVM
Example of Clean Architecture of Android app using MVVM, Koin, Coroutines, Retrofit, Room, Solid Principle, DRY, KISS, OOP
Stars: ✭ 60 (-76.47%)
Mutual labels:  clean-code
pahout
A pair programming partner for writing better PHP. Pahout means PHP mahout 🐘
Stars: ✭ 43 (-83.14%)
Mutual labels:  clean-code
clean-code-javascript
🛁 Clean Code-Konzepte adaptiert für JavaScript.
Stars: ✭ 37 (-85.49%)
Mutual labels:  clean-code
ember-template-rewrite
A utility for automatically refactoring Ember.js templates.
Stars: ✭ 16 (-93.73%)
Mutual labels:  refactoring
Best-Coding-practices-in-android
This repo is to add best practices that developers can apply to write clean, short and testable code in android.
Stars: ✭ 86 (-66.27%)
Mutual labels:  clean-code
iOS-Clean-Architecture-Example
An iOS app designed using clean architecture and MVVM.
Stars: ✭ 50 (-80.39%)
Mutual labels:  clean-code
RSS-Reader
Simple project with clean architecture
Stars: ✭ 31 (-87.84%)
Mutual labels:  clean-code
phpstats
CLI Statistics and dependency graphs for PHP
Stars: ✭ 61 (-76.08%)
Mutual labels:  clean-code

Refactoring from Code Smells to Clean Code
🧼💩 🔜 🌈🦄

CodelyTV Open Source CodelyTV Pro Courses

Showcase of the refactorings and code smells catalog illustrated with practical examples in different programming languages.

🎥 View refactoring course · ⭐ Star this repository · ☝️ Propose an example

🧠 Concepts

💩 Code Smells

These are what we could consider as potential bad practices. Things such as long methods, nested conditionals, feature envy, and so on 😊

The different Code Smells are grouped based on the following taxonomy (source) where you will find each one of the single examples:

  • Bloaters: Something that has grown so large that it cannot be effectively handled
  • Object-Orientation Abusers: Solutions that does not fully exploit the possibilities of object-oriented design
  • Change Preventers: hinder changing or further developing the software
  • Dispensables: Something unnecessary that should be removed from the source code
  • Couplers: Promotes coupling (knowledge particularities) between different classes

🧼 Refactorings

👷‍ Work in progress

🌈 Examples

👷‍ Work in progress

🤯 How to explore this repository

You have the following 3 main folders:

  • 💩 Code Smells
  • 🧼 Refactorings
  • 🌈 Examples

The purpose of this repository is to illustrate with some 🌈 Examples how we can detect 💩 Code Smells and evolve a specific code applying 🧼 Refactorings technics.

That is the reason why the code will always be located in the 🌈 Examples folder with a folder for each of its possible evolutions, and linked from the 💩 Code Smells and 🧼 Refactorings directories using symbolic links.

👌 Examples completeness

The examples you will find in this repository are completely operational projects that you can open up in your IDE and start refactoring executing the provided test suite.

That is, we understand that in order to have a better learning experience, you must have the whole picture of the specific code snippet you actually want to analyze. This gives you the freedom to modify it right away after cloning this project without having to worry about boilerplaty aspects.

🤝 Contributing

Feel free to open an issue explaining how you want to contribute before starting out coding and we will help you figuring out the best way to approach it 😊

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].