{"id":16577,"date":"2024-01-30T14:29:26","date_gmt":"2024-01-30T14:29:26","guid":{"rendered":"http:\/\/www.max-sperling.bplaced.net\/?p=16577"},"modified":"2025-04-11T10:23:28","modified_gmt":"2025-04-11T10:23:28","slug":"conceptual-distinction-sw-development","status":"publish","type":"post","link":"http:\/\/www.max-sperling.bplaced.net\/?p=16577","title":{"rendered":"Conceptual distinction &#8211; SW-Development"},"content":{"rendered":"<p><strong>Parameter vs. Argument<\/strong><\/p>\n<p>Both are related to functions.<\/p>\n<ul>\n<li>Parameters are the required input of a function.<\/li>\n<li>Arguments are the provided input to a function.<\/li>\n<\/ul>\n<hr>\n<p><strong>Mutex vs. Semaphore<\/strong><\/p>\n<p>Both are used for resource access control.<\/p>\n<ul>\n<li>A Mutex realizes explicit access to a resource. Only one thread can access it at once.<\/li>\n<li>A Semaphore provides multiple threads access to a resource. The counter can be configured.<\/li>\n<\/ul>\n<p>A Mutex is like a binary semaphore, a semaphore with a counter of 1.<\/p>\n<hr>\n<p><strong>Architecture vs. Design<\/strong><\/p>\n<p>Both are used to define the structure and behavior of software.<\/p>\n<ul>\n<li>Architecture gets used on system level. (Relations between components, High level)<\/li>\n<li>Design gets used on component level. (Relations within a component, Low level)<\/li>\n<\/ul>\n<hr>\n<p><strong>Stub vs. Mock vs. Fake<\/strong><\/p>\n<p>All of them are test doubles.<\/p>\n<ul>\n<li>Stubs are objects with predefined return values.<\/li>\n<li>Mocks are objects with predefined behavior.<\/li>\n<li>Fakes are objects with shortcut implementations.<\/li>\n<\/ul>\n<hr>\n<p><strong>Concurrent vs. Parallel<\/strong><\/p>\n<ul>\n<li>Concurrent: The tasks\/threads have to share the processor core.<\/li>\n<li>Parallel: Each task\/thread runs on its own processor core.<\/li>\n<\/ul>\n<hr>\n<p><strong>POC vs. MVP vs. MMP<\/strong><\/p>\n<p>All of them are different states of the realization of a software component.<\/p>\n<ul>\n<li>POC (Proof Of Concept): Proof that the software component is realizable.<\/li>\n<li>MVP (Minimally Viable Product): The software component is kinda working.<\/li>\n<li>MMP (Minimally Marketable Product): The software component is ready for the market.<\/li>\n<\/ul>\n<p>The order is the following: POC \u2192 MVP \u2192 MMP.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Parameter vs. Argument Both are related to functions. Parameters are the required input of a function. Arguments are the provided<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false},"categories":[79],"tags":[],"_links":{"self":[{"href":"http:\/\/www.max-sperling.bplaced.net\/index.php?rest_route=\/wp\/v2\/posts\/16577"}],"collection":[{"href":"http:\/\/www.max-sperling.bplaced.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.max-sperling.bplaced.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.max-sperling.bplaced.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.max-sperling.bplaced.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=16577"}],"version-history":[{"count":11,"href":"http:\/\/www.max-sperling.bplaced.net\/index.php?rest_route=\/wp\/v2\/posts\/16577\/revisions"}],"predecessor-version":[{"id":18615,"href":"http:\/\/www.max-sperling.bplaced.net\/index.php?rest_route=\/wp\/v2\/posts\/16577\/revisions\/18615"}],"wp:attachment":[{"href":"http:\/\/www.max-sperling.bplaced.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=16577"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.max-sperling.bplaced.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=16577"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.max-sperling.bplaced.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=16577"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}