Journal Qt 5 à l'horizon

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
34
9
mai
2011

Un post de Lars Knoll sur le blog Qt de Nokia fait le point sur la future version Qt 5. Dans ce texte Lars indique que Qt 4 est sorti en juin 2005 et que depuis cette époque beaucoup de chose ont changés dans le paysage informatique. Selon lui il est temps dévoluer vers Qt 5. Certes la transition se veut moins traumatisante que le passage de Qt 3 à Qt 4 puisque la compatibilité sera assurée au niveau du (…)

Journal Ulfius: framework pour faire des API Web en C

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
33
1
juin
2016

TL;DR

Ulfius est un framework pour développer des webservices et des API REST en C facilement et rapidement.

Intro

Ca fait quelques mois que je travaille sur ce projet, et il a atteint une certaine maturité pour avoir envie d'en parler plus largement en espérant lui donner un nouvel élan.

Il y a quelques temps, je parlais ici de mon projet de serveur domotique à base d'API REST en C. Depuis, je continue à le faire évoluer tranquillement, et (…)

Journal Genèse d'un journal

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
33
9
sept.
2012

Mon journal précédent parlait de realloc dont on ne contrôlait pas la valeur de retour. Suite à ce journal j'ai été très surpris par le nombre de commentaires clamant que ce n'était pas important, que le noyau se chargerait de tuer le processus, que le programme planterait, … Je vais donc expliquer ce qui m'a amener à écrire ce journal.

Je codais un petit truc vite fait en C et j'avais besoin d'utiliser snprintf. Cette fonction prend, en paramètre, (…)

Opmock : un outil pour le TDD efficace en C et C++

Posté par  . Modéré par Lucas Bonnet. Licence CC By‑SA.
Étiquettes :
32
14
mar.
2011
Ligne de commande

Le [TDD] est une pratique souvent utilisée dans les projets de développement utilisant les « méthodes agiles ». Pour supporter cette pratique, il est nécessaire de disposer d'outils qui permettent d'écrire facilement des tests unitaires, mais également de couper les dépendances d'une section de code, afin de la tester en isolation. Les langages actuels, comme Java ou C#, bénéficient tous de pléthore d'outils de ce type, comme Jmockit ou Mockito. Cependant, le C et le C++ n'ont pas cette chance, bien qu'une quantité impressionnante de code les utilise.

Opmock est un outil de génération automatique de stubs et de mocks, qui permet de simplifier énormément le TDD avec des bases de code importantes en C ou C++, existantes ou nouvelles.

Le projet est placé sous licence GPLv3.

Journal Programme de réinsertion pour informaticien au bout du rouleau

Posté par  . Licence CC By‑SA.
Étiquettes :
31
31
juil.
2017

Les symptomes

Vous pondez du code un peu mou ?

Votre dernière analyse d'uri laissait à désirer ?

Vous sentez comme une légère baisse de motivation à propos du énième framework révolutionnaire destiné à un organe de forme circulaire, tournant autour d'un axe passant par son centre ?

Les couleurs de votre term sont ternes ?

Vim s'est perdu dans la matrice en recherchant Neo ?

Vous utilisez Emacs d'une seule main ?

Lire les derniers journaux polémiques de linuxfr ne vous inspire qu'indifférence, et vous (…)

Journal Koffi, un paquet simple, complet et rapide de FFI C pour Node.js

Posté par  . Licence CC By‑SA.
Étiquettes :
30
22
juin
2022

Hello :)

Aperçu du projet

Koffi, c'est un petit projet que j'ai démarré un petit peu par hasard il y a 4 mois, après avoir eu besoin d'appeler du C depuis un projet Node.js. J'ai commencé par utiliser node-ffi et node-ffi-napi, mais les performances étaient désastreuses. J'ai essayé d'autres paquets (comme fastcall, basé sur dyncall), mais il leur manque trop de choses : notamment, le passage de structures par valeur (en paramètre ou en valeur de retour) (…)

Coder efficacement, bonnes pratiques et erreurs à éviter

Posté par  . Édité par BAud, Nÿco, Thom, Benoît Sibaud et olivierweb. Modéré par Ontologia. Licence CC By‑SA.
30
14
avr.
2014
C et C++

Développer une application peut rapidement devenir un enfer si vous n'avez pas anticipé certaines difficultés et fait les bons choix au moment de sa conception. Ce livre vous aidera à vous poser les bonnes questions et à tirer le meilleur parti de la programmation objet, en particulier en C++, sans tomber dans les pièges les plus fréquents. Il clarifie certains concepts délicats et passe en revue un ensemble de bonnes pratiques, qui rendront vos projets plus évolutifs et plus faciles à maintenir.

Titre de l'image

C : Science et éducation : EZ-Draw 1.2 est sorti

Posté par  . Édité par Davy Defaud, Nÿco et ZeroHeure. Modéré par Pierre Jarillon. Licence CC By‑SA.
Étiquettes :
30
19
avr.
2014
C et C++

Pour qui veut apprendre à réaliser une interface graphique, il y a un très grand choix de langages et de bibliothèques graphiques. Dans le cas particulier du langage C (ou C++), les bibliothèques graphiques communément utilisées (GTK+, Qt, etc.) sont très complètes, mais nécessitent un important effort d’apprentissage ; pour tout dire, elles ne sont clairement pas adaptées pour le débutant ou l’autodidacte. C’est pour cette raison que je développe EZ-Draw depuis maintenant six ans, et j’ai le plaisir de vous annoncer la sortie de la nouvelle version 1.2.

EZ-Draw (Easy Draw) est une petite boîte à outil graphique pour le langage C, fonctionnant à la fois sous GNU/Linux, Mac OS X et Windows (toutes versions).

