284 lines
11 KiB
HTML
Raw Normal View History

2015-09-03 20:08:14 +02:00
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>La programmation expliquée simplement</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="author" content="wxcafé">
<link rel="icon" type="image/png" href="file:///home/wxcafe/code/blog-source/output/theme/img/favicon.ico">
<!-- Le styles -->
<link rel="stylesheet" href="file:///home/wxcafe/code/blog-source/output/theme/css/bootstrap.css" type="text/css" />
<link href='http://fonts.googleapis.com/css?family=Oswald&subset=latin,latin-ext' rel='stylesheet' type='text/css'>
<script type="text/javascript">
/* <![CDATA[ */
(function() {
var s = document.createElement('script');
var t = document.getElementsByTagName('script')[0];
s.type = 'text/javascript';
s.async = true;
s.src = '//api.flattr.com/js/0.6/load.js?'+
'mode=auto&uid=wxcafe&button=compact&popout=0';
t.parentNode.insertBefore(s, t);
})();
/* ]]> */
</script> <!-- flattr button loader -->
<style type="text/css">
body {
padding-top: 60px;
padding-bottom: 40px;
}
.sidebar-nav {
padding: 9px 0;
}
.tag-1 {
font-size: 13pt;
}
.tag-2 {
font-size: 10pt;
}
.tag-2 {
font-size: 8pt;
}
.tag-4 {
font-size: 6pt;
}
</style>
<link href="file:///home/wxcafe/code/blog-source/output/theme/css/bootstrap-responsive.css" rel="stylesheet">
<link href="file:///home/wxcafe/code/blog-source/output/theme/css/font-awesome.css" rel="stylesheet">
<link href="file:///home/wxcafe/code/blog-source/output/theme/css/pygments.css" rel="stylesheet">
<!-- Le fav and touch icons -->
<link rel="shortcut icon" href="file:///home/wxcafe/code/blog-source/output/theme/images/favicon.ico">
<link href="file:///home/wxcafe/code/blog-source/output/feeds/feed.rss.xml" type="application/atom+xml" rel="alternate" title="Wxcafé RSS Feed" />
</head>
<body>
<div class="navbar navbar-fixed-top">
<div class="navbar-inner">
<div class="container-fluid">
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</a>
<a class="brand" href="file:///home/wxcafe/code/blog-source/output/index.html">Wxcafé </a>
<div class="nav-collapse">
<ul class="nav">
<li><a href="file:///home/wxcafe/code/blog-source/output/archives.html"><i class="icon-th-list"></i> Archives</a></li>
<li><a href="file:///home/wxcafe/code/blog-source/output/pages/about/">A propos</a></li>
<li class="divider-vertical"></li>
<ul class="nav pull-right">
</ul>
</ul>
</div><!--/.nav-collapse -->
</div>
</div>
</div>
<div class="container-fluid">
<div class="row">
<div class="span9" id="content">
<section id="content">
<article>
<header>
<h1>
<a href=""
rel="bookmark"
title="Permalink to La programmation expliquée simplement">La programmation expliquée simplement</a>
</h1>
</header>
<div class="entry-content">
<div class="well">
<footer class="post-info">
<span class="label">Date</span>
<span class="published" title="2012-08-27T00:22:00+02:00">
<i class="icon-calendar"></i> Mon 27 August 2012
</span>
<br />
<span class="label">By</span>
<a href="file:///home/wxcafe/code/blog-source/output/author/wxcafe.html"><i class="icon-user"></i>Wxcafe</a>
<br />
<span class="label">Category</span>
<a href="file:///home/wxcafe/code/blog-source/output/category/teaching/"><i class="icon-folder-open"></i>Teaching</a>
<br />
</footer><!-- /.post-info --> </div>
<p>Salut!<br />
Tout d'abord, je tiens a m'excuser de ne pas avoir eu le temps d'écrire
récement, mais j'ai eu la chance d'avoir un PC a monter, donc j'ai passé
pas mal de temps assez occupé. </p>
<p>Enfin, après un certain temps a farfouiller au millieu des connecteurs
SATA et a apprendre que, oui, l'alimentation sert aussi pour les disques
durs, je suis de retour pour un court article.<br />
Du coup, je m'étais dit que j'allais reprendre sur le thème de
l'informatique expliquée au grand public, en tentant d'aller un peu plus
loin que la dernière fois sur le thème de la programmation<br />
Ce qu'il faut comprendre, c'est la facon dont fonctionne un ordinateur.
Si a peu près tout le monde sait que "les ordinateurs, ils ne
comprennent que les 1 et les 0!", peu de gens savent comment cela
fonctionne en détail. </p>
<p>Si vous êtes sur ce blog, il y a pas mal de chance que vous ayez déjà
des notions de base en informatique. Ainsi, vous savez surement que les
ordinateurs fonctionnent avec des programmes, qui sont composés de
code.<br />
Ainsi, il faut comprendre que le code (source) est "compilé" en un
fichier "binaire". Un fichier binaire est un fichier comprenant les
instructions telles quexécutées par le processeur, et donc absolument
illisible pour un humain. </p>
<p>La compilation est le processus qui transforme le code source en
binaire executable. Les binaires ont, sous Windows, l'extension .exe,
tandis que sous les systèmes UNIX-like, ils n'ont pas d'extension
particulière.<br />
Ceci étant dit, il faut comprendre que certains langages sont plus
proches que d'autres du langage processeur, les langages les plus
proches sont dits de "bas niveau". Les langages les plus éloignés sont
donc dits de haut niveau. </p>
<p>Par exemple, l'assembleur est l'un des languages de plus bas niveau,
tandis que python par exemple est un langage de plus haut niveau. Les
langages de haut niveau sont souvent bien plus simples a comprendre et a
apprendre que les langages de bas niveau </p>
<p>Ainsi, en C, un langage de niveau relativement bas, pour afficher
"hello world" sur l'écran, le code nécessaire est :</p>
<div class="highlight"><pre><span class="cp">#include </span>
<span class="kt">void</span> <span class="nf">main</span><span class="p">()</span> <span class="p">{</span>
<span class="n">printf</span><span class="p">(</span><span class="s">&quot;hello world&quot;</span><span class="p">);</span>
<span class="k">return</span> <span class="mi">0</span><span class="p">;</span>
<span class="p">}</span>
</pre></div>
<p>le même programme en python s'écrit :</p>
<div class="highlight"><pre><span class="n">print</span> <span class="s">&quot;hello world&quot;</span>
</pre></div>
<p>et n'a pas besoin d'être compilé , puisqu'il peut être intepreté
directement. </p>
<p>Python utilise en effet un système similaire a Java en ayant un
interpréteur dit "runtime" ou "temps réel", qui interprète le programme
sans le compiler. Java utilise un système légèrement différent, puisque
le code a besoin d'être compilé, mais est interpreté par un interpréteur
et non par le processeur. </p>
<p>Cette méthode permet le fameux "code once, run everywhere", ce qui
signifie que le même code est exécutable sur quasiment tous les systèmes
d'exploitation (en fait, tous ceux sur lesquels linterpréteur est
disponible.)</p>
<p>Voila, je vous laisse sur le fonctionnement de Java et de Python, et je
vais me coucher.<br />
A bientôt!</p>
</div><!-- /.entry-content -->
</article>
</section>
</div><!--/span-->
<div class="span3 well sidebar-nav" id="sidebar">
<ul class="nav nav-list">
<!-- Categories links -->
<li class="nav-header"><h4><i class="icon-folder-close icon-large"></i> Categories</h4></li>
<li>
<a href="file:///home/wxcafe/code/blog-source/output/category/hacking/">
<i class="icon-folder-open icon-large"></i>Hacking
</a>
</li>
<li>
<a href="file:///home/wxcafe/code/blog-source/output/category/language/">
<i class="icon-folder-open icon-large"></i>Language
</a>
</li>
<li>
<a href="file:///home/wxcafe/code/blog-source/output/category/notes/">
<i class="icon-folder-open icon-large"></i>Notes
</a>
</li>
<li>
<a href="file:///home/wxcafe/code/blog-source/output/category/oses/">
<i class="icon-folder-open icon-large"></i>OSes
</a>
</li>
<li>
<a href="file:///home/wxcafe/code/blog-source/output/category/programmation/">
<i class="icon-folder-open icon-large"></i>Programmation
</a>
</li>
<li>
<a href="file:///home/wxcafe/code/blog-source/output/category/ranting/">
<i class="icon-folder-open icon-large"></i>Ranting
</a>
</li>
<li>
<a href="file:///home/wxcafe/code/blog-source/output/category/teaching/">
<i class="icon-folder-open icon-large"></i>Teaching
</a>
</li>
<li>
<a href="file:///home/wxcafe/code/blog-source/output/category/tutorial/">
<i class="icon-folder-open icon-large"></i>Tutorial
</a>
</li>
<li>
<a href="file:///home/wxcafe/code/blog-source/output/category/tutoriel/">
<i class="icon-folder-open icon-large"></i>Tutoriel
</a>
</li>
<li>
<a href="file:///home/wxcafe/code/blog-source/output/category/vidya-games/">
<i class="icon-folder-open icon-large"></i>Vidya Games
</a>
</li>
<hr>
<!-- Social links -->
<li class="nav-header"><h4><i class="icon-exchange"></i> social</h4></li>
<a class="FlattrButton" style="display:none;"
title="file:///home/wxcafe/code/blog-source/output"
style="padding-top: 10px;"
rel="flattr;
url:file:///home/wxcafe/code/blog-source/output;
title:file:///home/wxcafe/code/blog-source/output;
button:compact;
popout:0;
uid:wxcafe;
category:blog;"
href="file:///home/wxcafe/code/blog-source/output">flattr</a>
<li><a href="https://twitter.com/wxcafe"><i class="icon-twitter icon-large"></i> Twitter</a></li>
<li><a href="https://github.com/wxcafe"><i class="icon-github icon-large"></i> Github</a></li>
<li><a href="mailto://wxcafe@wxcafe.net"><i class="icon-envelope icon-large"></i> Email</a></li>
<li><a href="https://data.wxcafe.net/wxcafe.asc"><i class="icon-key icon-large"></i> Gpg</a></li>
<li><a href="finger://wxcafe@wxcafe.net"><i class="icon-terminal icon-large"></i> Finger</a></li>
<li><a href="http://leloop.org/where.html"><i class="icon-map-marker icon-large"></i> IRL</a></li>
<hr>
<!-- Links -->
<li class="nav-header"><h4><i class="icon-external-link"></i> Links</h4></li>
<li><a href="https://github.com/wxcafe/blog-source"><i class="icon-code icon-large "></i> Source!</a></li>
<li><a href="http://paste.wxcafe.net"><i class="icon-paste icon-large "></i> Zerobin</a></li>
<li><a href="http://git.wxcafe.net"><i class="icon-github-sign icon-large "></i> Public Git</a></li>
<hr>
<!--- RSS feed -->
<li class="nav-header"><h4><i class="icon-rss"></i> feeds</h4></li>
<li><a href="file:///home/wxcafe/code/blog-source/output/feeds/feed.rss.xml" rel="alternate"><i class="icon-bookmark-empty icon-large"></i> RSS</a></li>
<li><a href="file:///home/wxcafe/code/blog-source/output/feeds/feed.atom.xml" rel="alternate"><i class="icon-bookmark-empty icon-large"></i> Atom</a></li>
</ul> </div><!--/.well -->
</div><!--/row-->
<hr>
<footer>
<address id="about">
Proudly powered by <a href="http://pelican.notmyidea.org/">Pelican</a>,
which takes great advantage of <a href="http://python.org">Python</a>.<br />
Powered by <a href="https://github.com/getpelican/pelican-themes/tree/master/bootstrap2">bootstrap2</a> theme, thanks!
</address>
</footer>
</div><!--/.fluid-container-->
</body>
</html>