SlideShare a Scribd company logo
1 of 7
Download to read offline
Architecting Your App in Ext JS 4, Part 1                                                           Search



                      16          Tw eet   16        Like   7
                                                                                                                         3 Comments

               Published Jun 21, 2011 | Tommy Maintz | Tutorial | Easy                                                   Ext JS, v4.x
               Last Updated Aug 10, 2011
                                                                                                                         RSS | Responses
               This Tutorial is most relevant to Ext JS, 4.x.

               The scalability, maintainability and flexibility of an application is mostly determined by the       Community
               quality of the applicationā€™s architecture. Unfortunately, itā€™s often treated as an afterthought.        Tw itter         Facebook
               Proofs of concept and prototypes turn into massive applications, and example code is                    Tum blr          LinkedIn
               copied and pasted into the foundations of many applications. You may be tempted to do this              RSS Feed         Vim eo
               because of the quick progress that you see at the start of a project.

               However, the time saved will be relatively low compared to the time spent on having to
                                                                                                                  Related Posts
               maintain, scale and often refactor your application later in the project. One way to better
                                                                                                                  The Sencha Class System
               prepare for writing a solid architecture is to follow certain conventions and define application     Nov 29
               views, models, stores and controllers before actually implementing them. In this article, weā€™ll
                                                                                                                  Architecting Your App in Ext
               take a look at a popular application and discuss how we might architect the user interface to        JS 4, Part 3 Sep 19
               create a solid foundation.
                                                                                                                  Ext Designer 1.2 Overview
               Code Organization                                                                                    Aug 4

                                                                                                                  Any ideas?
               Application architecture is as much
                                                                                                                  If you have any ideas to
               about providing structure and
                                                                                                                  improve this article, please
               consistency as it is about actual classes                                                          let us know
               and framework code. Building a good
               architecture unlocks a number of
               important benefits:

                    Every application works the same
                    way so you only have to learn it
                    once
                    Itā€™s easy to share code between
                    apps because they all work the
                    same way
                    You can use Ext JS build tools to
                    create optimized versions of your
                    applications for production use

               In Ext JS 4, we have defined
               conventions that you should consider
               following when building your
               applications ā€” most notably a unified
               directory structure. This simple structure
               places all classes into the app folder,
               which in turn contains sub-folders to

www.sencha.com/learn/architecting-your-app-in-ext-js-4-part-1/                                                                                     1/7
namespace your models, views, controllers and stores.

               While Ext JS 4 offers best practices on how to structure your application, thereā€™s room to
               modify our suggested conventions for naming your files and classes. For example, you might
               decide that in your project you want to add a suffix to your controllers with ā€œController,ā€ e.g.
               ā€œUsersā€ becomes ā€œUsersController.ā€ In this case, remember to always add a suffix to both the
               controller file and class. The important thing is that you define these conventions before you
               start writing your application and consistently follow them. Finally, while you can call your
               classes whatever you want, we strongly suggest following our convention for the names and
               structure of folders (controller, model, store, view). This will ensure that you get an optimized
               build using our SDK Tools beta.

               Striking a Balance
               Views
               Splitting up the applicationā€™s UI into views is a good place to start. Often, you are provided
               with wireframes and UI mockups created by designers. Imagine we are asked to rebuild the
               (very attractive) Pandora application using Ext JS, and are given the following mockup by our
               UI Designer.




               What we want to achieve is a balance between the views being too granular and too generic.
               Letā€™s start by seeing what happens if we divide our UI into too many views.




www.sencha.com/learn/architecting-your-app-in-ext-js-4-part-1/                                                     2/7
Splitting up the UI into too many small views will make it difficult to manage, reference and
               control the views in our controllers. Also, since every view will be in its own file, creating too
               many views might make it hard to locate the view file where a piece of the UI or view logic is
               defined.

               On the other hand, we donā€™t want our views to be too generic because it will impact our
               flexibility to change things.




               In this scenario, each one of our views has been overly simplified. When several parts of a
               view require custom view-logic, the view class will end up having too many responsibilities,
               resulting in the view class becoming harder to maintain. In addition, when the designers
               change their mind about the arrangement of the UI, we will end up having to refactor our view
               definition and view logic; which can get tedious.

               The right balance is achieved when we can easily rearrange the views on the page without
www.sencha.com/learn/architecting-your-app-in-ext-js-4-part-1/                                                      3/7
having to refactor them every time. For example, we want to make the Ad a separate view,
               so we can easily move it around or even remove it later.




               In this version, weā€™ve separated our UI by the roles of each view. Once you have a general
               idea of the views that will make up your UI, you can still tweak the granularity when youā€™re
               actually implementing them. Sometimes you may find that two views should really become
               one, or a view is too generic and should be split into multiple views, but it helps to start out
               with a good base. I think weā€™ve done that here.

               Models
               Now that we have the basic structure of our views in place, itā€™s time to look at the models. By
               looking at the types of dynamic data in our UI, we can get an idea of the different models
               needed for our application.




               Weā€™ve decided to use only two models ā€” Song and Station. We could have defined two
www.sencha.com/learn/architecting-your-app-in-ext-js-4-part-1/                                                    4/7
more models called Artist and Album. However, just as with views, we donā€™t want to be too
               granular when defining our models. In this case, we donā€™t have to separate artist and album
               information because the app doesnā€™t allow the user to select a specific song by a given
               artist. Instead, the data is organized by station, the song is the center point, and the artist and
               album are properties of the song. That means weā€™re able to combine the song, artist and
               album data into one model. This greatly simplifies the data side of our app. It also simplifies
               the API that we have to implement on the server-side because we donā€™t have to load
               individual artists or albums. To summarize, for this example, weā€™ll only have two models ā€”
               Song and Station.

               Stores
               Now that weā€™ve thought about the models our application will use, lets do the same for stores.




               Figuring out the different stores you need is often relatively easy. A good strategy is to
               determine all the data bound components on the page. In this case, we have a list with all of
               the userā€™s favorite stations, a scroller with the recently played songs, and a search field that
               will display search results. Each of these views will need to be bound to stores.

               Controllers
               There are several ways you can distribute the applicationā€™s responsibilities across your
               applicationā€™s controllers. Letā€™s start by thinking about the different controllers we need in this
               example.




