lundi 1 juin 2015

Conception logicielle !

Il existe dans le monde informatique beaucoup de façons pour concevoir des logiciels. La Conception logicielle utilise tout de même des principes que l'on retrouve d'un langage à un autre. Il existe plusieurs langages en raison des évolutions des systèmes, de l'usage et donc du produit que l'on souhaite à la fin. Entre les jeux vidéos, les logiciels utilisant le réseaux (ce qui est de plus en plus courant), les jeux en ligne, les systèmes d'exploitation, ... Mais mais c'est une jungle !



Choix du langage


On a tout de même un moyen de s'y retrouver, car le choix d'un langage dépend de ses caractéristiques et de l'usage auquel il est destiné. Mais aussi du langage dont votre main d'oeuvre a la connaissance. Ben oui, on ne va pas demander à un équipe qui connait le C++ de programmer en Ruby ! Si l'on a besoin de Ruby, on s'arrange en trouvant des solutions qui ne l'utilisent pas. Car du temps, on le sait bien, c'est de l'argent.

Et le métier de développeur n'est pas évident. Quand il s'agit d'un projet de son initiative, c'est comme les auteurs de Romans, il ne faut pas laisser tomber mais se battre car il est difficile de sortir du lot.
Néanmoins, je ne pourrais vous donner de solutions car ce que je vous rapporte là est ce que j'ai constaté. En revanche, je peux vous parler des points techniques principaux.

Niveaux langages, qu'avons-nous ?


Le haut et le bas niveaux. Soyons clair, ça ne signifie pas des étages, même si on peut effectivement le schématiser avec des niveaux. Le bas veut dire que le langage logiciel "pense" avec un fonctionnement proche de celui de la machine, c'est légèrement plus complexe à appréhender pour certaines personnes (ça tombe bien c'est ceux que vous allez subir haha :-p ). Tandis que haut veut dire une "façon de penser" plus abstraite, donc souvent plus aisée pour certaines personnes.

langages logiciels haut et bas niveaux

Pour exemple, le C/C++ est un bas niveau, le Java est un haut.


En terme de différences, nous avons aussi le mode de fonctionnement du langage. La conception de certains langages leur permet d'exécuter les tâches les unes après les autres mais sans attendre que la tâche en cours soit terminée, c'est ce qu'on appelle le mode non bloquant. Le mode opposé est évidemment bloquant.

Les fonctions et les algorithmes



L'avantage notable des algorithmes est de permettre d'en faire des "fonctions" qui vont pouvoir être appelées sur une seule ligne, on va donc avoir un gain de place dans les lignes de code.

Parce qu'il y a un petit souci, imaginez un code très long (par exemple 134986624896
3684569965 km) où des instructions se répètent plusieurs fois :
le code n'est pas du tout optimisé, vous avez 1 chance sur 1 que le programme rame... et on sait à quel point le "lag" (quand ça rame en anglais) est particulièrement chiant dans un monde où tout va très vite. Et puis pour les joueurs... si vous voulez éviter des massacres... de matos bien-sûr...

un ordi euh volant


Donc on va utiliser les algorithmes, vos copains du début du blog, pour écrire une suite d'opérations spécifiques. Et les fonctions, pour regrouper une suite d'instructions qui agit pour un ou des objectifs précis. Cela dans le but de nous faciliter la tâche plus tard, mais aussi de n'écrire les choses qu'UNE seule fois !
Mais c'est un concept assez compli trop facile pour un débutant DONC les débutants, vous commencerez par les bases ! Sans vous occuper de l'optimisation et de la vitesse à moins qu'on vous le dise ! C'est clair ?
On dit OUI CHEF !


Mouai.... c'est bien...

L'Informatique, dites-moi si je me trompe, mais si on s'embête au début, c'est pour simplifier nos vies après !

À suivre au prochain terrain de combat

Aucun commentaire:

Enregistrer un commentaire