{"id":43,"date":"2015-04-17T11:31:19","date_gmt":"2015-04-17T11:31:19","guid":{"rendered":"http:\/\/habett.fr\/blog\/?p=43"},"modified":"2015-04-17T11:31:19","modified_gmt":"2015-04-17T11:31:19","slug":"assembly-types","status":"publish","type":"post","link":"https:\/\/habett.fr\/blog\/2015\/04\/assembly-types\/","title":{"rendered":"Assembly types"},"content":{"rendered":"<p>Je crois qu&rsquo;une dans grandes erreurs de la programmation moderne est que beaucoup pensent coder dans un langage proche de l&rsquo;assembleur o\u00f9 il existe une forme de compr\u00e9hension du poids de chaque instruction. Les langages modernes sont de si haut niveau que l&rsquo;on peut avoir l&rsquo;impression qu&rsquo;un code compact est plus efficient.<br \/>\nR\u00e9cemment je code un peu en Swift pour divers projets, mon casual load restant perl. C&rsquo;est le grand \u00e9cart. Le typage dans perl est tellement faible et la syntaxe lib\u00e9r\u00e9e que swift semble bien coercitif. Je comprends que cette modernit\u00e9 est li\u00e9e \u00e0 des consid\u00e9rations d&rsquo;optimisations qui sont r\u00e9elles. J&rsquo;avais fait des essais en objective-c et j&rsquo;avais d\u00e9test\u00e9 car je trouvais la syntaxe vraiment trop in\u00e9l\u00e9gante.<br \/>\nSwift donc, les fonctions. Par convention le premier param\u00e8tre n&rsquo;est pas nomm\u00e9 mais les param\u00e8tres suivants sont d\u00e9clar\u00e9s avec des pr\u00e9fixes nomm\u00e9s qui permettent, en plus du type qui est tr\u00e8s fort, de savoir que passer. Reste que contrairement au premier, les suivants doivent \u00eatre pr\u00e9fix\u00e9s et en plus l&rsquo;ordre est important: Que faire de la police ? La discipline m&rsquo;est ici presque insupportable.<\/p>\n<p>Reste qu&rsquo;il y a des aspects plaisants, le code est propre et \u00e9l\u00e9gant selon mes standards, les curlies sont scopants, les ; optionnels, la surchage est classes est tr\u00e8s bien faite, les parenth\u00e8ses optionnelles sur les conditions. Par contre les strings qui n\u00e9cessitent toujours des doubles quotes sont un grand malheur pour moi.<\/p>\n<p>Comme le dit Larry Wall, programmer c&rsquo;est trop compliqu\u00e9, let&rsquo;s go scripting !<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Je crois qu&rsquo;une dans grandes erreurs de la programmation moderne est que beaucoup pensent coder dans un langage proche de l&rsquo;assembleur o\u00f9 il existe une forme de compr\u00e9hension du poids de chaque instruction. Les langages modernes sont de si haut niveau que l&rsquo;on peut avoir l&rsquo;impression qu&rsquo;un code compact est plus efficient. R\u00e9cemment je code &hellip; <a href=\"https:\/\/habett.fr\/blog\/2015\/04\/assembly-types\/\" class=\"more-link\">Continuer la lecture de <span class=\"screen-reader-text\">Assembly types<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[13,11,14,12],"class_list":["post-43","post","type-post","status-publish","format-standard","hentry","category-non-classe","tag-assembly","tag-code","tag-optimisation","tag-swift"],"_links":{"self":[{"href":"https:\/\/habett.fr\/blog\/wp-json\/wp\/v2\/posts\/43","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/habett.fr\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/habett.fr\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/habett.fr\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/habett.fr\/blog\/wp-json\/wp\/v2\/comments?post=43"}],"version-history":[{"count":2,"href":"https:\/\/habett.fr\/blog\/wp-json\/wp\/v2\/posts\/43\/revisions"}],"predecessor-version":[{"id":46,"href":"https:\/\/habett.fr\/blog\/wp-json\/wp\/v2\/posts\/43\/revisions\/46"}],"wp:attachment":[{"href":"https:\/\/habett.fr\/blog\/wp-json\/wp\/v2\/media?parent=43"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/habett.fr\/blog\/wp-json\/wp\/v2\/categories?post=43"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/habett.fr\/blog\/wp-json\/wp\/v2\/tags?post=43"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}