www.sencha.com/learn/architecting-your-app-in-ext-js-4-part-1/                                                       5/7
Here we have two basic controllers ā€” a SongController and a StationController. Ext JS 4
               allows you to have one controller that can control several views at the same time. Our
               StationController will handle the logic for both creating new stations as well as loading the
               userā€™s favorite stations into the StationsList view. The SongController will take care of
               managing the SongInfo view and RecentSong store as well as the userā€™s actions of liking,
               disliking, pausing and skipping songs. Controllers can interact with each other by firing and
               listening for application events. While we could have created additional Controllers, one for
               managing playback and another for searching stations, I think weā€™ve found a good
               separation of responsibilities.

               Measure Twice , Cut Once
               I hope that sharing our thoughts on the importance of planning your application architecture
               prior to writing code was helpful. We find that talking through the details of the application
               helps you to build a much more flexible and maintainable architecture.

               Continue on to Architecting Your App in Ext JS 4, Part 2


               Share this post:                                                                                 Leave a reply

               Written by Tommy Maintz
               Tommy Maintz is the original lead of Sencha Touch. With extensive knowledge of Object Oriented JavaScript
               and mobile browser idiosyncracies, he pushes the boundaries of what is possible within mobile browsers.
               Tommy brings a unique view point and an ambitious philosophy to creating engaging user interfaces. His
               attention to detail drives his desire to make the perfect framework for developers to enjoy.
               Follow Tommy on Twitter

              0 Comments

                 K Ramesh Babu                                                                                12 months ago
                             What is the motivation behind the ā€˜storesā€™ concept? Should we call this
                             paradigm MVCS rather than MVC?



                 Ali                                                                                          11 months ago
                             Isnā€™t a store part of the model? At least, thatā€™s how MVC sees it. Also donā€™t
                             understand the reason for a clientside ā€œcontrollerā€. Should that contain all

www.sencha.com/learn/architecting-your-app-in-ext-js-4-part-1/                                                                  6/7
clientside handlers, and then redirect to the serverside MVC controller?
                            Would like to see this more detailed..



                 Ed Spencer Sencha Employee                                                               11 months ago
                            Stores are really nothing more than a glorified array of Model *instances*.
                            Theyā€™re mostly used in our data-bound components like grids. We could
                            just use an array but the Store gives all kinds of benefits like sorting,
                            filtering and firing events whenever Model instances are added, removed or
                            updated, which makes acting on those changes much easier

               Commenting is not available in this channel entry.




            Find Sencha developers at SenchaDevs                                                                          Ā© 2012 Sencha Inc. All rights
                                                                                                                          reserved.




www.sencha.com/learn/architecting-your-app-in-ext-js-4-part-1/                                                                                            7/7

More Related Content

What's hot

Top 10 Front End Development Technologies to Focus in 2018
Top 10 Front End Development Technologies to Focus in 2018Top 10 Front End Development Technologies to Focus in 2018
Top 10 Front End Development Technologies to Focus in 2018Helios Solutions
Ā 
Spring Tools 4 - Eclipse and Beyond
Spring Tools 4 - Eclipse and BeyondSpring Tools 4 - Eclipse and Beyond
Spring Tools 4 - Eclipse and BeyondVMware Tanzu
Ā 
angular js and node js training in hyderabad
angular js and node js training in hyderabadangular js and node js training in hyderabad
angular js and node js training in hyderabadphp2ranjan
Ā 
Which is Best for Web Application Developmentā€”Dot Net, PHP, Python, Ruby, or...
 Which is Best for Web Application Developmentā€”Dot Net, PHP, Python, Ruby, or... Which is Best for Web Application Developmentā€”Dot Net, PHP, Python, Ruby, or...
Which is Best for Web Application Developmentā€”Dot Net, PHP, Python, Ruby, or...Simpliv LLC
Ā 
Angular 6 Training with project in hyderabad india
Angular 6 Training with project in hyderabad indiaAngular 6 Training with project in hyderabad india
Angular 6 Training with project in hyderabad indiaphp2ranjan
Ā 
Angular.js vs. vue.js ā€“ which one is the better choice in 2022
Angular.js vs. vue.js ā€“ which one is the better choice in 2022 Angular.js vs. vue.js ā€“ which one is the better choice in 2022
Angular.js vs. vue.js ā€“ which one is the better choice in 2022 Moon Technolabs Pvt. Ltd.
Ā 
Php Framework
Php FrameworkPhp Framework
Php Frameworkcncwebworld
Ā 
Java vs python comparison which programming language is right for my business
Java vs python comparison  which programming language is right for my business Java vs python comparison  which programming language is right for my business
Java vs python comparison which programming language is right for my business Katy Slemon
Ā 
Adobe CQ at LinkedIn Meetup February 2014
Adobe CQ at LinkedIn Meetup February 2014Adobe CQ at LinkedIn Meetup February 2014
Adobe CQ at LinkedIn Meetup February 2014nyolles
Ā 
What do you need to know about g rpc on .net
What do you need to know about g rpc on .net What do you need to know about g rpc on .net
What do you need to know about g rpc on .net Moon Technolabs Pvt. Ltd.
Ā 
MVC 3.0 KU Day 1 v 1.1
MVC 3.0 KU Day 1 v 1.1MVC 3.0 KU Day 1 v 1.1
MVC 3.0 KU Day 1 v 1.1Lek Pongpatimet
Ā 
Top 6 leading PHP frameworks for web development
Top 6 leading PHP frameworks for web developmentTop 6 leading PHP frameworks for web development
Top 6 leading PHP frameworks for web developmentAppfinz Technologies
Ā 
Java Development Company | Xicom
Java Development Company | XicomJava Development Company | Xicom
Java Development Company | XicomRyanForeman5
Ā 
JavaScript & Enterprise BED-Con 2014 Berlin German
JavaScript & Enterprise BED-Con 2014 Berlin GermanJavaScript & Enterprise BED-Con 2014 Berlin German
JavaScript & Enterprise BED-Con 2014 Berlin GermanAdam Boczek
Ā 
PRG/420 ENTIRE CLASS UOP TUTORIALS
PRG/420 ENTIRE CLASS UOP TUTORIALSPRG/420 ENTIRE CLASS UOP TUTORIALS
PRG/420 ENTIRE CLASS UOP TUTORIALSSharon Reynolds
Ā 

What's hot (19)

Top 10 Front End Development Technologies to Focus in 2018
Top 10 Front End Development Technologies to Focus in 2018Top 10 Front End Development Technologies to Focus in 2018
Top 10 Front End Development Technologies to Focus in 2018
Ā 
Training report
Training reportTraining report
Training report
Ā 
Spring Tools 4 - Eclipse and Beyond
Spring Tools 4 - Eclipse and BeyondSpring Tools 4 - Eclipse and Beyond
Spring Tools 4 - Eclipse and Beyond
Ā 
angular js and node js training in hyderabad
angular js and node js training in hyderabadangular js and node js training in hyderabad
angular js and node js training in hyderabad
Ā 
Which is Best for Web Application Developmentā€”Dot Net, PHP, Python, Ruby, or...
 Which is Best for Web Application Developmentā€”Dot Net, PHP, Python, Ruby, or... Which is Best for Web Application Developmentā€”Dot Net, PHP, Python, Ruby, or...
