• SimilarContent
  • Netpeak Software
  • Article Forge
  • Jasper AI Copywriter
  • Dreamstime.com
  • Renderforest
  • Office Timeline
  • Smashinglogo
  • GetResponse
  • Klenty – Sales Engagement Tool
  • Benchmark Email
  • PromoRepublic
  • Constant Contact
  • FindThatLead
  • EmailOctopus
  • SmarterQueue
  • Iconosquare
  • Social Champ
  • SocialOomph
  • Social Searcher
  • BrandMentions
  • ProWorkflow
  • Alerter System
  • Bettermode Review
  • AutoFxPro.com
  • Blubrry Podcasting
  • ContentStudio
  • Influencer Marketing
  • Growth Strategies
  • Entrepreneurs
  • Inspiration
  • Media Mister
  • Getty Images
  • Hire Writers
  • AMZ Watcher
  • Sitechecker Pro
  • Gravity Forms
  • Supermetrics

What is Presentation Logic? Complete Guide

Logic is the foundation of all web applications . It is the backbone of all business applications, from websites to mobile apps . In addition to being a crucial component of a web application, presentation logic is also crucial for the development of interactive experiences. Essentially, presentation logic is a way to present information to users in the most efficient manner possible. Using the proper presentation logic, an application can improve its user experience and improve sales results.

A good example of presentation logic is found in game programming. Games use computer software that takes input from a game controller and forces characters on the screen to perform tasks. Modern computer applications are designed to react to human movement through special cameras or infrared devices. This allows them to build a virtual environment that makes the user feel as though they are actually inside the gaming system. In fact, a game program’s presentation logic may be the most complex part of its code.

While business logic consists of the rules of a company, presentation logic refers to how the details of an application are displayed. Both are important but must be considered separately. A business application can’t operate without either. It must adhere to both of these standards to keep users happy. In addition, it should also be easy to use. There are many types of presentation logic. Some are easier to use than others, but they are both important in any application.

Presentation logic is a concept in software development . It describes how the business objects are displayed to the user. This can include displaying information through pop-up screens or drop-down menus. A presentation layer can be built using prototyping tools, and then tested in a user acceptance testing environment. When it’s complete, it will be able to validate the data and business rules of the application. Then it can be used for user acceptance testing.

The two most common types of presentation logic are business logic and presentation logic. The latter is the most general type of presentation logic. It outlines the steps necessary to complete an action. Similarly, presentation logically explains how the business objects are presented to the user. When it is properly implemented, it will ensure that users retain the information. It will also ensure that the audience is able to understand the content of the application.

In simple terms , presentation logic is the processing required to create a print-out. It is also called business logic. It is an important part of an application, as it can define the business rules and actions that should be performed. It is also known as user interface. This layer is the foundation of the entire system. It’s where the business rules are implemented. Usually, presentation logic is implemented in the client side of a web-based application .

Presentation logic is the core of the application. The business logic layer provides a foundation for the user to interact with the application. It also contains all the business rules for the server. By contrast, presentation logic is the underlying code that determines how the data is presented. In contrast to business rules, presentation logic is the “rules” part. Instead of business rules, the logic layer implements the data stored on the server.

In Java, presentation logic is the logical presentation of ideas in a database. While business logic is the underlying code of an application, presentation logic is the logic for the data. And presentation logic is the core of an application. JSTL is a logical way to express business rules. This means that the data in an object is organized in the right way and a specific format must be used for it to be effective .

The presentation logic in an application is the logical layer for ideas. It is different from business logic. For instance, the presentation layer presents the objects that a user sees. The business logic is the logical way to apply the business rules. In this case, the presentation logic focuses on the data. It has a UI, and it must not be confusing. And application logic is the core of the system.

Presentation Layer

The presentation layer is a component of the software architecture that handles the user interface (UI) of an application. It is the layer that the end-users interact with, and its primary function is to present information to the user in a way that is understandable and easy to use.

The Presentation Layer is responsible for handling the presentation logic, which defines how the information will be presented to the user. It also handles user input validation and formatting of output data. The layer communicates with the application layer and the data layer to obtain the necessary information and to perform necessary actions.

The Presentation Layer consists of several components, including the user interface components, such as buttons, text boxes, and menus. It also includes the visual design components, such as themes and templates, that define the look and feel of the application. Additionally, it may include the animation and multimedia components, such as images, videos, and audio files.

The Presentation Layer has an essential role in software architecture. It is the layer that creates the first impression of the application for the users, and it affects the usability and user experience of the software. A well-designed presentation layer can make a significant difference in the success of the application.

The Presentation Layer is often implemented using web technologies, such as HTML, CSS , and JavaScript, for web-based applications, or platform-specific technologies, such as JavaFX or WPF, for desktop applications. The choice of technology depends on the requirements of the application and the target platform.

In conclusion, the Presentation Layer is a crucial component of software architecture that handles the user interface of an application. It is responsible for presenting information to the user, validating user input, and formatting output data. The presentation layer components include user interface components, visual design components, and animation and multimedia components. The Presentation Layer is implemented using web or platform-specific technologies, depending on the requirements of the application.

Presentation Logic

Presentation Logic is the part of software logic responsible for determining how the user interface components of an application should behave and interact with each other. It defines how the user interface will be presented to the user and how it will respond to user input.

Presentation Logic is closely related to the Presentation Layer, as it is responsible for implementing the behavior of the user interface components in that layer. It encapsulates the behavior of each component and determines how it should respond to user interactions, such as mouse clicks, keyboard input, or touch events.

The Presentation Logic is responsible for the following tasks:

  • Validating user input: it ensures that the user input is in the correct format and within the expected range of values.
  • Formatting output data: it formats the data to be displayed to the user in a way that is easy to read and understand.
  • Managing user interface state: it maintains the state of the user interface components, such as their visibility, enabled/disabled status, and data values.
  • Implementing user interface flow: it defines the navigation between different screens or pages of the application and manages the flow of the user interface.

Examples of Presentation Logic include:

  • Enabling and disabling buttons based on user input: For example, disabling a “submit” button until all required fields in a form have been completed.
  • Formatting data for display: For example, formatting a date to display as “DD/MM/YYYY” or “MM/DD/YYYY” based on user preferences.
  • Implementing conditional logic: For example, showing or hiding specific user interface components based on user input or application state.
  • Managing user authentication: For example, requiring users to log in before accessing certain features of the application.

The Presentation Logic should be designed to be reusable, maintainable, and testable. It should be separated from the business logic and data access logic to ensure that each layer can be developed independently.

Features of Presentation Logic

Presentation Logic has several features that are essential to ensure its effectiveness in software development. These features include separation of concerns, reusability, testability, and maintainability.

Separation of Concerns

Presentation Logic should be separated from other layers of the application to allow for clear division of responsibilities. Separation of concerns helps to reduce complexity, increase modularity, and promote code reuse. By separating Presentation Logic from business logic and data access logic, it becomes easier to maintain and test each layer independently.

Reusability

Presentation Logic should be designed to be reusable across different parts of the application. It allows for code reduction, faster development, and a consistent user experience. Reusable Presentation Logic components, such as form validation or navigation, can be shared across different screens or pages of the application, resulting in code optimization and reducing the time and effort required for development.

Testability

Presentation Logic should be designed to be easily testable to ensure its reliability and quality. Testability allows for quick and efficient debugging and helps to identify issues early in the development process. The Presentation Logic should be separated from the user interface components, allowing for the use of automated testing tools and frameworks to test its functionality.

Maintainability

Presentation Logic should be designed to be easy to maintain, update, and modify. It should be well-structured, with clear and concise code that is easy to understand. The Presentation Logic should follow coding best practices, such as code commenting, documentation, and consistent coding style. Good coding practices can help prevent errors, reduce bugs, and make it easier for other developers to work on the codebase.

In conclusion, Presentation Logic is a critical component of software development that determines how the user interface components of an application behave and interact with each other. The features of Presentation Logic include separation of concerns, reusability, testability, and maintainability. Separation of concerns allows for clear division of responsibilities, reusability enables code reduction and consistency, testability ensures reliability and quality, and maintainability promotes easy updates, modifications, and debugging. Developers should aim to implement these features in their Presentation Logic to create efficient and reliable software applications.

Benefits of Presentation Logic

Presentation Logic plays a crucial role in software development and provides several benefits to developers and end-users. These benefits include increased user experience, improved performance, reduced development time, and easier maintenance.

Increased User Experience

Presentation Logic determines how the user interface components are presented to the user, how they interact with each other, and how they respond to user input. By designing a clean and intuitive user interface with well-defined Presentation Logic, developers can improve the user experience of their application. Users are more likely to enjoy using an application that is easy to navigate, provides clear and concise feedback, and responds to their input quickly.

Improved Performance

Presentation Logic can significantly impact the performance of an application. By separating the user interface components from the business logic and data access logic, developers can optimize the performance of each layer independently. Well-designed Presentation Logic ensures that the user interface components are only updated when necessary, reducing the load on the application and improving overall performance.

Reduced Development Time

Presentation Logic can significantly reduce the development time required for an application. By using reusable components, developers can quickly develop and integrate new features into their applications. By separating Presentation Logic from business logic and data access logic, developers can work on each layer independently, allowing for parallel development and faster iteration.

Easier Maintenance

Presentation Logic can make it easier to maintain and update an application. By separating the user interface components from the business logic and data access logic, developers can easily modify or update the Presentation Logic without affecting other parts of the application. Well-structured Presentation Logic also promotes easy debugging, testing, and maintenance.

In conclusion, Presentation Logic provides several benefits to developers and end-users, including increased user experience, improved performance, reduced development time, and easier maintenance. Developers should aim to design well-structured Presentation Logic that is reusable, maintainable, and testable to create efficient and reliable software applications. By leveraging the benefits of Presentation Logic, developers can create user-friendly applications that are easy to maintain, update, and improve over time.

Best Practices for Implementing Presentation Logic

To implement Presentation Logic effectively, developers should follow certain best practices to ensure that the code is efficient, maintainable, and scalable. The following are some of the best practices for implementing Presentation Logic.

Follow the Separation of Concerns Principle

One of the most important best practices for implementing Presentation Logic is to follow the Separation of Concerns principle. This principle involves separating different concerns of an application into distinct modules or layers. By separating Presentation Logic from business logic and data access logic, developers can reduce the complexity of the codebase and make it easier to maintain and modify.

Use a Design Pattern

Using a design pattern such as Model-View-Controller (MVC) or Model-View-ViewModel (MVVM) can make it easier to implement Presentation Logic. These patterns help to separate the user interface, data, and business logic of an application into different modules, allowing for easier maintenance and testing.

Use Data Binding

Data binding is a technique that allows developers to bind data properties directly to user interface elements. This technique makes it easier to update the user interface elements when the underlying data changes. Using data binding can significantly reduce the amount of code required to implement Presentation Logic.

Use Reusable Components

Developers should aim to create reusable components for Presentation Logic wherever possible. This approach allows developers to use the same components across multiple screens or pages, reducing the amount of code required and promoting consistency in the user interface. Reusable components also make it easier to modify or update the Presentation Logic in the future.

Follow Coding Best Practices

Developers should follow coding best practices such as using consistent naming conventions, documenting the code, and avoiding duplicate code. These practices can help to improve the readability and maintainability of the codebase and reduce the likelihood of errors and bugs.

Use Automated Testing

Automated testing is an essential practice for implementing Presentation Logic effectively. Developers should write automated tests for their Presentation Logic to ensure that it is functioning as expected and to catch bugs and errors early in the development process. Automated testing can also help to reduce the amount of time and effort required for manual testing.

Frequently asked questions

What is presentation logic vs application logic.

Presentation logic and application logic are both important components of a software system, but they serve different purposes.

Presentation logic refers to the code that controls the user interface of an application. This includes the layout, formatting, and behavior of the various elements that the user interacts with, such as buttons, text boxes, and menus. The presentation logic is responsible for ensuring that the application’s user interface is visually appealing, intuitive, and easy to use.

Application logic, on the other hand, refers to the code that controls the underlying functionality of the application. This includes the algorithms and business logic that handle data processing, calculations, and other tasks that are essential to the application’s core functionality. The application logic is responsible for ensuring that the application functions correctly and efficiently.

To summarize, presentation logic is concerned with how the application looks and behaves, while application logic is concerned with what the application does. Both are important components of a software system, and they work together to create a seamless user experience.

What is the presentation logic components?

The presentation logic components typically include the following:

  • User interface design: This component includes the layout and appearance of the user interface elements, such as buttons, menus, forms, and screens. The user interface design should be visually appealing and easy to use.
  • Input validation: This component includes the code that checks the user input to ensure that it is valid and meets the required format and content. Input validation is important for data integrity and security.
  • Event handling: This component includes the code that responds to user actions, such as clicking a button or entering data into a form. Event handling is essential for enabling user interactions and for triggering the application logic.
  • Navigation: This component includes the code that controls how users navigate through the application. Navigation should be intuitive and consistent throughout the application.
  • Error handling: This component includes the code that detects and handles errors that occur during user interactions. Error handling should provide helpful feedback to the user and prevent the application from crashing.
  • User preferences and settings: This component includes the code that allows users to customize the application to their preferences, such as changing the language, font size, or color scheme.

These presentation logic components work together to create a user-friendly and visually appealing interface that enables users to interact with the application in a seamless and intuitive manner.

What is the importance of presentation logic?

