Tuesday, March 24, 2009

Download JavaScript Gridview

I have developed a JavaScript Gridview. You can download and use it in your website. It is very customizable for which you just have to change css styles. And it can sort the data rows columnwise(eg. sort by name, DOB) by just clicking on the header row. I will release the next version with more additional functions like paging. Please leave the comments how you like it?

download

Friday, March 13, 2009

Fundamentals of Prototype Object in JavaScript

[click on the picture to enlarge it]

I got a chance to read the specification of the JavaScript where I learned about the fundamentals of object and its prototype object. We create an object in JavaScript by
function obj(){
this.prop1=sth;
}
When we create an object, JavaScript also create a “prototype object” for that particular object.
By default, JavaScript will also create properties like .constructor (To learn about it, I would like to recommendhttp://www.w3schools.com.) and .prototype. This .prototype property of the object points to its prototype object.
Now, when we create an instance of the object by using new keyword, it makes a replica of the object. The instance has a copy of properties as well as methods in itself.(unlike other object oriented programming language like c++, Java where the instance keeps a copy of properties only but methods remain with the object and all instances share the same methods).

instance1= new obj();
But all the instances of the object share the same prototype object which means all the properties and methods in the prototype object are shared by all the instances.

For example:
obj.prototype.sharedprop1=”sharedvalue”

document.write(instance1.prototype.sharedprop1)
Output: ”sharedvalue”

document.write(instance1.prototype.sharedprop1)
Output: ”sharedvalue”

So, if the methods and shared properties/variable are put in prototype object, the instance always consumes less memory. If you are creating large number of instances of the object, you really have to work on with prototype object.

If you write document.write(instance1.sharedprop1) it will still work and gives output “sharedvalue” because what JavaScript does is, when it doesn’t find out the sharedprop1 in instance1, it lookups for that property in prototype object and get it. In the same way it works for methods also.
Links:
http://www.ecma-international.org/publications/standards/Ecma-262.htm
http://www.slideshare.net/s.barysiuk/javascript-basics-and-dom-manipulation-presentation

Thursday, February 12, 2009

ADOBE-AIR

I used Adobe- air to convert HTML, javascript web pages into desktop app. I think Adobe AIR will last long .I am sure AIR will be a part of cloud computing because it supports HTML, JavaScript, XML which are the major client-technologies that cloud-computing uses.Besides acting like a web-client, it also can be a desktop agent. AIR is bridging the gap between desktop application and web application. "Jaya hos ADOBE AIR ko. Pasupati nath le raksha garun"

Tuesday, January 27, 2009

Integrating Asp.net with Ext js



Today, I wrote a sample program using Ext-js on the client side and asp.net on the server side. This sample program has a form with a textbox and combo box and the items in the combo box are loaded from the database (Department table of the adventure works). This should be pretty much simple task for those who have been using Ext js. But it took me couple of hours to get Ext js config objects.
When you have to send object to the client, you can either serialize in the json or xml. Here in my sample program, I used json formatted data. For converting the .net objects into json, I had to use the codes from this site http://james.newtonking.com/projects/json-net.aspx (http://www.codeplex.com/json/) because .net framework doesn’t have json serializer.
Steps:

  • I created a project- web application extjs and added “linq to sql” item in the project(adventureworks.dbml) and added department table into the design surface.

  • In code-behind of default.aspx page, I wrote these codes.
    I couldn't upload the code file. I will upload it later.

  • In default.aspx I wrote ext js codes.
    I couldn't upload the code file. I will upload it later.

  • Then got the output.


Monday, November 10, 2008

A Fix : Firebug Debugger doesn't work

I spent hours in starting debugger on Firebug 1.2.1 . I didnt know what the problem was. Under script tab, I put the breakpoints on the code but none of the buttons like Run, step into, step over , step out was active. Then, I finally found in one of the blogs that something wrong with the profile Manager in Mozilla Firefox. Then the problem was fixed as I ran the firefox profile Manager.
Steps :
1.Close all the instances of firefox browser.
2.In Windows/ Start/ Run cmd: firefox.exe -profilemanager

Then the debugger started working. So, there was some problem with my profile. But still don't know what was that.Now, I can see the active debugger buttons as shown below.

Sunday, November 9, 2008

Ext JS- power of javascript

Last month, my friend Bikash who is working in Washington was talking about the challenges that he had faced on binding the data on Ext js controls which I had never heard before. I was wondering what in the earth that is. Then I explored Ext js which is an extended library of javascript where most of the stuffs are in Json. When I saw the sample controls, I was awed. Oh man! Unbelievable! Superfast control! Awesome GUI!
Ext js also provides the framework library which I downloaded and installed it in my IIS and started writing Ext js.

Thursday, October 2, 2008

Trace into .NET Framework codes

I am finding lots of interesting things these days. I was reading Scott Gutrie's blog and found out a link from there to the other blog http://blogs.msdn.com/sburke/archive/2008/01/16/configuring-visual-studio-to-debug-net-framework-source-code.aspx where I found the details about tracing into .Net framework codes. Now we will be pressing F11 more than before.