Which is Best for Web Application Developmentā€”Dot Net, PHP, Python, Ruby, or...
Ā 
Dtacs
DtacsDtacs
Dtacs
Ā 
Angular 6 Training with project in hyderabad india
Angular 6 Training with project in hyderabad indiaAngular 6 Training with project in hyderabad india
Angular 6 Training with project in hyderabad india
Ā 
Angular.js vs. vue.js ā€“ which one is the better choice in 2022
Angular.js vs. vue.js ā€“ which one is the better choice in 2022 Angular.js vs. vue.js ā€“ which one is the better choice in 2022
Angular.js vs. vue.js ā€“ which one is the better choice in 2022
Ā 
Php Framework
Php FrameworkPhp Framework
Php Framework
Ā 
Top 5 advanced php framework in 2018
Top 5 advanced php framework in 2018Top 5 advanced php framework in 2018
Top 5 advanced php framework in 2018
Ā 
Best PHP Frameworks
Best PHP FrameworksBest PHP Frameworks
Best PHP Frameworks
Ā 
Java vs python comparison which programming language is right for my business
Java vs python comparison  which programming language is right for my business Java vs python comparison  which programming language is right for my business
Java vs python comparison which programming language is right for my business
Ā 
Adobe CQ at LinkedIn Meetup February 2014
Adobe CQ at LinkedIn Meetup February 2014Adobe CQ at LinkedIn Meetup February 2014
Adobe CQ at LinkedIn Meetup February 2014
Ā 
What do you need to know about g rpc on .net
What do you need to know about g rpc on .net What do you need to know about g rpc on .net
What do you need to know about g rpc on .net
Ā 
MVC 3.0 KU Day 1 v 1.1
MVC 3.0 KU Day 1 v 1.1MVC 3.0 KU Day 1 v 1.1
MVC 3.0 KU Day 1 v 1.1
Ā 
Top 6 leading PHP frameworks for web development
Top 6 leading PHP frameworks for web developmentTop 6 leading PHP frameworks for web development
Top 6 leading PHP frameworks for web development
Ā 
Java Development Company | Xicom
Java Development Company | XicomJava Development Company | Xicom
Java Development Company | Xicom
Ā 
JavaScript & Enterprise BED-Con 2014 Berlin German
JavaScript & Enterprise BED-Con 2014 Berlin GermanJavaScript & Enterprise BED-Con 2014 Berlin German
JavaScript & Enterprise BED-Con 2014 Berlin German
Ā 
PRG/420 ENTIRE CLASS UOP TUTORIALS
PRG/420 ENTIRE CLASS UOP TUTORIALSPRG/420 ENTIRE CLASS UOP TUTORIALS
PRG/420 ENTIRE CLASS UOP TUTORIALS
Ā 

Viewers also liked