The presentation logic of an application is important for several reasons:

  • User experience: The presentation logic is responsible for creating a user-friendly and visually appealing interface that enables users to interact with the application in an intuitive and seamless manner. A well-designed user interface can enhance the user experience and increase user satisfaction.
  • Usability: The presentation logic is responsible for ensuring that the user interface is easy to use and navigate. A well-designed user interface can improve the usability of an application, making it easier for users to achieve their goals.
  • Branding and identity: The presentation logic can also contribute to the branding and identity of an application. A visually appealing and consistent user interface can help to establish the brand identity and differentiate the application from competitors.
  • Accessibility: The presentation logic is responsible for ensuring that the user interface is accessible to all users, including those with disabilities. A well-designed user interface can enhance accessibility and ensure that all users can use the application effectively.
  • Flexibility: The presentation logic can provide flexibility and customization options for users, such as allowing them to adjust the font size, color scheme, or language. This can improve user satisfaction and engagement.
  • Overall, the presentation logic is important for creating a positive user experience, enhancing usability, establishing brand identity, improving accessibility, and providing flexibility and customization options for users.

Presentation Logic is an essential component of modern software development. It refers to the logic that determines how the user interface components of an application are presented to the user, how they interact with each other, and how they respond to user input. By designing a clean and intuitive user interface with well-defined Presentation Logic, developers can improve the user experience of their application.

In this article, we have explored the concept of Presentation Logic in detail, discussing its definition, components, and features. We have also outlined the benefits of implementing Presentation Logic, such as increased user experience, improved performance, reduced development time, and easier maintenance. Finally, we have provided some best practices for implementing Presentation Logic effectively, such as following the Separation of Concerns principle, using a design pattern, using data binding, creating reusable components, following coding best practices, and using automated testing.

In conclusion, Presentation Logic is a critical aspect of software development that can significantly impact the user experience, performance, and maintainability of an application. By implementing Presentation Logic effectively and following best practices, developers can create efficient, scalable, and user-friendly applications that meet the needs of their users.

Leave a Reply Cancel reply

You must be logged in to post a comment.

Related Posts

Exploring the design and applications of conductive inks in printed electronics

Exploring the design and applications of conductive inks in printed electronics

Expanding Horizons: The Strategic Advantage of a German Virtual Number

Expanding Horizons: The Strategic Advantage of a German Virtual Number

Navigating Cloud: A Comprehensive Guide to Successful Azure Migration

Navigating Cloud: A Comprehensive Guide to Successful Azure Migration

Tips and Tricks for Designing the Perfect Custom Powerpoint Theme

Tips and Tricks for Designing the Perfect Custom Powerpoint Theme

Tech Trends 2024: The Coolest Gifts for the Savvy Gadget Geek

Tech Trends 2024: The Coolest Gifts for the Savvy Gadget Geek

Stateful Vs. Stateless VPNs in the Face of Threats

Stateful Vs. Stateless VPNs in the Face of Threats

Organizing Presentation Logic

There are several ways to split up the logic of the presentation.

11 July 2006

The Album List Running Example

Separting presentation logic from the view, layers of data, synchronizing between layers, synchronization and multiple screens, observer gotchas.

This is part of the Further Enterprise Application Architecture development writing that I was doing in the mid 2000’s. Sadly too many other things have claimed my attention since, so I haven’t had time to work on them further, nor do I see much time in the foreseeable future. As such this material is very much in draft form and I won’t be doing any corrections or updates until I’m able to find time to work on it again.

One of the most useful things you can do when designing any presentation layer is to enforce Separated Presentation . Once you've done this, the next step is to think about how the presentation logic itself is going to be organized. For a simple window, a single class may well suffice. But more complex logic leads to a wider range of breakdowns.

The most common approach is to design one class for each window in the application. This class usually inherits from the GUI library's window class and includes all the code needed to handle that window. If a window contains a complex panel, you may have a separate class for that panel - leading to a composite structure. I'm not going to go into this kind of composite structuring, since that's pretty straightforward, instead I'll focus more on ways of organizing the basic behavior within a single window.

For much of the discussion and examples here, I'm going to use a single example screen to discuss the issues that come up ( Figure 1 ). The window shows information about music recordings. For each album it displays the artist, title, whether it's a classical recording, and if it is classical: the composer. I chose the example to include some elements of presentation logic.

  • The choice in the list selection determines which album's data is shown in the fields.
  • The window title is derived from the title of the currently displayed album.
  • The composer field is only enabled when the classical check box is checked.
  • The apply and cancel buttons are only enabled when data has been edited.

Figure 1: A simple album information window

Although putting all the presentation logic in an Autonomous View is both common and workable, it does come with disadvantages. The most common disadvantage talked about these days with Autonomous View is to do with testing. Testing a presentation through a GUI window is often awkward, and in some cases impossible. You have to build some kind of UI driver that will drive the GUI. Some people use GUI tools that simulate raw mouse and keyboard events - but these tools usually create brittle tests that give false positives whenever minor changes occur to the presentation. More detailed tools address the UI controls more directly, these are less brittle but still troublesome. They also depend of the GUI framework having enough support for direct control access via an API - and not all do.

As a result many advocates of programmer based testing advocate a humble dialog (also known as an ultra-thin GUI ). The core idea here is to make the class that contains the UI controls as small and stupid as possible by moving all the logic into other presentation layer classes. This GUI control class is usually referred to as the view , for reasons I'll get into shortly. You can then run your tests against the intelligent classes without needing to use any GUI controls, stubbing the humble view if necessary. Since the view is very stupid, there's little that can go wrong and you can find most bugs by working on the intelligent classes. A term I like to use for this style of testing is subcutaneous testing, since the tests operate just under the skin of the application.

Although subcutaneous testing is the primary reason these days for splitting a presentation class, there are a couple of other reasons why such split is worth considering. The intelligent classes can be made independent of several aspects of the view, such as the choice of controls, the layout of the controls, and potentially even the precise UI framework itself. This allows you to support multiple different views with the same logical behavior. Although this can be useful, supporting multiple 'skins' for a application, you can only do a limited set of variations by just replacing a humble view.

In some ways separating the presentation logic can make it easier to program the presentation. It allows you to ignore details of the view layout while you are writing your behavior, effectively giving you a more comfortable api to the view's controls. Stacked against this, however, is the fact that separating the presentation logic does result in extra machinery to support the separation (the nature of which varies depending on which pattern you use.) As a result there's a rational argument in both directions, saying separation either simplifies or adds complexity to a presentation.

There is a historical precedent for doing this split - it was part of the Model View Controller (MVC). As I discussed in [P of EAA] , the MVC approach did two separations. The most important separation was Separated Presentation - separating the model from the view/controller. The other separation, that of the view and controller, was not popular in rich client GUI frameworks, although it did have a resurgance with web based user interfaces. In MVC the view was a simple display of information in the model and the controller handled the various user input events. This doesn't work well with most GUI frameworks because they are designed so that the UI controls both display and receive the user input events.

To create a humble view, the design must move all behavior out of the view - both handling of user events and any display logic of domain information. There are two main ways of doing this. First is the the Model-View-Presenter style where behavior is moved into a presenter, which you can think of as a form of controller. The presenter handles user events and also has some role in updating the view. Supervising Controller and Passive View are two styles of this approach. Supervising Controller puts simple view logic in the view, while Passive View puts all view logic in the controller. The alternative style is Presentation Model which creates a form of model that captures all the data and behavior so that the view only needs a simple synchronization.

In both styles the view is the initial handler of user events but then immediately hands off control to the controller.

All three of these patterns, by introducing an extra class, produce a arguably more complex design. Splitting a class that does too much into separate classes to fulfil each responsibility is a good practice - but the question is whether an Autonomous View is too complex. Certainly the other patterns provide other testing options and the ability to support multiple views. If you don't need the multiple views and are happy with testing through the view then Autonomous View may well be fine, particularly if the window isn't too complex.

The choice between Presentation Model , Supervising Controller and Passive View is more arbitrary - it really comes down to how easy it is to do the pattern in your GUI environment and on your own personal tastes.

Whenever we use terms from MVC there's inevitably the question of what is the model. In classic Smalltalk MVC the model was a Domain Model . In general the model in an MVC discussion these days means the interface to the domain layer; which could be a classic domain model, or a Service Layer, Transaction Scripts, Table Modules or any other representation of the domain. Indeed if there is no separate domain layer the model could well be the interface to a database.

Screens, Layers, and Data

Most enterprise applications involve editing data. This data is usually copied between several layers of the application, and probably between multiple users using the same system. Much of the behavior of an enterprise application depends on how the changes of this data are coordinated and how the data is synchronized between the layers. There's no generally accepted terminology for how to think about this, for the purpose of this book I'm going to impose the following.

The first issue to think about is the different copies of the data in different layers. Thinking about this in physical terms there's the usually difference between data in memory and data in a database or files. You can think of this as the difference between transient and persistant data. However I find it's usually a bit more than this. Even data in memory is often in two places. Often you'll find a difference between data on a screen and data in some form of in memory store that backs a screen. This could be in a Record Set retrieved from a database (but not yet committed back to the database), or in a Domain Model.

Consider working on a document in in a word processor. The document is on disk and you've opened the document in the word processor and edited the text of the document. This yields different text in memory than from on disk. Now open a dialog box to change the formatting for some of the text. Often you can change the formatting in the dialog box but it doesn't change the underlying text until you hit an apply button. The formatting data in the dialog box is in-memory data, but it's different data to that in the main in-memory document.

The terminology I shall use in this book is screen state, session state, and record state. Screen State is data displayed on a user interface. Session State is data that the user is currently working on. Session state is seen by the user as somewhat temporary, they usually have the ability to save or discard their work. Record State refers to more permanent data, data that's expected to sit around between the sessions.

Session state is primarily acted on in-memory, but is often stored to disk. Modern word processors often save rescue files to avoid losing work due to power loss or a system crash. An enterprise application can save session state in a checkpoint file locally or the server may save state to disk between requests.

In an enterprise application a particular distinction between session and record state is that record state is shared between the multiple users of a system, while the session state is private state visible only to user working on it. So not just is the user deciding to save changes to a more permanent form, they are also deciding to share it with their co-workers. Session state often correlates with a single business transaction, although it often spans multiple system transactions, a situation that often requires offline concurrency .

Not all applications have session state. Some just have screen state and record state - any change to the data when saved goes directly to the record state. In these cases you may not have any session state at all, or any changes are written immediatly to record state so the session state is always in lock step with the record state. Not having session state greatly simplifies and application as you then don't have to worry about managing the session state. It's even preferred by users in many applications since the user never needs to worry about losing work. However leaving out session state isn't all strawberries. The user looses the ability to play around with a scenario in working state and then discarding it if they don't like it. It also stops people working independently on a multi-user application.

You can get extra layers of state too. An example of this is when session state is stored on both a client tier and a server tier. These states can change independently, although there are usually fairly restricive rules about how they syncrhonize which makes managing them much simpler.

An example of extra layers would be how a developer works on a team. In this case the record state is the state of the shared source code repository. The working copy on the developer's local machine is a form of session state, sitting on the disk. In this case it's somewhat transient itself. There are then other representations in the IDE. In a modern IDE that holds and constantly updates an syntax tree in memory you have that, plus the text shown on the screen. In this case there more than three layers, but it's still useful to think about what the developer sees on the screen, his private session data, and the shared permenant data. To reason about effectively I would name each set of data and talk about them as separate layers. Particular applications will always have their own set, for my discussion I'll focus on the common triad of screen, session, and record state.

Most of the time a user works in a single session at one time. On occasion a user will operate in multiple sessions at once. This often causes confusion because changes in one session won't show up in another session until both are synchronized with record state. You can get around this by synchronizing the two sessions, but it's usually messy.

These multiple states often correspond to the various layers of an enterprise application. In an ideal application that uses presentation, domain, and data source layers you'll have domain logic only operating on session state. In practice this distinction gets muddied, usually for bad reasons but sometimes for a good reason. In an application where the domain layer is on a separate process to the presentation you may want some domain logic running in the presentation process to make the application properly responsive. Such logic may involing copying some session state from the main domain process, or you may have to run domain logic against the data in the presentation's controls. Similarly if you need to operate on large amounts of data you may need to embed domain logic into a database through something like stored procedures. Such logic operates on record state. However most of the time you want domain logic to operate on session state.

Synchronizing data between these different contexts is an important part of building an application. When you're working on a user interface you can synchronize the screen state to two different depths: the session state or the record state. If you synchronize to session state you'll need some control that allows the user to save the session state to the record state.

Synchronization can occur at various frequencies, I find the following three useful. Key Synchronization means you synchronize on each key press or mouse click. Field synchonization means you synchonize when you finish editing a field. Screen synchronization means you synchronize when you some special buttons in the UI (usually labelled 'apply', 'OK', 'cancel', or 'submit') when you are done with a screenful of information.

Once you need to synchronize, the next question is how much do you synchronize. When you're looking at synchronizing screen data with session data then I see two main schemes. Coarse-grained synchronization implies that whenever you change anything on the UI, the entire UI is synchronized; so changing the artist field means synchronizing the entire window even though nothing else needs to change. Fine-grained synchronization means only changing the fields that really need updating. So changing the title field would involve synchronizing the title field, window title, and list box - but nothing else.

Synchronizing between the session data and record data usually uses a different approach. Session data isn't usually used by multiple people simultaneously, so you don't have to worry about concurrency issues. Syncrhonizing between session and record data usually occurs with screen synchronization and usually takes longer. As a result you do such things as mark data elements as dirty or use a Unit of Work .

