Where to find resources on Refactoring? [closed] - refactoring

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 4 years ago.
Improve this question
Refactoring is the process of improving the existing system design without changing its behavior.
Besides Martin Fowler's seminal book "Refactoring - Improving the design of existing code" and Joshua Kerievsky's book "Refactoring to Patterns", are there any good resources on refactoring?

http://www.refactoring.com/ might help you. They have a long list of methods here:
http://www.refactoring.com/catalog/index.html
Joel's article Rub a dub dub shows you why you should refactor and not rewrite (but I guess you already knew that rewriting is a thing you should never do..)

Working Effectively with Legacy Code focuses on dealing with existing code-bases that need to evolve to be testable. Many techniques are used in the book to accomplish this, and is an excellent resource for refactoring.

If you're looking for more than just code refactoring, you might find Scott Ambler's book quite useful: http://www.ambysoft.com/books/refactoringDatabases.html

Here are some Wiki pages about refactoring that explore various principles and guidelines.

What is your codebase?
Eclipse has quite good support for Java. But unfortunately limited support for C++ code.
Heres an article from the makers..

Refactoring HTML is new and relatively good, you can guess what it covers :)
Other than that the two books you mention are the two I've used most, but Agile Principles is also very good.

There is a 'cheat sheet' for code smells here: http://industriallogic.com/papers/

I would recommend reading Working Effectively with Legacy Code, then Refactoring - Improving the design of existing code. Martin Fowler's book is more like a receipt book for me, it explains how. Working effectively with legacy code, explains the why in my opinion.
below is some other books relating to refactoring:
antipatterns refactoring software architectures and projects in crisis
refactoring in large software projects performing complex restructurings
refactoring sql applications
Prefactoring

Sourcemaking - http://sourcemaking.com/refactoring

Related

