eXtropia Studios Software Development
Software Engineering
Software Engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation and maintenance of software. The term software engineering was popularized during the 1968 NATO Software Engineering Conference (held in Garmisch, Germany) by its chairman F.L. Bauer, and has been in widespread use since. The discipline of software engineering encompasses knowledge, tools, and methods for defining software requirements, and performing software design, software construction, software testing, and software maintenance tasks. Software engineering also draws on knowledge from fields such as computer engineering, computer science, management, mathematics, project management, quality management, software ergonomics, and systems engineering.
Extreme Programming
Extreme Programming is a software engineering methodology, the most prominent of several agile software development methodologies, prescribing a set of daily stakeholder practices that embody and encourage particular XP values. Proponents believe that exercising these software engineering practices to so-called "extreme" levels leads to a development process that is more responsive to customer needs ("agile") than traditional programming methods, while creating software of better quality. Proponents of XP and agile methodologies in general regard ongoing changes to requirements as a natural, inescapable and desirable aspect of software development projects; they believe that adaptability to changing requirements at any point during the project life is a more realistic and better approach than attempting to define all requirements at the beginning of a project and then expending effort to control changes to the requirements.
Object Oriented Programming
Object-oriented programming (OOP) is a programming paradigm that uses "objects" to design applications and computer programs. It can use several techniques from previously established paradigms, including inheritance, modularity, polymorphism, and encapsulation. It was not commonly used in mainstream software application development until the 1990s, though many modern programming languages support OOP.
Advantages of Design Patterns
Design patterns can speed up the development process by providing tested, proven development paradigms. Effective software design requires considering issues that may not become visible until later in the implementation. Reusing design patterns helps to prevent subtle issues that can cause major problems, and it also improves code readability for coders and architects who are familiar with the patterns.
Creating Object Oriented Database Interfaces in PHP5
interface RecordSet {
public function fetch();
public function fetchAssociative();
public function fetchObject();
public function getFieldSpecifications();
}
interface RecordSetBuffered extends RecordSet {
public function numRows();
public function numColumns();
public function setCursor();
public function getCursor();
}