All of these aspects trade off with each other in both the internal design and the interaction design of the UI. The most obvious trade-offs occur between the frequency and depth of synchronization. Using key synchronization down to record state would lead to unnacceptable performance, amongst other ills. As a result most of the time I see screen synchronization used at that depth. Indeed screen synchronization is also the most common at session depth too. It's usually the easiest to do and many applications work that way so users are used to it. However it's also quite common that the interaction design really needs field synchronization. Field synchronization is pretty easy if the domain logic is in the same process as the presentation, it's rather more awkward to get good performance if it's in a different process. So for the domain layer, screen synchronization is a reasonable default, but expect to do field synchronization fairly often.

Key synchronization seems to be rarer, but is pretty easy to do if the domain is in the same process.

While timing choices vary with depth and application design, I'm almost always in favor of coarse-grained synchronization between screen and session states. Many people shy away from coarse-grained synchronization because they're concerned with the performance implications. But fine-grained synchronization is a bear to maintain since there's lots of code with frequent duplication. Bugs in all this are hard to spot and thus fix. Most of the time coarse-grained synchronization is quite performant enough, so my advice is to always use it first. If you do run into performance issues, and you've profiled to check that it really is the synchronization, then you must introduce a little fine-grained synchronization to fix it. At that point do the minimum you need to do to deal with the performance issue.

This need for synchronization is such a common one, that it's inevitable that people develop frameworks to try to handle it. One that gets a lot of attention is the data binding framework in .NET, which autmatically synchronizes screen and session state. Data binding has many nice qualities and in theory should be able handle synchronization well. So far (up to version 1.0) I've found that it works well for simple cases but breaks down in moderately complex ones. Projects I've talked who started with data binding ended up dropping after a while because there weren't enough ways to control how the binding was working. As a result I would advise treating it warily unless your needs are very simple. However do re-evaluate it in later versions - I could easily see this turning into a very effective solution to synchronization issues.

One part of synchronization is about synchronizing between the layers of state, another part is dealing with synchronizing between multiple strands of the same layer. You'll often find mutliple sessions on top of a single record state, and multiple screens on top of each session. Each of these is a separate context, and you have to think about how changes in one context are propagated into other contexts.

Since I'm talking about presentations here, I'm not going to say much about synchronizing multiple sessions. In any case that's a better understood and relatively straightforward topic. Most of the time sessions are isolated from each other and only syncrhonize with record state. They use transactions or some form of offline concurrency control to do that.

Presentations are more complex because users expect less isolation and more rapid synchronization.

How best to synchronize multiple screens depends very much on the way screens are organized and on how the flow between screens is structured. To look at it from two extremes, we can think about contrasting wizards with a completely non-modal interface such as a file system explorer.

With a wizard user-interface, the system guides the user through a very controlled flow of screens. At any time only one screen is visible and usually the user can only go backwards or forwards from each screen. In this situation the designer of the screen knows exactly what data is displayed and exactly when screens are opened and closed.

With a file system explorer the user can move around between screens at will. More importantly the user can open up multiple explorer windows showing the same files. If a user changes the name of a folder in one window, other windows should be updated too. The programmer of the UI is never really sure when windows will be opened and whether the same data is displayed in multiple windows or not.

These two extremes suggest two different ways of coordinating information between screens. With Flow Synchronization each screen decides when to synchronize its screen state with any underlying session state, based on the flow of the application. So with a wizard, the screens would typically syncrhonize when moving from one screen to another; writing out the old screen and reading in data for the new one. Flow Synchronization works best when the flow between screens is simple and there are clear points at which you can save and load data from screen state into session state.

For a file explorer Flow Synchronization would be difficult. One screen can never really tell whether another screen has changed the underlying data. In this case the screens need to be unaware of each other, and synchronize whenever the underlying data changes. With Observer Synchronization the underlying screen state acts as the master source of the data. Whenever it changes, the screens that display are notified and can update their screen state, usually using the Observer pattern. In this form Observer Synchronization is a fundamental part of the Model View Controller style.

The nice thing about Observer Synchronization is that all the screens are always completely independent of each other, both in that they don't need to know about each other to synchronize and that they don't need to tell each other about synchronization events. This makes it easy to have very ad-hoc and complex flows in the application. The downside of Observer Synchronization is that it relies on using Observer and that introduces some implicit behavior that can get very tricky if you let it go out of control.

On the whole, however, Observer Synchronization is the dominant choice for complex UIs. Flow Synchronization is really only usuable if the application flow is very simple: usually one active screen at a time and simple flows between screens. Even then, once you are used to Observer Synchronization you may prefer to use it even for these simple cases.

Many interactions in a rich client presentation make use of the Observer pattern. Observer is a useful pattern, but it comes with some important issues that you need to be aware of.

The great strength, and weakness, of observer is that control passes from the subject to the observer implicitly. You can't tell by reading code that an observer is going to fire, the only way you can see what's happening is to use a debugger. As a result of a complex chain of observers can be a nightmare to figure out, change, or debug as actions trigger other actions with little indication why. As a result I strongly recommend that you use observers only in a very simple manner.

  • Don't have chains of objects observing other objects, observing other objects. One layer of observer relationships is best (unless you use an Event Aggregator
  • Don't have observer relationships between objects in the same layer. Domain objects shouldn't observe other domain objects, presentations should not observer other presentations. Observers are best use across the layer boundary, the classic use is for presnetations to observer the domain.

Another issue for observers lies in memory management. Assume we have some screens observing some domain objects. Once we close a screen we want it to be deleted, but the domain objects actually carry a reference to the screen though the observer relationship. In a memory-managed environment long lived domain objects can hold onto a lot of zombie screens, resulting in a significant memory leak. So it's important for observers to de-register from their subjects when you want them to be deleted.

A similar issue often occurs when you want to delete the domain object. If you rely on breaking all the links between the domain objects this may not be enough since screens may be observing the domain. In practice this turns out be a problem less frequently as the screen departs and the domain objects lifetime are usually controlled through the data source layer. But in general it's worth keeping in mind that observer reltionships often hang around forgotton and a frequent cause of zombies. Using an Event Aggregator will often simplify these relationships - while not a cure it can make life easier.

I'd particularly like to thank my colleague Xiao Guo for catalyzing much of the thinking in this chapter with his analysis of his experiences in window navigation and data synchronization. Patrik Nordwall pointed out the problem with observers and memory leaks.

11 July 2006: Initial update to handle split in MVP styles

20 November 2004: Added flow synchronization discussion.

04 August 2004: Added material on screens, layers, and data inspired by conversations with Xiao Guo.

19 July 2004: First public release. Mostly on Presentaton Model and MVP comparison.

15 May 2004: Internal release to TW

Blog > How to structure a good PowerPoint Presentation

How to structure a good PowerPoint Presentation

08.09.21   •  #powerpoint #tips.

When creating presentations, it is particularly important that they are well organized and have a consistent structure.

A logical structure helps the audience to follow you and to remember the core information as best as possible. It is also important for the presenter, as a good presentation structure helps to keep calm, to stay on the topic and to avoid awkward pauses.

But what does such a structure actually look like? Here we show you how to best organize your presentation and what a good structure looks like.

Plan your presentation

Before you start creating your presentation, you should always brainstorm. Think about the topic and write all your ideas down. Then think about the message you want to communicate, what your goal is and what you want your audience to remember at the end.

Think about who your audience is so that you can address them in the best possible way. One possibility is to start your presentation with a few polls to get to know your audience better. Based on the results, you can then adapt your presentation a little. Use the poll function of SlideLizard and have all the answers at a glance. SlideLizard makes it possible to integrate the polls directly into your PowerPoint presentation which helps you to avoid annoying switching between presentation and interaction tool. You can keep an eye on the results while the votes come in and then decide whether you want to share them or not.

Ask your audience questions with SlideLizard

  • an informative
  • an entertaining
  • an inspiring
  • or a persuasive presentation?

Typical Presentation Structure

The basic structure of a presentation is actually always the same and should consist of:

Introduction

Structure of a good presentation including introduction, main part and conclusion

Make sure that the structure of your presentation is not too complicated. The simpler it is, the better the audience can follow.

Personal Introduction

It is best to start your presentation by briefly introducing yourself which helps to build a connection with your audience right away.

Introduce the topic

Then introduce the topic, state the purpose of the presentation and provide a brief outline of the main points you will be addressing.

Mention the length

In the introduction, mention the approximate length of the talk and then also make sure you stick to it.

The introduction should be no longer than two slides and provide a good overview of the topic.

Icebreaker Polls

According to studies, people in the audience only have an average attention span of 10 minutes, which is why it is important to increase their attention right at the beginning and to arouse the audience's interest. You could make a good start with a few icebreaker polls for example. They lighten the mood right at the beginning and you can secure your audience's attention from the start.

For example, you could use SlideLizard to have all the answers at a glance and share them with your audience. In addition, the audience can try out how the polls work and already know how it works if you include more polls in the main part.

Icebreaker polls with SlideLizard

Get to know your audience

As mentioned earlier, it is always useful to think about who your audience actually is. Ask them questions at the beginning about how well they already know the topic of your presentation. Use SlideLizard for this so that you have a clear overview about the answers. You can use both single- and multiple-choice questions or also open questions and display their results as a WordCloud in your presentation, for example.

Include a quote

To make the beginning (or the end) of your presentation more exciting, it is always a good idea to include a quote. We have selected some powerful quotes for PowerPoint presentations for you.

Present your topic

The main part of a presentation should explain the topic well, state facts, justify them and give examples. Keep all the promises you made earlier in the introduction.

Length and Structure

The main part should make up about 70% of the presentation and also include a clear structure. Explain your ideas in detail and build them up logically. It should be organized chronologically, by priority or by topic. There should be a smooth transition between the individual issues. However, it is also important to use phrases that make it clear that a new topic is starting. We have listed some useful phrases for presentations here.

Visualize data and statistics and show pictures to underline facts. If you are still looking for good images, we have selected 5 sources of free images for you here.

Focus on the essentials

Focus on what is most important and summarize a bit. You don't have to say everything about a topic because your audience won’t remember everything either. Avoid complicated sentence structure, because if the audience does not understand something, they will not be able to read it again.

Make your presentation interactive

Make your presentation interactive to keep the attention of your audience. Use SlideLizard to include polls in your presentation, where your audience can vote directly from their smartphone and discuss the answers as soon as you received all votes. Here you can also find more tips for increasing audience engagement.

Make your presentation interactive by using SlideLizard

Repeat the main points

The conclusion should contain a summary of the most important key points. Repeat the main points you have made, summarize what the audience should have learned and explain how the new information can help in the future.

Include a Q&A part

Include a Q&A part at the end to make sure you don't leave any questions open. It's a good idea to use tools like SlideLizard for it. Your audience can ask anonymous questions and if there is not enough time, you can give them the answers afterwards. You can read more about the right way to do a question slide in PowerPoint here.

Get Feedback

It is also important to get feedback on your presentation at the end to keep improving. With SlideLizard you can ask your audience for anonymous feedback through star ratings, number ratings or open texts directly after your presentation. You can then export the responses and analyse them later in Excel.

Feedback function of SlideLizard

Presentation style

Depending on the type of presentation you give, the structure will always be slightly different. We have selected a few different presentation styles and their structure for you.

Short Presentation

Short presentation

If you are one of many presenters on the day, you will only have a very limited time to present your idea and to convince your audience. It is very important to stand out with your presentation.

So you need to summarize your ideas as briefly as possible and probably should not need more than 3-5 slides.

Problem Solving Presentation

Problem Solving Presentation

Start your presentation by explaining a problem and giving a short overview of it.

Then go into the problem a little more, providing both intellectual and emotional arguments for the seriousness of the problem. You should spend about the first 25% of your presentation on the problem.

After that, you should spend about 50% of your presentation proposing a solution and explaining it in detail.

In the last 25%, describe what benefits this solution will bring to your audience and ask them to take a simple but relevant action that relates to the problem being discussed.

Tell a Story

Tell a story

A great way to build an emotional connection with the audience is to structure a presentation like a story.

In the introduction, introduce a character who has to deal with a conflict. In the main part, tell how he tries to solve his problem but fails again and again. In the end, he manages to find a solution and wins.

Stories have the power to win customers, align colleagues and motivate employees. They’re the most compelling platform we have for managing imaginations. - Nancy Duarte / HBR Guide to Persuasive Presentations

Make a demonstration

Make a demonstration

Use the demonstration structure to show how a product works. First talk about a need or a problem that has to be solved.

Then explain how the product will help solve the problem and try to convince your audience of the need for your product.

Spend the end clarifying where and when the product can be purchased.

Chronological structure

Chronological structure of a presentation

When you have something historical to tell, it is always good to use a chronological structure. You always have to ask yourself what happens next.

To make it more interesting and exciting, it is a good idea to start by telling the end of something and after that you explain how you got there. This way you make the audience curious and you can gain their attention faster.

Nancy Duarte TED Talk

Nancy Duarte is a speaker and presentation design expert. She gives speeches all over the world, trying to improve the power of public presentations.

In her famous TED Talk "The Secret Structure of Great Talks" she dissects famous speeches such as Steve Jobs' iPhone launch speech and Martin Luther King's "I have a dream" speech. In doing so, she found out that each presentation is made up of 4 parts:

  • What could be
  • A moment to remember
  • Promise of “New Bliss”

Related articles

About the author.

presentation logic

Helena Reitinger

Helena supports the SlideLizard team in marketing and design. She loves to express her creativity in texts and graphics.

