An indicator within a codebase that possibly indicates a deeper problem.
2
votes
1answer
145 views
What's the best way to create a static utility class in python? Is using metaclasses code smell?
Ok so I need to create a bunch of utility classes in python. Normally I would just use a simple module for this but I need to be able to inherit in order to share common code between them. The common ...
1
vote
1answer
186 views
Is there a name for CSS code smell that can be seen in class names like “float” or “white”?
I noticed some code in our projects using CSS class names such as red, black or float.
I want to provide some information for people so they know to avoid it.
Is there a common name for that code ...
2
votes
1answer
109 views
Less code or less operation
Sometimes I hesitate between "More code to avoid unnecessary operations" and "less code but with redundant operations". Let me just take an example (Win32 API):
I try to paint some controls manually ...
0
votes
2answers
220 views
Is $.proxy a code smell?
I've been writing most of my javascript applications in an OO style close to what I would use for most other languages. However, this means that most callbacks need to have a reference to an object, ...
2
votes
1answer
309 views
How can I deal with a team member who duplicates code? [duplicate]
One of our team member duplicates code. Code duplication causes confusion among my team members reading his code, it causes bugs down the line when the duplicated segment is fixed in one location and ...
6
votes
4answers
446 views
Hating your own code - for good or bad, how do you deal with it? [closed]
Have you ever had this feeling that your code is bad, the whole project is a mess, and you just want to step off? On your daily job you can explain this feeling away with your coworkers, asshole boss, ...
2
votes
1answer
152 views
What does the “4” in LCOM4 mean?
I know that methods in a class should have high cohesion which roughly translates to having all the methods use all the instance variables directly or indirectly. I know that LCOM4 (Lack of ...
2
votes
2answers
115 views
Should I check integrity in my application code or defer to the database? [duplicate]
At work we have a lot of code like this (pseudocode):
response form_submit(string username, string password) {
if ( username == ""
|| username.contains(invalid_chars)
|| password.length ...
4
votes
2answers
489 views
How do I handle having so many SQL queries?
I have an MVC3 project that uses SQL Server.
I use data from the SQL database all the time and I often find that I'm reusing/duplicating some SQL queries. I thought I'd solve this problem by creating ...
8
votes
4answers
795 views
Is this a test smell or is it even worse?
I have recently been looking at some testscripts which looks a bit like
...
try {
receiveSomething();
// something was received even though it shouldn't
failTest();
} catch (TimeoutException e) ...
7
votes
3answers
363 views
is this javascript property defaulting pattern a code smell?
In some javascript code I'm working on refactoring I've handled cases where I wanted to default an object property to true without having to go through the code-base and add the property to every ...
5
votes
3answers
442 views
At what point/range is a code file too big?
I'm finding lots of 2-3k line files, and it doesn't really feel like they should be that big.
What is a good criteria to objectively call a source code file "too big"?, is there such thing as a ...
6
votes
5answers
490 views
Is having 'Util' classes a cause for concern? [closed]
I sometimes create 'Util' classes which primarily serve to hold methods and values that don't really seem to belong elsewhere. But every time I create one of these classes, I think "uh-oh, I'm gonna ...
23
votes
10answers
2k views
Are flag variables an absolute evil?
I remember doing a couple of projects where I totally neglected using flags and ended up with better architecture/code; however, it is a common practice in other projects I work at, and when code ...
1
vote
4answers
254 views
Is extensive documentation a code smell? [closed]
Every library, open-source project, and SDK/API I've ever come across has come packaged with a (usually large) documentation file, and this seems contradictory to the wide-spread belief that good code ...
3
votes
3answers
374 views
Is there a limit on how many global consts are used before an application is considered bad programming?
Basically, I develop websites, some large with many crud operations, etc...
However I've gotten into the habit of storing re-usable data as a constant in my PHP applications
I currently have 44 ...
8
votes
2answers
464 views
Unit Testing: “It's a code smell if you're refactoring and there are no collaborators”?
I'm reading The Art of Unit Testing by Roy Osherove. I'm at section 7.2 Writing maintainable tests where the author has this note about code smell:
NOTE: When you refactor internal state to be ...
17
votes
5answers
991 views
Is it OK for a function to modify a parameter
We have a data layer that wraps Linq To SQL. In this datalayer we have this method (simplified)
int InsertReport(Report report)
{
db.Reports.InsertOnSubmit(report);
db.SubmitChanges();
...
1
vote
2answers
250 views
Unit Tests code duplication?
How can I avoid code duplication in unit tests?
Using Java and JUnit suppose I have something like this:
public interface Arithmetic<T> {
public T add(T a, T b);
public T sub(T a, T ...
15
votes
9answers
1k views
Are too many assertions code smell?
I've really fallen in love with unit testing and TDD - I am test infected.
However, unit testing is normally used for public methods. Sometimes though I do have to test some assumptions-assertions ...
1
vote
2answers
56 views
Should Multiple Data Items be in Multi Unit Test Methods?
I often want to have the same unit test applied to data multiple items that are roughly equivalent (two non-empty strings). Currently I implement these in multiple unit test methods, with names like ...
2
votes
3answers
433 views
What code smell best describes this code?
Suppose you have this code in a class:
private DataContext _context;
public Customer[] GetCustomers()
{
GetContext();
return _context.Customers.ToArray();
}
public Order[] GetOrders()
{
...
0
votes
2answers
313 views
Is this bad design for a Shape interface?
I'm creating a vector editing program in C++, and I need a Shape interface which other concrete classes will implement. There is a requirement that no implementation inheritance is allowed. The design ...
7
votes
4answers
600 views
Is “Code Smell” still a useful metaphor, or has misuse of the term subverted its meaning? [closed]
I've come across some
comments
and
answers
on Programmers.SE that decry the use of the phrase "Code Smell" and I've been wondering what the reasoning is for those who dislike it. I first encountered ...
7
votes
5answers
432 views
Writing Testable Code vs Avoiding Speculative Generality
I was reading some blog posts this morning, and stumbled across this one:
If the only class that ever implements the Customer interface is
CustomerImpl, you don't really have polymorphism and ...
2
votes
1answer
203 views
How should I design a correct OO design in case of a Business-logic wide operation
EDIT:
Maybe I should ask the question in a different way.
in light of ammoQ's comment, I realize that I've done something like suggested which is kind of a fix and it is fine by me.
But I still want ...
12
votes
10answers
2k views
About empty line of code
Why do my colleagues hate it when I add an empty line of code?
Sometimes I add a few lines to see when a method ends and another one starts more easily.
2
votes
1answer
289 views
Is @staticmethod proliferation a code smell?
Consider a Python class with a number of @staticmethod methods and few instance methods. The static methods don't accept an instance of the defining class as parameters.
Do you think that all these ...
2
votes
5answers
666 views
Is wrapping third-party API calls a design smell?
Five methods within my API call the same third-party method. In trying to abide by DRY, does it make sense to wrap this call in a private method?
8
votes
2answers
473 views
Is it a code smell if an object knows a lot of its owner?
In our Delphi 2007 application we are using a lot of the following constructs
FdmBasic:=TdmBasicData(FindOwnerClass(AOwner,TdmBasicData));
The FindOwnerClass travels the Owner hierarchy of the ...
7
votes
5answers
294 views
What to do when your work colleague doesn't understand the design trying to be maintained
A software project that I am working on involves me and another programmer. The project involved an engine backend with an MVC front end. Initially I did alot of the work on the project and so setup ...
6
votes
3answers
387 views
Is having a switch to turn mocking on or off a code smell?
I have a method that looks like this:
def foobar(mock=False, **kwargs):
# ... snipped
foobar actually makes several calls to Amazon S3 and returns a composed result.
In order to make this ...
8
votes
5answers
328 views
When developing on an old code base, should I use Best Practices or go for Consistency [duplicate]
Possible Duplicate:
Code maintenance: keeping a bad pattern when extending new code for being consistent, or not ?
As my experience in programming increases with each project, I look back ...
50
votes
17answers
3k views
How to train yourself to avoid writing “clever” code?
Do you know that feeling when you just need to show off that new trick with Expressions or generalize three different procedures? This does not have to be on Architecture Astronaut scale and in fact ...
2
votes
2answers
222 views
Does this pattern disregard the DRY principle, and can I modify the pattern to fit?
I just started working at a company and we're currently in a fairly intensive (full-days most work days) training program to bring us up to speed on the way the company does things, and train us in ...
5
votes
6answers
269 views
How to keep a project easy to understand and intutive?
I am working on this project, which will soon contain loads of packages, projects etc. (Java). So, from the start I need to keep track of the high level package and class structure, monitor which ...
5
votes
5answers
546 views
Nested languages code smell
Many projects combine languages, for example on the web with the ubiquitous SQL + server-side language + markup du jour + JavaScript + CSS mix (often in a single function). Bash and other shell code ...
14
votes
5answers
964 views
Is code ownership a code smell?
This is something I've been thinking about ever since I read this answer in the controversial programming opinions thread. And it has been discussed a bit in other threads, such as this one, but I ...
7
votes
4answers
357 views
What “code smells” are there that are a symptom that an event listener model is required?
What are the symptoms in a code base that indicate that an event-listener approach is required?
It seems to me that when there are classes that need to be called by multiple, not defined at ...
7
votes
4answers
551 views
Are iframes a design smell?
We have some pretty old, clunky .Net 1.1 apps in our business that - rather than be forcably upgraded - just get an iFrame added so that new functions can be dropped in.
It's become such a well-known ...
43
votes
12answers
2k views
If your unit test code “smells” does it really matter?
Usually I just throw my unit tests together using copy and paste and all kind of other bad practices. The unit tests usually end up looking quite ugly, they're full of "code smell," but does this ...
5
votes
3answers
353 views
Is “3 or more use a for” a good rule of thumb?
When do repetitive operations become a code smell? I read this article by Charles Petzold where he suggested this and was wondering what people thought.
1
vote
5answers
1k views
Static classes and/or singletons — How many does it take to become a code smell?
In my projects I use quite a lot of static classes. These are usually classes that naturally seem to fit into a single-instance type of thing. Many times I use static classes and recently I've started ...
0
votes
2answers
111 views
Should I re-architect client's web app?
I've inherited a project that's accrued, layer upon layer, like a pearl over the last six years. It started out as a web page to let the client check the status of their work in production, and has ...
5
votes
1answer
294 views
Code smells in Android?
This question arises from seeing code where I feel like something is wrong but I can't put my finger on it while developing Android.
What are some red flags in Android development that says your ...
5
votes
1answer
1k views
If you have a piece of logic that needs to be shared between two controllers where do you keep it?
I have a set of single purpose functions that I need in two separate controllers. Right now I just have duplicate code and I want to get rid of it. This code is part of the controller and doesn't ...
14
votes
6answers
513 views
Do abstractions have to reduce code readability?
A good developer I work with told me recently about some difficulty he had in implementing a feature in some code we had inherited; he said the problem was that the code was difficult to follow. From ...
12
votes
5answers
6k views
Multiple classes in a single .cs file - good or bad?
Is it advisable to create multiple classes within a .cs file or should each .cs file have an individual class?
For example:
public class Items
{
public class Animal
{
}
public class ...
36
votes
15answers
3k views
Are #regions an antipattern or code smell?
In C# code it allows the #region/#endregion keywords to made areas of code collapsible in the editor. Whenever I am doing this though I find it is to hide large chunks of code that could probably be ...
6
votes
3answers
457 views
Why it is not recommended to have set-only property?
Today at work one of my colleague reviewed my code,
and suggested me to remove set-only property and use method insted.
As we both were busy with other stuffs, he told me to look at Property Design ...