Syntactic Sugar는 무엇일까?

    안녕하세요. 프로그래밍 관련된 책을 읽거나 기술 문서를 찾아 보면 간혹 Syntactic Sugar라는 단어를 발견할 수 있습니다. 원서로 되어 있는 글을 찾아서 읽더라도 관련 내용과는 전혀 뜬금없는 Syntactic Sugar가 무엇인지 몰라 당황스러울 수 있는데요. 무슨 의미인지 확인해보도록 하겠습니다.

     

    ▶ Syntactic Sugar의 의미

    Syntactic Sugar란 문법적인 기능은 그대로 유지하되, 코드를 작성하는 사람 입장에서 혹은 그 코드를 다시 읽는 사람의 입장에서 편의성이 높은 프로그래밍 문법을 의미합니다.

     

    Syntactic Sugar를 처음 사용한 사람은 Peter John Landin이라는 사람으로 ALGOL라고 하는 프로그래밍 언어의 단순 문법에 대해 묘사하면서 이 용어를 사용하기 시작했다고 합니다.

    Syntactic Sugar가 처음 사용 된 ALOGL 언어

    ▶ Syntactic Sugar의 예

     

    아래의 SQL 쿼리문처럼 FROM을 생략해서 작성하는 사람이나 코드를 읽는 사람이나 간결하게 사용할 수 있습니다.

    1
    2
    3
    DELETE FROM SalesTable
    --Syntatic Sugar
    DELETE SalesTable
     

    컴파일러나 구문 분석기가 간혹 이렇게 간소화 된 코드를 다시 확장하는 경우가 있는데 이러한 작업을 Desugaring이라고 부릅니다. 이와 관련해서 재미있는 표현을 더 살펴보면, Syntactic Salt라고 하는 말이 있는데 이는 오히려 코드 작성을 어렵게 만들고 가독성을 낮추는 문법을 가리킵니다. 추가로 Syntactic Saccharin이라는 용어는 코드를 간단하게 만들지도 않고 딱히 쓸모없는 문법적 요소를 가리키는 말이라고 합니다.

     

    질문이나 보완해야 할 내용에 대해서는 댓글로 남겨주시거나 여기로 메일을 보내주세요. 감사합니다.

     

    댓글

    Designed by JB FACTORY