presentation logic

Get 1 Month for free!

Do you want to make your presentations more interactive.

With SlideLizard you can engage your audience with live polls, questions and feedback . Directly within your PowerPoint Presentation. Learn more

SlideLizard

Top blog articles More posts

presentation logic

How to add a Countdown Timer in PowerPoint

presentation logic

Tips for good PowerPoint Presentations

SlideLizard Live Polls

Get started with Live Polls, Q&A and slides

for your PowerPoint Presentations

The big SlideLizard presentation glossary

Hybrid event.

When an event consist of both virtual and in-person parts, this is called a hybrid event. This type of event is popular as it combines the benefits of both online and live events.

Slide transitions

Slide transitions are visual effects which appear in PowerPoint when one slide moves to the next. There are many different transitions, like for example fade and dissolve.

Tutorials are videos with instructions that show how for example a product or a software works.

Microlearning

Microlearning means learning in small quantities. It is especially used in E-Learning.

Be the first to know!

The latest SlideLizard news, articles, and resources, sent straight to your inbox.

- or follow us on -

We use cookies to personalize content and analyze traffic to our website. You can choose to accept only cookies that are necessary for the website to function or to also allow tracking cookies. For more information, please see our privacy policy .

Cookie Settings

Necessary cookies are required for the proper functioning of the website. These cookies ensure basic functionalities and security features of the website.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information about the number of visitors, etc.

virtualspeech-logo

Improve your practice.

Enhance your soft skills with a range of award-winning courses.

How to Structure your Presentation, with Examples

August 3, 2018 - Dom Barnard

For many people the thought of delivering a presentation is a daunting task and brings about a  great deal of nerves . However, if you take some time to understand how effective presentations are structured and then apply this structure to your own presentation, you’ll appear much more confident and relaxed.

Here is our complete guide for structuring your presentation, with examples at the end of the article to demonstrate these points.

Why is structuring a presentation so important?

If you’ve ever sat through a great presentation, you’ll have left feeling either inspired or informed on a given topic. This isn’t because the speaker was the most knowledgeable or motivating person in the world. Instead, it’s because they know how to structure presentations – they have crafted their message in a logical and simple way that has allowed the audience can keep up with them and take away key messages.

Research has supported this, with studies showing that audiences retain structured information  40% more accurately  than unstructured information.

In fact, not only is structuring a presentation important for the benefit of the audience’s understanding, it’s also important for you as the speaker. A good structure helps you remain calm, stay on topic, and avoid any awkward silences.

What will affect your presentation structure?

Generally speaking, there is a natural flow that any decent presentation will follow which we will go into shortly. However, you should be aware that all presentation structures will be different in their own unique way and this will be due to a number of factors, including:

  • Whether you need to deliver any demonstrations
  • How  knowledgeable the audience  already is on the given subject
  • How much interaction you want from the audience
  • Any time constraints there are for your talk
  • What setting you are in
  • Your ability to use any kinds of visual assistance

Before choosing the presentation’s structure answer these questions first:

  • What is your presentation’s aim?
  • Who are the audience?
  • What are the main points your audience should remember afterwards?

When reading the points below, think critically about what things may cause your presentation structure to be slightly different. You can add in certain elements and add more focus to certain moments if that works better for your speech.

Good presentation structure is important for a presentation

What is the typical presentation structure?

This is the usual flow of a presentation, which covers all the vital sections and is a good starting point for yours. It allows your audience to easily follow along and sets out a solid structure you can add your content to.

1. Greet the audience and introduce yourself

Before you start delivering your talk, introduce yourself to the audience and clarify who you are and your relevant expertise. This does not need to be long or incredibly detailed, but will help build an immediate relationship between you and the audience. It gives you the chance to briefly clarify your expertise and why you are worth listening to. This will help establish your ethos so the audience will trust you more and think you’re credible.

Read our tips on  How to Start a Presentation Effectively

2. Introduction

In the introduction you need to explain the subject and purpose of your presentation whilst gaining the audience’s interest and confidence. It’s sometimes helpful to think of your introduction as funnel-shaped to help filter down your topic:

  • Introduce your general topic
  • Explain your topic area
  • State the issues/challenges in this area you will be exploring
  • State your presentation’s purpose – this is the basis of your presentation so ensure that you provide a statement explaining how the topic will be treated, for example, “I will argue that…” or maybe you will “compare”, “analyse”, “evaluate”, “describe” etc.
  • Provide a statement of what you’re hoping the outcome of the presentation will be, for example, “I’m hoping this will be provide you with…”
  • Show a preview of the organisation of your presentation

In this section also explain:

  • The length of the talk.
  • Signal whether you want audience interaction – some presenters prefer the audience to ask questions throughout whereas others allocate a specific section for this.
  • If it applies, inform the audience whether to take notes or whether you will be providing handouts.

The way you structure your introduction can depend on the amount of time you have been given to present: a  sales pitch  may consist of a quick presentation so you may begin with your conclusion and then provide the evidence. Conversely, a speaker presenting their idea for change in the world would be better suited to start with the evidence and then conclude what this means for the audience.

Keep in mind that the main aim of the introduction is to grab the audience’s attention and connect with them.

3. The main body of your talk

The main body of your talk needs to meet the promises you made in the introduction. Depending on the nature of your presentation, clearly segment the different topics you will be discussing, and then work your way through them one at a time – it’s important for everything to be organised logically for the audience to fully understand. There are many different ways to organise your main points, such as, by priority, theme, chronologically etc.

  • Main points should be addressed one by one with supporting evidence and examples.
  • Before moving on to the next point you should provide a mini-summary.
  • Links should be clearly stated between ideas and you must make it clear when you’re moving onto the next point.
  • Allow time for people to take relevant notes and stick to the topics you have prepared beforehand rather than straying too far off topic.

When planning your presentation write a list of main points you want to make and ask yourself “What I am telling the audience? What should they understand from this?” refining your answers this way will help you produce clear messages.

4. Conclusion

In presentations the conclusion is frequently underdeveloped and lacks purpose which is a shame as it’s the best place to reinforce your messages. Typically, your presentation has a specific goal – that could be to convert a number of the audience members into customers, lead to a certain number of enquiries to make people knowledgeable on specific key points, or to motivate them towards a shared goal.

Regardless of what that goal is, be sure to summarise your main points and their implications. This clarifies the overall purpose of your talk and reinforces your reason for being there.

Follow these steps:

  • Signal that it’s nearly the end of your presentation, for example, “As we wrap up/as we wind down the talk…”
  • Restate the topic and purpose of your presentation – “In this speech I wanted to compare…”
  • Summarise the main points, including their implications and conclusions
  • Indicate what is next/a call to action/a thought-provoking takeaway
  • Move on to the last section

5. Thank the audience and invite questions

Conclude your talk by thanking the audience for their time and invite them to  ask any questions  they may have. As mentioned earlier, personal circumstances will affect the structure of your presentation.

Many presenters prefer to make the Q&A session the key part of their talk and try to speed through the main body of the presentation. This is totally fine, but it is still best to focus on delivering some sort of initial presentation to set the tone and topics for discussion in the Q&A.

Questions being asked after a presentation

Other common presentation structures

The above was a description of a basic presentation, here are some more specific presentation layouts:

Demonstration

Use the demonstration structure when you have something useful to show. This is usually used when you want to show how a product works. Steve Jobs frequently used this technique in his presentations.

  • Explain why the product is valuable.
  • Describe why the product is necessary.
  • Explain what problems it can solve for the audience.
  • Demonstrate the product  to support what you’ve been saying.
  • Make suggestions of other things it can do to make the audience curious.

Problem-solution

This structure is particularly useful in persuading the audience.

  • Briefly frame the issue.
  • Go into the issue in detail showing why it ‘s such a problem. Use logos and pathos for this – the logical and emotional appeals.
  • Provide the solution and explain why this would also help the audience.
  • Call to action – something you want the audience to do which is straightforward and pertinent to the solution.

Storytelling

As well as incorporating  stories in your presentation , you can organise your whole presentation as a story. There are lots of different type of story structures you can use – a popular choice is the monomyth – the hero’s journey. In a monomyth, a hero goes on a difficult journey or takes on a challenge – they move from the familiar into the unknown. After facing obstacles and ultimately succeeding the hero returns home, transformed and with newfound wisdom.

Storytelling for Business Success  webinar , where well-know storyteller Javier Bernad shares strategies for crafting compelling narratives.

Another popular choice for using a story to structure your presentation is in media ras (in the middle of thing). In this type of story you launch right into the action by providing a snippet/teaser of what’s happening and then you start explaining the events that led to that event. This is engaging because you’re starting your story at the most exciting part which will make the audience curious – they’ll want to know how you got there.

  • Great storytelling: Examples from Alibaba Founder, Jack Ma

Remaining method

The remaining method structure is good for situations where you’re presenting your perspective on a controversial topic which has split people’s opinions.

  • Go into the issue in detail showing why it’s such a problem – use logos and pathos.
  • Rebut your opponents’ solutions  – explain why their solutions could be useful because the audience will see this as fair and will therefore think you’re trustworthy, and then explain why you think these solutions are not valid.
  • After you’ve presented all the alternatives provide your solution, the remaining solution. This is very persuasive because it looks like the winning idea, especially with the audience believing that you’re fair and trustworthy.

Transitions

When delivering presentations it’s important for your words and ideas to flow so your audience can understand how everything links together and why it’s all relevant. This can be done  using speech transitions  which are words and phrases that allow you to smoothly move from one point to another so that your speech flows and your presentation is unified.

Transitions can be one word, a phrase or a full sentence – there are many different forms, here are some examples:

Moving from the introduction to the first point

Signify to the audience that you will now begin discussing the first main point:

  • Now that you’re aware of the overview, let’s begin with…
  • First, let’s begin with…
  • I will first cover…
  • My first point covers…
  • To get started, let’s look at…

Shifting between similar points

Move from one point to a similar one:

  • In the same way…
  • Likewise…
  • Equally…
  • This is similar to…
  • Similarly…

Internal summaries

Internal summarising consists of summarising before moving on to the next point. You must inform the audience:

  • What part of the presentation you covered – “In the first part of this speech we’ve covered…”
  • What the key points were – “Precisely how…”
  • How this links in with the overall presentation – “So that’s the context…”
  • What you’re moving on to – “Now I’d like to move on to the second part of presentation which looks at…”

Physical movement

You can move your body and your standing location when you transition to another point. The audience find it easier to follow your presentation and movement will increase their interest.

A common technique for incorporating movement into your presentation is to:

  • Start your introduction by standing in the centre of the stage.
  • For your first point you stand on the left side of the stage.
  • You discuss your second point from the centre again.
  • You stand on the right side of the stage for your third point.
  • The conclusion occurs in the centre.

Key slides for your presentation

Slides are a useful tool for most presentations: they can greatly assist in the delivery of your message and help the audience follow along with what you are saying. Key slides include:

  • An intro slide outlining your ideas
  • A  summary slide  with core points to remember
  • High quality image slides to supplement what you are saying

There are some presenters who choose not to use slides at all, though this is more of a rarity. Slides can be a powerful tool if used properly, but the problem is that many fail to do just that. Here are some golden rules to follow when using slides in a presentation:

  • Don’t over fill them  – your slides are there to assist your speech, rather than be the focal point. They should have as little information as possible, to avoid distracting people from your talk.
  • A picture says a thousand words  – instead of filling a slide with text, instead, focus on one or two images or diagrams to help support and explain the point you are discussing at that time.
  • Make them readable  – depending on the size of your audience, some may not be able to see small text or images, so make everything large enough to fill the space.
  • Don’t rush through slides  – give the audience enough time to digest each slide.

Guy Kawasaki, an entrepreneur and author, suggests that slideshows should follow a  10-20-30 rule :

  • There should be a maximum of 10 slides – people rarely remember more than one concept afterwards so there’s no point overwhelming them with unnecessary information.
  • The presentation should last no longer than 20 minutes as this will leave time for questions and discussion.
  • The font size should be a minimum of 30pt because the audience reads faster than you talk so less information on the slides means that there is less chance of the audience being distracted.

Here are some additional resources for slide design:

  • 7 design tips for effective, beautiful PowerPoint presentations
  • 11 design tips for beautiful presentations
  • 10 tips on how to make slides that communicate your idea

Group Presentations

Group presentations are structured in the same way as presentations with one speaker but usually require more rehearsal and practices.  Clean transitioning between speakers  is very important in producing a presentation that flows well. One way of doing this consists of:

  • Briefly recap on what you covered in your section: “So that was a brief introduction on what health anxiety is and how it can affect somebody”
  • Introduce the next speaker in the team and explain what they will discuss: “Now Elnaz will talk about the prevalence of health anxiety.”
  • Then end by looking at the next speaker, gesturing towards them and saying their name: “Elnaz”.
  • The next speaker should acknowledge this with a quick: “Thank you Joe.”

From this example you can see how the different sections of the presentations link which makes it easier for the audience to follow and remain engaged.

Example of great presentation structure and delivery

Having examples of great presentations will help inspire your own structures, here are a few such examples, each unique and inspiring in their own way.

How Google Works – by Eric Schmidt

This presentation by ex-Google CEO  Eric Schmidt  demonstrates some of the most important lessons he and his team have learnt with regards to working with some of the most talented individuals they hired. The simplistic yet cohesive style of all of the slides is something to be appreciated. They are relatively straightforward, yet add power and clarity to the narrative of the presentation.

Start with why – by Simon Sinek

