Tuesday, October 26, 2010

Design Patterns

  • Creational patterns
  • Abstract Factory
    Builder
    Factory method
    Prototype
    Singleton ( + Double-Check Singleton )

  • Structural patterns
  • Adapter
    Bridge
    Composite
    Decorator
    Facade
    Flyweight
    Proxy

  • Behavioral patterns
  • Chain of responsibility
    Command
    Interpreter
    Iterator
    Mediator
    Memento
    Observer
    State
    Strategy
    Template method
    Visitor

Tuesday, September 21, 2010

ovh google apps

Erreur du type:

"Ajouter un champ MX dans la zone DNS"
"Utilisez la section (email) pour modifier les champs MX"

Voici comment saisir les données MX:

Monday, July 5, 2010

RestEasy: JBoss project

RestEasy is a JBoss project that helps you build RESTful Web Services. It is JAX-RS compliant (Java API for RESTful Web Services).

It is designed for JBoss but I am actually using it with tomcat only. It is very easy to use in an Eclipse project. You can use:

JAX-RS Hello World with RESTEasy
.

Monday, June 28, 2010

Complexity of basic STL containers

\ . possible implementation insert/remove at the beginning insert/remove at the end find
vector sequence, key not unique,
back-insertion
dynamic array
(malloc)
o(n) o(1) o(1) (operator[])
o(n) (iter or algo)
list sequence, key not unique doubly-linked list o(1) o(1) o(n) (iter or algo)
set sorted associative container, key unique sorted tree o(log(n)) o(log(n)) o(log(n))
map sorted associative container, key unique sorted tree o(log(n)) o(log(n)) o(log(n))
hash_map hashed associative container, key unique hashmap o(1) o(1) o(1)

Notes:
  • for insert/remove in list, assumes we have the iterator at the right position
  • no push_back on associative containers
Ones that I don't use often:
\ . possible implementation insert/remove at the beginning insert/remove at the end find
deque sequence, key not unique
o(n) in the middle
dynamic array or
doubly-linked list
o(1) o(1) o(n)
slist sequence, key not unique,
single direction iterator,
front-insertion
single-linked list o(1) o(n)
o(1) if insert_after
o(n)

  • Sequence container
    1. vector
    2. deque
    3. list
    4. slist
    5. bit_vector

  • Associative containers
    1. set
    2. map
    3. multiset
    4. multimap
    5. hash_set
    6. hash_map
    7. hash_multiset
    8. hash_multimap

  • Container adaptors
    1. stack (LIFO)
    2. queue (FIFO)
    3. priority_queue
    .
  • Thursday, May 27, 2010

    templates

    simple template:

    template < class F > class ClassTemp
    {
    public:
    F test(F* feature );
    };
    
    template < class F >
    F ClassTemp < F > ::test(F* feature) 
    {
    return *feature;
    };
    
    ClassTemp < char > myInst;
    
    int main()
    {
    char c = 'c';
    char ret = myInst.test(&c);
    }
    
    


    Note: since the compiler replaces the templates, source code of the templates needs to be included where it is used (template source code in the .h for ex).
    .

    Wednesday, April 21, 2010

    blogger / blogspot

    I now backup only Ubuntu related stuff since "max-results" is not taken into account anymore in the query
    http://swiss-knife.blogspot.fr/search?q=ubuntu
    to see all posts, or backup blogger blogs:
    http://swiss-knife.blogspot.fr/search?max-results=1000&start=0


  • to insert an array in blogger, you need to put all the HTML on one line... Otherwise, the array is displayed way down.
  • to insert HTML in blogger posts, haven't found easier than putting "amp lt;" <  and "amp gt;" >
    .
  •