Course Title: Visual Programming Course No. : ICT Ed 535 161 Nature of course: Theoretical + Practical Level: M.Ed. Credit Hour: 3 (2+1) Semester: Third Teaching Hour: 80(32+48) 1. Course Description This course provides skills to develop modern software programmes with graphical user interface using the language C# with ASP.net. The course covers most of the C# language. Student will build window-based and web-based forms, adding controls and setting properties for these controls. 2. General Objective of the Course: To enable students to create user controls in a Windows Forms application using Visual Programming Platform. To provide students knowledge and skills required for validating user input in a Windows Forms application To enable students to bind Windows Forms applications to various data sources by using Microsoft ADO.NET To enhance students capacity for creating an ASP.NET Web application project by using Visual Studio.NET. 3. Course Outlines: Specific Objectives Contents Teach ing Hours To explain the Microsoft.NET Framework and ASP.NET To identify the.net IDE and.net working environment To recognized the basic types and inbuilt collection of c# platform Unit I:Overview of.net and C# 1.1.NET framework 1.2 CLR and FCL 1.3 Primitive Types and Namespaces 1.4 Statements and Expressions 1.5 Operators 1.6 Visual Studio IDE Unit II: Types and Collection 2.1 Classes and Structs 2.2 Members and Interfaces 2.3 Enums, Arrays and List<T> 2.4 List and Sequence Interfaces 2.5 Implementing Lists and Sequences 2.6 Dictionaries 2.7 Sets, Queues and Stacks 2.8 Linked Lists, Concurrent Collections 2.9 Tuples, Events properties and Methods 2.10 Generic Types 2 4
Develop the basic application with use of control structure Implement the error control mode using exception handling concept Design and development of inheritance techniques use of class and its visibility mode Develop the application use of events and methods Apply the MDI and SDI in window based applications Implement the LINQ in apps development process Apply the file handling concept in C# Unit III: C# - Flow Control and Exceptions 4.1 Branching 4.2 Switching 4.3 Looping 4.4 Throwing Exceptions 4.5 Built-in Exceptions 4.6 Handling Exceptions 4.7 Chaining Catch Blocks 4.8 Finally Unit IV: Inheritance 4.1 Inheritance and Conversions 4.2 Interface Inheritance 4.3 Generics, System. Object 4.4 Accessibility and Inheritance 4.5 Virtual Methods 4.6 Sealed Methods and Classes 4.7 Accessing Base Members 4.8 Inheritance and Construction 4.9 Special Base Types Unit V: Delegates, Lambdas, and Events 5.1 Delegate Types 5.2 Inline Methods 5.3 Events 5.4 Delegates Versus Interfaces 5.5 Menus and Context Menus 5.6 MenuStrip, ToolbarStrip. 5.7 Graphics and GDI 5.8 SDI and MDI Applications 5.9 Dialogbox (Modal and Modeless) 5.10 Form Inheritance 5.11 Developing Custom, Composite Unit VI: LINQ 6.1 Query Expressions 6.2 Deferred Evaluation 6.3 LINQ, Generics, and IQueryable<T> 6.4 Standard LINQ Operators 6.5 Sequence Generation 6.6 Other LINQ Implementations Unit VII: Files and Streams 7.1 The Stream Class 7.2 Windows and IRandomAccessStream 7.3 Text-Oriented Types 7.4 Files and Directories 7.5 Serialization 162 4 6 6 5 8 Apply and use multithreading in C# Unit VIII: Multithreading 8.1 Threads 8.2 Synchronization 8.3 Tasks 8.4 Other Asynchronous Patterns 8.5 Cancellation 5
163 8.6 Parallelism Test and check XAML framework Develop the database application using ADO.net Understands the integration concept of database in C# Configure and deploy an ASP.NET Web application. Secure an ASP.NET Web application by using a variety of technologies. Use validation controls to validate user input Add functionality to server controls that are on an ASP.NET Web Form. Unit IX: XAML 9.1 XAML-Based Frameworks 9.2 XAML Basics 9.3 Layout 9.4 Controls 9.5 Text 9.6 Data Binding 9.7 Graphics 9.8 Styles Unit X: ADO.NET and Windows Presentation Foundation(WPF) 10.1 Connected Architecture 10.2 Disconnected Architecture 10.3 Working with Transaction 10.4 Windows Application using WPF 10.5 Data Binding 10.6 Data Template 10.7 Styles 10.8 Commands Unit XI: ASP.NET 11.1 Web Application using ASP.NET 11.2 ASP.NET Architecture 11.3 Control-based Programming 11.4 User Interface Elements 11.5 Deployment 11.6 Web Sites, Applications, and Virtual Directories in IIS 11.7 ASP.NET Diagnostics and Health Monitoring Unit XII: ASP.NET Working With Data and Security 12.1 Data Binding 12.2 State Management 12.3 Validation 12.4 Caching 12.5 IIS URL Authorization 12.6 Forms authentication 12.7 Role-based authorization 12.8 Trimming site maps with roles 12.9 Config file encryption 3 10 8 10 Implement the AJAX concept to server site data handling in C# Unit XIII: ASP.NET AJAX and MVC 13.1 ASP.NET Ajax Introduction 13.2 ASP.NET Ajax Server Controls 13.3 ASP.NET Ajax Server Data 13.4 ASP.NET Ajax Client-side Library 13.5 ASP.NET Ajax Control Toolkit 5
Apply the MVC framework to application development process Understand the interoperability concept of C# Use of window components for platform independency 13.6 ASP.NET MVC 13.7 Web Application using MVC Pattern 13.8 Razor View and controller 13.9 Model Unit XIV: Interoperability 14.1 Calling Native Code 14.2 Platform Invoke 14.3 COM 14.4 Windows Runtime 14.5 Unsafe Code 14.6 C++/CLI and the Component Extensions 164 2 4. Instructional Techniques The instructional techniques for this course are divided into two groups. First group consists of general instructional techniques applicable to most of the units. The second group consists of specific instructional techniques applicable to specific units. 5.1 General Techniques Providing the reading materials to the students to familiarize the units. Lecture, question-answer, discussion, brainstorming, practical, and buzz session. 5.2 Specific Instructional Techniques Unit Activity and instructional techniques Teaching Hours (48) V Develop the window form application and web based application with integration database Note: Specific Instructional Techniques may or may not require for each of the units mentioned in course outline. 5. Evaluation 5.1 Evaluation (Internal Assessment and External Assessment): Nature of Internal External Semester Total Marks course Assessment Practical Exam/Viva Examination Theory 40% 20% 40% 100% Note: Students must pass separately in internal assessment, external practical exam / viva and or semester examination. 5.2 Evaluation for Part I ( Theory) 5.2.1 Internal Evaluation 40% Internal evaluation will be conducted by course teacher based on following activities: 1) Attendance 5 points 2) Participation in learning activities 5 points
165 3) First assessment ( written assignment) 10 points 4) Second assessment ( Term examination ) 10 points 5) Third assessment ( Internal Practical Exam/Case Study) 10 points Total 40 points 6.2.2 External Evaluation (Final Examination) 40% Examination Division, office of the Dean, Faculty of Education will conduct final examination at the end of semester. 1) Objective type question (Multiple choice 10questionsx1mark) 10 marks 2) Short answer questions (6 questions x 5 marks) 30 marks Total 40 marks 5.3 Evaluation for part II (practical) 20% Nature of the Semester final examination by External Total percent course Examiner Practical 100% 100 6.3.1 Practical Examination Evaluation Scheme a) External assessment 100% i) Record book. 20% ii) Laboratory work exam/case..40% iii) VIVA..40% 3 Recommended books and reading materials (including relevant published articles in national and international journals) Albahari, J., Albahari, B., & Drayton, P. (2012). C# 5.0 in a nutshell (5th ed). Beijing ; Sebastopol: O Reilly. Esposito, D. (2014). Programming Microsoft ASP.NET MVC (Third edition). Sebastopol, California: O Reilly Media, Inc. Ian Griffiths (2012), Programming C# 5.0, O'Reilly Media, Inc. Evjen, B., Hanselman, S., & Rader, D. (2010). Professional ASP.NET 4 in C# and VB. Indianapolis, IN: Wiley Pub. Sharp, J. (2013). Microsoft Visual C# 2013 step by step. Stellman, A., & Greene, J. (2013). Head first C# (Third edition). Beijing: O Reilly.
166 4 Reference materials https://msdn.microsoft.com/en-us/vstudio/ http://www.asp.net/ http://www.codeproject.com/