Since being released in 2009, this presentation has been viewed almost four million times all around the world. The message itself is very powerful, however, it’s not an idea that hasn’t been heard before. What makes this presentation so powerful is the simple message he is getting across, and the straightforward and understandable manner in which he delivers it. Also note that he doesn’t use any slides, just a whiteboard where he creates a simple diagram of his opinion.

The Wisdom of a Third Grade Dropout – by Rick Rigsby

Here’s an example of a presentation given by a relatively unknown individual looking to inspire the next generation of graduates. Rick’s presentation is unique in many ways compared to the two above. Notably, he uses no visual prompts and includes a great deal of humour.

However, what is similar is the structure he uses. He first introduces his message that the wisest man he knew was a third-grade dropout. He then proceeds to deliver his main body of argument, and in the end, concludes with his message. This powerful speech keeps the viewer engaged throughout, through a mixture of heart-warming sentiment, powerful life advice and engaging humour.

As you can see from the examples above, and as it has been expressed throughout, a great presentation structure means analysing the core message of your presentation. Decide on a key message you want to impart the audience with, and then craft an engaging way of delivering it.

By preparing a solid structure, and  practising your talk  beforehand, you can walk into the presentation with confidence and deliver a meaningful message to an interested audience.

It’s important for a presentation to be well-structured so it can have the most impact on your audience. An unstructured presentation can be difficult to follow and even frustrating to listen to. The heart of your speech are your main points supported by evidence and your transitions should assist the movement between points and clarify how everything is linked.

Research suggests that the audience remember the first and last things you say so your introduction and conclusion are vital for reinforcing your points. Essentially, ensure you spend the time structuring your presentation and addressing all of the sections.

Home Blog Guide to Presenting Using the Pyramid Principle

Guide to Presenting Using the Pyramid Principle

presentation logic

The conventional method for presenting a PowerPoint presentation entails reflecting upon the facts and fine details to draw the audience towards a conclusion. This can result in a lengthy Q&A session at the end of the presentation, where the audience might appear confused, unsatisfied, and at times, feel manipulated into being led towards a conclusion of the presenter’s choosing. A better alternative can be to use the Pyramid Principle .

Present using the Pyramid Principle: An Excellent Tool to Communicate Logical Information

The Pyramid Principle can be used for structuring communication to have a meaningful impact. Whether you’re making reports, delivering a presentation, or preparing an analysis, the Pyramid Principle can be an excellent tool to communicate logical information . The structured format in which the communication relays the answer prior to facts and data can help create an environment where critical thinking can be stimulated at the very start, instead of the end.

What is the Pyramid Principle?

Developed by an ex-McKinsey consultant, Barbara Minto, the Pyramid Principle is considered as one of the most important concepts of executive communication often taught in  strategic communications and leadership programs . Unlike conventional modes of presenting information, the Pyramid Principle presents the answer at the beginning, followed by supporting arguments, data, and facts. The concept was documented in her book published in 1985 titled; The Pyramid Principle: Logic in Writing and Thinking .

The information is presented in the form of a pyramid, with the core idea at the top, which is then broken down by revealing fine details. The top of the pyramid contains the answer, which is the starting point. The middle of the pyramid represents supporting arguments. Whereas the bottom of the pyramid gives the supporting data and facts.

What are the 3 Rules When Creating Pyramid Structure?

When sitting through a lengthy PowerPoint presentation bloated with facts and data and a leading conclusion, one can feel unsatisfied with the presenter. However, when given the answer at the very beginning, you might feel a need to think through its merits from the very start. As you are presented with supporting arguments and facts, you can determine whether you agree or disagree with the statement or feel a need to raise important questions.

This approach makes it possible to aid structured thinking and stimulate critical thinking at the very start of a presentation or when reading through a report or research. Rather than feeling that you are being led towards a conclusion with convoluted information.

Supporting Arguments

Once the audience has been given the answer or hypothesis at the start, they can begin critically analyzing the supporting argument that follows. This is the second stage of the Pyramid Principle, where the answer is supported with relevant arguments to help test the validity of the hypothesis or to present it for critical analysis.

Supporting Data and Facts

Unlike conventional approaches to presenting data, the Pyramid Principle makes it possible to see supporting facts and data after a hypothesis. Rather than wondering what the long bits of information might be leading to. The one reading through the information or sitting in the audience does not need to wonder about the suggested conclusion, as it has already been presented at the start. Enabling critical analysis of the data and facts, as they are presented.

Why Does the Pyramid Principle Work?

Before the Pyramid Principle, Barbara Minto developed the MECE principle in the 1960s, which is a grouping principle that separates items into subsets. These subsets are mutually exclusive and collectively exhaustive, hence the name MECE. This concept underlies what was later known as the Pyramid Principle during the 1980s. Providing a mechanism to structure information for maximum impact. Making the principle practical and useful.

The Pyramid Principle suggests that ideas should be presented as a pyramid. Using the pyramid structure, the information is grouped together with similar, low-level facts, drawing insights from the similarity, and forming a group of related insights.  

How is the Pyramid Principle used for Effective Writing?

presentation logic

Effective writing produces content that is clear, accurate, and concise. The writing is focused, coherent, correct, supporting the central idea. When incorporating the Pyramid Principle for effective writing, the same rules apply. You need to start with the central idea. The ‘answer’ serves as a single thought, supported by arguments, data, and facts. You should present the ideas using the pyramid structure, summarizing the ideas grouped below each other, while remaining true to the ‘single thought’, i.e. the central idea (the answer).

An example of the structure for content produced using the Pyramid Principle would be as follows:

Answer -> Supporting Argument -> Evidence.

The answer shall remain at the top or at the heart of the content you are writing, whereas the supporting argument will be backed by evidence at each instance. If you have more than one supporting argument, you should take the time to structure each argument. For example, write the first supporting argument, followed by its evidence, before moving on to the second supporting argument and its related evidence.

How to Apply the Pyramid Principle in Preparing Presentations

When applying the Pyramid Principle, you must first start with the hypothesis and break it down with supporting arguments, backed by facts and data. It’s quite likely that during the course of the presentation, your audience would want to ask tough questions. Using this concept, you can enable those questions to be asked sooner and provide your breakdown of the information in a structured manner to ensure all your arguments are covered.

Begin with the Hypothesis

It is common to present the hypothesis at the very end after data, facts, and different ideas related to the potential hypothesis have been presented. The Pyramid Principle flips this conventional approach by presenting the hypothesis (answer) at the beginning.

Example: In our example, a mobile operator called ABC Telecom wants to enter a new market in Country X, located in Central Africa. The conventional approach would be to provide data and facts before mentioning why it’s a good idea to invest in a specific country. The presenter might even take the time to mention the country at the very end. The Pyramid Principle would require this information to be shared at the very beginning instead. In our example, the presenter would start the presentation by mentioning the hypothesis or answer.

In this case, the hypothesis might be something as follows: ‘investing in Country X would be profitable and lead to 30% increase in revenue for ABC Telecom over the next 5 years’.

Presenting the hypothesis at the start will stimulate critical thinking and aid structured communication, where there might be people for and against the argument scrambling to ask tough questions. That’s one of the benefits of the Pyramid Principle, as it helps bring out critical questions from the very start instead of at the end of a bloated presentation or report.

Present Arguments to Support Your Answer

It is essential to back the answer with supporting arguments to enable a meaningful discussion or to raise key questions regarding the accuracy of the hypothesis. For a business, this can have dire implications and major investment decisions might hinge on such information.

Example: The presenter proceeds to mention why investing in Country X by ABC Telecom is important for the long-term sustainability of the company. We assume that the argument for this investment is that ABC Telecom is already operating in a saturated market, where profit margins are projected to decline, and it is essential to move into a new market to increase revenue and profitability.

Present the Data to Support Your Argument

A supporting argument is only as good as the data and facts that are presented to back it up. The bottom of the pyramid, therefore, is the foundation of the Pyramid Principle. The foundation needs to contain accurate and reliable information that can back the hypothesis.

Example: In our example, ABC Telecom conducted research across 3 potential markets (Country X, Country Y, and Country Z) to look for countries to expand their operations in. During the research, it was revealed that only Country X appeared to be a lucrative market for investment.

The research revealed that Country Y and Country Z already have a saturated telecom industry with heavy taxes, rigid government policies, and very low ease of doing business ratings. Moreover, the population and telecom density of both these countries does not appear to indicate the potential for growth. On the contrary, Country X with a large population and low competition serves as a lucrative market. The market competition is slim, the government is looking to expand its telecom infrastructure, giving tax concessions to companies looking to set up their operations. The country also has a better ease of doing business ranking.

Another factor that goes in favor of ABC Telecom investing in Country X is that they are already operating in the neighboring country (Country W), making it easier to expand operations due to familiarity with the region. Furthermore, other global telecom operators are looking towards expanding into Asia Pacific, instead of Central Africa, leaving the market open for a new operator to rapidly expand. The recent rise in purchasing power, increased use of smartphones, and the demand for 4G and 5G services (currently not available in Country X) make another compelling argument for an efficient mobile operator to start operations in the country.

What are the Benefits of Applying the Pyramid Principle?

1. be better at structured thinking.

The idea behind structured thinking is to be efficient at problem-solving and critically analyzing things in an organized manner. The Pyramid Principle provides this formula in its pyramid-like structure, where important questions can be asked right from the start.

2. Focus on Core issues

Lengthy reports and presentations can lead to a lot of confusion and might even deviate the people in charge of making decisions from the core issue. By placing the core issue at the very heart and elaborating upon it at the start, the Pyramid Principle can help keep everyone involved in the discussion on point.

3. Placing the Solutions at the Start Initiates Critical Analysis

When exploring solutions, such as in our example above, (the expansion of a telecom operator into a new market), it is essential to initiate critical analysis. Key decisions related to investment, expansion into new markets, or changes to products or services can make or break a business. Placing the solution at the start of the discussion leaves ample room for critical analysis to see if the presented solution can be applied or if better alternatives can be explored.

4. Hypothesis Backed by Data can Aid Better Decision Making

How would you feel if you are presented with 1 hour of slides filled with data, with a solution at the end? It is likely that such a presentation would leave you weary and tired, unable to connect the data with the solution at the end. Now imagine, you are given the solution at the start of the presentation, and each bit of information related to the answer that you would see after that can be connected with the solution when analyzing its practical implications. The latter is an approach that will help you connect with the arguments, facts, and data, as they are presented. Since you are already aware of the answer or hypothesis that you need to focus on.

Is Barbara Minto’s Pyramid Principle Still Valid?

The short answer to the question would be, yes! Barbara Minto’s Pyramid Principle is considered as one of the most important methodologies for structured communication. Since its initial revelation during 1985 to the revised edition of Minto’s book in 1996; ‘The Minto Pyramid Principle: Logic in Writing, Thinking and Problem Solving’, the principle still remains effective. It is widely used for making business executives absorb information quickly, in a structured manner, and aiding executive communication.

Final Words

The Pyramid Principle can be used effectively for structured thinking, problem-solving, and presenting information in a palatable format for busy business executives. Moreover, presenting the information true to the core idea presented at the very start can help make it easier to keep the audience abreast with the arguments, data, and facts that follow.

At the very core of decision making, be it decisions made by businesses or individuals, everyone wants to find the solution that works best for them. But complex data analysis and information overload can hinder good decisions and obscure solutions. By starting with the potential solution, its merits and demerits can be critically analyzed with ease.

1. Minto Pyramid Principle PowerPoint Template

presentation logic

Use This Template

2. 3 Levels 3D Pyramid Template for PowerPoint

presentation logic

Like this article? Please share

Communication, Communication Skills, Presentation Approaches, Presentations

Related Articles

How to Make a Presentation Graph

Filed under Design • March 27th, 2024

How to Make a Presentation Graph

Detailed step-by-step instructions to master the art of how to make a presentation graph in PowerPoint and Google Slides. Check it out!

How to Make a Fundraising Presentation (with Thermometer Templates & Slides)

Filed under Presentation Ideas • February 29th, 2024

How to Make a Fundraising Presentation (with Thermometer Templates & Slides)

Meet a new framework to design fundraising presentations by harnessing the power of fundraising thermometer templates. Detailed guide with examples.

How to Create a 5 Minutes Presentation

Filed under Presentation Ideas • February 15th, 2024

How to Create a 5 Minutes Presentation

Master the art of short-format speeches like the 5 minutes presentation with this article. Insights on content structure, audience engagement and more.

Leave a Reply

presentation logic

Presentation Logic

  • First Online: 05 September 2017

Cite this chapter

Book cover

  • Sten Vesterli 2  

673 Accesses

ADF handles all the basic functionality of getting data from the database onto the web page, accepting changes, and storing data back. But when you want to implement your own special way of handling the user interface, you need to start writing code. This chapter describes how to add logic to the presentation layer, using prebuilt UI component validators (declarative), managed beans (server-side Java code), and custom client-side JavaScript code

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
  • Available as EPUB and PDF
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Author information

Authors and affiliations.

Værløse, Denmark

Sten Vesterli

You can also search for this author in PubMed   Google Scholar

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Sten Vesterli

About this chapter

Vesterli, S. (2017). Presentation Logic. In: Oracle ADF Survival Guide. Apress, Berkeley, CA. https://doi.org/10.1007/978-1-4842-2820-3_5

Download citation

DOI : https://doi.org/10.1007/978-1-4842-2820-3_5

Published : 05 September 2017

Publisher Name : Apress, Berkeley, CA

Print ISBN : 978-1-4842-2819-7

