High-Quality Code @ Telerik Academy
http://codecourse.telerik.com/
The website and all video materials language is in Bulgarian
About Telerik Academy
About the Course
Requirements
Course Curriculum
The Trainers Team
Course Schedule
Assessment
Certification and Awards
Recommended Books
High-Quality Programming Code Construction - Course Introduction
1. High-Quality Programming
Code Construction
Course Introduction
Svetlin Nakov
Manager Technical Training
http://www.nakov.com
Telerik Software Academy
academy.telerik.com
2. Table of Contents
About Telerik Academy
About the Course
Requirements
Course Curriculum
The Trainers Team
Course Schedule
Assessment
Certification and Awards
Recommended Books 2
4. About Telerik
What Telerik does?
Leading vendor of ASP.NET AJAX, Silverlight,
WPF, Window Phone 7 and ASP.NET MVC
components, ORM, Reporting, and CMS
solutions and Visual Studio plugins
Headquartered in Bulgaria
With offices in USA, Germany, Australia, India
More than 500 employees – mostly developers
Employer #1 in Bulgaria for 2010
Microsoft Gold Certified Partner
4
5. About Telerik Academy
Telerik Academy is an initiative Telerik for
training of young software engineers
Software Academy
.NET Essentials, QA Academy, Dev-Support
Student Courses
School Academy
Algo Academy
Kids Academy
Contests and other
free initiatives
5
6. Academy at a Glance
Kids Academy
University Courses School Academy Algo Academy
Software Academy
C# Fundamentals
.NET Essentials QA Academy Developer Support
Job at Telerik Another Job
6
7. Free Courses for Students
Courses for Students @ Telerik Academy
High-Quality Code Mobile Development
(starting 5 March) (starting October)
Web Applications
Web Design with HTML5
with ASP.NET MVC
(starting 13 and 15 March)
(starting October)
Cloud Development Windows 8 Development
(starting 14 March) (starting October)
7
8. About the Course
High-quality programming code course objectives
Fundamental principles and practices for building
high-quality software
Focus on the source code
What is high-quality code?
Easy-to-read
Easy-to-understand
Easy-to-modify
Correct behavior
8
9. Requirements to the Students
Computer programming skills
At least one of the following languages:
C#, Java, C++ or PHP
Object-oriented programming
Abstraction, encapsulation, inheritance,
polymorphism, exceptions handling
English language
All training materials are in English
(intentionally, Telerik Academy policy)
Registration
9
10. Registration
All students should register for the course at:
http://codecourse.telerik.com
Registration is important!
Registration allows the trainers contact you
regarding the course projects, exams, etc.
Registered students are assigned to work on
one of the course projects
On the link you can find all the materials,
videos, homework, etc.
10
12. Curriculum
1. Course Overview. Introduction to High-Quality
Programming Code. Entrance Project (05.03.2012)
2. Fundamentals of Software Engineering (19.03.2012)
3. Naming Identifiers in the Source Code. Naming
Classes, Methods, Variables, Parameters and Other
Elements of the Code (12.03.2012)
4. Designing High-Quality Classes and Class
Hierarchies. Best Practices in the Object-Oriented
Design
High-Quality Methods. Strong Cohesion and Loose
Coupling (26.03.2012)
12
13. Curriculum (2)
5. Using Variables, Data, Expressions and Constants
Correctly
Using Control Structures, Conditional Statements
and Loops Correctly (02.04.2012)
6. Correctly Formatting the Code
Code Documentation, Comments and Self-
Documenting Code. Code Conventions (09.04.2012)
7. Software Quality Assurance
Testing and Debugging
Unit Testing. Test-Driven Development (23.04.2012)
13
14. Curriculum (3)
8. Defensive Programming. Using Exceptions.
Performance Tuning and Code Optimization
Refactoring Existing Code to Improve Its Quality
Code Integration (07.05.2012)
9. Development Tools. IDEs. Change Management
Systems. Code Analysis Tools. Automated Testing
Tools. Automated Build Tools. Continuous
Integration Tools (14.05.2012)
10. Test Covering the All Studied Topics (21.05.2012)
11. Course Projects: Assignment, Guidelines and
Discussion (28.05.2012)
14
27. Assessment
Entrance project 0 … 10 score
Small assignment in C#, PHP, Java or C++
Checked for correctness only
Homework 0 … 15 score
Test (theory) 0 … 20 score
40 questions (theory)
Final project 0 … 55 score
Refactoring and unit testing of low-quality code
The same language as the entrance project
27
28. Entrance Projects
Entrance projects aim to check the entrance
level of all course attendees
Simple programs to be developed at home
Console applications, no GUI / Web interface
Allowed languages: C#, PHP, Java and C++
Evaluation:
Projects will be checked for correctness only
Do not care for code quality
Do not create GUI
28
29. Sample Entrance Projects
Project #1
Tic-tac-toe Game
2 players play in the console
Project #2
Bulls and Cows Game
2 players play in the console
Project #3
Hang-Man Game
2 players play in the console (no visualization)
29
31. Certification and Awards
Best students will get certification and awards
Certificate of achievement
Up to 10% of the students will get a certificate
Issued by Telerik Academy
Signed by the trainers team
Awards
Sponsor:
Remarkable results
Top 5-10 students
31
33. Recommended Books
Code Complete, 2nd Edition, Steve
McConnell, ISBN 0735619670,
http://www.cc2e.com
Refactoring: Improving the Design of
Existing Code, Martin Fowler, Kent
Beck, John Brant, William Opdyke, Don
Roberts, ISBN 0201485672,
http://martinfowler.com/
Test Driven Development: By Example,
Kent Beck, ISBN 0321146530
33
34. Contact us
If you have any questions you can contact us:
academy@telerik.com
You can write in our forum:
http://forums.academy.telerik.com
Other students may help you
You may help other students
We will answer you, too
34
35. High-Quality Programming
Code Construction
курсове и уроци по програмиране, уеб дизайн – безплатно BG Coder - онлайн състезателна система - online judge
курсове и уроци по програмиране – Телерик академия форум програмиране, форум уеб дизайн
уроци по програмиране и уеб дизайн за ученици ASP.NET курс - уеб програмиране, бази данни, C#, .NET, ASP.NET
http://academy.telerik.com
програмиране за деца – безплатни курсове и уроци ASP.NET MVC курс – HTML, SQL, C#, .NET, ASP.NET MVC
безплатен SEO курс - оптимизация за търсачки алго академия – състезателно програмиране, състезания
курсове и уроци по програмиране, книги – безплатно от Наков курс мобилни приложения с iPhone, Android, WP7, PhoneGap
уроци по уеб дизайн, HTML, CSS, JavaScript, Photoshop Дончо Минков - сайт за програмиране
free C# book, безплатна книга C#, книга Java, книга C# Николай Костов - блог за програмиране
безплатен курс "Качествен програмен код"
безплатен курс "Разработка на софтуер в cloud среда" C# курс, програмиране, безплатно
36. Free Trainings @ Telerik Academy
“High-Quality Programming Code"
course @ Telerik Academy
codecourse.telerik.com
Telerik Software Academy
academy.telerik.com
Telerik Academy @ Facebook
facebook.com/TelerikAcademy
Telerik Software Academy Forums
forums.academy.telerik.com