Computer Science student, web professional

Archive for April, 2011

ASP.net with W3School

W3School logo

W3School logo

I wanted to learn more about how to program ASP.net and not just the model, view, controller. I decided to use the always trustful W3Schools.com website. As is common place with W3Schools, they deliver a great insight into the actual functionality and usability of the code.

Check out ASP.NET Examples at http://www.w3schools.com/aspnet/aspnet_examples.asp

ASP.net has three controls: HTML, Web, and Validation. How the code interacts with the HTML that will display the code is that the scripting is labeled (named) and then the HTML identifies an element with that lable as the id. This as a result pulls that result and displays it. In order for all of this to happen, the script has be told to runat=”server” as well as the element you id.

For example: […] lbl1.Text=”The date and time is ” & now()[…] <asp:label id=”lbl1″ runat=”server”[…] .

Requests to the server are different than requests for an HTML page. When a browser requests an HTML file, the server returns the file. When a browser requests an ASP.NET file, IIS passes the request to the ASP.NET engine on the server. (http://bit.ly/s7Gtk)

The Programming languages used are C#, Visual Basic, and J#. ASP.net has two development environments: Visual Studio .NET and Visual Web Developer. ASP.net components highly rely on XML to store information and configuration.

When it is time to install .net, it’s simple! Just look in your windows update. Now you will be ready to start the tutorial: http://www.w3schools.com/aspnet/aspnet_pages.asp.

W3School offerings

W3School offerings

Advertisements

What is ASP.net really all about?

I’ve always had an interest to upgrade to ASP.net from classic ASP. When you do a google search of the topic ASP.net, you’ll receive the following top four responses, one of which states it is NOT an upgrade but rather the next generation. I would take this as it is a completely new development of framework.

·         Microsoft’s site and links to information, and community resources. www.asp.net/  

·         A place to start with Microsoft ASP.NET & ASP.NET www.asp.net/get-started

·         ASP.NET is a web application framework developed by Microsoft for building dynamic web sites and web applications. en.wikipedia.org/wiki/ASP.NET

·         ASP.NET is the next generation ASP, but it’s not an upgraded version of ASP. It is part of the Microsoft .NET framework, and a powerful tool. http://www.w3schools.com/aspnet/default.asp

 On the get-started page of asp.net, I found a link to the MVC which you can download visual studio express using razor for as viewing engine and has a debugger. http://bit.ly/6vq2R I believe this is very useful for users who do not have visual studio (a microsoft product). There is also a link for the install of the mvc for developing in ASP.net.

The power behind ASP.net

What I believe is the power in .net is that you can build modules and reuse them in mulitple applications. This provides flexibility as well as speed in development. The other aspect of .net that is attractive is that works with the mark-up languages and can easily build dynamic sites. With ASP.net, you can use Visual C# or Visual Basic, which are both Microsoft languages. The visual studio express will provide you with a working framework template that you can easily build on. This MVC-based application contains (http://bit.ly/gKZ0lM):

  • Controllers: Classes that handle incoming requests to the application, retrieve model data, and then specify view templates that return a response to the client.
  • Models: Classes that represent the data of the application and that use validation logic to enforce business rules for that data.
  • Views: Template files that your application uses to dynamically generate HTML responses.

Using the controller

The mvc application provides the skeleton similar to the ide, eclipse, which does this for Java. The default MVC mapping is “/[Controller]/[ActionName]/[Parameters]. ” This looks a bit confusing, but if you pull this apart it is really simple to understand. In the url you will have the web address such as http://www.localhost.com then the controller would follow. Let’s say we created a controller called “hello.cs.” Within this file you have the action name, which “index” would be included in this. It’s action is similar to that of index.html for a website. Servers know to use this as the default page. Index would be called upon as the default action calle. You can specify other actions such, but you would have to directly type those into the URL. For each action, you can have parameters that would provide additional functionality and can be further enhanced by using  C# parameters.

What we’ve not covered

So far we’ve only covered the controller aspect of the MVC. Additional aspects that need to be learned are:

  • Adding a View
  • Adding a Model
  • Accessing your Model’s Data from a Controller
  • Examining the Edit Methods and Edit View
  • Adding a New Field to the Model and Table
  • Adding Validation to the Model
  • Improving the Details and Delete Methods

There are many already developed pieces of code out there such as progress bars that can be repurposed. When you look to code something, see if it has been done already and modify for your purposes. There is something to weigh in this matter though, if the code you will be working with isn’t document well, it may take more time for you to understand the code than it would to develop it yourself.

Other aspects (not an all encompassing list) of .net that are beneficial but not covered here are:

  • XML integration,
  • Security,
  • Simple compilation,
  • Multiple language implementation, and
  • Data driven.

You can check out more of these on the W3CSchool.

Learning about Python

I am in a course called, Computer-Mediated Communication at the University of Washington, Tacoma taught by Lecturer Joe McCarthy. This course focuses on the types of interactions considered communication that is done via the computer and specifically via the web. On of the languages that we’ll be taking a close look at and diving into coding with is Python. It can be found at the Python site www.Python.org.

Python Logo

Python Logo

Features of Python

The Python website emphasizes the flexibility and easy-to-use of Python. You can find links to download the right version on Python library and interpreter as well as to third-party products that easily implement python into other technologies such as C++ or Java. Python is an object-orientated language so uses the same principles as other site, although it appears to have a very easy to understand language base. It is also boasted be to cross-platform compatible which is not so easy to say for Java or C.

Compile vs. Interpret

In other languages you will find that you created classes that can be inherited, with Python these are modules that can be used across Python applications. The language also doesn’t compile instead it has an interpreter. This is similar to HTML where the browser interprets the language to a graphical representation.

Image of interpreting Python with Eclipse

Python with Eclipse

Data Modeling

data with representation of relationships

Example of Data Model

I was looking for an internship and in conversation with the President, Chad Stoker, of CodeSmart Inc, he mentioned that data modeling was essential to be familiar with. This had me dive into the world of “data modeling.” I presumed it had something to do with representing data, but wasn’t sure at what level.

I did a bit of research and discovered it was in fact how we discuss, organize and then implement projects that need data stored, accessed, and manipulated. It takes business processes and computerizes them. I have done this process a number of times. I usually use the top-down method where you create relationships between data entities and then implement those in a database. This is usually followed up with some implementation in order for non-computer savvy users access and usage ability of the data. Data Modeling on Wikipedia or on Agile Data

I believe time put in at the beginning of this process of establishing the data necessary for storage, the structure and methods of access, and then how implementation will look will lead to a much quicker process of implementing the project. I have experienced that when you do not have a solid understanding of what the client/customer envisions the data’s usage to be, the less you’ll be clear on how to develop an application that will be used by that user. It is essential through drawings, examples, or any other method to have a clear concept of what is expected of processes that the client desires. Data Modeling tools

I would recommend reading a little bit about data modeling and then about computer project development prior to implementing any type of data structure that a client will be accessing via an application. Look at the different visual representations N Way FuN!

Catch ya later…

Tag Cloud