Online ISBN : 978-1-4842-2820-3

eBook Packages : Professional and Applied Computing Apress Access Books Professional and Applied Computing (R0)

Share this chapter

Anyone you share the following link with will be able to read this content:

Sorry, a shareable link is not currently available for this article.

Provided by the Springer Nature SharedIt content-sharing initiative

  • Publish with us

Policies and ethics

  • Find a journal
  • Track your research

The slides here are taken from an early version of the course. While the concepts and results are consistent with the current version of the course, there are some differences in terminology. We are updating the slides as quickly as we can. Meanwhile, we are making these older versions available on the assumption that it is better for you to have something to work from rather than nothing.

See below for links to exams from Stanford's offering of Intrologic. The midterm exams focus on Propositional Logic (the first 5 lessons of the course). The final exams cover all of the material in the course.

Illustration with collage of pictograms of computer monitor, server, clouds, dots

Three-tier architecture is a well-established software application architecture that organizes applications into three logical and physical computing tiers: the presentation tier, or user interface; the application tier, where data is processed; and the data tier, where application data is stored and managed.

The chief benefit of three-tier architecture is that because each tier runs on its own infrastructure, each tier can be developed simultaneously by a separate development team. And can be updated or scaled as needed without impacting the other tiers.

For decades three-tier architecture was the prevailing architecture for client-server applications. Today, most three-tier applications are targets for modernization that uses cloud-native technologies such as containers and microservices and for migration to the cloud.

Connect and integrate your systems to prepare your infrastructure for AI.

Register for the guide on app modernization

Presentation tier

The presentation tier is the user interface and communication layer of the application, where the end user interacts with the application. Its main purpose is to display information to and collect information from the user. This top-level tier can run on a web browser, as desktop application, or a graphical user interface (GUI), for example. Web presentation tiers are developed by using HTML, CSS, and JavaScript. Desktop applications can be written in various languages depending on the platform.

Application tier

The application tier, also known as the logic tier or middle tier, is the heart of the application. In this tier, information that is collected in the presentation tier is processed - sometimes against other information in the data tier - using business logic, a specific set of business rules. The application tier can also add, delete, or modify data in the data tier. 

The application tier is typically developed by using Python, Java, Perl, PHP or Ruby, and communicates with the data tier by using  API  calls. 

The data tier, sometimes called database tier, data access tier or back-end, is where the information that is processed by the application is stored and managed. This can be a  relational database management system  such as  PostgreSQL , MySQL, MariaDB, Oracle, Db2, Informix or Microsoft SQL Server, or in a  NoSQL  Database server such as Cassandra,  CouchDB , or  MongoDB . 

In a three-tier application, all communication goes through the application tier. The presentation tier and the data tier cannot communicate directly with one another.

Tier versus layer

In discussions of three-tier architecture,  layer  is often used interchangeably – and mistakenly – for  tier , as in 'presentation layer' or 'business logic layer'. 

They aren't the same. A 'layer' refers to a functional division of the software, but a 'tier' refers to a functional division of the software that runs on infrastructure separate from the other divisions. The Contacts app on your phone, for example, is a  three - layer  application, but a  single-tier  application, because all three layers run on your phone.

The difference is important because layers can't offer the same benefits as tiers.

Again, the chief benefit of three-tier architecture is its logical and physical separation of functionality. Each tier can run on a separate operating system and server platform - for example, web server, application server, database server - that best fits its functional requirements. And each tier runs on at least one dedicated server hardware or virtual server, so the services of each tier can be customized and optimized without impacting the other tiers. 

Other benefits (compared to single- or two-tier architecture) include:

  • Faster development : Because each tier can be developed simultaneously by different teams, an organization can bring the application to market faster. And programmers can use the latest and best languages and tools for each tier.
  • Improved scalability : Any tier can be scaled independently of the others as needed.
  • Improved reliability : An outage in one tier is less likely to impact the availability or performance of the other tiers.
  • Improved security : Because the presentation tier and data tier can't communicate directly, a well-designed application tier can function as an internal firewall, preventing SQL injections and other malicious exploits.

In web development, the tiers have different names but perform similar functions:

  • The web server  is the presentation tier and provides the user interface. This is usually a web page or website, such as an ecommerce site where the user adds products to the shopping cart, adds payment details or creates an account. The content can be static or dynamic, and is developed using HTML, CSS, and JavaScript.
  • The application server  corresponds to the middle tier, housing the business logic that is used to process user inputs. To continue the ecommerce example, this is the tier that queries the inventory database to return product availability, or adds details to a customer's profile. This layer often developed using Python, Ruby, or PHP and runs a framework such as Django, Rails, Symphony, or ASP.NET.
  • The database server  is the data or backend tier of a web application. It runs on database management software, such as MySQL, Oracle, DB2, or PostgreSQL.

While three-tier architecture is easily the most widely adopted multitier application architecture, there are others that you might encounter in your work or your research.

Two-tier architecture 

Two-tier architecture is the original client-server architecture, consisting of a presentation tier and a data tier; the business logic lives in the presentation tier, the data tier or both. In two-tier architecture the presentation tier - and therefore the end user - has direct access to the data tier, and the business logic is often limited. A simple contact management application, where users can enter and retrieve contact data, is an example of a two-tier application. 

N-tier architecture

N-tier architecture - also called or multitier architecture - refers to  any  application architecture with more than one tier. But applications with more than three layers are rare because extra layers offer few benefits and can make the application slower, harder to manage and more expensive to run. As a result, n-tier architecture and multitier architecture are usually synonyms for three-tier architecture.

Move to cloud faster with IBM Cloud Pak solutions running on Red Hat OpenShift software—integrated, open, containerized solutions certified by IBM®.

Seamlessly modernize your VMware workloads and applications with IBM Cloud.

Modernize, build new apps, reduce costs, and maximize ROI.

IBM Consulting® application modernization services, which are powered by IBM Consulting Cloud Accelerator, offers skills, methods, tools, and initiatives that help determine the right strategy based on your portfolio. To modernize and containerize legacy system applications and accelerate the time-to-value of hybrid cloud environments. 

Discover what application modernization is, the common benefits and challenges, and how to get started.

Learn about how relational databases work and how they compare to other data storage options.

Explore cloud native applications and how they drive innovation and speed within your enterprise.

Modernize your legacy three-tier applications on your journey to cloud. Whether you need assistance with strategy, processes, or capabilities—or want full-service attention—IBM can help. Start using containerized middleware that can run in any cloud—all bundled in IBM Cloud Paks.

  • Presentation Hacks

Secrets to Creating a Logical Presentation

  • By: Scott Schwertly

When we say “logical,” what we are describing is “ a proper or reasonable way of understanding something .” Creating a presentation logically means organizing the content in order to maximize audience understanding. Because our brains work in similar ways, there are definitely techniques to build your next presentation to enhance memory and engagement.

Step One: Start Visually

Visual learning is one of the best ways to ignite the synapses in brain that connect and help us remember. We also know that people prefer images. For instance, “articles with images get 94% more total views .”

If you want to start creating a memorable presentation, be sure that the content is visually appealing, clear, and relevant to your main points. Not sure where to begin? We have a helpful guide on how to use images in your presentation.

Step Two: Utilize Narrative

We remember things that engage our minds with rich descriptions and storytelling. It’s what makes the difference between the sentence, “she has a dog” and “she has a pink poodle named Cupcake.” Empower your presentation content with descriptive details and structure it to have a beginning, middle, and end.

“ Neurologists say that our brains are programmed much more for stories than for abstract ideas. Tales with a little drama are remembered far longer than any slide crammed with analytics. ” – John Kotter ( Source )

Step Three: Rinse and Repeat Main Points

Your audience isn’t going to remember everything, so it’s important to control exactly what you want them to remember. This can be done by establishing the key points in your presentation, and then repeating them as many times as necessary. As the old saying goes, “ repetition is the Mother of all learning ,” (“ repetitio mater studiorum est” in Latin, if you are feeling especially smart).

If you aren’t convinced, Cambridge research suggests that you can learn a language at any age. In order to completely learn a new word, for instance, all you need to do is see it 160 times in 14 minutes . The memory traces of the new word versus the memory traces of a familiar word then become identical. Since you are already speaking the audience’s language there is no need to reach so high a number, but this teaching tool should still be used often.

Simplifying your message to a few main points, utilizing images to enhance memory, and repeating key concepts are all ways to structure a logical presentation. This will ensure that your audience remembers what you have to say for a long time afterwards, versus forgetting everything when they leave the room.

Question: How can you structure your presentation logically? 

New Call-to-action

Scott Schwertly

Join our newsletter today.

© 2006-2024 Ethos3 – An Award Winning Presentation Design and Training Company ALL RIGHTS RESERVED

  • Terms & Conditions
  • Privacy Policy
  • Diversity and Inclusion

This browser is no longer supported.

Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.

Model-View-ViewModel (MVVM)

  • 4 contributors

This content is an excerpt from the eBook, Enterprise Application Patterns Using .NET MAUI, available on .NET Docs or as a free downloadable PDF that can be read offline.

Download PDF

Enterprise Application Patterns Using .NET MAUI eBook cover thumbnail.

The .NET MAUI developer experience typically involves creating a user interface in XAML, and then adding code-behind that operates on the user interface. Complex maintenance issues can arise as apps are modified and grow in size and scope. These issues include the tight coupling between the UI controls and the business logic, which increases the cost of making UI modifications, and the difficulty of unit testing such code.

The MVVM pattern helps cleanly separate an application's business and presentation logic from its user interface (UI). Maintaining a clean separation between application logic and the UI helps address numerous development issues and makes an application easier to test, maintain, and evolve. It can also significantly improve code re-use opportunities and allows developers and UI designers to collaborate more easily when developing their respective parts of an app.

The MVVM pattern

There are three core components in the MVVM pattern: the model, the view, and the view model. Each serves a distinct purpose. The diagram below shows the relationships between the three components.

The MVVM pattern

In addition to understanding the responsibilities of each component, it's also important to understand how they interact. At a high level, the view "knows about" the view model, and the view model "knows about" the model, but the model is unaware of the view model, and the view model is unaware of the view. Therefore, the view model isolates the view from the model, and allows the model to evolve independently of the view.

The benefits of using the MVVM pattern are as follows:

  • If an existing model implementation encapsulates existing business logic, it can be difficult or risky to change it. In this scenario, the view model acts as an adapter for the model classes and prevents you from making major changes to the model code.
  • Developers can create unit tests for the view model and the model, without using the view. The unit tests for the view model can exercise exactly the same functionality as used by the view.
  • The app UI can be redesigned without touching the view model and model code, provided that the view is implemented entirely in XAML or C#. Therefore, a new version of the view should work with the existing view model.
  • Designers and developers can work independently and concurrently on their components during development. Designers can focus on the view, while developers can work on the view model and model components.

The key to using MVVM effectively lies in understanding how to factor app code into the correct classes and how the classes interact. The following sections discuss the responsibilities of each of the classes in the MVVM pattern.

The view is responsible for defining the structure, layout, and appearance of what the user sees on screen. Ideally, each view is defined in XAML, with a limited code-behind that does not contain business logic. However, in some cases, the code-behind might contain UI logic that implements visual behavior that is difficult to express in XAML, such as animations.

In a .NET MAUI application, a view is typically a ContentPage -derived or ContentView -derived class. However, views can also be represented by a data template, which specifies the UI elements to be used to visually represent an object when it's displayed. A data template as a view does not have any code-behind, and is designed to bind to a specific view model type.

Avoid enabling and disabling UI elements in the code-behind.

Ensure that the view models are responsible for defining logical state changes that affect some aspects of the view's display, such as whether a command is available, or an indication that an operation is pending. Therefore, enable and disable UI elements by binding to view model properties, rather than enabling and disabling them in code-behind.

There are several options for executing code on the view model in response to interactions on the view, such as a button click or item selection. If a control supports commands, the control's Command property can be data-bound to an ICommand property on the view model. When the control's command is invoked, the code in the view model will be executed. In addition to commands, behaviors can be attached to an object in the view and can listen for either a command to be invoked or the event to be raised. In response, the behavior can then invoke an ICommand on the view model or a method on the view model.

The view model implements properties and commands to which the view can data bind to, and notifies the view of any state changes through change notification events. The properties and commands that the view model provides define the functionality to be offered by the UI, but the view determines how that functionality is to be displayed.

Keep the UI responsive with asynchronous operations.

Multi-platform apps should keep the UI thread unblocked to improve the user's perception of performance. Therefore, in the view model, use asynchronous methods for I/O operations and raise events to asynchronously notify views of property changes.

The view model is also responsible for coordinating the view's interactions with any model classes that are required. There's typically a one-to-many relationship between the view model and the model classes. The view model might choose to expose model classes directly to the view so that controls in the view can data bind directly to them. In this case, the model classes will need to be designed to support data binding and change notification events.

Each view model provides data from a model in a form that the view can easily consume. To accomplish this, the view model sometimes performs data conversion. Placing this data conversion in the view model is a good idea because it provides properties that the view can bind to. For example, the view model might combine the values of two properties to make it easier to display by the view.

Centralize data conversions in a conversion layer.

It's also possible to use converters as a separate data conversion layer that sits between the view model and the view. This can be necessary, for example, when data requires special formatting that the view model doesn't provide.

In order for the view model to participate in two-way data binding with the view, its properties must raise the PropertyChanged event. View models satisfy this requirement by implementing the INotifyPropertyChanged interface, and raising the PropertyChanged event when a property is changed.