A wise builder
A wise builderA wise builder
A wise builderAdrian Buban
Ā 
Gran excursiĆ³n a acapulco 3 dias
Gran excursiĆ³n a acapulco 3 diasGran excursiĆ³n a acapulco 3 dias
Gran excursiĆ³n a acapulco 3 diasCplaza21
Ā 
трŠøŠŗŠø рŠ°Š·Ń€Š°Š±Š¾Ń‚чŠøŠŗŠ° Š¼Š¾Š±ŠøŠ»ŃŒŠ½Ń‹Ń… ŠøŠ³Ń€
трŠøŠŗŠø рŠ°Š·Ń€Š°Š±Š¾Ń‚чŠøŠŗŠ° Š¼Š¾Š±ŠøŠ»ŃŒŠ½Ń‹Ń… ŠøŠ³Ń€Ń‚Ń€ŠøŠŗŠø рŠ°Š·Ń€Š°Š±Š¾Ń‚чŠøŠŗŠ° Š¼Š¾Š±ŠøŠ»ŃŒŠ½Ń‹Ń… ŠøŠ³Ń€
трŠøŠŗŠø рŠ°Š·Ń€Š°Š±Š¾Ń‚чŠøŠŗŠ° Š¼Š¾Š±ŠøŠ»ŃŒŠ½Ń‹Ń… ŠøŠ³Ń€Alexander Degtyarev
Ā 
Hasil Sementara PPDB SMAN 1 Randublatung
Hasil Sementara PPDB SMAN 1 RandublatungHasil Sementara PPDB SMAN 1 Randublatung
Hasil Sementara PPDB SMAN 1 RandublatungRaden Asmoro
Ā 
ą¹ąø›ąø„ą¹‚ąø”ąø¢ąøžąø¢ąø±ąøąøŠąø™ąø°ą¹€ąø£ąø·ą¹ˆąø­ąø‡ąøžąø£ąø²ąø«ąø”ąø“ą¹ŒąøŠąø·ą¹ˆąø­ąø§ą¹ˆąø²ąøˆąø¹ą¹€ąø¬ąøąøŖąø²ąøŽąøą¹”
ą¹ąø›ąø„ą¹‚ąø”ąø¢ąøžąø¢ąø±ąøąøŠąø™ąø°ą¹€ąø£ąø·ą¹ˆąø­ąø‡ąøžąø£ąø²ąø«ąø”ąø“ą¹ŒąøŠąø·ą¹ˆąø­ąø§ą¹ˆąø²ąøˆąø¹ą¹€ąø¬ąøąøŖąø²ąøŽąøą¹”ą¹ąø›ąø„ą¹‚ąø”ąø¢ąøžąø¢ąø±ąøąøŠąø™ąø°ą¹€ąø£ąø·ą¹ˆąø­ąø‡ąøžąø£ąø²ąø«ąø”ąø“ą¹ŒąøŠąø·ą¹ˆąø­ąø§ą¹ˆąø²ąøˆąø¹ą¹€ąø¬ąøąøŖąø²ąøŽąøą¹”
ą¹ąø›ąø„ą¹‚ąø”ąø¢ąøžąø¢ąø±ąøąøŠąø™ąø°ą¹€ąø£ąø·ą¹ˆąø­ąø‡ąøžąø£ąø²ąø«ąø”ąø“ą¹ŒąøŠąø·ą¹ˆąø­ąø§ą¹ˆąø²ąøˆąø¹ą¹€ąø¬ąøąøŖąø²ąøŽąøą¹”ąø§ąø±ąø”ąø”ąø­ąø™ąø—ąø­ąø‡ ąøąø²ąø¬ąøŖąø“ąø™ąø˜ąøøą¹Œ
Ā 
The benefits of a small church
The benefits of a small churchThe benefits of a small church
The benefits of a small churchAdrian Buban
Ā 
Christian lifestyle
Christian lifestyleChristian lifestyle
Christian lifestyleAdrian Buban
Ā 
ąøąø²ąø£ą¹€ąø„ąø·ąø­ąøąø‹ąø·ą¹‰ąø­ąøąø„ą¹‰ąø­ąø‡ąø§ąø‡ąøˆąø£ąø›ąø“ąø”
ąøąø²ąø£ą¹€ąø„ąø·ąø­ąøąø‹ąø·ą¹‰ąø­ąøąø„ą¹‰ąø­ąø‡ąø§ąø‡ąøˆąø£ąø›ąø“ąø”ąøąø²ąø£ą¹€ąø„ąø·ąø­ąøąø‹ąø·ą¹‰ąø­ąøąø„ą¹‰ąø­ąø‡ąø§ąø‡ąøˆąø£ąø›ąø“ąø”
ąøąø²ąø£ą¹€ąø„ąø·ąø­ąøąø‹ąø·ą¹‰ąø­ąøąø„ą¹‰ąø­ąø‡ąø§ąø‡ąøˆąø£ąø›ąø“ąø”Avtech Thai
Ā 
Three dangerous sins
Three dangerous sinsThree dangerous sins
Three dangerous sinsAdrian Buban
Ā 
Architecting your app in ext js 4, part 2 learn sencha
Architecting your app in ext js 4, part 2   learn   senchaArchitecting your app in ext js 4, part 2   learn   sencha
Architecting your app in ext js 4, part 2 learn senchaRahul Kumar
Ā 
United Arab Emirates
United Arab EmiratesUnited Arab Emirates
United Arab EmiratesOksana Lomaga
Ā 
Abf medborgarlon-150506023929-conversion-gate01
Abf medborgarlon-150506023929-conversion-gate01Abf medborgarlon-150506023929-conversion-gate01
Abf medborgarlon-150506023929-conversion-gate01Pierre Ringborg
Ā 
He was abandon
He was abandonHe was abandon
He was abandonAdrian Buban
Ā 
PresentaciĆ³n corporativa INSTALA Vidrio y Aluminio MĆ©xico (2016)
PresentaciĆ³n corporativa INSTALA Vidrio y Aluminio MĆ©xico (2016) PresentaciĆ³n corporativa INSTALA Vidrio y Aluminio MĆ©xico (2016)
PresentaciĆ³n corporativa INSTALA Vidrio y Aluminio MĆ©xico (2016) William GOURG
Ā 
ą¹ąø›ąø„ą¹‚ąø”ąø¢ąøžąø¢ąø±ąøąøŠąø™ąø°ą¹€ąø£ąø·ą¹ˆąø­ąø‡ąøžąø£ąø²ąø«ąø”ąø“ą¹ŒąøŠąø·ą¹ˆąø­ąø§ą¹ˆąø² ąøˆąø¹ą¹€ąø¬ąøąøŖąø²ąøŽąø
ą¹ąø›ąø„ą¹‚ąø”ąø¢ąøžąø¢ąø±ąøąøŠąø™ąø°ą¹€ąø£ąø·ą¹ˆąø­ąø‡ąøžąø£ąø²ąø«ąø”ąø“ą¹ŒąøŠąø·ą¹ˆąø­ąø§ą¹ˆąø² ąøˆąø¹ą¹€ąø¬ąøąøŖąø²ąøŽąøą¹ąø›ąø„ą¹‚ąø”ąø¢ąøžąø¢ąø±ąøąøŠąø™ąø°ą¹€ąø£ąø·ą¹ˆąø­ąø‡ąøžąø£ąø²ąø«ąø”ąø“ą¹ŒąøŠąø·ą¹ˆąø­ąø§ą¹ˆąø² ąøˆąø¹ą¹€ąø¬ąøąøŖąø²ąøŽąø
ą¹ąø›ąø„ą¹‚ąø”ąø¢ąøžąø¢ąø±ąøąøŠąø™ąø°ą¹€ąø£ąø·ą¹ˆąø­ąø‡ąøžąø£ąø²ąø«ąø”ąø“ą¹ŒąøŠąø·ą¹ˆąø­ąø§ą¹ˆąø² ąøˆąø¹ą¹€ąø¬ąøąøŖąø²ąøŽąøąø§ąø±ąø”ąø”ąø­ąø™ąø—ąø­ąø‡ ąøąø²ąø¬ąøŖąø“ąø™ąø˜ąøøą¹Œ
Ā 

Viewers also liked (20)

