Questions tagged [strategy]

A strategy is a general approach used to achieve goals, to address similar needs, or to solve a family of issues.

A strategy is a general approach used to:

  • achieve specific high level project management or technical management goals, or to
  • address similar needs or constraints in the area of architecture, design or implementation, or to
  • solve a family of issues sharing some common characteristics.

A strategy can also mean a design pattern, which defines a family of algorithms, and encapsulates them so to make them interchangeable.

81 questions
24
votes
14 answers

How managers choose programming languages

It's not a secret to anyone that managers can and often will impose the programming language that will be used for a project. Being a programmer myself, I have never been able to understand this. But now I think I do: I've just had a revelation when…
user51568
22
votes
5 answers

What is your application versioning strategy?

I would be interested to get the SO community's opinions on the best application versioning strategy. My questions: How do you keep track of your application's version number? Do you have a formal definition of what each number/character in that…
Alex
  • 587
  • 1
  • 5
  • 12
20
votes
8 answers

Strategy/algorithm to divide fair teams based on history

We are a group of people playing floorball together on a regular basis. Every session starts with the daunting task of dividing teams... So what would be better than an application to pick teams automatically? So, given a history of…
Vegar
  • 397
  • 2
  • 8
18
votes
6 answers

Advantages of Strategy Pattern

Why is it beneficial to use the strategy pattern if you can just write your code in if/then cases? For example: I have a TaxPayer class, and one of its methods calculates the taxes using different algorithms. So why can't it have if/then cases and…
17
votes
5 answers

How to comprehend abstraction in code?

When looking at a new codebase I like to start from a bottom-up approach. Where I comprehend one file and then move up to the next abstraction. But often times I find myself forgetting what the lower-level abstraction is doing. So I'll be at this…
16
votes
2 answers

What do I use as an alternative to Domain-Driven Design, if I cannot define a Competitive-Advantage area of my system to apply it?

From all I read and watch, Domain-Driven Design (DDD), is a costly and time-consuming endeavor. In fact, everyone I have seen, including Eric Evans and Greg Young, say, don't use DDD except where you have a "Competitive Advantage." To find that…
johnny
  • 3,669
  • 3
  • 21
  • 35
15
votes
2 answers

Zero Downtime Deployment - Transitional Db Schema

Achieving Zero Downtime Deployment touched on the same issue but I need some advice on a strategy that I am considering. Context A web-based application with Apache/PHP for server-side processing and MySQL DB/filesystem for persistence. We are…
user174739
14
votes
7 answers

Can the Strategy pattern be implemented without significant branching?

The Strategy pattern works well to avoid huge if...else constructs and make it easier to add or replace functionality. However, it still leaves one flaw in my opinion. It seems like in every implementation there still needs to be a branching…
Michael K
  • 15,539
  • 9
  • 61
  • 93
12
votes
6 answers

How productive is an excellent developer compared to an average one?

I believe that I read somewhere that Google has a rule of thumb that an excellent developer is around 300 times more productive than an average one. Does anyone have any rules of thumb used by large companies or maybe there are even some empirical…
David
  • 4,449
  • 6
  • 35
  • 48
12
votes
5 answers

Modified Strategy Design Pattern

I've started looking into Design Patterns recently, and one thing I'm coding would suit the Strategy pattern perfectly, except for one small difference. Essentially, some (but not all) of my algorithms, need an extra parameter or two passed to…
Megan Walker
  • 2,016
  • 2
  • 14
  • 11
12
votes
2 answers

Is context inheritance, as shown by Head First Design Patterns' Duck example, irrelevant to strategy pattern?

In Head First Design Patterns it teaches the strategy pattern by using a Duck example where different subclasses of Duck can be assigned a particular behavior at runtime. From my understanding the purpose of the strategy pattern is to change a…
Korey Hinton
  • 2,656
  • 3
  • 20
  • 30
12
votes
2 answers

Context class in Strategy pattern

I'm trying to understand the strategy pattern and asking myself: is the context class must-have or can I leave it out without compromising pattern's purpose ? I was under the impression I needed some kind of switch for reading different types of…
panny
  • 317
  • 1
  • 2
  • 8
11
votes
4 answers

Rich domain model vs strategy pattern in DDD

I've recently watched a few Pluralshigh courses on DDD by Vladimir Khorikov. He was encouraging to create a rich instead of anemic domain models. It all looked very nice in a small test-project, however I still have no idea how to put extensive…
7
votes
2 answers

The "real and effective" GIT CI/CD strategy

I've started in this new company a few weeks ago, this is the CTO CI strategy: Current: Developer team has the repo prod/master and they merge everything into master (no branching strategy). Once the code is ready in prod/master they'll ask…
Miguel Ortiz
  • 187
  • 2
6
votes
2 answers

Trial/Free & Full Version VS. Free App + In-app billing?

I'm just wondering what would be the best strategy to publish an application on the Android Market. If you have a free and paid version you have two codes to update (I know it will be 99% the same but still) and besides all the popular paid apps are…
SERPRO
  • 163
  • 1
  • 7
1
2 3 4 5 6