For collections, the view-friendly ObservableCollection<T> is provided. This collection implements collection changed notification, relieving the developer from having to implement the INotifyCollectionChanged interface on collections.

Model classes are non-visual classes that encapsulate the app's data. Therefore, the model can be thought of as representing the app's domain model, which usually includes a data model along with business and validation logic. Examples of model objects include data transfer objects (DTOs), Plain Old CLR Objects (POCOs), and generated entity and proxy objects.

Model classes are typically used in conjunction with services or repositories that encapsulate data access and caching.

Connecting view models to views

View models can be connected to views by using the data-binding capabilities of .NET MAUI. There are many approaches that can be used to construct views and view models and associate them at runtime. These approaches fall into two categories, known as view first composition, and view model first composition. Choosing between view first composition and view model first composition is an issue of preference and complexity. However, all approaches share the same aim, which is for the view to have a view model assigned to its BindingContext property.

With view first composition the app is conceptually composed of views that connect to the view models they depend on. The primary benefit of this approach is that it makes it easy to construct loosely coupled, unit testable apps because the view models have no dependence on the views themselves. It's also easy to understand the structure of the app by following its visual structure, rather than having to track code execution to understand how classes are created and associated. In addition, view first construction aligns with the Microsoft Maui's navigation system that's responsible for constructing pages when navigation occurs, which makes a view model first composition complex and misaligned with the platform.

With view model first composition, the app is conceptually composed of view models, with a service responsible for locating the view for a view model. View model first composition feels more natural to some developers, since the view creation can be abstracted away, allowing them to focus on the logical non-UI structure of the app. In addition, it allows view models to be created by other view models. However, this approach is often complex, and it can become difficult to understand how the various parts of the app are created and associated.

Keep view models and views independent.

The binding of views to a property in a data source should be the view's principal dependency on its corresponding view model. Specifically, don't reference view types, such as Button and ListView, from view models. By following the principles outlined here, view models can be tested in isolation, therefore reducing the likelihood of software defects by limiting scope.

The following sections discuss the main approaches to connecting view models to views.

Creating a view model declaratively

The simplest approach is for the view to declaratively instantiate its corresponding view model in XAML. When the view is constructed, the corresponding view model object will also be constructed. This approach is demonstrated in the following code example:

When the ContentPage is created, an instance of the LoginViewModel is automatically constructed and set as the view's BindingContext .

This declarative construction and assignment of the view model by the view has the advantage that it's simple, but has the disadvantage that it requires a default (parameter-less) constructor in the view model.

Creating a view model programmatically

A view can have code in the code-behind file, resulting in the view-model being assigned to its BindingContext property. This is often accomplished in the view's constructor, as shown in the following code example:

The programmatic construction and assignment of the view model within the view's code-behind has the advantage that it's simple. However, the main disadvantage of this approach is that the view needs to provide the view model with any required dependencies. Using a dependency injection container can help to maintain loose coupling between the view and view model. For more information, see Dependency injection .

Updating views in response to changes in the underlying view model or model