Grƶn ekonomi 4
Grƶn ekonomi 4Grƶn ekonomi 4
Grƶn ekonomi 4
Ā 
A wise builder
A wise builderA wise builder
A wise builder
Ā 
Gran excursiĆ³n a acapulco 3 dias
Gran excursiĆ³n a acapulco 3 diasGran excursiĆ³n a acapulco 3 dias
Gran excursiĆ³n a acapulco 3 dias
Ā 
Chapt 5
Chapt 5Chapt 5
Chapt 5
Ā 
трŠøŠŗŠø рŠ°Š·Ń€Š°Š±Š¾Ń‚чŠøŠŗŠ° Š¼Š¾Š±ŠøŠ»ŃŒŠ½Ń‹Ń… ŠøŠ³Ń€
трŠøŠŗŠø рŠ°Š·Ń€Š°Š±Š¾Ń‚чŠøŠŗŠ° Š¼Š¾Š±ŠøŠ»ŃŒŠ½Ń‹Ń… ŠøŠ³Ń€Ń‚Ń€ŠøŠŗŠø рŠ°Š·Ń€Š°Š±Š¾Ń‚чŠøŠŗŠ° Š¼Š¾Š±ŠøŠ»ŃŒŠ½Ń‹Ń… ŠøŠ³Ń€
трŠøŠŗŠø рŠ°Š·Ń€Š°Š±Š¾Ń‚чŠøŠŗŠ° Š¼Š¾Š±ŠøŠ»ŃŒŠ½Ń‹Ń… ŠøŠ³Ń€
Ā 
Hasil Sementara PPDB SMAN 1 Randublatung
Hasil Sementara PPDB SMAN 1 RandublatungHasil Sementara PPDB SMAN 1 Randublatung
Hasil Sementara PPDB SMAN 1 Randublatung
Ā 
ą¹ąø›ąø„ą¹‚ąø”ąø¢ąøžąø¢ąø±ąøąøŠąø™ąø°ą¹€ąø£ąø·ą¹ˆąø­ąø‡ąøžąø£ąø²ąø«ąø”ąø“ą¹ŒąøŠąø·ą¹ˆąø­ąø§ą¹ˆąø²ąøˆąø¹ą¹€ąø¬ąøąøŖąø²ąøŽąøą¹”
ą¹ąø›ąø„ą¹‚ąø”ąø¢ąøžąø¢ąø±ąøąøŠąø™ąø°ą¹€ąø£ąø·ą¹ˆąø­ąø‡ąøžąø£ąø²ąø«ąø”ąø“ą¹ŒąøŠąø·ą¹ˆąø­ąø§ą¹ˆąø²ąøˆąø¹ą¹€ąø¬ąøąøŖąø²ąøŽąøą¹”ą¹ąø›ąø„ą¹‚ąø”ąø¢ąøžąø¢ąø±ąøąøŠąø™ąø°ą¹€ąø£ąø·ą¹ˆąø­ąø‡ąøžąø£ąø²ąø«ąø”ąø“ą¹ŒąøŠąø·ą¹ˆąø­ąø§ą¹ˆąø²ąøˆąø¹ą¹€ąø¬ąøąøŖąø²ąøŽąøą¹”
ą¹ąø›ąø„ą¹‚ąø”ąø¢ąøžąø¢ąø±ąøąøŠąø™ąø°ą¹€ąø£ąø·ą¹ˆąø­ąø‡ąøžąø£ąø²ąø«ąø”ąø“ą¹ŒąøŠąø·ą¹ˆąø­ąø§ą¹ˆąø²ąøˆąø¹ą¹€ąø¬ąøąøŖąø²ąøŽąøą¹”
Ā 
The benefits of a small church
The benefits of a small churchThe benefits of a small church
The benefits of a small church
Ā 
Christian lifestyle
Christian lifestyleChristian lifestyle
Christian lifestyle
Ā 
ąø«ąø„ąø±ąøąøąø²ąø£ąøŖąø±ąø”ąøžąø±ąø™ąø˜ą¹Œąøšąø—ąø•ąø•ąø“ąø¢ąø²ąø§ąø“ąø ąø±ąø•ąø•ąø“
ąø«ąø„ąø±ąøąøąø²ąø£ąøŖąø±ąø”ąøžąø±ąø™ąø˜ą¹Œąøšąø—ąø•ąø•ąø“ąø¢ąø²ąø§ąø“ąø ąø±ąø•ąø•ąø“ąø«ąø„ąø±ąøąøąø²ąø£ąøŖąø±ąø”ąøžąø±ąø™ąø˜ą¹Œąøšąø—ąø•ąø•ąø“ąø¢ąø²ąø§ąø“ąø ąø±ąø•ąø•ąø“
ąø«ąø„ąø±ąøąøąø²ąø£ąøŖąø±ąø”ąøžąø±ąø™ąø˜ą¹Œąøšąø—ąø•ąø•ąø“ąø¢ąø²ąø§ąø“ąø ąø±ąø•ąø•ąø“
Ā 
ąøšąø—ąø—ąøµą¹ˆ ą¹” ąøŖąø±ąø”ąøžąø±ąø™ąø˜ą¹Œą¹€ąøšą¹‡ąø”ą¹€ąø•ąø„ą¹‡ąø”
ąøšąø—ąø—ąøµą¹ˆ ą¹” ąøŖąø±ąø”ąøžąø±ąø™ąø˜ą¹Œą¹€ąøšą¹‡ąø”ą¹€ąø•ąø„ą¹‡ąø”ąøšąø—ąø—ąøµą¹ˆ ą¹” ąøŖąø±ąø”ąøžąø±ąø™ąø˜ą¹Œą¹€ąøšą¹‡ąø”ą¹€ąø•ąø„ą¹‡ąø”
ąøšąø—ąø—ąøµą¹ˆ ą¹” ąøŖąø±ąø”ąøžąø±ąø™ąø˜ą¹Œą¹€ąøšą¹‡ąø”ą¹€ąø•ąø„ą¹‡ąø”
Ā 
ąøąø²ąø£ą¹€ąø„ąø·ąø­ąøąø‹ąø·ą¹‰ąø­ąøąø„ą¹‰ąø­ąø‡ąø§ąø‡ąøˆąø£ąø›ąø“ąø”
ąøąø²ąø£ą¹€ąø„ąø·ąø­ąøąø‹ąø·ą¹‰ąø­ąøąø„ą¹‰ąø­ąø‡ąø§ąø‡ąøˆąø£ąø›ąø“ąø”ąøąø²ąø£ą¹€ąø„ąø·ąø­ąøąø‹ąø·ą¹‰ąø­ąøąø„ą¹‰ąø­ąø‡ąø§ąø‡ąøˆąø£ąø›ąø“ąø”
ąøąø²ąø£ą¹€ąø„ąø·ąø­ąøąø‹ąø·ą¹‰ąø­ąøąø„ą¹‰ąø­ąø‡ąø§ąø‡ąøˆąø£ąø›ąø“ąø”
Ā 
Three dangerous sins
Three dangerous sinsThree dangerous sins
Three dangerous sins
Ā 
Architecting your app in ext js 4, part 2 learn sencha
Architecting your app in ext js 4, part 2   learn   senchaArchitecting your app in ext js 4, part 2   learn   sencha
Architecting your app in ext js 4, part 2 learn sencha
Ā 
ąøšąø—ąø—ąøµą¹ˆ ą¹‘ (ąøˆąø£ąø“ąø‡)
ąøšąø—ąø—ąøµą¹ˆ ą¹‘ (ąøˆąø£ąø“ąø‡)ąøšąø—ąø—ąøµą¹ˆ ą¹‘ (ąøˆąø£ąø“ąø‡)
ąøšąø—ąø—ąøµą¹ˆ ą¹‘ (ąøˆąø£ąø“ąø‡)
Ā 
United Arab Emirates
United Arab EmiratesUnited Arab Emirates
United Arab Emirates
Ā 
Abf medborgarlon-150506023929-conversion-gate01
Abf medborgarlon-150506023929-conversion-gate01Abf medborgarlon-150506023929-conversion-gate01
Abf medborgarlon-150506023929-conversion-gate01
Ā 
He was abandon
He was abandonHe was abandon
He was abandon
Ā 
PresentaciĆ³n corporativa INSTALA Vidrio y Aluminio MĆ©xico (2016)
PresentaciĆ³n corporativa INSTALA Vidrio y Aluminio MĆ©xico (2016) PresentaciĆ³n corporativa INSTALA Vidrio y Aluminio MĆ©xico (2016)
PresentaciĆ³n corporativa INSTALA Vidrio y Aluminio MĆ©xico (2016)
Ā 
ą¹ąø›ąø„ą¹‚ąø”ąø¢ąøžąø¢ąø±ąøąøŠąø™ąø°ą¹€ąø£ąø·ą¹ˆąø­ąø‡ąøžąø£ąø²ąø«ąø”ąø“ą¹ŒąøŠąø·ą¹ˆąø­ąø§ą¹ˆąø² ąøˆąø¹ą¹€ąø¬ąøąøŖąø²ąøŽąø
ą¹ąø›ąø„ą¹‚ąø”ąø¢ąøžąø¢ąø±ąøąøŠąø™ąø°ą¹€ąø£ąø·ą¹ˆąø­ąø‡ąøžąø£ąø²ąø«ąø”ąø“ą¹ŒąøŠąø·ą¹ˆąø­ąø§ą¹ˆąø² ąøˆąø¹ą¹€ąø¬ąøąøŖąø²ąøŽąøą¹ąø›ąø„ą¹‚ąø”ąø¢ąøžąø¢ąø±ąøąøŠąø™ąø°ą¹€ąø£ąø·ą¹ˆąø­ąø‡ąøžąø£ąø²ąø«ąø”ąø“ą¹ŒąøŠąø·ą¹ˆąø­ąø§ą¹ˆąø² ąøˆąø¹ą¹€ąø¬ąøąøŖąø²ąøŽąø
ą¹ąø›ąø„ą¹‚ąø”ąø¢ąøžąø¢ąø±ąøąøŠąø™ąø°ą¹€ąø£ąø·ą¹ˆąø­ąø‡ąøžąø£ąø²ąø«ąø”ąø“ą¹ŒąøŠąø·ą¹ˆąø­ąø§ą¹ˆąø² ąøˆąø¹ą¹€ąø¬ąøąøŖąø²ąøŽąø
Ā 

