Your new post is loading...
Your new post is loading...
This list of JVM Languages comprises notable computer programming languages that are used to produce computer software that runs on the Java virtual machine (JVM). Some of these languages are interpreted by a Java program, and some are compiled to Java bytecode and JIT-compiled during execution as regular Java programs to improve performance.
PhpMetrics est un outil d'analyse statique de code ; c'est-à-dire qu'il lit un code source pour en extraire des informations, notamment sur la maintenabilité, la complexité, la cohésion…
À la différence d'autres outils, comme l'excellent PhpDepend, ou la suite d'outils référencée PHPQATools (PhpLoc, PhpDcd, etc.), PhpMetrics se focalise sur des critères de qualité d'un code source : indice de maintenabilité, effort de compréhension ou encore difficulté de lecture du code… Il fournit un très grand nombre d'indicateurs.
L'un des premiers objectifs de cet outil est également de rendre lisibles les rapports d'analyse, même pour les débutants.
Secure By Design is a simple concept in the security world where software is designed from the ground up to be as secure as possible regardless of whether or not it imposes a disadvantage to the end user.
The purpose of this principle is to ensure that users who are not security experts can use the software without necessarily being obliged to jump through hoops to learn how to secure their usage or, much worse, being tempted into ignoring security concerns which expose unaddressed security vulnerabilities due to ignorance, inexperience or laziness.
Peter Nijssen reviews PHP-CI, a new Continuous Integration tool focusing on PHP projects exclusively. See how it stacks up against the rest!
Younes Rafie demonstrates using Sami, the documentation generator, to extract docs from your code's docblocks - even across several tagged versions
La qualité au-delà du code Forum PHP 2012 1
Phing is a build system that allows you to use one command to perform a whole group of actions. For example, with one command you could run code and unit tests, and if the tests pass, automatically upload the new code to your servers and make any neccessary database changes.
Without a tool like Phing, your workflow will be repetitive and time-consuming because you’ll need to go through each step manually.
Free eyeOS Applications - eyeOS-Apps.org Community Portal for Applications eyeOS Apps Linux Multimedia Graphic Development Utilities
SensioLabsInsight is a quality assurance tool that analyzes your source code to find problems that degrade the overall quality of your projects. It can analyze any application developed with PHP, but it's specially designed to perform advanced analysis of Symfony2 applications, Laravel websites and Drupal modules.
Umple is a modeling tool and programming language family to enable what we call Model-Oriented Programming. It adds abstractions such as Associations, Attributes and State Machines derived from UML to object-oriented programming languages such as Java, C++, PHP and Ruby. Umple can also be used to create UML class and state diagrams textually.
PHPUnit+WebDriver Just Sharing Knowledge
|
PHP implementations of the xUnit testing patterns by Gerard Meszaros.
Practical PHP Testing Patterns: Behavior Verification Practical PHP Testing Patterns: Recorded Test Practical PHP Testing Patterns: Scripted Test Practical PHP Testing Patterns: Data-Driven Test Practical PHP Testing Patterns: Test Automation Framework Practical PHP Testing Patterns: Minimal Fixture Practical PHP Testing Patterns: Standard Fixture Practical PHP Testing Patterns: Fresh Fixture Practical PHP Testing Patterns: Shared Fixture Practical PHP Testing Patterns: Back Door Manipulation Practical PHP Testing Patterns: Layer Test Practical PHP Testing Patterns: Four Phase Test Practical PHP Testing Patterns: Assertion Method Practical PHP Testing Patterns: Test Method Practical PHP Testing Patterns: Assertion Message Practical PHP Testing Patterns: Testcase Class Practical PHP Testing Patterns: Test Runner Practical PHP Testing Patterns: Testcase Object Practical PHP Testing Patterns: Test Suite Practical PHP Testing Patterns: Test Discovery Practical PHP Testing Patterns: Inline Setup Practical PHP Testing Patterns: Delegated Setup Practical PHP Testing Patterns: Creation Method Practical PHP Testing Patterns: Implicit Setup Practical PHP Testing Patterns: Prebuilt Fixture Practical PHP Testing Patterns: Lazy Setup Practical PHP Testing Patterns: Suite Fixture Setup Practical PHP Testing Patterns: Setup Decorator Practical PHP Testing Patterns: Chained Tests Practical PHP Testing Patterns: State Verification Practical PHP Testing Patterns: Custom Assertion Practical PHP Testing Patterns: Delta Assertion Practical PHP Testing Patterns: Guard Assertion Practical PHP Testing Patterns: Unfinished Test Assertion Practical PHP Testing Patterns: Garbage-Collected Teardown Practical PHP Testing Patterns: Automated Teardown Practical PHP Testing Patterns: In-Line Teardown Practical PHP Testing Patterns: Implicit Teardown Practical PHP Testing Patterns: Test Double Practical PHP Testing Patterns: Test Stub Practical PHP Testing Patterns: Test Spy Practical PHP Testing Patterns: Mock Object Practical PHP Testing Patterns: Fake Object Practical PHP Testing Patterns: Configurable Test Double Practical PHP Testing Patterns: Hard-Coded Test Double Practical PHP Testing Patterns: Test-Specific Subclass Practical PHP Testing Patterns: Named Test Suite Practical PHP Testing Patterns: Test Utility Method Practical PHP Testing Patterns: Parameterized Test Practical PHP Testing Patterns: Testcase Class Per Class Practical PHP Testing Patterns: Testcase Class per Fixture Practical PHP Testing Patterns: Testcase Superclass Practical PHP Testing Patterns: Testcase Class per Feature Practical PHP Testing Patterns: Test Helper Practical PHP Testing Patterns: Database Sandbox Practical PHP Testing Patterns: Stored Procedure Test Practical PHP Testing Patterns: Table Truncation Teardown Practical PHP Testing Patterns: Dependency Injection Practical PHP Testing Patterns: Transaction Rollback Teardown Practical PHP Testing Patterns: Dependency Lookup Practical PHP Testing Patterns: Humble Object Practical PHP Testing Patterns: Test Hook Practical PHP Testing Patterns: Literal Value Practical PHP Testing Patterns: Derived Value Practical PHP Testing Patterns: Generated Value Practical PHP Testing Patterns: Dummy Object
PHP examples for Martin Fowler's Refactoring book.
Practical PHP Refactoring: Inline Temp Practical PHP Refactoring: Move Method Practical PHP Refactoring: Move Field Practical PHP Refactoring: Extract Class Practical PHP Refactoring: Hide Delegate Practical PHP Refactoring: Inline Class Practical PHP Refactoring: Remove Middle Man Practical PHP Refactoring: Introduce Foreign Method Practical PHP Refactoring: Introduce Local Extension Practical PHP Refactoring: Self Encapsulate Field Practical PHP Refactoring: Replace Data Value with Object Practical PHP Refactoring: Change Value to Reference Practical PHP Refactoring: Change Reference to Value Practical PHP Refactoring: Replace Array with Object Practical PHP Refactoring: Duplicate Observed Data Practical PHP Refactoring: Change Unidirectional Association to Bidirectional Practical PHP Refactoring: Change Bidirectional Association to Unidirectional Practical PHP Refactoring: Replace Magic Number with Symbolic Constant Practical PHP Refactoring: Encapsulate Field Practical PHP Refactoring: Encapsulate Collection Practical PHP Refactoring: Replace Type Code with Class Practical PHP Refactoring: Replace Type Code with Subclasses Practical PHP Refactoring: Replace Type Code with State or Strategy Practical PHP Refactoring: Replace Subclass with Fields Practical PHP Refactoring: Decompose Conditional Practical PHP Refactoring: Consolidate Conditional Expression Practical PHP Refactoring: Consolidate Duplicate Conditional Fragments Practical PHP Refactoring: Remove Control Flag Practical PHP Refactoring: Replace Nested Conditionals with Guard Clauses Practical PHP Refactoring: Replace Conditional with Polymorphism Practical PHP Refactoring: Introduce Null Object Practical PHP Refactoring: Introduce Assertion Practical PHP Refactoring: Rename Method Practical PHP Refactoring: Add Parameter Practical PHP Refactoring: Remove Parameter Practical PHP Refactoring: Separate Query from Modifier Practical PHP Refactoring: Parameterize Method Practical PHP Refactoring: Replace Parameter with Explicit Methods Practical PHP Refactoring: Preserve Whole Object Practical PHP Refactoring: Replace Parameter with Method Practical PHP Refactoring: Introduce Parameter Object Practical PHP Refactoring: Hide Method Practical PHP Refactoring: Replace Constructor with Factory Method Practical PHP Refactoring: Encapsulate Downcast (and Wrapping) Practical PHP Refactoring: Remove Setting Method Practical PHP Refactoring: Replace Exception with Test Practical PHP Refactoring: Pull Up Field Practical PHP Refactoring: Pull Up Method Practical PHP Refactoring: Replace Error Code with Exception Practical PHP Refactoring: Pull Up Constructor Body Practical PHP Refactoring: Push Down Method Practical PHP Refactoring: Push Down Field Practical PHP Refactoring: Extract Subclass Practical PHP Refactoring: Replace Record with Data Class Practical PHP Refactoring: Extract Superclass Practical PHP Refactoring: Extract Interface Practical PHP Refactoring: Collapse Hierarchy Practical PHP Refactoring: Form Template Method Practical PHP Refactoring: Replace Inheritance with Delegation Practical PHP Refactoring: Replace Delegation with Inheritance Practical PHP Refactoring: Tease Apart Inheritance Practical PHP Refactoring: Convert Procedural Design to Objects Practical PHP Refactoring: Separate Domain from Presentation Practical PHP Refactoring: Extract Hierarchy Practical PHP Refactoring: Extract Method Practical PHP Refactoring: Inline Method Practical PHP Refactoring: Replace Temp with Query Practical PHP Refactoring: Introduce Explaining Variable Practical PHP Refactoring: Split Temporary Variable Practical PHP Refactoring: Remove Assignments to Parameters Practical PHP Refactoring: Replace Method with Method Object Practical PHP Refactoring: Substitute Algorithm
Il s’agit de comprendre rapidement comment concevoir puis de coder « grosses mailles » une API. Les objectifs de cette expérience étaient les suivants : Découvrir les pr…
Peter Nijssen takes a look at the new Workflow plugin for Jenkins, which makes continuous delivery much more streamlined.
Peter Nijssen installs CSSLint, JSHint and Task Scanner into Jenkins, helping you automate the scanning of your PHP project even further.
De nos jours de plus en plus d'entreprises ne jurent que par les tests unitaires. Faire du test, faire du test, faire du test ! “Une application n'est pérenne …
L'objectif de cet article est de montrer comment correctement répliquer des sessions PHP dans une application PHP distribuée entre n noeud.
Lucid is a free, open source web desktop, or webOS that lets you:
Access your media, office documents, and other files anywhere Stay up to date with Twitter, RSS feeds, and what's happening on the web Create great web applications in ridiculously short amounts of time
eyeOS est un webOS, environnement de bureau de type cloud computing, basé sur une interface Web, libre jusqu'à la version 2.5 (sous licence AGPL v3). En 2005, deux jeunes catalans Pau García-Milà et Marc Cercós (ils avaient alors 17 ans) initient le projet depuis leur village d' Olesa de Montserrat (Baix Llobregat).
Le paquet pear php_uml permet le reverse engineering en ligne de commande. Il ne s'agit pas d'un outil de modélisation mais simplement d'un utilitaire de reverse engineering. En traitant un code source existant avec cet outil, on obtient un fichier xmi que l'on peut ensuite visualiser et modifier, en théorie, avec n'importe quelle éditeur. Dans la pratique, seul BoUML exploite ce fichier.
What we need is a deploy mechanism that is smart enough to do the right thing. This could be Capistrano with some scripts. This is what we used at WePay for quite a while and it works ok, but most of our code is in PHP and it made sense to have our deploy system better integrated so I stole the parts of Capistrano I liked, dumped the rest and wrote a PHP-based deploy tool that we now use. I called it Ploy and the Web interface came to be known as WePloy. Dumb name, I know, but as they say, naming things, cache invalidation and off-by-one errors are the two hardest things in computer science.
La mise en place d'une plateforme de test et la mise en œuvre de celle-ci est un exercice délicat. Obtenir une plateforme de test multi-navigateur, des scénarios répétés avec des jeux de données différents, éprouver les cas d'erreurs et générer un rapport de test détaillée sont autant de problématiques détaillées dans ce billet.
|