Refactoring in (and out of) Delphi Primož Gabrijelčič.

Slides:



Advertisements
Similar presentations
one of the programming languages that you should know
Advertisements

A Taste of Visual Studio 2005 David Grey. Introduction In this session we will introduce Visual Studio 2005 and its features and examine those features.
©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Java Integrated Development Environments Heather Natour Senior Lead Engineer Blackboard Inc. July 18 th 10:15am.
Single-Window Integrated Development Environment Ivan Ruchkin Moscow State University Faculty of Computational Mathematics and Cybernetics Computing Systems.
Test-First Programming. The tests should drive you to write the code, the reason you write code is to get a test to succeed, and you should only write.
CSNAV Milestone College List
Verification and Validation
Review What is a virtual function? What can be achieved with virtual functions? How to define a pure virtual function? What is an abstract class? Can a.
Copyright © 2006 Korson-Consulting 1/219 Unit 4 Test First Development.
WTX Overview.
Creating WWW pages: further topics Barbara Watson Kate Boardman Learning Technologies Team ITS.
EXtreme.NET Dr. Neil Roodyn. eXtreme.NET Who is Dr. Neil? MISSION: To increase the value of your Software Business Working with software for way too long.
Presented by IBM developer Works ibm.com/developerworks/ 2006 January – April © 2006 IBM Corporation. Making the most of The Java Development Tools project.
Introduction to Refactoring Excerpted from ‘What is Refactoring?’ by William C. Wake and Refactoring: Improving the Design of Existing Code by Martin Fowler.
Chair of Software Engineering OOSC - Summer Semester Object-Oriented Software Construction Bertrand Meyer.
OpenModelica Development Environment with Eclipse Integration Adrian Pop, Peter Fritzson, Andreas Remar, Elmir Jagudin, David Akhvlediani Programming Environment.
Programming an FRC Robot Choosing a Language 1. INDEX The Programing Languages and their Environments The Three Major Enviroments Java with the NetBeans.
Test Automation For Web-Based Applications Portnov Computer School Presenter: Ellie Skobel.
Pleasures and Pitfalls of Profiling Primož Gabrijelčič.
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
Test-Driven Development With Visual Studio 2005 Erno de Weerd Info Support.
Technology in Action Alan Evans Kendall Martin Mary Anne Poatsy Twelfth Edition.
Afsin Ustundag, Ray Group International 1. Scheduling Update Scheduling was chosen as the second package to refactor  Significant number of dependencies.
Developing C/C++ applications with the Eclipse CDT David Gallardo.
Cerberus. Introduction Cerberus is test case generator tool. Used for automation of unit testing.
Refactoring An Automated Tool for the Tiger Language Leslie A Hensley
Refactoring1 Improving the structure of existing code.
Going Functional Primož Gabrijelčič. Functional programming.
TEST-1 6. Testing & Refactoring. TEST-2 How we create classes? We think about what a class must do We focus on its implementation We write fields We write.
Object Oriented Software Development
Nick Hodges' Fourteen Reasons Why You Should Upgrade to BDS 2006 Oregon Delphi User Group November 2006.
Introduction to Refactoring Jim Cooper Falafel Software.
Applets Yong Choi School of Business CSU, Bakersfield.
Incremental Design Why incremental design? Goal of incremental design Tools for incremental design  UML diagrams  Design principles  Design patterns.
Refactoring 101 William C. Wake
Why have an Ontology for DoT? The difficult questions.
2160 – Using Together in Delphi  John Kaster  Principal Engineer, Borland.
1 ECE 750 Topic 8 Meta-programming languages, systems, and applications Evolving Object-Oriented Designs with Refactorings – Lance Tokuda and Don Batory.
Unit 10 Implementation and Operation. Key Concepts Implementation deliverables Documentation Coding Reuse Testing Installation Training Support Factors.
© 2002 IBM Corporation Transaction Processing Facility TPF Users Group Acapulco May 2004 © 2004 IBM Corporation Pete Nicholls IBM Toronto Lab TPF Toolkit.
SEG 4110 – Advanced Software Design and Reengineering Topic T Introduction to Refactoring.
Build automation. Prerequisites for Continuous Integration (CI)  Version Control System  Build automation  Notification on build result sent to related.
Refactoring1 Improving the structure of existing code.
CS 614: Theory and Construction of Compilers Lecture 10 Fall 2003 Department of Computer Science University of Alabama Joel Jones.
PYTHON FOR HIGH PERFORMANCE COMPUTING. OUTLINE  Compiling for performance  Native ways for performance  Generator  Examples.
Chapter 6 Testing and running a solution. Errors X Three types Syntax Logic Run-time.
Java IDE Dwight Deugo Nesa Matic
Refactoring Tools – Proparse, Prorefactor, Prolint etc. Steven Lichtenberg Sr. Technologist Jenark Business Systems, Inc.
1 CASE Computer Aided Software Engineering. 2 What is CASE ? A good workshop for any craftsperson has three primary characteristics 1.A collection of.
Mantas Radzevičius ifm-2/2
CS230 Tutorial Week 4.
Test-Driven Development
How Effective Our Dev Tools Are?
Unleash the power of Delphi debugger
Programming, Data & Testing
Test Automation For Web-Based Applications
Object Oriented Design Patterns - Creational Patterns
Improving the structure of existing code
COSYSMO Delphi Round 2 Results
ReSharper Dainius Kreivys.
Developer Productivity: What’s New in C# 6
Refactoring.
ECARS - INCOMPLETE SERVICE REQUESTS.
The JSF Tools Project – WTP (internal) release review
Databases Continued 10/18/05.
By Rajanikanth B Eclipse IDE Overview By Rajanikanth B
Navigation through Source Code
Magpie/Chatbot Activity 5
Refactoring.
Presentation transcript:

Refactoring in (and out of) Delphi Primož Gabrijelčič

Refactoring “Improving the design of code after it has been written.” –Martin Fowler “Changing the code so it doesn’t break.” –popular meaning “Automated code change.” –this presentation

Tools Delphi ModelMaker Code Explorer Castalia

Delphi SyncEdit –Not a real refactoring tool Refactor –Requires syntactically valid (compilable) code Modeling –Gang of Four patterns

ModelMaker Code Explorer Refactoring, navigation, documentation, search Delphi 5 and newer Works with incomplete code (mostly) explorerhttp:// explorer

Castalia Syntax highlighting, navigation, code analysis, coding assistance, refactoring Delphi 5 and newer

Demo Variables and fields Methods Classes and interfaces Code modification Modeling

Hands-on!

Questions?