EZ-Draw est conçu pour l’apprentissage de la programmation événementielle et des interfaces graphiques. Il permet de créer de façon très simple des fenêtres, y dessiner, réagir à la souris et au clavier, faire des animations.

Au menu des nouveautés :

  • lecture et affichage des images aux formats PNG, JPEG, GIF et BMP ;
  • nouvelle documentation récrite avec Sphinx ;
  • traduction de tout le projet en anglais, et documentation bilingue ;
  • nouveaux jeux : Doodle in London, 2048 / 2584, Bubblet.

Le logiciel est sous licence LGPL ; il est utilisé en particulier dans la Licence d’informatique de l’Université d’Aix‐Marseille, dans des projets d’algorithmique ou des projets de jeux en 2D (souvent inspirés des jeux sur smartphones).

Journal pythran: python -> c++

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
30
8
juil.
2012

La lecture quotidienne des journaux m'avertit qu'il y a de nombreux pythonistes dans le coin, alors…

Dans ma pratique régulière du Python (et n'oubliez pas : manger 5 langages par jour pour être bien en forme !), je prends un grand plaisir à coder des algos à base de liste / ensembles / dictionnaires le tout dans une petite sauce fonctionnelle. C'est loin d'être la seule façon de programmer en Python mais c'est comme ça que je fais.

Bien sûr, tout (…)

Journal Quelques langages de programmation pour GNOME

Posté par  . Licence CC By‑SA.
Étiquettes :
28
14
déc.
2013

C, Python, Vala, C++, C#, JavaScript, Java, Perl, GOB, Genie et sûrement d'autres. Autant de langages possibles pour écrire une application pour GNOME. Voyons voir ce que le C, Python et Vala ont dans le ventre !

Le langage C

Le langage C peut être vu comme un langage assez primitif. Mais c'est sans compter les nombreuses bibliothèques de GNOME : GObject, GLib, GTK+, et bien d'autres (écrites elles-mêmes en C).

GObject, le cœur de GNOME, offre un (…)

Journal C++11 : sur le fil

Posté par  . Licence CC By‑SA.
Étiquettes :
28
6
juin
2013
Ce journal a été promu en dépêche : C++11 : sur le fil.

Dans la course effrénée que se livrent les compilateurs, GCC vient traîtreusement de gagner une manche en étant le premier à fournir une implémentation complète du langage C++11. Les développeurs ont profité de la sortie de la version de maintenance 4.8.1 pour implanter les deux fonctionnalités manquantes :

les rvalue-references pour le pointeur this

Celles-ci permettent (entre autres) de surcharger des fonctions membres quand this est une rvalue ; voici un exemple tiré de la proposition originale :

class X {
(…)

Journal Parlons C, parlons pipe !

Posté par  (site web personnel) . Licence CC By‑SA.
27
21
août
2012

Mon livre de chevet, Unleashed C (non je mens, mon livre de chevet reste Playboy, mais ça fait moins sérieux), propose d'implémenter une FIFO (ou "pipe", pour tube en anglais) de la façon suivante (approximativement, j'ai simplifié la représentation (surtout il y avait QUEUE écrit et je veux pas de problèmes)) :

+----------+
| taille   |
+----------+
| debut    |-------+
+----------+       |
| fin      |       |
+----------+       V
  |              +---+---------+
  |              | s | donnes  |
  |              +---+---------+
  |
(…)

codeurs, traducteurs, cppreference a besoin de vous

Posté par  . Édité par baud123 et Benoît Sibaud. Modéré par Benoît Sibaud. Licence CC By‑SA.
Étiquettes :
27
14
nov.
2012
C et C++

cppreference est un wiki dont le but est de fournir une documentation exhaustive des bibliothèques standard C (89, 99, 11) et C++ (03 et 11). Le contenu est disponible sous licences libres CC-BY-SA et GFDL.

Depuis quelques mois, le site anglophone a changé de peau pour utiliser mediawiki, lui assurant une meilleure lisibilité, la possibilité d'utiliser des templates… Les contenus ont depuis régulièrement progressé en qualité, même si certaines choses restent à faire.

La dernière initiative a été de générer les contenus français, mandarin, italien, espagnol, portugais et russe depuis le contenu anglais en utilisant l'outil google translate. Évidemment, si certaines phrases sont correctement traduites, d'autres sont à peine compréhensibles et un effort important reste à fournir pour arriver à une documentation francophone de qualité, mais une base est déjà présente sur laquelle s'appuyer.

Envie de découvrir toutes les nouveautés de la bibliothèque standard C++11 (multithreading, regexp…) tout en rendant service à la communauté francophone ? Ne perdez pas cette opportunité ! Faites chauffer gcc clang++ et rendez-vous sur fr.cppreference.com

Journal Visiteurs en C++

Posté par  (Mastodon) . Licence CC By‑SA.
Étiquettes :
27
24
avr.
2013

Sommaire

Le design pattern du Visiteur est un des plus connu. Il permet, selon Wikipédia, de «séparer un algorithme d'une structure de données». Je ne rappelle pas l'intérêt de ce design pattern, j'en viens directement au fond de cet article : quelle est la meilleure façon de faire un Visiteur en C++ ? Il y a (…)

Journal Pythran : C++ pour les serpents

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
26
5
déc.
2012

Salut à toi, mon petit journal
Ça fait bien longtemps que je ne t'ai pas parlé de mon petit bébé cybernétique, Pythran.

Tu te rappelles de lui ? C'est un convertisseur d'un sous ensemble du langage Python vers C++11. L'idée est de mutiler légèrement le langage Python (hop, plus de classes) et d'ajouter des contraintes de typage statique pour générer un module natif optimisé à partir d'un module écrit en Python.

Sommaire

  • Résumé des épisodes Précédents
  • Optimisations statiques
  • Projet Euler
  • (…)