All view model and model classes that are accessible to a view should implement the [ INotifyPropertyChanged interface. Implementing this interface in a view model or model class allows the class to provide change notifications to any data-bound controls in the view when the underlying property value changes.

App's should be architected for the correct use of property change notification, by meeting the following requirements:

  • Always raising a PropertyChanged event if a public property's value changes. Do not assume that raising the PropertyChanged event can be ignored because of knowledge of how XAML binding occurs.
  • Always raising a PropertyChanged event for any calculated properties whose values are used by other properties in the view model or model.
  • Always raising the PropertyChanged event at the end of the method that makes a property change, or when the object is known to be in a safe state. Raising the event interrupts the operation by invoking the event's handlers synchronously. If this happens in the middle of an operation, it might expose the object to callback functions when it is in an unsafe, partially updated state. In addition, it's possible for cascading changes to be triggered by PropertyChanged events. Cascading changes generally require updates to be complete before the cascading change is safe to execute.
  • Never raising a PropertyChanged event if the property does not change. This means that you must compare the old and new values before raising the PropertyChanged event.
  • Never raising the PropertyChanged event during a view model's constructor if you are initializing a property. Data-bound controls in the view will not have subscribed to receive change notifications at this point.
  • Never raising more than one PropertyChanged event with the same property name argument within a single synchronous invocation of a public method of a class. For example, given a NumberOfItems property whose backing store is the _numberOfItems field, if a method increments _numberOfItems fifty times during the execution of a loop, it should only raise property change notification on the NumberOfItems property once, after all the work is complete. For asynchronous methods, raise the PropertyChanged event for a given property name in each synchronous segment of an asynchronous continuation chain.

A simple way to provide this functionality would be to create an extension of the BindableObject class. In this example, the ExtendedBindableObject class provides change notifications, which is shown in the following code example:

.NET MAUI's BindableObject class implements the INotifyPropertyChanged interface, and provides an OnPropertyChanged method. The ExtendedBindableObject class provides the RaisePropertyChanged method to invoke property change notification, and in doing so uses the functionality provided by the BindableObject class.

View model classes can then derive from the ExtendedBindableObject class. Therefore, each view model class uses the RaisePropertyChanged method in the ExtendedBindableObject class to provide property change notification. The following code example shows how the eShopOnContainers multi-platform app invokes property change notification by using a lambda expression:

Using a lambda expression in this way involves a small performance cost because the lambda expression has to be evaluated for each call. Although the performance cost is small and would not typically impact an app, the costs can accrue when there are many change notifications. However, the benefit of this approach is that it provides compile-time type safety and refactoring support when renaming properties.

MVVM Frameworks

The MVVM pattern is well established in .NET, and the community has created many frameworks which help ease this development. Each framework provides a different set of features, but it is standard for them to provide a common view model with an implementation of the INotifyPropertyChanged interface. Additional features of MVVM frameworks include custom commands, navigation helpers, dependency injection/service locator components, and UI platform integration. While it is not necessary to use these frameworks, they can speed up and standardize your development. The eShopOnContainers multi-platform app uses the .NET Community MVVM Toolkit . When choosing a framework, you should consider your application's needs and your team's strengths. The list below includes some of the more common MVVM frameworks for .NET MAUI.

  • .NET Community MVVM Toolkit
  • Prism Library

UI interaction using commands and behaviors

In multi-platform apps, actions are typically invoked in response to a user action, such as a button click, that can be implemented by creating an event handler in the code-behind file. However, in the MVVM pattern, the responsibility for implementing the action lies with the view model, and placing code in the code-behind should be avoided.

Commands provide a convenient way to represent actions that can be bound to controls in the UI. They encapsulate the code that implements the action and help to keep it decoupled from its visual representation in the view. This way, your view models become more portable to new platforms, as they do not have a direct dependency on events provided by the platform's UI framework. .NET MAUI includes controls that can be declaratively connected to a command, and these controls will invoke the command when the user interacts with the control.

Behaviors also allow controls to be declaratively connected to a command. However, behaviors can be used to invoke an action that's associated with a range of events raised by a control. Therefore, behaviors address many of the same scenarios as command-enabled controls, while providing a greater degree of flexibility and control. In addition, behaviors can also be used to associate command objects or methods with controls that were not specifically designed to interact with commands.

Implementing commands

View models typically expose public properties, for binding from the view, which implement the ICommand interface. Many .NET MAUI controls and gestures provide a Command property, which can be data bound to an ICommand object provided by the view model. The button control is one of the most commonly used controls, providing a command property that executes when the button is clicked.

While it's possible to expose the actual implementation of the ICommand interface that your view model uses (for example, Command<T> or RelayCommand ), it is recommended to expose your commands publicly as ICommand . This way, if you ever need to change the implementation at a later date, it can easily be swapped out.

The ICommand interface defines an Execute method, which encapsulates the operation itself, a CanExecute method, which indicates whether the command can be invoked, and a CanExecuteChanged event that occurs when changes occur that affect whether the command should execute. In most cases, we will only supply the Execute method for our commands. For a more detailed overview of ICommand , refer to the Commanding documentation for .NET MAUI.

Provided with .NET MAUI are the Command and Command<T> classes that implement the ICommand interface, where T is the type of the arguments to Execute and CanExecute . Command and Command<T> are basic implementations that provide the minimal set of functionality needed for the ICommand interface.

Many MVVM frameworks offer more feature rich implementations of the ICommand interface.

The Command or Command<T> constructor requires an Action callback object that's called when the ICommand.Execute method is invoked. The CanExecute method is an optional constructor parameter, and is a Func that returns a bool.

The eShopOnContainers multi-platform app uses the RelayCommand and AsyncRelayCommand . The primary benefit for modern applications is that the AsyncRelayCommand provides better functionality for asynchronous operations.

The following code shows how a Command instance, which represents a register command, is constructed by specifying a delegate to the Register view model method:

The command is exposed to the view through a property that returns a reference to an ICommand . When the Execute method is called on the Command object, it simply forwards the call to the method in the view model via the delegate that was specified in the Command constructor. An asynchronous method can be invoked by a command by using the async and await keywords when specifying the command's Execute delegate. This indicates that the callback is a Task and should be awaited. For example, the following code shows how an ICommand instance, which represents a sign-in command, is constructed by specifying a delegate to the SignInAsync view model method:

Parameters can be passed to the Execute and CanExecute actions by using the AsyncRelayCommand<T> class to instantiate the command. For example, the following code shows how an AsyncRelayCommand<T> instance is used to indicate that the NavigateAsync method will require an argument of type string:

In both the RelayCommand and RelayCommand<T> classes, the delegate to the CanExecute method in each constructor is optional. If a delegate isn't specified, the Command will return true for CanExecute . However, the view model can indicate a change in the command's CanExecute status by calling the ChangeCanExecute method on the Command object. This causes the CanExecuteChanged event to be raised. Any UI controls bound to the command will then update their enabled status to reflect the availability of the data-bound command.

Invoking commands from a view

The following code example shows how a Grid in the LoginView binds to the RegisterCommand in the LoginViewModel class by using a TapGestureRecognizer instance:

A command parameter can also be optionally defined using the CommandParameter property. The type of the expected argument is specified in the Execute and CanExecute target methods. The TapGestureRecognizer will automatically invoke the target command when the user interacts with the attached control. The CommandParameter , if provided, will be passed as the argument to the command's Execute delegate.

Implementing behaviors

Behaviors allow functionality to be added to UI controls without having to subclass them. Instead, the functionality is implemented in a behavior class and attached to the control as if it was part of the control itself. Behaviors enable you to implement code that you would typically have to write as code-behind, because it directly interacts with the API of the control, in such a way that it can be concisely attached to the control, and packaged for reuse across more than one view or app. In the context of MVVM, behaviors are a useful approach for connecting controls to commands.

A behavior that's attached to a control through attached properties is known as an attached behavior . The behavior can then use the exposed API of the element to which it is attached to add functionality to that control, or other controls, in the visual tree of the view.

A .NET MAUI behavior is a class that derives from the Behavior or Behavior<T> class, where T is the type of the control to which the behavior should apply. These classes provide OnAttachedTo and OnDetachingFrom methods, which should be overridden to provide logic that will be executed when the behavior is attached to and detached from controls.

In the eShopOnContainers multi-platform app, the BindableBehavior<T> class derives from the Behavior<T> class. The purpose of the BindableBehavior<T> class is to provide a base class for .NET MAUI behaviors that require the BindingContext of the behavior to be set to the attached control.

The BindableBehavior<T> class provides an overridable OnAttachedTo method that sets the BindingContext of the behavior, and an overridable OnDetachingFrom method that cleans up the BindingContext .

The eShopOnContainers multi-platform app includes an EventToCommandBehavior class which is provided by the MAUI Community toolkit. EventToCommandBehavior executes a command in response to an event occurring. This class derives from the BaseBehavior<View> class so that the behavior can bind to and execute an ICommand specified by a Command property when the behavior is consumed. The following code example shows the EventToCommandBehavior class:

The OnAttachedTo and OnDetachingFrom methods are used to register and deregister an event handler for the event defined in the EventName property. Then, when the event fires, the OnTriggerHandled method is invoked, which executes the command.

The advantage of using the EventToCommandBehavior to execute a command when an event fires, is that commands can be associated with controls that weren't designed to interact with commands. In addition, this moves event-handling code to view models, where it can be unit tested.

Invoking behaviors from a view

The EventToCommandBehavior is particularly useful for attaching a command to a control that doesn't support commands. For example, the LoginView uses the EventToCommandBehavior to execute the ValidateCommand when the user changes the value of their password, as shown in the following code:

At runtime, the EventToCommandBehavior will respond to interaction with the Entry . When a user types into the Entry field, the TextChanged event will fire, which will execute the ValidateCommand in the LoginViewModel . By default, the event arguments for the event are passed to the command. If needed, the EventArgsConverter property can be used to convert the EventArgs provided by the event into a value that the command expects as input.

For more information about behaviors, see Behaviors on the .NET MAUI Developer Center.

The Model-View-ViewModel (MVVM) pattern helps cleanly separate an application's business and presentation logic from its user interface (UI). Maintaining a clean separation between application logic and the UI helps address numerous development issues and makes an application easier to test, maintain, and evolve. It can also significantly improve code re-use opportunities and allows developers and UI designers to collaborate more easily when developing their respective parts of an app.

Using the MVVM pattern, the UI of the app and the underlying presentation and business logic are separated into three separate classes: the view, which encapsulates the UI and UI logic; the view model, which encapsulates presentation logic and state; and the model, which encapsulates the app's business logic and data.

Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see: https://aka.ms/ContentUserFeedback .

Submit and view feedback for

Additional resources

InvestorsHub Logo

  • Breakout Boards
  • Most Posted
  • Most Followed Members
  • Active Boards
  • My Stocks Activity
  • Ticker Buzz Cloud
  • Commodities
  • Cryptocurrency
  • iHub Newswire
  • All Company News
  • iHub Market News
  • News Scanner
  • Price & News Alerts
  • InvestorsHub Daily
  • Newsletters

Market Data

  • Live Charts
  • Economic Calendar
  • Follow Feed
  • Trader Alerts
  • Price Alerts
  • Market Movers
  • Options Flow
  • Broker Review
  • 888-992-3836
  • Support Email

presentation logic

Subscriptions

presentation logic

Support: 888-992-3836

Copyright © 2023 InvestorsHub Inc.

presentation logic

Re: prototype_101 post# 186492

Wednesday, 04/10/2024 9:21:58 AM

Wednesday, April 10, 2024 9:21:58 AM

 width=

Detailed Quote

Recent lwlg news.

  • Lightwave Logic Secures New Patent for Diamondoid Non-linear Optical Chromophore Patent to Improves Material Robustness • PR Newswire (US) • 04/01/2024 12:31:00 PM
  • Lightwave Logic EO Polymer Achieves World-Class Performance of 400Gbps with Plasmonic Mach Zehnder Modulator • PR Newswire (US) • 03/28/2024 12:31:00 PM
  • Lightwave Logic Demonstrates World-Class 200Gbps Heterogeneous Polymer/Silicon Photonic Modulator Results • PR Newswire (US) • 03/25/2024 12:31:00 PM
  • Lightwave Logic to Host Annual Meeting of Shareholders on May 22, 2024 • PR Newswire (US) • 03/19/2024 12:31:00 PM
  • Lightwave Logic to Participate in Upcoming Investor Conferences • PR Newswire (US) • 03/15/2024 12:31:00 PM
  • Lightwave Logic Provides Fourth Quarter and Fiscal Year 2023 Corporate Update • PR Newswire (US) • 03/01/2024 01:31:00 PM
  • Form 10-K - Annual report [Section 13 and 15(d), not S-K Item 405] • Edgar (US Regulatory) • 02/29/2024 10:09:53 PM
  • Form 4 - Statement of changes in beneficial ownership of securities • Edgar (US Regulatory) • 12/08/2023 09:00:04 PM
  • Form 144 - Report of proposed sale of securities • Edgar (US Regulatory) • 12/07/2023 12:11:28 AM
  • Lightwave Logic Issues Shareholder Letter and Provides Corporate Update • PR Newswire (US) • 12/04/2023 01:31:00 PM
  • Small Cap Recipient of Military Drone Technology • InvestorsHub NewsWire • 11/20/2023 01:14:45 PM
  • Epazz, Inc. (OTC Pink: EPAZ) ZenaDrone Demonstration to Defense Departments of UAE and Saudi Arabia • InvestorsHub NewsWire • 11/15/2023 12:19:31 PM
  • Lightwave Logic Provides Third Quarter 2023 Corporate Update • PR Newswire (US) • 11/10/2023 01:31:00 PM
  • Form 10-Q - Quarterly report [Sections 13 or 15(d)] • Edgar (US Regulatory) • 11/09/2023 09:24:23 PM
  • Lightwave Logic to Participate in Upcoming Investor Conferences • PR Newswire (US) • 11/06/2023 01:31:00 PM
  • Lightwave Logic CEO Dr. Michael Lebby to Present at the Optica Photonic-Enabled Cloud Computing Industry Summit • PR Newswire (US) • 10/12/2023 12:50:00 PM
  • Lightwave Logic Receives 2023 Industry Innovation Award for Hybrid PIC/Optical Integration Platform at the European Conference on Optical Communications • PR Newswire (US) • 10/03/2023 12:31:00 PM
  • Form 8-K - Current report • Edgar (US Regulatory) • 10/02/2023 08:00:08 PM
  • Lightwave Logic to Participate in Upcoming Investor Conferences • PR Newswire (US) • 09/05/2023 12:31:00 PM
  • Lightwave Logic Expands Its Colorado Operations to Support New Commercial Activities • PR Newswire (US) • 08/21/2023 12:31:00 PM
  • Form 3 - Initial statement of beneficial ownership of securities • Edgar (US Regulatory) • 08/10/2023 08:03:22 PM
  • Form 8-K/A - Current report: [Amend] • Edgar (US Regulatory) • 08/10/2023 08:01:26 PM
  • Lightwave Logic Provides Second Quarter 2023 Corporate Update • PR Newswire (US) • 08/10/2023 12:31:00 PM
  • Form 10-Q - Quarterly report [Sections 13 or 15(d)] • Edgar (US Regulatory) • 08/09/2023 08:56:47 PM
  • Form 8-K - Current report • Edgar (US Regulatory) • 07/19/2023 12:42:45 PM

More LWLG News

UC Asset Expected to Report $0.03/share Net Profit for 2023 • UCASU • Apr 11, 2024 10:00 AM

Kona Gold Beverages & Apple Rush Co. Execute Joint Venture & Manufacturing Agreement • APRU • Apr 11, 2024 9:40 AM

VAYK Confirmed Its Eligibility for $1.8 Million Investment through Federal EB5 Program • VAYK • Apr 11, 2024 9:00 AM

ILUS Moves Forward With Its Two Subsidiary Uplists and Equity Dividend • ILUS • Apr 10, 2024 9:36 AM

Quartz Intersects 102m of 2.22 g/t Au and 104 g/t Ag Announces New Discovery at Prodigy on its Maestro Project, British Columbia • QZM • Apr 10, 2024 8:00 AM

Swifty Global Announces Record Annual Results Ahead of National Exchange Reverse Merger • DRCR • Apr 9, 2024 1:55 PM

Chart for the quote

IMAGES

  1. Logic Model Template PowerPoint

    presentation logic

  2. PowerPoint Logic Model Template

    presentation logic

  3. how to use presentation on logic

    presentation logic

  4. Logic Model Keynote Template Designs

    presentation logic

  5. Presentation, logic, and data-centric approaches for expanding (a) the

    presentation logic

  6. Logic Model PowerPoint Templates

    presentation logic

VIDEO

  1. Logic Team Milestone 9 Presentation

  2. logic design project presentation

  3. Logic MIMW Group 5 Presentation

  4. Presentation: NPN as OR Logic circuit

  5. Presentation Video for Digital Logic mini project (Group N)

  6. Satpreet Presentation logic probes

COMMENTS

  1. Presentation logic

    Presentation logic. In software development, presentation logic is concerned with how business objects are displayed to users of the software, e.g. the choice between a pop-up screen and a drop-down menu. [1] The separation of business logic from presentation logic is an important concern for software development and an instance of the ...

  2. What is Presentation Logic? Complete Guide

    Presentation logic is the core of the application. The business logic layer provides a foundation for the user to interact with the application. It also contains all the business rules for the server. By contrast, presentation logic is the underlying code that determines how the data is presented. In contrast to business rules, presentation ...

  3. Presentation Logic

    Presentation logic. An app's presentation logic is where almost all of the interaction with the end-user occurs. It is the part of the application that handles receiving inputs from the end-user and presenting the application's output to the end-user. 2. Application logic. The second function is the core work performed by the application ...

  4. What is "presentation logic" and how much is acceptable in views?

    Presentation logic comprises the logic and calculations that are needed to present the business data in the right way for a particular view. For complex graphical views, this can be quite complex calculations (for example, calculating the size of each pie slice and the positioning of the labels for a pie chart), but the main characteristic is that it only calculates information that is ...

  5. How to Structure Your Presentations Logically

    Ergo . . . . When it comes to creating your presentation, you can use verbal and visual cues to denote logical structure. To help your audience hear your logic, use words and phrases like "first," "second" and "third," "because of A, B and C" or "therefore," "so then," and "it follows.". It may not make for beautiful ...

  6. What Are Effective Presentation Skills (and How to Improve Them)

    Presentation skills are the abilities and qualities necessary for creating and delivering a compelling presentation that effectively communicates information and ideas. They encompass what you say, how you structure it, and the materials you include to support what you say, such as slides, videos, or images. You'll make presentations at various ...

  7. Organizing Presentation Logic

    Separting presentation logic from the View. Although putting all the presentation logic in an Autonomous View is both common and workable, it does come with disadvantages. The most common disadvantage talked about these days with Autonomous View is to do with testing. Testing a presentation through a GUI window is often awkward, and in some cases impossible.

  8. design patterns

    • the presentation logic, which is concerned with handling user interaction and updating the view of the application as presented to the user; • the application logic , which is concerned with the detailed application-specific processing associated with the application (also referred to as the business logic);

  9. Presentation Logic

    This chapter describes how to add logic to the presentation layer, using prebuilt UI component validators (declarative), managed beans (server-side Java code), and custom client-side JavaScript code. Download chapter PDF. As you saw in Chapter 1, ADF handles all the basic functionality of getting data from the database onto the web page ...

  10. How to structure a good PowerPoint Presentation

    Length and Structure. The main part should make up about 70% of the presentation and also include a clear structure. Explain your ideas in detail and build them up logically. It should be organized chronologically, by priority or by topic. There should be a smooth transition between the individual issues.

  11. Separation of Concerns, Business logic vs Presentation logic

    ViewModels. This structure lets you contain presentation logic separate from controllers. It actually is a bit misnamed, since ViewModels, as described in ASP.NET MVC documentation, actually are what classical Views should be. You put the presentation logic in ViewModel instances and use you "views" as templates, which now can contain a little ...

  12. Introduction to Logic

    1.1 Introduction. Hermione Granger got it right when, facing the potion-master's test in Harry Potter, she said: "This isn't magic - it's logic - a puzzle. A lot of the greatest wizards haven't got an ounce of logic; they'd be stuck here forever." In the real world, we are better off. We use Logic in just about everything we do.

  13. How to Structure your Presentation, with Examples

    This clarifies the overall purpose of your talk and reinforces your reason for being there. Follow these steps: Signal that it's nearly the end of your presentation, for example, "As we wrap up/as we wind down the talk…". Restate the topic and purpose of your presentation - "In this speech I wanted to compare…". 5.

  14. PDF BASIC CONCEPTS OF LOGIC

    Inductive logic investigates the process of drawing probable (likely, plausi-ble) though fallible conclusions from premises. Another way of stating this: induc-tive logic investigates arguments in which the truth of the premises makes likely the truth of the conclusion. Inductive logic is a very difficult and intricate subject, partly because the

  15. Guide to Presenting Using the Pyramid Principle

    The conventional method for presenting a PowerPoint presentation entails reflecting upon the facts and fine details to draw the audience towards a conclusion. This can result in a lengthy Q&A session at the end of the presentation, where the audience might appear confused, unsatisfied, and at times, feel manipulated into being led towards a conclusion of the presenter's choosing.

  16. How to Achieve Flow During a Presentation

    Logic. You should be able to explain clearly why on slide follows another, why your three main points are important to the audience, and why you are telling the story. This is as much as matter of logic than creativity. A logic to why you open with a story that leads directly to your first main point is easier for the audience to understand.

  17. PDF Presentation Logic

    • The presentation logic source code is stored in Java bean files Your application will contain many Java files. You declare which ones are part of the presentation layer by defining them as managed beans in your task flows, and then connect them to your user interface components by setting properties of the UI

  18. Introduction to Logic

    If you come up with other ways of presenting the material or additional examples and if you have time, we would appreciate it if you could let us know so that we can incorporate your ideas into future versions. Chapter 1. Introduction. pdf , key , pptx. Chapter 2. Propositional Logic. pdf , key , pptx. Chapter 3. Propositional Analysis.

  19. What Is Three-Tier Architecture?

    Web presentation tiers are developed by using HTML, CSS, and JavaScript. Desktop applications can be written in various languages depending on the platform. Application tier. The application tier, also known as the logic tier or middle tier, is the heart of the application.

  20. Secrets to Creating a Logical Presentation

    Creating a presentation logically means organizing the content in order to maximize audience understanding. Because our brains work in similar ways, there are definitely techniques to build your next presentation to enhance memory and engagement. Step One: Start Visually. Visual learning is one of the best ways to ignite the synapses in brain ...

  21. PDF Propositional Logic

    Propositional Logic Propositional logic is a mathematical system for reasoning about propositions and how they relate to one another. Every statement in propositional logic consists of propositional variables combined via propositional connectives. Each variable represents some proposition, such as "You liked it" or "You should have put a ring on it."

  22. Model-View-ViewModel

    The Model-View-ViewModel (MVVM) pattern helps cleanly separate an application's business and presentation logic from its user interface (UI). Maintaining a clean separation between application logic and the UI helps address numerous development issues and makes an application easier to test, maintain, and evolve.

  23. Logitech Presentation

    Last Update: 2021-11-25. OS: Windows 7, Windows 8, Windows 10, Windows 11. File Size: 17 MB. Software Type: Download Now. Check our Logitech Warranty here. Make the Most of your warranty. FIle a Warranty Claim.

  24. Lightwave Logic Inc (LWLG): The highlight for me in the presentation

    The highlight for me in the presentation was that he stopped and called out the newest 8x10 color glossy of the 200 mm wafers, specifically pointing out these are coming back from a high volume foundry containing our material and modulators. ... Lightwave Logic Receives 2023 Industry Innovation Award for Hybrid PIC/Optical Integration Platform ...