Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
CIS 338: Client/Server Application Development with Visual Basic.NET Dr. Ralph D. Westfall April, 2011 What Can Computers Do? Individual exercise: identify things that can't be done without computers (impossible/impractical)? How can computers do such things? capabilities of computers: examples of? doing same things better doing new things (couldn't do before) Programming Languages How many in the world? see The Language List How many have multiple web pages devoted to them? another list (180+ entries, but a fair amount of overlap) A "Perfect" Language? Buzz group exercise: Identify desirable features/advantages: for the student/learner, or for the experienced programmer? for amateurs (use once in a while), or for professionals (use all the time)? for organizations, businesses? in general? Visual Basic.NET in Context When viewing the following slides, and through the remainder of this course, think about: what computers can do? features/capabilities that programming languages should have? C/S with VB.NET Overview What is client/server computing? How does Visual Basic.NET relate to client/server computing? Introduction to Visual Basic.NET objects integrated development environment program code advantages and disadvantages Client/Server Computing services – data, computations, etc. server(s) – computer(s) that provides services client – computer that gets services messages to server(s) requesting services advantage = efficiency clients & server(s) each what do best Client/Server Advantages relative to mainframe systems GUI (WIMP) easier for users to work with flexible: easier to adapt to different environments/different types of use interoperability: easier to share data with other applications scalability: can work with limited activity, or with larger volumes/high traffic Client/Server Examples web servers (Apache, IIS) lots of HTML, some audio, video, etc. files send files over Internet when requested handle login security Email servers and email clients PC clients show/play files on screen and speakers encrypt data to send to server Client/Server Examples - 2 database server fast access to large amounts of data high-level validation security PC client data entry low-level validation showing reports created from server data VB.NET and Client/Server object oriented programming (OOP) built-in objects handle many of details component assembly approach (like Lego) VB.NET object for client user interface forms, menus, reports/printing [demonstration of form/controls] VB.NET objects for interacting with server database connection, records from database Visual Basic.NET Code modeled on the BASIC and Java languages Java and JavaScript look more like C/C++ BASIC stands for: beginners all-purpose symbolic instruction code control structures (different from Java, etc.) sequence (one instruction after another) selection (if … then … else, select case …) repetition (looping: for…next, do while…) transfer of control (subroutines, functions) Visual Basic.NET Code - 2 built-in functions e.g., CInt (convert to integer), CStr (convert to string), Now (date/time), Round (to integer or decimal values), IsNumeric (tells if a value is a number) numerous data types 8 (!) integers, 3 decimals, Boolean, String, character compiled into MSIL code Visual Basic.NET Code - 3 With … End With Advantages of VB 6 works with Windows 95% of OS (operating system) market popular 3 million VB developers in world (.NET?) used by many larger organizations easy to learn to write small applications creating forms, adding controls, writing simple code More Advantages of VB 6 high productivity does a lot of things for you automatically suitable for rapid application development prototyping "quick and dirty" sample systems developing complete systems Rapid Application Development (RAD) Even More Advantages of VB 6 can be a component of scalable, multiplatform systems VB front end to almost any hardware/database platform multi-tier architectures works with the Internet compiled ActiveX controls work with IE ASP.NET works with many browsers Disadvantages of VB 6 different from, not “elegant” like Java, C/C++ (VB.NET much better on this) slower performance than C/C++ less features/power than C/C++, Java less control over operating system and other lower level computer activities Microsoft support ended 2008 More Disadvantages of VB 6 too easy to learn? bad systems developed by inexperienced developers harder languages (C/C++, Java, VB.NET) are more impressive to recruiters Advantages of VB.NET completely object oriented .NET Framework makes code interoperable with code written in other languages more powerful than VB 6 more esthetic? (looks like Java) Visual Studio.NET is a very powerful development tool Disadvantages of VB.NET harder to learn than VB 6 syntax is more detailed substantial differences from VB 6 not as easy to work with? if you turn error checking (Option Strict) on, Visual Studio forces you to write code according to the syntax requirements but keeping error checking on helps you develop code that is less likely to crash