SCADA Protocol - iec-104 [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this question
I am researching the IEC 60870-5 family protocols and in particular IEC-101 and IEC-104, for a university project.
Although purchasing the IEC-101 and IEC-104 standards, i am still left with fundamental questions that i can't seem to find answers for using Google.
I am now focusing on understanding every Type Identification - its purpose, what its use, how to use it and draw a simple flow of each.
The standards doesn't supply the necessary information about the commands.
Can anyone refer me to some website where these things are explained or any forum where i can ask question about these standards?
Any help is appreciated.
We developed a new implementation of IEC 60870-5-104 as a part of the Eclipse SCADA project. It available since the 0.2.0 M3 Milestone build. (https://www.eclipse.org/eclipsescada/news/2014/07/01/releases__0_1_3_and_0_2_0_m3.html)
You can also use it standalone without the other Eclipse SCADA dependencies (it has some dependencies on slf4j and netty and some other minor stuff).
ScadaBR has both protocols implemented, and is OpenSource... so feel free to tackle it and grab what you need from its source.
The good thing is that with some time, you can backward-engineer the IEC protocol. We use basically Luciol in our project. Check their site!
http://www.luciol.info/gb/support/support_download.html
You can get the codes from Sourceforge aswell
http://sourceforge.net/projects/luciol/
Regards,
I found the book Practical Modern SCADA Protocols DNP3, IEC 60870.5 And Related Systems to be the best help out there the standard specification is a bit dry.
Look in Chapter 8 Fundamentals of IEC 60870-5, Section 8.5.2 ASDU Structure. It explains what the type ID is for and what they do.

Reading code in repositories to learn good programming practices, is it good or bad? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I am an electrical engineer but I love to code and I managed to learn few languages (and to use them to build useful stuff) and I did it all in my own since I learned coding using tutos and books.
This is good to have some knowledge of the vocabulary, but not to learn good programming practices.
But thanks to sites like Github, I now have access to a lot of good quality code used to build popular open source software and which is very well commented, as well.
Do you think, as experienced (and, probably, professional) programmers and developers, this is a good way to improve my skills ?
P.S. : Please do NOT close this question for being debatable because, as far as I am aware of, almost all Human knowledge is debatable. Thanks, again ;)
It will help you to
read code and understand it more quickly
know more ways to do something
It will not tell you which ways are better and which just look better at first glance.
By all means, continue reading working code. Just remember that you don't know who wrote it or how many times its been patched or how good the patch was or what subtle bugs are still lurking in there.

Is Microsoft Prism alive and active? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 3 years ago.
Improve this question
I've been doing a lot of reading these last two days on Microsoft Prism, but the thing I'm still not very sure of is what does the future look like for it? I know that version 4.1 was just released a few months ago, but besides Microsoft's own documentation, I haven't found many blog posts written in the last year on the subject, most of what I find is 2009-2010.
It definitely looks interesting but the learning curve seems to be a bit steep and I wouldn't want to embark if it's going to become obsolete in the near future. Anyone has any insight on this?
Mike, from my perspective it's not a bad thing that there isn't much blogging.
PRISM is supported and their message board monitored. There is a big community that uses PRISM. Functionality isn't being developed - thats' why not much to blog about, but it's solid and open-source. P&P team maintaining it and there might be 4.5 release later on when .NET 4.5 comes live.
This is not MVVM framework, and there is a lot of different MVVM frameworks. This is not model or business objects wrapper. This is framework to develop modular composite applications with WPF/Silverlight. And AFAIK there is nothing like this available.
We use their modules, navigations, regions, DelegageCommands, etc. We use pretty much everything available from PRISM and it works great for us. OTOH we did roll out our own MVVM functionality.
P.S. Learning curve WAS painful. Not because it's bad framework but because there is a lot of functionality (which you can use ala cart btw). At the end it is worth it. I suggest getting their book and reading it quickly just to see what it's all about. Then you will see when and how you can use their functionality.
Prism is a life saver. Now its maintained by Brian Lagunas. He is once of the best person on earth to help. He always reads our messages and replies. If you want to get a better understanding then Brian Lagunas has excellent courses on Pluralsight.

phpBB: how to customize the UI really [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 4 years ago.
Improve this question
This will be quite a long way to ask my question, so please bear with me, I'm really interested in your opinion and need an advice.
I would like to modify or convert an existing phpBB3 setup because my users don't like it anymore. They definitely don't like the (otherwise professional) design of the templates based on proSilver or subSilver2 - they find it boring. We're talking about young girls and boys; it's quite possible that this is the first forum they've ever wanted to use (for some of them at least). Because I maintain that forum for a quite small community I must do something with this situation, so I've started thinking about how to dress up phpBB3 and make it more lovely.
Do you know any other forum software which could satisfy our needs better, perhaps a more Web 2.0 targeted solution? Do you have any ideas how should I design a forum style that 10-15 years old people can really use and enjoy? (I'm not talking about the IT specialists of the future here.)
I know it's not about programming on the surface, but we're talking about UI design here. I ready to do quite a lot of coding if we could find a nice concept - I wonder if I should create a new phpBB3 style with custom code from scratch or something.
I don't know phpBB, but to your question on other forum software...
I have used bbPress for a large project and I was very happy with it. It shares a lot of code with Wordpress and one can easily integrate the two, and even add more sophisticated social networking features using the BuddyPress plugin.
bbPress itself is lightweight and fast in my experience. It is easy to create a completely customized experience using only HTML, CSS and a few PHP template tags. There is a plugin architecture that allows you to customize the heck out of it without modifying the core.
One drawback is that it's future within the Wordpress stable has seemed a little uncertain recently.

Is the documentation of Merb as poor as it seems? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
I've read only good things about Merb, but the documentation on the website is basically the api reference, and right now there is no books already published.
Any resources about Merb?
I guess that I'll start to read the code, but it'd be nice to have another sources of information
The wonderful PeepCode have got a Merb PDF and screencast available for $9.
The source code is really readable, pretty compact and full of comments.
Then, each merb part have a complete README full of informations too.
You can read all this on github: http://github.com/wycats/merb/
I think merb has been pretty bad about good example code, tutorials and updating dated information. I really like the project, but have been stung by this several times. Now that it has reached a semi stable 1.0 I really hope that some people step up and get a bunch of the docs up to date, add warnings to old docs and point it towards newer information. It should be great to see how they deal with supporting the project now that it is 1.0
There's the Merb Wiki and also a community book project, you can see it at http://book.merbist.com/ and the source is on github: http://github.com/mattetti/merb-book/tree/master.
You are correct. As the website will tell you, Merb is a hacker's framework. Yehuda called it an experimentation ground in a recent infoq interview . There is a lack of good examples because the system has changed a lot since its inception. Dec pointed out the github pages. They are the best source of current documentation that I know of. With the release of 1.0 the API has become stable, which will hopefully lead to less broken code examples.
I can also highly recommend the #merb IRC channel on FreeNode. Friendly, smart people.

Resources