Similar to Architecting your app in ext js 4, part 1 learn sencha

NestJS vs. Express The Ultimate Comparison of Node Frameworks.pdf
NestJS vs. Express The Ultimate Comparison of Node Frameworks.pdfNestJS vs. Express The Ultimate Comparison of Node Frameworks.pdf
NestJS vs. Express The Ultimate Comparison of Node Frameworks.pdfLaura Miller
Ā 
Oops design pattern intro
Oops design pattern intro Oops design pattern intro
Oops design pattern intro anshu_atri
Ā 
Fame
FameFame
Famerpatil82
Ā 
Software design.edited (1)
Software design.edited (1)Software design.edited (1)
Software design.edited (1)FarjanaAhmed3
Ā 
Flutter vs React Native: A Comparison of UI Components and Performance
Flutter vs React Native: A Comparison of UI Components and PerformanceFlutter vs React Native: A Comparison of UI Components and Performance
Flutter vs React Native: A Comparison of UI Components and PerformanceExpert App Devs
Ā 
Function Oriented and Object Oriented Design,Modularization techniques
Function Oriented and Object Oriented Design,Modularization techniquesFunction Oriented and Object Oriented Design,Modularization techniques
Function Oriented and Object Oriented Design,Modularization techniquesnimmik4u
Ā 
Ext Js In Action January 2010 (Meap Edition)
Ext Js In Action January 2010 (Meap Edition)Ext Js In Action January 2010 (Meap Edition)
Ext Js In Action January 2010 (Meap Edition)Goran Kljajic
Ā 
Notes on software engineering
Notes on software engineeringNotes on software engineering
Notes on software engineeringErtan Deniz
Ā 
from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...
from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...
from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...Data & Analytics Magazin
Ā 
Building a design system with (p)react
Building a design system with (p)reactBuilding a design system with (p)react
Building a design system with (p)reactBart Waardenburg
Ā 
Java Web Frameworks Sweetspots
Java Web Frameworks SweetspotsJava Web Frameworks Sweetspots
Java Web Frameworks SweetspotsMatt Raible
Ā 
ABSTRACT FACTORY AND SINGLETON DESIGN PATTERNS TO CREATE DECORATOR PATTERN OB...
ABSTRACT FACTORY AND SINGLETON DESIGN PATTERNS TO CREATE DECORATOR PATTERN OB...ABSTRACT FACTORY AND SINGLETON DESIGN PATTERNS TO CREATE DECORATOR PATTERN OB...
ABSTRACT FACTORY AND SINGLETON DESIGN PATTERNS TO CREATE DECORATOR PATTERN OB...ijait
Ā 
Thinking in Components
Thinking in ComponentsThinking in Components
Thinking in ComponentsFITC
Ā 
Spring Book ā€“ Chapter 1 ā€“ Introduction
Spring Book ā€“ Chapter 1 ā€“ IntroductionSpring Book ā€“ Chapter 1 ā€“ Introduction
Spring Book ā€“ Chapter 1 ā€“ IntroductionTomcy John
Ā 
Software Architecture for Agile Development
Software Architecture for Agile DevelopmentSoftware Architecture for Agile Development
Software Architecture for Agile DevelopmentHayim Makabee
Ā 
Express JS and Django Web Frameworks Analyzed
Express JS and Django Web Frameworks AnalyzedExpress JS and Django Web Frameworks Analyzed
Express JS and Django Web Frameworks AnalyzedTien Nguyen
Ā 
NestJS vs. Express The Ultimate Comparison of Node Frameworks.pdf
NestJS vs. Express The Ultimate Comparison of Node Frameworks.pdfNestJS vs. Express The Ultimate Comparison of Node Frameworks.pdf
NestJS vs. Express The Ultimate Comparison of Node Frameworks.pdfchristiemarie4
Ā 
Design systems - Razvan Rosu
Design systems - Razvan RosuDesign systems - Razvan Rosu
Design systems - Razvan RosuRazvan Rosu
Ā 
Dependency Injection, Design Principles and Patterns
Dependency Injection, Design Principles and PatternsDependency Injection, Design Principles and Patterns
Dependency Injection, Design Principles and PatternsJuan Lopez
Ā 
DevExForPlatformEngineers, introducing Kratix
DevExForPlatformEngineers, introducing KratixDevExForPlatformEngineers, introducing Kratix
DevExForPlatformEngineers, introducing KratixAbigail Bangser
Ā 

Similar to Architecting your app in ext js 4, part 1 learn sencha (20)

