A Smooth Transition to HTML5 Using MVVMChris Bannon
How difficult is it to port Silverlight applications to HTML5? That is the question we hear every day at ComponentOne. Instead of speculating about it, we decided to sit down and try it. Today we will discuss the process and tools we used when doing so. The approach we took was to use the MVVM pattern (from Silverlight) when developing the HTML5/JavaScript version. By choosing this method we were able to port our data access and UI layers quite easily. We take advantage of tools like KnockoutJS and Wijmo to make the process even easier. Our developers were able to minimize the cost of learning new paradigms in this migration by reusing most of their knowledge. What we ended up with was nearly identical applications in Silverlight and HTML5. Come learn how you can smoothly transition to HTML5!
Learn to port desktop applications to HTML5 from an experienced web developer. We'll help you minimize the cost of learning new paradigms when you're migrating from MVVM, .NET and XAML to web.
You'll leave this 60-minute session understanding how to create nearly-identical XAML and HTML5 applications in a smooth transition!
in these slides i have explained the difference between MVC, MVP and MVVM design patterns. slides includes definition, explanation and then implementation with code examples. it is a comparison oriented presentation.
A Smooth Transition to HTML5 Using MVVMChris Bannon
How difficult is it to port Silverlight applications to HTML5? That is the question we hear every day at ComponentOne. Instead of speculating about it, we decided to sit down and try it. Today we will discuss the process and tools we used when doing so. The approach we took was to use the MVVM pattern (from Silverlight) when developing the HTML5/JavaScript version. By choosing this method we were able to port our data access and UI layers quite easily. We take advantage of tools like KnockoutJS and Wijmo to make the process even easier. Our developers were able to minimize the cost of learning new paradigms in this migration by reusing most of their knowledge. What we ended up with was nearly identical applications in Silverlight and HTML5. Come learn how you can smoothly transition to HTML5!
Learn to port desktop applications to HTML5 from an experienced web developer. We'll help you minimize the cost of learning new paradigms when you're migrating from MVVM, .NET and XAML to web.
You'll leave this 60-minute session understanding how to create nearly-identical XAML and HTML5 applications in a smooth transition!
in these slides i have explained the difference between MVC, MVP and MVVM design patterns. slides includes definition, explanation and then implementation with code examples. it is a comparison oriented presentation.
Comparative analysis of java script frameworkNishant Kumar
Comparative Analysis of JavaScript Framework: This slides contains brief about Single Page Architecture and Existing gaps in framework like Angular, Backbone, Knockout.js and proposed solutions.
Inside Wijmo 5, a Large-scale JavaScript ProductChris Bannon
GrapeCity has been developing JavaScript products for over six years. The browser landscape has changed greatly since we started and we have learned a lot along the way. Today, we manage Wijmo 5, a suite of JavaScript UI controls, specializing in a high-performance datagrid and powerful charts. In this session, we will give you a look inside our project. We will go over the collections of tools, frameworks, languages and patterns that we have refined over the years. You walk away from this session with useful tips for managing large-scale JavaScript applications.
General overview of Model View Controller design pattern for software architecture. Gives simple examples and also more complex examples using Spring MVC framework.
Knockout JS is a new JavaScript library that utilizes that MVVM pattern to build rich web applications. In this talk we will introduce Knockout JS as well as the MVVM pattern. This will be a code heavy presentation as we illustrate the various features of the framework. Using Knockout, you can easily build responsive, maintainable and testable JavaScript applications.We'll explore testing in Javascript and look at how you can use Knockout JS with Jasmine, a Javascript BDD library. I'll show you how to build rich JavaScript applications using a Test Driven Development approach. We'll also look into how you can extend Knockout by creating custom bindings and using it side by side with JQuery. Lastly we'll examine how you can interact with Knockout via ASP.NET applications and go over some best practices for validation and storage of data.
Common iOS Architecture: From MVC to VIPER, with ReduxNelson Tai
Common iOS Architecture: From MVC to VIPER, with Redux @ iPlayground 2019
This slide explains how an iOS app is refactoring from MVC to VIPER pattern. It also explains what is Redux pattern and how to adopt this pattern to iOS development.
Comparative analysis of java script frameworkNishant Kumar
Comparative Analysis of JavaScript Framework: This slides contains brief about Single Page Architecture and Existing gaps in framework like Angular, Backbone, Knockout.js and proposed solutions.
Inside Wijmo 5, a Large-scale JavaScript ProductChris Bannon
GrapeCity has been developing JavaScript products for over six years. The browser landscape has changed greatly since we started and we have learned a lot along the way. Today, we manage Wijmo 5, a suite of JavaScript UI controls, specializing in a high-performance datagrid and powerful charts. In this session, we will give you a look inside our project. We will go over the collections of tools, frameworks, languages and patterns that we have refined over the years. You walk away from this session with useful tips for managing large-scale JavaScript applications.
General overview of Model View Controller design pattern for software architecture. Gives simple examples and also more complex examples using Spring MVC framework.
Knockout JS is a new JavaScript library that utilizes that MVVM pattern to build rich web applications. In this talk we will introduce Knockout JS as well as the MVVM pattern. This will be a code heavy presentation as we illustrate the various features of the framework. Using Knockout, you can easily build responsive, maintainable and testable JavaScript applications.We'll explore testing in Javascript and look at how you can use Knockout JS with Jasmine, a Javascript BDD library. I'll show you how to build rich JavaScript applications using a Test Driven Development approach. We'll also look into how you can extend Knockout by creating custom bindings and using it side by side with JQuery. Lastly we'll examine how you can interact with Knockout via ASP.NET applications and go over some best practices for validation and storage of data.
Common iOS Architecture: From MVC to VIPER, with ReduxNelson Tai
Common iOS Architecture: From MVC to VIPER, with Redux @ iPlayground 2019
This slide explains how an iOS app is refactoring from MVC to VIPER pattern. It also explains what is Redux pattern and how to adopt this pattern to iOS development.
Thank God It’s Friday! This week: Minions - Official Trailer 3, Team Canada JO, GoPro: Land, Air and Sea, Volkswagen – Reduce Speed Dial, McDo Philippines, Ben & Jerry’s: Introducing The BRRR-ito!, McDonald’s BagTray, BackMeApp by Always, Salta Beer: Tooth implant, Sharpie – Permanent Record, Gillette Rebuilt With Avengers-Inspired Technology, Kerri Watt – You (Oliver Nelson Remix).
Retrouvez chaque semaine notre sélection des meilleures campagnes publicitaires ainsi que les temps fort du blog Reflet Communication.
www.refletcommunication.com/blog
The Model View ViewModel (MVVM) is an architectural pattern originated by Microsoft as a specialization of the Presentation Model (Martin Fowler). Similar to MVC, MVVM is suitable for client applications (Xaml-based, Xamarin, SPA, ...) because it facilitates a clear separation between the UI and the Business Logic. Examples with WPF, MvvmCross, AngularJs. It also contains solutions for common use cases.
Mobile App Architectures & Coding guidelinesQamar Abbas
Better coding guidelines and application architectures
SOLID principles by Uncle Bob
Model View Controller
Model View Presenter,
Model View ViewModel
Best practices for Android developers
Best practices for iOS developers
Download original slides http://bit.ly/2HNCcMX
How difficult is it to port Flex and Silverlight applications to HTML5? That is the question we hear every day at ComponentOne. Instead of speculating about it, we decided to sit down and try it. Today we will discuss the process and tools we used when doing so. The approach we took was to use the MVVM pattern (from Silverlight) when developing the HTML5/JavaScript version. By choosing this method we were able to port our data access and UI layers quite easily. Our developers were able to minimize the cost of learning new paradigms in this migration by reusing most of their knowledge. What we ended up with was nearly identical applications in Silverlight and HTML5. Come learn how you can smoothly transition to HTML5!
The Model-View-ViewModel pattern was introduced for Windows Presentation Foundation applications (WPF) and later exploded in popularity with the introduction of various frameworks to support development on additional platforms including Silverlight and Windows Phone. The release of KnockoutJS the pattern has extended MVVM to the web and exposed it to the JavaScript stack, while the new Windows 8 Metro platform embraces the same XAML and C#-based technologies that WPF and Silverlight pioneered. In this talk, Jeremy Likness takes a deep dive into the history of the pattern, describes its benefits, and discusses how it relates to modern application development. Is it a bad fit for web applications? Does it belong in the Metro space? Learn the benefits and trade-offs to help decide if this pattern makes sense in your projects moving forward.
Models used in iOS programming, with a focus on MVVMAndrei Popa
I have hopefully tried here to gather some useful stuff about MVVM which is the "proper" way to build a highly decoupled app in iOS today, a model that makes use of ReactiveCocoa as binding solution.
Presented at the 2014 Cow Town Code Camp in Ft. Worth, TX - http://CowTownCodeCamp.com - Blog Post: http://developingux.com/2014/07/23/modern-web-development/
The world is moving towards ASP.NET MVC.. but what about your legacy WebForms development. What are the things you can do today to make your WebForms more testable, reliable and even increase the SEO and usability of your WebForms.
This talk will walk through applying the Model View Presenter pattern to your ASP.NET WebForm applications and introduce you to some additional enhancements that Microsoft has made to WebForms recently to make your site and life that much better!
In this presentation, I presented how to build an angular JS Application with SPA in mind and also make sure you use up all the available concepts to create versatile and creative web application with less boilerplate javascript code.
How to Build Composite Applications with PRISMDataLeader.io
Created by Emil Stoychev (The Silverlight Show) from Bulgaria at my Microsoft "Pre-MIX!!" ROCK! event.
Topics covered include design & technical concepts in PRISM, composite apps vs. monolithic apps, prism is a set of guidelines not a framework.
Technical Concepts:
1. Bootstrapper is responsible for app initialization
2. CAL includes UnityBootstrapper
3. XAML
4. Configure RegionAdapter Mappings
5. Creating the Shell
6. Initializing Modules
7. Windows Presentation Foundation (WPF)
8. Module Options
1. Design Concepts: modularity, dependency injection container, multi-targeting
2. UI Composition: commanding, eventing
3. View Composition = View Injection = View Discovery
Choosing the Right HTML5 Framework to Build your Mobile Web Application White...RapidValue
The mobility sector was mainly dominated by native technologies (Android and iOS applications) until the
rise of HTML5. For a web developer to build mobile applications can be challenging with variety of platforms
to choose from and technologies to learn. HTML is known to be an easy to learn and fast to implement
technology, and has the maximum number of web applications to its credit. However, when HTML5 was
released by the World Wide Web consortium, it came along with an added advantage in the mobility domain
i.e. cross-platform capability with a single code base. The native technologies demand a higher cost to
market, since they consist of SDKs and IDEs, and require a higher learning curve for each device platform.
HTML is a well-known technology to most of the in-house developers and the enterprises can start entering
the mobility sector right away.
HTML5 technology though gaining momentum quickly is still not quite ready to be used for complex web
applications, particularly line-of-business applications. Many frameworks built on HTML and JavaScript are
available to enable easier development. However, the web/desktop applications differ from the mobile
applications. The device capabilities and usability are a major factor while developing a mobile application.
The common questions which most of the enterprises have in mind, before building mobile applications are
which technology framework to choose to build their first mobile app and what factors to consider in making
the right choice.
This paper provides a guide for developers and solution architects to understand the different software
architecture patterns, HTML5 frameworks available to build mobile apps, pros and cons of these application
development frameworks and elements to consider for selecting the right framework, while making a
decision to build mobile web apps.
In this Presentation all type of JS frameworks are discussed and by viewing this you can compare that which is the best JS framework in present time for different different purposes.
iOS & Android Dev in C# & Visual Studio using XamarinNish Anil
Rarely does a developer have the luxury of building mobile apps for a single mobile platform. The fact is, the smartphone and tablet space is dominated by three big platforms: iOS, Android and Windows. Traditionally, this means using each platform's provided technology and SDK, i.e. Objective-C for iOS, Java for Android and .NET for Windows, or choosing a write-once/run-anywhere cross-platform toolkit which provides a lowest-common-denominator experience on all platforms, and prevents developers from going "to the metal" on any given platform to take advantage of the native features that make a mobile platform great.
With Xamarin, however, this limitation does not exist. Not only do you get a single, modern language (C#) and framework (.NET) across all three platforms, but you also get a native experience on each, giving your code direct access to the underlying SDK and device metal, including platform-specific UI and device capabilities, so that you can deliver a truly amazing native experience on every platform you target.
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
4. The MVVM Pattern
• Model-View View-Model
• Software architectural design pattern
• Emerged in the 2005 timeframe to support the declarative data binding features of
WPF / XAML
5. Benefits
• Developer/Designer Collaboration without Conflict - Since the UI is void of any
non-visual code such as business logic, the team’s designer can confidently work
on modifying the code without worrying about breaking the programmer’s code.
• Testable Code - Decoupling the view from the view model enables us to write
clean unit tests.
• Code Maintainability - Testable, decoupled code is easier to maintain. A bug can
be found much more easily if there is only one place to inspect.
10. Introducing KnockoutJS
• Knockout is an open source JavaScript library that enables MVVM applications by
implementing binding
• Properties in the Model classes are of type ko.observable
• Observables in JavaScript notify subscribers of property changes
• Supports all major browsers
6+ 2+
11. Comparing JavaScript to WPF
Runtime
CLR - XAML Binding
Business Logic
C#
Presentation
XAML
Window
Runtime
Browser - Knockout
Business Logic
JS
Presentation
HTML
Page
12. Step 1: Reference KO in the View
<script type="text/javascript" src="../scripts/ko/knockout-
2.1.0.js"></script>
13. Step 2: Associate the View Model with the View
<script>
$(document).ready(function () {
// Instantiate the CustomerViewModel model and apply bindings
var customerViewModel = new CustomerViewModel();
ko.applyBindings(customerViewModel);});
</script>
15. Understanding Bindings
• Bindings are declared in the visual element mark-up by using the data-bind
attribute.
• These bindings are associated with view model properties that are known as
observables.
• Observables are properties that will automatically issue notifications whenever
their value changes.
function CustomerViewModel() {
var self = this;
// Properties
self.customers = ko.observableArray();
16. Knockout Bindings
• foreach: Lets you iterate through a loop and apply the same markup to each item
in the list. This is used to render the to-do lists and to-do items. Within the
foreach, the bindings are applied to the elements of the list.
• visible: Used to toggle visibility. Hide markup when a collection is empty, or make
the error message visible.
• value: Used to populate form values.
• click: Binds a click event to a function on the view model.
17. Knockout & jQuery
• Not a jQuery competitor, Knockout solves a different problem!
• Will work together!
21. Cross-Platform Web
Development
Build standards-based, touch-enabled HTML5 & jQuery experiences for desktop, tablet &
mobile delivery, including multi-device targeting with frameworks like PhoneGap and MVC.
• HTML5, CSS3, jQuery based toolkit
• Pure Client-Side Performance
• jQuery Core + jQuery Mobile Library
• Theme Roller + CSS3 Support
• Touch Everywhere
• Support for MVC2, MVC3, MVC4
KnockOutJS
• Flat, Hierachical, OLAP Pivot Grids
• High performance charting controls
• Geospatial mapping
• Mobile UI controls, Adaptive CSS