Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. General Programming
  3. Design and Architecture
  4. Software architecture pattern

Software architecture pattern

Scheduled Pinned Locked Moved Design and Architecture
regexarchitecturequestion
12 Posts 6 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • T Offline
    T Offline
    Tabah Baridule
    wrote on last edited by
    #1

    How do you desired which of the architectural pattern to work with?

    P M L Greg UtasG B 5 Replies Last reply
    0
    • T Tabah Baridule

      How do you desired which of the architectural pattern to work with?

      P Offline
      P Offline
      PIEBALDconsult
      wrote on last edited by
      #2

      I reject the premise of the question.

      T 1 Reply Last reply
      0
      • T Tabah Baridule

        How do you desired which of the architectural pattern to work with?

        M Offline
        M Offline
        Mycroft Holmes
        wrote on last edited by
        #3

        Experience and knowledge and what you have learnt about the business requirements.

        Never underestimate the power of human stupidity - RAH I'm old. I know stuff - JSOP

        T 1 Reply Last reply
        0
        • T Tabah Baridule

          How do you desired which of the architectural pattern to work with?

          L Offline
          L Offline
          Lost User
          wrote on last edited by
          #4

          A pattern is where you're repeating the same block of code; it is now a pattern; your pattern. The fact that no one has used it before, or named it, makes no difference.

          It was only in wine that he laid down no limit for himself, but he did not allow himself to be confused by it. ― Confucian Analects: Rules of Confucius about his food

          T 1 Reply Last reply
          0
          • T Tabah Baridule

            How do you desired which of the architectural pattern to work with?

            Greg UtasG Offline
            Greg UtasG Offline
            Greg Utas
            wrote on last edited by
            #5

            Many patterns, such as those in the GoF book, aren't "architectural". They're more tactical, although they can help to make an architecture better. Jim Coplien, who was well-known in the C++ world, got involved with patterns early on. Later, he said that there was too much focus on patterns. The emphasis needs to be on encapsulation, polymorphism, and inheritance. Patterns are the exception when those things, by themselves, don't produce loosely coupled code. To understand a pattern, you need to have seen what code looked like before the pattern was applied, and after. Then, when you write or find code that looks like the "before" code, you'll know how the pattern can improve it. That's usually how a pattern gets used. How code evolves to satisfy its specifications is what determines which patterns are used; it is wrong to start out by saying which patterns will be used before you have a good sense of the high-level design.

            Robust Services Core | Software Techniques for Lemmings | Articles
            The fox knows many things, but the hedgehog knows one big thing.

            <p><a href="https://github.com/GregUtas/robust-services-core/blob/master/README.md">Robust Services Core</a>
            <em>The fox knows many things, but the hedgehog knows one big thing.</em></p>

            T 1 Reply Last reply
            0
            • P PIEBALDconsult

              I reject the premise of the question.

              T Offline
              T Offline
              Tabah Baridule
              wrote on last edited by
              #6

              Why rejecting what you should be able to deal with?

              1 Reply Last reply
              0
              • L Lost User

                A pattern is where you're repeating the same block of code; it is now a pattern; your pattern. The fact that no one has used it before, or named it, makes no difference.

                It was only in wine that he laid down no limit for himself, but he did not allow himself to be confused by it. ― Confucian Analects: Rules of Confucius about his food

                T Offline
                T Offline
                Tabah Baridule
                wrote on last edited by
                #7

                Thank you

                1 Reply Last reply
                0
                • Greg UtasG Greg Utas

                  Many patterns, such as those in the GoF book, aren't "architectural". They're more tactical, although they can help to make an architecture better. Jim Coplien, who was well-known in the C++ world, got involved with patterns early on. Later, he said that there was too much focus on patterns. The emphasis needs to be on encapsulation, polymorphism, and inheritance. Patterns are the exception when those things, by themselves, don't produce loosely coupled code. To understand a pattern, you need to have seen what code looked like before the pattern was applied, and after. Then, when you write or find code that looks like the "before" code, you'll know how the pattern can improve it. That's usually how a pattern gets used. How code evolves to satisfy its specifications is what determines which patterns are used; it is wrong to start out by saying which patterns will be used before you have a good sense of the high-level design.

                  Robust Services Core | Software Techniques for Lemmings | Articles
                  The fox knows many things, but the hedgehog knows one big thing.

                  T Offline
                  T Offline
                  Tabah Baridule
                  wrote on last edited by
                  #8

                  :thumbsup::thumbsup: Thank you, permit me to share this as a tweet.

                  Greg UtasG 1 Reply Last reply
                  0
                  • M Mycroft Holmes

                    Experience and knowledge and what you have learnt about the business requirements.

                    Never underestimate the power of human stupidity - RAH I'm old. I know stuff - JSOP

                    T Offline
                    T Offline
                    Tabah Baridule
                    wrote on last edited by
                    #9

                    What if this is your startup and idea, and you've yet to write the business requirement? Your experience level is coming from a lot of books and youtube videos you have read and watch.

                    M 1 Reply Last reply
                    0
                    • T Tabah Baridule

                      What if this is your startup and idea, and you've yet to write the business requirement? Your experience level is coming from a lot of books and youtube videos you have read and watch.

                      M Offline
                      M Offline
                      Mycroft Holmes
                      wrote on last edited by
                      #10

                      Tabah Baridule wrote:

                      you've yet to write the business requirement

                      Then why are you thinking about architecture patterns. Get you business plan and requirements sorted and THEN start looking into what platform(s) you will service and the different patterns that will meet your requirements.

                      Never underestimate the power of human stupidity - RAH I'm old. I know stuff - JSOP

                      1 Reply Last reply
                      0
                      • T Tabah Baridule

                        :thumbsup::thumbsup: Thank you, permit me to share this as a tweet.

                        Greg UtasG Offline
                        Greg UtasG Offline
                        Greg Utas
                        wrote on last edited by
                        #11

                        OK.

                        Robust Services Core | Software Techniques for Lemmings | Articles
                        The fox knows many things, but the hedgehog knows one big thing.

                        <p><a href="https://github.com/GregUtas/robust-services-core/blob/master/README.md">Robust Services Core</a>
                        <em>The fox knows many things, but the hedgehog knows one big thing.</em></p>

                        1 Reply Last reply
                        0
                        • T Tabah Baridule

                          How do you desired which of the architectural pattern to work with?

                          B Offline
                          B Offline
                          Bohdan Stupak
                          wrote on last edited by
                          #12

                          The most correct thing previous commenters posted is that you need to handle business requirements first. The other correct thing is that GoF patterns are mostly tactical. Given that in my answer I'll assume is that architectural patterns are monolith, microservices, CQRS etc. With that said I'd start from monolith application since microservices bring a lot of overhead that you might not need until you've pitched a PoC to some investors or might not need it at all if you're not going to have a team of sufficient size or your application won't endure high loads. Then your application will evolve according to your business requirements and also to a fact that your understanding of business will evolve too. Say you'll discover that your business problem contains of multiple subdomains. Then you can handle them via vertical slices. Or you may need to handle spikes in application load. Then you might need to extract some microservices. In general, my advice is to start with the simplest solution unless you're encounter requirements to act otherwise.

                          1 Reply Last reply
                          0
                          Reply
                          • Reply as topic
                          Log in to reply
                          • Oldest to Newest
                          • Newest to Oldest
                          • Most Votes


                          • Login

                          • Don't have an account? Register

                          • Login or register to search.
                          • First post
                            Last post
                          0
                          • Categories
                          • Recent
                          • Tags
                          • Popular
                          • World
                          • Users
                          • Groups