principles

OO Software Design Principles

I am a huge fan of software design principles such as SOLID and DRY. What other principles exist for OO software design? Note. I’m not looking for answers like "comment your code" but instead looking for OO design principles like the ones discussed by Uncle Bob. ...

data access: exception to 'Tell, don't ask'?

Are data access objects an exception to the rule 'Tell, don't ask'? Eg get last 10 posts from a table data gateway? ...

How does the design of JavaBeans square with information hiding?

Two semesters ago, I had a professor who said: Some of you have been told to always include setter and getter methods for all private instance variables. I say that this breaks information hiding, and often results in systems where invariants cannot be enforced. Now, that sounds right to me. But isn't including those kinds of sett...

What's the rationale behind headers?

I don't quite understand the point of having a header; it seems to violate the DRY principle! All the information in a header is (can be) contained in the implementation. ...

Principles for Modeling CouchDB Documents

I have a question that I've been trying to answer for some time now but can't figure out: How do you design, or divide up, CouchDB documents? Take a Blog Post for example. The semi "relational" way to do it would be to create a few objects: Post User Comment Tag Snippet This makes a great deal of sense. But I am trying to use cou...

Strong Link - Weak Link in software security

Give me an example on how I could apply the Strong Link - Weak Link principle in designing a security component for a piece of software. Is there such a concept of "weak" modules in software security, where in case of an attack these will deliberately fail first, and determine the impossibility of the attacker to access and compromise an...

Guidelines/principles for package and component design.

Alright, our visual studio solution grows big in terms of the number of projects in it. Except for things that are obvious, I want to check whether the way it is now is what it has to be or we can better reorganize/package it. Do you know of any good text on guidelines, principles of package and component design that I can reference? ...

Tips to develop a software adapting agile developement methodologies

I know Agile development is a different way of managing software development projects and it fundamentally differs from a more traditional waterfall approach to software development Some of the principles of agile software development are: Develop small, incremental releases and iterate The team must be empowered to make decisions s...

Coder collaboration best practices using Git

Hello everyone. I'm having some troubles in understanding Git team-working principles. Consider a team of two programmers: A and B. They are working on a Project. Also, there is a remote server with a repo on it. A and B are collaborating remotely. There are some code in the repo already. I have a favour to ask you for help on organi...

Help identifying the author of this phrase

Hi all. Some time ago I read on the Net something like "you learn a thing only when you really need it" (e.g., learning a new programming language). If memory serves me well that was a sort of "law" or "principle", ironic or not, and I cannot remember its author's name. Any help in identifying the correct phrase and its author? Thanks...

Design Principles, Best Practices and Design Patterns for C (or Procedural Programming in general)?

Are there any known design principles, best-practices and design patterns that one can follow while designing a C project? Or useful design principles for procedural (imperative) programming in general? (I'm child of the 'object-oriented generation' and have to design a large C project for the first time) ...

MVC patterns with WPF + NHibernate + IoC

I'm looking for patterns and principles for using with WPF and NHibernate in model-view-controller style. ...

Basic principles of computer encryption?

I can see how a paper-based cipher can be developed using substitutions and keys, and how those two things can become more and more complex through use of machines, thus offering some protection from decryption through brute-force approaches. But specifically I'm wondering: what other major concepts beyond substitution and key are invo...

SRP & "axis of change"?

I'm reading Bob Martin's principles of OOD, specifically the SRP text, and I understand the spirit of what it's saying pretty well, but I don't quite understand a particular phrasing, from page 2 of the link (page 150 of the book): I paraphrase: It is important to separate these two responsibilities into separate classes because each r...

How to properly create features, tests, stories and break them down.

I am trying to grasp the entire TDD methodology and as such, I don’t really know how to present this as a nice concise question so here is the long drawn out version. I seem to be experiencing a gap between the bowling (Martin), money (Feathers), and other similar game/simple examples and a fully functioning Enterprise app. I am trying ...

Are there any Clojure Principles ?

Are there any Principles for Clojure ? a. Like the S.O.L.I.D. Object-Oriented Design Principles for OO languages like Java ? b. or others more heuristic, like "Tell don't ask", "Favor Composition vs Inheritance", "Talk to Interfaces" ? Are there any design patterns (for flexible code) ? What is the counter part of the basic of funct...

what is mean by dependency inversion principle in oops?

hi...... what is mean by dependency inversion principle in oops? what it does? thanx.... ...

technical aspects of 'isa' in c++

what exactly does it mean from technical point of view, I understood that it means that my derived class can always be converted to base class, that's it? I read some materials without any reference to technical aspects, only philosophy! thanks in advance ...

Abuse of Closures? Violations of various principles? Or ok?

Edit: fixed several syntax and consistency issues to make the code a little more apparent and close to what I actually am doing. I've got some code that looks like this: SomeClass someClass; var finalResult = DoSomething(() => { var result = SomeThingHappensHere(); someClass = result.Data; return result; }) .DoSom...

Multiple Methods to call a WCF Service

Hey I have a class that handles all the interaction in my application with my WCF service and it seems that MSDN say that the use of Using)_ statement with WCF is bad - I can see why this is bad and agree with it (http://msdn.microsoft.com/en-us/library/aa355056.aspx) my problem is that their suggested method of implementation will me...