<pedrocorreia.net ⁄>

<Code of Horror ⁄ >

clicks: 3114 3114 2007-06-22 2007-06-22 goto programacao myNews programacao  Bookmark This Bookmark This

After years of devleopement with Java, my company surprised me nicely(!) by putting me to a .Net project which is already in maintenance phase. they had performance issues, and rightfully they needed to fix it ASAP. Problem is, None of the original developers are around. Nobody really knows whats going on it the code. There were a lot of BAD desicions on the the project history. Like using NHibernate, which at the time NOBODY used, and it was buggy, not mature at all (i doubt if it is used frequently now eihter). Developers changed and with the time pressure new developers did not care about actually learning the ORM framework, they just copied whatever they saw on the code. No enthusiasm, nothing. Things can go pretty bad if you use (N)Hibernate without really understanding it with bad entity model, unnecessarily complex parent-child relations, Lazy loading , unique object issues etc. This was one of the case (and no, i am not the best ORM expert in the world).
But that is not the worst part. when i entered the code with the idiotic Visual Studio 2003, i see the code of horror ( a quick note: we are sort of stucked with .Net 1.1 and VS 2003. i dont know what people are smoking when they say Visual Studio is a good developement environment. it is absymal, 2005 version is a little improved but nonetheless it is like code coloring notepad comparing with IDEA. Thankfully there was re-sharper plugin, so pain was not so severe.) . Even tough almost no C# experience, thanks to its similarity to Java, quickly i managed to find coding crimes. Here is a small collection of the things i have found (by no means all of them):

este é só um excerto do artigo, para aceder ao artigo completo, clique no link em baixo:
this is just a small excerpt from the article, to access the full article please click in the link below:


Subscribe News RSS  Subscribe News Updates by E-mail

myNews <myNews show="rand" cat="programacao" ⁄>

RouterJs: easy routing for your ajax Web applications new ...

RouterJs is a simple router for your ajax web apps. It's build upon History.js which means that Rout (...)

clicks: 16336 16336 2012-05-14 2012-05-14 goto url (new window) haithembelhaj.g... goto myNews programacao

Backbone computed properties new ...

This gist shows one way to implement read- and write-enabled computed properties on a Backbone Model (...)

clicks: 16147 16147 2012-05-13 2012-05-13 goto url (new window) https://gist.gi... goto myNews programacao

HTML5 jQuery Paint Plugin new ...

Websanova Paint is a HTML5 canvas based jQuery plugin. It allows you to free paint on a canvas area (...)

clicks: 26934 26934 2012-05-12 2012-05-12 goto url (new window) websanova.com/t... goto myNews programacao

Create Instagram Filters With PHP new ...

In this tutorial, I'll demonstrate how to create vintage (just like Instagram does) photos with PHP (...)

clicks: 15853 15853 2012-05-12 2012-05-12 goto url (new window) net.tutsplus.co... goto myNews programacao

Android Query new ...

Android-Query (AQuery) is a light-weight library for doing asynchronous tasks and manipulating UI el (...)

clicks: 16382 16382 2012-05-12 2012-05-12 goto url (new window) code.google.com... goto myNews programacao

Sass vs. LESS vs. Stylus: Preprocessor Shootout new ...

CSS3 preprocessors are languages written for the sole purpose of adding cool, inventive features to (...)

clicks: 15552 15552 2012-05-11 2012-05-11 goto url (new window) net.tutsplus.co... goto myNews programacao

Real-time Applications With Node.js and Socket.IO new ...

Hey everyone! Sorry about the long pause since the last blog post, life has been quite hectic for th (...)

clicks: 16224 16224 2012-05-11 2012-05-11 goto url (new window) codingcookies.c... goto myNews programacao

Gettings to know Backbone.ks new ...

In this series, we're going to learn how to build a fully functional contacts manager using Backbone (...)

clicks: 15143 15143 2012-05-10 2012-05-10 goto url (new window) net.tutsplus.co... goto myNews programacao