NestJS vs. Express The Ultimate Comparison of Node Frameworks.pdf
NestJS vs. Express The Ultimate Comparison of Node Frameworks.pdfNestJS vs. Express The Ultimate Comparison of Node Frameworks.pdf
NestJS vs. Express The Ultimate Comparison of Node Frameworks.pdf
Ā 
Oops design pattern intro
Oops design pattern intro Oops design pattern intro
Oops design pattern intro
Ā 
Fame
FameFame
Fame
Ā 
Software design.edited (1)
Software design.edited (1)Software design.edited (1)
Software design.edited (1)
Ā 
Flutter vs React Native: A Comparison of UI Components and Performance
Flutter vs React Native: A Comparison of UI Components and PerformanceFlutter vs React Native: A Comparison of UI Components and Performance
Flutter vs React Native: A Comparison of UI Components and Performance
Ā 
Function Oriented and Object Oriented Design,Modularization techniques
Function Oriented and Object Oriented Design,Modularization techniquesFunction Oriented and Object Oriented Design,Modularization techniques
Function Oriented and Object Oriented Design,Modularization techniques
Ā 
Ext Js In Action January 2010 (Meap Edition)
Ext Js In Action January 2010 (Meap Edition)Ext Js In Action January 2010 (Meap Edition)
Ext Js In Action January 2010 (Meap Edition)
Ā 
Notes on software engineering
Notes on software engineeringNotes on software engineering
Notes on software engineering
Ā 
from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...
from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...
from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...
Ā 
Building a design system with (p)react
Building a design system with (p)reactBuilding a design system with (p)react
Building a design system with (p)react
Ā 
Java Web Frameworks Sweetspots
Java Web Frameworks SweetspotsJava Web Frameworks Sweetspots
Java Web Frameworks Sweetspots
Ā 
ABSTRACT FACTORY AND SINGLETON DESIGN PATTERNS TO CREATE DECORATOR PATTERN OB...
ABSTRACT FACTORY AND SINGLETON DESIGN PATTERNS TO CREATE DECORATOR PATTERN OB...ABSTRACT FACTORY AND SINGLETON DESIGN PATTERNS TO CREATE DECORATOR PATTERN OB...
ABSTRACT FACTORY AND SINGLETON DESIGN PATTERNS TO CREATE DECORATOR PATTERN OB...
Ā 
Thinking in Components
Thinking in ComponentsThinking in Components
Thinking in Components
Ā 
Spring Book ā€“ Chapter 1 ā€“ Introduction
Spring Book ā€“ Chapter 1 ā€“ IntroductionSpring Book ā€“ Chapter 1 ā€“ Introduction
Spring Book ā€“ Chapter 1 ā€“ Introduction
Ā 
Software Architecture for Agile Development
Software Architecture for Agile DevelopmentSoftware Architecture for Agile Development
Software Architecture for Agile Development
Ā 
Express JS and Django Web Frameworks Analyzed
Express JS and Django Web Frameworks AnalyzedExpress JS and Django Web Frameworks Analyzed
Express JS and Django Web Frameworks Analyzed
Ā 
NestJS vs. Express The Ultimate Comparison of Node Frameworks.pdf
NestJS vs. Express The Ultimate Comparison of Node Frameworks.pdfNestJS vs. Express The Ultimate Comparison of Node Frameworks.pdf
NestJS vs. Express The Ultimate Comparison of Node Frameworks.pdf
Ā 
Design systems - Razvan Rosu
Design systems - Razvan RosuDesign systems - Razvan Rosu
Design systems - Razvan Rosu
Ā 
Dependency Injection, Design Principles and Patterns
Dependency Injection, Design Principles and PatternsDependency Injection, Design Principles and Patterns
Dependency Injection, Design Principles and Patterns
Ā 
DevExForPlatformEngineers, introducing Kratix
DevExForPlatformEngineers, introducing KratixDevExForPlatformEngineers, introducing Kratix
DevExForPlatformEngineers, introducing Kratix
Ā 

Recently uploaded

Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin ClassesCeline George
Ā 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docxPoojaSen20
Ā 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.christianmathematics
Ā 
Asian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptxAsian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptxDavid Douglas School District
Ā 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsMebane Rash
Ā 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...pradhanghanshyam7136
Ā 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
Ā 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17Celine George
Ā 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701bronxfugly43
Ā 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...christianmathematics
Ā 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...Poonam Aher Patil
Ā 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentationcamerronhm
Ā 
Magic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxMagic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxdhanalakshmis0310
Ā 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and ModificationsMJDuyan
Ā 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
Ā 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxheathfieldcps1
Ā 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxDenish Jangid
Ā 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxVishalSingh1417
Ā 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfNirmal Dwivedi
Ā 

Recently uploaded (20)

Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Ā 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
Ā 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
Ā 
Asian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptxAsian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptx
Ā 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
Ā 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Ā 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
Ā 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
Ā 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701
Ā 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Ā 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
Ā 
Spatium Project Simulation student brief
Spatium Project Simulation student briefSpatium Project Simulation student brief
Spatium Project Simulation student brief
Ā 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
Ā 
Magic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxMagic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptx
Ā 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
Ā 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
Ā 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
Ā 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Ā 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
Ā 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
Ā 

