Presentation is loading. Please wait.

Presentation is loading. Please wait.

Sofia, Bulgaria | 9-10 October Large-Scale Client Script Development in ASP.NET "Atlas“ Tools, Tips, And Techniques Hristo Deshev telerik Hristo Deshev.

Similar presentations


Presentation on theme: "Sofia, Bulgaria | 9-10 October Large-Scale Client Script Development in ASP.NET "Atlas“ Tools, Tips, And Techniques Hristo Deshev telerik Hristo Deshev."— Presentation transcript:

1 Sofia, Bulgaria | 9-10 October Large-Scale Client Script Development in ASP.NET "Atlas“ Tools, Tips, And Techniques Hristo Deshev telerik Hristo Deshev telerik

2 Sofia, Bulgaria | 9-10 October Our Goal ●Increase predictability in script development by: ●Reduce code complexity by increasing modularity. ●Explore the standard means of component interoperability Atlas offers. ●Use automated testing to improve code quality and ensure cross-browser support. ●Increase predictability in script development by: ●Reduce code complexity by increasing modularity. ●Explore the standard means of component interoperability Atlas offers. ●Use automated testing to improve code quality and ensure cross-browser support.

3 Sofia, Bulgaria | 9-10 October Where we are now ●The problems with JavaScript development ●No standard way to define reusable pieces of code. ●No definitive resource for developers that just start using the language. A lot of outdated tutorials and code out there. ●Lack of tools available to the masses. ●We have a lot of scattered gems on the web and many monstrosities that have to be killed. ●The problems with JavaScript development ●No standard way to define reusable pieces of code. ●No definitive resource for developers that just start using the language. A lot of outdated tutorials and code out there. ●Lack of tools available to the masses. ●We have a lot of scattered gems on the web and many monstrosities that have to be killed.

4 Sofia, Bulgaria | 9-10 October What we want ●The most important thing: a standard for creating reusable components that play nice together. ●A base class library that will be available everywhere e.g. XMLHttpRequest services. ●A set of tools that abstract the most common browser peculiarities: attachEvent/addEventListener ●Development tools: IDE’s, test frameworks, profilers, etc. ●The most important thing: a standard for creating reusable components that play nice together. ●A base class library that will be available everywhere e.g. XMLHttpRequest services. ●A set of tools that abstract the most common browser peculiarities: attachEvent/addEventListener ●Development tools: IDE’s, test frameworks, profilers, etc.

5 Sofia, Bulgaria | 9-10 October Atlas, a step forward ●Base services: extending JavaScript with classes, properties, events, namespaces. ●A rich base class library: networking, UI, etc. ●A server-side model that for registering and using script components. ●Server-side controls with rich client- side behavior. ●Base services: extending JavaScript with classes, properties, events, namespaces. ●A rich base class library: networking, UI, etc. ●A server-side model that for registering and using script components. ●Server-side controls with rich client- side behavior.

6 Sofia, Bulgaria | 9-10 October Additional tools ●A build system for packaging and releasing script code. ●Fully featured cross-browser debugging and profiling tools: largely nonexistent today. ●Strong testing is our best strategy for any larger script code base. ●A testing framework: jsUnit (www.jsunit.net) is the standard for JavaScript and works for Atlas.www.jsunit.net ●A build system for packaging and releasing script code. ●Fully featured cross-browser debugging and profiling tools: largely nonexistent today. ●Strong testing is our best strategy for any larger script code base. ●A testing framework: jsUnit (www.jsunit.net) is the standard for JavaScript and works for Atlas.www.jsunit.net

7 Sofia, Bulgaria | 9-10 October Script components ●Class definitions in JavaScript ●Inheritance and interfaces ●Properties and property descriptors ●Events and delegates ●Resource management and IDisposable ●Creating components declaratively. ●Class definitions in JavaScript ●Inheritance and interfaces ●Properties and property descriptors ●Events and delegates ●Resource management and IDisposable ●Creating components declaratively.

8 Sofia, Bulgaria | 9-10 October Demonstration Creating a JavaScript component class

9 Sofia, Bulgaria | 9-10 October Rendering scripts ●Existing problems with Page.ClientScript.RegisterClientScriptB lock(...) ●Using the Atlas ScriptManager control to register scripts, namespaces and components. ●Existing problems with Page.ClientScript.RegisterClientScriptB lock(...) ●Using the Atlas ScriptManager control to register scripts, namespaces and components.

10 Sofia, Bulgaria | 9-10 October Demonstration Registering scripts with the ScriptManager API.

11 Sofia, Bulgaria | 9-10 October Introducing jsUnit ●Tests are defined in pages instead of classes ●setUp/tearDown for initialization and cleanup ●Defining test suites ●Running tests on different browsers and collecting test results ●Tests are defined in pages instead of classes ●setUp/tearDown for initialization and cleanup ●Defining test suites ●Running tests on different browsers and collecting test results

12 Sofia, Bulgaria | 9-10 October Atlas and jsUnit ●Two ways to test script code: ●Place a control that will render the script and write tests against the live component instance. The easiest option. ●Register the script class through the ScriptManager control and instantiate components manually. Useful if you want to test the component creation logic. ●Two ways to test script code: ●Place a control that will render the script and write tests against the live component instance. The easiest option. ●Register the script class through the ScriptManager control and instantiate components manually. Useful if you want to test the component creation logic.

13 Sofia, Bulgaria | 9-10 October Demonstration Writing tests and running them under different browsers

14 Sofia, Bulgaria | 9-10 October Additional resources ●The official Atlas site: http://atlas.asp.net http://atlas.asp.net ●The Atlas Control Toolkit: http://atlas.asp.net/atlastoolkit/ http://atlas.asp.net/atlastoolkit/ ●The Atlas forums: http://forums.asp.net/default.aspx?Grou pID=34 http://forums.asp.net/default.aspx?Grou pID=34 ●My blog: http://blogs.telerik.com/blogs/twisted_a sp_net/ http://blogs.telerik.com/blogs/twisted_a sp_net/ ●The official Atlas site: http://atlas.asp.net http://atlas.asp.net ●The Atlas Control Toolkit: http://atlas.asp.net/atlastoolkit/ http://atlas.asp.net/atlastoolkit/ ●The Atlas forums: http://forums.asp.net/default.aspx?Grou pID=34 http://forums.asp.net/default.aspx?Grou pID=34 ●My blog: http://blogs.telerik.com/blogs/twisted_a sp_net/ http://blogs.telerik.com/blogs/twisted_a sp_net/

15 Sofia, Bulgaria | 9-10 October The end ●Questions?

16 Sofia, Bulgaria | 9-10 October Please fill out the survey forms! They are the key to amazing prizes that you can get at the end of each day Thank you!

17 Sofia, Bulgaria | 9-10 October


Download ppt "Sofia, Bulgaria | 9-10 October Large-Scale Client Script Development in ASP.NET "Atlas“ Tools, Tips, And Techniques Hristo Deshev telerik Hristo Deshev."

Similar presentations


Ads by Google