Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6845477
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 27, 20262026-05-27T00:30:19+00:00 2026-05-27T00:30:19+00:00

What are the options usually for re-using the same codebase across different apps (.e.g

  • 0

What are the options usually for re-using the same codebase across different apps (.e.g web application, winforms, etc).

My immediate, high-level thought is to use web services to expose a dedicated dll of the business logic. What other options are there?

Thanks

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-27T00:30:19+00:00Added an answer on May 27, 2026 at 12:30 am

    Normally, you should have a separate layer for your business logic and another for your data access. It’s from the very high level view. Depending on the complexity of your application, your business layer may divided into several components where there may be web services exposed to a Facade interface and other components that might have sole decision making logic may reside in another component. These are just vague ideas.

    From your POV, one of your intention should be reduce duplicate code where there’s several app having same functionality. Even if you have a separate business layer, does that solves the problem? Probably you will be invoking the same business functions from your different apps, but still there will be many codes in the UI layer where you have to manage separately.

    Architecting your software comes here, to provide a framework that will minimize the effort of building for different platform.

    Considering you have the same UI for both of your apps, one thing that comes to my mind for your UI end is have a common Controller and ViewModel which will be accessible from both web and win app, where Controller will talk to business layer facade interface through an agent, and this agent will be exposed to your UI layer, which will be tightly coupled to your Controller and ViewModel.

    This may help you to visualize with this diagram:

    +------------------------------------+
    |                                    |
    |         DATA ACCESS LAYER          |
    +------------------------------------+
    +------------------------------------+
    |          BUSINESS LAYER            |
    | +--------------------------------+ |
    | |          COMPONENT A           | |
    | +--------------------------------+ |
    | +--------------------------------+ |
    | |          COMPONENT B           | |
    | +--------------------------------+ |
    |+----------------------------------+|
    ||        WEB SERVICE FACADE        ||
    |+----------------------------------+|
    +------------------------------------+
    +-----------------++-----------------+
    |    WIN AGENT    ||    WEB AGENT    |
    +-----------------++-----------------+
    +------------------------------------+
    |        PRESENTATION STACK          |
    +------------------------------------+
    |+----------------------------------+|
    ||       GENERIC CONTROLLER         ||
    |+----------------------------------+|
    +------------------------------------+
    +-----------------++-----------------+
    |     WIN APP     ||    WEB APP      |
    +-----------------++-----------------+
    

    Hope this helps.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I'm using Eclipse to develop application for embedded systems. One of the options of
When I pass the options in the program (a computational biology experiment) I usually
When I open a MessageBox with options YesNo, the (usually) cancelling cross in the
What options are available for receiving instant alerts from web applications? I have a
What options exist for accessing different databases from C++? Put differently, what alternatives are
What options are there in the industry for enterprise reporting? I'm currently using SSRS
Informed options needed about the merits of flat file database. I'm considering using a
What options are there in ASP Classic for error handling? For example: I'm using
I have a winforms application that doesn't really have a main form - it's
I am using EXT-js for a project, usually everything is pretty straight forward with

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.