Architecting your app in ext js 4, part 1 learn sencha

  • 1. Architecting Your App in Ext JS 4, Part 1 Search 16 Tw eet 16 Like 7 3 Comments Published Jun 21, 2011 | Tommy Maintz | Tutorial | Easy Ext JS, v4.x Last Updated Aug 10, 2011 RSS | Responses This Tutorial is most relevant to Ext JS, 4.x. The scalability, maintainability and flexibility of an application is mostly determined by the Community quality of the applicationā€™s architecture. Unfortunately, itā€™s often treated as an afterthought. Tw itter Facebook Proofs of concept and prototypes turn into massive applications, and example code is Tum blr LinkedIn copied and pasted into the foundations of many applications. You may be tempted to do this RSS Feed Vim eo because of the quick progress that you see at the start of a project. However, the time saved will be relatively low compared to the time spent on having to Related Posts maintain, scale and often refactor your application later in the project. One way to better The Sencha Class System prepare for writing a solid architecture is to follow certain conventions and define application Nov 29 views, models, stores and controllers before actually implementing them. In this article, weā€™ll Architecting Your App in Ext take a look at a popular application and discuss how we might architect the user interface to JS 4, Part 3 Sep 19 create a solid foundation. Ext Designer 1.2 Overview Code Organization Aug 4 Any ideas? Application architecture is as much If you have any ideas to about providing structure and improve this article, please consistency as it is about actual classes let us know and framework code. Building a good architecture unlocks a number of important benefits: Every application works the same way so you only have to learn it once Itā€™s easy to share code between apps because they all work the same way You can use Ext JS build tools to create optimized versions of your applications for production use In Ext JS 4, we have defined conventions that you should consider following when building your applications ā€” most notably a unified directory structure. This simple structure places all classes into the app folder, which in turn contains sub-folders to www.sencha.com/learn/architecting-your-app-in-ext-js-4-part-1/ 1/7
  • 2. namespace your models, views, controllers and stores. While Ext JS 4 offers best practices on how to structure your application, thereā€™s room to modify our suggested conventions for naming your files and classes. For example, you might decide that in your project you want to add a suffix to your controllers with ā€œController,ā€ e.g. ā€œUsersā€ becomes ā€œUsersController.ā€ In this case, remember to always add a suffix to both the controller file and class. The important thing is that you define these conventions before you start writing your application and consistently follow them. Finally, while you can call your classes whatever you want, we strongly suggest following our convention for the names and structure of folders (controller, model, store, view). This will ensure that you get an optimized build using our SDK Tools beta. Striking a Balance Views Splitting up the applicationā€™s UI into views is a good place to start. Often, you are provided with wireframes and UI mockups created by designers. Imagine we are asked to rebuild the (very attractive) Pandora application using Ext JS, and are given the following mockup by our UI Designer. What we want to achieve is a balance between the views being too granular and too generic. Letā€™s start by seeing what happens if we divide our UI into too many views. www.sencha.com/learn/architecting-your-app-in-ext-js-4-part-1/ 2/7
  • 3. Splitting up the UI into too many small views will make it difficult to manage, reference and control the views in our controllers. Also, since every view will be in its own file, creating too many views might make it hard to locate the view file where a piece of the UI or view logic is defined. On the other hand, we donā€™t want our views to be too generic because it will impact our flexibility to change things. In this scenario, each one of our views has been overly simplified. When several parts of a view require custom view-logic, the view class will end up having too many responsibilities, resulting in the view class becoming harder to maintain. In addition, when the designers change their mind about the arrangement of the UI, we will end up having to refactor our view definition and view logic; which can get tedious. The right balance is achieved when we can easily rearrange the views on the page without www.sencha.com/learn/architecting-your-app-in-ext-js-4-part-1/ 3/7
  • 4. having to refactor them every time. For example, we want to make the Ad a separate view, so we can easily move it around or even remove it later. In this version, weā€™ve separated our UI by the roles of each view. Once you have a general idea of the views that will make up your UI, you can still tweak the granularity when youā€™re actually implementing them. Sometimes you may find that two views should really become one, or a view is too generic and should be split into multiple views, but it helps to start out with a good base. I think weā€™ve done that here. Models Now that we have the basic structure of our views in place, itā€™s time to look at the models. By looking at the types of dynamic data in our UI, we can get an idea of the different models needed for our application. Weā€™ve decided to use only two models ā€” Song and Station. We could have defined two www.sencha.com/learn/architecting-your-app-in-ext-js-4-part-1/ 4/7
  • 5. more models called Artist and Album. However, just as with views, we donā€™t want to be too granular when defining our models. In this case, we donā€™t have to separate artist and album information because the app doesnā€™t allow the user to select a specific song by a given artist. Instead, the data is organized by station, the song is the center point, and the artist and album are properties of the song. That means weā€™re able to combine the song, artist and album data into one model. This greatly simplifies the data side of our app. It also simplifies the API that we have to implement on the server-side because we donā€™t have to load individual artists or albums. To summarize, for this example, weā€™ll only have two models ā€” Song and Station. Stores Now that weā€™ve thought about the models our application will use, lets do the same for stores. Figuring out the different stores you need is often relatively easy. A good strategy is to determine all the data bound components on the page. In this case, we have a list with all of the userā€™s favorite stations, a scroller with the recently played songs, and a search field that will display search results. Each of these views will need to be bound to stores. Controllers There are several ways you can distribute the applicationā€™s responsibilities across your applicationā€™s controllers. Letā€™s start by thinking about the different controllers we need in this example. www.sencha.com/learn/architecting-your-app-in-ext-js-4-part-1/ 5/7
  • 6. Here we have two basic controllers ā€” a SongController and a StationController. Ext JS 4 allows you to have one controller that can control several views at the same time. Our StationController will handle the logic for both creating new stations as well as loading the userā€™s favorite stations into the StationsList view. The SongController will take care of managing the SongInfo view and RecentSong store as well as the userā€™s actions of liking, disliking, pausing and skipping songs. Controllers can interact with each other by firing and listening for application events. While we could have created additional Controllers, one for managing playback and another for searching stations, I think weā€™ve found a good separation of responsibilities. Measure Twice , Cut Once I hope that sharing our thoughts on the importance of planning your application architecture prior to writing code was helpful. We find that talking through the details of the application helps you to build a much more flexible and maintainable architecture. Continue on to Architecting Your App in Ext JS 4, Part 2 Share this post: Leave a reply Written by Tommy Maintz Tommy Maintz is the original lead of Sencha Touch. With extensive knowledge of Object Oriented JavaScript and mobile browser idiosyncracies, he pushes the boundaries of what is possible within mobile browsers. Tommy brings a unique view point and an ambitious philosophy to creating engaging user interfaces. His attention to detail drives his desire to make the perfect framework for developers to enjoy. Follow Tommy on Twitter 0 Comments K Ramesh Babu 12 months ago What is the motivation behind the ā€˜storesā€™ concept? Should we call this paradigm MVCS rather than MVC? Ali 11 months ago Isnā€™t a store part of the model? At least, thatā€™s how MVC sees it. Also donā€™t understand the reason for a clientside ā€œcontrollerā€. Should that contain all www.sencha.com/learn/architecting-your-app-in-ext-js-4-part-1/ 6/7
  • 7. clientside handlers, and then redirect to the serverside MVC controller? Would like to see this more detailed.. Ed Spencer Sencha Employee 11 months ago Stores are really nothing more than a glorified array of Model *instances*. Theyā€™re mostly used in our data-bound components like grids. We could just use an array but the Store gives all kinds of benefits like sorting, filtering and firing events whenever Model instances are added, removed or updated, which makes acting on those changes much easier Commenting is not available in this channel entry. Find Sencha developers at SenchaDevs Ā© 2012 Sencha Inc. All rights reserved. www.sencha.com/learn/architecting-your-app-in-ext-js-4-part-1/ 7/7