{"id":1178,"date":"2023-06-28T13:07:30","date_gmt":"2023-06-28T11:07:30","guid":{"rendered":"https:\/\/bitcamp.it\/blog\/?p=1178"},"modified":"2023-06-28T13:07:31","modified_gmt":"2023-06-28T11:07:31","slug":"compiler","status":"publish","type":"post","link":"https:\/\/bitcamp.it\/blog\/glossario\/compiler\/","title":{"rendered":"Compiler"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Il compiler \u00e8 un programma informatico che <strong>traduce il codice sorgente in codice oggetto<\/strong>, ovvero traduce le informazioni scritte in un linguaggio di programmazione nel linguaggio macchina del computer, il codice binario. Questa operazione di conversione dei linguaggi viene chiamata <strong>compilazione<\/strong>. Il compiler Java traduce il codice sorgente Java in bytecode Java.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Il compiler prende in ingresso un programma, il codice sorgente, su cui esegue una serie di operazioni in modo da ottenere, in assenza di errori, il <strong>codice oggetto<\/strong>. In generale i compiler sono in grado di riconoscere alcune classi di errori presenti nel programma, e in alcuni casi di suggerire in che modo correggerli.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I compiler attuali dividono l&#8217;operazione di compilazione in due stadi principali il <strong>front end<\/strong> e il <strong>back end<\/strong>. Nello <strong>stadio di front end<\/strong>, attraverso analisi specifiche, il compiler traduce il codice sorgente in un linguaggio intermedio (di solito interno al compilatore); nello <strong>stadio di back end<\/strong> avviene la generazione e l\u2019ottimizzazione del codice oggetto.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Il compiler \u00e8 un programma informatico che traduce il codice sorgente in codice oggetto.<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[16],"tags":[22],"class_list":["post-1178","post","type-post","status-publish","format-standard","hentry","category-glossario","tag-c"],"_links":{"self":[{"href":"https:\/\/bitcamp.it\/blog\/wp-json\/wp\/v2\/posts\/1178","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bitcamp.it\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bitcamp.it\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bitcamp.it\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/bitcamp.it\/blog\/wp-json\/wp\/v2\/comments?post=1178"}],"version-history":[{"count":1,"href":"https:\/\/bitcamp.it\/blog\/wp-json\/wp\/v2\/posts\/1178\/revisions"}],"predecessor-version":[{"id":1179,"href":"https:\/\/bitcamp.it\/blog\/wp-json\/wp\/v2\/posts\/1178\/revisions\/1179"}],"wp:attachment":[{"href":"https:\/\/bitcamp.it\/blog\/wp-json\/wp\/v2\/media?parent=1178"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bitcamp.it\/blog\/wp-json\/wp\/v2\/categories?post=1178"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bitcamp.it\/blog\/wp-json\/wp\/v2\/tags?post=1178"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}