Skip to content

SeleneSoftware/Engineering_Practices

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 

Repository files navigation

Engineering Practices

Practices and Principles to develop software

Description

In order to develop better software, certian principles are followed for stronger and secure applications. This is a curated list of accepted principles and practices for Selene Software, and any others who wish to follow, to follow when developing new software.

General Principles

These are to be followed for all application development.

SOLID Principles

  • Single Responsibility Principle
    • An object should do just one thing, and do it well.
  • Open/Closed Principle
    • A class should be open for extension, but closed for modification
  • Liskov Substitution Principle
    • Objects in a program should be replaceable with instances of their subtypes without altering the correctness of that program
    • "If it looks like a duck, quacks like a duck, but runs on batteries, it's most likely not a duck."
  • Interface Segregation Principle
    • Many client-specific interfaces are better than one general-purpose interface
  • Dependency Inversion Principle
    • Depend upon Abstractions. Do not depend upon concretions.

DRY Practices

  • Don't
  • Repeat
  • Yourself

KISS

  • Keep
  • It
  • Simple
  • Stupid

Principles of Chaos Engineering

[http://principlesofchaos.org/]

Web Development

These are geared towards web development, with some language-spefic standards included.

PHP-FIG Standards

About

Practices and Principles to develop software

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published