|
|
|
Frequently Asked Questions
What is this course about?This course is designed for those who want to build upon their basic .NET language knowledge. Developers learn to identify and solve common design and architecture problems by applying best practices to .NET application development..NET design patterns are also covered in this course. Design patterns enhance the adaptability of your application, creating application reuse and flexibility.What background do I need?Programming experience at the level of
Course 419, C# Programming: Hands-On, or
Course 503, Visual Basic® Programming for .NET: Hands-On, is assumed. For example, you should: Have experience working with Visual Studio .NETBe familiar with object-oriented concepts Have experience building .NET applications in Visual Basic, C# or C++ Who will benefit from this course?Typical course participants include programmers, system architects and anyone developing .NET applications. Anyone currently developing or working with .NET applications will find this course valuable. What version of Visual Studio is used in this course?This course uses Visual Studio 2010.What are design patterns?Design patterns allow developers to apply a proven design
structure to commonly occurring design problems.
Due to the large number of choices available for solving similar
design problems, choosing the best solution can be challenging.
Object-oriented development presents more flexibility than
procedural languages, such as the ability to inherit code, code
to interfaces and dynamically change objects at run time.
Ironically, this flexibility sometimes makes developing the best
solution more difficult. Design patterns recognize and identify
similarities between applications and apply a proven structure to solve these similar problems. Once the design is coded, the resulting code structure is easier to maintain and more adaptable.
What design patterns does this course cover?This course covers the principles of applying design patterns. Specific design patterns covered in this course include the Façade, Strategy, Decorator, Template Method, Observer, Adapter, Model View Controller, Mock Object, Identity Map, Domain Object and Data Mapper patterns. Each of these design patterns serves a distinct, unique purpose, while each one serves the common purpose of application reuse and flexibility.What are best practices and which ones are covered in this course?Best practices are coding and design techniques proven to work in particular situations. Best practices allow
code to be more maintainable, flexible and resilient. This course
covers best practices in the areas of data access,
flexible architecture, coding and unit testing.In the area of data access best practices, you learn how to use Object Relational Mapping techniques and how to decouple your business logic and application entity types from the database structure. The course gives you guidelines for building a flexible application framework, architecting multi-tiered applications and applying test-driven development techniques.Does this course cover test-driven development?Yes. This course covers test-driven development, also known as test-first development. Test-driven development is a beneficial technique because it ensures that testing is included in the development process. By employing the test-driven technique, developers are able to correct errors along the way, instead of re-visiting code for errors after the bulk of the code has been written. If an error is encountered after code has been written, test-driven development allows for an easier solution, testing for the newly found error. Test-driven development ensures defect correction does not introduce new errors and that the corrected defect becomes a permanent part of the application.Does this course cover LINQ (Language INtegrated Query)?Yes. This course uses the Entity Framework and implementations of the Domain Object/Data Mapper patterns to draw data from multiple tables.For a course that includes extensive coverage of LINQ, you may be interested in
Course 973, Programming C# Extended Features: Hands-On.Does this course cover .NET on platforms other than Microsoft?No. This course runs on the Microsoft platform only. Though some of the exercises could be applied to UNIX or Linux, this course does not cover UNIX or Linux.How much time is spent on each topic?| Content | Hours | | Introduction | 1.5 | | Simplifying Complex Programming with Proven Design Patterns | 6.0 | | Applying Test-Driven Development Techniques | 5.0 | | Architecting a Layered Application | 3.0 | | Applying Best Practices | 5.5 | | Automating Repetitive Tasks | 2.0 | Times, including the workshops, are estimates; exact times may vary according to the needs of each class.How much of the course is devoted to hands-on exercises?About 40 percent of the course is devoted to hands-on exercises. Throughout the course, you implement design patterns to create adaptable and maintainable solutions. Using a Test Driven approach, you build reusable test streams to enable future application development without reintroducing bugs. All exercises are offered and may be completed in either C# or Visual Basic 2010.How does this course relate to other Learning Tree courses?The following courses teach you specific techniques for building applications. Course 511 covers coding practices and techniques that further enhance your applications. |
|
|
Course Dates
UK Dates | | 1-4 May | Edinburgh enrol | | 1-4 May | London enrol | | 10-13 Jul | Edinburgh enrol | | 10-13 Jul | London enrol | | 18-21 Sep | Edinburgh enrol | | 18-21 Sep | London enrol | US East Coast Dates | | 21-24 Feb | New York enrol* | | 17-20 Apr | Washington, DC enrol* | | 15-18 May | New York enrol* |
*New York and Washington DC Courses – Available online with a run time of 2pm to 9pm BST. For AnyWare enrolments, please register at least 10 days prior to the start of the course.
More Dates and locations.
On-Site &
Custom Training
Bring this or any Learning Tree course to your location or have it customised for your organisation.
|